blob: 7b742b323428c4c4455a7eac258fd5c006acf535 [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//
Faisal Vali5f475b92017-07-16 00:23:04 +000012// RUN: %clang_cc1 -x c++ -std=c++2a -E -dM < /dev/null | FileCheck -match-full-lines -check-prefix CXX2A %s
13//
14// CXX2A:#define __GNUG__ {{.*}}
15// CXX2A:#define __GXX_EXPERIMENTAL_CXX0X__ 1
16// CXX2A:#define __GXX_RTTI 1
17// CXX2A:#define __GXX_WEAK__ 1
18// CXX2A:#define __cplusplus 201707L
19// CXX2A:#define __private_extern__ extern
20//
James Y Knightc97efa42016-02-11 16:51:29 +000021// 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 +000022//
James Y Knightc97efa42016-02-11 16:51:29 +000023// CXX1Z:#define __GNUG__ {{.*}}
Richard Smithdbd4d4c2014-06-16 15:16:56 +000024// CXX1Z:#define __GXX_EXPERIMENTAL_CXX0X__ 1
25// CXX1Z:#define __GXX_RTTI 1
26// CXX1Z:#define __GXX_WEAK__ 1
Richard Smith4b0cad02017-03-20 20:12:48 +000027// CXX1Z:#define __cplusplus 201703L
Richard Smithdbd4d4c2014-06-16 15:16:56 +000028// CXX1Z:#define __private_extern__ extern
29//
30//
James Y Knightc97efa42016-02-11 16:51:29 +000031// 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 +000032//
James Y Knightc97efa42016-02-11 16:51:29 +000033// CXX1Y:#define __GNUG__ {{.*}}
Richard Smith0a715422013-05-07 19:32:56 +000034// CXX1Y:#define __GXX_EXPERIMENTAL_CXX0X__ 1
35// CXX1Y:#define __GXX_RTTI 1
36// CXX1Y:#define __GXX_WEAK__ 1
Richard Smith51bacfd2014-02-24 01:35:45 +000037// CXX1Y:#define __cplusplus 201402L
Richard Smith0a715422013-05-07 19:32:56 +000038// CXX1Y:#define __private_extern__ extern
39//
40//
James Y Knightc97efa42016-02-11 16:51:29 +000041// 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 +000042//
James Y Knightc97efa42016-02-11 16:51:29 +000043// CXX11:#define __GNUG__ {{.*}}
Richard Smith89645bc2013-01-02 12:01:23 +000044// CXX11:#define __GXX_EXPERIMENTAL_CXX0X__ 1
45// CXX11:#define __GXX_RTTI 1
46// CXX11:#define __GXX_WEAK__ 1
47// CXX11:#define __cplusplus 201103L
48// CXX11:#define __private_extern__ extern
Chris Lattnere963d092009-10-29 04:55:36 +000049//
50//
James Y Knightc97efa42016-02-11 16:51:29 +000051// 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 +000052//
James Y Knightc97efa42016-02-11 16:51:29 +000053// CXX98:#define __GNUG__ {{.*}}
Dan Gohman04f87202010-05-28 00:27:15 +000054// CXX98:#define __GXX_RTTI 1
Chris Lattnere963d092009-10-29 04:55:36 +000055// CXX98:#define __GXX_WEAK__ 1
56// CXX98:#define __cplusplus 199711L
57// CXX98:#define __private_extern__ extern
58//
59//
James Y Knightc97efa42016-02-11 16:51:29 +000060// RUN: %clang_cc1 -fdeprecated-macro -E -dM < /dev/null | FileCheck -match-full-lines -check-prefix DEPRECATED %s
Chandler Carruth30483fb2011-04-23 19:48:40 +000061//
62// DEPRECATED:#define __DEPRECATED 1
63//
64//
James Y Knightc97efa42016-02-11 16:51:29 +000065// RUN: %clang_cc1 -std=c99 -E -dM < /dev/null | FileCheck -match-full-lines -check-prefix C99 %s
Chris Lattnere963d092009-10-29 04:55:36 +000066//
67// C99:#define __STDC_VERSION__ 199901L
68// C99:#define __STRICT_ANSI__ 1
Yunzhong Gaobacf7e42016-01-26 20:15:02 +000069// C99-NOT: __GXX_EXPERIMENTAL_CXX0X__
70// C99-NOT: __GXX_RTTI
71// C99-NOT: __GXX_WEAK__
72// C99-NOT: __cplusplus
Chris Lattnere963d092009-10-29 04:55:36 +000073//
74//
James Y Knightc97efa42016-02-11 16:51:29 +000075// RUN: %clang_cc1 -std=c11 -E -dM < /dev/null | FileCheck -match-full-lines -check-prefix C11 %s
Benjamin Kramer6aeb2492016-12-06 10:23:07 +000076// RUN: %clang_cc1 -std=c1x -E -dM < /dev/null | FileCheck -match-full-lines -check-prefix C11 %s
77// RUN: %clang_cc1 -std=iso9899:2011 -E -dM < /dev/null | FileCheck -match-full-lines -check-prefix C11 %s
78// RUN: %clang_cc1 -std=iso9899:201x -E -dM < /dev/null | FileCheck -match-full-lines -check-prefix C11 %s
Ed Schoutend0621462013-09-29 07:54:52 +000079//
80// C11:#define __STDC_UTF_16__ 1
81// C11:#define __STDC_UTF_32__ 1
82// C11:#define __STDC_VERSION__ 201112L
83// C11:#define __STRICT_ANSI__ 1
Yunzhong Gaobacf7e42016-01-26 20:15:02 +000084// C11-NOT: __GXX_EXPERIMENTAL_CXX0X__
85// C11-NOT: __GXX_RTTI
86// C11-NOT: __GXX_WEAK__
87// C11-NOT: __cplusplus
Ed Schoutend0621462013-09-29 07:54:52 +000088//
89//
James Y Knightc97efa42016-02-11 16:51:29 +000090// RUN: %clang_cc1 -E -dM < /dev/null | FileCheck -match-full-lines -check-prefix COMMON %s
Chris Lattnere963d092009-10-29 04:55:36 +000091//
92// COMMON:#define __CONSTANT_CFSTRINGS__ 1
93// COMMON:#define __FINITE_MATH_ONLY__ 0
James Y Knightc97efa42016-02-11 16:51:29 +000094// COMMON:#define __GNUC_MINOR__ {{.*}}
95// COMMON:#define __GNUC_PATCHLEVEL__ {{.*}}
Chris Lattnere963d092009-10-29 04:55:36 +000096// COMMON:#define __GNUC_STDC_INLINE__ 1
James Y Knightc97efa42016-02-11 16:51:29 +000097// COMMON:#define __GNUC__ {{.*}}
98// COMMON:#define __GXX_ABI_VERSION {{.*}}
Dylan Noblesmith673728f2012-07-27 18:34:31 +000099// COMMON:#define __ORDER_BIG_ENDIAN__ 4321
100// COMMON:#define __ORDER_LITTLE_ENDIAN__ 1234
101// COMMON:#define __ORDER_PDP_ENDIAN__ 3412
Chris Lattnere963d092009-10-29 04:55:36 +0000102// COMMON:#define __STDC_HOSTED__ 1
Chris Lattnere963d092009-10-29 04:55:36 +0000103// COMMON:#define __STDC__ 1
James Y Knightc97efa42016-02-11 16:51:29 +0000104// COMMON:#define __VERSION__ {{.*}}
Chris Lattnere963d092009-10-29 04:55:36 +0000105// COMMON:#define __clang__ 1
Daniel Dunbard7e887f2010-06-25 23:34:47 +0000106// COMMON:#define __clang_major__ {{[0-9]+}}
107// COMMON:#define __clang_minor__ {{[0-9]+}}
108// COMMON:#define __clang_patchlevel__ {{[0-9]+}}
James Y Knightc97efa42016-02-11 16:51:29 +0000109// COMMON:#define __clang_version__ {{.*}}
Chris Lattnere963d092009-10-29 04:55:36 +0000110// COMMON:#define __llvm__ 1
111//
Sunil Srivastavabf010802016-04-27 19:53:03 +0000112// RUN: %clang_cc1 -E -dM -triple=x86_64-pc-win32 < /dev/null | FileCheck -match-full-lines -check-prefix C-DEFAULT %s
113// RUN: %clang_cc1 -E -dM -triple=x86_64-pc-linux-gnu < /dev/null | FileCheck -match-full-lines -check-prefix C-DEFAULT %s
114// RUN: %clang_cc1 -E -dM -triple=x86_64-apple-darwin < /dev/null | FileCheck -match-full-lines -check-prefix C-DEFAULT %s
115// RUN: %clang_cc1 -E -dM -triple=armv7a-apple-darwin < /dev/null | FileCheck -match-full-lines -check-prefix C-DEFAULT %s
Chris Lattnere963d092009-10-29 04:55:36 +0000116//
Sunil Srivastavabf010802016-04-27 19:53:03 +0000117// C-DEFAULT:#define __STDC_VERSION__ 201112L
118//
James Y Knightc97efa42016-02-11 16:51:29 +0000119// RUN: %clang_cc1 -ffreestanding -E -dM < /dev/null | FileCheck -match-full-lines -check-prefix FREESTANDING %s
Chris Lattnere963d092009-10-29 04:55:36 +0000120// FREESTANDING:#define __STDC_HOSTED__ 0
Richard Smithd106a982012-05-03 22:18:20 +0000121//
Faisal Vali5f475b92017-07-16 00:23:04 +0000122// RUN: %clang_cc1 -x c++ -std=gnu++2a -E -dM < /dev/null | FileCheck -match-full-lines -check-prefix GXX2A %s
123//
124// GXX2A:#define __GNUG__ {{.*}}
125// GXX2A:#define __GXX_WEAK__ 1
126// GXX2A:#define __cplusplus 201707L
127// GXX2A:#define __private_extern__ extern
128//
Richard Smithd106a982012-05-03 22:18:20 +0000129//
James Y Knightc97efa42016-02-11 16:51:29 +0000130// 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 +0000131//
James Y Knightc97efa42016-02-11 16:51:29 +0000132// GXX1Z:#define __GNUG__ {{.*}}
Richard Smithdbd4d4c2014-06-16 15:16:56 +0000133// GXX1Z:#define __GXX_WEAK__ 1
Richard Smith4b0cad02017-03-20 20:12:48 +0000134// GXX1Z:#define __cplusplus 201703L
Richard Smithdbd4d4c2014-06-16 15:16:56 +0000135// GXX1Z:#define __private_extern__ extern
136//
137//
James Y Knightc97efa42016-02-11 16:51:29 +0000138// 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 +0000139//
James Y Knightc97efa42016-02-11 16:51:29 +0000140// GXX1Y:#define __GNUG__ {{.*}}
Richard Smith0a715422013-05-07 19:32:56 +0000141// GXX1Y:#define __GXX_WEAK__ 1
Richard Smith51bacfd2014-02-24 01:35:45 +0000142// GXX1Y:#define __cplusplus 201402L
Richard Smith0a715422013-05-07 19:32:56 +0000143// GXX1Y:#define __private_extern__ extern
144//
145//
James Y Knightc97efa42016-02-11 16:51:29 +0000146// 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 +0000147//
James Y Knightc97efa42016-02-11 16:51:29 +0000148// GXX11:#define __GNUG__ {{.*}}
Richard Smithd106a982012-05-03 22:18:20 +0000149// GXX11:#define __GXX_WEAK__ 1
150// GXX11:#define __cplusplus 201103L
151// GXX11:#define __private_extern__ extern
152//
153//
James Y Knightc97efa42016-02-11 16:51:29 +0000154// 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 +0000155//
James Y Knightc97efa42016-02-11 16:51:29 +0000156// GXX98:#define __GNUG__ {{.*}}
Chris Lattnere963d092009-10-29 04:55:36 +0000157// GXX98:#define __GXX_WEAK__ 1
Richard Smithd106a982012-05-03 22:18:20 +0000158// GXX98:#define __cplusplus 199711L
Chris Lattnere963d092009-10-29 04:55:36 +0000159// GXX98:#define __private_extern__ extern
160//
161//
James Y Knightc97efa42016-02-11 16:51:29 +0000162// 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 +0000163//
164// C94:#define __STDC_VERSION__ 199409L
165//
166//
James Y Knightc97efa42016-02-11 16:51:29 +0000167// 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 +0000168//
169// MSEXT-NOT:#define __STDC__
Douglas Gregor7617cb82010-08-06 12:37:52 +0000170// MSEXT:#define _INTEGRAL_MAX_BITS 64
Hans Wennborg4c02be32013-05-02 13:12:32 +0000171// MSEXT-NOT:#define _NATIVE_WCHAR_T_DEFINED 1
172// MSEXT-NOT:#define _WCHAR_T_DEFINED 1
173//
174//
James Y Knightc97efa42016-02-11 16:51:29 +0000175// 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 +0000176//
177// MSEXT-CXX:#define _NATIVE_WCHAR_T_DEFINED 1
178// MSEXT-CXX:#define _WCHAR_T_DEFINED 1
David Majnemerc19475a2015-07-15 17:32:34 +0000179// MSEXT-CXX:#define __BOOL_DEFINED 1
Hans Wennborg4c02be32013-05-02 13:12:32 +0000180//
181//
James Y Knightc97efa42016-02-11 16:51:29 +0000182// 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 +0000183//
184// MSEXT-CXX-NOWCHAR-NOT:#define _NATIVE_WCHAR_T_DEFINED 1
185// MSEXT-CXX-NOWCHAR-NOT:#define _WCHAR_T_DEFINED 1
David Majnemerc19475a2015-07-15 17:32:34 +0000186// MSEXT-CXX-NOWCHAR:#define __BOOL_DEFINED 1
Chris Lattnere963d092009-10-29 04:55:36 +0000187//
188//
James Y Knightc97efa42016-02-11 16:51:29 +0000189// 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 +0000190//
191// OBJC:#define OBJC_NEW_PROPERTIES 1
Daniel Dunbar4656c532009-11-17 07:07:28 +0000192// OBJC:#define __NEXT_RUNTIME__ 1
Chris Lattnere963d092009-10-29 04:55:36 +0000193// OBJC:#define __OBJC__ 1
194//
Daniel Dunbar4656c532009-11-17 07:07:28 +0000195//
James Y Knightc97efa42016-02-11 16:51:29 +0000196// 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 +0000197//
198// OBJCGC:#define __OBJC_GC__ 1
199//
200//
James Y Knightc97efa42016-02-11 16:51:29 +0000201// 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 +0000202//
203// NONFRAGILE:#define OBJC_ZEROCOST_EXCEPTIONS 1
204// NONFRAGILE:#define __OBJC2__ 1
205//
Dylan Noblesmith4c004f32012-08-08 16:09:15 +0000206//
James Y Knightc97efa42016-02-11 16:51:29 +0000207// RUN: %clang_cc1 -E -dM < /dev/null | FileCheck -match-full-lines -check-prefix O0 %s
Dylan Noblesmith4c004f32012-08-08 16:09:15 +0000208//
209// O0:#define __NO_INLINE__ 1
210// O0-NOT:#define __OPTIMIZE_SIZE__
211// O0-NOT:#define __OPTIMIZE__
212//
213//
James Y Knightc97efa42016-02-11 16:51:29 +0000214// 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 +0000215//
216// NO_INLINE:#define __NO_INLINE__ 1
217// NO_INLINE-NOT:#define __OPTIMIZE_SIZE__
James Y Knightc97efa42016-02-11 16:51:29 +0000218// NO_INLINE:#define __OPTIMIZE__ 1
Dylan Noblesmith4c004f32012-08-08 16:09:15 +0000219//
220//
James Y Knightc97efa42016-02-11 16:51:29 +0000221// RUN: %clang_cc1 -O1 -E -dM < /dev/null | FileCheck -match-full-lines -check-prefix O1 %s
Chris Lattnere963d092009-10-29 04:55:36 +0000222//
Dylan Noblesmith4c004f32012-08-08 16:09:15 +0000223// O1-NOT:#define __OPTIMIZE_SIZE__
Chris Lattnere963d092009-10-29 04:55:36 +0000224// O1:#define __OPTIMIZE__ 1
225//
Dylan Noblesmith4c004f32012-08-08 16:09:15 +0000226//
Sylvestre Ledrud340ccc2016-11-11 17:29:56 +0000227// RUN: %clang_cc1 -Og -E -dM < /dev/null | FileCheck -match-full-lines -check-prefix Og %s
228//
229// Og-NOT:#define __OPTIMIZE_SIZE__
230// Og :#define __OPTIMIZE__ 1
231//
232//
James Y Knightc97efa42016-02-11 16:51:29 +0000233// RUN: %clang_cc1 -Os -E -dM < /dev/null | FileCheck -match-full-lines -check-prefix Os %s
Dylan Noblesmith4c004f32012-08-08 16:09:15 +0000234//
235// Os:#define __OPTIMIZE_SIZE__ 1
236// Os:#define __OPTIMIZE__ 1
237//
238//
James Y Knightc97efa42016-02-11 16:51:29 +0000239// RUN: %clang_cc1 -Oz -E -dM < /dev/null | FileCheck -match-full-lines -check-prefix Oz %s
Dylan Noblesmith4c004f32012-08-08 16:09:15 +0000240//
241// Oz:#define __OPTIMIZE_SIZE__ 1
242// Oz:#define __OPTIMIZE__ 1
243//
244//
James Y Knightc97efa42016-02-11 16:51:29 +0000245// RUN: %clang_cc1 -fpascal-strings -E -dM < /dev/null | FileCheck -match-full-lines -check-prefix PASCAL %s
Chris Lattnere963d092009-10-29 04:55:36 +0000246//
247// PASCAL:#define __PASCAL_STRINGS__ 1
248//
249//
James Y Knightc97efa42016-02-11 16:51:29 +0000250// RUN: %clang_cc1 -E -dM < /dev/null | FileCheck -match-full-lines -check-prefix SCHAR %s
Chris Lattnere963d092009-10-29 04:55:36 +0000251//
252// SCHAR:#define __STDC__ 1
253// SCHAR-NOT:#define __UNSIGNED_CHAR__
254// SCHAR:#define __clang__ 1
255//
James Y Knightc97efa42016-02-11 16:51:29 +0000256// RUN: %clang_cc1 -E -dM -fshort-wchar < /dev/null | FileCheck -match-full-lines -check-prefix SHORTWCHAR %s
NAKAMURA Takumi210fbcd2014-02-25 00:30:14 +0000257// wchar_t is u16 for targeting Win32.
258// FIXME: Implement and check x86_64-cygwin.
James Y Knightc97efa42016-02-11 16:51:29 +0000259// 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 +0000260//
261// SHORTWCHAR: #define __SIZEOF_WCHAR_T__ 2
Joerg Sonnenberger587deea2014-07-17 20:12:32 +0000262// SHORTWCHAR: #define __WCHAR_MAX__ 65535
Eli Friedman865afc92010-08-03 17:34:19 +0000263// SHORTWCHAR: #define __WCHAR_TYPE__ unsigned short
264// SHORTWCHAR: #define __WCHAR_WIDTH__ 16
265//
James Y Knightc97efa42016-02-11 16:51:29 +0000266// RUN: %clang_cc1 -E -dM -fno-short-wchar -triple=i686-unknown-unknown < /dev/null | FileCheck -match-full-lines -check-prefix SHORTWCHAR2 %s
267// 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 +0000268//
269// SHORTWCHAR2: #define __SIZEOF_WCHAR_T__ 4
270// SHORTWCHAR2: #define __WCHAR_WIDTH__ 32
271// Other definitions vary from platform to platform
Christian Pirker227f5ed2014-03-24 13:57:21 +0000272
James Y Knightc97efa42016-02-11 16:51:29 +0000273// RUN: %clang_cc1 -E -dM -ffreestanding -triple=aarch64-none-none < /dev/null | FileCheck -match-full-lines -check-prefix AARCH64 %s
274// RUN: %clang_cc1 -E -dM -ffreestanding -triple=arm64-none-none < /dev/null | FileCheck -match-full-lines -check-prefix AARCH64 %s
Richard Smith59139022016-09-30 22:41:36 +0000275// RUN: %clang_cc1 -x c++ -E -dM -ffreestanding -triple=arm64-none-none < /dev/null | FileCheck -match-full-lines -check-prefix AARCH64 -check-prefix AARCH64-CXX %s
Kevin Qinad64f6d2014-02-24 02:45:03 +0000276//
277// AARCH64:#define _LP64 1
Christian Pirker227f5ed2014-03-24 13:57:21 +0000278// AARCH64-NOT:#define __AARCH64EB__ 1
Kevin Qinad64f6d2014-02-24 02:45:03 +0000279// AARCH64:#define __AARCH64EL__ 1
Christian Pirker227f5ed2014-03-24 13:57:21 +0000280// AARCH64-NOT:#define __AARCH_BIG_ENDIAN 1
Kevin Qinad64f6d2014-02-24 02:45:03 +0000281// AARCH64:#define __ARM_64BIT_STATE 1
282// AARCH64:#define __ARM_ARCH 8
283// AARCH64:#define __ARM_ARCH_ISA_A64 1
Christian Pirker227f5ed2014-03-24 13:57:21 +0000284// AARCH64-NOT:#define __ARM_BIG_ENDIAN 1
Tim Northovera6a19f12015-02-06 01:25:07 +0000285// AARCH64:#define __BIGGEST_ALIGNMENT__ 16
Kevin Qinad64f6d2014-02-24 02:45:03 +0000286// AARCH64:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
287// AARCH64:#define __CHAR16_TYPE__ unsigned short
288// AARCH64:#define __CHAR32_TYPE__ unsigned int
289// AARCH64:#define __CHAR_BIT__ 8
290// AARCH64:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
291// AARCH64:#define __DBL_DIG__ 15
292// AARCH64:#define __DBL_EPSILON__ 2.2204460492503131e-16
293// AARCH64:#define __DBL_HAS_DENORM__ 1
294// AARCH64:#define __DBL_HAS_INFINITY__ 1
295// AARCH64:#define __DBL_HAS_QUIET_NAN__ 1
296// AARCH64:#define __DBL_MANT_DIG__ 53
297// AARCH64:#define __DBL_MAX_10_EXP__ 308
298// AARCH64:#define __DBL_MAX_EXP__ 1024
299// AARCH64:#define __DBL_MAX__ 1.7976931348623157e+308
300// AARCH64:#define __DBL_MIN_10_EXP__ (-307)
301// AARCH64:#define __DBL_MIN_EXP__ (-1021)
302// AARCH64:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +0000303// AARCH64:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Kevin Qinad64f6d2014-02-24 02:45:03 +0000304// AARCH64:#define __FLT_DENORM_MIN__ 1.40129846e-45F
305// AARCH64:#define __FLT_DIG__ 6
306// AARCH64:#define __FLT_EPSILON__ 1.19209290e-7F
307// AARCH64:#define __FLT_EVAL_METHOD__ 0
308// AARCH64:#define __FLT_HAS_DENORM__ 1
309// AARCH64:#define __FLT_HAS_INFINITY__ 1
310// AARCH64:#define __FLT_HAS_QUIET_NAN__ 1
311// AARCH64:#define __FLT_MANT_DIG__ 24
312// AARCH64:#define __FLT_MAX_10_EXP__ 38
313// AARCH64:#define __FLT_MAX_EXP__ 128
314// AARCH64:#define __FLT_MAX__ 3.40282347e+38F
315// AARCH64:#define __FLT_MIN_10_EXP__ (-37)
316// AARCH64:#define __FLT_MIN_EXP__ (-125)
317// AARCH64:#define __FLT_MIN__ 1.17549435e-38F
318// AARCH64:#define __FLT_RADIX__ 2
James Y Knightc97efa42016-02-11 16:51:29 +0000319// AARCH64:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +0000320// AARCH64:#define __INT16_FMTd__ "hd"
321// AARCH64:#define __INT16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +0000322// AARCH64:#define __INT16_MAX__ 32767
Kevin Qinad64f6d2014-02-24 02:45:03 +0000323// AARCH64:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +0000324// AARCH64:#define __INT32_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +0000325// AARCH64:#define __INT32_FMTd__ "d"
326// AARCH64:#define __INT32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +0000327// AARCH64:#define __INT32_MAX__ 2147483647
Kevin Qinad64f6d2014-02-24 02:45:03 +0000328// AARCH64:#define __INT32_TYPE__ int
329// AARCH64:#define __INT64_C_SUFFIX__ L
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +0000330// AARCH64:#define __INT64_FMTd__ "ld"
331// AARCH64:#define __INT64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +0000332// AARCH64:#define __INT64_MAX__ 9223372036854775807L
Kevin Qinad64f6d2014-02-24 02:45:03 +0000333// AARCH64:#define __INT64_TYPE__ long int
James Y Knightc97efa42016-02-11 16:51:29 +0000334// AARCH64:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +0000335// AARCH64:#define __INT8_FMTd__ "hhd"
336// AARCH64:#define __INT8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +0000337// AARCH64:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +0000338// AARCH64:#define __INT8_TYPE__ signed char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +0000339// AARCH64:#define __INTMAX_C_SUFFIX__ L
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +0000340// AARCH64:#define __INTMAX_FMTd__ "ld"
341// AARCH64:#define __INTMAX_FMTi__ "li"
Kevin Qinad64f6d2014-02-24 02:45:03 +0000342// AARCH64:#define __INTMAX_MAX__ 9223372036854775807L
343// AARCH64:#define __INTMAX_TYPE__ long int
344// AARCH64:#define __INTMAX_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +0000345// AARCH64:#define __INTPTR_FMTd__ "ld"
346// AARCH64:#define __INTPTR_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +0000347// AARCH64:#define __INTPTR_MAX__ 9223372036854775807L
Kevin Qinad64f6d2014-02-24 02:45:03 +0000348// AARCH64:#define __INTPTR_TYPE__ long int
349// AARCH64:#define __INTPTR_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +0000350// AARCH64:#define __INT_FAST16_FMTd__ "hd"
351// AARCH64:#define __INT_FAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +0000352// AARCH64:#define __INT_FAST16_MAX__ 32767
353// AARCH64:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +0000354// AARCH64:#define __INT_FAST32_FMTd__ "d"
355// AARCH64:#define __INT_FAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +0000356// AARCH64:#define __INT_FAST32_MAX__ 2147483647
357// AARCH64:#define __INT_FAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +0000358// AARCH64:#define __INT_FAST64_FMTd__ "ld"
359// AARCH64:#define __INT_FAST64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +0000360// AARCH64:#define __INT_FAST64_MAX__ 9223372036854775807L
361// AARCH64:#define __INT_FAST64_TYPE__ long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +0000362// AARCH64:#define __INT_FAST8_FMTd__ "hhd"
363// AARCH64:#define __INT_FAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +0000364// AARCH64:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +0000365// AARCH64:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +0000366// AARCH64:#define __INT_LEAST16_FMTd__ "hd"
367// AARCH64:#define __INT_LEAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +0000368// AARCH64:#define __INT_LEAST16_MAX__ 32767
369// AARCH64:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +0000370// AARCH64:#define __INT_LEAST32_FMTd__ "d"
371// AARCH64:#define __INT_LEAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +0000372// AARCH64:#define __INT_LEAST32_MAX__ 2147483647
373// AARCH64:#define __INT_LEAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +0000374// AARCH64:#define __INT_LEAST64_FMTd__ "ld"
375// AARCH64:#define __INT_LEAST64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +0000376// AARCH64:#define __INT_LEAST64_MAX__ 9223372036854775807L
377// AARCH64:#define __INT_LEAST64_TYPE__ long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +0000378// AARCH64:#define __INT_LEAST8_FMTd__ "hhd"
379// AARCH64:#define __INT_LEAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +0000380// AARCH64:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +0000381// AARCH64:#define __INT_LEAST8_TYPE__ signed char
Kevin Qinad64f6d2014-02-24 02:45:03 +0000382// AARCH64:#define __INT_MAX__ 2147483647
383// AARCH64:#define __LDBL_DENORM_MIN__ 6.47517511943802511092443895822764655e-4966L
384// AARCH64:#define __LDBL_DIG__ 33
385// AARCH64:#define __LDBL_EPSILON__ 1.92592994438723585305597794258492732e-34L
386// AARCH64:#define __LDBL_HAS_DENORM__ 1
387// AARCH64:#define __LDBL_HAS_INFINITY__ 1
388// AARCH64:#define __LDBL_HAS_QUIET_NAN__ 1
389// AARCH64:#define __LDBL_MANT_DIG__ 113
390// AARCH64:#define __LDBL_MAX_10_EXP__ 4932
391// AARCH64:#define __LDBL_MAX_EXP__ 16384
392// AARCH64:#define __LDBL_MAX__ 1.18973149535723176508575932662800702e+4932L
393// AARCH64:#define __LDBL_MIN_10_EXP__ (-4931)
394// AARCH64:#define __LDBL_MIN_EXP__ (-16381)
395// AARCH64:#define __LDBL_MIN__ 3.36210314311209350626267781732175260e-4932L
396// AARCH64:#define __LONG_LONG_MAX__ 9223372036854775807LL
397// AARCH64:#define __LONG_MAX__ 9223372036854775807L
398// AARCH64:#define __LP64__ 1
399// AARCH64:#define __POINTER_WIDTH__ 64
400// AARCH64:#define __PTRDIFF_TYPE__ long int
401// AARCH64:#define __PTRDIFF_WIDTH__ 64
402// AARCH64:#define __SCHAR_MAX__ 127
403// AARCH64:#define __SHRT_MAX__ 32767
Joerg Sonnenbergerb3a49692014-07-17 18:31:20 +0000404// AARCH64:#define __SIG_ATOMIC_MAX__ 2147483647
Kevin Qinad64f6d2014-02-24 02:45:03 +0000405// AARCH64:#define __SIG_ATOMIC_WIDTH__ 32
406// AARCH64:#define __SIZEOF_DOUBLE__ 8
407// AARCH64:#define __SIZEOF_FLOAT__ 4
408// AARCH64:#define __SIZEOF_INT128__ 16
409// AARCH64:#define __SIZEOF_INT__ 4
410// AARCH64:#define __SIZEOF_LONG_DOUBLE__ 16
411// AARCH64:#define __SIZEOF_LONG_LONG__ 8
412// AARCH64:#define __SIZEOF_LONG__ 8
413// AARCH64:#define __SIZEOF_POINTER__ 8
414// AARCH64:#define __SIZEOF_PTRDIFF_T__ 8
415// AARCH64:#define __SIZEOF_SHORT__ 2
416// AARCH64:#define __SIZEOF_SIZE_T__ 8
417// AARCH64:#define __SIZEOF_WCHAR_T__ 4
418// AARCH64:#define __SIZEOF_WINT_T__ 4
419// AARCH64:#define __SIZE_MAX__ 18446744073709551615UL
420// AARCH64:#define __SIZE_TYPE__ long unsigned int
421// AARCH64:#define __SIZE_WIDTH__ 64
Richard Smith59139022016-09-30 22:41:36 +0000422// AARCH64-CXX:#define __STDCPP_DEFAULT_NEW_ALIGNMENT__ 16UL
James Y Knightc97efa42016-02-11 16:51:29 +0000423// AARCH64:#define __UINT16_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +0000424// AARCH64:#define __UINT16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +0000425// AARCH64:#define __UINT16_TYPE__ unsigned short
426// AARCH64:#define __UINT32_C_SUFFIX__ U
427// AARCH64:#define __UINT32_MAX__ 4294967295U
428// AARCH64:#define __UINT32_TYPE__ unsigned int
429// AARCH64:#define __UINT64_C_SUFFIX__ UL
430// AARCH64:#define __UINT64_MAX__ 18446744073709551615UL
431// AARCH64:#define __UINT64_TYPE__ long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +0000432// AARCH64:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +0000433// AARCH64:#define __UINT8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +0000434// AARCH64:#define __UINT8_TYPE__ unsigned char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +0000435// AARCH64:#define __UINTMAX_C_SUFFIX__ UL
JF Bastienab8d0a02014-06-25 01:31:33 +0000436// AARCH64:#define __UINTMAX_MAX__ 18446744073709551615UL
Kevin Qinad64f6d2014-02-24 02:45:03 +0000437// AARCH64:#define __UINTMAX_TYPE__ long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +0000438// AARCH64:#define __UINTMAX_WIDTH__ 64
439// AARCH64:#define __UINTPTR_MAX__ 18446744073709551615UL
440// AARCH64:#define __UINTPTR_TYPE__ long unsigned int
441// AARCH64:#define __UINTPTR_WIDTH__ 64
Joerg Sonnenberger587deea2014-07-17 20:12:32 +0000442// AARCH64:#define __UINT_FAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +0000443// AARCH64:#define __UINT_FAST16_TYPE__ unsigned short
444// AARCH64:#define __UINT_FAST32_MAX__ 4294967295U
445// AARCH64:#define __UINT_FAST32_TYPE__ unsigned int
446// AARCH64:#define __UINT_FAST64_MAX__ 18446744073709551615UL
447// AARCH64:#define __UINT_FAST64_TYPE__ long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +0000448// AARCH64:#define __UINT_FAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +0000449// AARCH64:#define __UINT_FAST8_TYPE__ unsigned char
Joerg Sonnenberger587deea2014-07-17 20:12:32 +0000450// AARCH64:#define __UINT_LEAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +0000451// AARCH64:#define __UINT_LEAST16_TYPE__ unsigned short
452// AARCH64:#define __UINT_LEAST32_MAX__ 4294967295U
453// AARCH64:#define __UINT_LEAST32_TYPE__ unsigned int
454// AARCH64:#define __UINT_LEAST64_MAX__ 18446744073709551615UL
455// AARCH64:#define __UINT_LEAST64_TYPE__ long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +0000456// AARCH64:#define __UINT_LEAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +0000457// AARCH64:#define __UINT_LEAST8_TYPE__ unsigned char
James Y Knightb214cbc2016-03-04 19:00:41 +0000458// AARCH64:#define __USER_LABEL_PREFIX__
Kevin Qinad64f6d2014-02-24 02:45:03 +0000459// AARCH64:#define __WCHAR_MAX__ 4294967295U
460// AARCH64:#define __WCHAR_TYPE__ unsigned int
461// AARCH64:#define __WCHAR_UNSIGNED__ 1
462// AARCH64:#define __WCHAR_WIDTH__ 32
463// AARCH64:#define __WINT_TYPE__ int
464// AARCH64:#define __WINT_WIDTH__ 32
465// AARCH64:#define __aarch64__ 1
466//
James Y Knightc97efa42016-02-11 16:51:29 +0000467// 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 +0000468//
469// AARCH64-BE:#define _LP64 1
470// AARCH64-BE:#define __AARCH64EB__ 1
471// AARCH64-BE-NOT:#define __AARCH64EL__ 1
472// AARCH64-BE:#define __AARCH_BIG_ENDIAN 1
473// AARCH64-BE:#define __ARM_64BIT_STATE 1
474// AARCH64-BE:#define __ARM_ARCH 8
475// AARCH64-BE:#define __ARM_ARCH_ISA_A64 1
476// AARCH64-BE:#define __ARM_BIG_ENDIAN 1
Tim Northovera6a19f12015-02-06 01:25:07 +0000477// AARCH64-BE:#define __BIGGEST_ALIGNMENT__ 16
Christian Pirker227f5ed2014-03-24 13:57:21 +0000478// AARCH64-BE:#define __BYTE_ORDER__ __ORDER_BIG_ENDIAN__
479// AARCH64-BE:#define __CHAR16_TYPE__ unsigned short
480// AARCH64-BE:#define __CHAR32_TYPE__ unsigned int
481// AARCH64-BE:#define __CHAR_BIT__ 8
482// AARCH64-BE:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
483// AARCH64-BE:#define __DBL_DIG__ 15
484// AARCH64-BE:#define __DBL_EPSILON__ 2.2204460492503131e-16
485// AARCH64-BE:#define __DBL_HAS_DENORM__ 1
486// AARCH64-BE:#define __DBL_HAS_INFINITY__ 1
487// AARCH64-BE:#define __DBL_HAS_QUIET_NAN__ 1
488// AARCH64-BE:#define __DBL_MANT_DIG__ 53
489// AARCH64-BE:#define __DBL_MAX_10_EXP__ 308
490// AARCH64-BE:#define __DBL_MAX_EXP__ 1024
491// AARCH64-BE:#define __DBL_MAX__ 1.7976931348623157e+308
492// AARCH64-BE:#define __DBL_MIN_10_EXP__ (-307)
493// AARCH64-BE:#define __DBL_MIN_EXP__ (-1021)
494// AARCH64-BE:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +0000495// AARCH64-BE:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Christian Pirker227f5ed2014-03-24 13:57:21 +0000496// AARCH64-BE:#define __FLT_DENORM_MIN__ 1.40129846e-45F
497// AARCH64-BE:#define __FLT_DIG__ 6
498// AARCH64-BE:#define __FLT_EPSILON__ 1.19209290e-7F
499// AARCH64-BE:#define __FLT_EVAL_METHOD__ 0
500// AARCH64-BE:#define __FLT_HAS_DENORM__ 1
501// AARCH64-BE:#define __FLT_HAS_INFINITY__ 1
502// AARCH64-BE:#define __FLT_HAS_QUIET_NAN__ 1
503// AARCH64-BE:#define __FLT_MANT_DIG__ 24
504// AARCH64-BE:#define __FLT_MAX_10_EXP__ 38
505// AARCH64-BE:#define __FLT_MAX_EXP__ 128
506// AARCH64-BE:#define __FLT_MAX__ 3.40282347e+38F
507// AARCH64-BE:#define __FLT_MIN_10_EXP__ (-37)
508// AARCH64-BE:#define __FLT_MIN_EXP__ (-125)
509// AARCH64-BE:#define __FLT_MIN__ 1.17549435e-38F
510// AARCH64-BE:#define __FLT_RADIX__ 2
James Y Knightc97efa42016-02-11 16:51:29 +0000511// AARCH64-BE:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +0000512// AARCH64-BE:#define __INT16_FMTd__ "hd"
513// AARCH64-BE:#define __INT16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +0000514// AARCH64-BE:#define __INT16_MAX__ 32767
Christian Pirker227f5ed2014-03-24 13:57:21 +0000515// AARCH64-BE:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +0000516// AARCH64-BE:#define __INT32_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +0000517// AARCH64-BE:#define __INT32_FMTd__ "d"
518// AARCH64-BE:#define __INT32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +0000519// AARCH64-BE:#define __INT32_MAX__ 2147483647
Christian Pirker227f5ed2014-03-24 13:57:21 +0000520// AARCH64-BE:#define __INT32_TYPE__ int
521// AARCH64-BE:#define __INT64_C_SUFFIX__ L
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +0000522// AARCH64-BE:#define __INT64_FMTd__ "ld"
523// AARCH64-BE:#define __INT64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +0000524// AARCH64-BE:#define __INT64_MAX__ 9223372036854775807L
Christian Pirker227f5ed2014-03-24 13:57:21 +0000525// AARCH64-BE:#define __INT64_TYPE__ long int
James Y Knightc97efa42016-02-11 16:51:29 +0000526// AARCH64-BE:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +0000527// AARCH64-BE:#define __INT8_FMTd__ "hhd"
528// AARCH64-BE:#define __INT8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +0000529// AARCH64-BE:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +0000530// AARCH64-BE:#define __INT8_TYPE__ signed char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +0000531// AARCH64-BE:#define __INTMAX_C_SUFFIX__ L
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +0000532// AARCH64-BE:#define __INTMAX_FMTd__ "ld"
533// AARCH64-BE:#define __INTMAX_FMTi__ "li"
Christian Pirker227f5ed2014-03-24 13:57:21 +0000534// AARCH64-BE:#define __INTMAX_MAX__ 9223372036854775807L
535// AARCH64-BE:#define __INTMAX_TYPE__ long int
536// AARCH64-BE:#define __INTMAX_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +0000537// AARCH64-BE:#define __INTPTR_FMTd__ "ld"
538// AARCH64-BE:#define __INTPTR_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +0000539// AARCH64-BE:#define __INTPTR_MAX__ 9223372036854775807L
Christian Pirker227f5ed2014-03-24 13:57:21 +0000540// AARCH64-BE:#define __INTPTR_TYPE__ long int
541// AARCH64-BE:#define __INTPTR_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +0000542// AARCH64-BE:#define __INT_FAST16_FMTd__ "hd"
543// AARCH64-BE:#define __INT_FAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +0000544// AARCH64-BE:#define __INT_FAST16_MAX__ 32767
545// AARCH64-BE:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +0000546// AARCH64-BE:#define __INT_FAST32_FMTd__ "d"
547// AARCH64-BE:#define __INT_FAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +0000548// AARCH64-BE:#define __INT_FAST32_MAX__ 2147483647
549// AARCH64-BE:#define __INT_FAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +0000550// AARCH64-BE:#define __INT_FAST64_FMTd__ "ld"
551// AARCH64-BE:#define __INT_FAST64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +0000552// AARCH64-BE:#define __INT_FAST64_MAX__ 9223372036854775807L
553// AARCH64-BE:#define __INT_FAST64_TYPE__ long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +0000554// AARCH64-BE:#define __INT_FAST8_FMTd__ "hhd"
555// AARCH64-BE:#define __INT_FAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +0000556// AARCH64-BE:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +0000557// AARCH64-BE:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +0000558// AARCH64-BE:#define __INT_LEAST16_FMTd__ "hd"
559// AARCH64-BE:#define __INT_LEAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +0000560// AARCH64-BE:#define __INT_LEAST16_MAX__ 32767
561// AARCH64-BE:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +0000562// AARCH64-BE:#define __INT_LEAST32_FMTd__ "d"
563// AARCH64-BE:#define __INT_LEAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +0000564// AARCH64-BE:#define __INT_LEAST32_MAX__ 2147483647
565// AARCH64-BE:#define __INT_LEAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +0000566// AARCH64-BE:#define __INT_LEAST64_FMTd__ "ld"
567// AARCH64-BE:#define __INT_LEAST64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +0000568// AARCH64-BE:#define __INT_LEAST64_MAX__ 9223372036854775807L
569// AARCH64-BE:#define __INT_LEAST64_TYPE__ long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +0000570// AARCH64-BE:#define __INT_LEAST8_FMTd__ "hhd"
571// AARCH64-BE:#define __INT_LEAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +0000572// AARCH64-BE:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +0000573// AARCH64-BE:#define __INT_LEAST8_TYPE__ signed char
Christian Pirker227f5ed2014-03-24 13:57:21 +0000574// AARCH64-BE:#define __INT_MAX__ 2147483647
575// AARCH64-BE:#define __LDBL_DENORM_MIN__ 6.47517511943802511092443895822764655e-4966L
576// AARCH64-BE:#define __LDBL_DIG__ 33
577// AARCH64-BE:#define __LDBL_EPSILON__ 1.92592994438723585305597794258492732e-34L
578// AARCH64-BE:#define __LDBL_HAS_DENORM__ 1
579// AARCH64-BE:#define __LDBL_HAS_INFINITY__ 1
580// AARCH64-BE:#define __LDBL_HAS_QUIET_NAN__ 1
581// AARCH64-BE:#define __LDBL_MANT_DIG__ 113
582// AARCH64-BE:#define __LDBL_MAX_10_EXP__ 4932
583// AARCH64-BE:#define __LDBL_MAX_EXP__ 16384
584// AARCH64-BE:#define __LDBL_MAX__ 1.18973149535723176508575932662800702e+4932L
585// AARCH64-BE:#define __LDBL_MIN_10_EXP__ (-4931)
586// AARCH64-BE:#define __LDBL_MIN_EXP__ (-16381)
587// AARCH64-BE:#define __LDBL_MIN__ 3.36210314311209350626267781732175260e-4932L
588// AARCH64-BE:#define __LONG_LONG_MAX__ 9223372036854775807LL
589// AARCH64-BE:#define __LONG_MAX__ 9223372036854775807L
590// AARCH64-BE:#define __LP64__ 1
591// AARCH64-BE:#define __POINTER_WIDTH__ 64
592// AARCH64-BE:#define __PTRDIFF_TYPE__ long int
593// AARCH64-BE:#define __PTRDIFF_WIDTH__ 64
594// AARCH64-BE:#define __SCHAR_MAX__ 127
595// AARCH64-BE:#define __SHRT_MAX__ 32767
Joerg Sonnenbergerb3a49692014-07-17 18:31:20 +0000596// AARCH64-BE:#define __SIG_ATOMIC_MAX__ 2147483647
Christian Pirker227f5ed2014-03-24 13:57:21 +0000597// AARCH64-BE:#define __SIG_ATOMIC_WIDTH__ 32
598// AARCH64-BE:#define __SIZEOF_DOUBLE__ 8
599// AARCH64-BE:#define __SIZEOF_FLOAT__ 4
600// AARCH64-BE:#define __SIZEOF_INT128__ 16
601// AARCH64-BE:#define __SIZEOF_INT__ 4
602// AARCH64-BE:#define __SIZEOF_LONG_DOUBLE__ 16
603// AARCH64-BE:#define __SIZEOF_LONG_LONG__ 8
604// AARCH64-BE:#define __SIZEOF_LONG__ 8
605// AARCH64-BE:#define __SIZEOF_POINTER__ 8
606// AARCH64-BE:#define __SIZEOF_PTRDIFF_T__ 8
607// AARCH64-BE:#define __SIZEOF_SHORT__ 2
608// AARCH64-BE:#define __SIZEOF_SIZE_T__ 8
609// AARCH64-BE:#define __SIZEOF_WCHAR_T__ 4
610// AARCH64-BE:#define __SIZEOF_WINT_T__ 4
611// AARCH64-BE:#define __SIZE_MAX__ 18446744073709551615UL
612// AARCH64-BE:#define __SIZE_TYPE__ long unsigned int
613// AARCH64-BE:#define __SIZE_WIDTH__ 64
James Y Knightc97efa42016-02-11 16:51:29 +0000614// AARCH64-BE:#define __UINT16_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +0000615// AARCH64-BE:#define __UINT16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +0000616// AARCH64-BE:#define __UINT16_TYPE__ unsigned short
617// AARCH64-BE:#define __UINT32_C_SUFFIX__ U
618// AARCH64-BE:#define __UINT32_MAX__ 4294967295U
619// AARCH64-BE:#define __UINT32_TYPE__ unsigned int
620// AARCH64-BE:#define __UINT64_C_SUFFIX__ UL
621// AARCH64-BE:#define __UINT64_MAX__ 18446744073709551615UL
622// AARCH64-BE:#define __UINT64_TYPE__ long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +0000623// AARCH64-BE:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +0000624// AARCH64-BE:#define __UINT8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +0000625// AARCH64-BE:#define __UINT8_TYPE__ unsigned char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +0000626// AARCH64-BE:#define __UINTMAX_C_SUFFIX__ UL
JF Bastienab8d0a02014-06-25 01:31:33 +0000627// AARCH64-BE:#define __UINTMAX_MAX__ 18446744073709551615UL
Christian Pirker227f5ed2014-03-24 13:57:21 +0000628// AARCH64-BE:#define __UINTMAX_TYPE__ long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +0000629// AARCH64-BE:#define __UINTMAX_WIDTH__ 64
630// AARCH64-BE:#define __UINTPTR_MAX__ 18446744073709551615UL
631// AARCH64-BE:#define __UINTPTR_TYPE__ long unsigned int
632// AARCH64-BE:#define __UINTPTR_WIDTH__ 64
Joerg Sonnenberger587deea2014-07-17 20:12:32 +0000633// AARCH64-BE:#define __UINT_FAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +0000634// AARCH64-BE:#define __UINT_FAST16_TYPE__ unsigned short
635// AARCH64-BE:#define __UINT_FAST32_MAX__ 4294967295U
636// AARCH64-BE:#define __UINT_FAST32_TYPE__ unsigned int
637// AARCH64-BE:#define __UINT_FAST64_MAX__ 18446744073709551615UL
638// AARCH64-BE:#define __UINT_FAST64_TYPE__ long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +0000639// AARCH64-BE:#define __UINT_FAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +0000640// AARCH64-BE:#define __UINT_FAST8_TYPE__ unsigned char
Joerg Sonnenberger587deea2014-07-17 20:12:32 +0000641// AARCH64-BE:#define __UINT_LEAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +0000642// AARCH64-BE:#define __UINT_LEAST16_TYPE__ unsigned short
643// AARCH64-BE:#define __UINT_LEAST32_MAX__ 4294967295U
644// AARCH64-BE:#define __UINT_LEAST32_TYPE__ unsigned int
645// AARCH64-BE:#define __UINT_LEAST64_MAX__ 18446744073709551615UL
646// AARCH64-BE:#define __UINT_LEAST64_TYPE__ long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +0000647// AARCH64-BE:#define __UINT_LEAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +0000648// AARCH64-BE:#define __UINT_LEAST8_TYPE__ unsigned char
James Y Knightb214cbc2016-03-04 19:00:41 +0000649// AARCH64-BE:#define __USER_LABEL_PREFIX__
Christian Pirker227f5ed2014-03-24 13:57:21 +0000650// AARCH64-BE:#define __WCHAR_MAX__ 4294967295U
651// AARCH64-BE:#define __WCHAR_TYPE__ unsigned int
652// AARCH64-BE:#define __WCHAR_UNSIGNED__ 1
653// AARCH64-BE:#define __WCHAR_WIDTH__ 32
654// AARCH64-BE:#define __WINT_TYPE__ int
655// AARCH64-BE:#define __WINT_WIDTH__ 32
656// AARCH64-BE:#define __aarch64__ 1
657//
James Y Knightc97efa42016-02-11 16:51:29 +0000658// 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 +0000659//
660// AARCH64-NETBSD:#define _LP64 1
Christian Pirker227f5ed2014-03-24 13:57:21 +0000661// AARCH64-NETBSD-NOT:#define __AARCH64EB__ 1
Joerg Sonnenbergerec39cc62014-02-02 21:55:32 +0000662// AARCH64-NETBSD:#define __AARCH64EL__ 1
Christian Pirker227f5ed2014-03-24 13:57:21 +0000663// AARCH64-NETBSD-NOT:#define __AARCH_BIG_ENDIAN 1
Joerg Sonnenbergerec39cc62014-02-02 21:55:32 +0000664// AARCH64-NETBSD:#define __ARM_64BIT_STATE 1
665// AARCH64-NETBSD:#define __ARM_ARCH 8
666// AARCH64-NETBSD:#define __ARM_ARCH_ISA_A64 1
Christian Pirker227f5ed2014-03-24 13:57:21 +0000667// AARCH64-NETBSD-NOT:#define __ARM_BIG_ENDIAN 1
Tim Northovera6a19f12015-02-06 01:25:07 +0000668// AARCH64-NETBSD:#define __BIGGEST_ALIGNMENT__ 16
Joerg Sonnenbergerec39cc62014-02-02 21:55:32 +0000669// AARCH64-NETBSD:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
670// AARCH64-NETBSD:#define __CHAR16_TYPE__ unsigned short
671// AARCH64-NETBSD:#define __CHAR32_TYPE__ unsigned int
672// AARCH64-NETBSD:#define __CHAR_BIT__ 8
673// AARCH64-NETBSD:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
674// AARCH64-NETBSD:#define __DBL_DIG__ 15
675// AARCH64-NETBSD:#define __DBL_EPSILON__ 2.2204460492503131e-16
676// AARCH64-NETBSD:#define __DBL_HAS_DENORM__ 1
677// AARCH64-NETBSD:#define __DBL_HAS_INFINITY__ 1
678// AARCH64-NETBSD:#define __DBL_HAS_QUIET_NAN__ 1
679// AARCH64-NETBSD:#define __DBL_MANT_DIG__ 53
680// AARCH64-NETBSD:#define __DBL_MAX_10_EXP__ 308
681// AARCH64-NETBSD:#define __DBL_MAX_EXP__ 1024
682// AARCH64-NETBSD:#define __DBL_MAX__ 1.7976931348623157e+308
683// AARCH64-NETBSD:#define __DBL_MIN_10_EXP__ (-307)
684// AARCH64-NETBSD:#define __DBL_MIN_EXP__ (-1021)
685// AARCH64-NETBSD:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +0000686// AARCH64-NETBSD:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Joerg Sonnenbergerec39cc62014-02-02 21:55:32 +0000687// AARCH64-NETBSD:#define __ELF__ 1
688// AARCH64-NETBSD:#define __FLT_DENORM_MIN__ 1.40129846e-45F
689// AARCH64-NETBSD:#define __FLT_DIG__ 6
690// AARCH64-NETBSD:#define __FLT_EPSILON__ 1.19209290e-7F
691// AARCH64-NETBSD:#define __FLT_EVAL_METHOD__ 0
692// AARCH64-NETBSD:#define __FLT_HAS_DENORM__ 1
693// AARCH64-NETBSD:#define __FLT_HAS_INFINITY__ 1
694// AARCH64-NETBSD:#define __FLT_HAS_QUIET_NAN__ 1
695// AARCH64-NETBSD:#define __FLT_MANT_DIG__ 24
696// AARCH64-NETBSD:#define __FLT_MAX_10_EXP__ 38
697// AARCH64-NETBSD:#define __FLT_MAX_EXP__ 128
698// AARCH64-NETBSD:#define __FLT_MAX__ 3.40282347e+38F
699// AARCH64-NETBSD:#define __FLT_MIN_10_EXP__ (-37)
700// AARCH64-NETBSD:#define __FLT_MIN_EXP__ (-125)
701// AARCH64-NETBSD:#define __FLT_MIN__ 1.17549435e-38F
702// AARCH64-NETBSD:#define __FLT_RADIX__ 2
James Y Knightc97efa42016-02-11 16:51:29 +0000703// AARCH64-NETBSD:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +0000704// AARCH64-NETBSD:#define __INT16_FMTd__ "hd"
705// AARCH64-NETBSD:#define __INT16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +0000706// AARCH64-NETBSD:#define __INT16_MAX__ 32767
Joerg Sonnenbergerec39cc62014-02-02 21:55:32 +0000707// AARCH64-NETBSD:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +0000708// AARCH64-NETBSD:#define __INT32_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +0000709// AARCH64-NETBSD:#define __INT32_FMTd__ "d"
710// AARCH64-NETBSD:#define __INT32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +0000711// AARCH64-NETBSD:#define __INT32_MAX__ 2147483647
Joerg Sonnenbergerec39cc62014-02-02 21:55:32 +0000712// AARCH64-NETBSD:#define __INT32_TYPE__ int
Joerg Sonnenberger1f5984c2014-03-26 11:48:29 +0000713// AARCH64-NETBSD:#define __INT64_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +0000714// AARCH64-NETBSD:#define __INT64_FMTd__ "lld"
715// AARCH64-NETBSD:#define __INT64_FMTi__ "lli"
James Y Knightc97efa42016-02-11 16:51:29 +0000716// AARCH64-NETBSD:#define __INT64_MAX__ 9223372036854775807LL
Joerg Sonnenberger1f5984c2014-03-26 11:48:29 +0000717// AARCH64-NETBSD:#define __INT64_TYPE__ long long int
James Y Knightc97efa42016-02-11 16:51:29 +0000718// AARCH64-NETBSD:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +0000719// AARCH64-NETBSD:#define __INT8_FMTd__ "hhd"
720// AARCH64-NETBSD:#define __INT8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +0000721// AARCH64-NETBSD:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +0000722// AARCH64-NETBSD:#define __INT8_TYPE__ signed char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +0000723// AARCH64-NETBSD:#define __INTMAX_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +0000724// AARCH64-NETBSD:#define __INTMAX_FMTd__ "lld"
725// AARCH64-NETBSD:#define __INTMAX_FMTi__ "lli"
Joerg Sonnenberger1f5984c2014-03-26 11:48:29 +0000726// AARCH64-NETBSD:#define __INTMAX_MAX__ 9223372036854775807LL
727// AARCH64-NETBSD:#define __INTMAX_TYPE__ long long int
Joerg Sonnenbergerec39cc62014-02-02 21:55:32 +0000728// AARCH64-NETBSD:#define __INTMAX_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +0000729// AARCH64-NETBSD:#define __INTPTR_FMTd__ "ld"
730// AARCH64-NETBSD:#define __INTPTR_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +0000731// AARCH64-NETBSD:#define __INTPTR_MAX__ 9223372036854775807L
Joerg Sonnenbergerec39cc62014-02-02 21:55:32 +0000732// AARCH64-NETBSD:#define __INTPTR_TYPE__ long int
733// AARCH64-NETBSD:#define __INTPTR_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +0000734// AARCH64-NETBSD:#define __INT_FAST16_FMTd__ "hd"
735// AARCH64-NETBSD:#define __INT_FAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +0000736// AARCH64-NETBSD:#define __INT_FAST16_MAX__ 32767
737// AARCH64-NETBSD:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +0000738// AARCH64-NETBSD:#define __INT_FAST32_FMTd__ "d"
739// AARCH64-NETBSD:#define __INT_FAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +0000740// AARCH64-NETBSD:#define __INT_FAST32_MAX__ 2147483647
741// AARCH64-NETBSD:#define __INT_FAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +0000742// AARCH64-NETBSD:#define __INT_FAST64_FMTd__ "ld"
743// AARCH64-NETBSD:#define __INT_FAST64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +0000744// AARCH64-NETBSD:#define __INT_FAST64_MAX__ 9223372036854775807L
745// AARCH64-NETBSD:#define __INT_FAST64_TYPE__ long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +0000746// AARCH64-NETBSD:#define __INT_FAST8_FMTd__ "hhd"
747// AARCH64-NETBSD:#define __INT_FAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +0000748// AARCH64-NETBSD:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +0000749// AARCH64-NETBSD:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +0000750// AARCH64-NETBSD:#define __INT_LEAST16_FMTd__ "hd"
751// AARCH64-NETBSD:#define __INT_LEAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +0000752// AARCH64-NETBSD:#define __INT_LEAST16_MAX__ 32767
753// AARCH64-NETBSD:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +0000754// AARCH64-NETBSD:#define __INT_LEAST32_FMTd__ "d"
755// AARCH64-NETBSD:#define __INT_LEAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +0000756// AARCH64-NETBSD:#define __INT_LEAST32_MAX__ 2147483647
757// AARCH64-NETBSD:#define __INT_LEAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +0000758// AARCH64-NETBSD:#define __INT_LEAST64_FMTd__ "ld"
759// AARCH64-NETBSD:#define __INT_LEAST64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +0000760// AARCH64-NETBSD:#define __INT_LEAST64_MAX__ 9223372036854775807L
761// AARCH64-NETBSD:#define __INT_LEAST64_TYPE__ long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +0000762// AARCH64-NETBSD:#define __INT_LEAST8_FMTd__ "hhd"
763// AARCH64-NETBSD:#define __INT_LEAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +0000764// AARCH64-NETBSD:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +0000765// AARCH64-NETBSD:#define __INT_LEAST8_TYPE__ signed char
Joerg Sonnenbergerec39cc62014-02-02 21:55:32 +0000766// AARCH64-NETBSD:#define __INT_MAX__ 2147483647
767// AARCH64-NETBSD:#define __LDBL_DENORM_MIN__ 6.47517511943802511092443895822764655e-4966L
768// AARCH64-NETBSD:#define __LDBL_DIG__ 33
769// AARCH64-NETBSD:#define __LDBL_EPSILON__ 1.92592994438723585305597794258492732e-34L
770// AARCH64-NETBSD:#define __LDBL_HAS_DENORM__ 1
771// AARCH64-NETBSD:#define __LDBL_HAS_INFINITY__ 1
772// AARCH64-NETBSD:#define __LDBL_HAS_QUIET_NAN__ 1
773// AARCH64-NETBSD:#define __LDBL_MANT_DIG__ 113
774// AARCH64-NETBSD:#define __LDBL_MAX_10_EXP__ 4932
775// AARCH64-NETBSD:#define __LDBL_MAX_EXP__ 16384
776// AARCH64-NETBSD:#define __LDBL_MAX__ 1.18973149535723176508575932662800702e+4932L
777// AARCH64-NETBSD:#define __LDBL_MIN_10_EXP__ (-4931)
778// AARCH64-NETBSD:#define __LDBL_MIN_EXP__ (-16381)
779// AARCH64-NETBSD:#define __LDBL_MIN__ 3.36210314311209350626267781732175260e-4932L
780// AARCH64-NETBSD:#define __LITTLE_ENDIAN__ 1
781// AARCH64-NETBSD:#define __LONG_LONG_MAX__ 9223372036854775807LL
782// AARCH64-NETBSD:#define __LONG_MAX__ 9223372036854775807L
783// AARCH64-NETBSD:#define __LP64__ 1
784// AARCH64-NETBSD:#define __NetBSD__ 1
785// AARCH64-NETBSD:#define __POINTER_WIDTH__ 64
786// AARCH64-NETBSD:#define __PTRDIFF_TYPE__ long int
787// AARCH64-NETBSD:#define __PTRDIFF_WIDTH__ 64
788// AARCH64-NETBSD:#define __SCHAR_MAX__ 127
789// AARCH64-NETBSD:#define __SHRT_MAX__ 32767
Joerg Sonnenbergerb3a49692014-07-17 18:31:20 +0000790// AARCH64-NETBSD:#define __SIG_ATOMIC_MAX__ 2147483647
Joerg Sonnenbergerec39cc62014-02-02 21:55:32 +0000791// AARCH64-NETBSD:#define __SIG_ATOMIC_WIDTH__ 32
792// AARCH64-NETBSD:#define __SIZEOF_DOUBLE__ 8
793// AARCH64-NETBSD:#define __SIZEOF_FLOAT__ 4
794// AARCH64-NETBSD:#define __SIZEOF_INT__ 4
795// AARCH64-NETBSD:#define __SIZEOF_LONG_DOUBLE__ 16
796// AARCH64-NETBSD:#define __SIZEOF_LONG_LONG__ 8
797// AARCH64-NETBSD:#define __SIZEOF_LONG__ 8
798// AARCH64-NETBSD:#define __SIZEOF_POINTER__ 8
799// AARCH64-NETBSD:#define __SIZEOF_PTRDIFF_T__ 8
800// AARCH64-NETBSD:#define __SIZEOF_SHORT__ 2
801// AARCH64-NETBSD:#define __SIZEOF_SIZE_T__ 8
802// AARCH64-NETBSD:#define __SIZEOF_WCHAR_T__ 4
803// AARCH64-NETBSD:#define __SIZEOF_WINT_T__ 4
804// AARCH64-NETBSD:#define __SIZE_MAX__ 18446744073709551615UL
805// AARCH64-NETBSD:#define __SIZE_TYPE__ long unsigned int
806// AARCH64-NETBSD:#define __SIZE_WIDTH__ 64
James Y Knightc97efa42016-02-11 16:51:29 +0000807// AARCH64-NETBSD:#define __UINT16_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +0000808// AARCH64-NETBSD:#define __UINT16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +0000809// AARCH64-NETBSD:#define __UINT16_TYPE__ unsigned short
810// AARCH64-NETBSD:#define __UINT32_C_SUFFIX__ U
811// AARCH64-NETBSD:#define __UINT32_MAX__ 4294967295U
812// AARCH64-NETBSD:#define __UINT32_TYPE__ unsigned int
Joerg Sonnenberger62277b32014-07-15 11:51:38 +0000813// AARCH64-NETBSD:#define __UINT64_C_SUFFIX__ ULL
814// AARCH64-NETBSD:#define __UINT64_MAX__ 18446744073709551615ULL
815// AARCH64-NETBSD:#define __UINT64_TYPE__ long long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +0000816// AARCH64-NETBSD:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +0000817// AARCH64-NETBSD:#define __UINT8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +0000818// AARCH64-NETBSD:#define __UINT8_TYPE__ unsigned char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +0000819// AARCH64-NETBSD:#define __UINTMAX_C_SUFFIX__ ULL
JF Bastienab8d0a02014-06-25 01:31:33 +0000820// AARCH64-NETBSD:#define __UINTMAX_MAX__ 18446744073709551615ULL
Joerg Sonnenberger1f5984c2014-03-26 11:48:29 +0000821// AARCH64-NETBSD:#define __UINTMAX_TYPE__ long long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +0000822// AARCH64-NETBSD:#define __UINTMAX_WIDTH__ 64
823// AARCH64-NETBSD:#define __UINTPTR_MAX__ 18446744073709551615UL
824// AARCH64-NETBSD:#define __UINTPTR_TYPE__ long unsigned int
825// AARCH64-NETBSD:#define __UINTPTR_WIDTH__ 64
Joerg Sonnenberger587deea2014-07-17 20:12:32 +0000826// AARCH64-NETBSD:#define __UINT_FAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +0000827// AARCH64-NETBSD:#define __UINT_FAST16_TYPE__ unsigned short
828// AARCH64-NETBSD:#define __UINT_FAST32_MAX__ 4294967295U
829// AARCH64-NETBSD:#define __UINT_FAST32_TYPE__ unsigned int
830// AARCH64-NETBSD:#define __UINT_FAST64_MAX__ 18446744073709551615UL
831// AARCH64-NETBSD:#define __UINT_FAST64_TYPE__ long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +0000832// AARCH64-NETBSD:#define __UINT_FAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +0000833// AARCH64-NETBSD:#define __UINT_FAST8_TYPE__ unsigned char
Joerg Sonnenberger587deea2014-07-17 20:12:32 +0000834// AARCH64-NETBSD:#define __UINT_LEAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +0000835// AARCH64-NETBSD:#define __UINT_LEAST16_TYPE__ unsigned short
836// AARCH64-NETBSD:#define __UINT_LEAST32_MAX__ 4294967295U
837// AARCH64-NETBSD:#define __UINT_LEAST32_TYPE__ unsigned int
838// AARCH64-NETBSD:#define __UINT_LEAST64_MAX__ 18446744073709551615UL
839// AARCH64-NETBSD:#define __UINT_LEAST64_TYPE__ long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +0000840// AARCH64-NETBSD:#define __UINT_LEAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +0000841// AARCH64-NETBSD:#define __UINT_LEAST8_TYPE__ unsigned char
Joerg Sonnenbergerec39cc62014-02-02 21:55:32 +0000842// AARCH64-NETBSD:#define __USER_LABEL_PREFIX__
843// AARCH64-NETBSD:#define __WCHAR_MAX__ 2147483647
844// AARCH64-NETBSD:#define __WCHAR_TYPE__ int
845// AARCH64-NETBSD:#define __WCHAR_WIDTH__ 32
846// AARCH64-NETBSD:#define __WINT_TYPE__ int
847// AARCH64-NETBSD:#define __WINT_WIDTH__ 32
848// AARCH64-NETBSD:#define __aarch64__ 1
Ed Maste6a9eda52014-11-13 16:55:42 +0000849//
Brad Smith9aa2bf22017-02-21 23:13:09 +0000850// RUN: %clang_cc1 -E -dM -ffreestanding -triple=aarch64-openbsd < /dev/null | FileCheck -match-full-lines -check-prefix AARCH64-OPENBSD %s
851//
852// AARCH64-OPENBSD:#define _LP64 1
853// AARCH64-OPENBSD-NOT:#define __AARCH64EB__ 1
854// AARCH64-OPENBSD:#define __AARCH64EL__ 1
855// AARCH64-OPENBSD-NOT:#define __AARCH_BIG_ENDIAN 1
856// AARCH64-OPENBSD:#define __ARM_64BIT_STATE 1
857// AARCH64-OPENBSD:#define __ARM_ARCH 8
858// AARCH64-OPENBSD:#define __ARM_ARCH_ISA_A64 1
859// AARCH64-OPENBSD-NOT:#define __ARM_BIG_ENDIAN 1
860// AARCH64-OPENBSD:#define __BIGGEST_ALIGNMENT__ 16
861// AARCH64-OPENBSD:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
862// AARCH64-OPENBSD:#define __CHAR16_TYPE__ unsigned short
863// AARCH64-OPENBSD:#define __CHAR32_TYPE__ unsigned int
864// AARCH64-OPENBSD:#define __CHAR_BIT__ 8
865// AARCH64-OPENBSD:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
866// AARCH64-OPENBSD:#define __DBL_DIG__ 15
867// AARCH64-OPENBSD:#define __DBL_EPSILON__ 2.2204460492503131e-16
868// AARCH64-OPENBSD:#define __DBL_HAS_DENORM__ 1
869// AARCH64-OPENBSD:#define __DBL_HAS_INFINITY__ 1
870// AARCH64-OPENBSD:#define __DBL_HAS_QUIET_NAN__ 1
871// AARCH64-OPENBSD:#define __DBL_MANT_DIG__ 53
872// AARCH64-OPENBSD:#define __DBL_MAX_10_EXP__ 308
873// AARCH64-OPENBSD:#define __DBL_MAX_EXP__ 1024
874// AARCH64-OPENBSD:#define __DBL_MAX__ 1.7976931348623157e+308
875// AARCH64-OPENBSD:#define __DBL_MIN_10_EXP__ (-307)
876// AARCH64-OPENBSD:#define __DBL_MIN_EXP__ (-1021)
877// AARCH64-OPENBSD:#define __DBL_MIN__ 2.2250738585072014e-308
878// AARCH64-OPENBSD:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
879// AARCH64-OPENBSD:#define __ELF__ 1
880// AARCH64-OPENBSD:#define __FLT_DENORM_MIN__ 1.40129846e-45F
881// AARCH64-OPENBSD:#define __FLT_DIG__ 6
882// AARCH64-OPENBSD:#define __FLT_EPSILON__ 1.19209290e-7F
883// AARCH64-OPENBSD:#define __FLT_EVAL_METHOD__ 0
884// AARCH64-OPENBSD:#define __FLT_HAS_DENORM__ 1
885// AARCH64-OPENBSD:#define __FLT_HAS_INFINITY__ 1
886// AARCH64-OPENBSD:#define __FLT_HAS_QUIET_NAN__ 1
887// AARCH64-OPENBSD:#define __FLT_MANT_DIG__ 24
888// AARCH64-OPENBSD:#define __FLT_MAX_10_EXP__ 38
889// AARCH64-OPENBSD:#define __FLT_MAX_EXP__ 128
890// AARCH64-OPENBSD:#define __FLT_MAX__ 3.40282347e+38F
891// AARCH64-OPENBSD:#define __FLT_MIN_10_EXP__ (-37)
892// AARCH64-OPENBSD:#define __FLT_MIN_EXP__ (-125)
893// AARCH64-OPENBSD:#define __FLT_MIN__ 1.17549435e-38F
894// AARCH64-OPENBSD:#define __FLT_RADIX__ 2
895// AARCH64-OPENBSD:#define __INT16_C_SUFFIX__
896// AARCH64-OPENBSD:#define __INT16_FMTd__ "hd"
897// AARCH64-OPENBSD:#define __INT16_FMTi__ "hi"
898// AARCH64-OPENBSD:#define __INT16_MAX__ 32767
899// AARCH64-OPENBSD:#define __INT16_TYPE__ short
900// AARCH64-OPENBSD:#define __INT32_C_SUFFIX__
901// AARCH64-OPENBSD:#define __INT32_FMTd__ "d"
902// AARCH64-OPENBSD:#define __INT32_FMTi__ "i"
903// AARCH64-OPENBSD:#define __INT32_MAX__ 2147483647
904// AARCH64-OPENBSD:#define __INT32_TYPE__ int
905// AARCH64-OPENBSD:#define __INT64_C_SUFFIX__ LL
906// AARCH64-OPENBSD:#define __INT64_FMTd__ "lld"
907// AARCH64-OPENBSD:#define __INT64_FMTi__ "lli"
908// AARCH64-OPENBSD:#define __INT64_MAX__ 9223372036854775807LL
909// AARCH64-OPENBSD:#define __INT64_TYPE__ long long int
910// AARCH64-OPENBSD:#define __INT8_C_SUFFIX__
911// AARCH64-OPENBSD:#define __INT8_FMTd__ "hhd"
912// AARCH64-OPENBSD:#define __INT8_FMTi__ "hhi"
913// AARCH64-OPENBSD:#define __INT8_MAX__ 127
914// AARCH64-OPENBSD:#define __INT8_TYPE__ signed char
915// AARCH64-OPENBSD:#define __INTMAX_C_SUFFIX__ LL
916// AARCH64-OPENBSD:#define __INTMAX_FMTd__ "lld"
917// AARCH64-OPENBSD:#define __INTMAX_FMTi__ "lli"
918// AARCH64-OPENBSD:#define __INTMAX_MAX__ 9223372036854775807LL
919// AARCH64-OPENBSD:#define __INTMAX_TYPE__ long long int
920// AARCH64-OPENBSD:#define __INTMAX_WIDTH__ 64
921// AARCH64-OPENBSD:#define __INTPTR_FMTd__ "ld"
922// AARCH64-OPENBSD:#define __INTPTR_FMTi__ "li"
923// AARCH64-OPENBSD:#define __INTPTR_MAX__ 9223372036854775807L
924// AARCH64-OPENBSD:#define __INTPTR_TYPE__ long int
925// AARCH64-OPENBSD:#define __INTPTR_WIDTH__ 64
926// AARCH64-OPENBSD:#define __INT_FAST16_FMTd__ "hd"
927// AARCH64-OPENBSD:#define __INT_FAST16_FMTi__ "hi"
928// AARCH64-OPENBSD:#define __INT_FAST16_MAX__ 32767
929// AARCH64-OPENBSD:#define __INT_FAST16_TYPE__ short
930// AARCH64-OPENBSD:#define __INT_FAST32_FMTd__ "d"
931// AARCH64-OPENBSD:#define __INT_FAST32_FMTi__ "i"
932// AARCH64-OPENBSD:#define __INT_FAST32_MAX__ 2147483647
933// AARCH64-OPENBSD:#define __INT_FAST32_TYPE__ int
934// AARCH64-OPENBSD:#define __INT_FAST64_FMTd__ "ld"
935// AARCH64-OPENBSD:#define __INT_FAST64_FMTi__ "li"
936// AARCH64-OPENBSD:#define __INT_FAST64_MAX__ 9223372036854775807L
937// AARCH64-OPENBSD:#define __INT_FAST64_TYPE__ long int
938// AARCH64-OPENBSD:#define __INT_FAST8_FMTd__ "hhd"
939// AARCH64-OPENBSD:#define __INT_FAST8_FMTi__ "hhi"
940// AARCH64-OPENBSD:#define __INT_FAST8_MAX__ 127
941// AARCH64-OPENBSD:#define __INT_FAST8_TYPE__ signed char
942// AARCH64-OPENBSD:#define __INT_LEAST16_FMTd__ "hd"
943// AARCH64-OPENBSD:#define __INT_LEAST16_FMTi__ "hi"
944// AARCH64-OPENBSD:#define __INT_LEAST16_MAX__ 32767
945// AARCH64-OPENBSD:#define __INT_LEAST16_TYPE__ short
946// AARCH64-OPENBSD:#define __INT_LEAST32_FMTd__ "d"
947// AARCH64-OPENBSD:#define __INT_LEAST32_FMTi__ "i"
948// AARCH64-OPENBSD:#define __INT_LEAST32_MAX__ 2147483647
Brad Smith76e6c982017-07-30 20:33:06 +0000949// AARCH64-OPENBSD:#define __INT_LEAST32_TYPE__ int
Brad Smith9aa2bf22017-02-21 23:13:09 +0000950// AARCH64-OPENBSD:#define __INT_LEAST64_FMTd__ "ld"
951// AARCH64-OPENBSD:#define __INT_LEAST64_FMTi__ "li"
952// AARCH64-OPENBSD:#define __INT_LEAST64_MAX__ 9223372036854775807L
953// AARCH64-OPENBSD:#define __INT_LEAST64_TYPE__ long int
954// AARCH64-OPENBSD:#define __INT_LEAST8_FMTd__ "hhd"
955// AARCH64-OPENBSD:#define __INT_LEAST8_FMTi__ "hhi"
956// AARCH64-OPENBSD:#define __INT_LEAST8_MAX__ 127
957// AARCH64-OPENBSD:#define __INT_LEAST8_TYPE__ signed char
958// AARCH64-OPENBSD:#define __INT_MAX__ 2147483647
959// AARCH64-OPENBSD:#define __LDBL_DENORM_MIN__ 6.47517511943802511092443895822764655e-4966L
960// AARCH64-OPENBSD:#define __LDBL_DIG__ 33
961// AARCH64-OPENBSD:#define __LDBL_EPSILON__ 1.92592994438723585305597794258492732e-34L
962// AARCH64-OPENBSD:#define __LDBL_HAS_DENORM__ 1
963// AARCH64-OPENBSD:#define __LDBL_HAS_INFINITY__ 1
964// AARCH64-OPENBSD:#define __LDBL_HAS_QUIET_NAN__ 1
965// AARCH64-OPENBSD:#define __LDBL_MANT_DIG__ 113
966// AARCH64-OPENBSD:#define __LDBL_MAX_10_EXP__ 4932
967// AARCH64-OPENBSD:#define __LDBL_MAX_EXP__ 16384
968// AARCH64-OPENBSD:#define __LDBL_MAX__ 1.18973149535723176508575932662800702e+4932L
969// AARCH64-OPENBSD:#define __LDBL_MIN_10_EXP__ (-4931)
970// AARCH64-OPENBSD:#define __LDBL_MIN_EXP__ (-16381)
971// AARCH64-OPENBSD:#define __LDBL_MIN__ 3.36210314311209350626267781732175260e-4932L
972// AARCH64-OPENBSD:#define __LITTLE_ENDIAN__ 1
973// AARCH64-OPENBSD:#define __LONG_LONG_MAX__ 9223372036854775807LL
974// AARCH64-OPENBSD:#define __LONG_MAX__ 9223372036854775807L
975// AARCH64-OPENBSD:#define __LP64__ 1
976// AARCH64-OPENBSD:#define __OpenBSD__ 1
977// AARCH64-OPENBSD:#define __POINTER_WIDTH__ 64
978// AARCH64-OPENBSD:#define __PTRDIFF_TYPE__ long int
979// AARCH64-OPENBSD:#define __PTRDIFF_WIDTH__ 64
980// AARCH64-OPENBSD:#define __SCHAR_MAX__ 127
981// AARCH64-OPENBSD:#define __SHRT_MAX__ 32767
982// AARCH64-OPENBSD:#define __SIG_ATOMIC_MAX__ 2147483647
983// AARCH64-OPENBSD:#define __SIG_ATOMIC_WIDTH__ 32
984// AARCH64-OPENBSD:#define __SIZEOF_DOUBLE__ 8
985// AARCH64-OPENBSD:#define __SIZEOF_FLOAT__ 4
986// AARCH64-OPENBSD:#define __SIZEOF_INT__ 4
987// AARCH64-OPENBSD:#define __SIZEOF_LONG_DOUBLE__ 16
988// AARCH64-OPENBSD:#define __SIZEOF_LONG_LONG__ 8
989// AARCH64-OPENBSD:#define __SIZEOF_LONG__ 8
990// AARCH64-OPENBSD:#define __SIZEOF_POINTER__ 8
991// AARCH64-OPENBSD:#define __SIZEOF_PTRDIFF_T__ 8
992// AARCH64-OPENBSD:#define __SIZEOF_SHORT__ 2
993// AARCH64-OPENBSD:#define __SIZEOF_SIZE_T__ 8
994// AARCH64-OPENBSD:#define __SIZEOF_WCHAR_T__ 4
995// AARCH64-OPENBSD:#define __SIZEOF_WINT_T__ 4
996// AARCH64-OPENBSD:#define __SIZE_MAX__ 18446744073709551615UL
997// AARCH64-OPENBSD:#define __SIZE_TYPE__ long unsigned int
998// AARCH64-OPENBSD:#define __SIZE_WIDTH__ 64
999// AARCH64-OPENBSD:#define __UINT16_C_SUFFIX__
1000// AARCH64-OPENBSD:#define __UINT16_MAX__ 65535
1001// AARCH64-OPENBSD:#define __UINT16_TYPE__ unsigned short
1002// AARCH64-OPENBSD:#define __UINT32_C_SUFFIX__ U
1003// AARCH64-OPENBSD:#define __UINT32_MAX__ 4294967295U
1004// AARCH64-OPENBSD:#define __UINT32_TYPE__ unsigned int
1005// AARCH64-OPENBSD:#define __UINT64_C_SUFFIX__ ULL
1006// AARCH64-OPENBSD:#define __UINT64_MAX__ 18446744073709551615ULL
1007// AARCH64-OPENBSD:#define __UINT64_TYPE__ long long unsigned int
1008// AARCH64-OPENBSD:#define __UINT8_C_SUFFIX__
1009// AARCH64-OPENBSD:#define __UINT8_MAX__ 255
1010// AARCH64-OPENBSD:#define __UINT8_TYPE__ unsigned char
1011// AARCH64-OPENBSD:#define __UINTMAX_C_SUFFIX__ ULL
1012// AARCH64-OPENBSD:#define __UINTMAX_MAX__ 18446744073709551615ULL
1013// AARCH64-OPENBSD:#define __UINTMAX_TYPE__ long long unsigned int
1014// AARCH64-OPENBSD:#define __UINTMAX_WIDTH__ 64
1015// AARCH64-OPENBSD:#define __UINTPTR_MAX__ 18446744073709551615UL
1016// AARCH64-OPENBSD:#define __UINTPTR_TYPE__ long unsigned int
1017// AARCH64-OPENBSD:#define __UINTPTR_WIDTH__ 64
1018// AARCH64-OPENBSD:#define __UINT_FAST16_MAX__ 65535
1019// AARCH64-OPENBSD:#define __UINT_FAST16_TYPE__ unsigned short
1020// AARCH64-OPENBSD:#define __UINT_FAST32_MAX__ 4294967295U
1021// AARCH64-OPENBSD:#define __UINT_FAST32_TYPE__ unsigned int
1022// AARCH64-OPENBSD:#define __UINT_FAST64_MAX__ 18446744073709551615UL
1023// AARCH64-OPENBSD:#define __UINT_FAST64_TYPE__ long unsigned int
1024// AARCH64-OPENBSD:#define __UINT_FAST8_MAX__ 255
1025// AARCH64-OPENBSD:#define __UINT_FAST8_TYPE__ unsigned char
1026// AARCH64-OPENBSD:#define __UINT_LEAST16_MAX__ 65535
1027// AARCH64-OPENBSD:#define __UINT_LEAST16_TYPE__ unsigned short
1028// AARCH64-OPENBSD:#define __UINT_LEAST32_MAX__ 4294967295U
1029// AARCH64-OPENBSD:#define __UINT_LEAST32_TYPE__ unsigned int
1030// AARCH64-OPENBSD:#define __UINT_LEAST64_MAX__ 18446744073709551615UL
1031// AARCH64-OPENBSD:#define __UINT_LEAST64_TYPE__ long unsigned int
1032// AARCH64-OPENBSD:#define __UINT_LEAST8_MAX__ 255
1033// AARCH64-OPENBSD:#define __UINT_LEAST8_TYPE__ unsigned char
1034// AARCH64-OPENBSD:#define __USER_LABEL_PREFIX__
1035// AARCH64-OPENBSD:#define __WCHAR_MAX__ 2147483647
1036// AARCH64-OPENBSD:#define __WCHAR_TYPE__ int
1037// AARCH64-OPENBSD:#define __WCHAR_WIDTH__ 32
1038// AARCH64-OPENBSD:#define __WINT_TYPE__ int
1039// AARCH64-OPENBSD:#define __WINT_WIDTH__ 32
1040// AARCH64-OPENBSD:#define __aarch64__ 1
1041//
James Y Knightc97efa42016-02-11 16:51:29 +00001042// 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 +00001043//
1044// AARCH64-FREEBSD:#define _LP64 1
1045// AARCH64-FREEBSD-NOT:#define __AARCH64EB__ 1
1046// AARCH64-FREEBSD:#define __AARCH64EL__ 1
1047// AARCH64-FREEBSD-NOT:#define __AARCH_BIG_ENDIAN 1
1048// AARCH64-FREEBSD:#define __ARM_64BIT_STATE 1
1049// AARCH64-FREEBSD:#define __ARM_ARCH 8
1050// AARCH64-FREEBSD:#define __ARM_ARCH_ISA_A64 1
1051// AARCH64-FREEBSD-NOT:#define __ARM_BIG_ENDIAN 1
Tim Northovera6a19f12015-02-06 01:25:07 +00001052// AARCH64-FREEBSD:#define __BIGGEST_ALIGNMENT__ 16
Ed Maste6a9eda52014-11-13 16:55:42 +00001053// AARCH64-FREEBSD:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
1054// AARCH64-FREEBSD:#define __CHAR16_TYPE__ unsigned short
1055// AARCH64-FREEBSD:#define __CHAR32_TYPE__ unsigned int
1056// AARCH64-FREEBSD:#define __CHAR_BIT__ 8
1057// AARCH64-FREEBSD:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
1058// AARCH64-FREEBSD:#define __DBL_DIG__ 15
1059// AARCH64-FREEBSD:#define __DBL_EPSILON__ 2.2204460492503131e-16
1060// AARCH64-FREEBSD:#define __DBL_HAS_DENORM__ 1
1061// AARCH64-FREEBSD:#define __DBL_HAS_INFINITY__ 1
1062// AARCH64-FREEBSD:#define __DBL_HAS_QUIET_NAN__ 1
1063// AARCH64-FREEBSD:#define __DBL_MANT_DIG__ 53
1064// AARCH64-FREEBSD:#define __DBL_MAX_10_EXP__ 308
1065// AARCH64-FREEBSD:#define __DBL_MAX_EXP__ 1024
1066// AARCH64-FREEBSD:#define __DBL_MAX__ 1.7976931348623157e+308
1067// AARCH64-FREEBSD:#define __DBL_MIN_10_EXP__ (-307)
1068// AARCH64-FREEBSD:#define __DBL_MIN_EXP__ (-1021)
1069// AARCH64-FREEBSD:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00001070// AARCH64-FREEBSD:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Ed Maste6a9eda52014-11-13 16:55:42 +00001071// AARCH64-FREEBSD:#define __ELF__ 1
1072// AARCH64-FREEBSD:#define __FLT_DENORM_MIN__ 1.40129846e-45F
1073// AARCH64-FREEBSD:#define __FLT_DIG__ 6
1074// AARCH64-FREEBSD:#define __FLT_EPSILON__ 1.19209290e-7F
1075// AARCH64-FREEBSD:#define __FLT_EVAL_METHOD__ 0
1076// AARCH64-FREEBSD:#define __FLT_HAS_DENORM__ 1
1077// AARCH64-FREEBSD:#define __FLT_HAS_INFINITY__ 1
1078// AARCH64-FREEBSD:#define __FLT_HAS_QUIET_NAN__ 1
1079// AARCH64-FREEBSD:#define __FLT_MANT_DIG__ 24
1080// AARCH64-FREEBSD:#define __FLT_MAX_10_EXP__ 38
1081// AARCH64-FREEBSD:#define __FLT_MAX_EXP__ 128
1082// AARCH64-FREEBSD:#define __FLT_MAX__ 3.40282347e+38F
1083// AARCH64-FREEBSD:#define __FLT_MIN_10_EXP__ (-37)
1084// AARCH64-FREEBSD:#define __FLT_MIN_EXP__ (-125)
1085// AARCH64-FREEBSD:#define __FLT_MIN__ 1.17549435e-38F
1086// AARCH64-FREEBSD:#define __FLT_RADIX__ 2
1087// AARCH64-FREEBSD:#define __FreeBSD__ 11
James Y Knightc97efa42016-02-11 16:51:29 +00001088// AARCH64-FREEBSD:#define __INT16_C_SUFFIX__
Ed Maste6a9eda52014-11-13 16:55:42 +00001089// AARCH64-FREEBSD:#define __INT16_FMTd__ "hd"
1090// AARCH64-FREEBSD:#define __INT16_FMTi__ "hi"
1091// AARCH64-FREEBSD:#define __INT16_MAX__ 32767
1092// AARCH64-FREEBSD:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +00001093// AARCH64-FREEBSD:#define __INT32_C_SUFFIX__
Ed Maste6a9eda52014-11-13 16:55:42 +00001094// AARCH64-FREEBSD:#define __INT32_FMTd__ "d"
1095// AARCH64-FREEBSD:#define __INT32_FMTi__ "i"
1096// AARCH64-FREEBSD:#define __INT32_MAX__ 2147483647
1097// AARCH64-FREEBSD:#define __INT32_TYPE__ int
1098// AARCH64-FREEBSD:#define __INT64_C_SUFFIX__ L
1099// AARCH64-FREEBSD:#define __INT64_FMTd__ "ld"
1100// AARCH64-FREEBSD:#define __INT64_FMTi__ "li"
1101// AARCH64-FREEBSD:#define __INT64_MAX__ 9223372036854775807L
1102// AARCH64-FREEBSD:#define __INT64_TYPE__ long int
James Y Knightc97efa42016-02-11 16:51:29 +00001103// AARCH64-FREEBSD:#define __INT8_C_SUFFIX__
Ed Maste6a9eda52014-11-13 16:55:42 +00001104// AARCH64-FREEBSD:#define __INT8_FMTd__ "hhd"
1105// AARCH64-FREEBSD:#define __INT8_FMTi__ "hhi"
1106// AARCH64-FREEBSD:#define __INT8_MAX__ 127
1107// AARCH64-FREEBSD:#define __INT8_TYPE__ signed char
1108// AARCH64-FREEBSD:#define __INTMAX_C_SUFFIX__ L
1109// AARCH64-FREEBSD:#define __INTMAX_FMTd__ "ld"
1110// AARCH64-FREEBSD:#define __INTMAX_FMTi__ "li"
1111// AARCH64-FREEBSD:#define __INTMAX_MAX__ 9223372036854775807L
1112// AARCH64-FREEBSD:#define __INTMAX_TYPE__ long int
1113// AARCH64-FREEBSD:#define __INTMAX_WIDTH__ 64
1114// AARCH64-FREEBSD:#define __INTPTR_FMTd__ "ld"
1115// AARCH64-FREEBSD:#define __INTPTR_FMTi__ "li"
1116// AARCH64-FREEBSD:#define __INTPTR_MAX__ 9223372036854775807L
1117// AARCH64-FREEBSD:#define __INTPTR_TYPE__ long int
1118// AARCH64-FREEBSD:#define __INTPTR_WIDTH__ 64
1119// AARCH64-FREEBSD:#define __INT_FAST16_FMTd__ "hd"
1120// AARCH64-FREEBSD:#define __INT_FAST16_FMTi__ "hi"
1121// AARCH64-FREEBSD:#define __INT_FAST16_MAX__ 32767
1122// AARCH64-FREEBSD:#define __INT_FAST16_TYPE__ short
1123// AARCH64-FREEBSD:#define __INT_FAST32_FMTd__ "d"
1124// AARCH64-FREEBSD:#define __INT_FAST32_FMTi__ "i"
1125// AARCH64-FREEBSD:#define __INT_FAST32_MAX__ 2147483647
1126// AARCH64-FREEBSD:#define __INT_FAST32_TYPE__ int
1127// AARCH64-FREEBSD:#define __INT_FAST64_FMTd__ "ld"
1128// AARCH64-FREEBSD:#define __INT_FAST64_FMTi__ "li"
1129// AARCH64-FREEBSD:#define __INT_FAST64_MAX__ 9223372036854775807L
1130// AARCH64-FREEBSD:#define __INT_FAST64_TYPE__ long int
1131// AARCH64-FREEBSD:#define __INT_FAST8_FMTd__ "hhd"
1132// AARCH64-FREEBSD:#define __INT_FAST8_FMTi__ "hhi"
1133// AARCH64-FREEBSD:#define __INT_FAST8_MAX__ 127
1134// AARCH64-FREEBSD:#define __INT_FAST8_TYPE__ signed char
1135// AARCH64-FREEBSD:#define __INT_LEAST16_FMTd__ "hd"
1136// AARCH64-FREEBSD:#define __INT_LEAST16_FMTi__ "hi"
1137// AARCH64-FREEBSD:#define __INT_LEAST16_MAX__ 32767
1138// AARCH64-FREEBSD:#define __INT_LEAST16_TYPE__ short
1139// AARCH64-FREEBSD:#define __INT_LEAST32_FMTd__ "d"
1140// AARCH64-FREEBSD:#define __INT_LEAST32_FMTi__ "i"
1141// AARCH64-FREEBSD:#define __INT_LEAST32_MAX__ 2147483647
1142// AARCH64-FREEBSD:#define __INT_LEAST32_TYPE__ int
1143// AARCH64-FREEBSD:#define __INT_LEAST64_FMTd__ "ld"
1144// AARCH64-FREEBSD:#define __INT_LEAST64_FMTi__ "li"
1145// AARCH64-FREEBSD:#define __INT_LEAST64_MAX__ 9223372036854775807L
1146// AARCH64-FREEBSD:#define __INT_LEAST64_TYPE__ long int
1147// AARCH64-FREEBSD:#define __INT_LEAST8_FMTd__ "hhd"
1148// AARCH64-FREEBSD:#define __INT_LEAST8_FMTi__ "hhi"
1149// AARCH64-FREEBSD:#define __INT_LEAST8_MAX__ 127
1150// AARCH64-FREEBSD:#define __INT_LEAST8_TYPE__ signed char
1151// AARCH64-FREEBSD:#define __INT_MAX__ 2147483647
1152// AARCH64-FREEBSD:#define __LDBL_DENORM_MIN__ 6.47517511943802511092443895822764655e-4966L
1153// AARCH64-FREEBSD:#define __LDBL_DIG__ 33
1154// AARCH64-FREEBSD:#define __LDBL_EPSILON__ 1.92592994438723585305597794258492732e-34L
1155// AARCH64-FREEBSD:#define __LDBL_HAS_DENORM__ 1
1156// AARCH64-FREEBSD:#define __LDBL_HAS_INFINITY__ 1
1157// AARCH64-FREEBSD:#define __LDBL_HAS_QUIET_NAN__ 1
1158// AARCH64-FREEBSD:#define __LDBL_MANT_DIG__ 113
1159// AARCH64-FREEBSD:#define __LDBL_MAX_10_EXP__ 4932
1160// AARCH64-FREEBSD:#define __LDBL_MAX_EXP__ 16384
1161// AARCH64-FREEBSD:#define __LDBL_MAX__ 1.18973149535723176508575932662800702e+4932L
1162// AARCH64-FREEBSD:#define __LDBL_MIN_10_EXP__ (-4931)
1163// AARCH64-FREEBSD:#define __LDBL_MIN_EXP__ (-16381)
1164// AARCH64-FREEBSD:#define __LDBL_MIN__ 3.36210314311209350626267781732175260e-4932L
1165// AARCH64-FREEBSD:#define __LITTLE_ENDIAN__ 1
1166// AARCH64-FREEBSD:#define __LONG_LONG_MAX__ 9223372036854775807LL
1167// AARCH64-FREEBSD:#define __LONG_MAX__ 9223372036854775807L
1168// AARCH64-FREEBSD:#define __LP64__ 1
1169// AARCH64-FREEBSD:#define __POINTER_WIDTH__ 64
1170// AARCH64-FREEBSD:#define __PTRDIFF_TYPE__ long int
1171// AARCH64-FREEBSD:#define __PTRDIFF_WIDTH__ 64
1172// AARCH64-FREEBSD:#define __SCHAR_MAX__ 127
1173// AARCH64-FREEBSD:#define __SHRT_MAX__ 32767
1174// AARCH64-FREEBSD:#define __SIG_ATOMIC_MAX__ 2147483647
1175// AARCH64-FREEBSD:#define __SIG_ATOMIC_WIDTH__ 32
1176// AARCH64-FREEBSD:#define __SIZEOF_DOUBLE__ 8
1177// AARCH64-FREEBSD:#define __SIZEOF_FLOAT__ 4
1178// AARCH64-FREEBSD:#define __SIZEOF_INT128__ 16
1179// AARCH64-FREEBSD:#define __SIZEOF_INT__ 4
1180// AARCH64-FREEBSD:#define __SIZEOF_LONG_DOUBLE__ 16
1181// AARCH64-FREEBSD:#define __SIZEOF_LONG_LONG__ 8
1182// AARCH64-FREEBSD:#define __SIZEOF_LONG__ 8
1183// AARCH64-FREEBSD:#define __SIZEOF_POINTER__ 8
1184// AARCH64-FREEBSD:#define __SIZEOF_PTRDIFF_T__ 8
1185// AARCH64-FREEBSD:#define __SIZEOF_SHORT__ 2
1186// AARCH64-FREEBSD:#define __SIZEOF_SIZE_T__ 8
1187// AARCH64-FREEBSD:#define __SIZEOF_WCHAR_T__ 4
1188// AARCH64-FREEBSD:#define __SIZEOF_WINT_T__ 4
1189// AARCH64-FREEBSD:#define __SIZE_MAX__ 18446744073709551615UL
1190// AARCH64-FREEBSD:#define __SIZE_TYPE__ long unsigned int
1191// AARCH64-FREEBSD:#define __SIZE_WIDTH__ 64
James Y Knightc97efa42016-02-11 16:51:29 +00001192// AARCH64-FREEBSD:#define __UINT16_C_SUFFIX__
Ed Maste6a9eda52014-11-13 16:55:42 +00001193// AARCH64-FREEBSD:#define __UINT16_MAX__ 65535
1194// AARCH64-FREEBSD:#define __UINT16_TYPE__ unsigned short
1195// AARCH64-FREEBSD:#define __UINT32_C_SUFFIX__ U
1196// AARCH64-FREEBSD:#define __UINT32_MAX__ 4294967295U
1197// AARCH64-FREEBSD:#define __UINT32_TYPE__ unsigned int
1198// AARCH64-FREEBSD:#define __UINT64_C_SUFFIX__ UL
1199// AARCH64-FREEBSD:#define __UINT64_MAX__ 18446744073709551615UL
1200// AARCH64-FREEBSD:#define __UINT64_TYPE__ long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00001201// AARCH64-FREEBSD:#define __UINT8_C_SUFFIX__
Ed Maste6a9eda52014-11-13 16:55:42 +00001202// AARCH64-FREEBSD:#define __UINT8_MAX__ 255
1203// AARCH64-FREEBSD:#define __UINT8_TYPE__ unsigned char
1204// AARCH64-FREEBSD:#define __UINTMAX_C_SUFFIX__ UL
1205// AARCH64-FREEBSD:#define __UINTMAX_MAX__ 18446744073709551615UL
1206// AARCH64-FREEBSD:#define __UINTMAX_TYPE__ long unsigned int
1207// AARCH64-FREEBSD:#define __UINTMAX_WIDTH__ 64
1208// AARCH64-FREEBSD:#define __UINTPTR_MAX__ 18446744073709551615UL
1209// AARCH64-FREEBSD:#define __UINTPTR_TYPE__ long unsigned int
1210// AARCH64-FREEBSD:#define __UINTPTR_WIDTH__ 64
1211// AARCH64-FREEBSD:#define __UINT_FAST16_MAX__ 65535
1212// AARCH64-FREEBSD:#define __UINT_FAST16_TYPE__ unsigned short
1213// AARCH64-FREEBSD:#define __UINT_FAST32_MAX__ 4294967295U
1214// AARCH64-FREEBSD:#define __UINT_FAST32_TYPE__ unsigned int
1215// AARCH64-FREEBSD:#define __UINT_FAST64_MAX__ 18446744073709551615UL
1216// AARCH64-FREEBSD:#define __UINT_FAST64_TYPE__ long unsigned int
1217// AARCH64-FREEBSD:#define __UINT_FAST8_MAX__ 255
1218// AARCH64-FREEBSD:#define __UINT_FAST8_TYPE__ unsigned char
1219// AARCH64-FREEBSD:#define __UINT_LEAST16_MAX__ 65535
1220// AARCH64-FREEBSD:#define __UINT_LEAST16_TYPE__ unsigned short
1221// AARCH64-FREEBSD:#define __UINT_LEAST32_MAX__ 4294967295U
1222// AARCH64-FREEBSD:#define __UINT_LEAST32_TYPE__ unsigned int
1223// AARCH64-FREEBSD:#define __UINT_LEAST64_MAX__ 18446744073709551615UL
1224// AARCH64-FREEBSD:#define __UINT_LEAST64_TYPE__ long unsigned int
1225// AARCH64-FREEBSD:#define __UINT_LEAST8_MAX__ 255
1226// AARCH64-FREEBSD:#define __UINT_LEAST8_TYPE__ unsigned char
1227// AARCH64-FREEBSD:#define __USER_LABEL_PREFIX__
1228// AARCH64-FREEBSD:#define __WCHAR_MAX__ 4294967295U
1229// AARCH64-FREEBSD:#define __WCHAR_TYPE__ unsigned int
1230// AARCH64-FREEBSD:#define __WCHAR_UNSIGNED__ 1
1231// AARCH64-FREEBSD:#define __WCHAR_WIDTH__ 32
1232// AARCH64-FREEBSD:#define __WINT_TYPE__ int
1233// AARCH64-FREEBSD:#define __WINT_WIDTH__ 32
1234// AARCH64-FREEBSD:#define __aarch64__ 1
Christian Pirker227f5ed2014-03-24 13:57:21 +00001235
James Y Knightc97efa42016-02-11 16:51:29 +00001236// 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 +00001237//
1238// AARCH64-DARWIN: #define _LP64 1
Martin Storsjo42927ca2017-07-31 20:40:48 +00001239// AARCH64-DARWIN-NOT: #define __AARCH64EB__ 1
Tim Northovera6a19f12015-02-06 01:25:07 +00001240// AARCH64-DARWIN: #define __AARCH64EL__ 1
Martin Storsjo42927ca2017-07-31 20:40:48 +00001241// AARCH64-DARWIN-NOT: #define __AARCH_BIG_ENDIAN 1
Tim Northovera6a19f12015-02-06 01:25:07 +00001242// AARCH64-DARWIN: #define __ARM_64BIT_STATE 1
1243// AARCH64-DARWIN: #define __ARM_ARCH 8
1244// AARCH64-DARWIN: #define __ARM_ARCH_ISA_A64 1
Martin Storsjo42927ca2017-07-31 20:40:48 +00001245// AARCH64-DARWIN-NOT: #define __ARM_BIG_ENDIAN 1
Tim Northovera6a19f12015-02-06 01:25:07 +00001246// AARCH64-DARWIN: #define __BIGGEST_ALIGNMENT__ 8
1247// AARCH64-DARWIN: #define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
1248// AARCH64-DARWIN: #define __CHAR16_TYPE__ unsigned short
1249// AARCH64-DARWIN: #define __CHAR32_TYPE__ unsigned int
1250// AARCH64-DARWIN: #define __CHAR_BIT__ 8
1251// AARCH64-DARWIN: #define __DBL_DENORM_MIN__ 4.9406564584124654e-324
1252// AARCH64-DARWIN: #define __DBL_DIG__ 15
1253// AARCH64-DARWIN: #define __DBL_EPSILON__ 2.2204460492503131e-16
1254// AARCH64-DARWIN: #define __DBL_HAS_DENORM__ 1
1255// AARCH64-DARWIN: #define __DBL_HAS_INFINITY__ 1
1256// AARCH64-DARWIN: #define __DBL_HAS_QUIET_NAN__ 1
1257// AARCH64-DARWIN: #define __DBL_MANT_DIG__ 53
1258// AARCH64-DARWIN: #define __DBL_MAX_10_EXP__ 308
1259// AARCH64-DARWIN: #define __DBL_MAX_EXP__ 1024
1260// AARCH64-DARWIN: #define __DBL_MAX__ 1.7976931348623157e+308
1261// AARCH64-DARWIN: #define __DBL_MIN_10_EXP__ (-307)
1262// AARCH64-DARWIN: #define __DBL_MIN_EXP__ (-1021)
1263// AARCH64-DARWIN: #define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00001264// AARCH64-DARWIN: #define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Tim Northovera6a19f12015-02-06 01:25:07 +00001265// AARCH64-DARWIN: #define __FLT_DENORM_MIN__ 1.40129846e-45F
1266// AARCH64-DARWIN: #define __FLT_DIG__ 6
1267// AARCH64-DARWIN: #define __FLT_EPSILON__ 1.19209290e-7F
1268// AARCH64-DARWIN: #define __FLT_EVAL_METHOD__ 0
1269// AARCH64-DARWIN: #define __FLT_HAS_DENORM__ 1
1270// AARCH64-DARWIN: #define __FLT_HAS_INFINITY__ 1
1271// AARCH64-DARWIN: #define __FLT_HAS_QUIET_NAN__ 1
1272// AARCH64-DARWIN: #define __FLT_MANT_DIG__ 24
1273// AARCH64-DARWIN: #define __FLT_MAX_10_EXP__ 38
1274// AARCH64-DARWIN: #define __FLT_MAX_EXP__ 128
1275// AARCH64-DARWIN: #define __FLT_MAX__ 3.40282347e+38F
1276// AARCH64-DARWIN: #define __FLT_MIN_10_EXP__ (-37)
1277// AARCH64-DARWIN: #define __FLT_MIN_EXP__ (-125)
1278// AARCH64-DARWIN: #define __FLT_MIN__ 1.17549435e-38F
1279// AARCH64-DARWIN: #define __FLT_RADIX__ 2
James Y Knightc97efa42016-02-11 16:51:29 +00001280// AARCH64-DARWIN: #define __INT16_C_SUFFIX__
Tim Northovera6a19f12015-02-06 01:25:07 +00001281// AARCH64-DARWIN: #define __INT16_FMTd__ "hd"
1282// AARCH64-DARWIN: #define __INT16_FMTi__ "hi"
1283// AARCH64-DARWIN: #define __INT16_MAX__ 32767
1284// AARCH64-DARWIN: #define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +00001285// AARCH64-DARWIN: #define __INT32_C_SUFFIX__
Tim Northovera6a19f12015-02-06 01:25:07 +00001286// AARCH64-DARWIN: #define __INT32_FMTd__ "d"
1287// AARCH64-DARWIN: #define __INT32_FMTi__ "i"
1288// AARCH64-DARWIN: #define __INT32_MAX__ 2147483647
1289// AARCH64-DARWIN: #define __INT32_TYPE__ int
James Y Knightc97efa42016-02-11 16:51:29 +00001290// AARCH64-DARWIN: #define __INT64_C_SUFFIX__ LL
Tim Northovera6a19f12015-02-06 01:25:07 +00001291// AARCH64-DARWIN: #define __INT64_FMTd__ "lld"
1292// AARCH64-DARWIN: #define __INT64_FMTi__ "lli"
James Y Knightc97efa42016-02-11 16:51:29 +00001293// AARCH64-DARWIN: #define __INT64_MAX__ 9223372036854775807LL
Tim Northovera6a19f12015-02-06 01:25:07 +00001294// AARCH64-DARWIN: #define __INT64_TYPE__ long long int
James Y Knightc97efa42016-02-11 16:51:29 +00001295// AARCH64-DARWIN: #define __INT8_C_SUFFIX__
Tim Northovera6a19f12015-02-06 01:25:07 +00001296// AARCH64-DARWIN: #define __INT8_FMTd__ "hhd"
1297// AARCH64-DARWIN: #define __INT8_FMTi__ "hhi"
1298// AARCH64-DARWIN: #define __INT8_MAX__ 127
1299// AARCH64-DARWIN: #define __INT8_TYPE__ signed char
1300// AARCH64-DARWIN: #define __INTMAX_C_SUFFIX__ L
1301// AARCH64-DARWIN: #define __INTMAX_FMTd__ "ld"
1302// AARCH64-DARWIN: #define __INTMAX_FMTi__ "li"
1303// AARCH64-DARWIN: #define __INTMAX_MAX__ 9223372036854775807L
1304// AARCH64-DARWIN: #define __INTMAX_TYPE__ long int
1305// AARCH64-DARWIN: #define __INTMAX_WIDTH__ 64
1306// AARCH64-DARWIN: #define __INTPTR_FMTd__ "ld"
1307// AARCH64-DARWIN: #define __INTPTR_FMTi__ "li"
1308// AARCH64-DARWIN: #define __INTPTR_MAX__ 9223372036854775807L
1309// AARCH64-DARWIN: #define __INTPTR_TYPE__ long int
1310// AARCH64-DARWIN: #define __INTPTR_WIDTH__ 64
1311// AARCH64-DARWIN: #define __INT_FAST16_FMTd__ "hd"
1312// AARCH64-DARWIN: #define __INT_FAST16_FMTi__ "hi"
1313// AARCH64-DARWIN: #define __INT_FAST16_MAX__ 32767
1314// AARCH64-DARWIN: #define __INT_FAST16_TYPE__ short
1315// AARCH64-DARWIN: #define __INT_FAST32_FMTd__ "d"
1316// AARCH64-DARWIN: #define __INT_FAST32_FMTi__ "i"
1317// AARCH64-DARWIN: #define __INT_FAST32_MAX__ 2147483647
1318// AARCH64-DARWIN: #define __INT_FAST32_TYPE__ int
1319// AARCH64-DARWIN: #define __INT_FAST64_FMTd__ "ld"
1320// AARCH64-DARWIN: #define __INT_FAST64_FMTi__ "li"
1321// AARCH64-DARWIN: #define __INT_FAST64_MAX__ 9223372036854775807L
1322// AARCH64-DARWIN: #define __INT_FAST64_TYPE__ long int
1323// AARCH64-DARWIN: #define __INT_FAST8_FMTd__ "hhd"
1324// AARCH64-DARWIN: #define __INT_FAST8_FMTi__ "hhi"
1325// AARCH64-DARWIN: #define __INT_FAST8_MAX__ 127
1326// AARCH64-DARWIN: #define __INT_FAST8_TYPE__ signed char
1327// AARCH64-DARWIN: #define __INT_LEAST16_FMTd__ "hd"
1328// AARCH64-DARWIN: #define __INT_LEAST16_FMTi__ "hi"
1329// AARCH64-DARWIN: #define __INT_LEAST16_MAX__ 32767
1330// AARCH64-DARWIN: #define __INT_LEAST16_TYPE__ short
1331// AARCH64-DARWIN: #define __INT_LEAST32_FMTd__ "d"
1332// AARCH64-DARWIN: #define __INT_LEAST32_FMTi__ "i"
1333// AARCH64-DARWIN: #define __INT_LEAST32_MAX__ 2147483647
1334// AARCH64-DARWIN: #define __INT_LEAST32_TYPE__ int
1335// AARCH64-DARWIN: #define __INT_LEAST64_FMTd__ "ld"
1336// AARCH64-DARWIN: #define __INT_LEAST64_FMTi__ "li"
1337// AARCH64-DARWIN: #define __INT_LEAST64_MAX__ 9223372036854775807L
1338// AARCH64-DARWIN: #define __INT_LEAST64_TYPE__ long int
1339// AARCH64-DARWIN: #define __INT_LEAST8_FMTd__ "hhd"
1340// AARCH64-DARWIN: #define __INT_LEAST8_FMTi__ "hhi"
1341// AARCH64-DARWIN: #define __INT_LEAST8_MAX__ 127
1342// AARCH64-DARWIN: #define __INT_LEAST8_TYPE__ signed char
1343// AARCH64-DARWIN: #define __INT_MAX__ 2147483647
1344// AARCH64-DARWIN: #define __LDBL_DENORM_MIN__ 4.9406564584124654e-324L
1345// AARCH64-DARWIN: #define __LDBL_DIG__ 15
1346// AARCH64-DARWIN: #define __LDBL_EPSILON__ 2.2204460492503131e-16L
1347// AARCH64-DARWIN: #define __LDBL_HAS_DENORM__ 1
1348// AARCH64-DARWIN: #define __LDBL_HAS_INFINITY__ 1
1349// AARCH64-DARWIN: #define __LDBL_HAS_QUIET_NAN__ 1
1350// AARCH64-DARWIN: #define __LDBL_MANT_DIG__ 53
1351// AARCH64-DARWIN: #define __LDBL_MAX_10_EXP__ 308
1352// AARCH64-DARWIN: #define __LDBL_MAX_EXP__ 1024
1353// AARCH64-DARWIN: #define __LDBL_MAX__ 1.7976931348623157e+308L
1354// AARCH64-DARWIN: #define __LDBL_MIN_10_EXP__ (-307)
1355// AARCH64-DARWIN: #define __LDBL_MIN_EXP__ (-1021)
1356// AARCH64-DARWIN: #define __LDBL_MIN__ 2.2250738585072014e-308L
1357// AARCH64-DARWIN: #define __LONG_LONG_MAX__ 9223372036854775807LL
1358// AARCH64-DARWIN: #define __LONG_MAX__ 9223372036854775807L
1359// AARCH64-DARWIN: #define __LP64__ 1
1360// AARCH64-DARWIN: #define __POINTER_WIDTH__ 64
1361// AARCH64-DARWIN: #define __PTRDIFF_TYPE__ long int
1362// AARCH64-DARWIN: #define __PTRDIFF_WIDTH__ 64
1363// AARCH64-DARWIN: #define __SCHAR_MAX__ 127
1364// AARCH64-DARWIN: #define __SHRT_MAX__ 32767
1365// AARCH64-DARWIN: #define __SIG_ATOMIC_MAX__ 2147483647
1366// AARCH64-DARWIN: #define __SIG_ATOMIC_WIDTH__ 32
1367// AARCH64-DARWIN: #define __SIZEOF_DOUBLE__ 8
1368// AARCH64-DARWIN: #define __SIZEOF_FLOAT__ 4
1369// AARCH64-DARWIN: #define __SIZEOF_INT128__ 16
1370// AARCH64-DARWIN: #define __SIZEOF_INT__ 4
1371// AARCH64-DARWIN: #define __SIZEOF_LONG_DOUBLE__ 8
1372// AARCH64-DARWIN: #define __SIZEOF_LONG_LONG__ 8
1373// AARCH64-DARWIN: #define __SIZEOF_LONG__ 8
1374// AARCH64-DARWIN: #define __SIZEOF_POINTER__ 8
1375// AARCH64-DARWIN: #define __SIZEOF_PTRDIFF_T__ 8
1376// AARCH64-DARWIN: #define __SIZEOF_SHORT__ 2
1377// AARCH64-DARWIN: #define __SIZEOF_SIZE_T__ 8
1378// AARCH64-DARWIN: #define __SIZEOF_WCHAR_T__ 4
1379// AARCH64-DARWIN: #define __SIZEOF_WINT_T__ 4
1380// AARCH64-DARWIN: #define __SIZE_MAX__ 18446744073709551615UL
1381// AARCH64-DARWIN: #define __SIZE_TYPE__ long unsigned int
1382// AARCH64-DARWIN: #define __SIZE_WIDTH__ 64
James Y Knightc97efa42016-02-11 16:51:29 +00001383// AARCH64-DARWIN: #define __UINT16_C_SUFFIX__
Tim Northovera6a19f12015-02-06 01:25:07 +00001384// AARCH64-DARWIN: #define __UINT16_MAX__ 65535
1385// AARCH64-DARWIN: #define __UINT16_TYPE__ unsigned short
1386// AARCH64-DARWIN: #define __UINT32_C_SUFFIX__ U
1387// AARCH64-DARWIN: #define __UINT32_MAX__ 4294967295U
1388// AARCH64-DARWIN: #define __UINT32_TYPE__ unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00001389// AARCH64-DARWIN: #define __UINT64_C_SUFFIX__ ULL
1390// AARCH64-DARWIN: #define __UINT64_MAX__ 18446744073709551615ULL
Tim Northovera6a19f12015-02-06 01:25:07 +00001391// AARCH64-DARWIN: #define __UINT64_TYPE__ long long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00001392// AARCH64-DARWIN: #define __UINT8_C_SUFFIX__
Tim Northovera6a19f12015-02-06 01:25:07 +00001393// AARCH64-DARWIN: #define __UINT8_MAX__ 255
1394// AARCH64-DARWIN: #define __UINT8_TYPE__ unsigned char
1395// AARCH64-DARWIN: #define __UINTMAX_C_SUFFIX__ UL
1396// AARCH64-DARWIN: #define __UINTMAX_MAX__ 18446744073709551615UL
1397// AARCH64-DARWIN: #define __UINTMAX_TYPE__ long unsigned int
1398// AARCH64-DARWIN: #define __UINTMAX_WIDTH__ 64
1399// AARCH64-DARWIN: #define __UINTPTR_MAX__ 18446744073709551615UL
1400// AARCH64-DARWIN: #define __UINTPTR_TYPE__ long unsigned int
1401// AARCH64-DARWIN: #define __UINTPTR_WIDTH__ 64
1402// AARCH64-DARWIN: #define __UINT_FAST16_MAX__ 65535
1403// AARCH64-DARWIN: #define __UINT_FAST16_TYPE__ unsigned short
1404// AARCH64-DARWIN: #define __UINT_FAST32_MAX__ 4294967295U
1405// AARCH64-DARWIN: #define __UINT_FAST32_TYPE__ unsigned int
1406// AARCH64-DARWIN: #define __UINT_FAST64_MAX__ 18446744073709551615UL
1407// AARCH64-DARWIN: #define __UINT_FAST64_TYPE__ long unsigned int
1408// AARCH64-DARWIN: #define __UINT_FAST8_MAX__ 255
1409// AARCH64-DARWIN: #define __UINT_FAST8_TYPE__ unsigned char
1410// AARCH64-DARWIN: #define __UINT_LEAST16_MAX__ 65535
1411// AARCH64-DARWIN: #define __UINT_LEAST16_TYPE__ unsigned short
1412// AARCH64-DARWIN: #define __UINT_LEAST32_MAX__ 4294967295U
1413// AARCH64-DARWIN: #define __UINT_LEAST32_TYPE__ unsigned int
1414// AARCH64-DARWIN: #define __UINT_LEAST64_MAX__ 18446744073709551615UL
1415// AARCH64-DARWIN: #define __UINT_LEAST64_TYPE__ long unsigned int
1416// AARCH64-DARWIN: #define __UINT_LEAST8_MAX__ 255
1417// AARCH64-DARWIN: #define __UINT_LEAST8_TYPE__ unsigned char
1418// AARCH64-DARWIN: #define __USER_LABEL_PREFIX__ _
1419// AARCH64-DARWIN: #define __WCHAR_MAX__ 2147483647
1420// AARCH64-DARWIN: #define __WCHAR_TYPE__ int
1421// AARCH64-DARWIN-NOT: #define __WCHAR_UNSIGNED__
1422// AARCH64-DARWIN: #define __WCHAR_WIDTH__ 32
1423// AARCH64-DARWIN: #define __WINT_TYPE__ int
1424// AARCH64-DARWIN: #define __WINT_WIDTH__ 32
1425// AARCH64-DARWIN: #define __aarch64__ 1
1426
Martin Storsjo588a3e52017-07-31 20:40:53 +00001427// RUN: %clang_cc1 -E -dM -ffreestanding -triple=aarch64-windows-msvc < /dev/null | FileCheck -match-full-lines -check-prefix AARCH64-MSVC %s
1428//
1429// AARCH64-MSVC: #define _INTEGRAL_MAX_BITS 64
1430// AARCH64-MSVC-NOT: #define _LP64 1
1431// AARCH64-MSVC: #define _M_ARM64 1
1432// AARCH64-MSVC: #define _WIN32 1
1433// AARCH64-MSVC: #define _WIN64 1
1434// AARCH64-MSVC: #define __AARCH64EL__ 1
1435// AARCH64-MSVC: #define __ARM_64BIT_STATE 1
1436// AARCH64-MSVC: #define __ARM_ACLE 200
1437// AARCH64-MSVC: #define __ARM_ALIGN_MAX_STACK_PWR 4
1438// AARCH64-MSVC: #define __ARM_ARCH 8
1439// AARCH64-MSVC: #define __ARM_ARCH_ISA_A64 1
1440// AARCH64-MSVC: #define __ARM_ARCH_PROFILE 'A'
1441// AARCH64-MSVC: #define __ARM_FEATURE_CLZ 1
1442// AARCH64-MSVC: #define __ARM_FEATURE_DIRECTED_ROUNDING 1
1443// AARCH64-MSVC: #define __ARM_FEATURE_DIV 1
1444// AARCH64-MSVC: #define __ARM_FEATURE_FMA 1
1445// AARCH64-MSVC: #define __ARM_FEATURE_IDIV 1
1446// AARCH64-MSVC: #define __ARM_FEATURE_LDREX 0xF
1447// AARCH64-MSVC: #define __ARM_FEATURE_NUMERIC_MAXMIN 1
1448// AARCH64-MSVC: #define __ARM_FEATURE_UNALIGNED 1
1449// AARCH64-MSVC: #define __ARM_FP 0xE
1450// AARCH64-MSVC: #define __ARM_FP16_ARGS 1
1451// AARCH64-MSVC: #define __ARM_FP16_FORMAT_IEEE 1
1452// AARCH64-MSVC: #define __ARM_PCS_AAPCS64 1
1453// AARCH64-MSVC: #define __ARM_SIZEOF_MINIMAL_ENUM 4
1454// AARCH64-MSVC: #define __ARM_SIZEOF_WCHAR_T 4
1455// AARCH64-MSVC: #define __BIGGEST_ALIGNMENT__ 16
1456// AARCH64-MSVC: #define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
1457// AARCH64-MSVC: #define __CHAR16_TYPE__ unsigned short
1458// AARCH64-MSVC: #define __CHAR32_TYPE__ unsigned int
1459// AARCH64-MSVC: #define __CHAR_BIT__ 8
1460// AARCH64-MSVC: #define __CONSTANT_CFSTRINGS__ 1
1461// AARCH64-MSVC: #define __DBL_DECIMAL_DIG__ 17
1462// AARCH64-MSVC: #define __DBL_DENORM_MIN__ 4.9406564584124654e-324
1463// AARCH64-MSVC: #define __DBL_DIG__ 15
1464// AARCH64-MSVC: #define __DBL_EPSILON__ 2.2204460492503131e-16
1465// AARCH64-MSVC: #define __DBL_HAS_DENORM__ 1
1466// AARCH64-MSVC: #define __DBL_HAS_INFINITY__ 1
1467// AARCH64-MSVC: #define __DBL_HAS_QUIET_NAN__ 1
1468// AARCH64-MSVC: #define __DBL_MANT_DIG__ 53
1469// AARCH64-MSVC: #define __DBL_MAX_10_EXP__ 308
1470// AARCH64-MSVC: #define __DBL_MAX_EXP__ 1024
1471// AARCH64-MSVC: #define __DBL_MAX__ 1.7976931348623157e+308
1472// AARCH64-MSVC: #define __DBL_MIN_10_EXP__ (-307)
1473// AARCH64-MSVC: #define __DBL_MIN_EXP__ (-1021)
1474// AARCH64-MSVC: #define __DBL_MIN__ 2.2250738585072014e-308
1475// AARCH64-MSVC: #define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
1476// AARCH64-MSVC: #define __FINITE_MATH_ONLY__ 0
1477// AARCH64-MSVC: #define __FLT_DECIMAL_DIG__ 9
1478// AARCH64-MSVC: #define __FLT_DENORM_MIN__ 1.40129846e-45F
1479// AARCH64-MSVC: #define __FLT_DIG__ 6
1480// AARCH64-MSVC: #define __FLT_EPSILON__ 1.19209290e-7F
1481// AARCH64-MSVC: #define __FLT_EVAL_METHOD__ 0
1482// AARCH64-MSVC: #define __FLT_HAS_DENORM__ 1
1483// AARCH64-MSVC: #define __FLT_HAS_INFINITY__ 1
1484// AARCH64-MSVC: #define __FLT_HAS_QUIET_NAN__ 1
1485// AARCH64-MSVC: #define __FLT_MANT_DIG__ 24
1486// AARCH64-MSVC: #define __FLT_MAX_10_EXP__ 38
1487// AARCH64-MSVC: #define __FLT_MAX_EXP__ 128
1488// AARCH64-MSVC: #define __FLT_MAX__ 3.40282347e+38F
1489// AARCH64-MSVC: #define __FLT_MIN_10_EXP__ (-37)
1490// AARCH64-MSVC: #define __FLT_MIN_EXP__ (-125)
1491// AARCH64-MSVC: #define __FLT_MIN__ 1.17549435e-38F
1492// AARCH64-MSVC: #define __FLT_RADIX__ 2
1493// AARCH64-MSVC: #define __INT_MAX__ 2147483647
1494// AARCH64-MSVC: #define __LDBL_DECIMAL_DIG__ 17
1495// AARCH64-MSVC: #define __LDBL_DENORM_MIN__ 4.9406564584124654e-324L
1496// AARCH64-MSVC: #define __LDBL_DIG__ 15
1497// AARCH64-MSVC: #define __LDBL_EPSILON__ 2.2204460492503131e-16L
1498// AARCH64-MSVC: #define __LDBL_HAS_DENORM__ 1
1499// AARCH64-MSVC: #define __LDBL_HAS_INFINITY__ 1
1500// AARCH64-MSVC: #define __LDBL_HAS_QUIET_NAN__ 1
1501// AARCH64-MSVC: #define __LDBL_MANT_DIG__ 53
1502// AARCH64-MSVC: #define __LDBL_MAX_10_EXP__ 308
1503// AARCH64-MSVC: #define __LDBL_MAX_EXP__ 1024
1504// AARCH64-MSVC: #define __LDBL_MAX__ 1.7976931348623157e+308L
1505// AARCH64-MSVC: #define __LDBL_MIN_10_EXP__ (-307)
1506// AARCH64-MSVC: #define __LDBL_MIN_EXP__ (-1021)
1507// AARCH64-MSVC: #define __LDBL_MIN__ 2.2250738585072014e-308L
1508// AARCH64-MSVC: #define __LITTLE_ENDIAN__ 1
1509// AARCH64-MSVC: #define __LONG_LONG_MAX__ 9223372036854775807LL
1510// AARCH64-MSVC: #define __LONG_MAX__ 2147483647L
1511// AARCH64-MSVC-NOT: #define __LP64__ 1
1512// AARCH64-MSVC: #define __NO_INLINE__ 1
1513// AARCH64-MSVC: #define __OBJC_BOOL_IS_BOOL 0
1514// AARCH64-MSVC: #define __ORDER_BIG_ENDIAN__ 4321
1515// AARCH64-MSVC: #define __ORDER_LITTLE_ENDIAN__ 1234
1516// AARCH64-MSVC: #define __ORDER_PDP_ENDIAN__ 3412
1517// AARCH64-MSVC: #define __POINTER_WIDTH__ 64
1518// AARCH64-MSVC: #define __PRAGMA_REDEFINE_EXTNAME 1
1519// AARCH64-MSVC: #define __SCHAR_MAX__ 127
1520// AARCH64-MSVC: #define __SHRT_MAX__ 32767
1521// AARCH64-MSVC: #define __SIG_ATOMIC_MAX__ 2147483647
1522// AARCH64-MSVC: #define __SIG_ATOMIC_WIDTH__ 32
1523// AARCH64-MSVC: #define __SIZEOF_DOUBLE__ 8
1524// AARCH64-MSVC: #define __SIZEOF_FLOAT__ 4
1525// AARCH64-MSVC: #define __SIZEOF_INT128__ 16
1526// AARCH64-MSVC: #define __SIZEOF_INT__ 4
1527// AARCH64-MSVC: #define __SIZEOF_LONG_DOUBLE__ 8
1528// AARCH64-MSVC: #define __SIZEOF_LONG_LONG__ 8
1529// AARCH64-MSVC: #define __SIZEOF_LONG__ 4
1530// AARCH64-MSVC: #define __SIZEOF_POINTER__ 8
1531// AARCH64-MSVC: #define __SIZEOF_PTRDIFF_T__ 8
1532// AARCH64-MSVC: #define __SIZEOF_SHORT__ 2
1533// AARCH64-MSVC: #define __SIZEOF_SIZE_T__ 8
1534// AARCH64-MSVC: #define __SIZEOF_WCHAR_T__ 2
1535// AARCH64-MSVC: #define __SIZEOF_WINT_T__ 4
1536// AARCH64-MSVC: #define __SIZE_MAX__ 18446744073709551615ULL
1537// AARCH64-MSVC: #define __SIZE_TYPE__ long long unsigned int
1538// AARCH64-MSVC: #define __SIZE_WIDTH__ 64
1539// AARCH64-MSVC: #define __STDC_HOSTED__ 0
1540// AARCH64-MSVC: #define __STDC_UTF_16__ 1
1541// AARCH64-MSVC: #define __STDC_UTF_32__ 1
1542// AARCH64-MSVC: #define __STDC_VERSION__ 201112L
1543// AARCH64-MSVC: #define __STDC__ 1
1544// AARCH64-MSVC: #define __UINT16_C_SUFFIX__
1545// AARCH64-MSVC: #define __UINT16_MAX__ 65535
1546// AARCH64-MSVC: #define __UINT16_TYPE__ unsigned short
1547// AARCH64-MSVC: #define __UINT32_C_SUFFIX__ U
1548// AARCH64-MSVC: #define __UINT32_MAX__ 4294967295U
1549// AARCH64-MSVC: #define __UINT32_TYPE__ unsigned int
1550// AARCH64-MSVC: #define __UINT64_C_SUFFIX__ ULL
1551// AARCH64-MSVC: #define __UINT64_MAX__ 18446744073709551615ULL
1552// AARCH64-MSVC: #define __UINT64_TYPE__ long long unsigned int
1553// AARCH64-MSVC: #define __UINT8_C_SUFFIX__
1554// AARCH64-MSVC: #define __UINT8_MAX__ 255
1555// AARCH64-MSVC: #define __UINT8_TYPE__ unsigned char
1556// AARCH64-MSVC: #define __UINTMAX_C_SUFFIX__ ULL
1557// AARCH64-MSVC: #define __UINTMAX_MAX__ 18446744073709551615ULL
1558// AARCH64-MSVC: #define __UINTMAX_TYPE__ long long unsigned int
1559// AARCH64-MSVC: #define __UINTMAX_WIDTH__ 64
1560// AARCH64-MSVC: #define __UINTPTR_MAX__ 18446744073709551615ULL
1561// AARCH64-MSVC: #define __UINTPTR_TYPE__ long long unsigned int
1562// AARCH64-MSVC: #define __UINTPTR_WIDTH__ 64
1563// AARCH64-MSVC: #define __UINT_FAST16_MAX__ 65535
1564// AARCH64-MSVC: #define __UINT_FAST16_TYPE__ unsigned short
1565// AARCH64-MSVC: #define __UINT_FAST32_MAX__ 4294967295U
1566// AARCH64-MSVC: #define __UINT_FAST32_TYPE__ unsigned int
1567// AARCH64-MSVC: #define __UINT_FAST64_MAX__ 18446744073709551615ULL
1568// AARCH64-MSVC: #define __UINT_FAST64_TYPE__ long long unsigned int
1569// AARCH64-MSVC: #define __UINT_FAST8_MAX__ 255
1570// AARCH64-MSVC: #define __UINT_FAST8_TYPE__ unsigned char
1571// AARCH64-MSVC: #define __UINT_LEAST16_MAX__ 65535
1572// AARCH64-MSVC: #define __UINT_LEAST16_TYPE__ unsigned short
1573// AARCH64-MSVC: #define __UINT_LEAST32_MAX__ 4294967295U
1574// AARCH64-MSVC: #define __UINT_LEAST32_TYPE__ unsigned int
1575// AARCH64-MSVC: #define __UINT_LEAST64_MAX__ 18446744073709551615ULL
1576// AARCH64-MSVC: #define __UINT_LEAST64_TYPE__ long long unsigned int
1577// AARCH64-MSVC: #define __UINT_LEAST8_MAX__ 255
1578// AARCH64-MSVC: #define __UINT_LEAST8_TYPE__ unsigned char
1579// AARCH64-MSVC: #define __USER_LABEL_PREFIX__
1580// AARCH64-MSVC: #define __WCHAR_MAX__ 65535
1581// AARCH64-MSVC: #define __WCHAR_TYPE__ unsigned short
1582// AARCH64-MSVC: #define __WCHAR_UNSIGNED__ 1
1583// AARCH64-MSVC: #define __WCHAR_WIDTH__ 16
1584// AARCH64-MSVC: #define __WINT_TYPE__ int
1585// AARCH64-MSVC: #define __WINT_WIDTH__ 32
1586// AARCH64-MSVC: #define __aarch64__ 1
1587
James Y Knightc97efa42016-02-11 16:51:29 +00001588// RUN: %clang_cc1 -E -dM -ffreestanding -triple=arm-none-none < /dev/null | FileCheck -match-full-lines -check-prefix ARM %s
Richard Smith59139022016-09-30 22:41:36 +00001589// RUN: %clang_cc1 -x c++ -E -dM -ffreestanding -triple=arm-none-none < /dev/null | FileCheck -match-full-lines -check-prefix ARM -check-prefix ARM-CXX %s
Chris Lattnere963d092009-10-29 04:55:36 +00001590//
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00001591// ARM-NOT:#define _LP64
Chris Lattnere963d092009-10-29 04:55:36 +00001592// ARM:#define __APCS_32__ 1
Christian Pirkerf01cd6f2014-03-28 14:40:46 +00001593// ARM-NOT:#define __ARMEB__ 1
Chris Lattnere963d092009-10-29 04:55:36 +00001594// ARM:#define __ARMEL__ 1
Renato Goline84b0002015-10-08 16:43:26 +00001595// ARM:#define __ARM_ARCH_4T__ 1
Christian Pirkerf01cd6f2014-03-28 14:40:46 +00001596// ARM-NOT:#define __ARM_BIG_ENDIAN 1
Tim Northovera6a19f12015-02-06 01:25:07 +00001597// ARM:#define __BIGGEST_ALIGNMENT__ 8
Dylan Noblesmith673728f2012-07-27 18:34:31 +00001598// ARM:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
Dan Gohman04f87202010-05-28 00:27:15 +00001599// ARM:#define __CHAR16_TYPE__ unsigned short
1600// ARM:#define __CHAR32_TYPE__ unsigned int
Chris Lattnere963d092009-10-29 04:55:36 +00001601// ARM:#define __CHAR_BIT__ 8
1602// ARM:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
1603// ARM:#define __DBL_DIG__ 15
1604// ARM:#define __DBL_EPSILON__ 2.2204460492503131e-16
1605// ARM:#define __DBL_HAS_DENORM__ 1
1606// ARM:#define __DBL_HAS_INFINITY__ 1
1607// ARM:#define __DBL_HAS_QUIET_NAN__ 1
1608// ARM:#define __DBL_MANT_DIG__ 53
1609// ARM:#define __DBL_MAX_10_EXP__ 308
1610// ARM:#define __DBL_MAX_EXP__ 1024
1611// ARM:#define __DBL_MAX__ 1.7976931348623157e+308
1612// ARM:#define __DBL_MIN_10_EXP__ (-307)
1613// ARM:#define __DBL_MIN_EXP__ (-1021)
1614// ARM:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00001615// ARM:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Chris Lattnere963d092009-10-29 04:55:36 +00001616// ARM:#define __FLT_DENORM_MIN__ 1.40129846e-45F
1617// ARM:#define __FLT_DIG__ 6
1618// ARM:#define __FLT_EPSILON__ 1.19209290e-7F
1619// ARM:#define __FLT_EVAL_METHOD__ 0
1620// ARM:#define __FLT_HAS_DENORM__ 1
1621// ARM:#define __FLT_HAS_INFINITY__ 1
1622// ARM:#define __FLT_HAS_QUIET_NAN__ 1
1623// ARM:#define __FLT_MANT_DIG__ 24
1624// ARM:#define __FLT_MAX_10_EXP__ 38
1625// ARM:#define __FLT_MAX_EXP__ 128
1626// ARM:#define __FLT_MAX__ 3.40282347e+38F
1627// ARM:#define __FLT_MIN_10_EXP__ (-37)
1628// ARM:#define __FLT_MIN_EXP__ (-125)
1629// ARM:#define __FLT_MIN__ 1.17549435e-38F
1630// ARM:#define __FLT_RADIX__ 2
James Y Knightc97efa42016-02-11 16:51:29 +00001631// ARM:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001632// ARM:#define __INT16_FMTd__ "hd"
1633// ARM:#define __INT16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00001634// ARM:#define __INT16_MAX__ 32767
Chris Lattnere963d092009-10-29 04:55:36 +00001635// ARM:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +00001636// ARM:#define __INT32_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001637// ARM:#define __INT32_FMTd__ "d"
1638// ARM:#define __INT32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00001639// ARM:#define __INT32_MAX__ 2147483647
Chris Lattnere963d092009-10-29 04:55:36 +00001640// ARM:#define __INT32_TYPE__ int
Ken Dyck2dc8d5f2009-11-16 16:36:33 +00001641// ARM:#define __INT64_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001642// ARM:#define __INT64_FMTd__ "lld"
1643// ARM:#define __INT64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00001644// ARM:#define __INT64_MAX__ 9223372036854775807LL
Chris Lattnere963d092009-10-29 04:55:36 +00001645// ARM:#define __INT64_TYPE__ long long int
James Y Knightc97efa42016-02-11 16:51:29 +00001646// ARM:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001647// ARM:#define __INT8_FMTd__ "hhd"
1648// ARM:#define __INT8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00001649// ARM:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00001650// ARM:#define __INT8_TYPE__ signed char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00001651// ARM:#define __INTMAX_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001652// ARM:#define __INTMAX_FMTd__ "lld"
1653// ARM:#define __INTMAX_FMTi__ "lli"
Chris Lattnere963d092009-10-29 04:55:36 +00001654// ARM:#define __INTMAX_MAX__ 9223372036854775807LL
Ken Dyck9b25f782009-11-19 13:18:59 +00001655// ARM:#define __INTMAX_TYPE__ long long int
Ken Dyckc0c98292009-11-18 13:52:57 +00001656// ARM:#define __INTMAX_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001657// ARM:#define __INTPTR_FMTd__ "ld"
1658// ARM:#define __INTPTR_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00001659// ARM:#define __INTPTR_MAX__ 2147483647L
Ken Dyck9b25f782009-11-19 13:18:59 +00001660// ARM:#define __INTPTR_TYPE__ long int
Ken Dyck24cfcf12009-11-18 20:05:48 +00001661// ARM:#define __INTPTR_WIDTH__ 32
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001662// ARM:#define __INT_FAST16_FMTd__ "hd"
1663// ARM:#define __INT_FAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00001664// ARM:#define __INT_FAST16_MAX__ 32767
1665// ARM:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001666// ARM:#define __INT_FAST32_FMTd__ "d"
1667// ARM:#define __INT_FAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00001668// ARM:#define __INT_FAST32_MAX__ 2147483647
1669// ARM:#define __INT_FAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001670// ARM:#define __INT_FAST64_FMTd__ "lld"
1671// ARM:#define __INT_FAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00001672// ARM:#define __INT_FAST64_MAX__ 9223372036854775807LL
1673// ARM:#define __INT_FAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001674// ARM:#define __INT_FAST8_FMTd__ "hhd"
1675// ARM:#define __INT_FAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00001676// ARM:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00001677// ARM:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001678// ARM:#define __INT_LEAST16_FMTd__ "hd"
1679// ARM:#define __INT_LEAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00001680// ARM:#define __INT_LEAST16_MAX__ 32767
1681// ARM:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001682// ARM:#define __INT_LEAST32_FMTd__ "d"
1683// ARM:#define __INT_LEAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00001684// ARM:#define __INT_LEAST32_MAX__ 2147483647
1685// ARM:#define __INT_LEAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001686// ARM:#define __INT_LEAST64_FMTd__ "lld"
1687// ARM:#define __INT_LEAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00001688// ARM:#define __INT_LEAST64_MAX__ 9223372036854775807LL
1689// ARM:#define __INT_LEAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001690// ARM:#define __INT_LEAST8_FMTd__ "hhd"
1691// ARM:#define __INT_LEAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00001692// ARM:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00001693// ARM:#define __INT_LEAST8_TYPE__ signed char
Chris Lattnere963d092009-10-29 04:55:36 +00001694// ARM:#define __INT_MAX__ 2147483647
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00001695// ARM:#define __LDBL_DENORM_MIN__ 4.9406564584124654e-324L
Chris Lattnere963d092009-10-29 04:55:36 +00001696// ARM:#define __LDBL_DIG__ 15
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00001697// ARM:#define __LDBL_EPSILON__ 2.2204460492503131e-16L
Chris Lattnere963d092009-10-29 04:55:36 +00001698// ARM:#define __LDBL_HAS_DENORM__ 1
1699// ARM:#define __LDBL_HAS_INFINITY__ 1
1700// ARM:#define __LDBL_HAS_QUIET_NAN__ 1
1701// ARM:#define __LDBL_MANT_DIG__ 53
1702// ARM:#define __LDBL_MAX_10_EXP__ 308
1703// ARM:#define __LDBL_MAX_EXP__ 1024
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00001704// ARM:#define __LDBL_MAX__ 1.7976931348623157e+308L
Chris Lattnere963d092009-10-29 04:55:36 +00001705// ARM:#define __LDBL_MIN_10_EXP__ (-307)
1706// ARM:#define __LDBL_MIN_EXP__ (-1021)
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00001707// ARM:#define __LDBL_MIN__ 2.2250738585072014e-308L
Chris Lattnere963d092009-10-29 04:55:36 +00001708// ARM:#define __LITTLE_ENDIAN__ 1
1709// ARM:#define __LONG_LONG_MAX__ 9223372036854775807LL
1710// ARM:#define __LONG_MAX__ 2147483647L
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00001711// ARM-NOT:#define __LP64__
Chris Lattnere963d092009-10-29 04:55:36 +00001712// ARM:#define __POINTER_WIDTH__ 32
Ken Dyck9b25f782009-11-19 13:18:59 +00001713// ARM:#define __PTRDIFF_TYPE__ int
Ken Dyck056efe02009-11-19 12:21:52 +00001714// ARM:#define __PTRDIFF_WIDTH__ 32
Daniel Dunbaracde99e2009-12-18 18:42:37 +00001715// ARM:#define __REGISTER_PREFIX__
Chris Lattnere963d092009-10-29 04:55:36 +00001716// ARM:#define __SCHAR_MAX__ 127
1717// ARM:#define __SHRT_MAX__ 32767
Joerg Sonnenbergerb3a49692014-07-17 18:31:20 +00001718// ARM:#define __SIG_ATOMIC_MAX__ 2147483647
Ken Dyckadc85112009-11-22 15:41:04 +00001719// ARM:#define __SIG_ATOMIC_WIDTH__ 32
Dan Gohman04f87202010-05-28 00:27:15 +00001720// ARM:#define __SIZEOF_DOUBLE__ 8
1721// ARM:#define __SIZEOF_FLOAT__ 4
1722// ARM:#define __SIZEOF_INT__ 4
1723// ARM:#define __SIZEOF_LONG_DOUBLE__ 8
1724// ARM:#define __SIZEOF_LONG_LONG__ 8
1725// ARM:#define __SIZEOF_LONG__ 4
1726// ARM:#define __SIZEOF_POINTER__ 4
1727// ARM:#define __SIZEOF_PTRDIFF_T__ 4
1728// ARM:#define __SIZEOF_SHORT__ 2
1729// ARM:#define __SIZEOF_SIZE_T__ 4
1730// ARM:#define __SIZEOF_WCHAR_T__ 4
1731// ARM:#define __SIZEOF_WINT_T__ 4
Evgeniy Stepanovc3c725a2013-03-28 08:36:54 +00001732// ARM:#define __SIZE_MAX__ 4294967295U
Chris Lattnere963d092009-10-29 04:55:36 +00001733// ARM:#define __SIZE_TYPE__ unsigned int
Ken Dyck57512862009-11-19 13:42:09 +00001734// ARM:#define __SIZE_WIDTH__ 32
Richard Smith59139022016-09-30 22:41:36 +00001735// ARM-CXX:#define __STDCPP_DEFAULT_NEW_ALIGNMENT__ 8U
James Y Knightc97efa42016-02-11 16:51:29 +00001736// ARM:#define __UINT16_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00001737// ARM:#define __UINT16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00001738// ARM:#define __UINT16_TYPE__ unsigned short
1739// ARM:#define __UINT32_C_SUFFIX__ U
1740// ARM:#define __UINT32_MAX__ 4294967295U
1741// ARM:#define __UINT32_TYPE__ unsigned int
1742// ARM:#define __UINT64_C_SUFFIX__ ULL
1743// ARM:#define __UINT64_MAX__ 18446744073709551615ULL
1744// ARM:#define __UINT64_TYPE__ long long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00001745// ARM:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00001746// ARM:#define __UINT8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00001747// ARM:#define __UINT8_TYPE__ unsigned char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00001748// ARM:#define __UINTMAX_C_SUFFIX__ ULL
JF Bastienab8d0a02014-06-25 01:31:33 +00001749// ARM:#define __UINTMAX_MAX__ 18446744073709551615ULL
Ken Dyck9b25f782009-11-19 13:18:59 +00001750// ARM:#define __UINTMAX_TYPE__ long long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00001751// ARM:#define __UINTMAX_WIDTH__ 64
James Y Knightc97efa42016-02-11 16:51:29 +00001752// ARM:#define __UINTPTR_MAX__ 4294967295UL
Joerg Sonnenberger3809a7a2014-07-14 20:40:56 +00001753// ARM:#define __UINTPTR_TYPE__ long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00001754// ARM:#define __UINTPTR_WIDTH__ 32
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00001755// ARM:#define __UINT_FAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00001756// ARM:#define __UINT_FAST16_TYPE__ unsigned short
1757// ARM:#define __UINT_FAST32_MAX__ 4294967295U
1758// ARM:#define __UINT_FAST32_TYPE__ unsigned int
1759// ARM:#define __UINT_FAST64_MAX__ 18446744073709551615ULL
1760// ARM:#define __UINT_FAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00001761// ARM:#define __UINT_FAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00001762// ARM:#define __UINT_FAST8_TYPE__ unsigned char
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00001763// ARM:#define __UINT_LEAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00001764// ARM:#define __UINT_LEAST16_TYPE__ unsigned short
1765// ARM:#define __UINT_LEAST32_MAX__ 4294967295U
1766// ARM:#define __UINT_LEAST32_TYPE__ unsigned int
1767// ARM:#define __UINT_LEAST64_MAX__ 18446744073709551615ULL
1768// ARM:#define __UINT_LEAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00001769// ARM:#define __UINT_LEAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00001770// ARM:#define __UINT_LEAST8_TYPE__ unsigned char
James Y Knightb214cbc2016-03-04 19:00:41 +00001771// ARM:#define __USER_LABEL_PREFIX__
James Molloyc445be42011-11-23 13:35:08 +00001772// ARM:#define __WCHAR_MAX__ 4294967295U
1773// ARM:#define __WCHAR_TYPE__ unsigned int
Ken Dyck0138b9e2009-11-19 15:47:58 +00001774// ARM:#define __WCHAR_WIDTH__ 32
Chris Lattnere963d092009-10-29 04:55:36 +00001775// ARM:#define __WINT_TYPE__ int
Ken Dycka1f677c2009-11-19 14:16:57 +00001776// ARM:#define __WINT_WIDTH__ 32
Chris Lattnere963d092009-10-29 04:55:36 +00001777// ARM:#define __arm 1
1778// ARM:#define __arm__ 1
Anton Korobeynikove6f74092012-09-08 08:45:10 +00001779
James Y Knightc97efa42016-02-11 16:51:29 +00001780// 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 +00001781//
1782// ARM-BE-NOT:#define _LP64
1783// ARM-BE:#define __APCS_32__ 1
1784// ARM-BE:#define __ARMEB__ 1
1785// ARM-BE-NOT:#define __ARMEL__ 1
Renato Goline84b0002015-10-08 16:43:26 +00001786// ARM-BE:#define __ARM_ARCH_4T__ 1
Christian Pirkerf01cd6f2014-03-28 14:40:46 +00001787// ARM-BE:#define __ARM_BIG_ENDIAN 1
Tim Northovera6a19f12015-02-06 01:25:07 +00001788// ARM-BE:#define __BIGGEST_ALIGNMENT__ 8
Christian Pirkerf01cd6f2014-03-28 14:40:46 +00001789// ARM-BE:#define __BIG_ENDIAN__ 1
1790// ARM-BE:#define __BYTE_ORDER__ __ORDER_BIG_ENDIAN__
1791// ARM-BE:#define __CHAR16_TYPE__ unsigned short
1792// ARM-BE:#define __CHAR32_TYPE__ unsigned int
1793// ARM-BE:#define __CHAR_BIT__ 8
1794// ARM-BE:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
1795// ARM-BE:#define __DBL_DIG__ 15
1796// ARM-BE:#define __DBL_EPSILON__ 2.2204460492503131e-16
1797// ARM-BE:#define __DBL_HAS_DENORM__ 1
1798// ARM-BE:#define __DBL_HAS_INFINITY__ 1
1799// ARM-BE:#define __DBL_HAS_QUIET_NAN__ 1
1800// ARM-BE:#define __DBL_MANT_DIG__ 53
1801// ARM-BE:#define __DBL_MAX_10_EXP__ 308
1802// ARM-BE:#define __DBL_MAX_EXP__ 1024
1803// ARM-BE:#define __DBL_MAX__ 1.7976931348623157e+308
1804// ARM-BE:#define __DBL_MIN_10_EXP__ (-307)
1805// ARM-BE:#define __DBL_MIN_EXP__ (-1021)
1806// ARM-BE:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00001807// ARM-BE:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Christian Pirkerf01cd6f2014-03-28 14:40:46 +00001808// ARM-BE:#define __FLT_DENORM_MIN__ 1.40129846e-45F
1809// ARM-BE:#define __FLT_DIG__ 6
1810// ARM-BE:#define __FLT_EPSILON__ 1.19209290e-7F
1811// ARM-BE:#define __FLT_EVAL_METHOD__ 0
1812// ARM-BE:#define __FLT_HAS_DENORM__ 1
1813// ARM-BE:#define __FLT_HAS_INFINITY__ 1
1814// ARM-BE:#define __FLT_HAS_QUIET_NAN__ 1
1815// ARM-BE:#define __FLT_MANT_DIG__ 24
1816// ARM-BE:#define __FLT_MAX_10_EXP__ 38
1817// ARM-BE:#define __FLT_MAX_EXP__ 128
1818// ARM-BE:#define __FLT_MAX__ 3.40282347e+38F
1819// ARM-BE:#define __FLT_MIN_10_EXP__ (-37)
1820// ARM-BE:#define __FLT_MIN_EXP__ (-125)
1821// ARM-BE:#define __FLT_MIN__ 1.17549435e-38F
1822// ARM-BE:#define __FLT_RADIX__ 2
James Y Knightc97efa42016-02-11 16:51:29 +00001823// ARM-BE:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001824// ARM-BE:#define __INT16_FMTd__ "hd"
1825// ARM-BE:#define __INT16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00001826// ARM-BE:#define __INT16_MAX__ 32767
Christian Pirkerf01cd6f2014-03-28 14:40:46 +00001827// ARM-BE:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +00001828// ARM-BE:#define __INT32_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001829// ARM-BE:#define __INT32_FMTd__ "d"
1830// ARM-BE:#define __INT32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00001831// ARM-BE:#define __INT32_MAX__ 2147483647
Christian Pirkerf01cd6f2014-03-28 14:40:46 +00001832// ARM-BE:#define __INT32_TYPE__ int
1833// ARM-BE:#define __INT64_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001834// ARM-BE:#define __INT64_FMTd__ "lld"
1835// ARM-BE:#define __INT64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00001836// ARM-BE:#define __INT64_MAX__ 9223372036854775807LL
Christian Pirkerf01cd6f2014-03-28 14:40:46 +00001837// ARM-BE:#define __INT64_TYPE__ long long int
James Y Knightc97efa42016-02-11 16:51:29 +00001838// ARM-BE:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001839// ARM-BE:#define __INT8_FMTd__ "hhd"
1840// ARM-BE:#define __INT8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00001841// ARM-BE:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00001842// ARM-BE:#define __INT8_TYPE__ signed char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00001843// ARM-BE:#define __INTMAX_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001844// ARM-BE:#define __INTMAX_FMTd__ "lld"
1845// ARM-BE:#define __INTMAX_FMTi__ "lli"
Christian Pirkerf01cd6f2014-03-28 14:40:46 +00001846// ARM-BE:#define __INTMAX_MAX__ 9223372036854775807LL
1847// ARM-BE:#define __INTMAX_TYPE__ long long int
1848// ARM-BE:#define __INTMAX_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001849// ARM-BE:#define __INTPTR_FMTd__ "ld"
1850// ARM-BE:#define __INTPTR_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00001851// ARM-BE:#define __INTPTR_MAX__ 2147483647L
Christian Pirkerf01cd6f2014-03-28 14:40:46 +00001852// ARM-BE:#define __INTPTR_TYPE__ long int
1853// ARM-BE:#define __INTPTR_WIDTH__ 32
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001854// ARM-BE:#define __INT_FAST16_FMTd__ "hd"
1855// ARM-BE:#define __INT_FAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00001856// ARM-BE:#define __INT_FAST16_MAX__ 32767
1857// ARM-BE:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001858// ARM-BE:#define __INT_FAST32_FMTd__ "d"
1859// ARM-BE:#define __INT_FAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00001860// ARM-BE:#define __INT_FAST32_MAX__ 2147483647
1861// ARM-BE:#define __INT_FAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001862// ARM-BE:#define __INT_FAST64_FMTd__ "lld"
1863// ARM-BE:#define __INT_FAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00001864// ARM-BE:#define __INT_FAST64_MAX__ 9223372036854775807LL
1865// ARM-BE:#define __INT_FAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001866// ARM-BE:#define __INT_FAST8_FMTd__ "hhd"
1867// ARM-BE:#define __INT_FAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00001868// ARM-BE:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00001869// ARM-BE:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001870// ARM-BE:#define __INT_LEAST16_FMTd__ "hd"
1871// ARM-BE:#define __INT_LEAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00001872// ARM-BE:#define __INT_LEAST16_MAX__ 32767
1873// ARM-BE:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001874// ARM-BE:#define __INT_LEAST32_FMTd__ "d"
1875// ARM-BE:#define __INT_LEAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00001876// ARM-BE:#define __INT_LEAST32_MAX__ 2147483647
1877// ARM-BE:#define __INT_LEAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001878// ARM-BE:#define __INT_LEAST64_FMTd__ "lld"
1879// ARM-BE:#define __INT_LEAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00001880// ARM-BE:#define __INT_LEAST64_MAX__ 9223372036854775807LL
1881// ARM-BE:#define __INT_LEAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001882// ARM-BE:#define __INT_LEAST8_FMTd__ "hhd"
1883// ARM-BE:#define __INT_LEAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00001884// ARM-BE:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00001885// ARM-BE:#define __INT_LEAST8_TYPE__ signed char
Christian Pirkerf01cd6f2014-03-28 14:40:46 +00001886// ARM-BE:#define __INT_MAX__ 2147483647
1887// ARM-BE:#define __LDBL_DENORM_MIN__ 4.9406564584124654e-324L
1888// ARM-BE:#define __LDBL_DIG__ 15
1889// ARM-BE:#define __LDBL_EPSILON__ 2.2204460492503131e-16L
1890// ARM-BE:#define __LDBL_HAS_DENORM__ 1
1891// ARM-BE:#define __LDBL_HAS_INFINITY__ 1
1892// ARM-BE:#define __LDBL_HAS_QUIET_NAN__ 1
1893// ARM-BE:#define __LDBL_MANT_DIG__ 53
1894// ARM-BE:#define __LDBL_MAX_10_EXP__ 308
1895// ARM-BE:#define __LDBL_MAX_EXP__ 1024
1896// ARM-BE:#define __LDBL_MAX__ 1.7976931348623157e+308L
1897// ARM-BE:#define __LDBL_MIN_10_EXP__ (-307)
1898// ARM-BE:#define __LDBL_MIN_EXP__ (-1021)
1899// ARM-BE:#define __LDBL_MIN__ 2.2250738585072014e-308L
1900// ARM-BE:#define __LONG_LONG_MAX__ 9223372036854775807LL
1901// ARM-BE:#define __LONG_MAX__ 2147483647L
1902// ARM-BE-NOT:#define __LP64__
1903// ARM-BE:#define __POINTER_WIDTH__ 32
1904// ARM-BE:#define __PTRDIFF_TYPE__ int
1905// ARM-BE:#define __PTRDIFF_WIDTH__ 32
1906// ARM-BE:#define __REGISTER_PREFIX__
1907// ARM-BE:#define __SCHAR_MAX__ 127
1908// ARM-BE:#define __SHRT_MAX__ 32767
Joerg Sonnenbergerb3a49692014-07-17 18:31:20 +00001909// ARM-BE:#define __SIG_ATOMIC_MAX__ 2147483647
Christian Pirkerf01cd6f2014-03-28 14:40:46 +00001910// ARM-BE:#define __SIG_ATOMIC_WIDTH__ 32
1911// ARM-BE:#define __SIZEOF_DOUBLE__ 8
1912// ARM-BE:#define __SIZEOF_FLOAT__ 4
1913// ARM-BE:#define __SIZEOF_INT__ 4
1914// ARM-BE:#define __SIZEOF_LONG_DOUBLE__ 8
1915// ARM-BE:#define __SIZEOF_LONG_LONG__ 8
1916// ARM-BE:#define __SIZEOF_LONG__ 4
1917// ARM-BE:#define __SIZEOF_POINTER__ 4
1918// ARM-BE:#define __SIZEOF_PTRDIFF_T__ 4
1919// ARM-BE:#define __SIZEOF_SHORT__ 2
1920// ARM-BE:#define __SIZEOF_SIZE_T__ 4
1921// ARM-BE:#define __SIZEOF_WCHAR_T__ 4
1922// ARM-BE:#define __SIZEOF_WINT_T__ 4
1923// ARM-BE:#define __SIZE_MAX__ 4294967295U
1924// ARM-BE:#define __SIZE_TYPE__ unsigned int
1925// ARM-BE:#define __SIZE_WIDTH__ 32
James Y Knightc97efa42016-02-11 16:51:29 +00001926// ARM-BE:#define __UINT16_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00001927// ARM-BE:#define __UINT16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00001928// ARM-BE:#define __UINT16_TYPE__ unsigned short
1929// ARM-BE:#define __UINT32_C_SUFFIX__ U
1930// ARM-BE:#define __UINT32_MAX__ 4294967295U
1931// ARM-BE:#define __UINT32_TYPE__ unsigned int
1932// ARM-BE:#define __UINT64_C_SUFFIX__ ULL
1933// ARM-BE:#define __UINT64_MAX__ 18446744073709551615ULL
1934// ARM-BE:#define __UINT64_TYPE__ long long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00001935// ARM-BE:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00001936// ARM-BE:#define __UINT8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00001937// ARM-BE:#define __UINT8_TYPE__ unsigned char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00001938// ARM-BE:#define __UINTMAX_C_SUFFIX__ ULL
JF Bastienab8d0a02014-06-25 01:31:33 +00001939// ARM-BE:#define __UINTMAX_MAX__ 18446744073709551615ULL
Christian Pirkerf01cd6f2014-03-28 14:40:46 +00001940// ARM-BE:#define __UINTMAX_TYPE__ long long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00001941// ARM-BE:#define __UINTMAX_WIDTH__ 64
James Y Knightc97efa42016-02-11 16:51:29 +00001942// ARM-BE:#define __UINTPTR_MAX__ 4294967295UL
Joerg Sonnenberger3809a7a2014-07-14 20:40:56 +00001943// ARM-BE:#define __UINTPTR_TYPE__ long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00001944// ARM-BE:#define __UINTPTR_WIDTH__ 32
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00001945// ARM-BE:#define __UINT_FAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00001946// ARM-BE:#define __UINT_FAST16_TYPE__ unsigned short
1947// ARM-BE:#define __UINT_FAST32_MAX__ 4294967295U
1948// ARM-BE:#define __UINT_FAST32_TYPE__ unsigned int
1949// ARM-BE:#define __UINT_FAST64_MAX__ 18446744073709551615ULL
1950// ARM-BE:#define __UINT_FAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00001951// ARM-BE:#define __UINT_FAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00001952// ARM-BE:#define __UINT_FAST8_TYPE__ unsigned char
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00001953// ARM-BE:#define __UINT_LEAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00001954// ARM-BE:#define __UINT_LEAST16_TYPE__ unsigned short
1955// ARM-BE:#define __UINT_LEAST32_MAX__ 4294967295U
1956// ARM-BE:#define __UINT_LEAST32_TYPE__ unsigned int
1957// ARM-BE:#define __UINT_LEAST64_MAX__ 18446744073709551615ULL
1958// ARM-BE:#define __UINT_LEAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00001959// ARM-BE:#define __UINT_LEAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00001960// ARM-BE:#define __UINT_LEAST8_TYPE__ unsigned char
James Y Knightb214cbc2016-03-04 19:00:41 +00001961// ARM-BE:#define __USER_LABEL_PREFIX__
Christian Pirkerf01cd6f2014-03-28 14:40:46 +00001962// ARM-BE:#define __WCHAR_MAX__ 4294967295U
1963// ARM-BE:#define __WCHAR_TYPE__ unsigned int
1964// ARM-BE:#define __WCHAR_WIDTH__ 32
1965// ARM-BE:#define __WINT_TYPE__ int
1966// ARM-BE:#define __WINT_WIDTH__ 32
1967// ARM-BE:#define __arm 1
1968// ARM-BE:#define __arm__ 1
1969
James Y Knightc97efa42016-02-11 16:51:29 +00001970// 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 +00001971//
Christian Pirkerf01cd6f2014-03-28 14:40:46 +00001972// ARMEABISOFTFP-NOT:#define _LP64
Anton Korobeynikove6f74092012-09-08 08:45:10 +00001973// ARMEABISOFTFP:#define __APCS_32__ 1
Christian Pirkerf01cd6f2014-03-28 14:40:46 +00001974// ARMEABISOFTFP-NOT:#define __ARMEB__ 1
Anton Korobeynikove6f74092012-09-08 08:45:10 +00001975// ARMEABISOFTFP:#define __ARMEL__ 1
Renato Goline84b0002015-10-08 16:43:26 +00001976// ARMEABISOFTFP:#define __ARM_ARCH 4
1977// ARMEABISOFTFP:#define __ARM_ARCH_4T__ 1
Christian Pirkerf01cd6f2014-03-28 14:40:46 +00001978// ARMEABISOFTFP-NOT:#define __ARM_BIG_ENDIAN 1
Anton Korobeynikove6f74092012-09-08 08:45:10 +00001979// ARMEABISOFTFP:#define __ARM_EABI__ 1
1980// ARMEABISOFTFP:#define __ARM_PCS 1
1981// ARMEABISOFTFP-NOT:#define __ARM_PCS_VFP 1
Tim Northovera6a19f12015-02-06 01:25:07 +00001982// ARMEABISOFTFP:#define __BIGGEST_ALIGNMENT__ 8
Anton Korobeynikove6f74092012-09-08 08:45:10 +00001983// ARMEABISOFTFP:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
1984// ARMEABISOFTFP:#define __CHAR16_TYPE__ unsigned short
1985// ARMEABISOFTFP:#define __CHAR32_TYPE__ unsigned int
1986// ARMEABISOFTFP:#define __CHAR_BIT__ 8
1987// ARMEABISOFTFP:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
1988// ARMEABISOFTFP:#define __DBL_DIG__ 15
1989// ARMEABISOFTFP:#define __DBL_EPSILON__ 2.2204460492503131e-16
1990// ARMEABISOFTFP:#define __DBL_HAS_DENORM__ 1
1991// ARMEABISOFTFP:#define __DBL_HAS_INFINITY__ 1
1992// ARMEABISOFTFP:#define __DBL_HAS_QUIET_NAN__ 1
1993// ARMEABISOFTFP:#define __DBL_MANT_DIG__ 53
1994// ARMEABISOFTFP:#define __DBL_MAX_10_EXP__ 308
1995// ARMEABISOFTFP:#define __DBL_MAX_EXP__ 1024
1996// ARMEABISOFTFP:#define __DBL_MAX__ 1.7976931348623157e+308
1997// ARMEABISOFTFP:#define __DBL_MIN_10_EXP__ (-307)
1998// ARMEABISOFTFP:#define __DBL_MIN_EXP__ (-1021)
1999// ARMEABISOFTFP:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00002000// ARMEABISOFTFP:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Anton Korobeynikove6f74092012-09-08 08:45:10 +00002001// ARMEABISOFTFP:#define __FLT_DENORM_MIN__ 1.40129846e-45F
2002// ARMEABISOFTFP:#define __FLT_DIG__ 6
2003// ARMEABISOFTFP:#define __FLT_EPSILON__ 1.19209290e-7F
2004// ARMEABISOFTFP:#define __FLT_EVAL_METHOD__ 0
2005// ARMEABISOFTFP:#define __FLT_HAS_DENORM__ 1
2006// ARMEABISOFTFP:#define __FLT_HAS_INFINITY__ 1
2007// ARMEABISOFTFP:#define __FLT_HAS_QUIET_NAN__ 1
2008// ARMEABISOFTFP:#define __FLT_MANT_DIG__ 24
2009// ARMEABISOFTFP:#define __FLT_MAX_10_EXP__ 38
2010// ARMEABISOFTFP:#define __FLT_MAX_EXP__ 128
2011// ARMEABISOFTFP:#define __FLT_MAX__ 3.40282347e+38F
2012// ARMEABISOFTFP:#define __FLT_MIN_10_EXP__ (-37)
2013// ARMEABISOFTFP:#define __FLT_MIN_EXP__ (-125)
2014// ARMEABISOFTFP:#define __FLT_MIN__ 1.17549435e-38F
2015// ARMEABISOFTFP:#define __FLT_RADIX__ 2
James Y Knightc97efa42016-02-11 16:51:29 +00002016// ARMEABISOFTFP:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002017// ARMEABISOFTFP:#define __INT16_FMTd__ "hd"
2018// ARMEABISOFTFP:#define __INT16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00002019// ARMEABISOFTFP:#define __INT16_MAX__ 32767
Anton Korobeynikove6f74092012-09-08 08:45:10 +00002020// ARMEABISOFTFP:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +00002021// ARMEABISOFTFP:#define __INT32_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002022// ARMEABISOFTFP:#define __INT32_FMTd__ "d"
2023// ARMEABISOFTFP:#define __INT32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00002024// ARMEABISOFTFP:#define __INT32_MAX__ 2147483647
Anton Korobeynikove6f74092012-09-08 08:45:10 +00002025// ARMEABISOFTFP:#define __INT32_TYPE__ int
2026// ARMEABISOFTFP:#define __INT64_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002027// ARMEABISOFTFP:#define __INT64_FMTd__ "lld"
2028// ARMEABISOFTFP:#define __INT64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00002029// ARMEABISOFTFP:#define __INT64_MAX__ 9223372036854775807LL
Anton Korobeynikove6f74092012-09-08 08:45:10 +00002030// ARMEABISOFTFP:#define __INT64_TYPE__ long long int
James Y Knightc97efa42016-02-11 16:51:29 +00002031// ARMEABISOFTFP:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002032// ARMEABISOFTFP:#define __INT8_FMTd__ "hhd"
2033// ARMEABISOFTFP:#define __INT8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00002034// ARMEABISOFTFP:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00002035// ARMEABISOFTFP:#define __INT8_TYPE__ signed char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00002036// ARMEABISOFTFP:#define __INTMAX_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002037// ARMEABISOFTFP:#define __INTMAX_FMTd__ "lld"
2038// ARMEABISOFTFP:#define __INTMAX_FMTi__ "lli"
Anton Korobeynikove6f74092012-09-08 08:45:10 +00002039// ARMEABISOFTFP:#define __INTMAX_MAX__ 9223372036854775807LL
2040// ARMEABISOFTFP:#define __INTMAX_TYPE__ long long int
2041// ARMEABISOFTFP:#define __INTMAX_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002042// ARMEABISOFTFP:#define __INTPTR_FMTd__ "ld"
2043// ARMEABISOFTFP:#define __INTPTR_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00002044// ARMEABISOFTFP:#define __INTPTR_MAX__ 2147483647L
Anton Korobeynikove6f74092012-09-08 08:45:10 +00002045// ARMEABISOFTFP:#define __INTPTR_TYPE__ long int
2046// ARMEABISOFTFP:#define __INTPTR_WIDTH__ 32
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002047// ARMEABISOFTFP:#define __INT_FAST16_FMTd__ "hd"
2048// ARMEABISOFTFP:#define __INT_FAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00002049// ARMEABISOFTFP:#define __INT_FAST16_MAX__ 32767
2050// ARMEABISOFTFP:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002051// ARMEABISOFTFP:#define __INT_FAST32_FMTd__ "d"
2052// ARMEABISOFTFP:#define __INT_FAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00002053// ARMEABISOFTFP:#define __INT_FAST32_MAX__ 2147483647
2054// ARMEABISOFTFP:#define __INT_FAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002055// ARMEABISOFTFP:#define __INT_FAST64_FMTd__ "lld"
2056// ARMEABISOFTFP:#define __INT_FAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00002057// ARMEABISOFTFP:#define __INT_FAST64_MAX__ 9223372036854775807LL
2058// ARMEABISOFTFP:#define __INT_FAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002059// ARMEABISOFTFP:#define __INT_FAST8_FMTd__ "hhd"
2060// ARMEABISOFTFP:#define __INT_FAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00002061// ARMEABISOFTFP:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00002062// ARMEABISOFTFP:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002063// ARMEABISOFTFP:#define __INT_LEAST16_FMTd__ "hd"
2064// ARMEABISOFTFP:#define __INT_LEAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00002065// ARMEABISOFTFP:#define __INT_LEAST16_MAX__ 32767
2066// ARMEABISOFTFP:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002067// ARMEABISOFTFP:#define __INT_LEAST32_FMTd__ "d"
2068// ARMEABISOFTFP:#define __INT_LEAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00002069// ARMEABISOFTFP:#define __INT_LEAST32_MAX__ 2147483647
2070// ARMEABISOFTFP:#define __INT_LEAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002071// ARMEABISOFTFP:#define __INT_LEAST64_FMTd__ "lld"
2072// ARMEABISOFTFP:#define __INT_LEAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00002073// ARMEABISOFTFP:#define __INT_LEAST64_MAX__ 9223372036854775807LL
2074// ARMEABISOFTFP:#define __INT_LEAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002075// ARMEABISOFTFP:#define __INT_LEAST8_FMTd__ "hhd"
2076// ARMEABISOFTFP:#define __INT_LEAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00002077// ARMEABISOFTFP:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00002078// ARMEABISOFTFP:#define __INT_LEAST8_TYPE__ signed char
Anton Korobeynikove6f74092012-09-08 08:45:10 +00002079// ARMEABISOFTFP:#define __INT_MAX__ 2147483647
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00002080// ARMEABISOFTFP:#define __LDBL_DENORM_MIN__ 4.9406564584124654e-324L
Anton Korobeynikove6f74092012-09-08 08:45:10 +00002081// ARMEABISOFTFP:#define __LDBL_DIG__ 15
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00002082// ARMEABISOFTFP:#define __LDBL_EPSILON__ 2.2204460492503131e-16L
Anton Korobeynikove6f74092012-09-08 08:45:10 +00002083// ARMEABISOFTFP:#define __LDBL_HAS_DENORM__ 1
2084// ARMEABISOFTFP:#define __LDBL_HAS_INFINITY__ 1
2085// ARMEABISOFTFP:#define __LDBL_HAS_QUIET_NAN__ 1
2086// ARMEABISOFTFP:#define __LDBL_MANT_DIG__ 53
2087// ARMEABISOFTFP:#define __LDBL_MAX_10_EXP__ 308
2088// ARMEABISOFTFP:#define __LDBL_MAX_EXP__ 1024
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00002089// ARMEABISOFTFP:#define __LDBL_MAX__ 1.7976931348623157e+308L
Anton Korobeynikove6f74092012-09-08 08:45:10 +00002090// ARMEABISOFTFP:#define __LDBL_MIN_10_EXP__ (-307)
2091// ARMEABISOFTFP:#define __LDBL_MIN_EXP__ (-1021)
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00002092// ARMEABISOFTFP:#define __LDBL_MIN__ 2.2250738585072014e-308L
Anton Korobeynikove6f74092012-09-08 08:45:10 +00002093// ARMEABISOFTFP:#define __LITTLE_ENDIAN__ 1
2094// ARMEABISOFTFP:#define __LONG_LONG_MAX__ 9223372036854775807LL
2095// ARMEABISOFTFP:#define __LONG_MAX__ 2147483647L
2096// ARMEABISOFTFP-NOT:#define __LP64__
2097// ARMEABISOFTFP:#define __POINTER_WIDTH__ 32
2098// ARMEABISOFTFP:#define __PTRDIFF_TYPE__ int
2099// ARMEABISOFTFP:#define __PTRDIFF_WIDTH__ 32
2100// ARMEABISOFTFP:#define __REGISTER_PREFIX__
2101// ARMEABISOFTFP:#define __SCHAR_MAX__ 127
2102// ARMEABISOFTFP:#define __SHRT_MAX__ 32767
Joerg Sonnenbergerb3a49692014-07-17 18:31:20 +00002103// ARMEABISOFTFP:#define __SIG_ATOMIC_MAX__ 2147483647
Anton Korobeynikove6f74092012-09-08 08:45:10 +00002104// ARMEABISOFTFP:#define __SIG_ATOMIC_WIDTH__ 32
2105// ARMEABISOFTFP:#define __SIZEOF_DOUBLE__ 8
2106// ARMEABISOFTFP:#define __SIZEOF_FLOAT__ 4
2107// ARMEABISOFTFP:#define __SIZEOF_INT__ 4
2108// ARMEABISOFTFP:#define __SIZEOF_LONG_DOUBLE__ 8
2109// ARMEABISOFTFP:#define __SIZEOF_LONG_LONG__ 8
2110// ARMEABISOFTFP:#define __SIZEOF_LONG__ 4
2111// ARMEABISOFTFP:#define __SIZEOF_POINTER__ 4
2112// ARMEABISOFTFP:#define __SIZEOF_PTRDIFF_T__ 4
2113// ARMEABISOFTFP:#define __SIZEOF_SHORT__ 2
2114// ARMEABISOFTFP:#define __SIZEOF_SIZE_T__ 4
2115// ARMEABISOFTFP:#define __SIZEOF_WCHAR_T__ 4
2116// ARMEABISOFTFP:#define __SIZEOF_WINT_T__ 4
Evgeniy Stepanovc3c725a2013-03-28 08:36:54 +00002117// ARMEABISOFTFP:#define __SIZE_MAX__ 4294967295U
Anton Korobeynikove6f74092012-09-08 08:45:10 +00002118// ARMEABISOFTFP:#define __SIZE_TYPE__ unsigned int
2119// ARMEABISOFTFP:#define __SIZE_WIDTH__ 32
2120// ARMEABISOFTFP:#define __SOFTFP__ 1
James Y Knightc97efa42016-02-11 16:51:29 +00002121// ARMEABISOFTFP:#define __UINT16_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00002122// ARMEABISOFTFP:#define __UINT16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00002123// ARMEABISOFTFP:#define __UINT16_TYPE__ unsigned short
2124// ARMEABISOFTFP:#define __UINT32_C_SUFFIX__ U
2125// ARMEABISOFTFP:#define __UINT32_MAX__ 4294967295U
2126// ARMEABISOFTFP:#define __UINT32_TYPE__ unsigned int
2127// ARMEABISOFTFP:#define __UINT64_C_SUFFIX__ ULL
2128// ARMEABISOFTFP:#define __UINT64_MAX__ 18446744073709551615ULL
2129// ARMEABISOFTFP:#define __UINT64_TYPE__ long long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00002130// ARMEABISOFTFP:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00002131// ARMEABISOFTFP:#define __UINT8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00002132// ARMEABISOFTFP:#define __UINT8_TYPE__ unsigned char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00002133// ARMEABISOFTFP:#define __UINTMAX_C_SUFFIX__ ULL
JF Bastienab8d0a02014-06-25 01:31:33 +00002134// ARMEABISOFTFP:#define __UINTMAX_MAX__ 18446744073709551615ULL
Anton Korobeynikove6f74092012-09-08 08:45:10 +00002135// ARMEABISOFTFP:#define __UINTMAX_TYPE__ long long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00002136// ARMEABISOFTFP:#define __UINTMAX_WIDTH__ 64
James Y Knightc97efa42016-02-11 16:51:29 +00002137// ARMEABISOFTFP:#define __UINTPTR_MAX__ 4294967295UL
Joerg Sonnenberger3809a7a2014-07-14 20:40:56 +00002138// ARMEABISOFTFP:#define __UINTPTR_TYPE__ long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00002139// ARMEABISOFTFP:#define __UINTPTR_WIDTH__ 32
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00002140// ARMEABISOFTFP:#define __UINT_FAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00002141// ARMEABISOFTFP:#define __UINT_FAST16_TYPE__ unsigned short
2142// ARMEABISOFTFP:#define __UINT_FAST32_MAX__ 4294967295U
2143// ARMEABISOFTFP:#define __UINT_FAST32_TYPE__ unsigned int
2144// ARMEABISOFTFP:#define __UINT_FAST64_MAX__ 18446744073709551615ULL
2145// ARMEABISOFTFP:#define __UINT_FAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00002146// ARMEABISOFTFP:#define __UINT_FAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00002147// ARMEABISOFTFP:#define __UINT_FAST8_TYPE__ unsigned char
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00002148// ARMEABISOFTFP:#define __UINT_LEAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00002149// ARMEABISOFTFP:#define __UINT_LEAST16_TYPE__ unsigned short
2150// ARMEABISOFTFP:#define __UINT_LEAST32_MAX__ 4294967295U
2151// ARMEABISOFTFP:#define __UINT_LEAST32_TYPE__ unsigned int
2152// ARMEABISOFTFP:#define __UINT_LEAST64_MAX__ 18446744073709551615ULL
2153// ARMEABISOFTFP:#define __UINT_LEAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00002154// ARMEABISOFTFP:#define __UINT_LEAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00002155// ARMEABISOFTFP:#define __UINT_LEAST8_TYPE__ unsigned char
Anton Korobeynikove6f74092012-09-08 08:45:10 +00002156// ARMEABISOFTFP:#define __USER_LABEL_PREFIX__
2157// ARMEABISOFTFP:#define __WCHAR_MAX__ 4294967295U
2158// ARMEABISOFTFP:#define __WCHAR_TYPE__ unsigned int
2159// ARMEABISOFTFP:#define __WCHAR_WIDTH__ 32
2160// ARMEABISOFTFP:#define __WINT_TYPE__ unsigned int
2161// ARMEABISOFTFP:#define __WINT_WIDTH__ 32
2162// ARMEABISOFTFP:#define __arm 1
2163// ARMEABISOFTFP:#define __arm__ 1
2164
James Y Knightc97efa42016-02-11 16:51:29 +00002165// 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 +00002166//
Christian Pirkerf01cd6f2014-03-28 14:40:46 +00002167// ARMEABIHARDFP-NOT:#define _LP64
Anton Korobeynikove6f74092012-09-08 08:45:10 +00002168// ARMEABIHARDFP:#define __APCS_32__ 1
Christian Pirkerf01cd6f2014-03-28 14:40:46 +00002169// ARMEABIHARDFP-NOT:#define __ARMEB__ 1
Anton Korobeynikove6f74092012-09-08 08:45:10 +00002170// ARMEABIHARDFP:#define __ARMEL__ 1
Renato Goline84b0002015-10-08 16:43:26 +00002171// ARMEABIHARDFP:#define __ARM_ARCH 4
2172// ARMEABIHARDFP:#define __ARM_ARCH_4T__ 1
Christian Pirkerf01cd6f2014-03-28 14:40:46 +00002173// ARMEABIHARDFP-NOT:#define __ARM_BIG_ENDIAN 1
Anton Korobeynikove6f74092012-09-08 08:45:10 +00002174// ARMEABIHARDFP:#define __ARM_EABI__ 1
2175// ARMEABIHARDFP:#define __ARM_PCS 1
2176// ARMEABIHARDFP:#define __ARM_PCS_VFP 1
Tim Northovera6a19f12015-02-06 01:25:07 +00002177// ARMEABIHARDFP:#define __BIGGEST_ALIGNMENT__ 8
Anton Korobeynikove6f74092012-09-08 08:45:10 +00002178// ARMEABIHARDFP:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
2179// ARMEABIHARDFP:#define __CHAR16_TYPE__ unsigned short
2180// ARMEABIHARDFP:#define __CHAR32_TYPE__ unsigned int
2181// ARMEABIHARDFP:#define __CHAR_BIT__ 8
2182// ARMEABIHARDFP:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
2183// ARMEABIHARDFP:#define __DBL_DIG__ 15
2184// ARMEABIHARDFP:#define __DBL_EPSILON__ 2.2204460492503131e-16
2185// ARMEABIHARDFP:#define __DBL_HAS_DENORM__ 1
2186// ARMEABIHARDFP:#define __DBL_HAS_INFINITY__ 1
2187// ARMEABIHARDFP:#define __DBL_HAS_QUIET_NAN__ 1
2188// ARMEABIHARDFP:#define __DBL_MANT_DIG__ 53
2189// ARMEABIHARDFP:#define __DBL_MAX_10_EXP__ 308
2190// ARMEABIHARDFP:#define __DBL_MAX_EXP__ 1024
2191// ARMEABIHARDFP:#define __DBL_MAX__ 1.7976931348623157e+308
2192// ARMEABIHARDFP:#define __DBL_MIN_10_EXP__ (-307)
2193// ARMEABIHARDFP:#define __DBL_MIN_EXP__ (-1021)
2194// ARMEABIHARDFP:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00002195// ARMEABIHARDFP:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Anton Korobeynikove6f74092012-09-08 08:45:10 +00002196// ARMEABIHARDFP:#define __FLT_DENORM_MIN__ 1.40129846e-45F
2197// ARMEABIHARDFP:#define __FLT_DIG__ 6
2198// ARMEABIHARDFP:#define __FLT_EPSILON__ 1.19209290e-7F
2199// ARMEABIHARDFP:#define __FLT_EVAL_METHOD__ 0
2200// ARMEABIHARDFP:#define __FLT_HAS_DENORM__ 1
2201// ARMEABIHARDFP:#define __FLT_HAS_INFINITY__ 1
2202// ARMEABIHARDFP:#define __FLT_HAS_QUIET_NAN__ 1
2203// ARMEABIHARDFP:#define __FLT_MANT_DIG__ 24
2204// ARMEABIHARDFP:#define __FLT_MAX_10_EXP__ 38
2205// ARMEABIHARDFP:#define __FLT_MAX_EXP__ 128
2206// ARMEABIHARDFP:#define __FLT_MAX__ 3.40282347e+38F
2207// ARMEABIHARDFP:#define __FLT_MIN_10_EXP__ (-37)
2208// ARMEABIHARDFP:#define __FLT_MIN_EXP__ (-125)
2209// ARMEABIHARDFP:#define __FLT_MIN__ 1.17549435e-38F
2210// ARMEABIHARDFP:#define __FLT_RADIX__ 2
James Y Knightc97efa42016-02-11 16:51:29 +00002211// ARMEABIHARDFP:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002212// ARMEABIHARDFP:#define __INT16_FMTd__ "hd"
2213// ARMEABIHARDFP:#define __INT16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00002214// ARMEABIHARDFP:#define __INT16_MAX__ 32767
Anton Korobeynikove6f74092012-09-08 08:45:10 +00002215// ARMEABIHARDFP:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +00002216// ARMEABIHARDFP:#define __INT32_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002217// ARMEABIHARDFP:#define __INT32_FMTd__ "d"
2218// ARMEABIHARDFP:#define __INT32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00002219// ARMEABIHARDFP:#define __INT32_MAX__ 2147483647
Anton Korobeynikove6f74092012-09-08 08:45:10 +00002220// ARMEABIHARDFP:#define __INT32_TYPE__ int
2221// ARMEABIHARDFP:#define __INT64_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002222// ARMEABIHARDFP:#define __INT64_FMTd__ "lld"
2223// ARMEABIHARDFP:#define __INT64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00002224// ARMEABIHARDFP:#define __INT64_MAX__ 9223372036854775807LL
Anton Korobeynikove6f74092012-09-08 08:45:10 +00002225// ARMEABIHARDFP:#define __INT64_TYPE__ long long int
James Y Knightc97efa42016-02-11 16:51:29 +00002226// ARMEABIHARDFP:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002227// ARMEABIHARDFP:#define __INT8_FMTd__ "hhd"
2228// ARMEABIHARDFP:#define __INT8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00002229// ARMEABIHARDFP:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00002230// ARMEABIHARDFP:#define __INT8_TYPE__ signed char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00002231// ARMEABIHARDFP:#define __INTMAX_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002232// ARMEABIHARDFP:#define __INTMAX_FMTd__ "lld"
2233// ARMEABIHARDFP:#define __INTMAX_FMTi__ "lli"
Anton Korobeynikove6f74092012-09-08 08:45:10 +00002234// ARMEABIHARDFP:#define __INTMAX_MAX__ 9223372036854775807LL
2235// ARMEABIHARDFP:#define __INTMAX_TYPE__ long long int
2236// ARMEABIHARDFP:#define __INTMAX_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002237// ARMEABIHARDFP:#define __INTPTR_FMTd__ "ld"
2238// ARMEABIHARDFP:#define __INTPTR_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00002239// ARMEABIHARDFP:#define __INTPTR_MAX__ 2147483647L
Anton Korobeynikove6f74092012-09-08 08:45:10 +00002240// ARMEABIHARDFP:#define __INTPTR_TYPE__ long int
2241// ARMEABIHARDFP:#define __INTPTR_WIDTH__ 32
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002242// ARMEABIHARDFP:#define __INT_FAST16_FMTd__ "hd"
2243// ARMEABIHARDFP:#define __INT_FAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00002244// ARMEABIHARDFP:#define __INT_FAST16_MAX__ 32767
2245// ARMEABIHARDFP:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002246// ARMEABIHARDFP:#define __INT_FAST32_FMTd__ "d"
2247// ARMEABIHARDFP:#define __INT_FAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00002248// ARMEABIHARDFP:#define __INT_FAST32_MAX__ 2147483647
2249// ARMEABIHARDFP:#define __INT_FAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002250// ARMEABIHARDFP:#define __INT_FAST64_FMTd__ "lld"
2251// ARMEABIHARDFP:#define __INT_FAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00002252// ARMEABIHARDFP:#define __INT_FAST64_MAX__ 9223372036854775807LL
2253// ARMEABIHARDFP:#define __INT_FAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002254// ARMEABIHARDFP:#define __INT_FAST8_FMTd__ "hhd"
2255// ARMEABIHARDFP:#define __INT_FAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00002256// ARMEABIHARDFP:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00002257// ARMEABIHARDFP:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002258// ARMEABIHARDFP:#define __INT_LEAST16_FMTd__ "hd"
2259// ARMEABIHARDFP:#define __INT_LEAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00002260// ARMEABIHARDFP:#define __INT_LEAST16_MAX__ 32767
2261// ARMEABIHARDFP:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002262// ARMEABIHARDFP:#define __INT_LEAST32_FMTd__ "d"
2263// ARMEABIHARDFP:#define __INT_LEAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00002264// ARMEABIHARDFP:#define __INT_LEAST32_MAX__ 2147483647
2265// ARMEABIHARDFP:#define __INT_LEAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002266// ARMEABIHARDFP:#define __INT_LEAST64_FMTd__ "lld"
2267// ARMEABIHARDFP:#define __INT_LEAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00002268// ARMEABIHARDFP:#define __INT_LEAST64_MAX__ 9223372036854775807LL
2269// ARMEABIHARDFP:#define __INT_LEAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002270// ARMEABIHARDFP:#define __INT_LEAST8_FMTd__ "hhd"
2271// ARMEABIHARDFP:#define __INT_LEAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00002272// ARMEABIHARDFP:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00002273// ARMEABIHARDFP:#define __INT_LEAST8_TYPE__ signed char
Anton Korobeynikove6f74092012-09-08 08:45:10 +00002274// ARMEABIHARDFP:#define __INT_MAX__ 2147483647
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00002275// ARMEABIHARDFP:#define __LDBL_DENORM_MIN__ 4.9406564584124654e-324L
Anton Korobeynikove6f74092012-09-08 08:45:10 +00002276// ARMEABIHARDFP:#define __LDBL_DIG__ 15
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00002277// ARMEABIHARDFP:#define __LDBL_EPSILON__ 2.2204460492503131e-16L
Anton Korobeynikove6f74092012-09-08 08:45:10 +00002278// ARMEABIHARDFP:#define __LDBL_HAS_DENORM__ 1
2279// ARMEABIHARDFP:#define __LDBL_HAS_INFINITY__ 1
2280// ARMEABIHARDFP:#define __LDBL_HAS_QUIET_NAN__ 1
2281// ARMEABIHARDFP:#define __LDBL_MANT_DIG__ 53
2282// ARMEABIHARDFP:#define __LDBL_MAX_10_EXP__ 308
2283// ARMEABIHARDFP:#define __LDBL_MAX_EXP__ 1024
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00002284// ARMEABIHARDFP:#define __LDBL_MAX__ 1.7976931348623157e+308L
Anton Korobeynikove6f74092012-09-08 08:45:10 +00002285// ARMEABIHARDFP:#define __LDBL_MIN_10_EXP__ (-307)
2286// ARMEABIHARDFP:#define __LDBL_MIN_EXP__ (-1021)
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00002287// ARMEABIHARDFP:#define __LDBL_MIN__ 2.2250738585072014e-308L
Anton Korobeynikove6f74092012-09-08 08:45:10 +00002288// ARMEABIHARDFP:#define __LITTLE_ENDIAN__ 1
2289// ARMEABIHARDFP:#define __LONG_LONG_MAX__ 9223372036854775807LL
2290// ARMEABIHARDFP:#define __LONG_MAX__ 2147483647L
2291// ARMEABIHARDFP-NOT:#define __LP64__
2292// ARMEABIHARDFP:#define __POINTER_WIDTH__ 32
2293// ARMEABIHARDFP:#define __PTRDIFF_TYPE__ int
2294// ARMEABIHARDFP:#define __PTRDIFF_WIDTH__ 32
2295// ARMEABIHARDFP:#define __REGISTER_PREFIX__
2296// ARMEABIHARDFP:#define __SCHAR_MAX__ 127
2297// ARMEABIHARDFP:#define __SHRT_MAX__ 32767
Joerg Sonnenbergerb3a49692014-07-17 18:31:20 +00002298// ARMEABIHARDFP:#define __SIG_ATOMIC_MAX__ 2147483647
Anton Korobeynikove6f74092012-09-08 08:45:10 +00002299// ARMEABIHARDFP:#define __SIG_ATOMIC_WIDTH__ 32
2300// ARMEABIHARDFP:#define __SIZEOF_DOUBLE__ 8
2301// ARMEABIHARDFP:#define __SIZEOF_FLOAT__ 4
2302// ARMEABIHARDFP:#define __SIZEOF_INT__ 4
2303// ARMEABIHARDFP:#define __SIZEOF_LONG_DOUBLE__ 8
2304// ARMEABIHARDFP:#define __SIZEOF_LONG_LONG__ 8
2305// ARMEABIHARDFP:#define __SIZEOF_LONG__ 4
2306// ARMEABIHARDFP:#define __SIZEOF_POINTER__ 4
2307// ARMEABIHARDFP:#define __SIZEOF_PTRDIFF_T__ 4
2308// ARMEABIHARDFP:#define __SIZEOF_SHORT__ 2
2309// ARMEABIHARDFP:#define __SIZEOF_SIZE_T__ 4
2310// ARMEABIHARDFP:#define __SIZEOF_WCHAR_T__ 4
2311// ARMEABIHARDFP:#define __SIZEOF_WINT_T__ 4
Evgeniy Stepanovc3c725a2013-03-28 08:36:54 +00002312// ARMEABIHARDFP:#define __SIZE_MAX__ 4294967295U
Anton Korobeynikove6f74092012-09-08 08:45:10 +00002313// ARMEABIHARDFP:#define __SIZE_TYPE__ unsigned int
2314// ARMEABIHARDFP:#define __SIZE_WIDTH__ 32
2315// ARMEABIHARDFP-NOT:#define __SOFTFP__ 1
James Y Knightc97efa42016-02-11 16:51:29 +00002316// ARMEABIHARDFP:#define __UINT16_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00002317// ARMEABIHARDFP:#define __UINT16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00002318// ARMEABIHARDFP:#define __UINT16_TYPE__ unsigned short
2319// ARMEABIHARDFP:#define __UINT32_C_SUFFIX__ U
2320// ARMEABIHARDFP:#define __UINT32_MAX__ 4294967295U
2321// ARMEABIHARDFP:#define __UINT32_TYPE__ unsigned int
2322// ARMEABIHARDFP:#define __UINT64_C_SUFFIX__ ULL
2323// ARMEABIHARDFP:#define __UINT64_MAX__ 18446744073709551615ULL
2324// ARMEABIHARDFP:#define __UINT64_TYPE__ long long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00002325// ARMEABIHARDFP:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00002326// ARMEABIHARDFP:#define __UINT8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00002327// ARMEABIHARDFP:#define __UINT8_TYPE__ unsigned char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00002328// ARMEABIHARDFP:#define __UINTMAX_C_SUFFIX__ ULL
JF Bastienab8d0a02014-06-25 01:31:33 +00002329// ARMEABIHARDFP:#define __UINTMAX_MAX__ 18446744073709551615ULL
Anton Korobeynikove6f74092012-09-08 08:45:10 +00002330// ARMEABIHARDFP:#define __UINTMAX_TYPE__ long long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00002331// ARMEABIHARDFP:#define __UINTMAX_WIDTH__ 64
James Y Knightc97efa42016-02-11 16:51:29 +00002332// ARMEABIHARDFP:#define __UINTPTR_MAX__ 4294967295UL
Joerg Sonnenberger3809a7a2014-07-14 20:40:56 +00002333// ARMEABIHARDFP:#define __UINTPTR_TYPE__ long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00002334// ARMEABIHARDFP:#define __UINTPTR_WIDTH__ 32
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00002335// ARMEABIHARDFP:#define __UINT_FAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00002336// ARMEABIHARDFP:#define __UINT_FAST16_TYPE__ unsigned short
2337// ARMEABIHARDFP:#define __UINT_FAST32_MAX__ 4294967295U
2338// ARMEABIHARDFP:#define __UINT_FAST32_TYPE__ unsigned int
2339// ARMEABIHARDFP:#define __UINT_FAST64_MAX__ 18446744073709551615ULL
2340// ARMEABIHARDFP:#define __UINT_FAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00002341// ARMEABIHARDFP:#define __UINT_FAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00002342// ARMEABIHARDFP:#define __UINT_FAST8_TYPE__ unsigned char
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00002343// ARMEABIHARDFP:#define __UINT_LEAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00002344// ARMEABIHARDFP:#define __UINT_LEAST16_TYPE__ unsigned short
2345// ARMEABIHARDFP:#define __UINT_LEAST32_MAX__ 4294967295U
2346// ARMEABIHARDFP:#define __UINT_LEAST32_TYPE__ unsigned int
2347// ARMEABIHARDFP:#define __UINT_LEAST64_MAX__ 18446744073709551615ULL
2348// ARMEABIHARDFP:#define __UINT_LEAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00002349// ARMEABIHARDFP:#define __UINT_LEAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00002350// ARMEABIHARDFP:#define __UINT_LEAST8_TYPE__ unsigned char
Anton Korobeynikove6f74092012-09-08 08:45:10 +00002351// ARMEABIHARDFP:#define __USER_LABEL_PREFIX__
2352// ARMEABIHARDFP:#define __WCHAR_MAX__ 4294967295U
2353// ARMEABIHARDFP:#define __WCHAR_TYPE__ unsigned int
2354// ARMEABIHARDFP:#define __WCHAR_WIDTH__ 32
2355// ARMEABIHARDFP:#define __WINT_TYPE__ unsigned int
2356// ARMEABIHARDFP:#define __WINT_WIDTH__ 32
2357// ARMEABIHARDFP:#define __arm 1
2358// ARMEABIHARDFP:#define __arm__ 1
2359
Ed Schoutenc6d1a732016-09-05 18:38:34 +00002360// RUN: %clang_cc1 -E -dM -ffreestanding -triple=armv6-unknown-cloudabi-eabihf < /dev/null | FileCheck -match-full-lines -check-prefix ARMV6-CLOUDABI %s
2361//
2362// ARMV6-CLOUDABI:#define __CloudABI__ 1
2363// ARMV6-CLOUDABI:#define __arm__ 1
2364
Joerg Sonnenberger66837642017-07-11 15:49:45 +00002365// RUN: %clang -E -dM -ffreestanding -target arm-netbsd-eabi %s -o - | FileCheck -match-full-lines -check-prefix ARM-NETBSD %s
2366
Joerg Sonnenberger4645b442014-05-13 18:58:00 +00002367// ARM-NETBSD-NOT:#define _LP64
2368// ARM-NETBSD:#define __APCS_32__ 1
2369// ARM-NETBSD-NOT:#define __ARMEB__ 1
2370// ARM-NETBSD:#define __ARMEL__ 1
Joerg Sonnenberger66837642017-07-11 15:49:45 +00002371// ARM-NETBSD:#define __ARM_ARCH_5TE__ 1
Joerg Sonnenbergercc1edb52014-05-13 18:58:36 +00002372// ARM-NETBSD:#define __ARM_DWARF_EH__ 1
Joerg Sonnenberger4645b442014-05-13 18:58:00 +00002373// ARM-NETBSD:#define __ARM_EABI__ 1
2374// ARM-NETBSD-NOT:#define __ARM_BIG_ENDIAN 1
Tim Northovera6a19f12015-02-06 01:25:07 +00002375// ARM-NETBSD:#define __BIGGEST_ALIGNMENT__ 8
Joerg Sonnenberger4645b442014-05-13 18:58:00 +00002376// ARM-NETBSD:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
2377// ARM-NETBSD:#define __CHAR16_TYPE__ unsigned short
2378// ARM-NETBSD:#define __CHAR32_TYPE__ unsigned int
2379// ARM-NETBSD:#define __CHAR_BIT__ 8
2380// ARM-NETBSD:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
2381// ARM-NETBSD:#define __DBL_DIG__ 15
2382// ARM-NETBSD:#define __DBL_EPSILON__ 2.2204460492503131e-16
2383// ARM-NETBSD:#define __DBL_HAS_DENORM__ 1
2384// ARM-NETBSD:#define __DBL_HAS_INFINITY__ 1
2385// ARM-NETBSD:#define __DBL_HAS_QUIET_NAN__ 1
2386// ARM-NETBSD:#define __DBL_MANT_DIG__ 53
2387// ARM-NETBSD:#define __DBL_MAX_10_EXP__ 308
2388// ARM-NETBSD:#define __DBL_MAX_EXP__ 1024
2389// ARM-NETBSD:#define __DBL_MAX__ 1.7976931348623157e+308
2390// ARM-NETBSD:#define __DBL_MIN_10_EXP__ (-307)
2391// ARM-NETBSD:#define __DBL_MIN_EXP__ (-1021)
2392// ARM-NETBSD:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00002393// ARM-NETBSD:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Joerg Sonnenberger4645b442014-05-13 18:58:00 +00002394// ARM-NETBSD:#define __FLT_DENORM_MIN__ 1.40129846e-45F
2395// ARM-NETBSD:#define __FLT_DIG__ 6
2396// ARM-NETBSD:#define __FLT_EPSILON__ 1.19209290e-7F
2397// ARM-NETBSD:#define __FLT_EVAL_METHOD__ 0
2398// ARM-NETBSD:#define __FLT_HAS_DENORM__ 1
2399// ARM-NETBSD:#define __FLT_HAS_INFINITY__ 1
2400// ARM-NETBSD:#define __FLT_HAS_QUIET_NAN__ 1
2401// ARM-NETBSD:#define __FLT_MANT_DIG__ 24
2402// ARM-NETBSD:#define __FLT_MAX_10_EXP__ 38
2403// ARM-NETBSD:#define __FLT_MAX_EXP__ 128
2404// ARM-NETBSD:#define __FLT_MAX__ 3.40282347e+38F
2405// ARM-NETBSD:#define __FLT_MIN_10_EXP__ (-37)
2406// ARM-NETBSD:#define __FLT_MIN_EXP__ (-125)
2407// ARM-NETBSD:#define __FLT_MIN__ 1.17549435e-38F
2408// ARM-NETBSD:#define __FLT_RADIX__ 2
James Y Knightc97efa42016-02-11 16:51:29 +00002409// ARM-NETBSD:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002410// ARM-NETBSD:#define __INT16_FMTd__ "hd"
2411// ARM-NETBSD:#define __INT16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00002412// ARM-NETBSD:#define __INT16_MAX__ 32767
Joerg Sonnenberger4645b442014-05-13 18:58:00 +00002413// ARM-NETBSD:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +00002414// ARM-NETBSD:#define __INT32_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002415// ARM-NETBSD:#define __INT32_FMTd__ "d"
2416// ARM-NETBSD:#define __INT32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00002417// ARM-NETBSD:#define __INT32_MAX__ 2147483647
Joerg Sonnenberger4645b442014-05-13 18:58:00 +00002418// ARM-NETBSD:#define __INT32_TYPE__ int
2419// ARM-NETBSD:#define __INT64_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002420// ARM-NETBSD:#define __INT64_FMTd__ "lld"
2421// ARM-NETBSD:#define __INT64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00002422// ARM-NETBSD:#define __INT64_MAX__ 9223372036854775807LL
Joerg Sonnenberger4645b442014-05-13 18:58:00 +00002423// ARM-NETBSD:#define __INT64_TYPE__ long long int
James Y Knightc97efa42016-02-11 16:51:29 +00002424// ARM-NETBSD:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002425// ARM-NETBSD:#define __INT8_FMTd__ "hhd"
2426// ARM-NETBSD:#define __INT8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00002427// ARM-NETBSD:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00002428// ARM-NETBSD:#define __INT8_TYPE__ signed char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00002429// ARM-NETBSD:#define __INTMAX_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002430// ARM-NETBSD:#define __INTMAX_FMTd__ "lld"
2431// ARM-NETBSD:#define __INTMAX_FMTi__ "lli"
Joerg Sonnenberger4645b442014-05-13 18:58:00 +00002432// ARM-NETBSD:#define __INTMAX_MAX__ 9223372036854775807LL
2433// ARM-NETBSD:#define __INTMAX_TYPE__ long long int
2434// ARM-NETBSD:#define __INTMAX_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002435// ARM-NETBSD:#define __INTPTR_FMTd__ "ld"
2436// ARM-NETBSD:#define __INTPTR_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00002437// ARM-NETBSD:#define __INTPTR_MAX__ 2147483647L
Joerg Sonnenberger4645b442014-05-13 18:58:00 +00002438// ARM-NETBSD:#define __INTPTR_TYPE__ long int
2439// ARM-NETBSD:#define __INTPTR_WIDTH__ 32
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002440// ARM-NETBSD:#define __INT_FAST16_FMTd__ "hd"
2441// ARM-NETBSD:#define __INT_FAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00002442// ARM-NETBSD:#define __INT_FAST16_MAX__ 32767
2443// ARM-NETBSD:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002444// ARM-NETBSD:#define __INT_FAST32_FMTd__ "d"
2445// ARM-NETBSD:#define __INT_FAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00002446// ARM-NETBSD:#define __INT_FAST32_MAX__ 2147483647
2447// ARM-NETBSD:#define __INT_FAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002448// ARM-NETBSD:#define __INT_FAST64_FMTd__ "lld"
2449// ARM-NETBSD:#define __INT_FAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00002450// ARM-NETBSD:#define __INT_FAST64_MAX__ 9223372036854775807LL
2451// ARM-NETBSD:#define __INT_FAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002452// ARM-NETBSD:#define __INT_FAST8_FMTd__ "hhd"
2453// ARM-NETBSD:#define __INT_FAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00002454// ARM-NETBSD:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00002455// ARM-NETBSD:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002456// ARM-NETBSD:#define __INT_LEAST16_FMTd__ "hd"
2457// ARM-NETBSD:#define __INT_LEAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00002458// ARM-NETBSD:#define __INT_LEAST16_MAX__ 32767
2459// ARM-NETBSD:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002460// ARM-NETBSD:#define __INT_LEAST32_FMTd__ "d"
2461// ARM-NETBSD:#define __INT_LEAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00002462// ARM-NETBSD:#define __INT_LEAST32_MAX__ 2147483647
2463// ARM-NETBSD:#define __INT_LEAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002464// ARM-NETBSD:#define __INT_LEAST64_FMTd__ "lld"
2465// ARM-NETBSD:#define __INT_LEAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00002466// ARM-NETBSD:#define __INT_LEAST64_MAX__ 9223372036854775807LL
2467// ARM-NETBSD:#define __INT_LEAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002468// ARM-NETBSD:#define __INT_LEAST8_FMTd__ "hhd"
2469// ARM-NETBSD:#define __INT_LEAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00002470// ARM-NETBSD:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00002471// ARM-NETBSD:#define __INT_LEAST8_TYPE__ signed char
Joerg Sonnenberger4645b442014-05-13 18:58:00 +00002472// ARM-NETBSD:#define __INT_MAX__ 2147483647
2473// ARM-NETBSD:#define __LDBL_DENORM_MIN__ 4.9406564584124654e-324L
2474// ARM-NETBSD:#define __LDBL_DIG__ 15
2475// ARM-NETBSD:#define __LDBL_EPSILON__ 2.2204460492503131e-16L
2476// ARM-NETBSD:#define __LDBL_HAS_DENORM__ 1
2477// ARM-NETBSD:#define __LDBL_HAS_INFINITY__ 1
2478// ARM-NETBSD:#define __LDBL_HAS_QUIET_NAN__ 1
2479// ARM-NETBSD:#define __LDBL_MANT_DIG__ 53
2480// ARM-NETBSD:#define __LDBL_MAX_10_EXP__ 308
2481// ARM-NETBSD:#define __LDBL_MAX_EXP__ 1024
2482// ARM-NETBSD:#define __LDBL_MAX__ 1.7976931348623157e+308L
2483// ARM-NETBSD:#define __LDBL_MIN_10_EXP__ (-307)
2484// ARM-NETBSD:#define __LDBL_MIN_EXP__ (-1021)
2485// ARM-NETBSD:#define __LDBL_MIN__ 2.2250738585072014e-308L
2486// ARM-NETBSD:#define __LITTLE_ENDIAN__ 1
2487// ARM-NETBSD:#define __LONG_LONG_MAX__ 9223372036854775807LL
2488// ARM-NETBSD:#define __LONG_MAX__ 2147483647L
2489// ARM-NETBSD-NOT:#define __LP64__
2490// ARM-NETBSD:#define __POINTER_WIDTH__ 32
2491// ARM-NETBSD:#define __PTRDIFF_TYPE__ long int
2492// ARM-NETBSD:#define __PTRDIFF_WIDTH__ 32
2493// ARM-NETBSD:#define __REGISTER_PREFIX__
2494// ARM-NETBSD:#define __SCHAR_MAX__ 127
2495// ARM-NETBSD:#define __SHRT_MAX__ 32767
Joerg Sonnenbergerb3a49692014-07-17 18:31:20 +00002496// ARM-NETBSD:#define __SIG_ATOMIC_MAX__ 2147483647
Joerg Sonnenberger4645b442014-05-13 18:58:00 +00002497// ARM-NETBSD:#define __SIG_ATOMIC_WIDTH__ 32
2498// ARM-NETBSD:#define __SIZEOF_DOUBLE__ 8
2499// ARM-NETBSD:#define __SIZEOF_FLOAT__ 4
2500// ARM-NETBSD:#define __SIZEOF_INT__ 4
2501// ARM-NETBSD:#define __SIZEOF_LONG_DOUBLE__ 8
2502// ARM-NETBSD:#define __SIZEOF_LONG_LONG__ 8
2503// ARM-NETBSD:#define __SIZEOF_LONG__ 4
2504// ARM-NETBSD:#define __SIZEOF_POINTER__ 4
2505// ARM-NETBSD:#define __SIZEOF_PTRDIFF_T__ 4
2506// ARM-NETBSD:#define __SIZEOF_SHORT__ 2
2507// ARM-NETBSD:#define __SIZEOF_SIZE_T__ 4
2508// ARM-NETBSD:#define __SIZEOF_WCHAR_T__ 4
2509// ARM-NETBSD:#define __SIZEOF_WINT_T__ 4
James Y Knightc97efa42016-02-11 16:51:29 +00002510// ARM-NETBSD:#define __SIZE_MAX__ 4294967295UL
Joerg Sonnenberger4645b442014-05-13 18:58:00 +00002511// ARM-NETBSD:#define __SIZE_TYPE__ long unsigned int
2512// ARM-NETBSD:#define __SIZE_WIDTH__ 32
Joerg Sonnenbergere385cfc2017-07-11 15:50:48 +00002513// ARM-NETBSD:#define __SOFTFP__ 1
James Y Knightc97efa42016-02-11 16:51:29 +00002514// ARM-NETBSD:#define __UINT16_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00002515// ARM-NETBSD:#define __UINT16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00002516// ARM-NETBSD:#define __UINT16_TYPE__ unsigned short
2517// ARM-NETBSD:#define __UINT32_C_SUFFIX__ U
2518// ARM-NETBSD:#define __UINT32_MAX__ 4294967295U
2519// ARM-NETBSD:#define __UINT32_TYPE__ unsigned int
2520// ARM-NETBSD:#define __UINT64_C_SUFFIX__ ULL
2521// ARM-NETBSD:#define __UINT64_MAX__ 18446744073709551615ULL
2522// ARM-NETBSD:#define __UINT64_TYPE__ long long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00002523// ARM-NETBSD:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00002524// ARM-NETBSD:#define __UINT8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00002525// ARM-NETBSD:#define __UINT8_TYPE__ unsigned char
James Y Knightc97efa42016-02-11 16:51:29 +00002526// ARM-NETBSD:#define __UINTMAX_C_SUFFIX__ ULL
JF Bastienab8d0a02014-06-25 01:31:33 +00002527// ARM-NETBSD:#define __UINTMAX_MAX__ 18446744073709551615ULL
Joerg Sonnenberger4645b442014-05-13 18:58:00 +00002528// ARM-NETBSD:#define __UINTMAX_TYPE__ long long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00002529// ARM-NETBSD:#define __UINTMAX_WIDTH__ 64
James Y Knightc97efa42016-02-11 16:51:29 +00002530// ARM-NETBSD:#define __UINTPTR_MAX__ 4294967295UL
Joerg Sonnenberger3809a7a2014-07-14 20:40:56 +00002531// ARM-NETBSD:#define __UINTPTR_TYPE__ long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00002532// ARM-NETBSD:#define __UINTPTR_WIDTH__ 32
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00002533// ARM-NETBSD:#define __UINT_FAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00002534// ARM-NETBSD:#define __UINT_FAST16_TYPE__ unsigned short
2535// ARM-NETBSD:#define __UINT_FAST32_MAX__ 4294967295U
2536// ARM-NETBSD:#define __UINT_FAST32_TYPE__ unsigned int
2537// ARM-NETBSD:#define __UINT_FAST64_MAX__ 18446744073709551615ULL
2538// ARM-NETBSD:#define __UINT_FAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00002539// ARM-NETBSD:#define __UINT_FAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00002540// ARM-NETBSD:#define __UINT_FAST8_TYPE__ unsigned char
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00002541// ARM-NETBSD:#define __UINT_LEAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00002542// ARM-NETBSD:#define __UINT_LEAST16_TYPE__ unsigned short
2543// ARM-NETBSD:#define __UINT_LEAST32_MAX__ 4294967295U
2544// ARM-NETBSD:#define __UINT_LEAST32_TYPE__ unsigned int
2545// ARM-NETBSD:#define __UINT_LEAST64_MAX__ 18446744073709551615ULL
2546// ARM-NETBSD:#define __UINT_LEAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00002547// ARM-NETBSD:#define __UINT_LEAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00002548// ARM-NETBSD:#define __UINT_LEAST8_TYPE__ unsigned char
Joerg Sonnenberger4645b442014-05-13 18:58:00 +00002549// ARM-NETBSD:#define __USER_LABEL_PREFIX__
2550// ARM-NETBSD:#define __WCHAR_MAX__ 2147483647
2551// ARM-NETBSD:#define __WCHAR_TYPE__ int
2552// ARM-NETBSD:#define __WCHAR_WIDTH__ 32
2553// ARM-NETBSD:#define __WINT_TYPE__ int
2554// ARM-NETBSD:#define __WINT_WIDTH__ 32
2555// ARM-NETBSD:#define __arm 1
2556// ARM-NETBSD:#define __arm__ 1
2557
Joerg Sonnenbergere385cfc2017-07-11 15:50:48 +00002558// RUN: %clang -E -dM -ffreestanding -target arm-netbsd-eabihf %s -o - | FileCheck -match-full-lines -check-prefix ARMHF-NETBSD %s
2559// ARMHF-NETBSD:#define __SIZE_WIDTH__ 32
2560// ARMHF-NETBSD-NOT:#define __SOFTFP__ 1
2561// ARMHF-NETBSD:#define __UINT16_C_SUFFIX__
2562
Weiming Zhaob0613132016-04-18 16:25:46 +00002563// RUN: %clang_cc1 -E -dM -ffreestanding -triple=arm-none-eabi < /dev/null | FileCheck -match-full-lines -check-prefix ARM-NONE-EABI %s
Oliver Stannard233310f2017-04-18 13:12:36 +00002564// RUN: %clang_cc1 -E -dM -ffreestanding -triple=arm-none-eabihf < /dev/null | FileCheck -match-full-lines -check-prefix ARM-NONE-EABI %s
2565// RUN: %clang_cc1 -E -dM -ffreestanding -triple=aarch64-none-eabi < /dev/null | FileCheck -match-full-lines -check-prefix ARM-NONE-EABI %s
2566// RUN: %clang_cc1 -E -dM -ffreestanding -triple=aarch64-none-eabihf < /dev/null | FileCheck -match-full-lines -check-prefix ARM-NONE-EABI %s
Weiming Zhaob0613132016-04-18 16:25:46 +00002567// ARM-NONE-EABI: #define __ELF__ 1
2568
Tim Northover862eaf82016-05-13 21:26:45 +00002569// No MachO targets use the full EABI, even if AAPCS is used.
2570// RUN: %clang -target x86_64-apple-darwin -arch armv7s -x c -E -dM %s -o - | FileCheck -match-full-lines --check-prefix=ARM-MACHO-NO-EABI %s
2571// RUN: %clang -target x86_64-apple-darwin -arch armv6m -x c -E -dM %s -o - | FileCheck -match-full-lines --check-prefix=ARM-MACHO-NO-EABI %s
2572// RUN: %clang -target x86_64-apple-darwin -arch armv7m -x c -E -dM %s -o - | FileCheck -match-full-lines --check-prefix=ARM-MACHO-NO-EABI %s
2573// RUN: %clang -target x86_64-apple-darwin -arch armv7em -x c -E -dM %s -o - | FileCheck -match-full-lines --check-prefix=ARM-MACHO-NO-EABI %s
2574// RUN: %clang -target x86_64-apple-darwin -arch armv7 -x c -E -dM %s -o - | FileCheck -match-full-lines --check-prefix=ARM-MACHO-NO-EABI %s
2575// ARM-MACHO-NO-EABI-NOT: #define __ARM_EABI__ 1
Tim Northovere77f78c2013-11-11 19:11:22 +00002576
Silviu Barangaf9671dd2013-10-21 10:54:53 +00002577// Check that -mhwdiv works properly for targets which don't have the hwdiv feature enabled by default.
2578
James Y Knightc97efa42016-02-11 16:51:29 +00002579// 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 +00002580// ARMHWDIV-ARM:#define __ARM_ARCH_EXT_IDIV__ 1
2581
James Y Knightc97efa42016-02-11 16:51:29 +00002582// 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 +00002583// THUMBHWDIV-THUMB:#define __ARM_ARCH_EXT_IDIV__ 1
2584
James Y Knightc97efa42016-02-11 16:51:29 +00002585// 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 +00002586// ARM-FALSE-NOT:#define __ARM_ARCH_EXT_IDIV__
2587
James Y Knightc97efa42016-02-11 16:51:29 +00002588// 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 +00002589// THUMB-FALSE-NOT:#define __ARM_ARCH_EXT_IDIV__
2590
James Y Knightc97efa42016-02-11 16:51:29 +00002591// 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 +00002592// THUMBHWDIV-ARM-FALSE-NOT:#define __ARM_ARCH_EXT_IDIV__
2593
James Y Knightc97efa42016-02-11 16:51:29 +00002594// 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 +00002595// ARMHWDIV-THUMB-FALSE-NOT:#define __ARM_ARCH_EXT_IDIV__
2596
James Y Knightc97efa42016-02-11 16:51:29 +00002597// 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 +00002598// ARMv8: #define __THUMB_INTERWORK__ 1
2599// ARMv8-NOT: #define __thumb2__
2600
James Y Knightc97efa42016-02-11 16:51:29 +00002601// 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 +00002602// ARMebv8: #define __THUMB_INTERWORK__ 1
2603// ARMebv8-NOT: #define __thumb2__
2604
James Y Knightc97efa42016-02-11 16:51:29 +00002605// 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 +00002606// Thumbv8: #define __THUMB_INTERWORK__ 1
James Y Knightc97efa42016-02-11 16:51:29 +00002607// Thumbv8: #define __thumb2__ 1
Weiming Zhaofb5c21a2014-01-22 18:42:13 +00002608
James Y Knightc97efa42016-02-11 16:51:29 +00002609// 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 +00002610// Thumbebv8: #define __THUMB_INTERWORK__ 1
James Y Knightc97efa42016-02-11 16:51:29 +00002611// Thumbebv8: #define __thumb2__ 1
Christian Pirkerf01cd6f2014-03-28 14:40:46 +00002612
James Y Knightc97efa42016-02-11 16:51:29 +00002613// 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 +00002614// Thumbv5: #define __THUMB_INTERWORK__ 1
James Y Knightc97efa42016-02-11 16:51:29 +00002615// Thumbv5-NOT: #define __thumb2__ 1
Weiming Zhaofb5c21a2014-01-22 18:42:13 +00002616
James Y Knightc97efa42016-02-11 16:51:29 +00002617// 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 +00002618// Thumbv6t2: #define __THUMB_INTERWORK__ 1
James Y Knightc97efa42016-02-11 16:51:29 +00002619// Thumbv6t2: #define __thumb2__ 1
Weiming Zhaofb5c21a2014-01-22 18:42:13 +00002620
James Y Knightc97efa42016-02-11 16:51:29 +00002621// 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 +00002622// Thumbv7: #define __THUMB_INTERWORK__ 1
James Y Knightc97efa42016-02-11 16:51:29 +00002623// Thumbv7: #define __thumb2__ 1
Weiming Zhaofb5c21a2014-01-22 18:42:13 +00002624
James Y Knightc97efa42016-02-11 16:51:29 +00002625// 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 +00002626// Thumbebv7: #define __THUMB_INTERWORK__ 1
James Y Knightc97efa42016-02-11 16:51:29 +00002627// Thumbebv7: #define __thumb2__ 1
Christian Pirkerf01cd6f2014-03-28 14:40:46 +00002628
Chris Lattnere963d092009-10-29 04:55:36 +00002629//
James Y Knightc97efa42016-02-11 16:51:29 +00002630// 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 +00002631//
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00002632// I386-NOT:#define _LP64
Tim Northovera6a19f12015-02-06 01:25:07 +00002633// I386:#define __BIGGEST_ALIGNMENT__ 16
Dylan Noblesmith673728f2012-07-27 18:34:31 +00002634// I386:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
Dan Gohman04f87202010-05-28 00:27:15 +00002635// I386:#define __CHAR16_TYPE__ unsigned short
2636// I386:#define __CHAR32_TYPE__ unsigned int
Chris Lattnere963d092009-10-29 04:55:36 +00002637// I386:#define __CHAR_BIT__ 8
2638// I386:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
2639// I386:#define __DBL_DIG__ 15
2640// I386:#define __DBL_EPSILON__ 2.2204460492503131e-16
2641// I386:#define __DBL_HAS_DENORM__ 1
2642// I386:#define __DBL_HAS_INFINITY__ 1
2643// I386:#define __DBL_HAS_QUIET_NAN__ 1
2644// I386:#define __DBL_MANT_DIG__ 53
2645// I386:#define __DBL_MAX_10_EXP__ 308
2646// I386:#define __DBL_MAX_EXP__ 1024
2647// I386:#define __DBL_MAX__ 1.7976931348623157e+308
2648// I386:#define __DBL_MIN_10_EXP__ (-307)
2649// I386:#define __DBL_MIN_EXP__ (-1021)
2650// I386:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00002651// I386:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Chris Lattnere963d092009-10-29 04:55:36 +00002652// I386:#define __FLT_DENORM_MIN__ 1.40129846e-45F
2653// I386:#define __FLT_DIG__ 6
2654// I386:#define __FLT_EPSILON__ 1.19209290e-7F
Benjamin Kramercf501472011-12-28 15:47:06 +00002655// I386:#define __FLT_EVAL_METHOD__ 2
Chris Lattnere963d092009-10-29 04:55:36 +00002656// I386:#define __FLT_HAS_DENORM__ 1
2657// I386:#define __FLT_HAS_INFINITY__ 1
2658// I386:#define __FLT_HAS_QUIET_NAN__ 1
2659// I386:#define __FLT_MANT_DIG__ 24
2660// I386:#define __FLT_MAX_10_EXP__ 38
2661// I386:#define __FLT_MAX_EXP__ 128
2662// I386:#define __FLT_MAX__ 3.40282347e+38F
2663// I386:#define __FLT_MIN_10_EXP__ (-37)
2664// I386:#define __FLT_MIN_EXP__ (-125)
2665// I386:#define __FLT_MIN__ 1.17549435e-38F
2666// I386:#define __FLT_RADIX__ 2
James Y Knightc97efa42016-02-11 16:51:29 +00002667// I386:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002668// I386:#define __INT16_FMTd__ "hd"
2669// I386:#define __INT16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00002670// I386:#define __INT16_MAX__ 32767
Chris Lattnere963d092009-10-29 04:55:36 +00002671// I386:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +00002672// I386:#define __INT32_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002673// I386:#define __INT32_FMTd__ "d"
2674// I386:#define __INT32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00002675// I386:#define __INT32_MAX__ 2147483647
Chris Lattnere963d092009-10-29 04:55:36 +00002676// I386:#define __INT32_TYPE__ int
Ken Dyck2dc8d5f2009-11-16 16:36:33 +00002677// I386:#define __INT64_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002678// I386:#define __INT64_FMTd__ "lld"
2679// I386:#define __INT64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00002680// I386:#define __INT64_MAX__ 9223372036854775807LL
Chris Lattnere963d092009-10-29 04:55:36 +00002681// I386:#define __INT64_TYPE__ long long int
James Y Knightc97efa42016-02-11 16:51:29 +00002682// I386:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002683// I386:#define __INT8_FMTd__ "hhd"
2684// I386:#define __INT8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00002685// I386:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00002686// I386:#define __INT8_TYPE__ signed char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00002687// I386:#define __INTMAX_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002688// I386:#define __INTMAX_FMTd__ "lld"
2689// I386:#define __INTMAX_FMTi__ "lli"
Chris Lattnere963d092009-10-29 04:55:36 +00002690// I386:#define __INTMAX_MAX__ 9223372036854775807LL
Ken Dyck9b25f782009-11-19 13:18:59 +00002691// I386:#define __INTMAX_TYPE__ long long int
Ken Dyckc0c98292009-11-18 13:52:57 +00002692// I386:#define __INTMAX_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002693// I386:#define __INTPTR_FMTd__ "d"
2694// I386:#define __INTPTR_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00002695// I386:#define __INTPTR_MAX__ 2147483647
Ken Dyck9b25f782009-11-19 13:18:59 +00002696// I386:#define __INTPTR_TYPE__ int
Ken Dyck24cfcf12009-11-18 20:05:48 +00002697// I386:#define __INTPTR_WIDTH__ 32
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002698// I386:#define __INT_FAST16_FMTd__ "hd"
2699// I386:#define __INT_FAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00002700// I386:#define __INT_FAST16_MAX__ 32767
2701// I386:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002702// I386:#define __INT_FAST32_FMTd__ "d"
2703// I386:#define __INT_FAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00002704// I386:#define __INT_FAST32_MAX__ 2147483647
2705// I386:#define __INT_FAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002706// I386:#define __INT_FAST64_FMTd__ "lld"
2707// I386:#define __INT_FAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00002708// I386:#define __INT_FAST64_MAX__ 9223372036854775807LL
2709// I386:#define __INT_FAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002710// I386:#define __INT_FAST8_FMTd__ "hhd"
2711// I386:#define __INT_FAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00002712// I386:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00002713// I386:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002714// I386:#define __INT_LEAST16_FMTd__ "hd"
2715// I386:#define __INT_LEAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00002716// I386:#define __INT_LEAST16_MAX__ 32767
2717// I386:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002718// I386:#define __INT_LEAST32_FMTd__ "d"
2719// I386:#define __INT_LEAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00002720// I386:#define __INT_LEAST32_MAX__ 2147483647
2721// I386:#define __INT_LEAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002722// I386:#define __INT_LEAST64_FMTd__ "lld"
2723// I386:#define __INT_LEAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00002724// I386:#define __INT_LEAST64_MAX__ 9223372036854775807LL
2725// I386:#define __INT_LEAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002726// I386:#define __INT_LEAST8_FMTd__ "hhd"
2727// I386:#define __INT_LEAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00002728// I386:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00002729// I386:#define __INT_LEAST8_TYPE__ signed char
Chris Lattnere963d092009-10-29 04:55:36 +00002730// I386:#define __INT_MAX__ 2147483647
2731// I386:#define __LDBL_DENORM_MIN__ 3.64519953188247460253e-4951L
2732// I386:#define __LDBL_DIG__ 18
2733// I386:#define __LDBL_EPSILON__ 1.08420217248550443401e-19L
2734// I386:#define __LDBL_HAS_DENORM__ 1
2735// I386:#define __LDBL_HAS_INFINITY__ 1
2736// I386:#define __LDBL_HAS_QUIET_NAN__ 1
2737// I386:#define __LDBL_MANT_DIG__ 64
2738// I386:#define __LDBL_MAX_10_EXP__ 4932
2739// I386:#define __LDBL_MAX_EXP__ 16384
2740// I386:#define __LDBL_MAX__ 1.18973149535723176502e+4932L
2741// I386:#define __LDBL_MIN_10_EXP__ (-4931)
2742// I386:#define __LDBL_MIN_EXP__ (-16381)
2743// I386:#define __LDBL_MIN__ 3.36210314311209350626e-4932L
2744// I386:#define __LITTLE_ENDIAN__ 1
2745// I386:#define __LONG_LONG_MAX__ 9223372036854775807LL
2746// I386:#define __LONG_MAX__ 2147483647L
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00002747// I386-NOT:#define __LP64__
Chris Lattnere963d092009-10-29 04:55:36 +00002748// I386:#define __NO_MATH_INLINES 1
2749// I386:#define __POINTER_WIDTH__ 32
Ken Dyck9b25f782009-11-19 13:18:59 +00002750// I386:#define __PTRDIFF_TYPE__ int
Ken Dyck056efe02009-11-19 12:21:52 +00002751// I386:#define __PTRDIFF_WIDTH__ 32
James Y Knightc97efa42016-02-11 16:51:29 +00002752// I386:#define __REGISTER_PREFIX__
Chris Lattnere963d092009-10-29 04:55:36 +00002753// I386:#define __SCHAR_MAX__ 127
2754// I386:#define __SHRT_MAX__ 32767
Joerg Sonnenbergerb3a49692014-07-17 18:31:20 +00002755// I386:#define __SIG_ATOMIC_MAX__ 2147483647
Ken Dyckadc85112009-11-22 15:41:04 +00002756// I386:#define __SIG_ATOMIC_WIDTH__ 32
Dan Gohman04f87202010-05-28 00:27:15 +00002757// I386:#define __SIZEOF_DOUBLE__ 8
2758// I386:#define __SIZEOF_FLOAT__ 4
2759// I386:#define __SIZEOF_INT__ 4
2760// I386:#define __SIZEOF_LONG_DOUBLE__ 12
2761// I386:#define __SIZEOF_LONG_LONG__ 8
2762// I386:#define __SIZEOF_LONG__ 4
2763// I386:#define __SIZEOF_POINTER__ 4
2764// I386:#define __SIZEOF_PTRDIFF_T__ 4
2765// I386:#define __SIZEOF_SHORT__ 2
2766// I386:#define __SIZEOF_SIZE_T__ 4
2767// I386:#define __SIZEOF_WCHAR_T__ 4
2768// I386:#define __SIZEOF_WINT_T__ 4
Evgeniy Stepanovc3c725a2013-03-28 08:36:54 +00002769// I386:#define __SIZE_MAX__ 4294967295U
Chris Lattnere963d092009-10-29 04:55:36 +00002770// I386:#define __SIZE_TYPE__ unsigned int
Ken Dyck57512862009-11-19 13:42:09 +00002771// I386:#define __SIZE_WIDTH__ 32
James Y Knightc97efa42016-02-11 16:51:29 +00002772// I386:#define __UINT16_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00002773// I386:#define __UINT16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00002774// I386:#define __UINT16_TYPE__ unsigned short
2775// I386:#define __UINT32_C_SUFFIX__ U
2776// I386:#define __UINT32_MAX__ 4294967295U
2777// I386:#define __UINT32_TYPE__ unsigned int
2778// I386:#define __UINT64_C_SUFFIX__ ULL
2779// I386:#define __UINT64_MAX__ 18446744073709551615ULL
2780// I386:#define __UINT64_TYPE__ long long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00002781// I386:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00002782// I386:#define __UINT8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00002783// I386:#define __UINT8_TYPE__ unsigned char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00002784// I386:#define __UINTMAX_C_SUFFIX__ ULL
JF Bastienab8d0a02014-06-25 01:31:33 +00002785// I386:#define __UINTMAX_MAX__ 18446744073709551615ULL
Ken Dyck9b25f782009-11-19 13:18:59 +00002786// I386:#define __UINTMAX_TYPE__ long long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00002787// I386:#define __UINTMAX_WIDTH__ 64
2788// I386:#define __UINTPTR_MAX__ 4294967295U
2789// I386:#define __UINTPTR_TYPE__ unsigned int
2790// I386:#define __UINTPTR_WIDTH__ 32
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00002791// I386:#define __UINT_FAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00002792// I386:#define __UINT_FAST16_TYPE__ unsigned short
2793// I386:#define __UINT_FAST32_MAX__ 4294967295U
2794// I386:#define __UINT_FAST32_TYPE__ unsigned int
2795// I386:#define __UINT_FAST64_MAX__ 18446744073709551615ULL
2796// I386:#define __UINT_FAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00002797// I386:#define __UINT_FAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00002798// I386:#define __UINT_FAST8_TYPE__ unsigned char
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00002799// I386:#define __UINT_LEAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00002800// I386:#define __UINT_LEAST16_TYPE__ unsigned short
2801// I386:#define __UINT_LEAST32_MAX__ 4294967295U
2802// I386:#define __UINT_LEAST32_TYPE__ unsigned int
2803// I386:#define __UINT_LEAST64_MAX__ 18446744073709551615ULL
2804// I386:#define __UINT_LEAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00002805// I386:#define __UINT_LEAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00002806// I386:#define __UINT_LEAST8_TYPE__ unsigned char
James Y Knightb214cbc2016-03-04 19:00:41 +00002807// I386:#define __USER_LABEL_PREFIX__
Chris Lattnere963d092009-10-29 04:55:36 +00002808// I386:#define __WCHAR_MAX__ 2147483647
2809// I386:#define __WCHAR_TYPE__ int
Ken Dyck0138b9e2009-11-19 15:47:58 +00002810// I386:#define __WCHAR_WIDTH__ 32
Chris Lattnere963d092009-10-29 04:55:36 +00002811// I386:#define __WINT_TYPE__ int
Ken Dycka1f677c2009-11-19 14:16:57 +00002812// I386:#define __WINT_WIDTH__ 32
Chris Lattnere963d092009-10-29 04:55:36 +00002813// I386:#define __i386 1
2814// I386:#define __i386__ 1
Chris Lattnere963d092009-10-29 04:55:36 +00002815// I386:#define i386 1
2816//
James Y Knightc97efa42016-02-11 16:51:29 +00002817// RUN: %clang_cc1 -E -dM -ffreestanding -triple=i386-pc-linux-gnu -target-cpu pentium4 < /dev/null | FileCheck -match-full-lines -check-prefix I386-LINUX %s
Richard Smith59139022016-09-30 22:41:36 +00002818// RUN: %clang_cc1 -x c++ -E -dM -ffreestanding -triple=i386-pc-linux-gnu -target-cpu pentium4 < /dev/null | FileCheck -match-full-lines -check-prefix I386-LINUX -check-prefix I386-LINUX-CXX %s
Douglas Gregore6d6e512011-01-12 21:19:25 +00002819//
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00002820// I386-LINUX-NOT:#define _LP64
Tim Northovera6a19f12015-02-06 01:25:07 +00002821// I386-LINUX:#define __BIGGEST_ALIGNMENT__ 16
Dylan Noblesmith673728f2012-07-27 18:34:31 +00002822// I386-LINUX:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
Douglas Gregore6d6e512011-01-12 21:19:25 +00002823// I386-LINUX:#define __CHAR16_TYPE__ unsigned short
2824// I386-LINUX:#define __CHAR32_TYPE__ unsigned int
2825// I386-LINUX:#define __CHAR_BIT__ 8
2826// I386-LINUX:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
2827// I386-LINUX:#define __DBL_DIG__ 15
2828// I386-LINUX:#define __DBL_EPSILON__ 2.2204460492503131e-16
2829// I386-LINUX:#define __DBL_HAS_DENORM__ 1
2830// I386-LINUX:#define __DBL_HAS_INFINITY__ 1
2831// I386-LINUX:#define __DBL_HAS_QUIET_NAN__ 1
2832// I386-LINUX:#define __DBL_MANT_DIG__ 53
2833// I386-LINUX:#define __DBL_MAX_10_EXP__ 308
2834// I386-LINUX:#define __DBL_MAX_EXP__ 1024
2835// I386-LINUX:#define __DBL_MAX__ 1.7976931348623157e+308
2836// I386-LINUX:#define __DBL_MIN_10_EXP__ (-307)
2837// I386-LINUX:#define __DBL_MIN_EXP__ (-1021)
2838// I386-LINUX:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00002839// I386-LINUX:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Douglas Gregore6d6e512011-01-12 21:19:25 +00002840// I386-LINUX:#define __FLT_DENORM_MIN__ 1.40129846e-45F
2841// I386-LINUX:#define __FLT_DIG__ 6
2842// I386-LINUX:#define __FLT_EPSILON__ 1.19209290e-7F
2843// I386-LINUX:#define __FLT_EVAL_METHOD__ 0
2844// I386-LINUX:#define __FLT_HAS_DENORM__ 1
2845// I386-LINUX:#define __FLT_HAS_INFINITY__ 1
2846// I386-LINUX:#define __FLT_HAS_QUIET_NAN__ 1
2847// I386-LINUX:#define __FLT_MANT_DIG__ 24
2848// I386-LINUX:#define __FLT_MAX_10_EXP__ 38
2849// I386-LINUX:#define __FLT_MAX_EXP__ 128
2850// I386-LINUX:#define __FLT_MAX__ 3.40282347e+38F
2851// I386-LINUX:#define __FLT_MIN_10_EXP__ (-37)
2852// I386-LINUX:#define __FLT_MIN_EXP__ (-125)
2853// I386-LINUX:#define __FLT_MIN__ 1.17549435e-38F
2854// I386-LINUX:#define __FLT_RADIX__ 2
James Y Knightc97efa42016-02-11 16:51:29 +00002855// I386-LINUX:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002856// I386-LINUX:#define __INT16_FMTd__ "hd"
2857// I386-LINUX:#define __INT16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00002858// I386-LINUX:#define __INT16_MAX__ 32767
Douglas Gregore6d6e512011-01-12 21:19:25 +00002859// I386-LINUX:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +00002860// I386-LINUX:#define __INT32_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002861// I386-LINUX:#define __INT32_FMTd__ "d"
2862// I386-LINUX:#define __INT32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00002863// I386-LINUX:#define __INT32_MAX__ 2147483647
Douglas Gregore6d6e512011-01-12 21:19:25 +00002864// I386-LINUX:#define __INT32_TYPE__ int
2865// I386-LINUX:#define __INT64_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002866// I386-LINUX:#define __INT64_FMTd__ "lld"
2867// I386-LINUX:#define __INT64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00002868// I386-LINUX:#define __INT64_MAX__ 9223372036854775807LL
Douglas Gregore6d6e512011-01-12 21:19:25 +00002869// I386-LINUX:#define __INT64_TYPE__ long long int
James Y Knightc97efa42016-02-11 16:51:29 +00002870// I386-LINUX:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002871// I386-LINUX:#define __INT8_FMTd__ "hhd"
2872// I386-LINUX:#define __INT8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00002873// I386-LINUX:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00002874// I386-LINUX:#define __INT8_TYPE__ signed char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00002875// I386-LINUX:#define __INTMAX_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002876// I386-LINUX:#define __INTMAX_FMTd__ "lld"
2877// I386-LINUX:#define __INTMAX_FMTi__ "lli"
Douglas Gregore6d6e512011-01-12 21:19:25 +00002878// I386-LINUX:#define __INTMAX_MAX__ 9223372036854775807LL
2879// I386-LINUX:#define __INTMAX_TYPE__ long long int
2880// I386-LINUX:#define __INTMAX_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002881// I386-LINUX:#define __INTPTR_FMTd__ "d"
2882// I386-LINUX:#define __INTPTR_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00002883// I386-LINUX:#define __INTPTR_MAX__ 2147483647
Douglas Gregore6d6e512011-01-12 21:19:25 +00002884// I386-LINUX:#define __INTPTR_TYPE__ int
2885// I386-LINUX:#define __INTPTR_WIDTH__ 32
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002886// I386-LINUX:#define __INT_FAST16_FMTd__ "hd"
2887// I386-LINUX:#define __INT_FAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00002888// I386-LINUX:#define __INT_FAST16_MAX__ 32767
2889// I386-LINUX:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002890// I386-LINUX:#define __INT_FAST32_FMTd__ "d"
2891// I386-LINUX:#define __INT_FAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00002892// I386-LINUX:#define __INT_FAST32_MAX__ 2147483647
2893// I386-LINUX:#define __INT_FAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002894// I386-LINUX:#define __INT_FAST64_FMTd__ "lld"
2895// I386-LINUX:#define __INT_FAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00002896// I386-LINUX:#define __INT_FAST64_MAX__ 9223372036854775807LL
2897// I386-LINUX:#define __INT_FAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002898// I386-LINUX:#define __INT_FAST8_FMTd__ "hhd"
2899// I386-LINUX:#define __INT_FAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00002900// I386-LINUX:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00002901// I386-LINUX:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002902// I386-LINUX:#define __INT_LEAST16_FMTd__ "hd"
2903// I386-LINUX:#define __INT_LEAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00002904// I386-LINUX:#define __INT_LEAST16_MAX__ 32767
2905// I386-LINUX:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002906// I386-LINUX:#define __INT_LEAST32_FMTd__ "d"
2907// I386-LINUX:#define __INT_LEAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00002908// I386-LINUX:#define __INT_LEAST32_MAX__ 2147483647
2909// I386-LINUX:#define __INT_LEAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002910// I386-LINUX:#define __INT_LEAST64_FMTd__ "lld"
2911// I386-LINUX:#define __INT_LEAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00002912// I386-LINUX:#define __INT_LEAST64_MAX__ 9223372036854775807LL
2913// I386-LINUX:#define __INT_LEAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002914// I386-LINUX:#define __INT_LEAST8_FMTd__ "hhd"
2915// I386-LINUX:#define __INT_LEAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00002916// I386-LINUX:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00002917// I386-LINUX:#define __INT_LEAST8_TYPE__ signed char
Douglas Gregore6d6e512011-01-12 21:19:25 +00002918// I386-LINUX:#define __INT_MAX__ 2147483647
2919// I386-LINUX:#define __LDBL_DENORM_MIN__ 3.64519953188247460253e-4951L
2920// I386-LINUX:#define __LDBL_DIG__ 18
2921// I386-LINUX:#define __LDBL_EPSILON__ 1.08420217248550443401e-19L
2922// I386-LINUX:#define __LDBL_HAS_DENORM__ 1
2923// I386-LINUX:#define __LDBL_HAS_INFINITY__ 1
2924// I386-LINUX:#define __LDBL_HAS_QUIET_NAN__ 1
2925// I386-LINUX:#define __LDBL_MANT_DIG__ 64
2926// I386-LINUX:#define __LDBL_MAX_10_EXP__ 4932
2927// I386-LINUX:#define __LDBL_MAX_EXP__ 16384
2928// I386-LINUX:#define __LDBL_MAX__ 1.18973149535723176502e+4932L
2929// I386-LINUX:#define __LDBL_MIN_10_EXP__ (-4931)
2930// I386-LINUX:#define __LDBL_MIN_EXP__ (-16381)
2931// I386-LINUX:#define __LDBL_MIN__ 3.36210314311209350626e-4932L
2932// I386-LINUX:#define __LITTLE_ENDIAN__ 1
2933// I386-LINUX:#define __LONG_LONG_MAX__ 9223372036854775807LL
2934// I386-LINUX:#define __LONG_MAX__ 2147483647L
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00002935// I386-LINUX-NOT:#define __LP64__
Douglas Gregore6d6e512011-01-12 21:19:25 +00002936// I386-LINUX:#define __NO_MATH_INLINES 1
2937// I386-LINUX:#define __POINTER_WIDTH__ 32
2938// I386-LINUX:#define __PTRDIFF_TYPE__ int
2939// I386-LINUX:#define __PTRDIFF_WIDTH__ 32
James Y Knightc97efa42016-02-11 16:51:29 +00002940// I386-LINUX:#define __REGISTER_PREFIX__
Douglas Gregore6d6e512011-01-12 21:19:25 +00002941// I386-LINUX:#define __SCHAR_MAX__ 127
2942// I386-LINUX:#define __SHRT_MAX__ 32767
Joerg Sonnenbergerb3a49692014-07-17 18:31:20 +00002943// I386-LINUX:#define __SIG_ATOMIC_MAX__ 2147483647
Douglas Gregore6d6e512011-01-12 21:19:25 +00002944// I386-LINUX:#define __SIG_ATOMIC_WIDTH__ 32
2945// I386-LINUX:#define __SIZEOF_DOUBLE__ 8
2946// I386-LINUX:#define __SIZEOF_FLOAT__ 4
2947// I386-LINUX:#define __SIZEOF_INT__ 4
2948// I386-LINUX:#define __SIZEOF_LONG_DOUBLE__ 12
2949// I386-LINUX:#define __SIZEOF_LONG_LONG__ 8
2950// I386-LINUX:#define __SIZEOF_LONG__ 4
2951// I386-LINUX:#define __SIZEOF_POINTER__ 4
2952// I386-LINUX:#define __SIZEOF_PTRDIFF_T__ 4
2953// I386-LINUX:#define __SIZEOF_SHORT__ 2
2954// I386-LINUX:#define __SIZEOF_SIZE_T__ 4
2955// I386-LINUX:#define __SIZEOF_WCHAR_T__ 4
2956// I386-LINUX:#define __SIZEOF_WINT_T__ 4
Evgeniy Stepanovc3c725a2013-03-28 08:36:54 +00002957// I386-LINUX:#define __SIZE_MAX__ 4294967295U
Douglas Gregore6d6e512011-01-12 21:19:25 +00002958// I386-LINUX:#define __SIZE_TYPE__ unsigned int
2959// I386-LINUX:#define __SIZE_WIDTH__ 32
Richard Smith59139022016-09-30 22:41:36 +00002960// I386-LINUX-CXX:#define __STDCPP_DEFAULT_NEW_ALIGNMENT__ 8U
James Y Knightc97efa42016-02-11 16:51:29 +00002961// I386-LINUX:#define __UINT16_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00002962// I386-LINUX:#define __UINT16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00002963// I386-LINUX:#define __UINT16_TYPE__ unsigned short
2964// I386-LINUX:#define __UINT32_C_SUFFIX__ U
2965// I386-LINUX:#define __UINT32_MAX__ 4294967295U
2966// I386-LINUX:#define __UINT32_TYPE__ unsigned int
2967// I386-LINUX:#define __UINT64_C_SUFFIX__ ULL
2968// I386-LINUX:#define __UINT64_MAX__ 18446744073709551615ULL
2969// I386-LINUX:#define __UINT64_TYPE__ long long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00002970// I386-LINUX:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00002971// I386-LINUX:#define __UINT8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00002972// I386-LINUX:#define __UINT8_TYPE__ unsigned char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00002973// I386-LINUX:#define __UINTMAX_C_SUFFIX__ ULL
JF Bastienab8d0a02014-06-25 01:31:33 +00002974// I386-LINUX:#define __UINTMAX_MAX__ 18446744073709551615ULL
Douglas Gregore6d6e512011-01-12 21:19:25 +00002975// I386-LINUX:#define __UINTMAX_TYPE__ long long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00002976// I386-LINUX:#define __UINTMAX_WIDTH__ 64
2977// I386-LINUX:#define __UINTPTR_MAX__ 4294967295U
2978// I386-LINUX:#define __UINTPTR_TYPE__ unsigned int
2979// I386-LINUX:#define __UINTPTR_WIDTH__ 32
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00002980// I386-LINUX:#define __UINT_FAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00002981// I386-LINUX:#define __UINT_FAST16_TYPE__ unsigned short
2982// I386-LINUX:#define __UINT_FAST32_MAX__ 4294967295U
2983// I386-LINUX:#define __UINT_FAST32_TYPE__ unsigned int
2984// I386-LINUX:#define __UINT_FAST64_MAX__ 18446744073709551615ULL
2985// I386-LINUX:#define __UINT_FAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00002986// I386-LINUX:#define __UINT_FAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00002987// I386-LINUX:#define __UINT_FAST8_TYPE__ unsigned char
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00002988// I386-LINUX:#define __UINT_LEAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00002989// I386-LINUX:#define __UINT_LEAST16_TYPE__ unsigned short
2990// I386-LINUX:#define __UINT_LEAST32_MAX__ 4294967295U
2991// I386-LINUX:#define __UINT_LEAST32_TYPE__ unsigned int
2992// I386-LINUX:#define __UINT_LEAST64_MAX__ 18446744073709551615ULL
2993// I386-LINUX:#define __UINT_LEAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00002994// I386-LINUX:#define __UINT_LEAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00002995// I386-LINUX:#define __UINT_LEAST8_TYPE__ unsigned char
Douglas Gregore6d6e512011-01-12 21:19:25 +00002996// I386-LINUX:#define __USER_LABEL_PREFIX__
2997// I386-LINUX:#define __WCHAR_MAX__ 2147483647
2998// I386-LINUX:#define __WCHAR_TYPE__ int
2999// I386-LINUX:#define __WCHAR_WIDTH__ 32
3000// I386-LINUX:#define __WINT_TYPE__ unsigned int
3001// I386-LINUX:#define __WINT_WIDTH__ 32
3002// I386-LINUX:#define __i386 1
3003// I386-LINUX:#define __i386__ 1
Douglas Gregore6d6e512011-01-12 21:19:25 +00003004// I386-LINUX:#define i386 1
3005//
James Y Knightc97efa42016-02-11 16:51:29 +00003006// RUN: %clang_cc1 -E -dM -ffreestanding -triple=i386-netbsd < /dev/null | FileCheck -match-full-lines -check-prefix I386-NETBSD %s
Richard Smith59139022016-09-30 22:41:36 +00003007// RUN: %clang_cc1 -x c++ -E -dM -ffreestanding -triple=i386-netbsd < /dev/null | FileCheck -match-full-lines -check-prefix I386-NETBSD -check-prefix I386-NETBSD-CXX %s
Joerg Sonnenberger0e921f22013-11-11 14:00:37 +00003008//
3009// I386-NETBSD-NOT:#define _LP64
Tim Northovera6a19f12015-02-06 01:25:07 +00003010// I386-NETBSD:#define __BIGGEST_ALIGNMENT__ 16
Joerg Sonnenberger0e921f22013-11-11 14:00:37 +00003011// I386-NETBSD:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
3012// I386-NETBSD:#define __CHAR16_TYPE__ unsigned short
3013// I386-NETBSD:#define __CHAR32_TYPE__ unsigned int
3014// I386-NETBSD:#define __CHAR_BIT__ 8
3015// I386-NETBSD:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
3016// I386-NETBSD:#define __DBL_DIG__ 15
3017// I386-NETBSD:#define __DBL_EPSILON__ 2.2204460492503131e-16
3018// I386-NETBSD:#define __DBL_HAS_DENORM__ 1
3019// I386-NETBSD:#define __DBL_HAS_INFINITY__ 1
3020// I386-NETBSD:#define __DBL_HAS_QUIET_NAN__ 1
3021// I386-NETBSD:#define __DBL_MANT_DIG__ 53
3022// I386-NETBSD:#define __DBL_MAX_10_EXP__ 308
3023// I386-NETBSD:#define __DBL_MAX_EXP__ 1024
3024// I386-NETBSD:#define __DBL_MAX__ 1.7976931348623157e+308
3025// I386-NETBSD:#define __DBL_MIN_10_EXP__ (-307)
3026// I386-NETBSD:#define __DBL_MIN_EXP__ (-1021)
3027// I386-NETBSD:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00003028// I386-NETBSD:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Joerg Sonnenberger0e921f22013-11-11 14:00:37 +00003029// I386-NETBSD:#define __FLT_DENORM_MIN__ 1.40129846e-45F
3030// I386-NETBSD:#define __FLT_DIG__ 6
3031// I386-NETBSD:#define __FLT_EPSILON__ 1.19209290e-7F
3032// I386-NETBSD:#define __FLT_EVAL_METHOD__ 2
3033// I386-NETBSD:#define __FLT_HAS_DENORM__ 1
3034// I386-NETBSD:#define __FLT_HAS_INFINITY__ 1
3035// I386-NETBSD:#define __FLT_HAS_QUIET_NAN__ 1
3036// I386-NETBSD:#define __FLT_MANT_DIG__ 24
3037// I386-NETBSD:#define __FLT_MAX_10_EXP__ 38
3038// I386-NETBSD:#define __FLT_MAX_EXP__ 128
3039// I386-NETBSD:#define __FLT_MAX__ 3.40282347e+38F
3040// I386-NETBSD:#define __FLT_MIN_10_EXP__ (-37)
3041// I386-NETBSD:#define __FLT_MIN_EXP__ (-125)
3042// I386-NETBSD:#define __FLT_MIN__ 1.17549435e-38F
3043// I386-NETBSD:#define __FLT_RADIX__ 2
James Y Knightc97efa42016-02-11 16:51:29 +00003044// I386-NETBSD:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003045// I386-NETBSD:#define __INT16_FMTd__ "hd"
3046// I386-NETBSD:#define __INT16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00003047// I386-NETBSD:#define __INT16_MAX__ 32767
Joerg Sonnenberger0e921f22013-11-11 14:00:37 +00003048// I386-NETBSD:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +00003049// I386-NETBSD:#define __INT32_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003050// I386-NETBSD:#define __INT32_FMTd__ "d"
3051// I386-NETBSD:#define __INT32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00003052// I386-NETBSD:#define __INT32_MAX__ 2147483647
Joerg Sonnenberger0e921f22013-11-11 14:00:37 +00003053// I386-NETBSD:#define __INT32_TYPE__ int
3054// I386-NETBSD:#define __INT64_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003055// I386-NETBSD:#define __INT64_FMTd__ "lld"
3056// I386-NETBSD:#define __INT64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00003057// I386-NETBSD:#define __INT64_MAX__ 9223372036854775807LL
Joerg Sonnenberger0e921f22013-11-11 14:00:37 +00003058// I386-NETBSD:#define __INT64_TYPE__ long long int
James Y Knightc97efa42016-02-11 16:51:29 +00003059// I386-NETBSD:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003060// I386-NETBSD:#define __INT8_FMTd__ "hhd"
3061// I386-NETBSD:#define __INT8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00003062// I386-NETBSD:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00003063// I386-NETBSD:#define __INT8_TYPE__ signed char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00003064// I386-NETBSD:#define __INTMAX_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003065// I386-NETBSD:#define __INTMAX_FMTd__ "lld"
3066// I386-NETBSD:#define __INTMAX_FMTi__ "lli"
Joerg Sonnenberger0e921f22013-11-11 14:00:37 +00003067// I386-NETBSD:#define __INTMAX_MAX__ 9223372036854775807LL
3068// I386-NETBSD:#define __INTMAX_TYPE__ long long int
3069// I386-NETBSD:#define __INTMAX_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003070// I386-NETBSD:#define __INTPTR_FMTd__ "d"
3071// I386-NETBSD:#define __INTPTR_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00003072// I386-NETBSD:#define __INTPTR_MAX__ 2147483647
Joerg Sonnenberger0e921f22013-11-11 14:00:37 +00003073// I386-NETBSD:#define __INTPTR_TYPE__ int
3074// I386-NETBSD:#define __INTPTR_WIDTH__ 32
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003075// I386-NETBSD:#define __INT_FAST16_FMTd__ "hd"
3076// I386-NETBSD:#define __INT_FAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00003077// I386-NETBSD:#define __INT_FAST16_MAX__ 32767
3078// I386-NETBSD:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003079// I386-NETBSD:#define __INT_FAST32_FMTd__ "d"
3080// I386-NETBSD:#define __INT_FAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00003081// I386-NETBSD:#define __INT_FAST32_MAX__ 2147483647
3082// I386-NETBSD:#define __INT_FAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003083// I386-NETBSD:#define __INT_FAST64_FMTd__ "lld"
3084// I386-NETBSD:#define __INT_FAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00003085// I386-NETBSD:#define __INT_FAST64_MAX__ 9223372036854775807LL
3086// I386-NETBSD:#define __INT_FAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003087// I386-NETBSD:#define __INT_FAST8_FMTd__ "hhd"
3088// I386-NETBSD:#define __INT_FAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00003089// I386-NETBSD:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00003090// I386-NETBSD:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003091// I386-NETBSD:#define __INT_LEAST16_FMTd__ "hd"
3092// I386-NETBSD:#define __INT_LEAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00003093// I386-NETBSD:#define __INT_LEAST16_MAX__ 32767
3094// I386-NETBSD:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003095// I386-NETBSD:#define __INT_LEAST32_FMTd__ "d"
3096// I386-NETBSD:#define __INT_LEAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00003097// I386-NETBSD:#define __INT_LEAST32_MAX__ 2147483647
3098// I386-NETBSD:#define __INT_LEAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003099// I386-NETBSD:#define __INT_LEAST64_FMTd__ "lld"
3100// I386-NETBSD:#define __INT_LEAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00003101// I386-NETBSD:#define __INT_LEAST64_MAX__ 9223372036854775807LL
3102// I386-NETBSD:#define __INT_LEAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003103// I386-NETBSD:#define __INT_LEAST8_FMTd__ "hhd"
3104// I386-NETBSD:#define __INT_LEAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00003105// I386-NETBSD:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00003106// I386-NETBSD:#define __INT_LEAST8_TYPE__ signed char
Joerg Sonnenberger0e921f22013-11-11 14:00:37 +00003107// I386-NETBSD:#define __INT_MAX__ 2147483647
3108// I386-NETBSD:#define __LDBL_DENORM_MIN__ 3.64519953188247460253e-4951L
3109// I386-NETBSD:#define __LDBL_DIG__ 18
3110// I386-NETBSD:#define __LDBL_EPSILON__ 1.08420217248550443401e-19L
3111// I386-NETBSD:#define __LDBL_HAS_DENORM__ 1
3112// I386-NETBSD:#define __LDBL_HAS_INFINITY__ 1
3113// I386-NETBSD:#define __LDBL_HAS_QUIET_NAN__ 1
3114// I386-NETBSD:#define __LDBL_MANT_DIG__ 64
3115// I386-NETBSD:#define __LDBL_MAX_10_EXP__ 4932
3116// I386-NETBSD:#define __LDBL_MAX_EXP__ 16384
3117// I386-NETBSD:#define __LDBL_MAX__ 1.18973149535723176502e+4932L
3118// I386-NETBSD:#define __LDBL_MIN_10_EXP__ (-4931)
3119// I386-NETBSD:#define __LDBL_MIN_EXP__ (-16381)
3120// I386-NETBSD:#define __LDBL_MIN__ 3.36210314311209350626e-4932L
3121// I386-NETBSD:#define __LITTLE_ENDIAN__ 1
3122// I386-NETBSD:#define __LONG_LONG_MAX__ 9223372036854775807LL
3123// I386-NETBSD:#define __LONG_MAX__ 2147483647L
3124// I386-NETBSD-NOT:#define __LP64__
3125// I386-NETBSD:#define __NO_MATH_INLINES 1
3126// I386-NETBSD:#define __POINTER_WIDTH__ 32
3127// I386-NETBSD:#define __PTRDIFF_TYPE__ int
3128// I386-NETBSD:#define __PTRDIFF_WIDTH__ 32
James Y Knightc97efa42016-02-11 16:51:29 +00003129// I386-NETBSD:#define __REGISTER_PREFIX__
Joerg Sonnenberger0e921f22013-11-11 14:00:37 +00003130// I386-NETBSD:#define __SCHAR_MAX__ 127
3131// I386-NETBSD:#define __SHRT_MAX__ 32767
Joerg Sonnenbergerb3a49692014-07-17 18:31:20 +00003132// I386-NETBSD:#define __SIG_ATOMIC_MAX__ 2147483647
Joerg Sonnenberger0e921f22013-11-11 14:00:37 +00003133// I386-NETBSD:#define __SIG_ATOMIC_WIDTH__ 32
3134// I386-NETBSD:#define __SIZEOF_DOUBLE__ 8
3135// I386-NETBSD:#define __SIZEOF_FLOAT__ 4
3136// I386-NETBSD:#define __SIZEOF_INT__ 4
3137// I386-NETBSD:#define __SIZEOF_LONG_DOUBLE__ 12
3138// I386-NETBSD:#define __SIZEOF_LONG_LONG__ 8
3139// I386-NETBSD:#define __SIZEOF_LONG__ 4
3140// I386-NETBSD:#define __SIZEOF_POINTER__ 4
3141// I386-NETBSD:#define __SIZEOF_PTRDIFF_T__ 4
3142// I386-NETBSD:#define __SIZEOF_SHORT__ 2
3143// I386-NETBSD:#define __SIZEOF_SIZE_T__ 4
3144// I386-NETBSD:#define __SIZEOF_WCHAR_T__ 4
3145// I386-NETBSD:#define __SIZEOF_WINT_T__ 4
3146// I386-NETBSD:#define __SIZE_MAX__ 4294967295U
3147// I386-NETBSD:#define __SIZE_TYPE__ unsigned int
3148// I386-NETBSD:#define __SIZE_WIDTH__ 32
Richard Smith59139022016-09-30 22:41:36 +00003149// I386-NETBSD-CXX:#define __STDCPP_DEFAULT_NEW_ALIGNMENT__ 4U
James Y Knightc97efa42016-02-11 16:51:29 +00003150// I386-NETBSD:#define __UINT16_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00003151// I386-NETBSD:#define __UINT16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00003152// I386-NETBSD:#define __UINT16_TYPE__ unsigned short
3153// I386-NETBSD:#define __UINT32_C_SUFFIX__ U
3154// I386-NETBSD:#define __UINT32_MAX__ 4294967295U
3155// I386-NETBSD:#define __UINT32_TYPE__ unsigned int
3156// I386-NETBSD:#define __UINT64_C_SUFFIX__ ULL
3157// I386-NETBSD:#define __UINT64_MAX__ 18446744073709551615ULL
3158// I386-NETBSD:#define __UINT64_TYPE__ long long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00003159// I386-NETBSD:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00003160// I386-NETBSD:#define __UINT8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00003161// I386-NETBSD:#define __UINT8_TYPE__ unsigned char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00003162// I386-NETBSD:#define __UINTMAX_C_SUFFIX__ ULL
JF Bastienab8d0a02014-06-25 01:31:33 +00003163// I386-NETBSD:#define __UINTMAX_MAX__ 18446744073709551615ULL
Joerg Sonnenberger0e921f22013-11-11 14:00:37 +00003164// I386-NETBSD:#define __UINTMAX_TYPE__ long long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00003165// I386-NETBSD:#define __UINTMAX_WIDTH__ 64
3166// I386-NETBSD:#define __UINTPTR_MAX__ 4294967295U
3167// I386-NETBSD:#define __UINTPTR_TYPE__ unsigned int
3168// I386-NETBSD:#define __UINTPTR_WIDTH__ 32
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00003169// I386-NETBSD:#define __UINT_FAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00003170// I386-NETBSD:#define __UINT_FAST16_TYPE__ unsigned short
3171// I386-NETBSD:#define __UINT_FAST32_MAX__ 4294967295U
3172// I386-NETBSD:#define __UINT_FAST32_TYPE__ unsigned int
3173// I386-NETBSD:#define __UINT_FAST64_MAX__ 18446744073709551615ULL
3174// I386-NETBSD:#define __UINT_FAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00003175// I386-NETBSD:#define __UINT_FAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00003176// I386-NETBSD:#define __UINT_FAST8_TYPE__ unsigned char
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00003177// I386-NETBSD:#define __UINT_LEAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00003178// I386-NETBSD:#define __UINT_LEAST16_TYPE__ unsigned short
3179// I386-NETBSD:#define __UINT_LEAST32_MAX__ 4294967295U
3180// I386-NETBSD:#define __UINT_LEAST32_TYPE__ unsigned int
3181// I386-NETBSD:#define __UINT_LEAST64_MAX__ 18446744073709551615ULL
3182// I386-NETBSD:#define __UINT_LEAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00003183// I386-NETBSD:#define __UINT_LEAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00003184// I386-NETBSD:#define __UINT_LEAST8_TYPE__ unsigned char
Joerg Sonnenberger0e921f22013-11-11 14:00:37 +00003185// I386-NETBSD:#define __USER_LABEL_PREFIX__
3186// I386-NETBSD:#define __WCHAR_MAX__ 2147483647
3187// I386-NETBSD:#define __WCHAR_TYPE__ int
3188// I386-NETBSD:#define __WCHAR_WIDTH__ 32
3189// I386-NETBSD:#define __WINT_TYPE__ int
3190// I386-NETBSD:#define __WINT_WIDTH__ 32
3191// I386-NETBSD:#define __i386 1
3192// I386-NETBSD:#define __i386__ 1
3193// I386-NETBSD:#define i386 1
3194//
James Y Knightc97efa42016-02-11 16:51:29 +00003195// 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 +00003196// I386-NETBSD-SSE:#define __FLT_EVAL_METHOD__ 0
James Y Knightc97efa42016-02-11 16:51:29 +00003197// 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 +00003198// I386-NETBSD6:#define __FLT_EVAL_METHOD__ 1
James Y Knightc97efa42016-02-11 16:51:29 +00003199// 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 +00003200// I386-NETBSD6-SSE:#define __FLT_EVAL_METHOD__ 1
3201
James Y Knightc97efa42016-02-11 16:51:29 +00003202// RUN: %clang_cc1 -E -dM -triple=i686-pc-mingw32 < /dev/null | FileCheck -match-full-lines -check-prefix I386-DECLSPEC %s
3203// RUN: %clang_cc1 -E -dM -fms-extensions -triple=i686-pc-mingw32 < /dev/null | FileCheck -match-full-lines -check-prefix I386-DECLSPEC %s
3204// RUN: %clang_cc1 -E -dM -triple=i686-unknown-cygwin < /dev/null | FileCheck -match-full-lines -check-prefix I386-DECLSPEC %s
3205// RUN: %clang_cc1 -E -dM -fms-extensions -triple=i686-unknown-cygwin < /dev/null | FileCheck -match-full-lines -check-prefix I386-DECLSPEC %s
3206// I386-DECLSPEC: #define __declspec{{.*}}
David Majnemerae1ed0e2015-05-28 04:36:18 +00003207
Joerg Sonnenberger0e921f22013-11-11 14:00:37 +00003208//
Richard Smith59139022016-09-30 22:41:36 +00003209// RUN: %clang_cc1 -E -dM -ffreestanding -triple=mips-none-none < /dev/null | FileCheck -match-full-lines -check-prefix MIPS32BE -check-prefix MIPS32BE-C %s
3210// RUN: %clang_cc1 -x c++ -E -dM -ffreestanding -triple=mips-none-none < /dev/null | FileCheck -match-full-lines -check-prefix MIPS32BE -check-prefix MIPS32BE-CXX %s
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003211//
3212// MIPS32BE:#define MIPSEB 1
3213// MIPS32BE:#define _ABIO32 1
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00003214// MIPS32BE-NOT:#define _LP64
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003215// MIPS32BE:#define _MIPSEB 1
Simon Atanasyan1a3665b62014-01-27 13:59:04 +00003216// MIPS32BE:#define _MIPS_ARCH "mips32r2"
3217// MIPS32BE:#define _MIPS_ARCH_MIPS32R2 1
Simon Atanasyan2c97a812013-10-18 13:13:53 +00003218// MIPS32BE:#define _MIPS_FPSET 16
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003219// MIPS32BE:#define _MIPS_SIM _ABIO32
3220// MIPS32BE:#define _MIPS_SZINT 32
3221// MIPS32BE:#define _MIPS_SZLONG 32
3222// MIPS32BE:#define _MIPS_SZPTR 32
Tim Northovera6a19f12015-02-06 01:25:07 +00003223// MIPS32BE:#define __BIGGEST_ALIGNMENT__ 8
Robert Lytton2c942c62014-03-10 12:06:29 +00003224// MIPS32BE:#define __BIG_ENDIAN__ 1
Dylan Noblesmith673728f2012-07-27 18:34:31 +00003225// MIPS32BE:#define __BYTE_ORDER__ __ORDER_BIG_ENDIAN__
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003226// MIPS32BE:#define __CHAR16_TYPE__ unsigned short
3227// MIPS32BE:#define __CHAR32_TYPE__ unsigned int
3228// MIPS32BE:#define __CHAR_BIT__ 8
3229// MIPS32BE:#define __CONSTANT_CFSTRINGS__ 1
3230// MIPS32BE:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
3231// MIPS32BE:#define __DBL_DIG__ 15
3232// MIPS32BE:#define __DBL_EPSILON__ 2.2204460492503131e-16
3233// MIPS32BE:#define __DBL_HAS_DENORM__ 1
3234// MIPS32BE:#define __DBL_HAS_INFINITY__ 1
3235// MIPS32BE:#define __DBL_HAS_QUIET_NAN__ 1
3236// MIPS32BE:#define __DBL_MANT_DIG__ 53
3237// MIPS32BE:#define __DBL_MAX_10_EXP__ 308
3238// MIPS32BE:#define __DBL_MAX_EXP__ 1024
3239// MIPS32BE:#define __DBL_MAX__ 1.7976931348623157e+308
3240// MIPS32BE:#define __DBL_MIN_10_EXP__ (-307)
3241// MIPS32BE:#define __DBL_MIN_EXP__ (-1021)
3242// MIPS32BE:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00003243// MIPS32BE:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003244// MIPS32BE:#define __FLT_DENORM_MIN__ 1.40129846e-45F
3245// MIPS32BE:#define __FLT_DIG__ 6
3246// MIPS32BE:#define __FLT_EPSILON__ 1.19209290e-7F
3247// MIPS32BE:#define __FLT_EVAL_METHOD__ 0
3248// MIPS32BE:#define __FLT_HAS_DENORM__ 1
3249// MIPS32BE:#define __FLT_HAS_INFINITY__ 1
3250// MIPS32BE:#define __FLT_HAS_QUIET_NAN__ 1
3251// MIPS32BE:#define __FLT_MANT_DIG__ 24
3252// MIPS32BE:#define __FLT_MAX_10_EXP__ 38
3253// MIPS32BE:#define __FLT_MAX_EXP__ 128
3254// MIPS32BE:#define __FLT_MAX__ 3.40282347e+38F
3255// MIPS32BE:#define __FLT_MIN_10_EXP__ (-37)
3256// MIPS32BE:#define __FLT_MIN_EXP__ (-125)
3257// MIPS32BE:#define __FLT_MIN__ 1.17549435e-38F
3258// MIPS32BE:#define __FLT_RADIX__ 2
James Y Knightc97efa42016-02-11 16:51:29 +00003259// MIPS32BE:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003260// MIPS32BE:#define __INT16_FMTd__ "hd"
3261// MIPS32BE:#define __INT16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00003262// MIPS32BE:#define __INT16_MAX__ 32767
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003263// MIPS32BE:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +00003264// MIPS32BE:#define __INT32_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003265// MIPS32BE:#define __INT32_FMTd__ "d"
3266// MIPS32BE:#define __INT32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00003267// MIPS32BE:#define __INT32_MAX__ 2147483647
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003268// MIPS32BE:#define __INT32_TYPE__ int
3269// MIPS32BE:#define __INT64_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003270// MIPS32BE:#define __INT64_FMTd__ "lld"
3271// MIPS32BE:#define __INT64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00003272// MIPS32BE:#define __INT64_MAX__ 9223372036854775807LL
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003273// MIPS32BE:#define __INT64_TYPE__ long long int
James Y Knightc97efa42016-02-11 16:51:29 +00003274// MIPS32BE:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003275// MIPS32BE:#define __INT8_FMTd__ "hhd"
3276// MIPS32BE:#define __INT8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00003277// MIPS32BE:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00003278// MIPS32BE:#define __INT8_TYPE__ signed char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00003279// MIPS32BE:#define __INTMAX_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003280// MIPS32BE:#define __INTMAX_FMTd__ "lld"
3281// MIPS32BE:#define __INTMAX_FMTi__ "lli"
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003282// MIPS32BE:#define __INTMAX_MAX__ 9223372036854775807LL
3283// MIPS32BE:#define __INTMAX_TYPE__ long long int
3284// MIPS32BE:#define __INTMAX_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003285// MIPS32BE:#define __INTPTR_FMTd__ "ld"
3286// MIPS32BE:#define __INTPTR_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00003287// MIPS32BE:#define __INTPTR_MAX__ 2147483647L
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003288// MIPS32BE:#define __INTPTR_TYPE__ long int
3289// MIPS32BE:#define __INTPTR_WIDTH__ 32
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003290// MIPS32BE:#define __INT_FAST16_FMTd__ "hd"
3291// MIPS32BE:#define __INT_FAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00003292// MIPS32BE:#define __INT_FAST16_MAX__ 32767
3293// MIPS32BE:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003294// MIPS32BE:#define __INT_FAST32_FMTd__ "d"
3295// MIPS32BE:#define __INT_FAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00003296// MIPS32BE:#define __INT_FAST32_MAX__ 2147483647
3297// MIPS32BE:#define __INT_FAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003298// MIPS32BE:#define __INT_FAST64_FMTd__ "lld"
3299// MIPS32BE:#define __INT_FAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00003300// MIPS32BE:#define __INT_FAST64_MAX__ 9223372036854775807LL
3301// MIPS32BE:#define __INT_FAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003302// MIPS32BE:#define __INT_FAST8_FMTd__ "hhd"
3303// MIPS32BE:#define __INT_FAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00003304// MIPS32BE:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00003305// MIPS32BE:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003306// MIPS32BE:#define __INT_LEAST16_FMTd__ "hd"
3307// MIPS32BE:#define __INT_LEAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00003308// MIPS32BE:#define __INT_LEAST16_MAX__ 32767
3309// MIPS32BE:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003310// MIPS32BE:#define __INT_LEAST32_FMTd__ "d"
3311// MIPS32BE:#define __INT_LEAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00003312// MIPS32BE:#define __INT_LEAST32_MAX__ 2147483647
3313// MIPS32BE:#define __INT_LEAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003314// MIPS32BE:#define __INT_LEAST64_FMTd__ "lld"
3315// MIPS32BE:#define __INT_LEAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00003316// MIPS32BE:#define __INT_LEAST64_MAX__ 9223372036854775807LL
3317// MIPS32BE:#define __INT_LEAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003318// MIPS32BE:#define __INT_LEAST8_FMTd__ "hhd"
3319// MIPS32BE:#define __INT_LEAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00003320// MIPS32BE:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00003321// MIPS32BE:#define __INT_LEAST8_TYPE__ signed char
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003322// MIPS32BE:#define __INT_MAX__ 2147483647
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00003323// MIPS32BE:#define __LDBL_DENORM_MIN__ 4.9406564584124654e-324L
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003324// MIPS32BE:#define __LDBL_DIG__ 15
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00003325// MIPS32BE:#define __LDBL_EPSILON__ 2.2204460492503131e-16L
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003326// MIPS32BE:#define __LDBL_HAS_DENORM__ 1
3327// MIPS32BE:#define __LDBL_HAS_INFINITY__ 1
3328// MIPS32BE:#define __LDBL_HAS_QUIET_NAN__ 1
3329// MIPS32BE:#define __LDBL_MANT_DIG__ 53
3330// MIPS32BE:#define __LDBL_MAX_10_EXP__ 308
3331// MIPS32BE:#define __LDBL_MAX_EXP__ 1024
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00003332// MIPS32BE:#define __LDBL_MAX__ 1.7976931348623157e+308L
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003333// MIPS32BE:#define __LDBL_MIN_10_EXP__ (-307)
3334// MIPS32BE:#define __LDBL_MIN_EXP__ (-1021)
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00003335// MIPS32BE:#define __LDBL_MIN__ 2.2250738585072014e-308L
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003336// MIPS32BE:#define __LONG_LONG_MAX__ 9223372036854775807LL
3337// MIPS32BE:#define __LONG_MAX__ 2147483647L
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00003338// MIPS32BE-NOT:#define __LP64__
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003339// MIPS32BE:#define __MIPSEB 1
3340// MIPS32BE:#define __MIPSEB__ 1
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003341// MIPS32BE:#define __POINTER_WIDTH__ 32
3342// MIPS32BE:#define __PRAGMA_REDEFINE_EXTNAME 1
3343// MIPS32BE:#define __PTRDIFF_TYPE__ int
3344// MIPS32BE:#define __PTRDIFF_WIDTH__ 32
James Y Knightc97efa42016-02-11 16:51:29 +00003345// MIPS32BE:#define __REGISTER_PREFIX__
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003346// MIPS32BE:#define __SCHAR_MAX__ 127
3347// MIPS32BE:#define __SHRT_MAX__ 32767
Joerg Sonnenbergerb3a49692014-07-17 18:31:20 +00003348// MIPS32BE:#define __SIG_ATOMIC_MAX__ 2147483647
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003349// MIPS32BE:#define __SIG_ATOMIC_WIDTH__ 32
3350// MIPS32BE:#define __SIZEOF_DOUBLE__ 8
3351// MIPS32BE:#define __SIZEOF_FLOAT__ 4
3352// MIPS32BE:#define __SIZEOF_INT__ 4
3353// MIPS32BE:#define __SIZEOF_LONG_DOUBLE__ 8
3354// MIPS32BE:#define __SIZEOF_LONG_LONG__ 8
3355// MIPS32BE:#define __SIZEOF_LONG__ 4
3356// MIPS32BE:#define __SIZEOF_POINTER__ 4
3357// MIPS32BE:#define __SIZEOF_PTRDIFF_T__ 4
3358// MIPS32BE:#define __SIZEOF_SHORT__ 2
3359// MIPS32BE:#define __SIZEOF_SIZE_T__ 4
3360// MIPS32BE:#define __SIZEOF_WCHAR_T__ 4
3361// MIPS32BE:#define __SIZEOF_WINT_T__ 4
Evgeniy Stepanovc3c725a2013-03-28 08:36:54 +00003362// MIPS32BE:#define __SIZE_MAX__ 4294967295U
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003363// MIPS32BE:#define __SIZE_TYPE__ unsigned int
3364// MIPS32BE:#define __SIZE_WIDTH__ 32
Richard Smith59139022016-09-30 22:41:36 +00003365// MIPS32BE-CXX:#define __STDCPP_DEFAULT_NEW_ALIGNMENT__ 8U
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003366// MIPS32BE:#define __STDC_HOSTED__ 0
Richard Smith59139022016-09-30 22:41:36 +00003367// MIPS32BE-C:#define __STDC_VERSION__ 201112L
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003368// MIPS32BE:#define __STDC__ 1
James Y Knightc97efa42016-02-11 16:51:29 +00003369// MIPS32BE:#define __UINT16_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00003370// MIPS32BE:#define __UINT16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00003371// MIPS32BE:#define __UINT16_TYPE__ unsigned short
3372// MIPS32BE:#define __UINT32_C_SUFFIX__ U
3373// MIPS32BE:#define __UINT32_MAX__ 4294967295U
3374// MIPS32BE:#define __UINT32_TYPE__ unsigned int
3375// MIPS32BE:#define __UINT64_C_SUFFIX__ ULL
3376// MIPS32BE:#define __UINT64_MAX__ 18446744073709551615ULL
3377// MIPS32BE:#define __UINT64_TYPE__ long long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00003378// MIPS32BE:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00003379// MIPS32BE:#define __UINT8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00003380// MIPS32BE:#define __UINT8_TYPE__ unsigned char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00003381// MIPS32BE:#define __UINTMAX_C_SUFFIX__ ULL
JF Bastienab8d0a02014-06-25 01:31:33 +00003382// MIPS32BE:#define __UINTMAX_MAX__ 18446744073709551615ULL
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003383// MIPS32BE:#define __UINTMAX_TYPE__ long long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00003384// MIPS32BE:#define __UINTMAX_WIDTH__ 64
James Y Knightc97efa42016-02-11 16:51:29 +00003385// MIPS32BE:#define __UINTPTR_MAX__ 4294967295UL
Joerg Sonnenberger3809a7a2014-07-14 20:40:56 +00003386// MIPS32BE:#define __UINTPTR_TYPE__ long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00003387// MIPS32BE:#define __UINTPTR_WIDTH__ 32
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00003388// MIPS32BE:#define __UINT_FAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00003389// MIPS32BE:#define __UINT_FAST16_TYPE__ unsigned short
3390// MIPS32BE:#define __UINT_FAST32_MAX__ 4294967295U
3391// MIPS32BE:#define __UINT_FAST32_TYPE__ unsigned int
3392// MIPS32BE:#define __UINT_FAST64_MAX__ 18446744073709551615ULL
3393// MIPS32BE:#define __UINT_FAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00003394// MIPS32BE:#define __UINT_FAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00003395// MIPS32BE:#define __UINT_FAST8_TYPE__ unsigned char
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00003396// MIPS32BE:#define __UINT_LEAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00003397// MIPS32BE:#define __UINT_LEAST16_TYPE__ unsigned short
3398// MIPS32BE:#define __UINT_LEAST32_MAX__ 4294967295U
3399// MIPS32BE:#define __UINT_LEAST32_TYPE__ unsigned int
3400// MIPS32BE:#define __UINT_LEAST64_MAX__ 18446744073709551615ULL
3401// MIPS32BE:#define __UINT_LEAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00003402// MIPS32BE:#define __UINT_LEAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00003403// MIPS32BE:#define __UINT_LEAST8_TYPE__ unsigned char
James Y Knightb214cbc2016-03-04 19:00:41 +00003404// MIPS32BE:#define __USER_LABEL_PREFIX__
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003405// MIPS32BE:#define __WCHAR_MAX__ 2147483647
3406// MIPS32BE:#define __WCHAR_TYPE__ int
3407// MIPS32BE:#define __WCHAR_WIDTH__ 32
3408// MIPS32BE:#define __WINT_TYPE__ int
3409// MIPS32BE:#define __WINT_WIDTH__ 32
3410// MIPS32BE:#define __clang__ 1
3411// MIPS32BE:#define __llvm__ 1
Simon Atanasyan26292cc2014-01-27 13:59:11 +00003412// MIPS32BE:#define __mips 32
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003413// MIPS32BE:#define __mips__ 1
Simon Dardisdf827a72017-02-21 16:01:00 +00003414// MIPS32BE:#define __mips_abicalls 1
Simon Atanasyan2c97a812013-10-18 13:13:53 +00003415// MIPS32BE:#define __mips_fpr 32
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003416// MIPS32BE:#define __mips_hard_float 1
3417// MIPS32BE:#define __mips_o32 1
3418// MIPS32BE:#define _mips 1
3419// MIPS32BE:#define mips 1
3420//
James Y Knightc97efa42016-02-11 16:51:29 +00003421// 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 +00003422//
3423// MIPS32EL:#define MIPSEL 1
3424// MIPS32EL:#define _ABIO32 1
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00003425// MIPS32EL-NOT:#define _LP64
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003426// MIPS32EL:#define _MIPSEL 1
Simon Atanasyan1a3665b62014-01-27 13:59:04 +00003427// MIPS32EL:#define _MIPS_ARCH "mips32r2"
3428// MIPS32EL:#define _MIPS_ARCH_MIPS32R2 1
Simon Atanasyan2c97a812013-10-18 13:13:53 +00003429// MIPS32EL:#define _MIPS_FPSET 16
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003430// MIPS32EL:#define _MIPS_SIM _ABIO32
3431// MIPS32EL:#define _MIPS_SZINT 32
3432// MIPS32EL:#define _MIPS_SZLONG 32
3433// MIPS32EL:#define _MIPS_SZPTR 32
Tim Northovera6a19f12015-02-06 01:25:07 +00003434// MIPS32EL:#define __BIGGEST_ALIGNMENT__ 8
Dylan Noblesmith673728f2012-07-27 18:34:31 +00003435// MIPS32EL:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003436// MIPS32EL:#define __CHAR16_TYPE__ unsigned short
3437// MIPS32EL:#define __CHAR32_TYPE__ unsigned int
3438// MIPS32EL:#define __CHAR_BIT__ 8
3439// MIPS32EL:#define __CONSTANT_CFSTRINGS__ 1
3440// MIPS32EL:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
3441// MIPS32EL:#define __DBL_DIG__ 15
3442// MIPS32EL:#define __DBL_EPSILON__ 2.2204460492503131e-16
3443// MIPS32EL:#define __DBL_HAS_DENORM__ 1
3444// MIPS32EL:#define __DBL_HAS_INFINITY__ 1
3445// MIPS32EL:#define __DBL_HAS_QUIET_NAN__ 1
3446// MIPS32EL:#define __DBL_MANT_DIG__ 53
3447// MIPS32EL:#define __DBL_MAX_10_EXP__ 308
3448// MIPS32EL:#define __DBL_MAX_EXP__ 1024
3449// MIPS32EL:#define __DBL_MAX__ 1.7976931348623157e+308
3450// MIPS32EL:#define __DBL_MIN_10_EXP__ (-307)
3451// MIPS32EL:#define __DBL_MIN_EXP__ (-1021)
3452// MIPS32EL:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00003453// MIPS32EL:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003454// MIPS32EL:#define __FLT_DENORM_MIN__ 1.40129846e-45F
3455// MIPS32EL:#define __FLT_DIG__ 6
3456// MIPS32EL:#define __FLT_EPSILON__ 1.19209290e-7F
3457// MIPS32EL:#define __FLT_EVAL_METHOD__ 0
3458// MIPS32EL:#define __FLT_HAS_DENORM__ 1
3459// MIPS32EL:#define __FLT_HAS_INFINITY__ 1
3460// MIPS32EL:#define __FLT_HAS_QUIET_NAN__ 1
3461// MIPS32EL:#define __FLT_MANT_DIG__ 24
3462// MIPS32EL:#define __FLT_MAX_10_EXP__ 38
3463// MIPS32EL:#define __FLT_MAX_EXP__ 128
3464// MIPS32EL:#define __FLT_MAX__ 3.40282347e+38F
3465// MIPS32EL:#define __FLT_MIN_10_EXP__ (-37)
3466// MIPS32EL:#define __FLT_MIN_EXP__ (-125)
3467// MIPS32EL:#define __FLT_MIN__ 1.17549435e-38F
3468// MIPS32EL:#define __FLT_RADIX__ 2
James Y Knightc97efa42016-02-11 16:51:29 +00003469// MIPS32EL:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003470// MIPS32EL:#define __INT16_FMTd__ "hd"
3471// MIPS32EL:#define __INT16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00003472// MIPS32EL:#define __INT16_MAX__ 32767
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003473// MIPS32EL:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +00003474// MIPS32EL:#define __INT32_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003475// MIPS32EL:#define __INT32_FMTd__ "d"
3476// MIPS32EL:#define __INT32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00003477// MIPS32EL:#define __INT32_MAX__ 2147483647
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003478// MIPS32EL:#define __INT32_TYPE__ int
3479// MIPS32EL:#define __INT64_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003480// MIPS32EL:#define __INT64_FMTd__ "lld"
3481// MIPS32EL:#define __INT64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00003482// MIPS32EL:#define __INT64_MAX__ 9223372036854775807LL
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003483// MIPS32EL:#define __INT64_TYPE__ long long int
James Y Knightc97efa42016-02-11 16:51:29 +00003484// MIPS32EL:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003485// MIPS32EL:#define __INT8_FMTd__ "hhd"
3486// MIPS32EL:#define __INT8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00003487// MIPS32EL:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00003488// MIPS32EL:#define __INT8_TYPE__ signed char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00003489// MIPS32EL:#define __INTMAX_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003490// MIPS32EL:#define __INTMAX_FMTd__ "lld"
3491// MIPS32EL:#define __INTMAX_FMTi__ "lli"
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003492// MIPS32EL:#define __INTMAX_MAX__ 9223372036854775807LL
3493// MIPS32EL:#define __INTMAX_TYPE__ long long int
3494// MIPS32EL:#define __INTMAX_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003495// MIPS32EL:#define __INTPTR_FMTd__ "ld"
3496// MIPS32EL:#define __INTPTR_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00003497// MIPS32EL:#define __INTPTR_MAX__ 2147483647L
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003498// MIPS32EL:#define __INTPTR_TYPE__ long int
3499// MIPS32EL:#define __INTPTR_WIDTH__ 32
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003500// MIPS32EL:#define __INT_FAST16_FMTd__ "hd"
3501// MIPS32EL:#define __INT_FAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00003502// MIPS32EL:#define __INT_FAST16_MAX__ 32767
3503// MIPS32EL:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003504// MIPS32EL:#define __INT_FAST32_FMTd__ "d"
3505// MIPS32EL:#define __INT_FAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00003506// MIPS32EL:#define __INT_FAST32_MAX__ 2147483647
3507// MIPS32EL:#define __INT_FAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003508// MIPS32EL:#define __INT_FAST64_FMTd__ "lld"
3509// MIPS32EL:#define __INT_FAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00003510// MIPS32EL:#define __INT_FAST64_MAX__ 9223372036854775807LL
3511// MIPS32EL:#define __INT_FAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003512// MIPS32EL:#define __INT_FAST8_FMTd__ "hhd"
3513// MIPS32EL:#define __INT_FAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00003514// MIPS32EL:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00003515// MIPS32EL:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003516// MIPS32EL:#define __INT_LEAST16_FMTd__ "hd"
3517// MIPS32EL:#define __INT_LEAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00003518// MIPS32EL:#define __INT_LEAST16_MAX__ 32767
3519// MIPS32EL:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003520// MIPS32EL:#define __INT_LEAST32_FMTd__ "d"
3521// MIPS32EL:#define __INT_LEAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00003522// MIPS32EL:#define __INT_LEAST32_MAX__ 2147483647
3523// MIPS32EL:#define __INT_LEAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003524// MIPS32EL:#define __INT_LEAST64_FMTd__ "lld"
3525// MIPS32EL:#define __INT_LEAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00003526// MIPS32EL:#define __INT_LEAST64_MAX__ 9223372036854775807LL
3527// MIPS32EL:#define __INT_LEAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003528// MIPS32EL:#define __INT_LEAST8_FMTd__ "hhd"
3529// MIPS32EL:#define __INT_LEAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00003530// MIPS32EL:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00003531// MIPS32EL:#define __INT_LEAST8_TYPE__ signed char
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003532// MIPS32EL:#define __INT_MAX__ 2147483647
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00003533// MIPS32EL:#define __LDBL_DENORM_MIN__ 4.9406564584124654e-324L
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003534// MIPS32EL:#define __LDBL_DIG__ 15
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00003535// MIPS32EL:#define __LDBL_EPSILON__ 2.2204460492503131e-16L
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003536// MIPS32EL:#define __LDBL_HAS_DENORM__ 1
3537// MIPS32EL:#define __LDBL_HAS_INFINITY__ 1
3538// MIPS32EL:#define __LDBL_HAS_QUIET_NAN__ 1
3539// MIPS32EL:#define __LDBL_MANT_DIG__ 53
3540// MIPS32EL:#define __LDBL_MAX_10_EXP__ 308
3541// MIPS32EL:#define __LDBL_MAX_EXP__ 1024
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00003542// MIPS32EL:#define __LDBL_MAX__ 1.7976931348623157e+308L
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003543// MIPS32EL:#define __LDBL_MIN_10_EXP__ (-307)
3544// MIPS32EL:#define __LDBL_MIN_EXP__ (-1021)
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00003545// MIPS32EL:#define __LDBL_MIN__ 2.2250738585072014e-308L
Robert Lytton2c942c62014-03-10 12:06:29 +00003546// MIPS32EL:#define __LITTLE_ENDIAN__ 1
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003547// MIPS32EL:#define __LONG_LONG_MAX__ 9223372036854775807LL
3548// MIPS32EL:#define __LONG_MAX__ 2147483647L
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00003549// MIPS32EL-NOT:#define __LP64__
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003550// MIPS32EL:#define __MIPSEL 1
3551// MIPS32EL:#define __MIPSEL__ 1
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003552// MIPS32EL:#define __POINTER_WIDTH__ 32
3553// MIPS32EL:#define __PRAGMA_REDEFINE_EXTNAME 1
3554// MIPS32EL:#define __PTRDIFF_TYPE__ int
3555// MIPS32EL:#define __PTRDIFF_WIDTH__ 32
James Y Knightc97efa42016-02-11 16:51:29 +00003556// MIPS32EL:#define __REGISTER_PREFIX__
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003557// MIPS32EL:#define __SCHAR_MAX__ 127
3558// MIPS32EL:#define __SHRT_MAX__ 32767
Joerg Sonnenbergerb3a49692014-07-17 18:31:20 +00003559// MIPS32EL:#define __SIG_ATOMIC_MAX__ 2147483647
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003560// MIPS32EL:#define __SIG_ATOMIC_WIDTH__ 32
3561// MIPS32EL:#define __SIZEOF_DOUBLE__ 8
3562// MIPS32EL:#define __SIZEOF_FLOAT__ 4
3563// MIPS32EL:#define __SIZEOF_INT__ 4
3564// MIPS32EL:#define __SIZEOF_LONG_DOUBLE__ 8
3565// MIPS32EL:#define __SIZEOF_LONG_LONG__ 8
3566// MIPS32EL:#define __SIZEOF_LONG__ 4
3567// MIPS32EL:#define __SIZEOF_POINTER__ 4
3568// MIPS32EL:#define __SIZEOF_PTRDIFF_T__ 4
3569// MIPS32EL:#define __SIZEOF_SHORT__ 2
3570// MIPS32EL:#define __SIZEOF_SIZE_T__ 4
3571// MIPS32EL:#define __SIZEOF_WCHAR_T__ 4
3572// MIPS32EL:#define __SIZEOF_WINT_T__ 4
Evgeniy Stepanovc3c725a2013-03-28 08:36:54 +00003573// MIPS32EL:#define __SIZE_MAX__ 4294967295U
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003574// MIPS32EL:#define __SIZE_TYPE__ unsigned int
3575// MIPS32EL:#define __SIZE_WIDTH__ 32
James Y Knightc97efa42016-02-11 16:51:29 +00003576// MIPS32EL:#define __UINT16_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00003577// MIPS32EL:#define __UINT16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00003578// MIPS32EL:#define __UINT16_TYPE__ unsigned short
3579// MIPS32EL:#define __UINT32_C_SUFFIX__ U
3580// MIPS32EL:#define __UINT32_MAX__ 4294967295U
3581// MIPS32EL:#define __UINT32_TYPE__ unsigned int
3582// MIPS32EL:#define __UINT64_C_SUFFIX__ ULL
3583// MIPS32EL:#define __UINT64_MAX__ 18446744073709551615ULL
3584// MIPS32EL:#define __UINT64_TYPE__ long long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00003585// MIPS32EL:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00003586// MIPS32EL:#define __UINT8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00003587// MIPS32EL:#define __UINT8_TYPE__ unsigned char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00003588// MIPS32EL:#define __UINTMAX_C_SUFFIX__ ULL
JF Bastienab8d0a02014-06-25 01:31:33 +00003589// MIPS32EL:#define __UINTMAX_MAX__ 18446744073709551615ULL
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003590// MIPS32EL:#define __UINTMAX_TYPE__ long long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00003591// MIPS32EL:#define __UINTMAX_WIDTH__ 64
James Y Knightc97efa42016-02-11 16:51:29 +00003592// MIPS32EL:#define __UINTPTR_MAX__ 4294967295UL
Joerg Sonnenberger3809a7a2014-07-14 20:40:56 +00003593// MIPS32EL:#define __UINTPTR_TYPE__ long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00003594// MIPS32EL:#define __UINTPTR_WIDTH__ 32
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00003595// MIPS32EL:#define __UINT_FAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00003596// MIPS32EL:#define __UINT_FAST16_TYPE__ unsigned short
3597// MIPS32EL:#define __UINT_FAST32_MAX__ 4294967295U
3598// MIPS32EL:#define __UINT_FAST32_TYPE__ unsigned int
3599// MIPS32EL:#define __UINT_FAST64_MAX__ 18446744073709551615ULL
3600// MIPS32EL:#define __UINT_FAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00003601// MIPS32EL:#define __UINT_FAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00003602// MIPS32EL:#define __UINT_FAST8_TYPE__ unsigned char
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00003603// MIPS32EL:#define __UINT_LEAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00003604// MIPS32EL:#define __UINT_LEAST16_TYPE__ unsigned short
3605// MIPS32EL:#define __UINT_LEAST32_MAX__ 4294967295U
3606// MIPS32EL:#define __UINT_LEAST32_TYPE__ unsigned int
3607// MIPS32EL:#define __UINT_LEAST64_MAX__ 18446744073709551615ULL
3608// MIPS32EL:#define __UINT_LEAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00003609// MIPS32EL:#define __UINT_LEAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00003610// MIPS32EL:#define __UINT_LEAST8_TYPE__ unsigned char
James Y Knightb214cbc2016-03-04 19:00:41 +00003611// MIPS32EL:#define __USER_LABEL_PREFIX__
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003612// MIPS32EL:#define __WCHAR_MAX__ 2147483647
3613// MIPS32EL:#define __WCHAR_TYPE__ int
3614// MIPS32EL:#define __WCHAR_WIDTH__ 32
3615// MIPS32EL:#define __WINT_TYPE__ int
3616// MIPS32EL:#define __WINT_WIDTH__ 32
3617// MIPS32EL:#define __clang__ 1
3618// MIPS32EL:#define __llvm__ 1
Simon Atanasyan26292cc2014-01-27 13:59:11 +00003619// MIPS32EL:#define __mips 32
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003620// MIPS32EL:#define __mips__ 1
Simon Dardisdf827a72017-02-21 16:01:00 +00003621// MIPS32EL:#define __mips_abicalls 1
Simon Atanasyan2c97a812013-10-18 13:13:53 +00003622// MIPS32EL:#define __mips_fpr 32
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003623// MIPS32EL:#define __mips_hard_float 1
3624// MIPS32EL:#define __mips_o32 1
3625// MIPS32EL:#define _mips 1
3626// MIPS32EL:#define mips 1
3627//
Simon Atanasyan495523e42015-01-22 23:16:48 +00003628// RUN: %clang_cc1 -E -dM -ffreestanding \
3629// RUN: -triple=mips64-none-none -target-abi n32 < /dev/null \
Richard Smith59139022016-09-30 22:41:36 +00003630// RUN: | FileCheck -match-full-lines -check-prefix MIPSN32BE -check-prefix MIPSN32BE-C %s
3631// RUN: %clang_cc1 -x c++ -E -dM -ffreestanding \
3632// RUN: -triple=mips64-none-none -target-abi n32 < /dev/null \
3633// RUN: | FileCheck -match-full-lines -check-prefix MIPSN32BE -check-prefix MIPSN32BE-CXX %s
Simon Atanasyan495523e42015-01-22 23:16:48 +00003634//
3635// MIPSN32BE: #define MIPSEB 1
3636// MIPSN32BE: #define _ABIN32 2
3637// MIPSN32BE: #define _ILP32 1
3638// MIPSN32BE: #define _MIPSEB 1
3639// MIPSN32BE: #define _MIPS_ARCH "mips64r2"
3640// MIPSN32BE: #define _MIPS_ARCH_MIPS64R2 1
3641// MIPSN32BE: #define _MIPS_FPSET 32
3642// MIPSN32BE: #define _MIPS_ISA _MIPS_ISA_MIPS64
3643// MIPSN32BE: #define _MIPS_SIM _ABIN32
3644// MIPSN32BE: #define _MIPS_SZINT 32
3645// MIPSN32BE: #define _MIPS_SZLONG 32
3646// MIPSN32BE: #define _MIPS_SZPTR 32
3647// MIPSN32BE: #define __ATOMIC_ACQUIRE 2
3648// MIPSN32BE: #define __ATOMIC_ACQ_REL 4
3649// MIPSN32BE: #define __ATOMIC_CONSUME 1
3650// MIPSN32BE: #define __ATOMIC_RELAXED 0
3651// MIPSN32BE: #define __ATOMIC_RELEASE 3
3652// MIPSN32BE: #define __ATOMIC_SEQ_CST 5
3653// MIPSN32BE: #define __BIG_ENDIAN__ 1
3654// MIPSN32BE: #define __BYTE_ORDER__ __ORDER_BIG_ENDIAN__
3655// MIPSN32BE: #define __CHAR16_TYPE__ unsigned short
3656// MIPSN32BE: #define __CHAR32_TYPE__ unsigned int
3657// MIPSN32BE: #define __CHAR_BIT__ 8
3658// MIPSN32BE: #define __CONSTANT_CFSTRINGS__ 1
3659// MIPSN32BE: #define __DBL_DENORM_MIN__ 4.9406564584124654e-324
3660// MIPSN32BE: #define __DBL_DIG__ 15
3661// MIPSN32BE: #define __DBL_EPSILON__ 2.2204460492503131e-16
3662// MIPSN32BE: #define __DBL_HAS_DENORM__ 1
3663// MIPSN32BE: #define __DBL_HAS_INFINITY__ 1
3664// MIPSN32BE: #define __DBL_HAS_QUIET_NAN__ 1
3665// MIPSN32BE: #define __DBL_MANT_DIG__ 53
3666// MIPSN32BE: #define __DBL_MAX_10_EXP__ 308
3667// MIPSN32BE: #define __DBL_MAX_EXP__ 1024
3668// MIPSN32BE: #define __DBL_MAX__ 1.7976931348623157e+308
3669// MIPSN32BE: #define __DBL_MIN_10_EXP__ (-307)
3670// MIPSN32BE: #define __DBL_MIN_EXP__ (-1021)
3671// MIPSN32BE: #define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00003672// MIPSN32BE: #define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Simon Atanasyan495523e42015-01-22 23:16:48 +00003673// MIPSN32BE: #define __FINITE_MATH_ONLY__ 0
3674// MIPSN32BE: #define __FLT_DENORM_MIN__ 1.40129846e-45F
3675// MIPSN32BE: #define __FLT_DIG__ 6
3676// MIPSN32BE: #define __FLT_EPSILON__ 1.19209290e-7F
3677// MIPSN32BE: #define __FLT_EVAL_METHOD__ 0
3678// MIPSN32BE: #define __FLT_HAS_DENORM__ 1
3679// MIPSN32BE: #define __FLT_HAS_INFINITY__ 1
3680// MIPSN32BE: #define __FLT_HAS_QUIET_NAN__ 1
3681// MIPSN32BE: #define __FLT_MANT_DIG__ 24
3682// MIPSN32BE: #define __FLT_MAX_10_EXP__ 38
3683// MIPSN32BE: #define __FLT_MAX_EXP__ 128
3684// MIPSN32BE: #define __FLT_MAX__ 3.40282347e+38F
3685// MIPSN32BE: #define __FLT_MIN_10_EXP__ (-37)
3686// MIPSN32BE: #define __FLT_MIN_EXP__ (-125)
3687// MIPSN32BE: #define __FLT_MIN__ 1.17549435e-38F
3688// MIPSN32BE: #define __FLT_RADIX__ 2
3689// MIPSN32BE: #define __GCC_ATOMIC_BOOL_LOCK_FREE 2
3690// MIPSN32BE: #define __GCC_ATOMIC_CHAR16_T_LOCK_FREE 2
3691// MIPSN32BE: #define __GCC_ATOMIC_CHAR32_T_LOCK_FREE 2
3692// MIPSN32BE: #define __GCC_ATOMIC_CHAR_LOCK_FREE 2
3693// MIPSN32BE: #define __GCC_ATOMIC_INT_LOCK_FREE 2
3694// MIPSN32BE: #define __GCC_ATOMIC_LLONG_LOCK_FREE 2
3695// MIPSN32BE: #define __GCC_ATOMIC_LONG_LOCK_FREE 2
3696// MIPSN32BE: #define __GCC_ATOMIC_POINTER_LOCK_FREE 2
3697// MIPSN32BE: #define __GCC_ATOMIC_SHORT_LOCK_FREE 2
3698// MIPSN32BE: #define __GCC_ATOMIC_TEST_AND_SET_TRUEVAL 1
3699// MIPSN32BE: #define __GCC_ATOMIC_WCHAR_T_LOCK_FREE 2
3700// MIPSN32BE: #define __GNUC_MINOR__ 2
3701// MIPSN32BE: #define __GNUC_PATCHLEVEL__ 1
Richard Smith59139022016-09-30 22:41:36 +00003702// MIPSN32BE-C: #define __GNUC_STDC_INLINE__ 1
Simon Atanasyan495523e42015-01-22 23:16:48 +00003703// MIPSN32BE: #define __GNUC__ 4
3704// MIPSN32BE: #define __GXX_ABI_VERSION 1002
Simon Atanasyan495523e42015-01-22 23:16:48 +00003705// MIPSN32BE: #define __ILP32__ 1
3706// MIPSN32BE: #define __INT16_C_SUFFIX__
3707// MIPSN32BE: #define __INT16_FMTd__ "hd"
3708// MIPSN32BE: #define __INT16_FMTi__ "hi"
3709// MIPSN32BE: #define __INT16_MAX__ 32767
3710// MIPSN32BE: #define __INT16_TYPE__ short
3711// MIPSN32BE: #define __INT32_C_SUFFIX__
3712// MIPSN32BE: #define __INT32_FMTd__ "d"
3713// MIPSN32BE: #define __INT32_FMTi__ "i"
3714// MIPSN32BE: #define __INT32_MAX__ 2147483647
3715// MIPSN32BE: #define __INT32_TYPE__ int
3716// MIPSN32BE: #define __INT64_C_SUFFIX__ LL
3717// MIPSN32BE: #define __INT64_FMTd__ "lld"
3718// MIPSN32BE: #define __INT64_FMTi__ "lli"
3719// MIPSN32BE: #define __INT64_MAX__ 9223372036854775807LL
3720// MIPSN32BE: #define __INT64_TYPE__ long long int
3721// MIPSN32BE: #define __INT8_C_SUFFIX__
3722// MIPSN32BE: #define __INT8_FMTd__ "hhd"
3723// MIPSN32BE: #define __INT8_FMTi__ "hhi"
3724// MIPSN32BE: #define __INT8_MAX__ 127
3725// MIPSN32BE: #define __INT8_TYPE__ signed char
3726// MIPSN32BE: #define __INTMAX_C_SUFFIX__ LL
3727// MIPSN32BE: #define __INTMAX_FMTd__ "lld"
3728// MIPSN32BE: #define __INTMAX_FMTi__ "lli"
3729// MIPSN32BE: #define __INTMAX_MAX__ 9223372036854775807LL
3730// MIPSN32BE: #define __INTMAX_TYPE__ long long int
3731// MIPSN32BE: #define __INTMAX_WIDTH__ 64
3732// MIPSN32BE: #define __INTPTR_FMTd__ "ld"
3733// MIPSN32BE: #define __INTPTR_FMTi__ "li"
3734// MIPSN32BE: #define __INTPTR_MAX__ 2147483647L
3735// MIPSN32BE: #define __INTPTR_TYPE__ long int
3736// MIPSN32BE: #define __INTPTR_WIDTH__ 32
3737// MIPSN32BE: #define __INT_FAST16_FMTd__ "hd"
3738// MIPSN32BE: #define __INT_FAST16_FMTi__ "hi"
3739// MIPSN32BE: #define __INT_FAST16_MAX__ 32767
3740// MIPSN32BE: #define __INT_FAST16_TYPE__ short
3741// MIPSN32BE: #define __INT_FAST32_FMTd__ "d"
3742// MIPSN32BE: #define __INT_FAST32_FMTi__ "i"
3743// MIPSN32BE: #define __INT_FAST32_MAX__ 2147483647
3744// MIPSN32BE: #define __INT_FAST32_TYPE__ int
3745// MIPSN32BE: #define __INT_FAST64_FMTd__ "lld"
3746// MIPSN32BE: #define __INT_FAST64_FMTi__ "lli"
3747// MIPSN32BE: #define __INT_FAST64_MAX__ 9223372036854775807LL
3748// MIPSN32BE: #define __INT_FAST64_TYPE__ long long int
3749// MIPSN32BE: #define __INT_FAST8_FMTd__ "hhd"
3750// MIPSN32BE: #define __INT_FAST8_FMTi__ "hhi"
3751// MIPSN32BE: #define __INT_FAST8_MAX__ 127
3752// MIPSN32BE: #define __INT_FAST8_TYPE__ signed char
3753// MIPSN32BE: #define __INT_LEAST16_FMTd__ "hd"
3754// MIPSN32BE: #define __INT_LEAST16_FMTi__ "hi"
3755// MIPSN32BE: #define __INT_LEAST16_MAX__ 32767
3756// MIPSN32BE: #define __INT_LEAST16_TYPE__ short
3757// MIPSN32BE: #define __INT_LEAST32_FMTd__ "d"
3758// MIPSN32BE: #define __INT_LEAST32_FMTi__ "i"
3759// MIPSN32BE: #define __INT_LEAST32_MAX__ 2147483647
3760// MIPSN32BE: #define __INT_LEAST32_TYPE__ int
3761// MIPSN32BE: #define __INT_LEAST64_FMTd__ "lld"
3762// MIPSN32BE: #define __INT_LEAST64_FMTi__ "lli"
3763// MIPSN32BE: #define __INT_LEAST64_MAX__ 9223372036854775807LL
3764// MIPSN32BE: #define __INT_LEAST64_TYPE__ long long int
3765// MIPSN32BE: #define __INT_LEAST8_FMTd__ "hhd"
3766// MIPSN32BE: #define __INT_LEAST8_FMTi__ "hhi"
3767// MIPSN32BE: #define __INT_LEAST8_MAX__ 127
3768// MIPSN32BE: #define __INT_LEAST8_TYPE__ signed char
3769// MIPSN32BE: #define __INT_MAX__ 2147483647
3770// MIPSN32BE: #define __LDBL_DENORM_MIN__ 6.47517511943802511092443895822764655e-4966L
3771// MIPSN32BE: #define __LDBL_DIG__ 33
3772// MIPSN32BE: #define __LDBL_EPSILON__ 1.92592994438723585305597794258492732e-34L
3773// MIPSN32BE: #define __LDBL_HAS_DENORM__ 1
3774// MIPSN32BE: #define __LDBL_HAS_INFINITY__ 1
3775// MIPSN32BE: #define __LDBL_HAS_QUIET_NAN__ 1
3776// MIPSN32BE: #define __LDBL_MANT_DIG__ 113
3777// MIPSN32BE: #define __LDBL_MAX_10_EXP__ 4932
3778// MIPSN32BE: #define __LDBL_MAX_EXP__ 16384
3779// MIPSN32BE: #define __LDBL_MAX__ 1.18973149535723176508575932662800702e+4932L
3780// MIPSN32BE: #define __LDBL_MIN_10_EXP__ (-4931)
3781// MIPSN32BE: #define __LDBL_MIN_EXP__ (-16381)
3782// MIPSN32BE: #define __LDBL_MIN__ 3.36210314311209350626267781732175260e-4932L
3783// MIPSN32BE: #define __LONG_LONG_MAX__ 9223372036854775807LL
3784// MIPSN32BE: #define __LONG_MAX__ 2147483647L
3785// MIPSN32BE: #define __MIPSEB 1
3786// MIPSN32BE: #define __MIPSEB__ 1
3787// MIPSN32BE: #define __NO_INLINE__ 1
3788// MIPSN32BE: #define __ORDER_BIG_ENDIAN__ 4321
3789// MIPSN32BE: #define __ORDER_LITTLE_ENDIAN__ 1234
3790// MIPSN32BE: #define __ORDER_PDP_ENDIAN__ 3412
3791// MIPSN32BE: #define __POINTER_WIDTH__ 32
3792// MIPSN32BE: #define __PRAGMA_REDEFINE_EXTNAME 1
3793// MIPSN32BE: #define __PTRDIFF_FMTd__ "d"
3794// MIPSN32BE: #define __PTRDIFF_FMTi__ "i"
3795// MIPSN32BE: #define __PTRDIFF_MAX__ 2147483647
3796// MIPSN32BE: #define __PTRDIFF_TYPE__ int
3797// MIPSN32BE: #define __PTRDIFF_WIDTH__ 32
3798// MIPSN32BE: #define __REGISTER_PREFIX__
3799// MIPSN32BE: #define __SCHAR_MAX__ 127
3800// MIPSN32BE: #define __SHRT_MAX__ 32767
3801// MIPSN32BE: #define __SIG_ATOMIC_MAX__ 2147483647
3802// MIPSN32BE: #define __SIG_ATOMIC_WIDTH__ 32
3803// MIPSN32BE: #define __SIZEOF_DOUBLE__ 8
3804// MIPSN32BE: #define __SIZEOF_FLOAT__ 4
3805// MIPSN32BE: #define __SIZEOF_INT__ 4
3806// MIPSN32BE: #define __SIZEOF_LONG_DOUBLE__ 16
3807// MIPSN32BE: #define __SIZEOF_LONG_LONG__ 8
3808// MIPSN32BE: #define __SIZEOF_LONG__ 4
3809// MIPSN32BE: #define __SIZEOF_POINTER__ 4
3810// MIPSN32BE: #define __SIZEOF_PTRDIFF_T__ 4
3811// MIPSN32BE: #define __SIZEOF_SHORT__ 2
3812// MIPSN32BE: #define __SIZEOF_SIZE_T__ 4
3813// MIPSN32BE: #define __SIZEOF_WCHAR_T__ 4
3814// MIPSN32BE: #define __SIZEOF_WINT_T__ 4
3815// MIPSN32BE: #define __SIZE_FMTX__ "X"
3816// MIPSN32BE: #define __SIZE_FMTo__ "o"
3817// MIPSN32BE: #define __SIZE_FMTu__ "u"
3818// MIPSN32BE: #define __SIZE_FMTx__ "x"
3819// MIPSN32BE: #define __SIZE_MAX__ 4294967295U
3820// MIPSN32BE: #define __SIZE_TYPE__ unsigned int
3821// MIPSN32BE: #define __SIZE_WIDTH__ 32
Richard Smith59139022016-09-30 22:41:36 +00003822// MIPSN32BE-CXX: #define __STDCPP_DEFAULT_NEW_ALIGNMENT__ 16U
Simon Atanasyan495523e42015-01-22 23:16:48 +00003823// MIPSN32BE: #define __STDC_HOSTED__ 0
3824// MIPSN32BE: #define __STDC_UTF_16__ 1
3825// MIPSN32BE: #define __STDC_UTF_32__ 1
Richard Smith59139022016-09-30 22:41:36 +00003826// MIPSN32BE-C: #define __STDC_VERSION__ 201112L
Simon Atanasyan495523e42015-01-22 23:16:48 +00003827// MIPSN32BE: #define __STDC__ 1
3828// MIPSN32BE: #define __UINT16_C_SUFFIX__
3829// MIPSN32BE: #define __UINT16_FMTX__ "hX"
3830// MIPSN32BE: #define __UINT16_FMTo__ "ho"
3831// MIPSN32BE: #define __UINT16_FMTu__ "hu"
3832// MIPSN32BE: #define __UINT16_FMTx__ "hx"
3833// MIPSN32BE: #define __UINT16_MAX__ 65535
3834// MIPSN32BE: #define __UINT16_TYPE__ unsigned short
3835// MIPSN32BE: #define __UINT32_C_SUFFIX__ U
3836// MIPSN32BE: #define __UINT32_FMTX__ "X"
3837// MIPSN32BE: #define __UINT32_FMTo__ "o"
3838// MIPSN32BE: #define __UINT32_FMTu__ "u"
3839// MIPSN32BE: #define __UINT32_FMTx__ "x"
3840// MIPSN32BE: #define __UINT32_MAX__ 4294967295U
3841// MIPSN32BE: #define __UINT32_TYPE__ unsigned int
3842// MIPSN32BE: #define __UINT64_C_SUFFIX__ ULL
3843// MIPSN32BE: #define __UINT64_FMTX__ "llX"
3844// MIPSN32BE: #define __UINT64_FMTo__ "llo"
3845// MIPSN32BE: #define __UINT64_FMTu__ "llu"
3846// MIPSN32BE: #define __UINT64_FMTx__ "llx"
3847// MIPSN32BE: #define __UINT64_MAX__ 18446744073709551615ULL
3848// MIPSN32BE: #define __UINT64_TYPE__ long long unsigned int
3849// MIPSN32BE: #define __UINT8_C_SUFFIX__
3850// MIPSN32BE: #define __UINT8_FMTX__ "hhX"
3851// MIPSN32BE: #define __UINT8_FMTo__ "hho"
3852// MIPSN32BE: #define __UINT8_FMTu__ "hhu"
3853// MIPSN32BE: #define __UINT8_FMTx__ "hhx"
3854// MIPSN32BE: #define __UINT8_MAX__ 255
3855// MIPSN32BE: #define __UINT8_TYPE__ unsigned char
3856// MIPSN32BE: #define __UINTMAX_C_SUFFIX__ ULL
3857// MIPSN32BE: #define __UINTMAX_FMTX__ "llX"
3858// MIPSN32BE: #define __UINTMAX_FMTo__ "llo"
3859// MIPSN32BE: #define __UINTMAX_FMTu__ "llu"
3860// MIPSN32BE: #define __UINTMAX_FMTx__ "llx"
3861// MIPSN32BE: #define __UINTMAX_MAX__ 18446744073709551615ULL
3862// MIPSN32BE: #define __UINTMAX_TYPE__ long long unsigned int
3863// MIPSN32BE: #define __UINTMAX_WIDTH__ 64
3864// MIPSN32BE: #define __UINTPTR_FMTX__ "lX"
3865// MIPSN32BE: #define __UINTPTR_FMTo__ "lo"
3866// MIPSN32BE: #define __UINTPTR_FMTu__ "lu"
3867// MIPSN32BE: #define __UINTPTR_FMTx__ "lx"
3868// MIPSN32BE: #define __UINTPTR_MAX__ 4294967295UL
3869// MIPSN32BE: #define __UINTPTR_TYPE__ long unsigned int
3870// MIPSN32BE: #define __UINTPTR_WIDTH__ 32
3871// MIPSN32BE: #define __UINT_FAST16_FMTX__ "hX"
3872// MIPSN32BE: #define __UINT_FAST16_FMTo__ "ho"
3873// MIPSN32BE: #define __UINT_FAST16_FMTu__ "hu"
3874// MIPSN32BE: #define __UINT_FAST16_FMTx__ "hx"
3875// MIPSN32BE: #define __UINT_FAST16_MAX__ 65535
3876// MIPSN32BE: #define __UINT_FAST16_TYPE__ unsigned short
3877// MIPSN32BE: #define __UINT_FAST32_FMTX__ "X"
3878// MIPSN32BE: #define __UINT_FAST32_FMTo__ "o"
3879// MIPSN32BE: #define __UINT_FAST32_FMTu__ "u"
3880// MIPSN32BE: #define __UINT_FAST32_FMTx__ "x"
3881// MIPSN32BE: #define __UINT_FAST32_MAX__ 4294967295U
3882// MIPSN32BE: #define __UINT_FAST32_TYPE__ unsigned int
3883// MIPSN32BE: #define __UINT_FAST64_FMTX__ "llX"
3884// MIPSN32BE: #define __UINT_FAST64_FMTo__ "llo"
3885// MIPSN32BE: #define __UINT_FAST64_FMTu__ "llu"
3886// MIPSN32BE: #define __UINT_FAST64_FMTx__ "llx"
3887// MIPSN32BE: #define __UINT_FAST64_MAX__ 18446744073709551615ULL
3888// MIPSN32BE: #define __UINT_FAST64_TYPE__ long long unsigned int
3889// MIPSN32BE: #define __UINT_FAST8_FMTX__ "hhX"
3890// MIPSN32BE: #define __UINT_FAST8_FMTo__ "hho"
3891// MIPSN32BE: #define __UINT_FAST8_FMTu__ "hhu"
3892// MIPSN32BE: #define __UINT_FAST8_FMTx__ "hhx"
3893// MIPSN32BE: #define __UINT_FAST8_MAX__ 255
3894// MIPSN32BE: #define __UINT_FAST8_TYPE__ unsigned char
3895// MIPSN32BE: #define __UINT_LEAST16_FMTX__ "hX"
3896// MIPSN32BE: #define __UINT_LEAST16_FMTo__ "ho"
3897// MIPSN32BE: #define __UINT_LEAST16_FMTu__ "hu"
3898// MIPSN32BE: #define __UINT_LEAST16_FMTx__ "hx"
3899// MIPSN32BE: #define __UINT_LEAST16_MAX__ 65535
3900// MIPSN32BE: #define __UINT_LEAST16_TYPE__ unsigned short
3901// MIPSN32BE: #define __UINT_LEAST32_FMTX__ "X"
3902// MIPSN32BE: #define __UINT_LEAST32_FMTo__ "o"
3903// MIPSN32BE: #define __UINT_LEAST32_FMTu__ "u"
3904// MIPSN32BE: #define __UINT_LEAST32_FMTx__ "x"
3905// MIPSN32BE: #define __UINT_LEAST32_MAX__ 4294967295U
3906// MIPSN32BE: #define __UINT_LEAST32_TYPE__ unsigned int
3907// MIPSN32BE: #define __UINT_LEAST64_FMTX__ "llX"
3908// MIPSN32BE: #define __UINT_LEAST64_FMTo__ "llo"
3909// MIPSN32BE: #define __UINT_LEAST64_FMTu__ "llu"
3910// MIPSN32BE: #define __UINT_LEAST64_FMTx__ "llx"
3911// MIPSN32BE: #define __UINT_LEAST64_MAX__ 18446744073709551615ULL
3912// MIPSN32BE: #define __UINT_LEAST64_TYPE__ long long unsigned int
3913// MIPSN32BE: #define __UINT_LEAST8_FMTX__ "hhX"
3914// MIPSN32BE: #define __UINT_LEAST8_FMTo__ "hho"
3915// MIPSN32BE: #define __UINT_LEAST8_FMTu__ "hhu"
3916// MIPSN32BE: #define __UINT_LEAST8_FMTx__ "hhx"
3917// MIPSN32BE: #define __UINT_LEAST8_MAX__ 255
3918// MIPSN32BE: #define __UINT_LEAST8_TYPE__ unsigned char
James Y Knightb214cbc2016-03-04 19:00:41 +00003919// MIPSN32BE: #define __USER_LABEL_PREFIX__
Simon Atanasyan495523e42015-01-22 23:16:48 +00003920// MIPSN32BE: #define __WCHAR_MAX__ 2147483647
3921// MIPSN32BE: #define __WCHAR_TYPE__ int
3922// MIPSN32BE: #define __WCHAR_WIDTH__ 32
3923// MIPSN32BE: #define __WINT_TYPE__ int
3924// MIPSN32BE: #define __WINT_WIDTH__ 32
3925// MIPSN32BE: #define __clang__ 1
3926// MIPSN32BE: #define __llvm__ 1
3927// MIPSN32BE: #define __mips 64
3928// MIPSN32BE: #define __mips64 1
3929// MIPSN32BE: #define __mips64__ 1
3930// MIPSN32BE: #define __mips__ 1
Simon Dardisdf827a72017-02-21 16:01:00 +00003931// MIPSN32BE: #define __mips_abicalls 1
Simon Atanasyan495523e42015-01-22 23:16:48 +00003932// MIPSN32BE: #define __mips_fpr 64
3933// MIPSN32BE: #define __mips_hard_float 1
3934// MIPSN32BE: #define __mips_isa_rev 2
3935// MIPSN32BE: #define __mips_n32 1
3936// MIPSN32BE: #define _mips 1
3937// MIPSN32BE: #define mips 1
3938//
3939// RUN: %clang_cc1 -E -dM -ffreestanding \
3940// RUN: -triple=mips64el-none-none -target-abi n32 < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00003941// RUN: | FileCheck -match-full-lines -check-prefix MIPSN32EL %s
Simon Atanasyan495523e42015-01-22 23:16:48 +00003942//
3943// MIPSN32EL: #define MIPSEL 1
3944// MIPSN32EL: #define _ABIN32 2
3945// MIPSN32EL: #define _ILP32 1
3946// MIPSN32EL: #define _MIPSEL 1
3947// MIPSN32EL: #define _MIPS_ARCH "mips64r2"
3948// MIPSN32EL: #define _MIPS_ARCH_MIPS64R2 1
3949// MIPSN32EL: #define _MIPS_FPSET 32
3950// MIPSN32EL: #define _MIPS_ISA _MIPS_ISA_MIPS64
3951// MIPSN32EL: #define _MIPS_SIM _ABIN32
3952// MIPSN32EL: #define _MIPS_SZINT 32
3953// MIPSN32EL: #define _MIPS_SZLONG 32
3954// MIPSN32EL: #define _MIPS_SZPTR 32
3955// MIPSN32EL: #define __ATOMIC_ACQUIRE 2
3956// MIPSN32EL: #define __ATOMIC_ACQ_REL 4
3957// MIPSN32EL: #define __ATOMIC_CONSUME 1
3958// MIPSN32EL: #define __ATOMIC_RELAXED 0
3959// MIPSN32EL: #define __ATOMIC_RELEASE 3
3960// MIPSN32EL: #define __ATOMIC_SEQ_CST 5
3961// MIPSN32EL: #define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
3962// MIPSN32EL: #define __CHAR16_TYPE__ unsigned short
3963// MIPSN32EL: #define __CHAR32_TYPE__ unsigned int
3964// MIPSN32EL: #define __CHAR_BIT__ 8
3965// MIPSN32EL: #define __CONSTANT_CFSTRINGS__ 1
3966// MIPSN32EL: #define __DBL_DENORM_MIN__ 4.9406564584124654e-324
3967// MIPSN32EL: #define __DBL_DIG__ 15
3968// MIPSN32EL: #define __DBL_EPSILON__ 2.2204460492503131e-16
3969// MIPSN32EL: #define __DBL_HAS_DENORM__ 1
3970// MIPSN32EL: #define __DBL_HAS_INFINITY__ 1
3971// MIPSN32EL: #define __DBL_HAS_QUIET_NAN__ 1
3972// MIPSN32EL: #define __DBL_MANT_DIG__ 53
3973// MIPSN32EL: #define __DBL_MAX_10_EXP__ 308
3974// MIPSN32EL: #define __DBL_MAX_EXP__ 1024
3975// MIPSN32EL: #define __DBL_MAX__ 1.7976931348623157e+308
3976// MIPSN32EL: #define __DBL_MIN_10_EXP__ (-307)
3977// MIPSN32EL: #define __DBL_MIN_EXP__ (-1021)
3978// MIPSN32EL: #define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00003979// MIPSN32EL: #define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Simon Atanasyan495523e42015-01-22 23:16:48 +00003980// MIPSN32EL: #define __FINITE_MATH_ONLY__ 0
3981// MIPSN32EL: #define __FLT_DENORM_MIN__ 1.40129846e-45F
3982// MIPSN32EL: #define __FLT_DIG__ 6
3983// MIPSN32EL: #define __FLT_EPSILON__ 1.19209290e-7F
3984// MIPSN32EL: #define __FLT_EVAL_METHOD__ 0
3985// MIPSN32EL: #define __FLT_HAS_DENORM__ 1
3986// MIPSN32EL: #define __FLT_HAS_INFINITY__ 1
3987// MIPSN32EL: #define __FLT_HAS_QUIET_NAN__ 1
3988// MIPSN32EL: #define __FLT_MANT_DIG__ 24
3989// MIPSN32EL: #define __FLT_MAX_10_EXP__ 38
3990// MIPSN32EL: #define __FLT_MAX_EXP__ 128
3991// MIPSN32EL: #define __FLT_MAX__ 3.40282347e+38F
3992// MIPSN32EL: #define __FLT_MIN_10_EXP__ (-37)
3993// MIPSN32EL: #define __FLT_MIN_EXP__ (-125)
3994// MIPSN32EL: #define __FLT_MIN__ 1.17549435e-38F
3995// MIPSN32EL: #define __FLT_RADIX__ 2
3996// MIPSN32EL: #define __GCC_ATOMIC_BOOL_LOCK_FREE 2
3997// MIPSN32EL: #define __GCC_ATOMIC_CHAR16_T_LOCK_FREE 2
3998// MIPSN32EL: #define __GCC_ATOMIC_CHAR32_T_LOCK_FREE 2
3999// MIPSN32EL: #define __GCC_ATOMIC_CHAR_LOCK_FREE 2
4000// MIPSN32EL: #define __GCC_ATOMIC_INT_LOCK_FREE 2
4001// MIPSN32EL: #define __GCC_ATOMIC_LLONG_LOCK_FREE 2
4002// MIPSN32EL: #define __GCC_ATOMIC_LONG_LOCK_FREE 2
4003// MIPSN32EL: #define __GCC_ATOMIC_POINTER_LOCK_FREE 2
4004// MIPSN32EL: #define __GCC_ATOMIC_SHORT_LOCK_FREE 2
4005// MIPSN32EL: #define __GCC_ATOMIC_TEST_AND_SET_TRUEVAL 1
4006// MIPSN32EL: #define __GCC_ATOMIC_WCHAR_T_LOCK_FREE 2
4007// MIPSN32EL: #define __GNUC_MINOR__ 2
4008// MIPSN32EL: #define __GNUC_PATCHLEVEL__ 1
4009// MIPSN32EL: #define __GNUC_STDC_INLINE__ 1
4010// MIPSN32EL: #define __GNUC__ 4
4011// MIPSN32EL: #define __GXX_ABI_VERSION 1002
Simon Atanasyan495523e42015-01-22 23:16:48 +00004012// MIPSN32EL: #define __ILP32__ 1
4013// MIPSN32EL: #define __INT16_C_SUFFIX__
4014// MIPSN32EL: #define __INT16_FMTd__ "hd"
4015// MIPSN32EL: #define __INT16_FMTi__ "hi"
4016// MIPSN32EL: #define __INT16_MAX__ 32767
4017// MIPSN32EL: #define __INT16_TYPE__ short
4018// MIPSN32EL: #define __INT32_C_SUFFIX__
4019// MIPSN32EL: #define __INT32_FMTd__ "d"
4020// MIPSN32EL: #define __INT32_FMTi__ "i"
4021// MIPSN32EL: #define __INT32_MAX__ 2147483647
4022// MIPSN32EL: #define __INT32_TYPE__ int
4023// MIPSN32EL: #define __INT64_C_SUFFIX__ LL
4024// MIPSN32EL: #define __INT64_FMTd__ "lld"
4025// MIPSN32EL: #define __INT64_FMTi__ "lli"
4026// MIPSN32EL: #define __INT64_MAX__ 9223372036854775807LL
4027// MIPSN32EL: #define __INT64_TYPE__ long long int
4028// MIPSN32EL: #define __INT8_C_SUFFIX__
4029// MIPSN32EL: #define __INT8_FMTd__ "hhd"
4030// MIPSN32EL: #define __INT8_FMTi__ "hhi"
4031// MIPSN32EL: #define __INT8_MAX__ 127
4032// MIPSN32EL: #define __INT8_TYPE__ signed char
4033// MIPSN32EL: #define __INTMAX_C_SUFFIX__ LL
4034// MIPSN32EL: #define __INTMAX_FMTd__ "lld"
4035// MIPSN32EL: #define __INTMAX_FMTi__ "lli"
4036// MIPSN32EL: #define __INTMAX_MAX__ 9223372036854775807LL
4037// MIPSN32EL: #define __INTMAX_TYPE__ long long int
4038// MIPSN32EL: #define __INTMAX_WIDTH__ 64
4039// MIPSN32EL: #define __INTPTR_FMTd__ "ld"
4040// MIPSN32EL: #define __INTPTR_FMTi__ "li"
4041// MIPSN32EL: #define __INTPTR_MAX__ 2147483647L
4042// MIPSN32EL: #define __INTPTR_TYPE__ long int
4043// MIPSN32EL: #define __INTPTR_WIDTH__ 32
4044// MIPSN32EL: #define __INT_FAST16_FMTd__ "hd"
4045// MIPSN32EL: #define __INT_FAST16_FMTi__ "hi"
4046// MIPSN32EL: #define __INT_FAST16_MAX__ 32767
4047// MIPSN32EL: #define __INT_FAST16_TYPE__ short
4048// MIPSN32EL: #define __INT_FAST32_FMTd__ "d"
4049// MIPSN32EL: #define __INT_FAST32_FMTi__ "i"
4050// MIPSN32EL: #define __INT_FAST32_MAX__ 2147483647
4051// MIPSN32EL: #define __INT_FAST32_TYPE__ int
4052// MIPSN32EL: #define __INT_FAST64_FMTd__ "lld"
4053// MIPSN32EL: #define __INT_FAST64_FMTi__ "lli"
4054// MIPSN32EL: #define __INT_FAST64_MAX__ 9223372036854775807LL
4055// MIPSN32EL: #define __INT_FAST64_TYPE__ long long int
4056// MIPSN32EL: #define __INT_FAST8_FMTd__ "hhd"
4057// MIPSN32EL: #define __INT_FAST8_FMTi__ "hhi"
4058// MIPSN32EL: #define __INT_FAST8_MAX__ 127
4059// MIPSN32EL: #define __INT_FAST8_TYPE__ signed char
4060// MIPSN32EL: #define __INT_LEAST16_FMTd__ "hd"
4061// MIPSN32EL: #define __INT_LEAST16_FMTi__ "hi"
4062// MIPSN32EL: #define __INT_LEAST16_MAX__ 32767
4063// MIPSN32EL: #define __INT_LEAST16_TYPE__ short
4064// MIPSN32EL: #define __INT_LEAST32_FMTd__ "d"
4065// MIPSN32EL: #define __INT_LEAST32_FMTi__ "i"
4066// MIPSN32EL: #define __INT_LEAST32_MAX__ 2147483647
4067// MIPSN32EL: #define __INT_LEAST32_TYPE__ int
4068// MIPSN32EL: #define __INT_LEAST64_FMTd__ "lld"
4069// MIPSN32EL: #define __INT_LEAST64_FMTi__ "lli"
4070// MIPSN32EL: #define __INT_LEAST64_MAX__ 9223372036854775807LL
4071// MIPSN32EL: #define __INT_LEAST64_TYPE__ long long int
4072// MIPSN32EL: #define __INT_LEAST8_FMTd__ "hhd"
4073// MIPSN32EL: #define __INT_LEAST8_FMTi__ "hhi"
4074// MIPSN32EL: #define __INT_LEAST8_MAX__ 127
4075// MIPSN32EL: #define __INT_LEAST8_TYPE__ signed char
4076// MIPSN32EL: #define __INT_MAX__ 2147483647
4077// MIPSN32EL: #define __LDBL_DENORM_MIN__ 6.47517511943802511092443895822764655e-4966L
4078// MIPSN32EL: #define __LDBL_DIG__ 33
4079// MIPSN32EL: #define __LDBL_EPSILON__ 1.92592994438723585305597794258492732e-34L
4080// MIPSN32EL: #define __LDBL_HAS_DENORM__ 1
4081// MIPSN32EL: #define __LDBL_HAS_INFINITY__ 1
4082// MIPSN32EL: #define __LDBL_HAS_QUIET_NAN__ 1
4083// MIPSN32EL: #define __LDBL_MANT_DIG__ 113
4084// MIPSN32EL: #define __LDBL_MAX_10_EXP__ 4932
4085// MIPSN32EL: #define __LDBL_MAX_EXP__ 16384
4086// MIPSN32EL: #define __LDBL_MAX__ 1.18973149535723176508575932662800702e+4932L
4087// MIPSN32EL: #define __LDBL_MIN_10_EXP__ (-4931)
4088// MIPSN32EL: #define __LDBL_MIN_EXP__ (-16381)
4089// MIPSN32EL: #define __LDBL_MIN__ 3.36210314311209350626267781732175260e-4932L
4090// MIPSN32EL: #define __LITTLE_ENDIAN__ 1
4091// MIPSN32EL: #define __LONG_LONG_MAX__ 9223372036854775807LL
4092// MIPSN32EL: #define __LONG_MAX__ 2147483647L
4093// MIPSN32EL: #define __MIPSEL 1
4094// MIPSN32EL: #define __MIPSEL__ 1
4095// MIPSN32EL: #define __NO_INLINE__ 1
4096// MIPSN32EL: #define __ORDER_BIG_ENDIAN__ 4321
4097// MIPSN32EL: #define __ORDER_LITTLE_ENDIAN__ 1234
4098// MIPSN32EL: #define __ORDER_PDP_ENDIAN__ 3412
4099// MIPSN32EL: #define __POINTER_WIDTH__ 32
4100// MIPSN32EL: #define __PRAGMA_REDEFINE_EXTNAME 1
4101// MIPSN32EL: #define __PTRDIFF_FMTd__ "d"
4102// MIPSN32EL: #define __PTRDIFF_FMTi__ "i"
4103// MIPSN32EL: #define __PTRDIFF_MAX__ 2147483647
4104// MIPSN32EL: #define __PTRDIFF_TYPE__ int
4105// MIPSN32EL: #define __PTRDIFF_WIDTH__ 32
4106// MIPSN32EL: #define __REGISTER_PREFIX__
4107// MIPSN32EL: #define __SCHAR_MAX__ 127
4108// MIPSN32EL: #define __SHRT_MAX__ 32767
4109// MIPSN32EL: #define __SIG_ATOMIC_MAX__ 2147483647
4110// MIPSN32EL: #define __SIG_ATOMIC_WIDTH__ 32
4111// MIPSN32EL: #define __SIZEOF_DOUBLE__ 8
4112// MIPSN32EL: #define __SIZEOF_FLOAT__ 4
4113// MIPSN32EL: #define __SIZEOF_INT__ 4
4114// MIPSN32EL: #define __SIZEOF_LONG_DOUBLE__ 16
4115// MIPSN32EL: #define __SIZEOF_LONG_LONG__ 8
4116// MIPSN32EL: #define __SIZEOF_LONG__ 4
4117// MIPSN32EL: #define __SIZEOF_POINTER__ 4
4118// MIPSN32EL: #define __SIZEOF_PTRDIFF_T__ 4
4119// MIPSN32EL: #define __SIZEOF_SHORT__ 2
4120// MIPSN32EL: #define __SIZEOF_SIZE_T__ 4
4121// MIPSN32EL: #define __SIZEOF_WCHAR_T__ 4
4122// MIPSN32EL: #define __SIZEOF_WINT_T__ 4
4123// MIPSN32EL: #define __SIZE_FMTX__ "X"
4124// MIPSN32EL: #define __SIZE_FMTo__ "o"
4125// MIPSN32EL: #define __SIZE_FMTu__ "u"
4126// MIPSN32EL: #define __SIZE_FMTx__ "x"
4127// MIPSN32EL: #define __SIZE_MAX__ 4294967295U
4128// MIPSN32EL: #define __SIZE_TYPE__ unsigned int
4129// MIPSN32EL: #define __SIZE_WIDTH__ 32
4130// MIPSN32EL: #define __STDC_HOSTED__ 0
4131// MIPSN32EL: #define __STDC_UTF_16__ 1
4132// MIPSN32EL: #define __STDC_UTF_32__ 1
4133// MIPSN32EL: #define __STDC_VERSION__ 201112L
4134// MIPSN32EL: #define __STDC__ 1
4135// MIPSN32EL: #define __UINT16_C_SUFFIX__
4136// MIPSN32EL: #define __UINT16_FMTX__ "hX"
4137// MIPSN32EL: #define __UINT16_FMTo__ "ho"
4138// MIPSN32EL: #define __UINT16_FMTu__ "hu"
4139// MIPSN32EL: #define __UINT16_FMTx__ "hx"
4140// MIPSN32EL: #define __UINT16_MAX__ 65535
4141// MIPSN32EL: #define __UINT16_TYPE__ unsigned short
4142// MIPSN32EL: #define __UINT32_C_SUFFIX__ U
4143// MIPSN32EL: #define __UINT32_FMTX__ "X"
4144// MIPSN32EL: #define __UINT32_FMTo__ "o"
4145// MIPSN32EL: #define __UINT32_FMTu__ "u"
4146// MIPSN32EL: #define __UINT32_FMTx__ "x"
4147// MIPSN32EL: #define __UINT32_MAX__ 4294967295U
4148// MIPSN32EL: #define __UINT32_TYPE__ unsigned int
4149// MIPSN32EL: #define __UINT64_C_SUFFIX__ ULL
4150// MIPSN32EL: #define __UINT64_FMTX__ "llX"
4151// MIPSN32EL: #define __UINT64_FMTo__ "llo"
4152// MIPSN32EL: #define __UINT64_FMTu__ "llu"
4153// MIPSN32EL: #define __UINT64_FMTx__ "llx"
4154// MIPSN32EL: #define __UINT64_MAX__ 18446744073709551615ULL
4155// MIPSN32EL: #define __UINT64_TYPE__ long long unsigned int
4156// MIPSN32EL: #define __UINT8_C_SUFFIX__
4157// MIPSN32EL: #define __UINT8_FMTX__ "hhX"
4158// MIPSN32EL: #define __UINT8_FMTo__ "hho"
4159// MIPSN32EL: #define __UINT8_FMTu__ "hhu"
4160// MIPSN32EL: #define __UINT8_FMTx__ "hhx"
4161// MIPSN32EL: #define __UINT8_MAX__ 255
4162// MIPSN32EL: #define __UINT8_TYPE__ unsigned char
4163// MIPSN32EL: #define __UINTMAX_C_SUFFIX__ ULL
4164// MIPSN32EL: #define __UINTMAX_FMTX__ "llX"
4165// MIPSN32EL: #define __UINTMAX_FMTo__ "llo"
4166// MIPSN32EL: #define __UINTMAX_FMTu__ "llu"
4167// MIPSN32EL: #define __UINTMAX_FMTx__ "llx"
4168// MIPSN32EL: #define __UINTMAX_MAX__ 18446744073709551615ULL
4169// MIPSN32EL: #define __UINTMAX_TYPE__ long long unsigned int
4170// MIPSN32EL: #define __UINTMAX_WIDTH__ 64
4171// MIPSN32EL: #define __UINTPTR_FMTX__ "lX"
4172// MIPSN32EL: #define __UINTPTR_FMTo__ "lo"
4173// MIPSN32EL: #define __UINTPTR_FMTu__ "lu"
4174// MIPSN32EL: #define __UINTPTR_FMTx__ "lx"
4175// MIPSN32EL: #define __UINTPTR_MAX__ 4294967295UL
4176// MIPSN32EL: #define __UINTPTR_TYPE__ long unsigned int
4177// MIPSN32EL: #define __UINTPTR_WIDTH__ 32
4178// MIPSN32EL: #define __UINT_FAST16_FMTX__ "hX"
4179// MIPSN32EL: #define __UINT_FAST16_FMTo__ "ho"
4180// MIPSN32EL: #define __UINT_FAST16_FMTu__ "hu"
4181// MIPSN32EL: #define __UINT_FAST16_FMTx__ "hx"
4182// MIPSN32EL: #define __UINT_FAST16_MAX__ 65535
4183// MIPSN32EL: #define __UINT_FAST16_TYPE__ unsigned short
4184// MIPSN32EL: #define __UINT_FAST32_FMTX__ "X"
4185// MIPSN32EL: #define __UINT_FAST32_FMTo__ "o"
4186// MIPSN32EL: #define __UINT_FAST32_FMTu__ "u"
4187// MIPSN32EL: #define __UINT_FAST32_FMTx__ "x"
4188// MIPSN32EL: #define __UINT_FAST32_MAX__ 4294967295U
4189// MIPSN32EL: #define __UINT_FAST32_TYPE__ unsigned int
4190// MIPSN32EL: #define __UINT_FAST64_FMTX__ "llX"
4191// MIPSN32EL: #define __UINT_FAST64_FMTo__ "llo"
4192// MIPSN32EL: #define __UINT_FAST64_FMTu__ "llu"
4193// MIPSN32EL: #define __UINT_FAST64_FMTx__ "llx"
4194// MIPSN32EL: #define __UINT_FAST64_MAX__ 18446744073709551615ULL
4195// MIPSN32EL: #define __UINT_FAST64_TYPE__ long long unsigned int
4196// MIPSN32EL: #define __UINT_FAST8_FMTX__ "hhX"
4197// MIPSN32EL: #define __UINT_FAST8_FMTo__ "hho"
4198// MIPSN32EL: #define __UINT_FAST8_FMTu__ "hhu"
4199// MIPSN32EL: #define __UINT_FAST8_FMTx__ "hhx"
4200// MIPSN32EL: #define __UINT_FAST8_MAX__ 255
4201// MIPSN32EL: #define __UINT_FAST8_TYPE__ unsigned char
4202// MIPSN32EL: #define __UINT_LEAST16_FMTX__ "hX"
4203// MIPSN32EL: #define __UINT_LEAST16_FMTo__ "ho"
4204// MIPSN32EL: #define __UINT_LEAST16_FMTu__ "hu"
4205// MIPSN32EL: #define __UINT_LEAST16_FMTx__ "hx"
4206// MIPSN32EL: #define __UINT_LEAST16_MAX__ 65535
4207// MIPSN32EL: #define __UINT_LEAST16_TYPE__ unsigned short
4208// MIPSN32EL: #define __UINT_LEAST32_FMTX__ "X"
4209// MIPSN32EL: #define __UINT_LEAST32_FMTo__ "o"
4210// MIPSN32EL: #define __UINT_LEAST32_FMTu__ "u"
4211// MIPSN32EL: #define __UINT_LEAST32_FMTx__ "x"
4212// MIPSN32EL: #define __UINT_LEAST32_MAX__ 4294967295U
4213// MIPSN32EL: #define __UINT_LEAST32_TYPE__ unsigned int
4214// MIPSN32EL: #define __UINT_LEAST64_FMTX__ "llX"
4215// MIPSN32EL: #define __UINT_LEAST64_FMTo__ "llo"
4216// MIPSN32EL: #define __UINT_LEAST64_FMTu__ "llu"
4217// MIPSN32EL: #define __UINT_LEAST64_FMTx__ "llx"
4218// MIPSN32EL: #define __UINT_LEAST64_MAX__ 18446744073709551615ULL
4219// MIPSN32EL: #define __UINT_LEAST64_TYPE__ long long unsigned int
4220// MIPSN32EL: #define __UINT_LEAST8_FMTX__ "hhX"
4221// MIPSN32EL: #define __UINT_LEAST8_FMTo__ "hho"
4222// MIPSN32EL: #define __UINT_LEAST8_FMTu__ "hhu"
4223// MIPSN32EL: #define __UINT_LEAST8_FMTx__ "hhx"
4224// MIPSN32EL: #define __UINT_LEAST8_MAX__ 255
4225// MIPSN32EL: #define __UINT_LEAST8_TYPE__ unsigned char
James Y Knightb214cbc2016-03-04 19:00:41 +00004226// MIPSN32EL: #define __USER_LABEL_PREFIX__
Simon Atanasyan495523e42015-01-22 23:16:48 +00004227// MIPSN32EL: #define __WCHAR_MAX__ 2147483647
4228// MIPSN32EL: #define __WCHAR_TYPE__ int
4229// MIPSN32EL: #define __WCHAR_WIDTH__ 32
4230// MIPSN32EL: #define __WINT_TYPE__ int
4231// MIPSN32EL: #define __WINT_WIDTH__ 32
4232// MIPSN32EL: #define __clang__ 1
4233// MIPSN32EL: #define __llvm__ 1
4234// MIPSN32EL: #define __mips 64
4235// MIPSN32EL: #define __mips64 1
4236// MIPSN32EL: #define __mips64__ 1
4237// MIPSN32EL: #define __mips__ 1
Simon Dardisdf827a72017-02-21 16:01:00 +00004238// MIPSN32EL: #define __mips_abicalls 1
Simon Atanasyan495523e42015-01-22 23:16:48 +00004239// MIPSN32EL: #define __mips_fpr 64
4240// MIPSN32EL: #define __mips_hard_float 1
4241// MIPSN32EL: #define __mips_isa_rev 2
4242// MIPSN32EL: #define __mips_n32 1
4243// MIPSN32EL: #define _mips 1
4244// MIPSN32EL: #define mips 1
4245//
James Y Knightc97efa42016-02-11 16:51:29 +00004246// RUN: %clang_cc1 -E -dM -ffreestanding -triple=mips64-none-none < /dev/null | FileCheck -match-full-lines -check-prefix MIPS64BE %s
Richard Smith59139022016-09-30 22:41:36 +00004247// RUN: %clang_cc1 -x c++ -E -dM -ffreestanding -triple=mips64-none-none < /dev/null | FileCheck -match-full-lines -check-prefix MIPS64BE -check-prefix MIPS64BE-CXX %s
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004248//
4249// MIPS64BE:#define MIPSEB 1
4250// MIPS64BE:#define _ABI64 3
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00004251// MIPS64BE:#define _LP64 1
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004252// MIPS64BE:#define _MIPSEB 1
Simon Atanasyan1a3665b62014-01-27 13:59:04 +00004253// MIPS64BE:#define _MIPS_ARCH "mips64r2"
4254// MIPS64BE:#define _MIPS_ARCH_MIPS64R2 1
Simon Atanasyan2c97a812013-10-18 13:13:53 +00004255// MIPS64BE:#define _MIPS_FPSET 32
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004256// MIPS64BE:#define _MIPS_SIM _ABI64
4257// MIPS64BE:#define _MIPS_SZINT 32
4258// MIPS64BE:#define _MIPS_SZLONG 64
4259// MIPS64BE:#define _MIPS_SZPTR 64
Tim Northovera6a19f12015-02-06 01:25:07 +00004260// MIPS64BE:#define __BIGGEST_ALIGNMENT__ 16
Robert Lytton2c942c62014-03-10 12:06:29 +00004261// MIPS64BE:#define __BIG_ENDIAN__ 1
Dylan Noblesmith673728f2012-07-27 18:34:31 +00004262// MIPS64BE:#define __BYTE_ORDER__ __ORDER_BIG_ENDIAN__
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004263// MIPS64BE:#define __CHAR16_TYPE__ unsigned short
4264// MIPS64BE:#define __CHAR32_TYPE__ unsigned int
4265// MIPS64BE:#define __CHAR_BIT__ 8
4266// MIPS64BE:#define __CONSTANT_CFSTRINGS__ 1
4267// MIPS64BE:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
4268// MIPS64BE:#define __DBL_DIG__ 15
4269// MIPS64BE:#define __DBL_EPSILON__ 2.2204460492503131e-16
4270// MIPS64BE:#define __DBL_HAS_DENORM__ 1
4271// MIPS64BE:#define __DBL_HAS_INFINITY__ 1
4272// MIPS64BE:#define __DBL_HAS_QUIET_NAN__ 1
4273// MIPS64BE:#define __DBL_MANT_DIG__ 53
4274// MIPS64BE:#define __DBL_MAX_10_EXP__ 308
4275// MIPS64BE:#define __DBL_MAX_EXP__ 1024
4276// MIPS64BE:#define __DBL_MAX__ 1.7976931348623157e+308
4277// MIPS64BE:#define __DBL_MIN_10_EXP__ (-307)
4278// MIPS64BE:#define __DBL_MIN_EXP__ (-1021)
4279// MIPS64BE:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00004280// MIPS64BE:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004281// MIPS64BE:#define __FLT_DENORM_MIN__ 1.40129846e-45F
4282// MIPS64BE:#define __FLT_DIG__ 6
4283// MIPS64BE:#define __FLT_EPSILON__ 1.19209290e-7F
4284// MIPS64BE:#define __FLT_EVAL_METHOD__ 0
4285// MIPS64BE:#define __FLT_HAS_DENORM__ 1
4286// MIPS64BE:#define __FLT_HAS_INFINITY__ 1
4287// MIPS64BE:#define __FLT_HAS_QUIET_NAN__ 1
4288// MIPS64BE:#define __FLT_MANT_DIG__ 24
4289// MIPS64BE:#define __FLT_MAX_10_EXP__ 38
4290// MIPS64BE:#define __FLT_MAX_EXP__ 128
4291// MIPS64BE:#define __FLT_MAX__ 3.40282347e+38F
4292// MIPS64BE:#define __FLT_MIN_10_EXP__ (-37)
4293// MIPS64BE:#define __FLT_MIN_EXP__ (-125)
4294// MIPS64BE:#define __FLT_MIN__ 1.17549435e-38F
4295// MIPS64BE:#define __FLT_RADIX__ 2
James Y Knightc97efa42016-02-11 16:51:29 +00004296// MIPS64BE:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004297// MIPS64BE:#define __INT16_FMTd__ "hd"
4298// MIPS64BE:#define __INT16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00004299// MIPS64BE:#define __INT16_MAX__ 32767
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004300// MIPS64BE:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +00004301// MIPS64BE:#define __INT32_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004302// MIPS64BE:#define __INT32_FMTd__ "d"
4303// MIPS64BE:#define __INT32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00004304// MIPS64BE:#define __INT32_MAX__ 2147483647
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004305// MIPS64BE:#define __INT32_TYPE__ int
Simon Atanasyan495523e42015-01-22 23:16:48 +00004306// MIPS64BE:#define __INT64_C_SUFFIX__ L
4307// MIPS64BE:#define __INT64_FMTd__ "ld"
4308// MIPS64BE:#define __INT64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00004309// MIPS64BE:#define __INT64_MAX__ 9223372036854775807L
Simon Atanasyan495523e42015-01-22 23:16:48 +00004310// MIPS64BE:#define __INT64_TYPE__ long int
James Y Knightc97efa42016-02-11 16:51:29 +00004311// MIPS64BE:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004312// MIPS64BE:#define __INT8_FMTd__ "hhd"
4313// MIPS64BE:#define __INT8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00004314// MIPS64BE:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00004315// MIPS64BE:#define __INT8_TYPE__ signed char
Simon Atanasyan495523e42015-01-22 23:16:48 +00004316// MIPS64BE:#define __INTMAX_C_SUFFIX__ L
4317// MIPS64BE:#define __INTMAX_FMTd__ "ld"
4318// MIPS64BE:#define __INTMAX_FMTi__ "li"
4319// MIPS64BE:#define __INTMAX_MAX__ 9223372036854775807L
4320// MIPS64BE:#define __INTMAX_TYPE__ long int
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004321// MIPS64BE:#define __INTMAX_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004322// MIPS64BE:#define __INTPTR_FMTd__ "ld"
4323// MIPS64BE:#define __INTPTR_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00004324// MIPS64BE:#define __INTPTR_MAX__ 9223372036854775807L
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004325// MIPS64BE:#define __INTPTR_TYPE__ long int
4326// MIPS64BE:#define __INTPTR_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004327// MIPS64BE:#define __INT_FAST16_FMTd__ "hd"
4328// MIPS64BE:#define __INT_FAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00004329// MIPS64BE:#define __INT_FAST16_MAX__ 32767
4330// MIPS64BE:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004331// MIPS64BE:#define __INT_FAST32_FMTd__ "d"
4332// MIPS64BE:#define __INT_FAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00004333// MIPS64BE:#define __INT_FAST32_MAX__ 2147483647
4334// MIPS64BE:#define __INT_FAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004335// MIPS64BE:#define __INT_FAST64_FMTd__ "ld"
4336// MIPS64BE:#define __INT_FAST64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00004337// MIPS64BE:#define __INT_FAST64_MAX__ 9223372036854775807L
4338// MIPS64BE:#define __INT_FAST64_TYPE__ long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004339// MIPS64BE:#define __INT_FAST8_FMTd__ "hhd"
4340// MIPS64BE:#define __INT_FAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00004341// MIPS64BE:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00004342// MIPS64BE:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004343// MIPS64BE:#define __INT_LEAST16_FMTd__ "hd"
4344// MIPS64BE:#define __INT_LEAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00004345// MIPS64BE:#define __INT_LEAST16_MAX__ 32767
4346// MIPS64BE:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004347// MIPS64BE:#define __INT_LEAST32_FMTd__ "d"
4348// MIPS64BE:#define __INT_LEAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00004349// MIPS64BE:#define __INT_LEAST32_MAX__ 2147483647
4350// MIPS64BE:#define __INT_LEAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004351// MIPS64BE:#define __INT_LEAST64_FMTd__ "ld"
4352// MIPS64BE:#define __INT_LEAST64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00004353// MIPS64BE:#define __INT_LEAST64_MAX__ 9223372036854775807L
4354// MIPS64BE:#define __INT_LEAST64_TYPE__ long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004355// MIPS64BE:#define __INT_LEAST8_FMTd__ "hhd"
4356// MIPS64BE:#define __INT_LEAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00004357// MIPS64BE:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00004358// MIPS64BE:#define __INT_LEAST8_TYPE__ signed char
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004359// MIPS64BE:#define __INT_MAX__ 2147483647
4360// MIPS64BE:#define __LDBL_DENORM_MIN__ 6.47517511943802511092443895822764655e-4966L
4361// MIPS64BE:#define __LDBL_DIG__ 33
4362// MIPS64BE:#define __LDBL_EPSILON__ 1.92592994438723585305597794258492732e-34L
4363// MIPS64BE:#define __LDBL_HAS_DENORM__ 1
4364// MIPS64BE:#define __LDBL_HAS_INFINITY__ 1
4365// MIPS64BE:#define __LDBL_HAS_QUIET_NAN__ 1
4366// MIPS64BE:#define __LDBL_MANT_DIG__ 113
4367// MIPS64BE:#define __LDBL_MAX_10_EXP__ 4932
4368// MIPS64BE:#define __LDBL_MAX_EXP__ 16384
4369// MIPS64BE:#define __LDBL_MAX__ 1.18973149535723176508575932662800702e+4932L
4370// MIPS64BE:#define __LDBL_MIN_10_EXP__ (-4931)
4371// MIPS64BE:#define __LDBL_MIN_EXP__ (-16381)
4372// MIPS64BE:#define __LDBL_MIN__ 3.36210314311209350626267781732175260e-4932L
4373// MIPS64BE:#define __LONG_LONG_MAX__ 9223372036854775807LL
4374// MIPS64BE:#define __LONG_MAX__ 9223372036854775807L
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00004375// MIPS64BE:#define __LP64__ 1
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004376// MIPS64BE:#define __MIPSEB 1
4377// MIPS64BE:#define __MIPSEB__ 1
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004378// MIPS64BE:#define __POINTER_WIDTH__ 64
4379// MIPS64BE:#define __PRAGMA_REDEFINE_EXTNAME 1
4380// MIPS64BE:#define __PTRDIFF_TYPE__ long int
4381// MIPS64BE:#define __PTRDIFF_WIDTH__ 64
James Y Knightc97efa42016-02-11 16:51:29 +00004382// MIPS64BE:#define __REGISTER_PREFIX__
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004383// MIPS64BE:#define __SCHAR_MAX__ 127
4384// MIPS64BE:#define __SHRT_MAX__ 32767
Joerg Sonnenbergerb3a49692014-07-17 18:31:20 +00004385// MIPS64BE:#define __SIG_ATOMIC_MAX__ 2147483647
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004386// MIPS64BE:#define __SIG_ATOMIC_WIDTH__ 32
4387// MIPS64BE:#define __SIZEOF_DOUBLE__ 8
4388// MIPS64BE:#define __SIZEOF_FLOAT__ 4
Vasileios Kalintirisea503122015-02-12 11:36:56 +00004389// MIPS64BE:#define __SIZEOF_INT128__ 16
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004390// MIPS64BE:#define __SIZEOF_INT__ 4
4391// MIPS64BE:#define __SIZEOF_LONG_DOUBLE__ 16
4392// MIPS64BE:#define __SIZEOF_LONG_LONG__ 8
4393// MIPS64BE:#define __SIZEOF_LONG__ 8
4394// MIPS64BE:#define __SIZEOF_POINTER__ 8
4395// MIPS64BE:#define __SIZEOF_PTRDIFF_T__ 8
4396// MIPS64BE:#define __SIZEOF_SHORT__ 2
4397// MIPS64BE:#define __SIZEOF_SIZE_T__ 8
4398// MIPS64BE:#define __SIZEOF_WCHAR_T__ 4
4399// MIPS64BE:#define __SIZEOF_WINT_T__ 4
Evgeniy Stepanovc3c725a2013-03-28 08:36:54 +00004400// MIPS64BE:#define __SIZE_MAX__ 18446744073709551615UL
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004401// MIPS64BE:#define __SIZE_TYPE__ long unsigned int
4402// MIPS64BE:#define __SIZE_WIDTH__ 64
Richard Smith59139022016-09-30 22:41:36 +00004403// MIPS64BE-CXX:#define __STDCPP_DEFAULT_NEW_ALIGNMENT__ 16UL
James Y Knightc97efa42016-02-11 16:51:29 +00004404// MIPS64BE:#define __UINT16_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00004405// MIPS64BE:#define __UINT16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00004406// MIPS64BE:#define __UINT16_TYPE__ unsigned short
4407// MIPS64BE:#define __UINT32_C_SUFFIX__ U
4408// MIPS64BE:#define __UINT32_MAX__ 4294967295U
4409// MIPS64BE:#define __UINT32_TYPE__ unsigned int
Simon Atanasyan495523e42015-01-22 23:16:48 +00004410// MIPS64BE:#define __UINT64_C_SUFFIX__ UL
4411// MIPS64BE:#define __UINT64_MAX__ 18446744073709551615UL
4412// MIPS64BE:#define __UINT64_TYPE__ long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00004413// MIPS64BE:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00004414// MIPS64BE:#define __UINT8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00004415// MIPS64BE:#define __UINT8_TYPE__ unsigned char
Simon Atanasyan495523e42015-01-22 23:16:48 +00004416// MIPS64BE:#define __UINTMAX_C_SUFFIX__ UL
4417// MIPS64BE:#define __UINTMAX_MAX__ 18446744073709551615UL
4418// MIPS64BE:#define __UINTMAX_TYPE__ long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00004419// MIPS64BE:#define __UINTMAX_WIDTH__ 64
4420// MIPS64BE:#define __UINTPTR_MAX__ 18446744073709551615UL
4421// MIPS64BE:#define __UINTPTR_TYPE__ long unsigned int
4422// MIPS64BE:#define __UINTPTR_WIDTH__ 64
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00004423// MIPS64BE:#define __UINT_FAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00004424// MIPS64BE:#define __UINT_FAST16_TYPE__ unsigned short
4425// MIPS64BE:#define __UINT_FAST32_MAX__ 4294967295U
4426// MIPS64BE:#define __UINT_FAST32_TYPE__ unsigned int
4427// MIPS64BE:#define __UINT_FAST64_MAX__ 18446744073709551615UL
4428// MIPS64BE:#define __UINT_FAST64_TYPE__ long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00004429// MIPS64BE:#define __UINT_FAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00004430// MIPS64BE:#define __UINT_FAST8_TYPE__ unsigned char
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00004431// MIPS64BE:#define __UINT_LEAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00004432// MIPS64BE:#define __UINT_LEAST16_TYPE__ unsigned short
4433// MIPS64BE:#define __UINT_LEAST32_MAX__ 4294967295U
4434// MIPS64BE:#define __UINT_LEAST32_TYPE__ unsigned int
4435// MIPS64BE:#define __UINT_LEAST64_MAX__ 18446744073709551615UL
4436// MIPS64BE:#define __UINT_LEAST64_TYPE__ long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00004437// MIPS64BE:#define __UINT_LEAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00004438// MIPS64BE:#define __UINT_LEAST8_TYPE__ unsigned char
James Y Knightb214cbc2016-03-04 19:00:41 +00004439// MIPS64BE:#define __USER_LABEL_PREFIX__
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004440// MIPS64BE:#define __WCHAR_MAX__ 2147483647
4441// MIPS64BE:#define __WCHAR_TYPE__ int
4442// MIPS64BE:#define __WCHAR_WIDTH__ 32
4443// MIPS64BE:#define __WINT_TYPE__ int
4444// MIPS64BE:#define __WINT_WIDTH__ 32
4445// MIPS64BE:#define __clang__ 1
4446// MIPS64BE:#define __llvm__ 1
Simon Atanasyan26292cc2014-01-27 13:59:11 +00004447// MIPS64BE:#define __mips 64
Simon Atanasyanc6a0be02012-08-29 20:50:11 +00004448// MIPS64BE:#define __mips64 1
4449// MIPS64BE:#define __mips64__ 1
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004450// MIPS64BE:#define __mips__ 1
Simon Dardisdf827a72017-02-21 16:01:00 +00004451// MIPS64BE:#define __mips_abicalls 1
Simon Atanasyan2c97a812013-10-18 13:13:53 +00004452// MIPS64BE:#define __mips_fpr 64
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004453// MIPS64BE:#define __mips_hard_float 1
4454// MIPS64BE:#define __mips_n64 1
4455// MIPS64BE:#define _mips 1
4456// MIPS64BE:#define mips 1
4457//
James Y Knightc97efa42016-02-11 16:51:29 +00004458// 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 +00004459//
4460// MIPS64EL:#define MIPSEL 1
4461// MIPS64EL:#define _ABI64 3
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00004462// MIPS64EL:#define _LP64 1
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004463// MIPS64EL:#define _MIPSEL 1
Simon Atanasyan1a3665b62014-01-27 13:59:04 +00004464// MIPS64EL:#define _MIPS_ARCH "mips64r2"
4465// MIPS64EL:#define _MIPS_ARCH_MIPS64R2 1
Simon Atanasyan2c97a812013-10-18 13:13:53 +00004466// MIPS64EL:#define _MIPS_FPSET 32
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004467// MIPS64EL:#define _MIPS_SIM _ABI64
4468// MIPS64EL:#define _MIPS_SZINT 32
4469// MIPS64EL:#define _MIPS_SZLONG 64
4470// MIPS64EL:#define _MIPS_SZPTR 64
Tim Northovera6a19f12015-02-06 01:25:07 +00004471// MIPS64EL:#define __BIGGEST_ALIGNMENT__ 16
Dylan Noblesmith673728f2012-07-27 18:34:31 +00004472// MIPS64EL:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004473// MIPS64EL:#define __CHAR16_TYPE__ unsigned short
4474// MIPS64EL:#define __CHAR32_TYPE__ unsigned int
4475// MIPS64EL:#define __CHAR_BIT__ 8
4476// MIPS64EL:#define __CONSTANT_CFSTRINGS__ 1
4477// MIPS64EL:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
4478// MIPS64EL:#define __DBL_DIG__ 15
4479// MIPS64EL:#define __DBL_EPSILON__ 2.2204460492503131e-16
4480// MIPS64EL:#define __DBL_HAS_DENORM__ 1
4481// MIPS64EL:#define __DBL_HAS_INFINITY__ 1
4482// MIPS64EL:#define __DBL_HAS_QUIET_NAN__ 1
4483// MIPS64EL:#define __DBL_MANT_DIG__ 53
4484// MIPS64EL:#define __DBL_MAX_10_EXP__ 308
4485// MIPS64EL:#define __DBL_MAX_EXP__ 1024
4486// MIPS64EL:#define __DBL_MAX__ 1.7976931348623157e+308
4487// MIPS64EL:#define __DBL_MIN_10_EXP__ (-307)
4488// MIPS64EL:#define __DBL_MIN_EXP__ (-1021)
4489// MIPS64EL:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00004490// MIPS64EL:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004491// MIPS64EL:#define __FLT_DENORM_MIN__ 1.40129846e-45F
4492// MIPS64EL:#define __FLT_DIG__ 6
4493// MIPS64EL:#define __FLT_EPSILON__ 1.19209290e-7F
4494// MIPS64EL:#define __FLT_EVAL_METHOD__ 0
4495// MIPS64EL:#define __FLT_HAS_DENORM__ 1
4496// MIPS64EL:#define __FLT_HAS_INFINITY__ 1
4497// MIPS64EL:#define __FLT_HAS_QUIET_NAN__ 1
4498// MIPS64EL:#define __FLT_MANT_DIG__ 24
4499// MIPS64EL:#define __FLT_MAX_10_EXP__ 38
4500// MIPS64EL:#define __FLT_MAX_EXP__ 128
4501// MIPS64EL:#define __FLT_MAX__ 3.40282347e+38F
4502// MIPS64EL:#define __FLT_MIN_10_EXP__ (-37)
4503// MIPS64EL:#define __FLT_MIN_EXP__ (-125)
4504// MIPS64EL:#define __FLT_MIN__ 1.17549435e-38F
4505// MIPS64EL:#define __FLT_RADIX__ 2
James Y Knightc97efa42016-02-11 16:51:29 +00004506// MIPS64EL:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004507// MIPS64EL:#define __INT16_FMTd__ "hd"
4508// MIPS64EL:#define __INT16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00004509// MIPS64EL:#define __INT16_MAX__ 32767
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004510// MIPS64EL:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +00004511// MIPS64EL:#define __INT32_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004512// MIPS64EL:#define __INT32_FMTd__ "d"
4513// MIPS64EL:#define __INT32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00004514// MIPS64EL:#define __INT32_MAX__ 2147483647
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004515// MIPS64EL:#define __INT32_TYPE__ int
Simon Atanasyan495523e42015-01-22 23:16:48 +00004516// MIPS64EL:#define __INT64_C_SUFFIX__ L
4517// MIPS64EL:#define __INT64_FMTd__ "ld"
4518// MIPS64EL:#define __INT64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00004519// MIPS64EL:#define __INT64_MAX__ 9223372036854775807L
Simon Atanasyan495523e42015-01-22 23:16:48 +00004520// MIPS64EL:#define __INT64_TYPE__ long int
James Y Knightc97efa42016-02-11 16:51:29 +00004521// MIPS64EL:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004522// MIPS64EL:#define __INT8_FMTd__ "hhd"
4523// MIPS64EL:#define __INT8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00004524// MIPS64EL:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00004525// MIPS64EL:#define __INT8_TYPE__ signed char
Simon Atanasyan495523e42015-01-22 23:16:48 +00004526// MIPS64EL:#define __INTMAX_C_SUFFIX__ L
4527// MIPS64EL:#define __INTMAX_FMTd__ "ld"
4528// MIPS64EL:#define __INTMAX_FMTi__ "li"
4529// MIPS64EL:#define __INTMAX_MAX__ 9223372036854775807L
4530// MIPS64EL:#define __INTMAX_TYPE__ long int
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004531// MIPS64EL:#define __INTMAX_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004532// MIPS64EL:#define __INTPTR_FMTd__ "ld"
4533// MIPS64EL:#define __INTPTR_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00004534// MIPS64EL:#define __INTPTR_MAX__ 9223372036854775807L
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004535// MIPS64EL:#define __INTPTR_TYPE__ long int
4536// MIPS64EL:#define __INTPTR_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004537// MIPS64EL:#define __INT_FAST16_FMTd__ "hd"
4538// MIPS64EL:#define __INT_FAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00004539// MIPS64EL:#define __INT_FAST16_MAX__ 32767
4540// MIPS64EL:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004541// MIPS64EL:#define __INT_FAST32_FMTd__ "d"
4542// MIPS64EL:#define __INT_FAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00004543// MIPS64EL:#define __INT_FAST32_MAX__ 2147483647
4544// MIPS64EL:#define __INT_FAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004545// MIPS64EL:#define __INT_FAST64_FMTd__ "ld"
4546// MIPS64EL:#define __INT_FAST64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00004547// MIPS64EL:#define __INT_FAST64_MAX__ 9223372036854775807L
4548// MIPS64EL:#define __INT_FAST64_TYPE__ long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004549// MIPS64EL:#define __INT_FAST8_FMTd__ "hhd"
4550// MIPS64EL:#define __INT_FAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00004551// MIPS64EL:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00004552// MIPS64EL:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004553// MIPS64EL:#define __INT_LEAST16_FMTd__ "hd"
4554// MIPS64EL:#define __INT_LEAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00004555// MIPS64EL:#define __INT_LEAST16_MAX__ 32767
4556// MIPS64EL:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004557// MIPS64EL:#define __INT_LEAST32_FMTd__ "d"
4558// MIPS64EL:#define __INT_LEAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00004559// MIPS64EL:#define __INT_LEAST32_MAX__ 2147483647
4560// MIPS64EL:#define __INT_LEAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004561// MIPS64EL:#define __INT_LEAST64_FMTd__ "ld"
4562// MIPS64EL:#define __INT_LEAST64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00004563// MIPS64EL:#define __INT_LEAST64_MAX__ 9223372036854775807L
4564// MIPS64EL:#define __INT_LEAST64_TYPE__ long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004565// MIPS64EL:#define __INT_LEAST8_FMTd__ "hhd"
4566// MIPS64EL:#define __INT_LEAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00004567// MIPS64EL:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00004568// MIPS64EL:#define __INT_LEAST8_TYPE__ signed char
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004569// MIPS64EL:#define __INT_MAX__ 2147483647
4570// MIPS64EL:#define __LDBL_DENORM_MIN__ 6.47517511943802511092443895822764655e-4966L
4571// MIPS64EL:#define __LDBL_DIG__ 33
4572// MIPS64EL:#define __LDBL_EPSILON__ 1.92592994438723585305597794258492732e-34L
4573// MIPS64EL:#define __LDBL_HAS_DENORM__ 1
4574// MIPS64EL:#define __LDBL_HAS_INFINITY__ 1
4575// MIPS64EL:#define __LDBL_HAS_QUIET_NAN__ 1
4576// MIPS64EL:#define __LDBL_MANT_DIG__ 113
4577// MIPS64EL:#define __LDBL_MAX_10_EXP__ 4932
4578// MIPS64EL:#define __LDBL_MAX_EXP__ 16384
4579// MIPS64EL:#define __LDBL_MAX__ 1.18973149535723176508575932662800702e+4932L
4580// MIPS64EL:#define __LDBL_MIN_10_EXP__ (-4931)
4581// MIPS64EL:#define __LDBL_MIN_EXP__ (-16381)
4582// MIPS64EL:#define __LDBL_MIN__ 3.36210314311209350626267781732175260e-4932L
Robert Lytton2c942c62014-03-10 12:06:29 +00004583// MIPS64EL:#define __LITTLE_ENDIAN__ 1
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004584// MIPS64EL:#define __LONG_LONG_MAX__ 9223372036854775807LL
4585// MIPS64EL:#define __LONG_MAX__ 9223372036854775807L
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00004586// MIPS64EL:#define __LP64__ 1
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004587// MIPS64EL:#define __MIPSEL 1
4588// MIPS64EL:#define __MIPSEL__ 1
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004589// MIPS64EL:#define __POINTER_WIDTH__ 64
4590// MIPS64EL:#define __PRAGMA_REDEFINE_EXTNAME 1
4591// MIPS64EL:#define __PTRDIFF_TYPE__ long int
4592// MIPS64EL:#define __PTRDIFF_WIDTH__ 64
James Y Knightc97efa42016-02-11 16:51:29 +00004593// MIPS64EL:#define __REGISTER_PREFIX__
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004594// MIPS64EL:#define __SCHAR_MAX__ 127
4595// MIPS64EL:#define __SHRT_MAX__ 32767
Joerg Sonnenbergerb3a49692014-07-17 18:31:20 +00004596// MIPS64EL:#define __SIG_ATOMIC_MAX__ 2147483647
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004597// MIPS64EL:#define __SIG_ATOMIC_WIDTH__ 32
4598// MIPS64EL:#define __SIZEOF_DOUBLE__ 8
4599// MIPS64EL:#define __SIZEOF_FLOAT__ 4
Vasileios Kalintirisea503122015-02-12 11:36:56 +00004600// MIPS64EL:#define __SIZEOF_INT128__ 16
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004601// MIPS64EL:#define __SIZEOF_INT__ 4
4602// MIPS64EL:#define __SIZEOF_LONG_DOUBLE__ 16
4603// MIPS64EL:#define __SIZEOF_LONG_LONG__ 8
4604// MIPS64EL:#define __SIZEOF_LONG__ 8
4605// MIPS64EL:#define __SIZEOF_POINTER__ 8
4606// MIPS64EL:#define __SIZEOF_PTRDIFF_T__ 8
4607// MIPS64EL:#define __SIZEOF_SHORT__ 2
4608// MIPS64EL:#define __SIZEOF_SIZE_T__ 8
4609// MIPS64EL:#define __SIZEOF_WCHAR_T__ 4
4610// MIPS64EL:#define __SIZEOF_WINT_T__ 4
Evgeniy Stepanovc3c725a2013-03-28 08:36:54 +00004611// MIPS64EL:#define __SIZE_MAX__ 18446744073709551615UL
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004612// MIPS64EL:#define __SIZE_TYPE__ long unsigned int
4613// MIPS64EL:#define __SIZE_WIDTH__ 64
James Y Knightc97efa42016-02-11 16:51:29 +00004614// MIPS64EL:#define __UINT16_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00004615// MIPS64EL:#define __UINT16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00004616// MIPS64EL:#define __UINT16_TYPE__ unsigned short
4617// MIPS64EL:#define __UINT32_C_SUFFIX__ U
4618// MIPS64EL:#define __UINT32_MAX__ 4294967295U
4619// MIPS64EL:#define __UINT32_TYPE__ unsigned int
Simon Atanasyan495523e42015-01-22 23:16:48 +00004620// MIPS64EL:#define __UINT64_C_SUFFIX__ UL
4621// MIPS64EL:#define __UINT64_MAX__ 18446744073709551615UL
4622// MIPS64EL:#define __UINT64_TYPE__ long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00004623// MIPS64EL:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00004624// MIPS64EL:#define __UINT8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00004625// MIPS64EL:#define __UINT8_TYPE__ unsigned char
Simon Atanasyan495523e42015-01-22 23:16:48 +00004626// MIPS64EL:#define __UINTMAX_C_SUFFIX__ UL
4627// MIPS64EL:#define __UINTMAX_MAX__ 18446744073709551615UL
4628// MIPS64EL:#define __UINTMAX_TYPE__ long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00004629// MIPS64EL:#define __UINTMAX_WIDTH__ 64
4630// MIPS64EL:#define __UINTPTR_MAX__ 18446744073709551615UL
4631// MIPS64EL:#define __UINTPTR_TYPE__ long unsigned int
4632// MIPS64EL:#define __UINTPTR_WIDTH__ 64
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00004633// MIPS64EL:#define __UINT_FAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00004634// MIPS64EL:#define __UINT_FAST16_TYPE__ unsigned short
4635// MIPS64EL:#define __UINT_FAST32_MAX__ 4294967295U
4636// MIPS64EL:#define __UINT_FAST32_TYPE__ unsigned int
4637// MIPS64EL:#define __UINT_FAST64_MAX__ 18446744073709551615UL
4638// MIPS64EL:#define __UINT_FAST64_TYPE__ long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00004639// MIPS64EL:#define __UINT_FAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00004640// MIPS64EL:#define __UINT_FAST8_TYPE__ unsigned char
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00004641// MIPS64EL:#define __UINT_LEAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00004642// MIPS64EL:#define __UINT_LEAST16_TYPE__ unsigned short
4643// MIPS64EL:#define __UINT_LEAST32_MAX__ 4294967295U
4644// MIPS64EL:#define __UINT_LEAST32_TYPE__ unsigned int
4645// MIPS64EL:#define __UINT_LEAST64_MAX__ 18446744073709551615UL
4646// MIPS64EL:#define __UINT_LEAST64_TYPE__ long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00004647// MIPS64EL:#define __UINT_LEAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00004648// MIPS64EL:#define __UINT_LEAST8_TYPE__ unsigned char
James Y Knightb214cbc2016-03-04 19:00:41 +00004649// MIPS64EL:#define __USER_LABEL_PREFIX__
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004650// MIPS64EL:#define __WCHAR_MAX__ 2147483647
4651// MIPS64EL:#define __WCHAR_TYPE__ int
4652// MIPS64EL:#define __WCHAR_WIDTH__ 32
4653// MIPS64EL:#define __WINT_TYPE__ int
4654// MIPS64EL:#define __WINT_WIDTH__ 32
4655// MIPS64EL:#define __clang__ 1
4656// MIPS64EL:#define __llvm__ 1
Simon Atanasyan26292cc2014-01-27 13:59:11 +00004657// MIPS64EL:#define __mips 64
Simon Atanasyanc6a0be02012-08-29 20:50:11 +00004658// MIPS64EL:#define __mips64 1
4659// MIPS64EL:#define __mips64__ 1
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004660// MIPS64EL:#define __mips__ 1
Simon Dardisdf827a72017-02-21 16:01:00 +00004661// MIPS64EL:#define __mips_abicalls 1
Simon Atanasyan2c97a812013-10-18 13:13:53 +00004662// MIPS64EL:#define __mips_fpr 64
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004663// MIPS64EL:#define __mips_hard_float 1
4664// MIPS64EL:#define __mips_n64 1
4665// MIPS64EL:#define _mips 1
4666// MIPS64EL:#define mips 1
4667//
Matheus Almeidab84b37d2014-06-05 14:59:18 +00004668// Check MIPS arch and isa macros
Simon Atanasyan682b49b2014-01-27 13:58:54 +00004669//
4670// RUN: %clang_cc1 -E -dM -ffreestanding -triple=mips-none-none \
4671// RUN: < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004672// RUN: | FileCheck -match-full-lines -check-prefix MIPS-ARCH-DEF32 %s
Simon Atanasyan682b49b2014-01-27 13:58:54 +00004673//
Simon Atanasyan1a3665b62014-01-27 13:59:04 +00004674// MIPS-ARCH-DEF32:#define _MIPS_ARCH "mips32r2"
4675// MIPS-ARCH-DEF32:#define _MIPS_ARCH_MIPS32R2 1
Matheus Almeidab84b37d2014-06-05 14:59:18 +00004676// MIPS-ARCH-DEF32:#define _MIPS_ISA _MIPS_ISA_MIPS32
4677// MIPS-ARCH-DEF32:#define __mips_isa_rev 2
Simon Atanasyan682b49b2014-01-27 13:58:54 +00004678//
4679// RUN: %clang_cc1 -E -dM -ffreestanding -triple=mips-none-nones \
4680// RUN: -target-cpu mips32 < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004681// RUN: | FileCheck -match-full-lines -check-prefix MIPS-ARCH-32 %s
Simon Atanasyan682b49b2014-01-27 13:58:54 +00004682//
4683// MIPS-ARCH-32:#define _MIPS_ARCH "mips32"
4684// MIPS-ARCH-32:#define _MIPS_ARCH_MIPS32 1
Matheus Almeidab84b37d2014-06-05 14:59:18 +00004685// MIPS-ARCH-32:#define _MIPS_ISA _MIPS_ISA_MIPS32
4686// MIPS-ARCH-32:#define __mips_isa_rev 1
Simon Atanasyan682b49b2014-01-27 13:58:54 +00004687//
4688// RUN: %clang_cc1 -E -dM -ffreestanding -triple=mips-none-none \
4689// RUN: -target-cpu mips32r2 < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004690// RUN: | FileCheck -match-full-lines -check-prefix MIPS-ARCH-32R2 %s
Simon Atanasyan682b49b2014-01-27 13:58:54 +00004691//
4692// MIPS-ARCH-32R2:#define _MIPS_ARCH "mips32r2"
4693// MIPS-ARCH-32R2:#define _MIPS_ARCH_MIPS32R2 1
Matheus Almeidab84b37d2014-06-05 14:59:18 +00004694// MIPS-ARCH-32R2:#define _MIPS_ISA _MIPS_ISA_MIPS32
4695// MIPS-ARCH-32R2:#define __mips_isa_rev 2
Simon Atanasyan682b49b2014-01-27 13:58:54 +00004696//
Simon Atanasyane6694eb2015-01-15 07:04:48 +00004697// RUN: %clang_cc1 -E -dM -ffreestanding -triple=mips-none-none \
Simon Atanasyan162feb52015-02-20 23:37:40 +00004698// RUN: -target-cpu mips32r3 < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004699// RUN: | FileCheck -match-full-lines -check-prefix MIPS-ARCH-32R3 %s
Simon Atanasyan162feb52015-02-20 23:37:40 +00004700//
4701// MIPS-ARCH-32R3:#define _MIPS_ARCH "mips32r3"
4702// MIPS-ARCH-32R3:#define _MIPS_ARCH_MIPS32R3 1
4703// MIPS-ARCH-32R3:#define _MIPS_ISA _MIPS_ISA_MIPS32
4704// MIPS-ARCH-32R3:#define __mips_isa_rev 3
4705//
4706// RUN: %clang_cc1 -E -dM -ffreestanding -triple=mips-none-none \
4707// RUN: -target-cpu mips32r5 < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004708// RUN: | FileCheck -match-full-lines -check-prefix MIPS-ARCH-32R5 %s
Simon Atanasyan162feb52015-02-20 23:37:40 +00004709//
4710// MIPS-ARCH-32R5:#define _MIPS_ARCH "mips32r5"
4711// MIPS-ARCH-32R5:#define _MIPS_ARCH_MIPS32R5 1
4712// MIPS-ARCH-32R5:#define _MIPS_ISA _MIPS_ISA_MIPS32
4713// MIPS-ARCH-32R5:#define __mips_isa_rev 5
4714//
4715// RUN: %clang_cc1 -E -dM -ffreestanding -triple=mips-none-none \
Simon Atanasyane6694eb2015-01-15 07:04:48 +00004716// RUN: -target-cpu mips32r6 < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004717// RUN: | FileCheck -match-full-lines -check-prefix MIPS-ARCH-32R6 %s
Simon Atanasyane6694eb2015-01-15 07:04:48 +00004718//
4719// MIPS-ARCH-32R6:#define _MIPS_ARCH "mips32r6"
4720// MIPS-ARCH-32R6:#define _MIPS_ARCH_MIPS32R6 1
4721// MIPS-ARCH-32R6:#define _MIPS_ISA _MIPS_ISA_MIPS32
4722// MIPS-ARCH-32R6:#define __mips_isa_rev 6
4723//
Simon Atanasyan682b49b2014-01-27 13:58:54 +00004724// RUN: %clang_cc1 -E -dM -ffreestanding -triple=mips64-none-none \
4725// RUN: < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004726// RUN: | FileCheck -match-full-lines -check-prefix MIPS-ARCH-DEF64 %s
Simon Atanasyan682b49b2014-01-27 13:58:54 +00004727//
Simon Atanasyan1a3665b62014-01-27 13:59:04 +00004728// MIPS-ARCH-DEF64:#define _MIPS_ARCH "mips64r2"
4729// MIPS-ARCH-DEF64:#define _MIPS_ARCH_MIPS64R2 1
Matheus Almeidab84b37d2014-06-05 14:59:18 +00004730// MIPS-ARCH-DEF64:#define _MIPS_ISA _MIPS_ISA_MIPS64
4731// MIPS-ARCH-DEF64:#define __mips_isa_rev 2
Simon Atanasyan682b49b2014-01-27 13:58:54 +00004732//
4733// RUN: %clang_cc1 -E -dM -ffreestanding -triple=mips64-none-none \
4734// RUN: -target-cpu mips64 < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004735// RUN: | FileCheck -match-full-lines -check-prefix MIPS-ARCH-64 %s
Simon Atanasyan682b49b2014-01-27 13:58:54 +00004736//
4737// MIPS-ARCH-64:#define _MIPS_ARCH "mips64"
4738// MIPS-ARCH-64:#define _MIPS_ARCH_MIPS64 1
Matheus Almeidab84b37d2014-06-05 14:59:18 +00004739// MIPS-ARCH-64:#define _MIPS_ISA _MIPS_ISA_MIPS64
4740// MIPS-ARCH-64:#define __mips_isa_rev 1
Simon Atanasyan682b49b2014-01-27 13:58:54 +00004741//
4742// RUN: %clang_cc1 -E -dM -ffreestanding -triple=mips64-none-none \
4743// RUN: -target-cpu mips64r2 < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004744// RUN: | FileCheck -match-full-lines -check-prefix MIPS-ARCH-64R2 %s
Simon Atanasyan682b49b2014-01-27 13:58:54 +00004745//
4746// MIPS-ARCH-64R2:#define _MIPS_ARCH "mips64r2"
4747// MIPS-ARCH-64R2:#define _MIPS_ARCH_MIPS64R2 1
Matheus Almeidab84b37d2014-06-05 14:59:18 +00004748// MIPS-ARCH-64R2:#define _MIPS_ISA _MIPS_ISA_MIPS64
4749// MIPS-ARCH-64R2:#define __mips_isa_rev 2
Simon Atanasyan682b49b2014-01-27 13:58:54 +00004750//
Simon Atanasyane6694eb2015-01-15 07:04:48 +00004751// RUN: %clang_cc1 -E -dM -ffreestanding -triple=mips64-none-none \
Simon Atanasyan162feb52015-02-20 23:37:40 +00004752// RUN: -target-cpu mips64r3 < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004753// RUN: | FileCheck -match-full-lines -check-prefix MIPS-ARCH-64R3 %s
Simon Atanasyan162feb52015-02-20 23:37:40 +00004754//
4755// MIPS-ARCH-64R3:#define _MIPS_ARCH "mips64r3"
4756// MIPS-ARCH-64R3:#define _MIPS_ARCH_MIPS64R3 1
4757// MIPS-ARCH-64R3:#define _MIPS_ISA _MIPS_ISA_MIPS64
4758// MIPS-ARCH-64R3:#define __mips_isa_rev 3
4759//
4760// RUN: %clang_cc1 -E -dM -ffreestanding -triple=mips64-none-none \
4761// RUN: -target-cpu mips64r5 < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004762// RUN: | FileCheck -match-full-lines -check-prefix MIPS-ARCH-64R5 %s
Simon Atanasyan162feb52015-02-20 23:37:40 +00004763//
4764// MIPS-ARCH-64R5:#define _MIPS_ARCH "mips64r5"
4765// MIPS-ARCH-64R5:#define _MIPS_ARCH_MIPS64R5 1
4766// MIPS-ARCH-64R5:#define _MIPS_ISA _MIPS_ISA_MIPS64
4767// MIPS-ARCH-64R5:#define __mips_isa_rev 5
4768//
4769// RUN: %clang_cc1 -E -dM -ffreestanding -triple=mips64-none-none \
Simon Atanasyane6694eb2015-01-15 07:04:48 +00004770// RUN: -target-cpu mips64r6 < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004771// RUN: | FileCheck -match-full-lines -check-prefix MIPS-ARCH-64R6 %s
Simon Atanasyane6694eb2015-01-15 07:04:48 +00004772//
4773// MIPS-ARCH-64R6:#define _MIPS_ARCH "mips64r6"
4774// MIPS-ARCH-64R6:#define _MIPS_ARCH_MIPS64R6 1
4775// MIPS-ARCH-64R6:#define _MIPS_ISA _MIPS_ISA_MIPS64
4776// MIPS-ARCH-64R6:#define __mips_isa_rev 6
4777//
Simon Atanasyan5e21c802012-04-06 17:51:49 +00004778// Check MIPS float ABI macros
4779//
4780// RUN: %clang_cc1 -E -dM -ffreestanding \
4781// RUN: -triple=mips-none-none < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004782// RUN: | FileCheck -match-full-lines -check-prefix MIPS-FABI-HARD %s
Simon Atanasyan5e21c802012-04-06 17:51:49 +00004783// MIPS-FABI-HARD:#define __mips_hard_float 1
4784//
4785// RUN: %clang_cc1 -target-feature +soft-float -E -dM -ffreestanding \
4786// RUN: -triple=mips-none-none < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004787// RUN: | FileCheck -match-full-lines -check-prefix MIPS-FABI-SOFT %s
Simon Atanasyan5e21c802012-04-06 17:51:49 +00004788// MIPS-FABI-SOFT:#define __mips_soft_float 1
4789//
4790// RUN: %clang_cc1 -target-feature +single-float -E -dM -ffreestanding \
4791// RUN: -triple=mips-none-none < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004792// RUN: | FileCheck -match-full-lines -check-prefix MIPS-FABI-SINGLE %s
Simon Atanasyand3d173d2012-06-05 13:06:56 +00004793// MIPS-FABI-SINGLE:#define __mips_hard_float 1
Simon Atanasyan5e21c802012-04-06 17:51:49 +00004794// MIPS-FABI-SINGLE:#define __mips_single_float 1
4795//
Simon Atanasyan16071912013-04-14 14:07:30 +00004796// RUN: %clang_cc1 -target-feature +soft-float -target-feature +single-float \
4797// RUN: -E -dM -ffreestanding -triple=mips-none-none < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004798// RUN: | FileCheck -match-full-lines -check-prefix MIPS-FABI-SINGLE-SOFT %s
Simon Atanasyan16071912013-04-14 14:07:30 +00004799// MIPS-FABI-SINGLE-SOFT:#define __mips_single_float 1
4800// MIPS-FABI-SINGLE-SOFT:#define __mips_soft_float 1
4801//
Simon Atanasyan72244b62012-07-05 16:06:06 +00004802// Check MIPS features macros
4803//
4804// RUN: %clang_cc1 -target-feature +mips16 \
4805// RUN: -E -dM -triple=mips-none-none < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004806// RUN: | FileCheck -match-full-lines -check-prefix MIPS16 %s
Simon Atanasyan72244b62012-07-05 16:06:06 +00004807// MIPS16:#define __mips16 1
4808//
4809// RUN: %clang_cc1 -target-feature -mips16 \
4810// RUN: -E -dM -triple=mips-none-none < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004811// RUN: | FileCheck -match-full-lines -check-prefix NOMIPS16 %s
Simon Atanasyan72244b62012-07-05 16:06:06 +00004812// NOMIPS16-NOT:#define __mips16 1
4813//
Simon Atanasyan60777612013-04-14 14:07:51 +00004814// RUN: %clang_cc1 -target-feature +micromips \
4815// RUN: -E -dM -triple=mips-none-none < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004816// RUN: | FileCheck -match-full-lines -check-prefix MICROMIPS %s
Simon Atanasyan60777612013-04-14 14:07:51 +00004817// MICROMIPS:#define __mips_micromips 1
4818//
4819// RUN: %clang_cc1 -target-feature -micromips \
4820// RUN: -E -dM -triple=mips-none-none < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004821// RUN: | FileCheck -match-full-lines -check-prefix NOMICROMIPS %s
Simon Atanasyan60777612013-04-14 14:07:51 +00004822// NOMICROMIPS-NOT:#define __mips_micromips 1
4823//
Simon Atanasyan9780e4a2012-07-05 20:16:22 +00004824// RUN: %clang_cc1 -target-feature +dsp \
4825// RUN: -E -dM -triple=mips-none-none < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004826// RUN: | FileCheck -match-full-lines -check-prefix MIPS-DSP %s
Simon Atanasyan9780e4a2012-07-05 20:16:22 +00004827// MIPS-DSP:#define __mips_dsp 1
4828// MIPS-DSP:#define __mips_dsp_rev 1
4829// MIPS-DSP-NOT:#define __mips_dspr2 1
4830//
4831// RUN: %clang_cc1 -target-feature +dspr2 \
4832// RUN: -E -dM -triple=mips-none-none < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004833// RUN: | FileCheck -match-full-lines -check-prefix MIPS-DSPR2 %s
Simon Atanasyan9780e4a2012-07-05 20:16:22 +00004834// MIPS-DSPR2:#define __mips_dsp 1
4835// MIPS-DSPR2:#define __mips_dsp_rev 2
4836// MIPS-DSPR2:#define __mips_dspr2 1
4837//
Jack Carter44ff1e52013-08-12 17:20:29 +00004838// RUN: %clang_cc1 -target-feature +msa \
4839// RUN: -E -dM -triple=mips-none-none < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004840// RUN: | FileCheck -match-full-lines -check-prefix MIPS-MSA %s
Jack Carter44ff1e52013-08-12 17:20:29 +00004841// MIPS-MSA:#define __mips_msa 1
4842//
Petar Jovanovic9b5d3b62017-06-07 23:51:52 +00004843// RUN: %clang_cc1 -target-feature +nomadd4 \
4844// RUN: -E -dM -triple=mips-none-none < /dev/null \
4845// RUN: | FileCheck -match-full-lines -check-prefix MIPS-NOMADD4 %s
4846// MIPS-NOMADD4:#define __mips_no_madd4 1
4847//
4848// RUN: %clang_cc1 \
4849// RUN: -E -dM -triple=mips-none-none < /dev/null \
4850// RUN: | FileCheck -match-full-lines -check-prefix MIPS-MADD4 %s
4851// MIPS-MADD4-NOT:#define __mips_no_madd4 1
4852//
Petar Jovanovic1dbc3172015-04-14 12:49:08 +00004853// RUN: %clang_cc1 -target-cpu mips32r3 -target-feature +nan2008 \
Simon Atanasyan22127ce2013-09-24 09:09:16 +00004854// RUN: -E -dM -triple=mips-none-none < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004855// RUN: | FileCheck -match-full-lines -check-prefix MIPS-NAN2008 %s
Simon Atanasyan22127ce2013-09-24 09:09:16 +00004856// MIPS-NAN2008:#define __mips_nan2008 1
4857//
Petar Jovanovic1dbc3172015-04-14 12:49:08 +00004858// RUN: %clang_cc1 -target-cpu mips32r3 -target-feature -nan2008 \
4859// RUN: -E -dM -triple=mips-none-none < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004860// RUN: | FileCheck -match-full-lines -check-prefix NOMIPS-NAN2008 %s
Petar Jovanovic1dbc3172015-04-14 12:49:08 +00004861// NOMIPS-NAN2008-NOT:#define __mips_nan2008 1
4862//
Simon Atanasyan2c97a812013-10-18 13:13:53 +00004863// RUN: %clang_cc1 -target-feature -fp64 \
4864// RUN: -E -dM -triple=mips-none-none < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004865// RUN: | FileCheck -match-full-lines -check-prefix MIPS32-MFP32 %s
Simon Atanasyan2c97a812013-10-18 13:13:53 +00004866// MIPS32-MFP32:#define _MIPS_FPSET 16
4867// MIPS32-MFP32:#define __mips_fpr 32
4868//
4869// RUN: %clang_cc1 -target-feature +fp64 \
4870// RUN: -E -dM -triple=mips-none-none < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004871// RUN: | FileCheck -match-full-lines -check-prefix MIPS32-MFP64 %s
Simon Atanasyan2c97a812013-10-18 13:13:53 +00004872// MIPS32-MFP64:#define _MIPS_FPSET 32
4873// MIPS32-MFP64:#define __mips_fpr 64
4874//
4875// RUN: %clang_cc1 -target-feature +single-float \
4876// RUN: -E -dM -triple=mips-none-none < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004877// RUN: | FileCheck -match-full-lines -check-prefix MIPS32-MFP32SF %s
Simon Atanasyan2c97a812013-10-18 13:13:53 +00004878// MIPS32-MFP32SF:#define _MIPS_FPSET 32
4879// MIPS32-MFP32SF:#define __mips_fpr 32
4880//
4881// RUN: %clang_cc1 -target-feature +fp64 \
4882// RUN: -E -dM -triple=mips64-none-none < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004883// RUN: | FileCheck -match-full-lines -check-prefix MIPS64-MFP64 %s
Simon Atanasyan2c97a812013-10-18 13:13:53 +00004884// MIPS64-MFP64:#define _MIPS_FPSET 32
4885// MIPS64-MFP64:#define __mips_fpr 64
4886//
4887// RUN: %clang_cc1 -target-feature -fp64 -target-feature +single-float \
4888// RUN: -E -dM -triple=mips64-none-none < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004889// RUN: | FileCheck -match-full-lines -check-prefix MIPS64-NOMFP64 %s
Simon Atanasyan2c97a812013-10-18 13:13:53 +00004890// MIPS64-NOMFP64:#define _MIPS_FPSET 32
4891// MIPS64-NOMFP64:#define __mips_fpr 32
4892//
Daniel Sanders9500d2d2014-07-09 13:56:23 +00004893// RUN: %clang_cc1 -target-cpu mips32r6 \
4894// RUN: -E -dM -triple=mips-none-none < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004895// RUN: | FileCheck -match-full-lines -check-prefix MIPS-XXR6 %s
Daniel Sanders9500d2d2014-07-09 13:56:23 +00004896// RUN: %clang_cc1 -target-cpu mips64r6 \
4897// RUN: -E -dM -triple=mips64-none-none < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004898// RUN: | FileCheck -match-full-lines -check-prefix MIPS-XXR6 %s
Daniel Sanders9500d2d2014-07-09 13:56:23 +00004899// MIPS-XXR6:#define _MIPS_FPSET 32
4900// MIPS-XXR6:#define __mips_fpr 64
4901// MIPS-XXR6:#define __mips_nan2008 1
4902//
Simon Dardisdf827a72017-02-21 16:01:00 +00004903// RUN: %clang_cc1 -target-cpu mips32 \
4904// RUN: -E -dM -triple=mips-unknown-netbsd -mrelocation-model pic < /dev/null \
4905// RUN: | FileCheck -match-full-lines -check-prefix MIPS-ABICALLS-NETBSD %s
4906// MIPS-ABICALLS-NETBSD-NOT: #define __ABICALLS__ 1
4907// MIPS-ABICALLS-NETBSD: #define __mips_abicalls 1
4908//
4909// RUN: %clang_cc1 -target-cpu mips64 \
4910// RUN: -E -dM -triple=mips64-unknown-netbsd -mrelocation-model pic < \
4911// RUN: /dev/null | FileCheck -match-full-lines \
4912// RUN: -check-prefix MIPS-ABICALLS-NETBSD64 %s
4913// MIPS-ABICALLS-NETBSD64-NOT: #define __ABICALLS__ 1
4914// MIPS-ABICALLS-NETBSD64: #define __mips_abicalls 1
4915//
4916// RUN: %clang_cc1 -target-cpu mips32 \
4917// RUN: -E -dM -triple=mips-unknown-freebsd -mrelocation-model pic < /dev/null \
4918// RUN: | FileCheck -match-full-lines -check-prefix MIPS-ABICALLS-FREEBSD %s
4919// MIPS-ABICALLS-FREEBSD: #define __ABICALLS__ 1
4920// MIPS-ABICALLS-FREEBSD: #define __mips_abicalls 1
4921//
4922// RUN: %clang_cc1 -target-cpu mips64 \
4923// RUN: -E -dM -triple=mips64-unknown-freebsd -mrelocation-model pic < \
4924// RUN: /dev/null | FileCheck -match-full-lines \
4925// RUN: -check-prefix MIPS-ABICALLS-FREEBSD64 %s
4926// MIPS-ABICALLS-FREEBSD64: #define __ABICALLS__ 1
4927// MIPS-ABICALLS-FREEBSD64: #define __mips_abicalls 1
4928//
4929// RUN: %clang_cc1 -target-cpu mips32 \
4930// RUN: -E -dM -triple=mips-unknown-openbsd -mrelocation-model pic < /dev/null \
4931// RUN: | FileCheck -match-full-lines -check-prefix MIPS-ABICALLS-OPENBSD %s
4932// MIPS-ABICALLS-OPENBSD: #define __ABICALLS__ 1
4933// MIPS-ABICALLS-OPENBSD: #define __mips_abicalls 1
4934//
4935// RUN: %clang_cc1 -target-cpu mips64 \
4936// RUN: -E -dM -triple=mips64-unknown-openbsd -mrelocation-model pic < \
4937// RUN: /dev/null | FileCheck -match-full-lines \
4938// RUN: -check-prefix MIPS-ABICALLS-OPENBSD64 %s
4939// MIPS-ABICALLS-OPENBSD64: #define __ABICALLS__ 1
4940// MIPS-ABICALLS-OPENBSD64: #define __mips_abicalls 1
4941//
James Y Knightc97efa42016-02-11 16:51:29 +00004942// RUN: %clang_cc1 -E -dM -ffreestanding -triple=msp430-none-none < /dev/null | FileCheck -match-full-lines -check-prefix MSP430 %s
Richard Smith59139022016-09-30 22:41:36 +00004943// RUN: %clang_cc1 -x c++ -E -dM -ffreestanding -triple=msp430-none-none < /dev/null | FileCheck -match-full-lines -check-prefix MSP430 -check-prefix MSP430-CXX %s
Chris Lattnere963d092009-10-29 04:55:36 +00004944//
4945// MSP430:#define MSP430 1
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00004946// MSP430-NOT:#define _LP64
Tim Northovera6a19f12015-02-06 01:25:07 +00004947// MSP430:#define __BIGGEST_ALIGNMENT__ 2
Dylan Noblesmith673728f2012-07-27 18:34:31 +00004948// MSP430:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
Dan Gohman04f87202010-05-28 00:27:15 +00004949// MSP430:#define __CHAR16_TYPE__ unsigned short
4950// MSP430:#define __CHAR32_TYPE__ unsigned int
Chris Lattnere963d092009-10-29 04:55:36 +00004951// MSP430:#define __CHAR_BIT__ 8
4952// MSP430:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
4953// MSP430:#define __DBL_DIG__ 15
4954// MSP430:#define __DBL_EPSILON__ 2.2204460492503131e-16
4955// MSP430:#define __DBL_HAS_DENORM__ 1
4956// MSP430:#define __DBL_HAS_INFINITY__ 1
4957// MSP430:#define __DBL_HAS_QUIET_NAN__ 1
4958// MSP430:#define __DBL_MANT_DIG__ 53
4959// MSP430:#define __DBL_MAX_10_EXP__ 308
4960// MSP430:#define __DBL_MAX_EXP__ 1024
4961// MSP430:#define __DBL_MAX__ 1.7976931348623157e+308
4962// MSP430:#define __DBL_MIN_10_EXP__ (-307)
4963// MSP430:#define __DBL_MIN_EXP__ (-1021)
4964// MSP430:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00004965// MSP430:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Chris Lattnere963d092009-10-29 04:55:36 +00004966// MSP430:#define __FLT_DENORM_MIN__ 1.40129846e-45F
4967// MSP430:#define __FLT_DIG__ 6
4968// MSP430:#define __FLT_EPSILON__ 1.19209290e-7F
4969// MSP430:#define __FLT_EVAL_METHOD__ 0
4970// MSP430:#define __FLT_HAS_DENORM__ 1
4971// MSP430:#define __FLT_HAS_INFINITY__ 1
4972// MSP430:#define __FLT_HAS_QUIET_NAN__ 1
4973// MSP430:#define __FLT_MANT_DIG__ 24
4974// MSP430:#define __FLT_MAX_10_EXP__ 38
4975// MSP430:#define __FLT_MAX_EXP__ 128
4976// MSP430:#define __FLT_MAX__ 3.40282347e+38F
4977// MSP430:#define __FLT_MIN_10_EXP__ (-37)
4978// MSP430:#define __FLT_MIN_EXP__ (-125)
4979// MSP430:#define __FLT_MIN__ 1.17549435e-38F
4980// MSP430:#define __FLT_RADIX__ 2
James Y Knightc97efa42016-02-11 16:51:29 +00004981// MSP430:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004982// MSP430:#define __INT16_FMTd__ "hd"
4983// MSP430:#define __INT16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00004984// MSP430:#define __INT16_MAX__ 32767
Chris Lattnere963d092009-10-29 04:55:36 +00004985// MSP430:#define __INT16_TYPE__ short
Ken Dyck2dc8d5f2009-11-16 16:36:33 +00004986// MSP430:#define __INT32_C_SUFFIX__ L
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004987// MSP430:#define __INT32_FMTd__ "ld"
4988// MSP430:#define __INT32_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00004989// MSP430:#define __INT32_MAX__ 2147483647L
Chris Lattner55c98772009-11-12 08:08:27 +00004990// MSP430:#define __INT32_TYPE__ long int
JF Bastienab8d0a02014-06-25 01:31:33 +00004991// MSP430:#define __INT64_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004992// MSP430:#define __INT64_FMTd__ "lld"
4993// MSP430:#define __INT64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00004994// MSP430:#define __INT64_MAX__ 9223372036854775807LL
4995// MSP430:#define __INT64_TYPE__ long long int
James Y Knightc97efa42016-02-11 16:51:29 +00004996// MSP430:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004997// MSP430:#define __INT8_FMTd__ "hhd"
4998// MSP430:#define __INT8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00004999// MSP430:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00005000// MSP430:#define __INT8_TYPE__ signed char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00005001// MSP430:#define __INTMAX_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005002// MSP430:#define __INTMAX_FMTd__ "lld"
5003// MSP430:#define __INTMAX_FMTi__ "lli"
Anton Korobeynikovef412902013-07-01 19:42:40 +00005004// MSP430:#define __INTMAX_MAX__ 9223372036854775807LL
5005// MSP430:#define __INTMAX_TYPE__ long long int
5006// MSP430:#define __INTMAX_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005007// MSP430:#define __INTPTR_FMTd__ "d"
5008// MSP430:#define __INTPTR_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00005009// MSP430:#define __INTPTR_MAX__ 32767
Anton Korobeynikovef412902013-07-01 19:42:40 +00005010// MSP430:#define __INTPTR_TYPE__ int
Ken Dyck24cfcf12009-11-18 20:05:48 +00005011// MSP430:#define __INTPTR_WIDTH__ 16
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005012// MSP430:#define __INT_FAST16_FMTd__ "hd"
5013// MSP430:#define __INT_FAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00005014// MSP430:#define __INT_FAST16_MAX__ 32767
5015// MSP430:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005016// MSP430:#define __INT_FAST32_FMTd__ "ld"
5017// MSP430:#define __INT_FAST32_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00005018// MSP430:#define __INT_FAST32_MAX__ 2147483647L
5019// MSP430:#define __INT_FAST32_TYPE__ long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005020// MSP430:#define __INT_FAST64_FMTd__ "lld"
5021// MSP430:#define __INT_FAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00005022// MSP430:#define __INT_FAST64_MAX__ 9223372036854775807LL
5023// MSP430:#define __INT_FAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005024// MSP430:#define __INT_FAST8_FMTd__ "hhd"
5025// MSP430:#define __INT_FAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00005026// MSP430:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00005027// MSP430:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005028// MSP430:#define __INT_LEAST16_FMTd__ "hd"
5029// MSP430:#define __INT_LEAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00005030// MSP430:#define __INT_LEAST16_MAX__ 32767
5031// MSP430:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005032// MSP430:#define __INT_LEAST32_FMTd__ "ld"
5033// MSP430:#define __INT_LEAST32_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00005034// MSP430:#define __INT_LEAST32_MAX__ 2147483647L
5035// MSP430:#define __INT_LEAST32_TYPE__ long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005036// MSP430:#define __INT_LEAST64_FMTd__ "lld"
5037// MSP430:#define __INT_LEAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00005038// MSP430:#define __INT_LEAST64_MAX__ 9223372036854775807LL
5039// MSP430:#define __INT_LEAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005040// MSP430:#define __INT_LEAST8_FMTd__ "hhd"
5041// MSP430:#define __INT_LEAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00005042// MSP430:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00005043// MSP430:#define __INT_LEAST8_TYPE__ signed char
Chris Lattnere963d092009-10-29 04:55:36 +00005044// MSP430:#define __INT_MAX__ 32767
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00005045// MSP430:#define __LDBL_DENORM_MIN__ 4.9406564584124654e-324L
Chris Lattnere963d092009-10-29 04:55:36 +00005046// MSP430:#define __LDBL_DIG__ 15
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00005047// MSP430:#define __LDBL_EPSILON__ 2.2204460492503131e-16L
Chris Lattnere963d092009-10-29 04:55:36 +00005048// MSP430:#define __LDBL_HAS_DENORM__ 1
5049// MSP430:#define __LDBL_HAS_INFINITY__ 1
5050// MSP430:#define __LDBL_HAS_QUIET_NAN__ 1
5051// MSP430:#define __LDBL_MANT_DIG__ 53
5052// MSP430:#define __LDBL_MAX_10_EXP__ 308
5053// MSP430:#define __LDBL_MAX_EXP__ 1024
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00005054// MSP430:#define __LDBL_MAX__ 1.7976931348623157e+308L
Chris Lattnere963d092009-10-29 04:55:36 +00005055// MSP430:#define __LDBL_MIN_10_EXP__ (-307)
5056// MSP430:#define __LDBL_MIN_EXP__ (-1021)
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00005057// MSP430:#define __LDBL_MIN__ 2.2250738585072014e-308L
Robert Lytton2c942c62014-03-10 12:06:29 +00005058// MSP430:#define __LITTLE_ENDIAN__ 1
Anton Korobeynikov485810e2010-01-14 21:36:52 +00005059// MSP430:#define __LONG_LONG_MAX__ 9223372036854775807LL
Chris Lattnere963d092009-10-29 04:55:36 +00005060// MSP430:#define __LONG_MAX__ 2147483647L
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00005061// MSP430-NOT:#define __LP64__
Chris Lattnere963d092009-10-29 04:55:36 +00005062// MSP430:#define __MSP430__ 1
Chris Lattnere963d092009-10-29 04:55:36 +00005063// MSP430:#define __POINTER_WIDTH__ 16
Ken Dyck9b25f782009-11-19 13:18:59 +00005064// MSP430:#define __PTRDIFF_TYPE__ int
James Y Knightc97efa42016-02-11 16:51:29 +00005065// MSP430:#define __PTRDIFF_WIDTH__ 16
Chris Lattnere963d092009-10-29 04:55:36 +00005066// MSP430:#define __SCHAR_MAX__ 127
5067// MSP430:#define __SHRT_MAX__ 32767
James Y Knightc97efa42016-02-11 16:51:29 +00005068// MSP430:#define __SIG_ATOMIC_MAX__ 2147483647L
Ken Dyckadc85112009-11-22 15:41:04 +00005069// MSP430:#define __SIG_ATOMIC_WIDTH__ 32
Dan Gohman04f87202010-05-28 00:27:15 +00005070// MSP430:#define __SIZEOF_DOUBLE__ 8
5071// MSP430:#define __SIZEOF_FLOAT__ 4
5072// MSP430:#define __SIZEOF_INT__ 2
5073// MSP430:#define __SIZEOF_LONG_DOUBLE__ 8
5074// MSP430:#define __SIZEOF_LONG_LONG__ 8
5075// MSP430:#define __SIZEOF_LONG__ 4
5076// MSP430:#define __SIZEOF_POINTER__ 2
5077// MSP430:#define __SIZEOF_PTRDIFF_T__ 2
5078// MSP430:#define __SIZEOF_SHORT__ 2
5079// MSP430:#define __SIZEOF_SIZE_T__ 2
5080// MSP430:#define __SIZEOF_WCHAR_T__ 2
5081// MSP430:#define __SIZEOF_WINT_T__ 2
James Y Knightc97efa42016-02-11 16:51:29 +00005082// MSP430:#define __SIZE_MAX__ 65535U
Chris Lattnere963d092009-10-29 04:55:36 +00005083// MSP430:#define __SIZE_TYPE__ unsigned int
Ken Dyck57512862009-11-19 13:42:09 +00005084// MSP430:#define __SIZE_WIDTH__ 16
Richard Smith59139022016-09-30 22:41:36 +00005085// MSP430-CXX:#define __STDCPP_DEFAULT_NEW_ALIGNMENT__ 8U
JF Bastienab8d0a02014-06-25 01:31:33 +00005086// MSP430:#define __UINT16_C_SUFFIX__ U
James Y Knightc97efa42016-02-11 16:51:29 +00005087// MSP430:#define __UINT16_MAX__ 65535U
JF Bastienab8d0a02014-06-25 01:31:33 +00005088// MSP430:#define __UINT16_TYPE__ unsigned short
5089// MSP430:#define __UINT32_C_SUFFIX__ UL
5090// MSP430:#define __UINT32_MAX__ 4294967295UL
5091// MSP430:#define __UINT32_TYPE__ long unsigned int
5092// MSP430:#define __UINT64_C_SUFFIX__ ULL
5093// MSP430:#define __UINT64_MAX__ 18446744073709551615ULL
5094// MSP430:#define __UINT64_TYPE__ long long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00005095// MSP430:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00005096// MSP430:#define __UINT8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00005097// MSP430:#define __UINT8_TYPE__ unsigned char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00005098// MSP430:#define __UINTMAX_C_SUFFIX__ ULL
JF Bastienab8d0a02014-06-25 01:31:33 +00005099// MSP430:#define __UINTMAX_MAX__ 18446744073709551615ULL
Anton Korobeynikovef412902013-07-01 19:42:40 +00005100// MSP430:#define __UINTMAX_TYPE__ long long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00005101// MSP430:#define __UINTMAX_WIDTH__ 64
James Y Knightc97efa42016-02-11 16:51:29 +00005102// MSP430:#define __UINTPTR_MAX__ 65535U
Joerg Sonnenberger3809a7a2014-07-14 20:40:56 +00005103// MSP430:#define __UINTPTR_TYPE__ unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00005104// MSP430:#define __UINTPTR_WIDTH__ 16
James Y Knightc97efa42016-02-11 16:51:29 +00005105// MSP430:#define __UINT_FAST16_MAX__ 65535U
JF Bastienab8d0a02014-06-25 01:31:33 +00005106// MSP430:#define __UINT_FAST16_TYPE__ unsigned short
5107// MSP430:#define __UINT_FAST32_MAX__ 4294967295UL
5108// MSP430:#define __UINT_FAST32_TYPE__ long unsigned int
5109// MSP430:#define __UINT_FAST64_MAX__ 18446744073709551615ULL
5110// MSP430:#define __UINT_FAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00005111// MSP430:#define __UINT_FAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00005112// MSP430:#define __UINT_FAST8_TYPE__ unsigned char
James Y Knightc97efa42016-02-11 16:51:29 +00005113// MSP430:#define __UINT_LEAST16_MAX__ 65535U
JF Bastienab8d0a02014-06-25 01:31:33 +00005114// MSP430:#define __UINT_LEAST16_TYPE__ unsigned short
5115// MSP430:#define __UINT_LEAST32_MAX__ 4294967295UL
5116// MSP430:#define __UINT_LEAST32_TYPE__ long unsigned int
5117// MSP430:#define __UINT_LEAST64_MAX__ 18446744073709551615ULL
5118// MSP430:#define __UINT_LEAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00005119// MSP430:#define __UINT_LEAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00005120// MSP430:#define __UINT_LEAST8_TYPE__ unsigned char
James Y Knightb214cbc2016-03-04 19:00:41 +00005121// MSP430:#define __USER_LABEL_PREFIX__
Chris Lattner0fb5bbd2009-11-12 08:04:33 +00005122// MSP430:#define __WCHAR_MAX__ 32767
Chris Lattnere963d092009-10-29 04:55:36 +00005123// MSP430:#define __WCHAR_TYPE__ int
Ken Dyck0138b9e2009-11-19 15:47:58 +00005124// MSP430:#define __WCHAR_WIDTH__ 16
Chris Lattnere963d092009-10-29 04:55:36 +00005125// MSP430:#define __WINT_TYPE__ int
Ken Dycka1f677c2009-11-19 14:16:57 +00005126// MSP430:#define __WINT_WIDTH__ 16
Chris Lattnere963d092009-10-29 04:55:36 +00005127// MSP430:#define __clang__ 1
5128//
James Y Knightc97efa42016-02-11 16:51:29 +00005129// RUN: %clang_cc1 -E -dM -ffreestanding -triple=nvptx-none-none < /dev/null | FileCheck -match-full-lines -check-prefix NVPTX32 %s
Richard Smith59139022016-09-30 22:41:36 +00005130// RUN: %clang_cc1 -x c++ -E -dM -ffreestanding -triple=nvptx-none-none < /dev/null | FileCheck -match-full-lines -check-prefix NVPTX32 -check-prefix NVPTX32-CXX %s
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00005131//
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00005132// NVPTX32-NOT:#define _LP64
Tim Northovera6a19f12015-02-06 01:25:07 +00005133// NVPTX32:#define __BIGGEST_ALIGNMENT__ 8
Dylan Noblesmith673728f2012-07-27 18:34:31 +00005134// NVPTX32:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00005135// NVPTX32:#define __CHAR16_TYPE__ unsigned short
5136// NVPTX32:#define __CHAR32_TYPE__ unsigned int
5137// NVPTX32:#define __CHAR_BIT__ 8
5138// NVPTX32:#define __CONSTANT_CFSTRINGS__ 1
5139// NVPTX32:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
5140// NVPTX32:#define __DBL_DIG__ 15
5141// NVPTX32:#define __DBL_EPSILON__ 2.2204460492503131e-16
5142// NVPTX32:#define __DBL_HAS_DENORM__ 1
5143// NVPTX32:#define __DBL_HAS_INFINITY__ 1
5144// NVPTX32:#define __DBL_HAS_QUIET_NAN__ 1
5145// NVPTX32:#define __DBL_MANT_DIG__ 53
5146// NVPTX32:#define __DBL_MAX_10_EXP__ 308
5147// NVPTX32:#define __DBL_MAX_EXP__ 1024
5148// NVPTX32:#define __DBL_MAX__ 1.7976931348623157e+308
5149// NVPTX32:#define __DBL_MIN_10_EXP__ (-307)
5150// NVPTX32:#define __DBL_MIN_EXP__ (-1021)
5151// NVPTX32:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00005152// NVPTX32:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00005153// NVPTX32:#define __FINITE_MATH_ONLY__ 0
5154// NVPTX32:#define __FLT_DENORM_MIN__ 1.40129846e-45F
5155// NVPTX32:#define __FLT_DIG__ 6
5156// NVPTX32:#define __FLT_EPSILON__ 1.19209290e-7F
5157// NVPTX32:#define __FLT_EVAL_METHOD__ 0
5158// NVPTX32:#define __FLT_HAS_DENORM__ 1
5159// NVPTX32:#define __FLT_HAS_INFINITY__ 1
5160// NVPTX32:#define __FLT_HAS_QUIET_NAN__ 1
5161// NVPTX32:#define __FLT_MANT_DIG__ 24
5162// NVPTX32:#define __FLT_MAX_10_EXP__ 38
5163// NVPTX32:#define __FLT_MAX_EXP__ 128
5164// NVPTX32:#define __FLT_MAX__ 3.40282347e+38F
5165// NVPTX32:#define __FLT_MIN_10_EXP__ (-37)
5166// NVPTX32:#define __FLT_MIN_EXP__ (-125)
5167// NVPTX32:#define __FLT_MIN__ 1.17549435e-38F
5168// NVPTX32:#define __FLT_RADIX__ 2
James Y Knightc97efa42016-02-11 16:51:29 +00005169// NVPTX32:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005170// NVPTX32:#define __INT16_FMTd__ "hd"
5171// NVPTX32:#define __INT16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00005172// NVPTX32:#define __INT16_MAX__ 32767
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00005173// NVPTX32:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +00005174// NVPTX32:#define __INT32_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005175// NVPTX32:#define __INT32_FMTd__ "d"
5176// NVPTX32:#define __INT32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00005177// NVPTX32:#define __INT32_MAX__ 2147483647
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00005178// NVPTX32:#define __INT32_TYPE__ int
5179// NVPTX32:#define __INT64_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005180// NVPTX32:#define __INT64_FMTd__ "lld"
5181// NVPTX32:#define __INT64_FMTi__ "lli"
James Y Knightc97efa42016-02-11 16:51:29 +00005182// NVPTX32:#define __INT64_MAX__ 9223372036854775807LL
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00005183// NVPTX32:#define __INT64_TYPE__ long long int
James Y Knightc97efa42016-02-11 16:51:29 +00005184// NVPTX32:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005185// NVPTX32:#define __INT8_FMTd__ "hhd"
5186// NVPTX32:#define __INT8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00005187// NVPTX32:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00005188// NVPTX32:#define __INT8_TYPE__ signed char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00005189// NVPTX32:#define __INTMAX_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005190// NVPTX32:#define __INTMAX_FMTd__ "lld"
5191// NVPTX32:#define __INTMAX_FMTi__ "lli"
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00005192// NVPTX32:#define __INTMAX_MAX__ 9223372036854775807LL
5193// NVPTX32:#define __INTMAX_TYPE__ long long int
5194// NVPTX32:#define __INTMAX_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005195// NVPTX32:#define __INTPTR_FMTd__ "d"
5196// NVPTX32:#define __INTPTR_FMTi__ "i"
Joerg Sonnenberger3809a7a2014-07-14 20:40:56 +00005197// NVPTX32:#define __INTPTR_MAX__ 2147483647
5198// NVPTX32:#define __INTPTR_TYPE__ int
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00005199// NVPTX32:#define __INTPTR_WIDTH__ 32
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005200// NVPTX32:#define __INT_FAST16_FMTd__ "hd"
5201// NVPTX32:#define __INT_FAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00005202// NVPTX32:#define __INT_FAST16_MAX__ 32767
5203// NVPTX32:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005204// NVPTX32:#define __INT_FAST32_FMTd__ "d"
5205// NVPTX32:#define __INT_FAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00005206// NVPTX32:#define __INT_FAST32_MAX__ 2147483647
5207// NVPTX32:#define __INT_FAST32_TYPE__ int
Artem Belevich236cfdc2015-09-28 22:54:08 +00005208// NVPTX32:#define __INT_FAST64_FMTd__ "lld"
5209// NVPTX32:#define __INT_FAST64_FMTi__ "lli"
James Y Knightc97efa42016-02-11 16:51:29 +00005210// NVPTX32:#define __INT_FAST64_MAX__ 9223372036854775807LL
Artem Belevich236cfdc2015-09-28 22:54:08 +00005211// NVPTX32:#define __INT_FAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005212// NVPTX32:#define __INT_FAST8_FMTd__ "hhd"
5213// NVPTX32:#define __INT_FAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00005214// NVPTX32:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00005215// NVPTX32:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005216// NVPTX32:#define __INT_LEAST16_FMTd__ "hd"
5217// NVPTX32:#define __INT_LEAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00005218// NVPTX32:#define __INT_LEAST16_MAX__ 32767
5219// NVPTX32:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005220// NVPTX32:#define __INT_LEAST32_FMTd__ "d"
5221// NVPTX32:#define __INT_LEAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00005222// NVPTX32:#define __INT_LEAST32_MAX__ 2147483647
5223// NVPTX32:#define __INT_LEAST32_TYPE__ int
Artem Belevich236cfdc2015-09-28 22:54:08 +00005224// NVPTX32:#define __INT_LEAST64_FMTd__ "lld"
5225// NVPTX32:#define __INT_LEAST64_FMTi__ "lli"
James Y Knightc97efa42016-02-11 16:51:29 +00005226// NVPTX32:#define __INT_LEAST64_MAX__ 9223372036854775807LL
Artem Belevich236cfdc2015-09-28 22:54:08 +00005227// NVPTX32:#define __INT_LEAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005228// NVPTX32:#define __INT_LEAST8_FMTd__ "hhd"
5229// NVPTX32:#define __INT_LEAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00005230// NVPTX32:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00005231// NVPTX32:#define __INT_LEAST8_TYPE__ signed char
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00005232// NVPTX32:#define __INT_MAX__ 2147483647
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00005233// NVPTX32:#define __LDBL_DENORM_MIN__ 4.9406564584124654e-324L
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00005234// NVPTX32:#define __LDBL_DIG__ 15
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00005235// NVPTX32:#define __LDBL_EPSILON__ 2.2204460492503131e-16L
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00005236// NVPTX32:#define __LDBL_HAS_DENORM__ 1
5237// NVPTX32:#define __LDBL_HAS_INFINITY__ 1
5238// NVPTX32:#define __LDBL_HAS_QUIET_NAN__ 1
5239// NVPTX32:#define __LDBL_MANT_DIG__ 53
5240// NVPTX32:#define __LDBL_MAX_10_EXP__ 308
5241// NVPTX32:#define __LDBL_MAX_EXP__ 1024
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00005242// NVPTX32:#define __LDBL_MAX__ 1.7976931348623157e+308L
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00005243// NVPTX32:#define __LDBL_MIN_10_EXP__ (-307)
5244// NVPTX32:#define __LDBL_MIN_EXP__ (-1021)
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00005245// NVPTX32:#define __LDBL_MIN__ 2.2250738585072014e-308L
Robert Lytton2c942c62014-03-10 12:06:29 +00005246// NVPTX32:#define __LITTLE_ENDIAN__ 1
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00005247// NVPTX32:#define __LONG_LONG_MAX__ 9223372036854775807LL
Artem Belevich236cfdc2015-09-28 22:54:08 +00005248// NVPTX32:#define __LONG_MAX__ 2147483647L
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00005249// NVPTX32-NOT:#define __LP64__
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00005250// NVPTX32:#define __NVPTX__ 1
5251// NVPTX32:#define __POINTER_WIDTH__ 32
5252// NVPTX32:#define __PRAGMA_REDEFINE_EXTNAME 1
Eli Bendersky13467172015-04-01 20:29:18 +00005253// NVPTX32:#define __PTRDIFF_TYPE__ int
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00005254// NVPTX32:#define __PTRDIFF_WIDTH__ 32
5255// NVPTX32:#define __PTX__ 1
5256// NVPTX32:#define __SCHAR_MAX__ 127
5257// NVPTX32:#define __SHRT_MAX__ 32767
Joerg Sonnenbergerb3a49692014-07-17 18:31:20 +00005258// NVPTX32:#define __SIG_ATOMIC_MAX__ 2147483647
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00005259// NVPTX32:#define __SIG_ATOMIC_WIDTH__ 32
5260// NVPTX32:#define __SIZEOF_DOUBLE__ 8
5261// NVPTX32:#define __SIZEOF_FLOAT__ 4
5262// NVPTX32:#define __SIZEOF_INT__ 4
5263// NVPTX32:#define __SIZEOF_LONG_DOUBLE__ 8
5264// NVPTX32:#define __SIZEOF_LONG_LONG__ 8
Artem Belevich236cfdc2015-09-28 22:54:08 +00005265// NVPTX32:#define __SIZEOF_LONG__ 4
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00005266// NVPTX32:#define __SIZEOF_POINTER__ 4
5267// NVPTX32:#define __SIZEOF_PTRDIFF_T__ 4
5268// NVPTX32:#define __SIZEOF_SHORT__ 2
5269// NVPTX32:#define __SIZEOF_SIZE_T__ 4
5270// NVPTX32:#define __SIZEOF_WCHAR_T__ 4
5271// NVPTX32:#define __SIZEOF_WINT_T__ 4
Evgeniy Stepanovc3c725a2013-03-28 08:36:54 +00005272// NVPTX32:#define __SIZE_MAX__ 4294967295U
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00005273// NVPTX32:#define __SIZE_TYPE__ unsigned int
5274// NVPTX32:#define __SIZE_WIDTH__ 32
Richard Smith59139022016-09-30 22:41:36 +00005275// NVPTX32-CXX:#define __STDCPP_DEFAULT_NEW_ALIGNMENT__ 8U
James Y Knightc97efa42016-02-11 16:51:29 +00005276// NVPTX32:#define __UINT16_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00005277// NVPTX32:#define __UINT16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00005278// NVPTX32:#define __UINT16_TYPE__ unsigned short
5279// NVPTX32:#define __UINT32_C_SUFFIX__ U
5280// NVPTX32:#define __UINT32_MAX__ 4294967295U
5281// NVPTX32:#define __UINT32_TYPE__ unsigned int
Joerg Sonnenberger62277b32014-07-15 11:51:38 +00005282// NVPTX32:#define __UINT64_C_SUFFIX__ ULL
5283// NVPTX32:#define __UINT64_MAX__ 18446744073709551615ULL
5284// NVPTX32:#define __UINT64_TYPE__ long long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00005285// NVPTX32:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00005286// NVPTX32:#define __UINT8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00005287// NVPTX32:#define __UINT8_TYPE__ unsigned char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00005288// NVPTX32:#define __UINTMAX_C_SUFFIX__ ULL
JF Bastienab8d0a02014-06-25 01:31:33 +00005289// NVPTX32:#define __UINTMAX_MAX__ 18446744073709551615ULL
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00005290// NVPTX32:#define __UINTMAX_TYPE__ long long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00005291// NVPTX32:#define __UINTMAX_WIDTH__ 64
5292// NVPTX32:#define __UINTPTR_MAX__ 4294967295U
5293// NVPTX32:#define __UINTPTR_TYPE__ unsigned int
5294// NVPTX32:#define __UINTPTR_WIDTH__ 32
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00005295// NVPTX32:#define __UINT_FAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00005296// NVPTX32:#define __UINT_FAST16_TYPE__ unsigned short
5297// NVPTX32:#define __UINT_FAST32_MAX__ 4294967295U
5298// NVPTX32:#define __UINT_FAST32_TYPE__ unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00005299// NVPTX32:#define __UINT_FAST64_MAX__ 18446744073709551615ULL
Artem Belevich236cfdc2015-09-28 22:54:08 +00005300// NVPTX32:#define __UINT_FAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00005301// NVPTX32:#define __UINT_FAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00005302// NVPTX32:#define __UINT_FAST8_TYPE__ unsigned char
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00005303// NVPTX32:#define __UINT_LEAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00005304// NVPTX32:#define __UINT_LEAST16_TYPE__ unsigned short
5305// NVPTX32:#define __UINT_LEAST32_MAX__ 4294967295U
5306// NVPTX32:#define __UINT_LEAST32_TYPE__ unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00005307// NVPTX32:#define __UINT_LEAST64_MAX__ 18446744073709551615ULL
Artem Belevich236cfdc2015-09-28 22:54:08 +00005308// NVPTX32:#define __UINT_LEAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00005309// NVPTX32:#define __UINT_LEAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00005310// NVPTX32:#define __UINT_LEAST8_TYPE__ unsigned char
James Y Knightb214cbc2016-03-04 19:00:41 +00005311// NVPTX32:#define __USER_LABEL_PREFIX__
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00005312// NVPTX32:#define __WCHAR_MAX__ 2147483647
5313// NVPTX32:#define __WCHAR_TYPE__ int
5314// NVPTX32:#define __WCHAR_WIDTH__ 32
5315// NVPTX32:#define __WINT_TYPE__ int
5316// NVPTX32:#define __WINT_WIDTH__ 32
5317//
James Y Knightc97efa42016-02-11 16:51:29 +00005318// RUN: %clang_cc1 -E -dM -ffreestanding -triple=nvptx64-none-none < /dev/null | FileCheck -match-full-lines -check-prefix NVPTX64 %s
Richard Smith59139022016-09-30 22:41:36 +00005319// RUN: %clang_cc1 -x c++ -E -dM -ffreestanding -triple=nvptx64-none-none < /dev/null | FileCheck -match-full-lines -check-prefix NVPTX64 -check-prefix NVPTX64-CXX %s
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00005320//
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00005321// NVPTX64:#define _LP64 1
Tim Northovera6a19f12015-02-06 01:25:07 +00005322// NVPTX64:#define __BIGGEST_ALIGNMENT__ 8
Dylan Noblesmith673728f2012-07-27 18:34:31 +00005323// NVPTX64:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00005324// NVPTX64:#define __CHAR16_TYPE__ unsigned short
5325// NVPTX64:#define __CHAR32_TYPE__ unsigned int
5326// NVPTX64:#define __CHAR_BIT__ 8
5327// NVPTX64:#define __CONSTANT_CFSTRINGS__ 1
5328// NVPTX64:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
5329// NVPTX64:#define __DBL_DIG__ 15
5330// NVPTX64:#define __DBL_EPSILON__ 2.2204460492503131e-16
5331// NVPTX64:#define __DBL_HAS_DENORM__ 1
5332// NVPTX64:#define __DBL_HAS_INFINITY__ 1
5333// NVPTX64:#define __DBL_HAS_QUIET_NAN__ 1
5334// NVPTX64:#define __DBL_MANT_DIG__ 53
5335// NVPTX64:#define __DBL_MAX_10_EXP__ 308
5336// NVPTX64:#define __DBL_MAX_EXP__ 1024
5337// NVPTX64:#define __DBL_MAX__ 1.7976931348623157e+308
5338// NVPTX64:#define __DBL_MIN_10_EXP__ (-307)
5339// NVPTX64:#define __DBL_MIN_EXP__ (-1021)
5340// NVPTX64:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00005341// NVPTX64:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00005342// NVPTX64:#define __FINITE_MATH_ONLY__ 0
5343// NVPTX64:#define __FLT_DENORM_MIN__ 1.40129846e-45F
5344// NVPTX64:#define __FLT_DIG__ 6
5345// NVPTX64:#define __FLT_EPSILON__ 1.19209290e-7F
5346// NVPTX64:#define __FLT_EVAL_METHOD__ 0
5347// NVPTX64:#define __FLT_HAS_DENORM__ 1
5348// NVPTX64:#define __FLT_HAS_INFINITY__ 1
5349// NVPTX64:#define __FLT_HAS_QUIET_NAN__ 1
5350// NVPTX64:#define __FLT_MANT_DIG__ 24
5351// NVPTX64:#define __FLT_MAX_10_EXP__ 38
5352// NVPTX64:#define __FLT_MAX_EXP__ 128
5353// NVPTX64:#define __FLT_MAX__ 3.40282347e+38F
5354// NVPTX64:#define __FLT_MIN_10_EXP__ (-37)
5355// NVPTX64:#define __FLT_MIN_EXP__ (-125)
5356// NVPTX64:#define __FLT_MIN__ 1.17549435e-38F
5357// NVPTX64:#define __FLT_RADIX__ 2
James Y Knightc97efa42016-02-11 16:51:29 +00005358// NVPTX64:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005359// NVPTX64:#define __INT16_FMTd__ "hd"
5360// NVPTX64:#define __INT16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00005361// NVPTX64:#define __INT16_MAX__ 32767
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00005362// NVPTX64:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +00005363// NVPTX64:#define __INT32_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005364// NVPTX64:#define __INT32_FMTd__ "d"
5365// NVPTX64:#define __INT32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00005366// NVPTX64:#define __INT32_MAX__ 2147483647
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00005367// NVPTX64:#define __INT32_TYPE__ int
5368// NVPTX64:#define __INT64_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005369// NVPTX64:#define __INT64_FMTd__ "lld"
5370// NVPTX64:#define __INT64_FMTi__ "lli"
James Y Knightc97efa42016-02-11 16:51:29 +00005371// NVPTX64:#define __INT64_MAX__ 9223372036854775807LL
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00005372// NVPTX64:#define __INT64_TYPE__ long long int
James Y Knightc97efa42016-02-11 16:51:29 +00005373// NVPTX64:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005374// NVPTX64:#define __INT8_FMTd__ "hhd"
5375// NVPTX64:#define __INT8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00005376// NVPTX64:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00005377// NVPTX64:#define __INT8_TYPE__ signed char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00005378// NVPTX64:#define __INTMAX_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005379// NVPTX64:#define __INTMAX_FMTd__ "lld"
5380// NVPTX64:#define __INTMAX_FMTi__ "lli"
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00005381// NVPTX64:#define __INTMAX_MAX__ 9223372036854775807LL
5382// NVPTX64:#define __INTMAX_TYPE__ long long int
5383// NVPTX64:#define __INTMAX_WIDTH__ 64
Eli Bendersky15f63422015-04-01 18:29:27 +00005384// NVPTX64:#define __INTPTR_FMTd__ "ld"
5385// NVPTX64:#define __INTPTR_FMTi__ "li"
5386// NVPTX64:#define __INTPTR_MAX__ 9223372036854775807L
5387// NVPTX64:#define __INTPTR_TYPE__ long int
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00005388// NVPTX64:#define __INTPTR_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005389// NVPTX64:#define __INT_FAST16_FMTd__ "hd"
5390// NVPTX64:#define __INT_FAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00005391// NVPTX64:#define __INT_FAST16_MAX__ 32767
5392// NVPTX64:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005393// NVPTX64:#define __INT_FAST32_FMTd__ "d"
5394// NVPTX64:#define __INT_FAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00005395// NVPTX64:#define __INT_FAST32_MAX__ 2147483647
5396// NVPTX64:#define __INT_FAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005397// NVPTX64:#define __INT_FAST64_FMTd__ "ld"
5398// NVPTX64:#define __INT_FAST64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00005399// NVPTX64:#define __INT_FAST64_MAX__ 9223372036854775807L
5400// NVPTX64:#define __INT_FAST64_TYPE__ long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005401// NVPTX64:#define __INT_FAST8_FMTd__ "hhd"
5402// NVPTX64:#define __INT_FAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00005403// NVPTX64:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00005404// NVPTX64:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005405// NVPTX64:#define __INT_LEAST16_FMTd__ "hd"
5406// NVPTX64:#define __INT_LEAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00005407// NVPTX64:#define __INT_LEAST16_MAX__ 32767
5408// NVPTX64:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005409// NVPTX64:#define __INT_LEAST32_FMTd__ "d"
5410// NVPTX64:#define __INT_LEAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00005411// NVPTX64:#define __INT_LEAST32_MAX__ 2147483647
5412// NVPTX64:#define __INT_LEAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005413// NVPTX64:#define __INT_LEAST64_FMTd__ "ld"
5414// NVPTX64:#define __INT_LEAST64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00005415// NVPTX64:#define __INT_LEAST64_MAX__ 9223372036854775807L
5416// NVPTX64:#define __INT_LEAST64_TYPE__ long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005417// NVPTX64:#define __INT_LEAST8_FMTd__ "hhd"
5418// NVPTX64:#define __INT_LEAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00005419// NVPTX64:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00005420// NVPTX64:#define __INT_LEAST8_TYPE__ signed char
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00005421// NVPTX64:#define __INT_MAX__ 2147483647
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00005422// NVPTX64:#define __LDBL_DENORM_MIN__ 4.9406564584124654e-324L
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00005423// NVPTX64:#define __LDBL_DIG__ 15
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00005424// NVPTX64:#define __LDBL_EPSILON__ 2.2204460492503131e-16L
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00005425// NVPTX64:#define __LDBL_HAS_DENORM__ 1
5426// NVPTX64:#define __LDBL_HAS_INFINITY__ 1
5427// NVPTX64:#define __LDBL_HAS_QUIET_NAN__ 1
5428// NVPTX64:#define __LDBL_MANT_DIG__ 53
5429// NVPTX64:#define __LDBL_MAX_10_EXP__ 308
5430// NVPTX64:#define __LDBL_MAX_EXP__ 1024
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00005431// NVPTX64:#define __LDBL_MAX__ 1.7976931348623157e+308L
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00005432// NVPTX64:#define __LDBL_MIN_10_EXP__ (-307)
5433// NVPTX64:#define __LDBL_MIN_EXP__ (-1021)
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00005434// NVPTX64:#define __LDBL_MIN__ 2.2250738585072014e-308L
Robert Lytton2c942c62014-03-10 12:06:29 +00005435// NVPTX64:#define __LITTLE_ENDIAN__ 1
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00005436// NVPTX64:#define __LONG_LONG_MAX__ 9223372036854775807LL
5437// NVPTX64:#define __LONG_MAX__ 9223372036854775807L
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00005438// NVPTX64:#define __LP64__ 1
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00005439// NVPTX64:#define __NVPTX__ 1
5440// NVPTX64:#define __POINTER_WIDTH__ 64
5441// NVPTX64:#define __PRAGMA_REDEFINE_EXTNAME 1
Eli Bendersky13467172015-04-01 20:29:18 +00005442// NVPTX64:#define __PTRDIFF_TYPE__ long int
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00005443// NVPTX64:#define __PTRDIFF_WIDTH__ 64
5444// NVPTX64:#define __PTX__ 1
5445// NVPTX64:#define __SCHAR_MAX__ 127
5446// NVPTX64:#define __SHRT_MAX__ 32767
Joerg Sonnenbergerb3a49692014-07-17 18:31:20 +00005447// NVPTX64:#define __SIG_ATOMIC_MAX__ 2147483647
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00005448// NVPTX64:#define __SIG_ATOMIC_WIDTH__ 32
5449// NVPTX64:#define __SIZEOF_DOUBLE__ 8
5450// NVPTX64:#define __SIZEOF_FLOAT__ 4
5451// NVPTX64:#define __SIZEOF_INT__ 4
5452// NVPTX64:#define __SIZEOF_LONG_DOUBLE__ 8
5453// NVPTX64:#define __SIZEOF_LONG_LONG__ 8
5454// NVPTX64:#define __SIZEOF_LONG__ 8
5455// NVPTX64:#define __SIZEOF_POINTER__ 8
5456// NVPTX64:#define __SIZEOF_PTRDIFF_T__ 8
5457// NVPTX64:#define __SIZEOF_SHORT__ 2
5458// NVPTX64:#define __SIZEOF_SIZE_T__ 8
5459// NVPTX64:#define __SIZEOF_WCHAR_T__ 4
5460// NVPTX64:#define __SIZEOF_WINT_T__ 4
Evgeniy Stepanovc3c725a2013-03-28 08:36:54 +00005461// NVPTX64:#define __SIZE_MAX__ 18446744073709551615UL
Eli Bendersky15f63422015-04-01 18:29:27 +00005462// NVPTX64:#define __SIZE_TYPE__ long unsigned int
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00005463// NVPTX64:#define __SIZE_WIDTH__ 64
Richard Smith59139022016-09-30 22:41:36 +00005464// NVPTX64-CXX:#define __STDCPP_DEFAULT_NEW_ALIGNMENT__ 8UL
James Y Knightc97efa42016-02-11 16:51:29 +00005465// NVPTX64:#define __UINT16_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00005466// NVPTX64:#define __UINT16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00005467// NVPTX64:#define __UINT16_TYPE__ unsigned short
5468// NVPTX64:#define __UINT32_C_SUFFIX__ U
5469// NVPTX64:#define __UINT32_MAX__ 4294967295U
5470// NVPTX64:#define __UINT32_TYPE__ unsigned int
Joerg Sonnenberger62277b32014-07-15 11:51:38 +00005471// NVPTX64:#define __UINT64_C_SUFFIX__ ULL
5472// NVPTX64:#define __UINT64_MAX__ 18446744073709551615ULL
5473// NVPTX64:#define __UINT64_TYPE__ long long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00005474// NVPTX64:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00005475// NVPTX64:#define __UINT8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00005476// NVPTX64:#define __UINT8_TYPE__ unsigned char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00005477// NVPTX64:#define __UINTMAX_C_SUFFIX__ ULL
JF Bastienab8d0a02014-06-25 01:31:33 +00005478// NVPTX64:#define __UINTMAX_MAX__ 18446744073709551615ULL
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00005479// NVPTX64:#define __UINTMAX_TYPE__ long long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00005480// NVPTX64:#define __UINTMAX_WIDTH__ 64
Eli Bendersky15f63422015-04-01 18:29:27 +00005481// NVPTX64:#define __UINTPTR_MAX__ 18446744073709551615UL
5482// NVPTX64:#define __UINTPTR_TYPE__ long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00005483// NVPTX64:#define __UINTPTR_WIDTH__ 64
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00005484// NVPTX64:#define __UINT_FAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00005485// NVPTX64:#define __UINT_FAST16_TYPE__ unsigned short
5486// NVPTX64:#define __UINT_FAST32_MAX__ 4294967295U
5487// NVPTX64:#define __UINT_FAST32_TYPE__ unsigned int
5488// NVPTX64:#define __UINT_FAST64_MAX__ 18446744073709551615UL
5489// NVPTX64:#define __UINT_FAST64_TYPE__ long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00005490// NVPTX64:#define __UINT_FAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00005491// NVPTX64:#define __UINT_FAST8_TYPE__ unsigned char
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00005492// NVPTX64:#define __UINT_LEAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00005493// NVPTX64:#define __UINT_LEAST16_TYPE__ unsigned short
5494// NVPTX64:#define __UINT_LEAST32_MAX__ 4294967295U
5495// NVPTX64:#define __UINT_LEAST32_TYPE__ unsigned int
5496// NVPTX64:#define __UINT_LEAST64_MAX__ 18446744073709551615UL
5497// NVPTX64:#define __UINT_LEAST64_TYPE__ long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00005498// NVPTX64:#define __UINT_LEAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00005499// NVPTX64:#define __UINT_LEAST8_TYPE__ unsigned char
James Y Knightb214cbc2016-03-04 19:00:41 +00005500// NVPTX64:#define __USER_LABEL_PREFIX__
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00005501// NVPTX64:#define __WCHAR_MAX__ 2147483647
5502// NVPTX64:#define __WCHAR_TYPE__ int
5503// NVPTX64:#define __WCHAR_WIDTH__ 32
5504// NVPTX64:#define __WINT_TYPE__ int
5505// NVPTX64:#define __WINT_WIDTH__ 32
5506//
James Y Knightc97efa42016-02-11 16:51:29 +00005507// RUN: %clang_cc1 -E -dM -ffreestanding -triple=powerpc-none-none -target-cpu 603e < /dev/null | FileCheck -match-full-lines -check-prefix PPC603E %s
Richard Smith59139022016-09-30 22:41:36 +00005508// RUN: %clang_cc1 -x c++ -E -dM -ffreestanding -triple=powerpc-none-none -target-cpu 603e < /dev/null | FileCheck -match-full-lines -check-prefix PPC603E-CXX %s
Hal Finkel6b984f02012-07-03 16:51:04 +00005509//
5510// PPC603E:#define _ARCH_603 1
5511// PPC603E:#define _ARCH_603E 1
5512// PPC603E:#define _ARCH_PPC 1
5513// PPC603E:#define _ARCH_PPCGR 1
5514// PPC603E:#define _BIG_ENDIAN 1
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00005515// PPC603E-NOT:#define _LP64
Eric Christopher153dad42017-03-25 02:55:21 +00005516// PPC603E:#define __BIGGEST_ALIGNMENT__ 16
Hal Finkel6b984f02012-07-03 16:51:04 +00005517// PPC603E:#define __BIG_ENDIAN__ 1
Dylan Noblesmith673728f2012-07-27 18:34:31 +00005518// PPC603E:#define __BYTE_ORDER__ __ORDER_BIG_ENDIAN__
Hal Finkel6b984f02012-07-03 16:51:04 +00005519// PPC603E:#define __CHAR16_TYPE__ unsigned short
5520// PPC603E:#define __CHAR32_TYPE__ unsigned int
5521// PPC603E:#define __CHAR_BIT__ 8
5522// PPC603E:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
5523// PPC603E:#define __DBL_DIG__ 15
5524// PPC603E:#define __DBL_EPSILON__ 2.2204460492503131e-16
5525// PPC603E:#define __DBL_HAS_DENORM__ 1
5526// PPC603E:#define __DBL_HAS_INFINITY__ 1
5527// PPC603E:#define __DBL_HAS_QUIET_NAN__ 1
5528// PPC603E:#define __DBL_MANT_DIG__ 53
5529// PPC603E:#define __DBL_MAX_10_EXP__ 308
5530// PPC603E:#define __DBL_MAX_EXP__ 1024
5531// PPC603E:#define __DBL_MAX__ 1.7976931348623157e+308
5532// PPC603E:#define __DBL_MIN_10_EXP__ (-307)
5533// PPC603E:#define __DBL_MIN_EXP__ (-1021)
5534// PPC603E:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00005535// PPC603E:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Hal Finkel6b984f02012-07-03 16:51:04 +00005536// PPC603E:#define __FLT_DENORM_MIN__ 1.40129846e-45F
5537// PPC603E:#define __FLT_DIG__ 6
5538// PPC603E:#define __FLT_EPSILON__ 1.19209290e-7F
5539// PPC603E:#define __FLT_EVAL_METHOD__ 0
5540// PPC603E:#define __FLT_HAS_DENORM__ 1
5541// PPC603E:#define __FLT_HAS_INFINITY__ 1
5542// PPC603E:#define __FLT_HAS_QUIET_NAN__ 1
5543// PPC603E:#define __FLT_MANT_DIG__ 24
5544// PPC603E:#define __FLT_MAX_10_EXP__ 38
5545// PPC603E:#define __FLT_MAX_EXP__ 128
5546// PPC603E:#define __FLT_MAX__ 3.40282347e+38F
5547// PPC603E:#define __FLT_MIN_10_EXP__ (-37)
5548// PPC603E:#define __FLT_MIN_EXP__ (-125)
5549// PPC603E:#define __FLT_MIN__ 1.17549435e-38F
5550// PPC603E:#define __FLT_RADIX__ 2
James Y Knightc97efa42016-02-11 16:51:29 +00005551// PPC603E:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005552// PPC603E:#define __INT16_FMTd__ "hd"
5553// PPC603E:#define __INT16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00005554// PPC603E:#define __INT16_MAX__ 32767
Hal Finkel6b984f02012-07-03 16:51:04 +00005555// PPC603E:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +00005556// PPC603E:#define __INT32_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005557// PPC603E:#define __INT32_FMTd__ "d"
5558// PPC603E:#define __INT32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00005559// PPC603E:#define __INT32_MAX__ 2147483647
Hal Finkel6b984f02012-07-03 16:51:04 +00005560// PPC603E:#define __INT32_TYPE__ int
5561// PPC603E:#define __INT64_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005562// PPC603E:#define __INT64_FMTd__ "lld"
5563// PPC603E:#define __INT64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00005564// PPC603E:#define __INT64_MAX__ 9223372036854775807LL
Hal Finkel6b984f02012-07-03 16:51:04 +00005565// PPC603E:#define __INT64_TYPE__ long long int
James Y Knightc97efa42016-02-11 16:51:29 +00005566// PPC603E:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005567// PPC603E:#define __INT8_FMTd__ "hhd"
5568// PPC603E:#define __INT8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00005569// PPC603E:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00005570// PPC603E:#define __INT8_TYPE__ signed char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00005571// PPC603E:#define __INTMAX_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005572// PPC603E:#define __INTMAX_FMTd__ "lld"
5573// PPC603E:#define __INTMAX_FMTi__ "lli"
Hal Finkel6b984f02012-07-03 16:51:04 +00005574// PPC603E:#define __INTMAX_MAX__ 9223372036854775807LL
5575// PPC603E:#define __INTMAX_TYPE__ long long int
5576// PPC603E:#define __INTMAX_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005577// PPC603E:#define __INTPTR_FMTd__ "ld"
5578// PPC603E:#define __INTPTR_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00005579// PPC603E:#define __INTPTR_MAX__ 2147483647L
Hal Finkel6b984f02012-07-03 16:51:04 +00005580// PPC603E:#define __INTPTR_TYPE__ long int
5581// PPC603E:#define __INTPTR_WIDTH__ 32
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005582// PPC603E:#define __INT_FAST16_FMTd__ "hd"
5583// PPC603E:#define __INT_FAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00005584// PPC603E:#define __INT_FAST16_MAX__ 32767
5585// PPC603E:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005586// PPC603E:#define __INT_FAST32_FMTd__ "d"
5587// PPC603E:#define __INT_FAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00005588// PPC603E:#define __INT_FAST32_MAX__ 2147483647
5589// PPC603E:#define __INT_FAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005590// PPC603E:#define __INT_FAST64_FMTd__ "lld"
5591// PPC603E:#define __INT_FAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00005592// PPC603E:#define __INT_FAST64_MAX__ 9223372036854775807LL
5593// PPC603E:#define __INT_FAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005594// PPC603E:#define __INT_FAST8_FMTd__ "hhd"
5595// PPC603E:#define __INT_FAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00005596// PPC603E:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00005597// PPC603E:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005598// PPC603E:#define __INT_LEAST16_FMTd__ "hd"
5599// PPC603E:#define __INT_LEAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00005600// PPC603E:#define __INT_LEAST16_MAX__ 32767
5601// PPC603E:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005602// PPC603E:#define __INT_LEAST32_FMTd__ "d"
5603// PPC603E:#define __INT_LEAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00005604// PPC603E:#define __INT_LEAST32_MAX__ 2147483647
5605// PPC603E:#define __INT_LEAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005606// PPC603E:#define __INT_LEAST64_FMTd__ "lld"
5607// PPC603E:#define __INT_LEAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00005608// PPC603E:#define __INT_LEAST64_MAX__ 9223372036854775807LL
5609// PPC603E:#define __INT_LEAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005610// PPC603E:#define __INT_LEAST8_FMTd__ "hhd"
5611// PPC603E:#define __INT_LEAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00005612// PPC603E:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00005613// PPC603E:#define __INT_LEAST8_TYPE__ signed char
Hal Finkel6b984f02012-07-03 16:51:04 +00005614// PPC603E:#define __INT_MAX__ 2147483647
5615// PPC603E:#define __LDBL_DENORM_MIN__ 4.94065645841246544176568792868221e-324L
5616// PPC603E:#define __LDBL_DIG__ 31
5617// PPC603E:#define __LDBL_EPSILON__ 4.94065645841246544176568792868221e-324L
5618// PPC603E:#define __LDBL_HAS_DENORM__ 1
5619// PPC603E:#define __LDBL_HAS_INFINITY__ 1
5620// PPC603E:#define __LDBL_HAS_QUIET_NAN__ 1
5621// PPC603E:#define __LDBL_MANT_DIG__ 106
5622// PPC603E:#define __LDBL_MAX_10_EXP__ 308
5623// PPC603E:#define __LDBL_MAX_EXP__ 1024
5624// PPC603E:#define __LDBL_MAX__ 1.79769313486231580793728971405301e+308L
5625// PPC603E:#define __LDBL_MIN_10_EXP__ (-291)
5626// PPC603E:#define __LDBL_MIN_EXP__ (-968)
5627// PPC603E:#define __LDBL_MIN__ 2.00416836000897277799610805135016e-292L
Eric Christopheree214102017-03-25 06:37:23 +00005628// PPC603E:#define __LONGDOUBLE128 1
Hal Finkel6b984f02012-07-03 16:51:04 +00005629// PPC603E:#define __LONG_DOUBLE_128__ 1
5630// PPC603E:#define __LONG_LONG_MAX__ 9223372036854775807LL
5631// PPC603E:#define __LONG_MAX__ 2147483647L
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00005632// PPC603E-NOT:#define __LP64__
Hal Finkel6b984f02012-07-03 16:51:04 +00005633// PPC603E:#define __NATURAL_ALIGNMENT__ 1
Hal Finkel6b984f02012-07-03 16:51:04 +00005634// PPC603E:#define __POINTER_WIDTH__ 32
5635// PPC603E:#define __POWERPC__ 1
Chandler Carruth6aa92ad2013-06-25 11:13:47 +00005636// PPC603E:#define __PPC__ 1
Hal Finkel6b984f02012-07-03 16:51:04 +00005637// PPC603E:#define __PTRDIFF_TYPE__ long int
5638// PPC603E:#define __PTRDIFF_WIDTH__ 32
5639// PPC603E:#define __REGISTER_PREFIX__
5640// PPC603E:#define __SCHAR_MAX__ 127
5641// PPC603E:#define __SHRT_MAX__ 32767
Joerg Sonnenbergerb3a49692014-07-17 18:31:20 +00005642// PPC603E:#define __SIG_ATOMIC_MAX__ 2147483647
Hal Finkel6b984f02012-07-03 16:51:04 +00005643// PPC603E:#define __SIG_ATOMIC_WIDTH__ 32
5644// PPC603E:#define __SIZEOF_DOUBLE__ 8
5645// PPC603E:#define __SIZEOF_FLOAT__ 4
5646// PPC603E:#define __SIZEOF_INT__ 4
5647// PPC603E:#define __SIZEOF_LONG_DOUBLE__ 16
5648// PPC603E:#define __SIZEOF_LONG_LONG__ 8
5649// PPC603E:#define __SIZEOF_LONG__ 4
5650// PPC603E:#define __SIZEOF_POINTER__ 4
5651// PPC603E:#define __SIZEOF_PTRDIFF_T__ 4
5652// PPC603E:#define __SIZEOF_SHORT__ 2
5653// PPC603E:#define __SIZEOF_SIZE_T__ 4
5654// PPC603E:#define __SIZEOF_WCHAR_T__ 4
5655// PPC603E:#define __SIZEOF_WINT_T__ 4
James Y Knightc97efa42016-02-11 16:51:29 +00005656// PPC603E:#define __SIZE_MAX__ 4294967295UL
Hal Finkel6b984f02012-07-03 16:51:04 +00005657// PPC603E:#define __SIZE_TYPE__ long unsigned int
5658// PPC603E:#define __SIZE_WIDTH__ 32
Richard Smith59139022016-09-30 22:41:36 +00005659// PPC603E-CXX:#define __STDCPP_DEFAULT_NEW_ALIGNMENT__ 16UL
James Y Knightc97efa42016-02-11 16:51:29 +00005660// PPC603E:#define __UINT16_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00005661// PPC603E:#define __UINT16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00005662// PPC603E:#define __UINT16_TYPE__ unsigned short
5663// PPC603E:#define __UINT32_C_SUFFIX__ U
5664// PPC603E:#define __UINT32_MAX__ 4294967295U
5665// PPC603E:#define __UINT32_TYPE__ unsigned int
5666// PPC603E:#define __UINT64_C_SUFFIX__ ULL
5667// PPC603E:#define __UINT64_MAX__ 18446744073709551615ULL
5668// PPC603E:#define __UINT64_TYPE__ long long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00005669// PPC603E:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00005670// PPC603E:#define __UINT8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00005671// PPC603E:#define __UINT8_TYPE__ unsigned char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00005672// PPC603E:#define __UINTMAX_C_SUFFIX__ ULL
JF Bastienab8d0a02014-06-25 01:31:33 +00005673// PPC603E:#define __UINTMAX_MAX__ 18446744073709551615ULL
Hal Finkel6b984f02012-07-03 16:51:04 +00005674// PPC603E:#define __UINTMAX_TYPE__ long long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00005675// PPC603E:#define __UINTMAX_WIDTH__ 64
James Y Knightc97efa42016-02-11 16:51:29 +00005676// PPC603E:#define __UINTPTR_MAX__ 4294967295UL
Joerg Sonnenberger3809a7a2014-07-14 20:40:56 +00005677// PPC603E:#define __UINTPTR_TYPE__ long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00005678// PPC603E:#define __UINTPTR_WIDTH__ 32
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00005679// PPC603E:#define __UINT_FAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00005680// PPC603E:#define __UINT_FAST16_TYPE__ unsigned short
5681// PPC603E:#define __UINT_FAST32_MAX__ 4294967295U
5682// PPC603E:#define __UINT_FAST32_TYPE__ unsigned int
5683// PPC603E:#define __UINT_FAST64_MAX__ 18446744073709551615ULL
5684// PPC603E:#define __UINT_FAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00005685// PPC603E:#define __UINT_FAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00005686// PPC603E:#define __UINT_FAST8_TYPE__ unsigned char
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00005687// PPC603E:#define __UINT_LEAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00005688// PPC603E:#define __UINT_LEAST16_TYPE__ unsigned short
5689// PPC603E:#define __UINT_LEAST32_MAX__ 4294967295U
5690// PPC603E:#define __UINT_LEAST32_TYPE__ unsigned int
5691// PPC603E:#define __UINT_LEAST64_MAX__ 18446744073709551615ULL
5692// PPC603E:#define __UINT_LEAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00005693// PPC603E:#define __UINT_LEAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00005694// PPC603E:#define __UINT_LEAST8_TYPE__ unsigned char
James Y Knightb214cbc2016-03-04 19:00:41 +00005695// PPC603E:#define __USER_LABEL_PREFIX__
Hal Finkel6b984f02012-07-03 16:51:04 +00005696// PPC603E:#define __WCHAR_MAX__ 2147483647
5697// PPC603E:#define __WCHAR_TYPE__ int
5698// PPC603E:#define __WCHAR_WIDTH__ 32
5699// PPC603E:#define __WINT_TYPE__ int
5700// PPC603E:#define __WINT_WIDTH__ 32
5701// PPC603E:#define __powerpc__ 1
5702// PPC603E:#define __ppc__ 1
5703//
James Y Knightc97efa42016-02-11 16:51:29 +00005704// RUN: %clang_cc1 -E -dM -ffreestanding -triple=powerpc64-none-none -target-cpu pwr7 -fno-signed-char < /dev/null | FileCheck -match-full-lines -check-prefix PPC64 %s
Richard Smith59139022016-09-30 22:41:36 +00005705// RUN: %clang_cc1 -x c++ -E -dM -ffreestanding -triple=powerpc64-none-none -target-cpu pwr7 -fno-signed-char < /dev/null | FileCheck -match-full-lines -check-prefix PPC64 -check-prefix PPC64-CXX %s
Chris Lattnere963d092009-10-29 04:55:36 +00005706//
5707// PPC64:#define _ARCH_PPC 1
5708// PPC64:#define _ARCH_PPC64 1
Hal Finkel6b984f02012-07-03 16:51:04 +00005709// PPC64:#define _ARCH_PPCGR 1
5710// PPC64:#define _ARCH_PPCSQ 1
5711// PPC64:#define _ARCH_PWR4 1
5712// PPC64:#define _ARCH_PWR5 1
5713// PPC64:#define _ARCH_PWR6 1
Hal Finkel8eb59282012-06-11 22:35:19 +00005714// PPC64:#define _ARCH_PWR7 1
Chris Lattnere963d092009-10-29 04:55:36 +00005715// PPC64:#define _BIG_ENDIAN 1
5716// PPC64:#define _LP64 1
Eric Christopher153dad42017-03-25 02:55:21 +00005717// PPC64:#define __BIGGEST_ALIGNMENT__ 16
Chris Lattnere963d092009-10-29 04:55:36 +00005718// PPC64:#define __BIG_ENDIAN__ 1
Dylan Noblesmith673728f2012-07-27 18:34:31 +00005719// PPC64:#define __BYTE_ORDER__ __ORDER_BIG_ENDIAN__
Dan Gohman04f87202010-05-28 00:27:15 +00005720// PPC64:#define __CHAR16_TYPE__ unsigned short
5721// PPC64:#define __CHAR32_TYPE__ unsigned int
Chris Lattnere963d092009-10-29 04:55:36 +00005722// PPC64:#define __CHAR_BIT__ 8
5723// PPC64:#define __CHAR_UNSIGNED__ 1
5724// PPC64:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
5725// PPC64:#define __DBL_DIG__ 15
5726// PPC64:#define __DBL_EPSILON__ 2.2204460492503131e-16
5727// PPC64:#define __DBL_HAS_DENORM__ 1
5728// PPC64:#define __DBL_HAS_INFINITY__ 1
5729// PPC64:#define __DBL_HAS_QUIET_NAN__ 1
5730// PPC64:#define __DBL_MANT_DIG__ 53
5731// PPC64:#define __DBL_MAX_10_EXP__ 308
5732// PPC64:#define __DBL_MAX_EXP__ 1024
5733// PPC64:#define __DBL_MAX__ 1.7976931348623157e+308
5734// PPC64:#define __DBL_MIN_10_EXP__ (-307)
5735// PPC64:#define __DBL_MIN_EXP__ (-1021)
5736// PPC64:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00005737// PPC64:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Chris Lattnere963d092009-10-29 04:55:36 +00005738// PPC64:#define __FLT_DENORM_MIN__ 1.40129846e-45F
5739// PPC64:#define __FLT_DIG__ 6
5740// PPC64:#define __FLT_EPSILON__ 1.19209290e-7F
5741// PPC64:#define __FLT_EVAL_METHOD__ 0
5742// PPC64:#define __FLT_HAS_DENORM__ 1
5743// PPC64:#define __FLT_HAS_INFINITY__ 1
5744// PPC64:#define __FLT_HAS_QUIET_NAN__ 1
5745// PPC64:#define __FLT_MANT_DIG__ 24
5746// PPC64:#define __FLT_MAX_10_EXP__ 38
5747// PPC64:#define __FLT_MAX_EXP__ 128
5748// PPC64:#define __FLT_MAX__ 3.40282347e+38F
5749// PPC64:#define __FLT_MIN_10_EXP__ (-37)
5750// PPC64:#define __FLT_MIN_EXP__ (-125)
5751// PPC64:#define __FLT_MIN__ 1.17549435e-38F
5752// PPC64:#define __FLT_RADIX__ 2
Eric Christopher0d361162017-03-25 05:40:13 +00005753// PPC64:#define __HAVE_BSWAP__ 1
James Y Knightc97efa42016-02-11 16:51:29 +00005754// PPC64:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005755// PPC64:#define __INT16_FMTd__ "hd"
5756// PPC64:#define __INT16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00005757// PPC64:#define __INT16_MAX__ 32767
Chris Lattnere963d092009-10-29 04:55:36 +00005758// PPC64:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +00005759// PPC64:#define __INT32_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005760// PPC64:#define __INT32_FMTd__ "d"
5761// PPC64:#define __INT32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00005762// PPC64:#define __INT32_MAX__ 2147483647
Chris Lattnere963d092009-10-29 04:55:36 +00005763// PPC64:#define __INT32_TYPE__ int
Ken Dyck2dc8d5f2009-11-16 16:36:33 +00005764// PPC64:#define __INT64_C_SUFFIX__ L
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005765// PPC64:#define __INT64_FMTd__ "ld"
5766// PPC64:#define __INT64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00005767// PPC64:#define __INT64_MAX__ 9223372036854775807L
Chris Lattnere963d092009-10-29 04:55:36 +00005768// PPC64:#define __INT64_TYPE__ long int
James Y Knightc97efa42016-02-11 16:51:29 +00005769// PPC64:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005770// PPC64:#define __INT8_FMTd__ "hhd"
5771// PPC64:#define __INT8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00005772// PPC64:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00005773// PPC64:#define __INT8_TYPE__ signed char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00005774// PPC64:#define __INTMAX_C_SUFFIX__ L
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005775// PPC64:#define __INTMAX_FMTd__ "ld"
5776// PPC64:#define __INTMAX_FMTi__ "li"
Chris Lattnere963d092009-10-29 04:55:36 +00005777// PPC64:#define __INTMAX_MAX__ 9223372036854775807L
Ken Dyck9b25f782009-11-19 13:18:59 +00005778// PPC64:#define __INTMAX_TYPE__ long int
Ken Dyckc0c98292009-11-18 13:52:57 +00005779// PPC64:#define __INTMAX_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005780// PPC64:#define __INTPTR_FMTd__ "ld"
5781// PPC64:#define __INTPTR_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00005782// PPC64:#define __INTPTR_MAX__ 9223372036854775807L
Ken Dyck9b25f782009-11-19 13:18:59 +00005783// PPC64:#define __INTPTR_TYPE__ long int
Ken Dyck24cfcf12009-11-18 20:05:48 +00005784// PPC64:#define __INTPTR_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005785// PPC64:#define __INT_FAST16_FMTd__ "hd"
5786// PPC64:#define __INT_FAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00005787// PPC64:#define __INT_FAST16_MAX__ 32767
5788// PPC64:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005789// PPC64:#define __INT_FAST32_FMTd__ "d"
5790// PPC64:#define __INT_FAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00005791// PPC64:#define __INT_FAST32_MAX__ 2147483647
5792// PPC64:#define __INT_FAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005793// PPC64:#define __INT_FAST64_FMTd__ "ld"
5794// PPC64:#define __INT_FAST64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00005795// PPC64:#define __INT_FAST64_MAX__ 9223372036854775807L
5796// PPC64:#define __INT_FAST64_TYPE__ long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005797// PPC64:#define __INT_FAST8_FMTd__ "hhd"
5798// PPC64:#define __INT_FAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00005799// PPC64:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00005800// PPC64:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005801// PPC64:#define __INT_LEAST16_FMTd__ "hd"
5802// PPC64:#define __INT_LEAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00005803// PPC64:#define __INT_LEAST16_MAX__ 32767
5804// PPC64:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005805// PPC64:#define __INT_LEAST32_FMTd__ "d"
5806// PPC64:#define __INT_LEAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00005807// PPC64:#define __INT_LEAST32_MAX__ 2147483647
5808// PPC64:#define __INT_LEAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005809// PPC64:#define __INT_LEAST64_FMTd__ "ld"
5810// PPC64:#define __INT_LEAST64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00005811// PPC64:#define __INT_LEAST64_MAX__ 9223372036854775807L
5812// PPC64:#define __INT_LEAST64_TYPE__ long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005813// PPC64:#define __INT_LEAST8_FMTd__ "hhd"
5814// PPC64:#define __INT_LEAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00005815// PPC64:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00005816// PPC64:#define __INT_LEAST8_TYPE__ signed char
Chris Lattnere963d092009-10-29 04:55:36 +00005817// PPC64:#define __INT_MAX__ 2147483647
Nico Weber3435ede2012-01-31 02:07:33 +00005818// PPC64:#define __LDBL_DENORM_MIN__ 4.94065645841246544176568792868221e-324L
5819// PPC64:#define __LDBL_DIG__ 31
5820// PPC64:#define __LDBL_EPSILON__ 4.94065645841246544176568792868221e-324L
Chris Lattnere963d092009-10-29 04:55:36 +00005821// PPC64:#define __LDBL_HAS_DENORM__ 1
5822// PPC64:#define __LDBL_HAS_INFINITY__ 1
5823// PPC64:#define __LDBL_HAS_QUIET_NAN__ 1
Nico Weber3435ede2012-01-31 02:07:33 +00005824// PPC64:#define __LDBL_MANT_DIG__ 106
Chris Lattnere963d092009-10-29 04:55:36 +00005825// PPC64:#define __LDBL_MAX_10_EXP__ 308
5826// PPC64:#define __LDBL_MAX_EXP__ 1024
Nico Weber3435ede2012-01-31 02:07:33 +00005827// PPC64:#define __LDBL_MAX__ 1.79769313486231580793728971405301e+308L
5828// PPC64:#define __LDBL_MIN_10_EXP__ (-291)
5829// PPC64:#define __LDBL_MIN_EXP__ (-968)
5830// PPC64:#define __LDBL_MIN__ 2.00416836000897277799610805135016e-292L
Eric Christopheree214102017-03-25 06:37:23 +00005831// PPC64:#define __LONGDOUBLE128 1
Chris Lattnere963d092009-10-29 04:55:36 +00005832// PPC64:#define __LONG_DOUBLE_128__ 1
5833// PPC64:#define __LONG_LONG_MAX__ 9223372036854775807LL
5834// PPC64:#define __LONG_MAX__ 9223372036854775807L
5835// PPC64:#define __LP64__ 1
5836// PPC64:#define __NATURAL_ALIGNMENT__ 1
Chris Lattnere963d092009-10-29 04:55:36 +00005837// PPC64:#define __POINTER_WIDTH__ 64
5838// PPC64:#define __POWERPC__ 1
Chandler Carruth6aa92ad2013-06-25 11:13:47 +00005839// PPC64:#define __PPC64__ 1
5840// PPC64:#define __PPC__ 1
Ken Dyck9b25f782009-11-19 13:18:59 +00005841// PPC64:#define __PTRDIFF_TYPE__ long int
Ken Dyck056efe02009-11-19 12:21:52 +00005842// PPC64:#define __PTRDIFF_WIDTH__ 64
James Y Knightc97efa42016-02-11 16:51:29 +00005843// PPC64:#define __REGISTER_PREFIX__
Chris Lattnere963d092009-10-29 04:55:36 +00005844// PPC64:#define __SCHAR_MAX__ 127
5845// PPC64:#define __SHRT_MAX__ 32767
Joerg Sonnenbergerb3a49692014-07-17 18:31:20 +00005846// PPC64:#define __SIG_ATOMIC_MAX__ 2147483647
Ken Dyckadc85112009-11-22 15:41:04 +00005847// PPC64:#define __SIG_ATOMIC_WIDTH__ 32
Dan Gohman04f87202010-05-28 00:27:15 +00005848// PPC64:#define __SIZEOF_DOUBLE__ 8
5849// PPC64:#define __SIZEOF_FLOAT__ 4
5850// PPC64:#define __SIZEOF_INT__ 4
Nico Weber3435ede2012-01-31 02:07:33 +00005851// PPC64:#define __SIZEOF_LONG_DOUBLE__ 16
Dan Gohman04f87202010-05-28 00:27:15 +00005852// PPC64:#define __SIZEOF_LONG_LONG__ 8
5853// PPC64:#define __SIZEOF_LONG__ 8
5854// PPC64:#define __SIZEOF_POINTER__ 8
5855// PPC64:#define __SIZEOF_PTRDIFF_T__ 8
5856// PPC64:#define __SIZEOF_SHORT__ 2
5857// PPC64:#define __SIZEOF_SIZE_T__ 8
5858// PPC64:#define __SIZEOF_WCHAR_T__ 4
5859// PPC64:#define __SIZEOF_WINT_T__ 4
Evgeniy Stepanovc3c725a2013-03-28 08:36:54 +00005860// PPC64:#define __SIZE_MAX__ 18446744073709551615UL
Chris Lattnere963d092009-10-29 04:55:36 +00005861// PPC64:#define __SIZE_TYPE__ long unsigned int
Ken Dyck57512862009-11-19 13:42:09 +00005862// PPC64:#define __SIZE_WIDTH__ 64
Richard Smith59139022016-09-30 22:41:36 +00005863// PPC64-CXX:#define __STDCPP_DEFAULT_NEW_ALIGNMENT__ 16UL
James Y Knightc97efa42016-02-11 16:51:29 +00005864// PPC64:#define __UINT16_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00005865// PPC64:#define __UINT16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00005866// PPC64:#define __UINT16_TYPE__ unsigned short
5867// PPC64:#define __UINT32_C_SUFFIX__ U
5868// PPC64:#define __UINT32_MAX__ 4294967295U
5869// PPC64:#define __UINT32_TYPE__ unsigned int
5870// PPC64:#define __UINT64_C_SUFFIX__ UL
5871// PPC64:#define __UINT64_MAX__ 18446744073709551615UL
5872// PPC64:#define __UINT64_TYPE__ long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00005873// PPC64:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00005874// PPC64:#define __UINT8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00005875// PPC64:#define __UINT8_TYPE__ unsigned char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00005876// PPC64:#define __UINTMAX_C_SUFFIX__ UL
JF Bastienab8d0a02014-06-25 01:31:33 +00005877// PPC64:#define __UINTMAX_MAX__ 18446744073709551615UL
Ken Dyck9b25f782009-11-19 13:18:59 +00005878// PPC64:#define __UINTMAX_TYPE__ long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00005879// PPC64:#define __UINTMAX_WIDTH__ 64
5880// PPC64:#define __UINTPTR_MAX__ 18446744073709551615UL
5881// PPC64:#define __UINTPTR_TYPE__ long unsigned int
5882// PPC64:#define __UINTPTR_WIDTH__ 64
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00005883// PPC64:#define __UINT_FAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00005884// PPC64:#define __UINT_FAST16_TYPE__ unsigned short
5885// PPC64:#define __UINT_FAST32_MAX__ 4294967295U
5886// PPC64:#define __UINT_FAST32_TYPE__ unsigned int
5887// PPC64:#define __UINT_FAST64_MAX__ 18446744073709551615UL
5888// PPC64:#define __UINT_FAST64_TYPE__ long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00005889// PPC64:#define __UINT_FAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00005890// PPC64:#define __UINT_FAST8_TYPE__ unsigned char
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00005891// PPC64:#define __UINT_LEAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00005892// PPC64:#define __UINT_LEAST16_TYPE__ unsigned short
5893// PPC64:#define __UINT_LEAST32_MAX__ 4294967295U
5894// PPC64:#define __UINT_LEAST32_TYPE__ unsigned int
5895// PPC64:#define __UINT_LEAST64_MAX__ 18446744073709551615UL
5896// PPC64:#define __UINT_LEAST64_TYPE__ long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00005897// PPC64:#define __UINT_LEAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00005898// PPC64:#define __UINT_LEAST8_TYPE__ unsigned char
James Y Knightb214cbc2016-03-04 19:00:41 +00005899// PPC64:#define __USER_LABEL_PREFIX__
Chris Lattnere963d092009-10-29 04:55:36 +00005900// PPC64:#define __WCHAR_MAX__ 2147483647
5901// PPC64:#define __WCHAR_TYPE__ int
Ken Dyck0138b9e2009-11-19 15:47:58 +00005902// PPC64:#define __WCHAR_WIDTH__ 32
Chris Lattnere963d092009-10-29 04:55:36 +00005903// PPC64:#define __WINT_TYPE__ int
Ken Dycka1f677c2009-11-19 14:16:57 +00005904// PPC64:#define __WINT_WIDTH__ 32
Chris Lattnere963d092009-10-29 04:55:36 +00005905// PPC64:#define __ppc64__ 1
5906// PPC64:#define __ppc__ 1
5907//
James Y Knightc97efa42016-02-11 16:51:29 +00005908// 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 +00005909//
5910// PPC64LE:#define _ARCH_PPC 1
5911// PPC64LE:#define _ARCH_PPC64 1
5912// PPC64LE:#define _ARCH_PPCGR 1
5913// PPC64LE:#define _ARCH_PPCSQ 1
5914// PPC64LE:#define _ARCH_PWR4 1
5915// PPC64LE:#define _ARCH_PWR5 1
5916// PPC64LE:#define _ARCH_PWR5X 1
5917// PPC64LE:#define _ARCH_PWR6 1
5918// PPC64LE:#define _ARCH_PWR6X 1
5919// PPC64LE:#define _ARCH_PWR7 1
Will Schmidt5fa50f3c2014-03-24 21:09:16 +00005920// PPC64LE:#define _CALL_ELF 2
Bill Schmidt778d3872013-07-26 01:36:11 +00005921// PPC64LE:#define _LITTLE_ENDIAN 1
5922// PPC64LE:#define _LP64 1
Eric Christopher153dad42017-03-25 02:55:21 +00005923// PPC64LE:#define __BIGGEST_ALIGNMENT__ 16
Bill Schmidt778d3872013-07-26 01:36:11 +00005924// PPC64LE:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
5925// PPC64LE:#define __CHAR16_TYPE__ unsigned short
5926// PPC64LE:#define __CHAR32_TYPE__ unsigned int
5927// PPC64LE:#define __CHAR_BIT__ 8
5928// PPC64LE:#define __CHAR_UNSIGNED__ 1
5929// PPC64LE:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
5930// PPC64LE:#define __DBL_DIG__ 15
5931// PPC64LE:#define __DBL_EPSILON__ 2.2204460492503131e-16
5932// PPC64LE:#define __DBL_HAS_DENORM__ 1
5933// PPC64LE:#define __DBL_HAS_INFINITY__ 1
5934// PPC64LE:#define __DBL_HAS_QUIET_NAN__ 1
5935// PPC64LE:#define __DBL_MANT_DIG__ 53
5936// PPC64LE:#define __DBL_MAX_10_EXP__ 308
5937// PPC64LE:#define __DBL_MAX_EXP__ 1024
5938// PPC64LE:#define __DBL_MAX__ 1.7976931348623157e+308
5939// PPC64LE:#define __DBL_MIN_10_EXP__ (-307)
5940// PPC64LE:#define __DBL_MIN_EXP__ (-1021)
5941// PPC64LE:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00005942// PPC64LE:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Bill Schmidt778d3872013-07-26 01:36:11 +00005943// PPC64LE:#define __FLT_DENORM_MIN__ 1.40129846e-45F
5944// PPC64LE:#define __FLT_DIG__ 6
5945// PPC64LE:#define __FLT_EPSILON__ 1.19209290e-7F
5946// PPC64LE:#define __FLT_EVAL_METHOD__ 0
5947// PPC64LE:#define __FLT_HAS_DENORM__ 1
5948// PPC64LE:#define __FLT_HAS_INFINITY__ 1
5949// PPC64LE:#define __FLT_HAS_QUIET_NAN__ 1
5950// PPC64LE:#define __FLT_MANT_DIG__ 24
5951// PPC64LE:#define __FLT_MAX_10_EXP__ 38
5952// PPC64LE:#define __FLT_MAX_EXP__ 128
5953// PPC64LE:#define __FLT_MAX__ 3.40282347e+38F
5954// PPC64LE:#define __FLT_MIN_10_EXP__ (-37)
5955// PPC64LE:#define __FLT_MIN_EXP__ (-125)
5956// PPC64LE:#define __FLT_MIN__ 1.17549435e-38F
5957// PPC64LE:#define __FLT_RADIX__ 2
Eric Christopher0d361162017-03-25 05:40:13 +00005958// PPC64LE:#define __HAVE_BSWAP__ 1
James Y Knightc97efa42016-02-11 16:51:29 +00005959// PPC64LE:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005960// PPC64LE:#define __INT16_FMTd__ "hd"
5961// PPC64LE:#define __INT16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00005962// PPC64LE:#define __INT16_MAX__ 32767
Bill Schmidt778d3872013-07-26 01:36:11 +00005963// PPC64LE:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +00005964// PPC64LE:#define __INT32_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005965// PPC64LE:#define __INT32_FMTd__ "d"
5966// PPC64LE:#define __INT32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00005967// PPC64LE:#define __INT32_MAX__ 2147483647
Bill Schmidt778d3872013-07-26 01:36:11 +00005968// PPC64LE:#define __INT32_TYPE__ int
5969// PPC64LE:#define __INT64_C_SUFFIX__ L
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005970// PPC64LE:#define __INT64_FMTd__ "ld"
5971// PPC64LE:#define __INT64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00005972// PPC64LE:#define __INT64_MAX__ 9223372036854775807L
Bill Schmidt778d3872013-07-26 01:36:11 +00005973// PPC64LE:#define __INT64_TYPE__ long int
James Y Knightc97efa42016-02-11 16:51:29 +00005974// PPC64LE:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005975// PPC64LE:#define __INT8_FMTd__ "hhd"
5976// PPC64LE:#define __INT8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00005977// PPC64LE:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00005978// PPC64LE:#define __INT8_TYPE__ signed char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00005979// PPC64LE:#define __INTMAX_C_SUFFIX__ L
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005980// PPC64LE:#define __INTMAX_FMTd__ "ld"
5981// PPC64LE:#define __INTMAX_FMTi__ "li"
Bill Schmidt778d3872013-07-26 01:36:11 +00005982// PPC64LE:#define __INTMAX_MAX__ 9223372036854775807L
5983// PPC64LE:#define __INTMAX_TYPE__ long int
5984// PPC64LE:#define __INTMAX_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005985// PPC64LE:#define __INTPTR_FMTd__ "ld"
5986// PPC64LE:#define __INTPTR_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00005987// PPC64LE:#define __INTPTR_MAX__ 9223372036854775807L
Bill Schmidt778d3872013-07-26 01:36:11 +00005988// PPC64LE:#define __INTPTR_TYPE__ long int
5989// PPC64LE:#define __INTPTR_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005990// PPC64LE:#define __INT_FAST16_FMTd__ "hd"
5991// PPC64LE:#define __INT_FAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00005992// PPC64LE:#define __INT_FAST16_MAX__ 32767
5993// PPC64LE:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005994// PPC64LE:#define __INT_FAST32_FMTd__ "d"
5995// PPC64LE:#define __INT_FAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00005996// PPC64LE:#define __INT_FAST32_MAX__ 2147483647
5997// PPC64LE:#define __INT_FAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005998// PPC64LE:#define __INT_FAST64_FMTd__ "ld"
5999// PPC64LE:#define __INT_FAST64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00006000// PPC64LE:#define __INT_FAST64_MAX__ 9223372036854775807L
6001// PPC64LE:#define __INT_FAST64_TYPE__ long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006002// PPC64LE:#define __INT_FAST8_FMTd__ "hhd"
6003// PPC64LE:#define __INT_FAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00006004// PPC64LE:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00006005// PPC64LE:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006006// PPC64LE:#define __INT_LEAST16_FMTd__ "hd"
6007// PPC64LE:#define __INT_LEAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00006008// PPC64LE:#define __INT_LEAST16_MAX__ 32767
6009// PPC64LE:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006010// PPC64LE:#define __INT_LEAST32_FMTd__ "d"
6011// PPC64LE:#define __INT_LEAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00006012// PPC64LE:#define __INT_LEAST32_MAX__ 2147483647
6013// PPC64LE:#define __INT_LEAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006014// PPC64LE:#define __INT_LEAST64_FMTd__ "ld"
6015// PPC64LE:#define __INT_LEAST64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00006016// PPC64LE:#define __INT_LEAST64_MAX__ 9223372036854775807L
6017// PPC64LE:#define __INT_LEAST64_TYPE__ long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006018// PPC64LE:#define __INT_LEAST8_FMTd__ "hhd"
6019// PPC64LE:#define __INT_LEAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00006020// PPC64LE:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00006021// PPC64LE:#define __INT_LEAST8_TYPE__ signed char
Bill Schmidt778d3872013-07-26 01:36:11 +00006022// PPC64LE:#define __INT_MAX__ 2147483647
6023// PPC64LE:#define __LDBL_DENORM_MIN__ 4.94065645841246544176568792868221e-324L
6024// PPC64LE:#define __LDBL_DIG__ 31
6025// PPC64LE:#define __LDBL_EPSILON__ 4.94065645841246544176568792868221e-324L
6026// PPC64LE:#define __LDBL_HAS_DENORM__ 1
6027// PPC64LE:#define __LDBL_HAS_INFINITY__ 1
6028// PPC64LE:#define __LDBL_HAS_QUIET_NAN__ 1
6029// PPC64LE:#define __LDBL_MANT_DIG__ 106
6030// PPC64LE:#define __LDBL_MAX_10_EXP__ 308
6031// PPC64LE:#define __LDBL_MAX_EXP__ 1024
6032// PPC64LE:#define __LDBL_MAX__ 1.79769313486231580793728971405301e+308L
6033// PPC64LE:#define __LDBL_MIN_10_EXP__ (-291)
6034// PPC64LE:#define __LDBL_MIN_EXP__ (-968)
6035// PPC64LE:#define __LDBL_MIN__ 2.00416836000897277799610805135016e-292L
6036// PPC64LE:#define __LITTLE_ENDIAN__ 1
Eric Christopheree214102017-03-25 06:37:23 +00006037// PPC64LE:#define __LONGDOUBLE128 1
Bill Schmidt778d3872013-07-26 01:36:11 +00006038// PPC64LE:#define __LONG_DOUBLE_128__ 1
6039// PPC64LE:#define __LONG_LONG_MAX__ 9223372036854775807LL
6040// PPC64LE:#define __LONG_MAX__ 9223372036854775807L
6041// PPC64LE:#define __LP64__ 1
6042// PPC64LE:#define __NATURAL_ALIGNMENT__ 1
6043// PPC64LE:#define __POINTER_WIDTH__ 64
6044// PPC64LE:#define __POWERPC__ 1
6045// PPC64LE:#define __PPC64__ 1
6046// PPC64LE:#define __PPC__ 1
6047// PPC64LE:#define __PTRDIFF_TYPE__ long int
6048// PPC64LE:#define __PTRDIFF_WIDTH__ 64
James Y Knightc97efa42016-02-11 16:51:29 +00006049// PPC64LE:#define __REGISTER_PREFIX__
Bill Schmidt778d3872013-07-26 01:36:11 +00006050// PPC64LE:#define __SCHAR_MAX__ 127
6051// PPC64LE:#define __SHRT_MAX__ 32767
Joerg Sonnenbergerb3a49692014-07-17 18:31:20 +00006052// PPC64LE:#define __SIG_ATOMIC_MAX__ 2147483647
Bill Schmidt778d3872013-07-26 01:36:11 +00006053// PPC64LE:#define __SIG_ATOMIC_WIDTH__ 32
6054// PPC64LE:#define __SIZEOF_DOUBLE__ 8
6055// PPC64LE:#define __SIZEOF_FLOAT__ 4
6056// PPC64LE:#define __SIZEOF_INT__ 4
6057// PPC64LE:#define __SIZEOF_LONG_DOUBLE__ 16
6058// PPC64LE:#define __SIZEOF_LONG_LONG__ 8
6059// PPC64LE:#define __SIZEOF_LONG__ 8
6060// PPC64LE:#define __SIZEOF_POINTER__ 8
6061// PPC64LE:#define __SIZEOF_PTRDIFF_T__ 8
6062// PPC64LE:#define __SIZEOF_SHORT__ 2
6063// PPC64LE:#define __SIZEOF_SIZE_T__ 8
6064// PPC64LE:#define __SIZEOF_WCHAR_T__ 4
6065// PPC64LE:#define __SIZEOF_WINT_T__ 4
6066// PPC64LE:#define __SIZE_MAX__ 18446744073709551615UL
6067// PPC64LE:#define __SIZE_TYPE__ long unsigned int
6068// PPC64LE:#define __SIZE_WIDTH__ 64
Eric Christopher32ac5e42017-02-15 07:50:11 +00006069// PPC64LE:#define __STRUCT_PARM_ALIGN__ 16
James Y Knightc97efa42016-02-11 16:51:29 +00006070// PPC64LE:#define __UINT16_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00006071// PPC64LE:#define __UINT16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00006072// PPC64LE:#define __UINT16_TYPE__ unsigned short
6073// PPC64LE:#define __UINT32_C_SUFFIX__ U
6074// PPC64LE:#define __UINT32_MAX__ 4294967295U
6075// PPC64LE:#define __UINT32_TYPE__ unsigned int
6076// PPC64LE:#define __UINT64_C_SUFFIX__ UL
6077// PPC64LE:#define __UINT64_MAX__ 18446744073709551615UL
6078// PPC64LE:#define __UINT64_TYPE__ long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00006079// PPC64LE:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00006080// PPC64LE:#define __UINT8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00006081// PPC64LE:#define __UINT8_TYPE__ unsigned char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00006082// PPC64LE:#define __UINTMAX_C_SUFFIX__ UL
JF Bastienab8d0a02014-06-25 01:31:33 +00006083// PPC64LE:#define __UINTMAX_MAX__ 18446744073709551615UL
Bill Schmidt778d3872013-07-26 01:36:11 +00006084// PPC64LE:#define __UINTMAX_TYPE__ long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00006085// PPC64LE:#define __UINTMAX_WIDTH__ 64
6086// PPC64LE:#define __UINTPTR_MAX__ 18446744073709551615UL
6087// PPC64LE:#define __UINTPTR_TYPE__ long unsigned int
6088// PPC64LE:#define __UINTPTR_WIDTH__ 64
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00006089// PPC64LE:#define __UINT_FAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00006090// PPC64LE:#define __UINT_FAST16_TYPE__ unsigned short
6091// PPC64LE:#define __UINT_FAST32_MAX__ 4294967295U
6092// PPC64LE:#define __UINT_FAST32_TYPE__ unsigned int
6093// PPC64LE:#define __UINT_FAST64_MAX__ 18446744073709551615UL
6094// PPC64LE:#define __UINT_FAST64_TYPE__ long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00006095// PPC64LE:#define __UINT_FAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00006096// PPC64LE:#define __UINT_FAST8_TYPE__ unsigned char
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00006097// PPC64LE:#define __UINT_LEAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00006098// PPC64LE:#define __UINT_LEAST16_TYPE__ unsigned short
6099// PPC64LE:#define __UINT_LEAST32_MAX__ 4294967295U
6100// PPC64LE:#define __UINT_LEAST32_TYPE__ unsigned int
6101// PPC64LE:#define __UINT_LEAST64_MAX__ 18446744073709551615UL
6102// PPC64LE:#define __UINT_LEAST64_TYPE__ long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00006103// PPC64LE:#define __UINT_LEAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00006104// PPC64LE:#define __UINT_LEAST8_TYPE__ unsigned char
James Y Knightb214cbc2016-03-04 19:00:41 +00006105// PPC64LE:#define __USER_LABEL_PREFIX__
Bill Schmidt778d3872013-07-26 01:36:11 +00006106// PPC64LE:#define __WCHAR_MAX__ 2147483647
6107// PPC64LE:#define __WCHAR_TYPE__ int
6108// PPC64LE:#define __WCHAR_WIDTH__ 32
6109// PPC64LE:#define __WINT_TYPE__ int
6110// PPC64LE:#define __WINT_WIDTH__ 32
6111// PPC64LE:#define __ppc64__ 1
6112// PPC64LE:#define __ppc__ 1
6113//
James Y Knightc97efa42016-02-11 16:51:29 +00006114// 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 +00006115//
6116// PPCA2Q:#define _ARCH_A2 1
6117// PPCA2Q:#define _ARCH_A2Q 1
6118// PPCA2Q:#define _ARCH_PPC 1
6119// PPCA2Q:#define _ARCH_PPC64 1
6120// PPCA2Q:#define _ARCH_QP 1
6121//
James Y Knightc97efa42016-02-11 16:51:29 +00006122// 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 +00006123//
6124// PPCBGQ:#define __THW_BLUEGENE__ 1
6125// PPCBGQ:#define __TOS_BGQ__ 1
6126// PPCBGQ:#define __bg__ 1
6127// PPCBGQ:#define __bgq__ 1
6128//
James Y Knightc97efa42016-02-11 16:51:29 +00006129// 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 +00006130//
6131// PPC630:#define _ARCH_630 1
6132// PPC630:#define _ARCH_PPC 1
6133// PPC630:#define _ARCH_PPC64 1
6134// PPC630:#define _ARCH_PPCGR 1
6135//
James Y Knightc97efa42016-02-11 16:51:29 +00006136// 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 +00006137//
6138// PPCPWR3:#define _ARCH_PPC 1
6139// PPCPWR3:#define _ARCH_PPC64 1
6140// PPCPWR3:#define _ARCH_PPCGR 1
6141//
James Y Knightc97efa42016-02-11 16:51:29 +00006142// 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 +00006143//
6144// PPCPOWER3:#define _ARCH_PPC 1
6145// PPCPOWER3:#define _ARCH_PPC64 1
6146// PPCPOWER3:#define _ARCH_PPCGR 1
6147//
James Y Knightc97efa42016-02-11 16:51:29 +00006148// 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 +00006149//
6150// PPCPWR4:#define _ARCH_PPC 1
6151// PPCPWR4:#define _ARCH_PPC64 1
6152// PPCPWR4:#define _ARCH_PPCGR 1
6153// PPCPWR4:#define _ARCH_PPCSQ 1
6154// PPCPWR4:#define _ARCH_PWR4 1
6155//
James Y Knightc97efa42016-02-11 16:51:29 +00006156// 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 +00006157//
6158// PPCPOWER4:#define _ARCH_PPC 1
6159// PPCPOWER4:#define _ARCH_PPC64 1
6160// PPCPOWER4:#define _ARCH_PPCGR 1
6161// PPCPOWER4:#define _ARCH_PPCSQ 1
6162// PPCPOWER4:#define _ARCH_PWR4 1
6163//
James Y Knightc97efa42016-02-11 16:51:29 +00006164// 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 +00006165//
6166// PPCPWR5:#define _ARCH_PPC 1
6167// PPCPWR5:#define _ARCH_PPC64 1
6168// PPCPWR5:#define _ARCH_PPCGR 1
6169// PPCPWR5:#define _ARCH_PPCSQ 1
6170// PPCPWR5:#define _ARCH_PWR4 1
6171// PPCPWR5:#define _ARCH_PWR5 1
6172//
James Y Knightc97efa42016-02-11 16:51:29 +00006173// 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 +00006174//
6175// PPCPOWER5:#define _ARCH_PPC 1
6176// PPCPOWER5:#define _ARCH_PPC64 1
6177// PPCPOWER5:#define _ARCH_PPCGR 1
6178// PPCPOWER5:#define _ARCH_PPCSQ 1
6179// PPCPOWER5:#define _ARCH_PWR4 1
6180// PPCPOWER5:#define _ARCH_PWR5 1
6181//
James Y Knightc97efa42016-02-11 16:51:29 +00006182// 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 +00006183//
6184// PPCPWR5X:#define _ARCH_PPC 1
6185// PPCPWR5X:#define _ARCH_PPC64 1
6186// PPCPWR5X:#define _ARCH_PPCGR 1
6187// PPCPWR5X:#define _ARCH_PPCSQ 1
6188// PPCPWR5X:#define _ARCH_PWR4 1
6189// PPCPWR5X:#define _ARCH_PWR5 1
6190// PPCPWR5X:#define _ARCH_PWR5X 1
6191//
James Y Knightc97efa42016-02-11 16:51:29 +00006192// 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 +00006193//
6194// PPCPOWER5X:#define _ARCH_PPC 1
6195// PPCPOWER5X:#define _ARCH_PPC64 1
6196// PPCPOWER5X:#define _ARCH_PPCGR 1
6197// PPCPOWER5X:#define _ARCH_PPCSQ 1
6198// PPCPOWER5X:#define _ARCH_PWR4 1
6199// PPCPOWER5X:#define _ARCH_PWR5 1
6200// PPCPOWER5X:#define _ARCH_PWR5X 1
6201//
James Y Knightc97efa42016-02-11 16:51:29 +00006202// 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 +00006203//
6204// PPCPWR6:#define _ARCH_PPC 1
6205// PPCPWR6:#define _ARCH_PPC64 1
6206// PPCPWR6:#define _ARCH_PPCGR 1
6207// PPCPWR6:#define _ARCH_PPCSQ 1
6208// PPCPWR6:#define _ARCH_PWR4 1
6209// PPCPWR6:#define _ARCH_PWR5 1
6210// PPCPWR6:#define _ARCH_PWR5X 1
6211// PPCPWR6:#define _ARCH_PWR6 1
6212//
James Y Knightc97efa42016-02-11 16:51:29 +00006213// 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 +00006214//
6215// PPCPOWER6:#define _ARCH_PPC 1
6216// PPCPOWER6:#define _ARCH_PPC64 1
6217// PPCPOWER6:#define _ARCH_PPCGR 1
6218// PPCPOWER6:#define _ARCH_PPCSQ 1
6219// PPCPOWER6:#define _ARCH_PWR4 1
6220// PPCPOWER6:#define _ARCH_PWR5 1
6221// PPCPOWER6:#define _ARCH_PWR5X 1
6222// PPCPOWER6:#define _ARCH_PWR6 1
6223//
James Y Knightc97efa42016-02-11 16:51:29 +00006224// 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 +00006225//
6226// PPCPWR6X:#define _ARCH_PPC 1
6227// PPCPWR6X:#define _ARCH_PPC64 1
6228// PPCPWR6X:#define _ARCH_PPCGR 1
6229// PPCPWR6X:#define _ARCH_PPCSQ 1
6230// PPCPWR6X:#define _ARCH_PWR4 1
6231// PPCPWR6X:#define _ARCH_PWR5 1
6232// PPCPWR6X:#define _ARCH_PWR5X 1
6233// PPCPWR6X:#define _ARCH_PWR6 1
6234// PPCPWR6X:#define _ARCH_PWR6X 1
6235//
James Y Knightc97efa42016-02-11 16:51:29 +00006236// 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 +00006237//
6238// PPCPOWER6X:#define _ARCH_PPC 1
6239// PPCPOWER6X:#define _ARCH_PPC64 1
6240// PPCPOWER6X:#define _ARCH_PPCGR 1
6241// PPCPOWER6X:#define _ARCH_PPCSQ 1
6242// PPCPOWER6X:#define _ARCH_PWR4 1
6243// PPCPOWER6X:#define _ARCH_PWR5 1
6244// PPCPOWER6X:#define _ARCH_PWR5X 1
6245// PPCPOWER6X:#define _ARCH_PWR6 1
6246// PPCPOWER6X:#define _ARCH_PWR6X 1
6247//
James Y Knightc97efa42016-02-11 16:51:29 +00006248// 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 +00006249//
6250// PPCPWR7:#define _ARCH_PPC 1
6251// PPCPWR7:#define _ARCH_PPC64 1
6252// PPCPWR7:#define _ARCH_PPCGR 1
6253// PPCPWR7:#define _ARCH_PPCSQ 1
6254// PPCPWR7:#define _ARCH_PWR4 1
6255// PPCPWR7:#define _ARCH_PWR5 1
6256// PPCPWR7:#define _ARCH_PWR5X 1
6257// PPCPWR7:#define _ARCH_PWR6 1
6258// PPCPWR7:#define _ARCH_PWR6X 1
6259// PPCPWR7:#define _ARCH_PWR7 1
6260//
James Y Knightc97efa42016-02-11 16:51:29 +00006261// 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 +00006262//
6263// PPCPOWER7:#define _ARCH_PPC 1
6264// PPCPOWER7:#define _ARCH_PPC64 1
6265// PPCPOWER7:#define _ARCH_PPCGR 1
6266// PPCPOWER7:#define _ARCH_PPCSQ 1
6267// PPCPOWER7:#define _ARCH_PWR4 1
6268// PPCPOWER7:#define _ARCH_PWR5 1
6269// PPCPOWER7:#define _ARCH_PWR5X 1
6270// PPCPOWER7:#define _ARCH_PWR6 1
6271// PPCPOWER7:#define _ARCH_PWR6X 1
6272// PPCPOWER7:#define _ARCH_PWR7 1
6273//
James Y Knightc97efa42016-02-11 16:51:29 +00006274// 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 +00006275//
6276// PPCPWR8:#define _ARCH_PPC 1
6277// PPCPWR8:#define _ARCH_PPC64 1
6278// PPCPWR8:#define _ARCH_PPCGR 1
6279// PPCPWR8:#define _ARCH_PPCSQ 1
6280// PPCPWR8:#define _ARCH_PWR4 1
6281// PPCPWR8:#define _ARCH_PWR5 1
6282// PPCPWR8:#define _ARCH_PWR5X 1
6283// PPCPWR8:#define _ARCH_PWR6 1
6284// PPCPWR8:#define _ARCH_PWR6X 1
6285// PPCPWR8:#define _ARCH_PWR7 1
6286// PPCPWR8:#define _ARCH_PWR8 1
6287//
James Y Knightc97efa42016-02-11 16:51:29 +00006288// 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 +00006289//
Eric Christopherb70819e2017-03-25 02:29:18 +00006290// ppc64le also defaults to power8.
6291// RUN: %clang_cc1 -E -dM -ffreestanding -triple=powerpc64le-none-none -target-cpu ppc64le -fno-signed-char < /dev/null | FileCheck -match-full-lines -check-prefix PPCPOWER8 %s
6292//
Will Schmidtf0487512014-06-26 13:34:10 +00006293// PPCPOWER8:#define _ARCH_PPC 1
6294// PPCPOWER8:#define _ARCH_PPC64 1
6295// PPCPOWER8:#define _ARCH_PPCGR 1
6296// PPCPOWER8:#define _ARCH_PPCSQ 1
6297// PPCPOWER8:#define _ARCH_PWR4 1
6298// PPCPOWER8:#define _ARCH_PWR5 1
6299// PPCPOWER8:#define _ARCH_PWR5X 1
6300// PPCPOWER8:#define _ARCH_PWR6 1
6301// PPCPOWER8:#define _ARCH_PWR6X 1
6302// PPCPOWER8:#define _ARCH_PWR7 1
6303// PPCPOWER8:#define _ARCH_PWR8 1
6304//
Nemanja Ivanovicd99f21b2016-05-09 18:58:02 +00006305// RUN: %clang_cc1 -E -dM -ffreestanding -triple=powerpc64-none-none -target-cpu pwr9 -fno-signed-char < /dev/null | FileCheck -match-full-lines -check-prefix PPCPWR9 %s
6306//
6307// PPCPWR9:#define _ARCH_PPC 1
6308// PPCPWR9:#define _ARCH_PPC64 1
6309// PPCPWR9:#define _ARCH_PPCGR 1
6310// PPCPWR9:#define _ARCH_PPCSQ 1
6311// PPCPWR9:#define _ARCH_PWR4 1
6312// PPCPWR9:#define _ARCH_PWR5 1
6313// PPCPWR9:#define _ARCH_PWR5X 1
6314// PPCPWR9:#define _ARCH_PWR6 1
6315// PPCPWR9:#define _ARCH_PWR6X 1
6316// PPCPWR9:#define _ARCH_PWR7 1
6317// PPCPWR9:#define _ARCH_PWR9 1
6318//
6319// RUN: %clang_cc1 -E -dM -ffreestanding -triple=powerpc64-none-none -target-cpu power9 -fno-signed-char < /dev/null | FileCheck -match-full-lines -check-prefix PPCPOWER9 %s
6320//
6321// PPCPOWER9:#define _ARCH_PPC 1
6322// PPCPOWER9:#define _ARCH_PPC64 1
6323// PPCPOWER9:#define _ARCH_PPCGR 1
6324// PPCPOWER9:#define _ARCH_PPCSQ 1
6325// PPCPOWER9:#define _ARCH_PWR4 1
6326// PPCPOWER9:#define _ARCH_PWR5 1
6327// PPCPOWER9:#define _ARCH_PWR5X 1
6328// PPCPOWER9:#define _ARCH_PWR6 1
6329// PPCPOWER9:#define _ARCH_PWR6X 1
6330// PPCPOWER9:#define _ARCH_PWR7 1
6331// PPCPOWER9:#define _ARCH_PWR9 1
6332//
Nemanja Ivanovicbb1ea2d2016-05-09 08:52:33 +00006333// RUN: %clang_cc1 -E -dM -ffreestanding -triple=powerpc64-none-none -target-feature +float128 -target-cpu power8 -fno-signed-char < /dev/null | FileCheck -check-prefix PPC-FLOAT128 %s
6334// PPC-FLOAT128:#define __FLOAT128__ 1
6335//
James Y Knightc97efa42016-02-11 16:51:29 +00006336// 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 +00006337//
6338// PPC64-LINUX:#define _ARCH_PPC 1
6339// PPC64-LINUX:#define _ARCH_PPC64 1
6340// PPC64-LINUX:#define _BIG_ENDIAN 1
Eric Christopher2fd2eda2017-03-25 03:33:59 +00006341// PPC64-LINUX:#define _CALL_LINUX 1
Nico Weber3435ede2012-01-31 02:07:33 +00006342// PPC64-LINUX:#define _LP64 1
Eric Christopher153dad42017-03-25 02:55:21 +00006343// PPC64-LINUX:#define __BIGGEST_ALIGNMENT__ 16
Nico Weber3435ede2012-01-31 02:07:33 +00006344// PPC64-LINUX:#define __BIG_ENDIAN__ 1
Dylan Noblesmith673728f2012-07-27 18:34:31 +00006345// PPC64-LINUX:#define __BYTE_ORDER__ __ORDER_BIG_ENDIAN__
Nico Weber3435ede2012-01-31 02:07:33 +00006346// PPC64-LINUX:#define __CHAR16_TYPE__ unsigned short
6347// PPC64-LINUX:#define __CHAR32_TYPE__ unsigned int
6348// PPC64-LINUX:#define __CHAR_BIT__ 8
6349// PPC64-LINUX:#define __CHAR_UNSIGNED__ 1
6350// PPC64-LINUX:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
6351// PPC64-LINUX:#define __DBL_DIG__ 15
6352// PPC64-LINUX:#define __DBL_EPSILON__ 2.2204460492503131e-16
6353// PPC64-LINUX:#define __DBL_HAS_DENORM__ 1
6354// PPC64-LINUX:#define __DBL_HAS_INFINITY__ 1
6355// PPC64-LINUX:#define __DBL_HAS_QUIET_NAN__ 1
6356// PPC64-LINUX:#define __DBL_MANT_DIG__ 53
6357// PPC64-LINUX:#define __DBL_MAX_10_EXP__ 308
6358// PPC64-LINUX:#define __DBL_MAX_EXP__ 1024
6359// PPC64-LINUX:#define __DBL_MAX__ 1.7976931348623157e+308
6360// PPC64-LINUX:#define __DBL_MIN_10_EXP__ (-307)
6361// PPC64-LINUX:#define __DBL_MIN_EXP__ (-1021)
6362// PPC64-LINUX:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00006363// PPC64-LINUX:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Nico Weber3435ede2012-01-31 02:07:33 +00006364// PPC64-LINUX:#define __FLT_DENORM_MIN__ 1.40129846e-45F
6365// PPC64-LINUX:#define __FLT_DIG__ 6
6366// PPC64-LINUX:#define __FLT_EPSILON__ 1.19209290e-7F
6367// PPC64-LINUX:#define __FLT_EVAL_METHOD__ 0
6368// PPC64-LINUX:#define __FLT_HAS_DENORM__ 1
6369// PPC64-LINUX:#define __FLT_HAS_INFINITY__ 1
6370// PPC64-LINUX:#define __FLT_HAS_QUIET_NAN__ 1
6371// PPC64-LINUX:#define __FLT_MANT_DIG__ 24
6372// PPC64-LINUX:#define __FLT_MAX_10_EXP__ 38
6373// PPC64-LINUX:#define __FLT_MAX_EXP__ 128
6374// PPC64-LINUX:#define __FLT_MAX__ 3.40282347e+38F
6375// PPC64-LINUX:#define __FLT_MIN_10_EXP__ (-37)
6376// PPC64-LINUX:#define __FLT_MIN_EXP__ (-125)
6377// PPC64-LINUX:#define __FLT_MIN__ 1.17549435e-38F
6378// PPC64-LINUX:#define __FLT_RADIX__ 2
Eric Christopher0d361162017-03-25 05:40:13 +00006379// PPC64-LINUX:#define __HAVE_BSWAP__ 1
James Y Knightc97efa42016-02-11 16:51:29 +00006380// PPC64-LINUX:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006381// PPC64-LINUX:#define __INT16_FMTd__ "hd"
6382// PPC64-LINUX:#define __INT16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00006383// PPC64-LINUX:#define __INT16_MAX__ 32767
Nico Weber3435ede2012-01-31 02:07:33 +00006384// PPC64-LINUX:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +00006385// PPC64-LINUX:#define __INT32_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006386// PPC64-LINUX:#define __INT32_FMTd__ "d"
6387// PPC64-LINUX:#define __INT32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00006388// PPC64-LINUX:#define __INT32_MAX__ 2147483647
Nico Weber3435ede2012-01-31 02:07:33 +00006389// PPC64-LINUX:#define __INT32_TYPE__ int
6390// PPC64-LINUX:#define __INT64_C_SUFFIX__ L
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006391// PPC64-LINUX:#define __INT64_FMTd__ "ld"
6392// PPC64-LINUX:#define __INT64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00006393// PPC64-LINUX:#define __INT64_MAX__ 9223372036854775807L
Nico Weber3435ede2012-01-31 02:07:33 +00006394// PPC64-LINUX:#define __INT64_TYPE__ long int
James Y Knightc97efa42016-02-11 16:51:29 +00006395// PPC64-LINUX:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006396// PPC64-LINUX:#define __INT8_FMTd__ "hhd"
6397// PPC64-LINUX:#define __INT8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00006398// PPC64-LINUX:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00006399// PPC64-LINUX:#define __INT8_TYPE__ signed char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00006400// PPC64-LINUX:#define __INTMAX_C_SUFFIX__ L
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006401// PPC64-LINUX:#define __INTMAX_FMTd__ "ld"
6402// PPC64-LINUX:#define __INTMAX_FMTi__ "li"
Nico Weber3435ede2012-01-31 02:07:33 +00006403// PPC64-LINUX:#define __INTMAX_MAX__ 9223372036854775807L
6404// PPC64-LINUX:#define __INTMAX_TYPE__ long int
6405// PPC64-LINUX:#define __INTMAX_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006406// PPC64-LINUX:#define __INTPTR_FMTd__ "ld"
6407// PPC64-LINUX:#define __INTPTR_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00006408// PPC64-LINUX:#define __INTPTR_MAX__ 9223372036854775807L
Nico Weber3435ede2012-01-31 02:07:33 +00006409// PPC64-LINUX:#define __INTPTR_TYPE__ long int
6410// PPC64-LINUX:#define __INTPTR_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006411// PPC64-LINUX:#define __INT_FAST16_FMTd__ "hd"
6412// PPC64-LINUX:#define __INT_FAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00006413// PPC64-LINUX:#define __INT_FAST16_MAX__ 32767
6414// PPC64-LINUX:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006415// PPC64-LINUX:#define __INT_FAST32_FMTd__ "d"
6416// PPC64-LINUX:#define __INT_FAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00006417// PPC64-LINUX:#define __INT_FAST32_MAX__ 2147483647
6418// PPC64-LINUX:#define __INT_FAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006419// PPC64-LINUX:#define __INT_FAST64_FMTd__ "ld"
6420// PPC64-LINUX:#define __INT_FAST64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00006421// PPC64-LINUX:#define __INT_FAST64_MAX__ 9223372036854775807L
6422// PPC64-LINUX:#define __INT_FAST64_TYPE__ long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006423// PPC64-LINUX:#define __INT_FAST8_FMTd__ "hhd"
6424// PPC64-LINUX:#define __INT_FAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00006425// PPC64-LINUX:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00006426// PPC64-LINUX:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006427// PPC64-LINUX:#define __INT_LEAST16_FMTd__ "hd"
6428// PPC64-LINUX:#define __INT_LEAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00006429// PPC64-LINUX:#define __INT_LEAST16_MAX__ 32767
6430// PPC64-LINUX:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006431// PPC64-LINUX:#define __INT_LEAST32_FMTd__ "d"
6432// PPC64-LINUX:#define __INT_LEAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00006433// PPC64-LINUX:#define __INT_LEAST32_MAX__ 2147483647
6434// PPC64-LINUX:#define __INT_LEAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006435// PPC64-LINUX:#define __INT_LEAST64_FMTd__ "ld"
6436// PPC64-LINUX:#define __INT_LEAST64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00006437// PPC64-LINUX:#define __INT_LEAST64_MAX__ 9223372036854775807L
6438// PPC64-LINUX:#define __INT_LEAST64_TYPE__ long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006439// PPC64-LINUX:#define __INT_LEAST8_FMTd__ "hhd"
6440// PPC64-LINUX:#define __INT_LEAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00006441// PPC64-LINUX:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00006442// PPC64-LINUX:#define __INT_LEAST8_TYPE__ signed char
Nico Weber3435ede2012-01-31 02:07:33 +00006443// PPC64-LINUX:#define __INT_MAX__ 2147483647
6444// PPC64-LINUX:#define __LDBL_DENORM_MIN__ 4.94065645841246544176568792868221e-324L
6445// PPC64-LINUX:#define __LDBL_DIG__ 31
6446// PPC64-LINUX:#define __LDBL_EPSILON__ 4.94065645841246544176568792868221e-324L
6447// PPC64-LINUX:#define __LDBL_HAS_DENORM__ 1
6448// PPC64-LINUX:#define __LDBL_HAS_INFINITY__ 1
6449// PPC64-LINUX:#define __LDBL_HAS_QUIET_NAN__ 1
6450// PPC64-LINUX:#define __LDBL_MANT_DIG__ 106
6451// PPC64-LINUX:#define __LDBL_MAX_10_EXP__ 308
6452// PPC64-LINUX:#define __LDBL_MAX_EXP__ 1024
6453// PPC64-LINUX:#define __LDBL_MAX__ 1.79769313486231580793728971405301e+308L
6454// PPC64-LINUX:#define __LDBL_MIN_10_EXP__ (-291)
6455// PPC64-LINUX:#define __LDBL_MIN_EXP__ (-968)
6456// PPC64-LINUX:#define __LDBL_MIN__ 2.00416836000897277799610805135016e-292L
Eric Christopheree214102017-03-25 06:37:23 +00006457// PPC64-LINUX:#define __LONGDOUBLE128 1
Nico Weber3435ede2012-01-31 02:07:33 +00006458// PPC64-LINUX:#define __LONG_DOUBLE_128__ 1
6459// PPC64-LINUX:#define __LONG_LONG_MAX__ 9223372036854775807LL
6460// PPC64-LINUX:#define __LONG_MAX__ 9223372036854775807L
6461// PPC64-LINUX:#define __LP64__ 1
6462// PPC64-LINUX:#define __NATURAL_ALIGNMENT__ 1
Nico Weber3435ede2012-01-31 02:07:33 +00006463// PPC64-LINUX:#define __POINTER_WIDTH__ 64
6464// PPC64-LINUX:#define __POWERPC__ 1
Chandler Carruth6aa92ad2013-06-25 11:13:47 +00006465// PPC64-LINUX:#define __PPC64__ 1
6466// PPC64-LINUX:#define __PPC__ 1
Nico Weber3435ede2012-01-31 02:07:33 +00006467// PPC64-LINUX:#define __PTRDIFF_TYPE__ long int
6468// PPC64-LINUX:#define __PTRDIFF_WIDTH__ 64
6469// PPC64-LINUX:#define __REGISTER_PREFIX__
6470// PPC64-LINUX:#define __SCHAR_MAX__ 127
6471// PPC64-LINUX:#define __SHRT_MAX__ 32767
Joerg Sonnenbergerb3a49692014-07-17 18:31:20 +00006472// PPC64-LINUX:#define __SIG_ATOMIC_MAX__ 2147483647
Nico Weber3435ede2012-01-31 02:07:33 +00006473// PPC64-LINUX:#define __SIG_ATOMIC_WIDTH__ 32
6474// PPC64-LINUX:#define __SIZEOF_DOUBLE__ 8
6475// PPC64-LINUX:#define __SIZEOF_FLOAT__ 4
6476// PPC64-LINUX:#define __SIZEOF_INT__ 4
6477// PPC64-LINUX:#define __SIZEOF_LONG_DOUBLE__ 16
6478// PPC64-LINUX:#define __SIZEOF_LONG_LONG__ 8
6479// PPC64-LINUX:#define __SIZEOF_LONG__ 8
6480// PPC64-LINUX:#define __SIZEOF_POINTER__ 8
6481// PPC64-LINUX:#define __SIZEOF_PTRDIFF_T__ 8
6482// PPC64-LINUX:#define __SIZEOF_SHORT__ 2
6483// PPC64-LINUX:#define __SIZEOF_SIZE_T__ 8
6484// PPC64-LINUX:#define __SIZEOF_WCHAR_T__ 4
6485// PPC64-LINUX:#define __SIZEOF_WINT_T__ 4
Evgeniy Stepanovc3c725a2013-03-28 08:36:54 +00006486// PPC64-LINUX:#define __SIZE_MAX__ 18446744073709551615UL
Nico Weber3435ede2012-01-31 02:07:33 +00006487// PPC64-LINUX:#define __SIZE_TYPE__ long unsigned int
6488// PPC64-LINUX:#define __SIZE_WIDTH__ 64
James Y Knightc97efa42016-02-11 16:51:29 +00006489// PPC64-LINUX:#define __UINT16_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00006490// PPC64-LINUX:#define __UINT16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00006491// PPC64-LINUX:#define __UINT16_TYPE__ unsigned short
6492// PPC64-LINUX:#define __UINT32_C_SUFFIX__ U
6493// PPC64-LINUX:#define __UINT32_MAX__ 4294967295U
6494// PPC64-LINUX:#define __UINT32_TYPE__ unsigned int
6495// PPC64-LINUX:#define __UINT64_C_SUFFIX__ UL
6496// PPC64-LINUX:#define __UINT64_MAX__ 18446744073709551615UL
6497// PPC64-LINUX:#define __UINT64_TYPE__ long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00006498// PPC64-LINUX:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00006499// PPC64-LINUX:#define __UINT8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00006500// PPC64-LINUX:#define __UINT8_TYPE__ unsigned char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00006501// PPC64-LINUX:#define __UINTMAX_C_SUFFIX__ UL
JF Bastienab8d0a02014-06-25 01:31:33 +00006502// PPC64-LINUX:#define __UINTMAX_MAX__ 18446744073709551615UL
Nico Weber3435ede2012-01-31 02:07:33 +00006503// PPC64-LINUX:#define __UINTMAX_TYPE__ long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00006504// PPC64-LINUX:#define __UINTMAX_WIDTH__ 64
6505// PPC64-LINUX:#define __UINTPTR_MAX__ 18446744073709551615UL
6506// PPC64-LINUX:#define __UINTPTR_TYPE__ long unsigned int
6507// PPC64-LINUX:#define __UINTPTR_WIDTH__ 64
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00006508// PPC64-LINUX:#define __UINT_FAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00006509// PPC64-LINUX:#define __UINT_FAST16_TYPE__ unsigned short
6510// PPC64-LINUX:#define __UINT_FAST32_MAX__ 4294967295U
6511// PPC64-LINUX:#define __UINT_FAST32_TYPE__ unsigned int
6512// PPC64-LINUX:#define __UINT_FAST64_MAX__ 18446744073709551615UL
6513// PPC64-LINUX:#define __UINT_FAST64_TYPE__ long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00006514// PPC64-LINUX:#define __UINT_FAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00006515// PPC64-LINUX:#define __UINT_FAST8_TYPE__ unsigned char
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00006516// PPC64-LINUX:#define __UINT_LEAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00006517// PPC64-LINUX:#define __UINT_LEAST16_TYPE__ unsigned short
6518// PPC64-LINUX:#define __UINT_LEAST32_MAX__ 4294967295U
6519// PPC64-LINUX:#define __UINT_LEAST32_TYPE__ unsigned int
6520// PPC64-LINUX:#define __UINT_LEAST64_MAX__ 18446744073709551615UL
6521// PPC64-LINUX:#define __UINT_LEAST64_TYPE__ long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00006522// PPC64-LINUX:#define __UINT_LEAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00006523// PPC64-LINUX:#define __UINT_LEAST8_TYPE__ unsigned char
Nico Weber3435ede2012-01-31 02:07:33 +00006524// PPC64-LINUX:#define __USER_LABEL_PREFIX__
6525// PPC64-LINUX:#define __WCHAR_MAX__ 2147483647
6526// PPC64-LINUX:#define __WCHAR_TYPE__ int
6527// PPC64-LINUX:#define __WCHAR_WIDTH__ 32
6528// PPC64-LINUX:#define __WINT_TYPE__ unsigned int
6529// PPC64-LINUX:#define __WINT_UNSIGNED__ 1
6530// PPC64-LINUX:#define __WINT_WIDTH__ 32
6531// PPC64-LINUX:#define __powerpc64__ 1
6532// PPC64-LINUX:#define __powerpc__ 1
6533// PPC64-LINUX:#define __ppc64__ 1
6534// PPC64-LINUX:#define __ppc__ 1
Ulrich Weigand8afad612014-07-28 13:17:52 +00006535
James Y Knightc97efa42016-02-11 16:51:29 +00006536// RUN: %clang_cc1 -E -dM -ffreestanding -triple=powerpc64-unknown-linux-gnu < /dev/null | FileCheck -match-full-lines -check-prefix PPC64-ELFv1 %s
6537// 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
6538// 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
6539// 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
6540// RUN: %clang_cc1 -E -dM -ffreestanding -triple=powerpc64le-unknown-linux-gnu < /dev/null | FileCheck -match-full-lines -check-prefix PPC64-ELFv2 %s
6541// 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
6542// 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 +00006543// PPC64-ELFv1:#define _CALL_ELF 1
6544// PPC64-ELFv2:#define _CALL_ELF 2
Nico Weber3435ede2012-01-31 02:07:33 +00006545//
Eric Christopher2fd2eda2017-03-25 03:33:59 +00006546// Most of this is encompassed in other places.
6547// RUN: %clang_cc1 -E -dM -ffreestanding -triple=powerpc64le-unknown-linux-gnu -target-abi elfv2 < /dev/null | FileCheck -match-full-lines -check-prefix PPC64LE-LINUX %s
6548//
6549// PPC64LE-LINUX:#define _CALL_LINUX 1
6550//
James Y Knightc97efa42016-02-11 16:51:29 +00006551// 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 +00006552//
6553// PPC:#define _ARCH_PPC 1
6554// PPC:#define _BIG_ENDIAN 1
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00006555// PPC-NOT:#define _LP64
Eric Christopher153dad42017-03-25 02:55:21 +00006556// PPC:#define __BIGGEST_ALIGNMENT__ 16
Chris Lattnere963d092009-10-29 04:55:36 +00006557// PPC:#define __BIG_ENDIAN__ 1
Dylan Noblesmith673728f2012-07-27 18:34:31 +00006558// PPC:#define __BYTE_ORDER__ __ORDER_BIG_ENDIAN__
Dan Gohman04f87202010-05-28 00:27:15 +00006559// PPC:#define __CHAR16_TYPE__ unsigned short
6560// PPC:#define __CHAR32_TYPE__ unsigned int
Chris Lattnere963d092009-10-29 04:55:36 +00006561// PPC:#define __CHAR_BIT__ 8
6562// PPC:#define __CHAR_UNSIGNED__ 1
6563// PPC:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
6564// PPC:#define __DBL_DIG__ 15
6565// PPC:#define __DBL_EPSILON__ 2.2204460492503131e-16
6566// PPC:#define __DBL_HAS_DENORM__ 1
6567// PPC:#define __DBL_HAS_INFINITY__ 1
6568// PPC:#define __DBL_HAS_QUIET_NAN__ 1
6569// PPC:#define __DBL_MANT_DIG__ 53
6570// PPC:#define __DBL_MAX_10_EXP__ 308
6571// PPC:#define __DBL_MAX_EXP__ 1024
6572// PPC:#define __DBL_MAX__ 1.7976931348623157e+308
6573// PPC:#define __DBL_MIN_10_EXP__ (-307)
6574// PPC:#define __DBL_MIN_EXP__ (-1021)
6575// PPC:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00006576// PPC:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Chris Lattnere963d092009-10-29 04:55:36 +00006577// PPC:#define __FLT_DENORM_MIN__ 1.40129846e-45F
6578// PPC:#define __FLT_DIG__ 6
6579// PPC:#define __FLT_EPSILON__ 1.19209290e-7F
6580// PPC:#define __FLT_EVAL_METHOD__ 0
6581// PPC:#define __FLT_HAS_DENORM__ 1
6582// PPC:#define __FLT_HAS_INFINITY__ 1
6583// PPC:#define __FLT_HAS_QUIET_NAN__ 1
6584// PPC:#define __FLT_MANT_DIG__ 24
6585// PPC:#define __FLT_MAX_10_EXP__ 38
6586// PPC:#define __FLT_MAX_EXP__ 128
6587// PPC:#define __FLT_MAX__ 3.40282347e+38F
6588// PPC:#define __FLT_MIN_10_EXP__ (-37)
6589// PPC:#define __FLT_MIN_EXP__ (-125)
6590// PPC:#define __FLT_MIN__ 1.17549435e-38F
6591// PPC:#define __FLT_RADIX__ 2
Eric Christopher0d361162017-03-25 05:40:13 +00006592// PPC:#define __HAVE_BSWAP__ 1
James Y Knightc97efa42016-02-11 16:51:29 +00006593// PPC:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006594// PPC:#define __INT16_FMTd__ "hd"
6595// PPC:#define __INT16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00006596// PPC:#define __INT16_MAX__ 32767
Chris Lattnere963d092009-10-29 04:55:36 +00006597// PPC:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +00006598// PPC:#define __INT32_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006599// PPC:#define __INT32_FMTd__ "d"
6600// PPC:#define __INT32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00006601// PPC:#define __INT32_MAX__ 2147483647
Chris Lattnere963d092009-10-29 04:55:36 +00006602// PPC:#define __INT32_TYPE__ int
Ken Dyck2dc8d5f2009-11-16 16:36:33 +00006603// PPC:#define __INT64_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006604// PPC:#define __INT64_FMTd__ "lld"
6605// PPC:#define __INT64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00006606// PPC:#define __INT64_MAX__ 9223372036854775807LL
Chris Lattnere963d092009-10-29 04:55:36 +00006607// PPC:#define __INT64_TYPE__ long long int
James Y Knightc97efa42016-02-11 16:51:29 +00006608// PPC:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006609// PPC:#define __INT8_FMTd__ "hhd"
6610// PPC:#define __INT8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00006611// PPC:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00006612// PPC:#define __INT8_TYPE__ signed char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00006613// PPC:#define __INTMAX_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006614// PPC:#define __INTMAX_FMTd__ "lld"
6615// PPC:#define __INTMAX_FMTi__ "lli"
Chris Lattnere963d092009-10-29 04:55:36 +00006616// PPC:#define __INTMAX_MAX__ 9223372036854775807LL
Ken Dyck9b25f782009-11-19 13:18:59 +00006617// PPC:#define __INTMAX_TYPE__ long long int
Ken Dyckc0c98292009-11-18 13:52:57 +00006618// PPC:#define __INTMAX_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006619// PPC:#define __INTPTR_FMTd__ "ld"
6620// PPC:#define __INTPTR_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00006621// PPC:#define __INTPTR_MAX__ 2147483647L
Ken Dyck9b25f782009-11-19 13:18:59 +00006622// PPC:#define __INTPTR_TYPE__ long int
Ken Dyck24cfcf12009-11-18 20:05:48 +00006623// PPC:#define __INTPTR_WIDTH__ 32
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006624// PPC:#define __INT_FAST16_FMTd__ "hd"
6625// PPC:#define __INT_FAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00006626// PPC:#define __INT_FAST16_MAX__ 32767
6627// PPC:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006628// PPC:#define __INT_FAST32_FMTd__ "d"
6629// PPC:#define __INT_FAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00006630// PPC:#define __INT_FAST32_MAX__ 2147483647
6631// PPC:#define __INT_FAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006632// PPC:#define __INT_FAST64_FMTd__ "lld"
6633// PPC:#define __INT_FAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00006634// PPC:#define __INT_FAST64_MAX__ 9223372036854775807LL
6635// PPC:#define __INT_FAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006636// PPC:#define __INT_FAST8_FMTd__ "hhd"
6637// PPC:#define __INT_FAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00006638// PPC:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00006639// PPC:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006640// PPC:#define __INT_LEAST16_FMTd__ "hd"
6641// PPC:#define __INT_LEAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00006642// PPC:#define __INT_LEAST16_MAX__ 32767
6643// PPC:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006644// PPC:#define __INT_LEAST32_FMTd__ "d"
6645// PPC:#define __INT_LEAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00006646// PPC:#define __INT_LEAST32_MAX__ 2147483647
6647// PPC:#define __INT_LEAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006648// PPC:#define __INT_LEAST64_FMTd__ "lld"
6649// PPC:#define __INT_LEAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00006650// PPC:#define __INT_LEAST64_MAX__ 9223372036854775807LL
6651// PPC:#define __INT_LEAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006652// PPC:#define __INT_LEAST8_FMTd__ "hhd"
6653// PPC:#define __INT_LEAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00006654// PPC:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00006655// PPC:#define __INT_LEAST8_TYPE__ signed char
Chris Lattnere963d092009-10-29 04:55:36 +00006656// PPC:#define __INT_MAX__ 2147483647
Nico Weber3435ede2012-01-31 02:07:33 +00006657// PPC:#define __LDBL_DENORM_MIN__ 4.94065645841246544176568792868221e-324L
6658// PPC:#define __LDBL_DIG__ 31
6659// PPC:#define __LDBL_EPSILON__ 4.94065645841246544176568792868221e-324L
Chris Lattnere963d092009-10-29 04:55:36 +00006660// PPC:#define __LDBL_HAS_DENORM__ 1
6661// PPC:#define __LDBL_HAS_INFINITY__ 1
6662// PPC:#define __LDBL_HAS_QUIET_NAN__ 1
Nico Weber3435ede2012-01-31 02:07:33 +00006663// PPC:#define __LDBL_MANT_DIG__ 106
Chris Lattnere963d092009-10-29 04:55:36 +00006664// PPC:#define __LDBL_MAX_10_EXP__ 308
6665// PPC:#define __LDBL_MAX_EXP__ 1024
Nico Weber3435ede2012-01-31 02:07:33 +00006666// PPC:#define __LDBL_MAX__ 1.79769313486231580793728971405301e+308L
6667// PPC:#define __LDBL_MIN_10_EXP__ (-291)
6668// PPC:#define __LDBL_MIN_EXP__ (-968)
6669// PPC:#define __LDBL_MIN__ 2.00416836000897277799610805135016e-292L
Eric Christopheree214102017-03-25 06:37:23 +00006670// PPC:#define __LONGDOUBLE128 1
Chris Lattnere963d092009-10-29 04:55:36 +00006671// PPC:#define __LONG_DOUBLE_128__ 1
6672// PPC:#define __LONG_LONG_MAX__ 9223372036854775807LL
6673// PPC:#define __LONG_MAX__ 2147483647L
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00006674// PPC-NOT:#define __LP64__
Chris Lattnere963d092009-10-29 04:55:36 +00006675// PPC:#define __NATURAL_ALIGNMENT__ 1
Chris Lattnere963d092009-10-29 04:55:36 +00006676// PPC:#define __POINTER_WIDTH__ 32
6677// PPC:#define __POWERPC__ 1
Chandler Carruth6aa92ad2013-06-25 11:13:47 +00006678// PPC:#define __PPC__ 1
Ken Dyck9b25f782009-11-19 13:18:59 +00006679// PPC:#define __PTRDIFF_TYPE__ long int
Ken Dyck056efe02009-11-19 12:21:52 +00006680// PPC:#define __PTRDIFF_WIDTH__ 32
James Y Knightc97efa42016-02-11 16:51:29 +00006681// PPC:#define __REGISTER_PREFIX__
Chris Lattnere963d092009-10-29 04:55:36 +00006682// PPC:#define __SCHAR_MAX__ 127
6683// PPC:#define __SHRT_MAX__ 32767
Joerg Sonnenbergerb3a49692014-07-17 18:31:20 +00006684// PPC:#define __SIG_ATOMIC_MAX__ 2147483647
Ken Dyckadc85112009-11-22 15:41:04 +00006685// PPC:#define __SIG_ATOMIC_WIDTH__ 32
Dan Gohman04f87202010-05-28 00:27:15 +00006686// PPC:#define __SIZEOF_DOUBLE__ 8
6687// PPC:#define __SIZEOF_FLOAT__ 4
6688// PPC:#define __SIZEOF_INT__ 4
Nico Weber3435ede2012-01-31 02:07:33 +00006689// PPC:#define __SIZEOF_LONG_DOUBLE__ 16
Dan Gohman04f87202010-05-28 00:27:15 +00006690// PPC:#define __SIZEOF_LONG_LONG__ 8
6691// PPC:#define __SIZEOF_LONG__ 4
6692// PPC:#define __SIZEOF_POINTER__ 4
6693// PPC:#define __SIZEOF_PTRDIFF_T__ 4
6694// PPC:#define __SIZEOF_SHORT__ 2
6695// PPC:#define __SIZEOF_SIZE_T__ 4
6696// PPC:#define __SIZEOF_WCHAR_T__ 4
6697// PPC:#define __SIZEOF_WINT_T__ 4
James Y Knightc97efa42016-02-11 16:51:29 +00006698// PPC:#define __SIZE_MAX__ 4294967295UL
Chris Lattnere963d092009-10-29 04:55:36 +00006699// PPC:#define __SIZE_TYPE__ long unsigned int
Ken Dyck57512862009-11-19 13:42:09 +00006700// PPC:#define __SIZE_WIDTH__ 32
James Y Knightc97efa42016-02-11 16:51:29 +00006701// PPC:#define __UINT16_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00006702// PPC:#define __UINT16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00006703// PPC:#define __UINT16_TYPE__ unsigned short
6704// PPC:#define __UINT32_C_SUFFIX__ U
6705// PPC:#define __UINT32_MAX__ 4294967295U
6706// PPC:#define __UINT32_TYPE__ unsigned int
6707// PPC:#define __UINT64_C_SUFFIX__ ULL
6708// PPC:#define __UINT64_MAX__ 18446744073709551615ULL
6709// PPC:#define __UINT64_TYPE__ long long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00006710// PPC:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00006711// PPC:#define __UINT8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00006712// PPC:#define __UINT8_TYPE__ unsigned char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00006713// PPC:#define __UINTMAX_C_SUFFIX__ ULL
JF Bastienab8d0a02014-06-25 01:31:33 +00006714// PPC:#define __UINTMAX_MAX__ 18446744073709551615ULL
Ken Dyck9b25f782009-11-19 13:18:59 +00006715// PPC:#define __UINTMAX_TYPE__ long long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00006716// PPC:#define __UINTMAX_WIDTH__ 64
James Y Knightc97efa42016-02-11 16:51:29 +00006717// PPC:#define __UINTPTR_MAX__ 4294967295UL
Joerg Sonnenberger3809a7a2014-07-14 20:40:56 +00006718// PPC:#define __UINTPTR_TYPE__ long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00006719// PPC:#define __UINTPTR_WIDTH__ 32
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00006720// PPC:#define __UINT_FAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00006721// PPC:#define __UINT_FAST16_TYPE__ unsigned short
6722// PPC:#define __UINT_FAST32_MAX__ 4294967295U
6723// PPC:#define __UINT_FAST32_TYPE__ unsigned int
6724// PPC:#define __UINT_FAST64_MAX__ 18446744073709551615ULL
6725// PPC:#define __UINT_FAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00006726// PPC:#define __UINT_FAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00006727// PPC:#define __UINT_FAST8_TYPE__ unsigned char
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00006728// PPC:#define __UINT_LEAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00006729// PPC:#define __UINT_LEAST16_TYPE__ unsigned short
6730// PPC:#define __UINT_LEAST32_MAX__ 4294967295U
6731// PPC:#define __UINT_LEAST32_TYPE__ unsigned int
6732// PPC:#define __UINT_LEAST64_MAX__ 18446744073709551615ULL
6733// PPC:#define __UINT_LEAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00006734// PPC:#define __UINT_LEAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00006735// PPC:#define __UINT_LEAST8_TYPE__ unsigned char
James Y Knightb214cbc2016-03-04 19:00:41 +00006736// PPC:#define __USER_LABEL_PREFIX__
Chris Lattnere963d092009-10-29 04:55:36 +00006737// PPC:#define __WCHAR_MAX__ 2147483647
6738// PPC:#define __WCHAR_TYPE__ int
Ken Dyck0138b9e2009-11-19 15:47:58 +00006739// PPC:#define __WCHAR_WIDTH__ 32
Chris Lattnere963d092009-10-29 04:55:36 +00006740// PPC:#define __WINT_TYPE__ int
Ken Dycka1f677c2009-11-19 14:16:57 +00006741// PPC:#define __WINT_WIDTH__ 32
Chris Lattnere963d092009-10-29 04:55:36 +00006742// PPC:#define __ppc__ 1
6743//
James Y Knightc97efa42016-02-11 16:51:29 +00006744// 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 +00006745//
6746// PPC-LINUX:#define _ARCH_PPC 1
6747// PPC-LINUX:#define _BIG_ENDIAN 1
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00006748// PPC-LINUX-NOT:#define _LP64
Eric Christopher153dad42017-03-25 02:55:21 +00006749// PPC-LINUX:#define __BIGGEST_ALIGNMENT__ 16
Nico Weber3435ede2012-01-31 02:07:33 +00006750// PPC-LINUX:#define __BIG_ENDIAN__ 1
Dylan Noblesmith673728f2012-07-27 18:34:31 +00006751// PPC-LINUX:#define __BYTE_ORDER__ __ORDER_BIG_ENDIAN__
Nico Weber3435ede2012-01-31 02:07:33 +00006752// PPC-LINUX:#define __CHAR16_TYPE__ unsigned short
6753// PPC-LINUX:#define __CHAR32_TYPE__ unsigned int
6754// PPC-LINUX:#define __CHAR_BIT__ 8
6755// PPC-LINUX:#define __CHAR_UNSIGNED__ 1
6756// PPC-LINUX:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
6757// PPC-LINUX:#define __DBL_DIG__ 15
6758// PPC-LINUX:#define __DBL_EPSILON__ 2.2204460492503131e-16
6759// PPC-LINUX:#define __DBL_HAS_DENORM__ 1
6760// PPC-LINUX:#define __DBL_HAS_INFINITY__ 1
6761// PPC-LINUX:#define __DBL_HAS_QUIET_NAN__ 1
6762// PPC-LINUX:#define __DBL_MANT_DIG__ 53
6763// PPC-LINUX:#define __DBL_MAX_10_EXP__ 308
6764// PPC-LINUX:#define __DBL_MAX_EXP__ 1024
6765// PPC-LINUX:#define __DBL_MAX__ 1.7976931348623157e+308
6766// PPC-LINUX:#define __DBL_MIN_10_EXP__ (-307)
6767// PPC-LINUX:#define __DBL_MIN_EXP__ (-1021)
6768// PPC-LINUX:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00006769// PPC-LINUX:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Nico Weber3435ede2012-01-31 02:07:33 +00006770// PPC-LINUX:#define __FLT_DENORM_MIN__ 1.40129846e-45F
6771// PPC-LINUX:#define __FLT_DIG__ 6
6772// PPC-LINUX:#define __FLT_EPSILON__ 1.19209290e-7F
6773// PPC-LINUX:#define __FLT_EVAL_METHOD__ 0
6774// PPC-LINUX:#define __FLT_HAS_DENORM__ 1
6775// PPC-LINUX:#define __FLT_HAS_INFINITY__ 1
6776// PPC-LINUX:#define __FLT_HAS_QUIET_NAN__ 1
6777// PPC-LINUX:#define __FLT_MANT_DIG__ 24
6778// PPC-LINUX:#define __FLT_MAX_10_EXP__ 38
6779// PPC-LINUX:#define __FLT_MAX_EXP__ 128
6780// PPC-LINUX:#define __FLT_MAX__ 3.40282347e+38F
6781// PPC-LINUX:#define __FLT_MIN_10_EXP__ (-37)
6782// PPC-LINUX:#define __FLT_MIN_EXP__ (-125)
6783// PPC-LINUX:#define __FLT_MIN__ 1.17549435e-38F
6784// PPC-LINUX:#define __FLT_RADIX__ 2
Eric Christopher0d361162017-03-25 05:40:13 +00006785// PPC-LINUX:#define __HAVE_BSWAP__ 1
James Y Knightc97efa42016-02-11 16:51:29 +00006786// PPC-LINUX:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006787// PPC-LINUX:#define __INT16_FMTd__ "hd"
6788// PPC-LINUX:#define __INT16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00006789// PPC-LINUX:#define __INT16_MAX__ 32767
Nico Weber3435ede2012-01-31 02:07:33 +00006790// PPC-LINUX:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +00006791// PPC-LINUX:#define __INT32_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006792// PPC-LINUX:#define __INT32_FMTd__ "d"
6793// PPC-LINUX:#define __INT32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00006794// PPC-LINUX:#define __INT32_MAX__ 2147483647
Nico Weber3435ede2012-01-31 02:07:33 +00006795// PPC-LINUX:#define __INT32_TYPE__ int
6796// PPC-LINUX:#define __INT64_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006797// PPC-LINUX:#define __INT64_FMTd__ "lld"
6798// PPC-LINUX:#define __INT64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00006799// PPC-LINUX:#define __INT64_MAX__ 9223372036854775807LL
Nico Weber3435ede2012-01-31 02:07:33 +00006800// PPC-LINUX:#define __INT64_TYPE__ long long int
James Y Knightc97efa42016-02-11 16:51:29 +00006801// PPC-LINUX:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006802// PPC-LINUX:#define __INT8_FMTd__ "hhd"
6803// PPC-LINUX:#define __INT8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00006804// PPC-LINUX:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00006805// PPC-LINUX:#define __INT8_TYPE__ signed char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00006806// PPC-LINUX:#define __INTMAX_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006807// PPC-LINUX:#define __INTMAX_FMTd__ "lld"
6808// PPC-LINUX:#define __INTMAX_FMTi__ "lli"
Nico Weber3435ede2012-01-31 02:07:33 +00006809// PPC-LINUX:#define __INTMAX_MAX__ 9223372036854775807LL
6810// PPC-LINUX:#define __INTMAX_TYPE__ long long int
6811// PPC-LINUX:#define __INTMAX_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006812// PPC-LINUX:#define __INTPTR_FMTd__ "d"
6813// PPC-LINUX:#define __INTPTR_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00006814// PPC-LINUX:#define __INTPTR_MAX__ 2147483647
Hal Finkel26908382012-03-02 20:54:36 +00006815// PPC-LINUX:#define __INTPTR_TYPE__ int
Nico Weber3435ede2012-01-31 02:07:33 +00006816// PPC-LINUX:#define __INTPTR_WIDTH__ 32
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006817// PPC-LINUX:#define __INT_FAST16_FMTd__ "hd"
6818// PPC-LINUX:#define __INT_FAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00006819// PPC-LINUX:#define __INT_FAST16_MAX__ 32767
6820// PPC-LINUX:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006821// PPC-LINUX:#define __INT_FAST32_FMTd__ "d"
6822// PPC-LINUX:#define __INT_FAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00006823// PPC-LINUX:#define __INT_FAST32_MAX__ 2147483647
6824// PPC-LINUX:#define __INT_FAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006825// PPC-LINUX:#define __INT_FAST64_FMTd__ "lld"
6826// PPC-LINUX:#define __INT_FAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00006827// PPC-LINUX:#define __INT_FAST64_MAX__ 9223372036854775807LL
6828// PPC-LINUX:#define __INT_FAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006829// PPC-LINUX:#define __INT_FAST8_FMTd__ "hhd"
6830// PPC-LINUX:#define __INT_FAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00006831// PPC-LINUX:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00006832// PPC-LINUX:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006833// PPC-LINUX:#define __INT_LEAST16_FMTd__ "hd"
6834// PPC-LINUX:#define __INT_LEAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00006835// PPC-LINUX:#define __INT_LEAST16_MAX__ 32767
6836// PPC-LINUX:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006837// PPC-LINUX:#define __INT_LEAST32_FMTd__ "d"
6838// PPC-LINUX:#define __INT_LEAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00006839// PPC-LINUX:#define __INT_LEAST32_MAX__ 2147483647
6840// PPC-LINUX:#define __INT_LEAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006841// PPC-LINUX:#define __INT_LEAST64_FMTd__ "lld"
6842// PPC-LINUX:#define __INT_LEAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00006843// PPC-LINUX:#define __INT_LEAST64_MAX__ 9223372036854775807LL
6844// PPC-LINUX:#define __INT_LEAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006845// PPC-LINUX:#define __INT_LEAST8_FMTd__ "hhd"
6846// PPC-LINUX:#define __INT_LEAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00006847// PPC-LINUX:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00006848// PPC-LINUX:#define __INT_LEAST8_TYPE__ signed char
Nico Weber3435ede2012-01-31 02:07:33 +00006849// PPC-LINUX:#define __INT_MAX__ 2147483647
6850// PPC-LINUX:#define __LDBL_DENORM_MIN__ 4.94065645841246544176568792868221e-324L
6851// PPC-LINUX:#define __LDBL_DIG__ 31
6852// PPC-LINUX:#define __LDBL_EPSILON__ 4.94065645841246544176568792868221e-324L
6853// PPC-LINUX:#define __LDBL_HAS_DENORM__ 1
6854// PPC-LINUX:#define __LDBL_HAS_INFINITY__ 1
6855// PPC-LINUX:#define __LDBL_HAS_QUIET_NAN__ 1
6856// PPC-LINUX:#define __LDBL_MANT_DIG__ 106
6857// PPC-LINUX:#define __LDBL_MAX_10_EXP__ 308
6858// PPC-LINUX:#define __LDBL_MAX_EXP__ 1024
6859// PPC-LINUX:#define __LDBL_MAX__ 1.79769313486231580793728971405301e+308L
6860// PPC-LINUX:#define __LDBL_MIN_10_EXP__ (-291)
6861// PPC-LINUX:#define __LDBL_MIN_EXP__ (-968)
6862// PPC-LINUX:#define __LDBL_MIN__ 2.00416836000897277799610805135016e-292L
Eric Christopheree214102017-03-25 06:37:23 +00006863// PPC-LINUX:#define __LONGDOUBLE128 1
Nico Weber3435ede2012-01-31 02:07:33 +00006864// PPC-LINUX:#define __LONG_DOUBLE_128__ 1
6865// PPC-LINUX:#define __LONG_LONG_MAX__ 9223372036854775807LL
6866// PPC-LINUX:#define __LONG_MAX__ 2147483647L
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00006867// PPC-LINUX-NOT:#define __LP64__
Nico Weber3435ede2012-01-31 02:07:33 +00006868// PPC-LINUX:#define __NATURAL_ALIGNMENT__ 1
Nico Weber3435ede2012-01-31 02:07:33 +00006869// PPC-LINUX:#define __POINTER_WIDTH__ 32
6870// PPC-LINUX:#define __POWERPC__ 1
Chandler Carruth6aa92ad2013-06-25 11:13:47 +00006871// PPC-LINUX:#define __PPC__ 1
Hal Finkel26908382012-03-02 20:54:36 +00006872// PPC-LINUX:#define __PTRDIFF_TYPE__ int
Nico Weber3435ede2012-01-31 02:07:33 +00006873// PPC-LINUX:#define __PTRDIFF_WIDTH__ 32
6874// PPC-LINUX:#define __REGISTER_PREFIX__
6875// PPC-LINUX:#define __SCHAR_MAX__ 127
6876// PPC-LINUX:#define __SHRT_MAX__ 32767
Joerg Sonnenbergerb3a49692014-07-17 18:31:20 +00006877// PPC-LINUX:#define __SIG_ATOMIC_MAX__ 2147483647
Nico Weber3435ede2012-01-31 02:07:33 +00006878// PPC-LINUX:#define __SIG_ATOMIC_WIDTH__ 32
6879// PPC-LINUX:#define __SIZEOF_DOUBLE__ 8
6880// PPC-LINUX:#define __SIZEOF_FLOAT__ 4
6881// PPC-LINUX:#define __SIZEOF_INT__ 4
6882// PPC-LINUX:#define __SIZEOF_LONG_DOUBLE__ 16
6883// PPC-LINUX:#define __SIZEOF_LONG_LONG__ 8
6884// PPC-LINUX:#define __SIZEOF_LONG__ 4
6885// PPC-LINUX:#define __SIZEOF_POINTER__ 4
6886// PPC-LINUX:#define __SIZEOF_PTRDIFF_T__ 4
6887// PPC-LINUX:#define __SIZEOF_SHORT__ 2
6888// PPC-LINUX:#define __SIZEOF_SIZE_T__ 4
6889// PPC-LINUX:#define __SIZEOF_WCHAR_T__ 4
6890// PPC-LINUX:#define __SIZEOF_WINT_T__ 4
Evgeniy Stepanovc3c725a2013-03-28 08:36:54 +00006891// PPC-LINUX:#define __SIZE_MAX__ 4294967295U
Nico Weber3435ede2012-01-31 02:07:33 +00006892// PPC-LINUX:#define __SIZE_TYPE__ unsigned int
6893// PPC-LINUX:#define __SIZE_WIDTH__ 32
James Y Knightc97efa42016-02-11 16:51:29 +00006894// PPC-LINUX:#define __UINT16_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00006895// PPC-LINUX:#define __UINT16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00006896// PPC-LINUX:#define __UINT16_TYPE__ unsigned short
6897// PPC-LINUX:#define __UINT32_C_SUFFIX__ U
6898// PPC-LINUX:#define __UINT32_MAX__ 4294967295U
6899// PPC-LINUX:#define __UINT32_TYPE__ unsigned int
6900// PPC-LINUX:#define __UINT64_C_SUFFIX__ ULL
6901// PPC-LINUX:#define __UINT64_MAX__ 18446744073709551615ULL
6902// PPC-LINUX:#define __UINT64_TYPE__ long long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00006903// PPC-LINUX:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00006904// PPC-LINUX:#define __UINT8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00006905// PPC-LINUX:#define __UINT8_TYPE__ unsigned char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00006906// PPC-LINUX:#define __UINTMAX_C_SUFFIX__ ULL
JF Bastienab8d0a02014-06-25 01:31:33 +00006907// PPC-LINUX:#define __UINTMAX_MAX__ 18446744073709551615ULL
Nico Weber3435ede2012-01-31 02:07:33 +00006908// PPC-LINUX:#define __UINTMAX_TYPE__ long long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00006909// PPC-LINUX:#define __UINTMAX_WIDTH__ 64
6910// PPC-LINUX:#define __UINTPTR_MAX__ 4294967295U
6911// PPC-LINUX:#define __UINTPTR_TYPE__ unsigned int
6912// PPC-LINUX:#define __UINTPTR_WIDTH__ 32
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00006913// PPC-LINUX:#define __UINT_FAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00006914// PPC-LINUX:#define __UINT_FAST16_TYPE__ unsigned short
6915// PPC-LINUX:#define __UINT_FAST32_MAX__ 4294967295U
6916// PPC-LINUX:#define __UINT_FAST32_TYPE__ unsigned int
6917// PPC-LINUX:#define __UINT_FAST64_MAX__ 18446744073709551615ULL
6918// PPC-LINUX:#define __UINT_FAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00006919// PPC-LINUX:#define __UINT_FAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00006920// PPC-LINUX:#define __UINT_FAST8_TYPE__ unsigned char
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00006921// PPC-LINUX:#define __UINT_LEAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00006922// PPC-LINUX:#define __UINT_LEAST16_TYPE__ unsigned short
6923// PPC-LINUX:#define __UINT_LEAST32_MAX__ 4294967295U
6924// PPC-LINUX:#define __UINT_LEAST32_TYPE__ unsigned int
6925// PPC-LINUX:#define __UINT_LEAST64_MAX__ 18446744073709551615ULL
6926// PPC-LINUX:#define __UINT_LEAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00006927// PPC-LINUX:#define __UINT_LEAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00006928// PPC-LINUX:#define __UINT_LEAST8_TYPE__ unsigned char
Nico Weber3435ede2012-01-31 02:07:33 +00006929// PPC-LINUX:#define __USER_LABEL_PREFIX__
6930// PPC-LINUX:#define __WCHAR_MAX__ 2147483647
6931// PPC-LINUX:#define __WCHAR_TYPE__ int
6932// PPC-LINUX:#define __WCHAR_WIDTH__ 32
6933// PPC-LINUX:#define __WINT_TYPE__ unsigned int
6934// PPC-LINUX:#define __WINT_UNSIGNED__ 1
6935// PPC-LINUX:#define __WINT_WIDTH__ 32
6936// PPC-LINUX:#define __powerpc__ 1
6937// PPC-LINUX:#define __ppc__ 1
6938//
Eric Christopher1e6fedb2017-03-25 19:26:04 +00006939// RUN: %clang_cc1 -E -dM -ffreestanding -triple=powerpc-unknown-linux-gnu -fno-signed-char < /dev/null | FileCheck -match-full-lines -check-prefix PPC32-LINUX %s
6940//
6941// PPC32-LINUX-NOT: _CALL_LINUX
6942//
James Y Knightc97efa42016-02-11 16:51:29 +00006943// 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 +00006944//
6945// PPC-DARWIN:#define _ARCH_PPC 1
6946// PPC-DARWIN:#define _BIG_ENDIAN 1
Tim Northovera6a19f12015-02-06 01:25:07 +00006947// PPC-DARWIN:#define __BIGGEST_ALIGNMENT__ 16
David Fang072d47b2013-05-16 17:51:48 +00006948// PPC-DARWIN:#define __BIG_ENDIAN__ 1
6949// PPC-DARWIN:#define __BYTE_ORDER__ __ORDER_BIG_ENDIAN__
6950// PPC-DARWIN:#define __CHAR16_TYPE__ unsigned short
6951// PPC-DARWIN:#define __CHAR32_TYPE__ unsigned int
6952// PPC-DARWIN:#define __CHAR_BIT__ 8
6953// PPC-DARWIN:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
6954// PPC-DARWIN:#define __DBL_DIG__ 15
6955// PPC-DARWIN:#define __DBL_EPSILON__ 2.2204460492503131e-16
6956// PPC-DARWIN:#define __DBL_HAS_DENORM__ 1
6957// PPC-DARWIN:#define __DBL_HAS_INFINITY__ 1
6958// PPC-DARWIN:#define __DBL_HAS_QUIET_NAN__ 1
6959// PPC-DARWIN:#define __DBL_MANT_DIG__ 53
6960// PPC-DARWIN:#define __DBL_MAX_10_EXP__ 308
6961// PPC-DARWIN:#define __DBL_MAX_EXP__ 1024
6962// PPC-DARWIN:#define __DBL_MAX__ 1.7976931348623157e+308
6963// PPC-DARWIN:#define __DBL_MIN_10_EXP__ (-307)
6964// PPC-DARWIN:#define __DBL_MIN_EXP__ (-1021)
6965// PPC-DARWIN:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00006966// PPC-DARWIN:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
David Fang072d47b2013-05-16 17:51:48 +00006967// PPC-DARWIN:#define __FLT_DENORM_MIN__ 1.40129846e-45F
6968// PPC-DARWIN:#define __FLT_DIG__ 6
6969// PPC-DARWIN:#define __FLT_EPSILON__ 1.19209290e-7F
6970// PPC-DARWIN:#define __FLT_EVAL_METHOD__ 0
6971// PPC-DARWIN:#define __FLT_HAS_DENORM__ 1
6972// PPC-DARWIN:#define __FLT_HAS_INFINITY__ 1
6973// PPC-DARWIN:#define __FLT_HAS_QUIET_NAN__ 1
6974// PPC-DARWIN:#define __FLT_MANT_DIG__ 24
6975// PPC-DARWIN:#define __FLT_MAX_10_EXP__ 38
6976// PPC-DARWIN:#define __FLT_MAX_EXP__ 128
6977// PPC-DARWIN:#define __FLT_MAX__ 3.40282347e+38F
6978// PPC-DARWIN:#define __FLT_MIN_10_EXP__ (-37)
6979// PPC-DARWIN:#define __FLT_MIN_EXP__ (-125)
6980// PPC-DARWIN:#define __FLT_MIN__ 1.17549435e-38F
6981// PPC-DARWIN:#define __FLT_RADIX__ 2
Eric Christopher0d361162017-03-25 05:40:13 +00006982// PPC-DARWIN:#define __HAVE_BSWAP__ 1
James Y Knightc97efa42016-02-11 16:51:29 +00006983// PPC-DARWIN:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006984// PPC-DARWIN:#define __INT16_FMTd__ "hd"
6985// PPC-DARWIN:#define __INT16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00006986// PPC-DARWIN:#define __INT16_MAX__ 32767
David Fang072d47b2013-05-16 17:51:48 +00006987// PPC-DARWIN:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +00006988// PPC-DARWIN:#define __INT32_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006989// PPC-DARWIN:#define __INT32_FMTd__ "d"
6990// PPC-DARWIN:#define __INT32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00006991// PPC-DARWIN:#define __INT32_MAX__ 2147483647
David Fang072d47b2013-05-16 17:51:48 +00006992// PPC-DARWIN:#define __INT32_TYPE__ int
6993// PPC-DARWIN:#define __INT64_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006994// PPC-DARWIN:#define __INT64_FMTd__ "lld"
6995// PPC-DARWIN:#define __INT64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00006996// PPC-DARWIN:#define __INT64_MAX__ 9223372036854775807LL
David Fang072d47b2013-05-16 17:51:48 +00006997// PPC-DARWIN:#define __INT64_TYPE__ long long int
James Y Knightc97efa42016-02-11 16:51:29 +00006998// PPC-DARWIN:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006999// PPC-DARWIN:#define __INT8_FMTd__ "hhd"
7000// PPC-DARWIN:#define __INT8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00007001// PPC-DARWIN:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00007002// PPC-DARWIN:#define __INT8_TYPE__ signed char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00007003// PPC-DARWIN:#define __INTMAX_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007004// PPC-DARWIN:#define __INTMAX_FMTd__ "lld"
7005// PPC-DARWIN:#define __INTMAX_FMTi__ "lli"
David Fang072d47b2013-05-16 17:51:48 +00007006// PPC-DARWIN:#define __INTMAX_MAX__ 9223372036854775807LL
7007// PPC-DARWIN:#define __INTMAX_TYPE__ long long int
7008// PPC-DARWIN:#define __INTMAX_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007009// PPC-DARWIN:#define __INTPTR_FMTd__ "ld"
7010// PPC-DARWIN:#define __INTPTR_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00007011// PPC-DARWIN:#define __INTPTR_MAX__ 2147483647L
David Fang072d47b2013-05-16 17:51:48 +00007012// PPC-DARWIN:#define __INTPTR_TYPE__ long int
7013// PPC-DARWIN:#define __INTPTR_WIDTH__ 32
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007014// PPC-DARWIN:#define __INT_FAST16_FMTd__ "hd"
7015// PPC-DARWIN:#define __INT_FAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00007016// PPC-DARWIN:#define __INT_FAST16_MAX__ 32767
7017// PPC-DARWIN:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007018// PPC-DARWIN:#define __INT_FAST32_FMTd__ "d"
7019// PPC-DARWIN:#define __INT_FAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00007020// PPC-DARWIN:#define __INT_FAST32_MAX__ 2147483647
7021// PPC-DARWIN:#define __INT_FAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007022// PPC-DARWIN:#define __INT_FAST64_FMTd__ "lld"
7023// PPC-DARWIN:#define __INT_FAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00007024// PPC-DARWIN:#define __INT_FAST64_MAX__ 9223372036854775807LL
7025// PPC-DARWIN:#define __INT_FAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007026// PPC-DARWIN:#define __INT_FAST8_FMTd__ "hhd"
7027// PPC-DARWIN:#define __INT_FAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00007028// PPC-DARWIN:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00007029// PPC-DARWIN:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007030// PPC-DARWIN:#define __INT_LEAST16_FMTd__ "hd"
7031// PPC-DARWIN:#define __INT_LEAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00007032// PPC-DARWIN:#define __INT_LEAST16_MAX__ 32767
7033// PPC-DARWIN:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007034// PPC-DARWIN:#define __INT_LEAST32_FMTd__ "d"
7035// PPC-DARWIN:#define __INT_LEAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00007036// PPC-DARWIN:#define __INT_LEAST32_MAX__ 2147483647
7037// PPC-DARWIN:#define __INT_LEAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007038// PPC-DARWIN:#define __INT_LEAST64_FMTd__ "lld"
7039// PPC-DARWIN:#define __INT_LEAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00007040// PPC-DARWIN:#define __INT_LEAST64_MAX__ 9223372036854775807LL
7041// PPC-DARWIN:#define __INT_LEAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007042// PPC-DARWIN:#define __INT_LEAST8_FMTd__ "hhd"
7043// PPC-DARWIN:#define __INT_LEAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00007044// PPC-DARWIN:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00007045// PPC-DARWIN:#define __INT_LEAST8_TYPE__ signed char
David Fang072d47b2013-05-16 17:51:48 +00007046// PPC-DARWIN:#define __INT_MAX__ 2147483647
7047// PPC-DARWIN:#define __LDBL_DENORM_MIN__ 4.94065645841246544176568792868221e-324L
7048// PPC-DARWIN:#define __LDBL_DIG__ 31
7049// PPC-DARWIN:#define __LDBL_EPSILON__ 4.94065645841246544176568792868221e-324L
7050// PPC-DARWIN:#define __LDBL_HAS_DENORM__ 1
7051// PPC-DARWIN:#define __LDBL_HAS_INFINITY__ 1
7052// PPC-DARWIN:#define __LDBL_HAS_QUIET_NAN__ 1
7053// PPC-DARWIN:#define __LDBL_MANT_DIG__ 106
7054// PPC-DARWIN:#define __LDBL_MAX_10_EXP__ 308
7055// PPC-DARWIN:#define __LDBL_MAX_EXP__ 1024
7056// PPC-DARWIN:#define __LDBL_MAX__ 1.79769313486231580793728971405301e+308L
7057// PPC-DARWIN:#define __LDBL_MIN_10_EXP__ (-291)
7058// PPC-DARWIN:#define __LDBL_MIN_EXP__ (-968)
7059// PPC-DARWIN:#define __LDBL_MIN__ 2.00416836000897277799610805135016e-292L
Eric Christopheree214102017-03-25 06:37:23 +00007060// PPC-DARWIN:#define __LONGDOUBLE128 1
David Fang072d47b2013-05-16 17:51:48 +00007061// PPC-DARWIN:#define __LONG_DOUBLE_128__ 1
7062// PPC-DARWIN:#define __LONG_LONG_MAX__ 9223372036854775807LL
7063// PPC-DARWIN:#define __LONG_MAX__ 2147483647L
7064// PPC-DARWIN:#define __MACH__ 1
7065// PPC-DARWIN:#define __NATURAL_ALIGNMENT__ 1
7066// PPC-DARWIN:#define __ORDER_BIG_ENDIAN__ 4321
7067// PPC-DARWIN:#define __ORDER_LITTLE_ENDIAN__ 1234
7068// PPC-DARWIN:#define __ORDER_PDP_ENDIAN__ 3412
7069// PPC-DARWIN:#define __POINTER_WIDTH__ 32
7070// PPC-DARWIN:#define __POWERPC__ 1
Chandler Carruth6aa92ad2013-06-25 11:13:47 +00007071// PPC-DARWIN:#define __PPC__ 1
David Fang072d47b2013-05-16 17:51:48 +00007072// PPC-DARWIN:#define __PTRDIFF_TYPE__ int
7073// PPC-DARWIN:#define __PTRDIFF_WIDTH__ 32
James Y Knightc97efa42016-02-11 16:51:29 +00007074// PPC-DARWIN:#define __REGISTER_PREFIX__
David Fang072d47b2013-05-16 17:51:48 +00007075// PPC-DARWIN:#define __SCHAR_MAX__ 127
7076// PPC-DARWIN:#define __SHRT_MAX__ 32767
Joerg Sonnenbergerb3a49692014-07-17 18:31:20 +00007077// PPC-DARWIN:#define __SIG_ATOMIC_MAX__ 2147483647
David Fang072d47b2013-05-16 17:51:48 +00007078// PPC-DARWIN:#define __SIG_ATOMIC_WIDTH__ 32
7079// PPC-DARWIN:#define __SIZEOF_DOUBLE__ 8
7080// PPC-DARWIN:#define __SIZEOF_FLOAT__ 4
7081// PPC-DARWIN:#define __SIZEOF_INT__ 4
7082// PPC-DARWIN:#define __SIZEOF_LONG_DOUBLE__ 16
7083// PPC-DARWIN:#define __SIZEOF_LONG_LONG__ 8
7084// PPC-DARWIN:#define __SIZEOF_LONG__ 4
7085// PPC-DARWIN:#define __SIZEOF_POINTER__ 4
7086// PPC-DARWIN:#define __SIZEOF_PTRDIFF_T__ 4
7087// PPC-DARWIN:#define __SIZEOF_SHORT__ 2
7088// PPC-DARWIN:#define __SIZEOF_SIZE_T__ 4
7089// PPC-DARWIN:#define __SIZEOF_WCHAR_T__ 4
7090// PPC-DARWIN:#define __SIZEOF_WINT_T__ 4
7091// PPC-DARWIN:#define __SIZE_MAX__ 4294967295UL
7092// PPC-DARWIN:#define __SIZE_TYPE__ long unsigned int
7093// PPC-DARWIN:#define __SIZE_WIDTH__ 32
7094// PPC-DARWIN:#define __STDC_HOSTED__ 0
Richard Smithab506ad2014-10-20 23:26:58 +00007095// PPC-DARWIN:#define __STDC_VERSION__ 201112L
David Fang072d47b2013-05-16 17:51:48 +00007096// PPC-DARWIN:#define __STDC__ 1
James Y Knightc97efa42016-02-11 16:51:29 +00007097// PPC-DARWIN:#define __UINT16_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00007098// PPC-DARWIN:#define __UINT16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00007099// PPC-DARWIN:#define __UINT16_TYPE__ unsigned short
7100// PPC-DARWIN:#define __UINT32_C_SUFFIX__ U
7101// PPC-DARWIN:#define __UINT32_MAX__ 4294967295U
7102// PPC-DARWIN:#define __UINT32_TYPE__ unsigned int
7103// PPC-DARWIN:#define __UINT64_C_SUFFIX__ ULL
7104// PPC-DARWIN:#define __UINT64_MAX__ 18446744073709551615ULL
7105// PPC-DARWIN:#define __UINT64_TYPE__ long long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00007106// PPC-DARWIN:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00007107// PPC-DARWIN:#define __UINT8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00007108// PPC-DARWIN:#define __UINT8_TYPE__ unsigned char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00007109// PPC-DARWIN:#define __UINTMAX_C_SUFFIX__ ULL
JF Bastienab8d0a02014-06-25 01:31:33 +00007110// PPC-DARWIN:#define __UINTMAX_MAX__ 18446744073709551615ULL
David Fang072d47b2013-05-16 17:51:48 +00007111// PPC-DARWIN:#define __UINTMAX_TYPE__ long long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00007112// PPC-DARWIN:#define __UINTMAX_WIDTH__ 64
James Y Knightc97efa42016-02-11 16:51:29 +00007113// PPC-DARWIN:#define __UINTPTR_MAX__ 4294967295UL
Joerg Sonnenberger3809a7a2014-07-14 20:40:56 +00007114// PPC-DARWIN:#define __UINTPTR_TYPE__ long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00007115// PPC-DARWIN:#define __UINTPTR_WIDTH__ 32
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00007116// PPC-DARWIN:#define __UINT_FAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00007117// PPC-DARWIN:#define __UINT_FAST16_TYPE__ unsigned short
7118// PPC-DARWIN:#define __UINT_FAST32_MAX__ 4294967295U
7119// PPC-DARWIN:#define __UINT_FAST32_TYPE__ unsigned int
7120// PPC-DARWIN:#define __UINT_FAST64_MAX__ 18446744073709551615ULL
7121// PPC-DARWIN:#define __UINT_FAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00007122// PPC-DARWIN:#define __UINT_FAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00007123// PPC-DARWIN:#define __UINT_FAST8_TYPE__ unsigned char
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00007124// PPC-DARWIN:#define __UINT_LEAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00007125// PPC-DARWIN:#define __UINT_LEAST16_TYPE__ unsigned short
7126// PPC-DARWIN:#define __UINT_LEAST32_MAX__ 4294967295U
7127// PPC-DARWIN:#define __UINT_LEAST32_TYPE__ unsigned int
7128// PPC-DARWIN:#define __UINT_LEAST64_MAX__ 18446744073709551615ULL
7129// PPC-DARWIN:#define __UINT_LEAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00007130// PPC-DARWIN:#define __UINT_LEAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00007131// PPC-DARWIN:#define __UINT_LEAST8_TYPE__ unsigned char
David Fang072d47b2013-05-16 17:51:48 +00007132// PPC-DARWIN:#define __USER_LABEL_PREFIX__ _
7133// PPC-DARWIN:#define __WCHAR_MAX__ 2147483647
7134// PPC-DARWIN:#define __WCHAR_TYPE__ int
7135// PPC-DARWIN:#define __WCHAR_WIDTH__ 32
7136// PPC-DARWIN:#define __WINT_TYPE__ int
7137// PPC-DARWIN:#define __WINT_WIDTH__ 32
7138// PPC-DARWIN:#define __powerpc__ 1
7139// PPC-DARWIN:#define __ppc__ 1
Eric Christopherdec1b922017-03-16 22:31:07 +00007140
7141// RUN: %clang_cc1 -E -dM -ffreestanding -triple=powerpc64-apple-darwin8 < /dev/null | FileCheck -match-full-lines -check-prefix PPC64-DARWIN %s
7142// PPC64-DARWIN:#define __STRUCT_PARM_ALIGN__ 16
7143
James Y Knightc97efa42016-02-11 16:51:29 +00007144// RUN: %clang_cc1 -x cl -E -dM -ffreestanding -triple=amdgcn < /dev/null | FileCheck -match-full-lines -check-prefix AMDGCN --check-prefix AMDGPU %s
7145// 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 +00007146//
Matt Arsenaultf333de32016-09-07 07:08:02 +00007147// AMDGPU:#define __ENDIAN_LITTLE__ 1
Tom Stellard22041372015-07-17 13:16:52 +00007148// AMDGPU:#define cl_khr_byte_addressable_store 1
Tom Stellardfded50f2015-02-27 15:10:19 +00007149// AMDGCN:#define cl_khr_fp64 1
Tom Stellard22041372015-07-17 13:16:52 +00007150// AMDGPU:#define cl_khr_global_int32_base_atomics 1
7151// AMDGPU:#define cl_khr_global_int32_extended_atomics 1
7152// AMDGPU:#define cl_khr_local_int32_base_atomics 1
7153// AMDGPU:#define cl_khr_local_int32_extended_atomics 1
Tom Stellardfded50f2015-02-27 15:10:19 +00007154
James Y Knightc97efa42016-02-11 16:51:29 +00007155// RUN: %clang_cc1 -E -dM -ffreestanding -triple=s390x-none-none -fno-signed-char < /dev/null | FileCheck -match-full-lines -check-prefix S390X %s
Richard Smith59139022016-09-30 22:41:36 +00007156// RUN: %clang_cc1 -x c++ -E -dM -ffreestanding -triple=s390x-none-none -fno-signed-char < /dev/null | FileCheck -match-full-lines -check-prefix S390X -check-prefix S390X-CXX %s
Ulrich Weigand47445072013-05-06 16:26:41 +00007157//
Tim Northovera6a19f12015-02-06 01:25:07 +00007158// S390X:#define __BIGGEST_ALIGNMENT__ 8
Ulrich Weigand47445072013-05-06 16:26:41 +00007159// S390X:#define __CHAR16_TYPE__ unsigned short
7160// S390X:#define __CHAR32_TYPE__ unsigned int
7161// S390X:#define __CHAR_BIT__ 8
7162// S390X:#define __CHAR_UNSIGNED__ 1
7163// S390X:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
7164// S390X:#define __DBL_DIG__ 15
7165// S390X:#define __DBL_EPSILON__ 2.2204460492503131e-16
7166// S390X:#define __DBL_HAS_DENORM__ 1
7167// S390X:#define __DBL_HAS_INFINITY__ 1
7168// S390X:#define __DBL_HAS_QUIET_NAN__ 1
7169// S390X:#define __DBL_MANT_DIG__ 53
7170// S390X:#define __DBL_MAX_10_EXP__ 308
7171// S390X:#define __DBL_MAX_EXP__ 1024
7172// S390X:#define __DBL_MAX__ 1.7976931348623157e+308
7173// S390X:#define __DBL_MIN_10_EXP__ (-307)
7174// S390X:#define __DBL_MIN_EXP__ (-1021)
7175// S390X:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00007176// S390X:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Ulrich Weigand47445072013-05-06 16:26:41 +00007177// S390X:#define __FLT_DENORM_MIN__ 1.40129846e-45F
7178// S390X:#define __FLT_DIG__ 6
7179// S390X:#define __FLT_EPSILON__ 1.19209290e-7F
7180// S390X:#define __FLT_EVAL_METHOD__ 0
7181// S390X:#define __FLT_HAS_DENORM__ 1
7182// S390X:#define __FLT_HAS_INFINITY__ 1
7183// S390X:#define __FLT_HAS_QUIET_NAN__ 1
7184// S390X:#define __FLT_MANT_DIG__ 24
7185// S390X:#define __FLT_MAX_10_EXP__ 38
7186// S390X:#define __FLT_MAX_EXP__ 128
7187// S390X:#define __FLT_MAX__ 3.40282347e+38F
7188// S390X:#define __FLT_MIN_10_EXP__ (-37)
7189// S390X:#define __FLT_MIN_EXP__ (-125)
7190// S390X:#define __FLT_MIN__ 1.17549435e-38F
7191// S390X:#define __FLT_RADIX__ 2
James Y Knightc97efa42016-02-11 16:51:29 +00007192// S390X:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007193// S390X:#define __INT16_FMTd__ "hd"
7194// S390X:#define __INT16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00007195// S390X:#define __INT16_MAX__ 32767
Ulrich Weigand47445072013-05-06 16:26:41 +00007196// S390X:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +00007197// S390X:#define __INT32_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007198// S390X:#define __INT32_FMTd__ "d"
7199// S390X:#define __INT32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00007200// S390X:#define __INT32_MAX__ 2147483647
Ulrich Weigand47445072013-05-06 16:26:41 +00007201// S390X:#define __INT32_TYPE__ int
Ulrich Weigand881497a2015-03-30 13:50:21 +00007202// S390X:#define __INT64_C_SUFFIX__ L
7203// S390X:#define __INT64_FMTd__ "ld"
7204// S390X:#define __INT64_FMTi__ "li"
7205// S390X:#define __INT64_MAX__ 9223372036854775807L
7206// S390X:#define __INT64_TYPE__ long int
James Y Knightc97efa42016-02-11 16:51:29 +00007207// S390X:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007208// S390X:#define __INT8_FMTd__ "hhd"
7209// S390X:#define __INT8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00007210// S390X:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00007211// S390X:#define __INT8_TYPE__ signed char
Ulrich Weigand881497a2015-03-30 13:50:21 +00007212// S390X:#define __INTMAX_C_SUFFIX__ L
7213// S390X:#define __INTMAX_FMTd__ "ld"
7214// S390X:#define __INTMAX_FMTi__ "li"
7215// S390X:#define __INTMAX_MAX__ 9223372036854775807L
7216// S390X:#define __INTMAX_TYPE__ long int
Ulrich Weigand47445072013-05-06 16:26:41 +00007217// S390X:#define __INTMAX_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007218// S390X:#define __INTPTR_FMTd__ "ld"
7219// S390X:#define __INTPTR_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00007220// S390X:#define __INTPTR_MAX__ 9223372036854775807L
Ulrich Weigand47445072013-05-06 16:26:41 +00007221// S390X:#define __INTPTR_TYPE__ long int
7222// S390X:#define __INTPTR_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007223// S390X:#define __INT_FAST16_FMTd__ "hd"
7224// S390X:#define __INT_FAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00007225// S390X:#define __INT_FAST16_MAX__ 32767
7226// S390X:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007227// S390X:#define __INT_FAST32_FMTd__ "d"
7228// S390X:#define __INT_FAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00007229// S390X:#define __INT_FAST32_MAX__ 2147483647
7230// S390X:#define __INT_FAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007231// S390X:#define __INT_FAST64_FMTd__ "ld"
7232// S390X:#define __INT_FAST64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00007233// S390X:#define __INT_FAST64_MAX__ 9223372036854775807L
7234// S390X:#define __INT_FAST64_TYPE__ long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007235// S390X:#define __INT_FAST8_FMTd__ "hhd"
7236// S390X:#define __INT_FAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00007237// S390X:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00007238// S390X:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007239// S390X:#define __INT_LEAST16_FMTd__ "hd"
7240// S390X:#define __INT_LEAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00007241// S390X:#define __INT_LEAST16_MAX__ 32767
7242// S390X:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007243// S390X:#define __INT_LEAST32_FMTd__ "d"
7244// S390X:#define __INT_LEAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00007245// S390X:#define __INT_LEAST32_MAX__ 2147483647
7246// S390X:#define __INT_LEAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007247// S390X:#define __INT_LEAST64_FMTd__ "ld"
7248// S390X:#define __INT_LEAST64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00007249// S390X:#define __INT_LEAST64_MAX__ 9223372036854775807L
7250// S390X:#define __INT_LEAST64_TYPE__ long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007251// S390X:#define __INT_LEAST8_FMTd__ "hhd"
7252// S390X:#define __INT_LEAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00007253// S390X:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00007254// S390X:#define __INT_LEAST8_TYPE__ signed char
Ulrich Weigand47445072013-05-06 16:26:41 +00007255// S390X:#define __INT_MAX__ 2147483647
7256// S390X:#define __LDBL_DENORM_MIN__ 6.47517511943802511092443895822764655e-4966L
7257// S390X:#define __LDBL_DIG__ 33
7258// S390X:#define __LDBL_EPSILON__ 1.92592994438723585305597794258492732e-34L
7259// S390X:#define __LDBL_HAS_DENORM__ 1
7260// S390X:#define __LDBL_HAS_INFINITY__ 1
7261// S390X:#define __LDBL_HAS_QUIET_NAN__ 1
7262// S390X:#define __LDBL_MANT_DIG__ 113
7263// S390X:#define __LDBL_MAX_10_EXP__ 4932
7264// S390X:#define __LDBL_MAX_EXP__ 16384
7265// S390X:#define __LDBL_MAX__ 1.18973149535723176508575932662800702e+4932L
7266// S390X:#define __LDBL_MIN_10_EXP__ (-4931)
7267// S390X:#define __LDBL_MIN_EXP__ (-16381)
7268// S390X:#define __LDBL_MIN__ 3.36210314311209350626267781732175260e-4932L
7269// S390X:#define __LONG_LONG_MAX__ 9223372036854775807LL
7270// S390X:#define __LONG_MAX__ 9223372036854775807L
7271// S390X:#define __NO_INLINE__ 1
7272// S390X:#define __POINTER_WIDTH__ 64
7273// S390X:#define __PTRDIFF_TYPE__ long int
7274// S390X:#define __PTRDIFF_WIDTH__ 64
7275// S390X:#define __SCHAR_MAX__ 127
7276// S390X:#define __SHRT_MAX__ 32767
Joerg Sonnenbergerb3a49692014-07-17 18:31:20 +00007277// S390X:#define __SIG_ATOMIC_MAX__ 2147483647
Ulrich Weigand47445072013-05-06 16:26:41 +00007278// S390X:#define __SIG_ATOMIC_WIDTH__ 32
7279// S390X:#define __SIZEOF_DOUBLE__ 8
7280// S390X:#define __SIZEOF_FLOAT__ 4
7281// S390X:#define __SIZEOF_INT__ 4
7282// S390X:#define __SIZEOF_LONG_DOUBLE__ 16
7283// S390X:#define __SIZEOF_LONG_LONG__ 8
7284// S390X:#define __SIZEOF_LONG__ 8
7285// S390X:#define __SIZEOF_POINTER__ 8
7286// S390X:#define __SIZEOF_PTRDIFF_T__ 8
7287// S390X:#define __SIZEOF_SHORT__ 2
7288// S390X:#define __SIZEOF_SIZE_T__ 8
7289// S390X:#define __SIZEOF_WCHAR_T__ 4
7290// S390X:#define __SIZEOF_WINT_T__ 4
7291// S390X:#define __SIZE_TYPE__ long unsigned int
7292// S390X:#define __SIZE_WIDTH__ 64
Richard Smith59139022016-09-30 22:41:36 +00007293// S390X-CXX:#define __STDCPP_DEFAULT_NEW_ALIGNMENT__ 8UL
James Y Knightc97efa42016-02-11 16:51:29 +00007294// S390X:#define __UINT16_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00007295// S390X:#define __UINT16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00007296// S390X:#define __UINT16_TYPE__ unsigned short
7297// S390X:#define __UINT32_C_SUFFIX__ U
7298// S390X:#define __UINT32_MAX__ 4294967295U
7299// S390X:#define __UINT32_TYPE__ unsigned int
Ulrich Weigand881497a2015-03-30 13:50:21 +00007300// S390X:#define __UINT64_C_SUFFIX__ UL
7301// S390X:#define __UINT64_MAX__ 18446744073709551615UL
7302// S390X:#define __UINT64_TYPE__ long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00007303// S390X:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00007304// S390X:#define __UINT8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00007305// S390X:#define __UINT8_TYPE__ unsigned char
Ulrich Weigand881497a2015-03-30 13:50:21 +00007306// S390X:#define __UINTMAX_C_SUFFIX__ UL
7307// S390X:#define __UINTMAX_MAX__ 18446744073709551615UL
7308// S390X:#define __UINTMAX_TYPE__ long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00007309// S390X:#define __UINTMAX_WIDTH__ 64
7310// S390X:#define __UINTPTR_MAX__ 18446744073709551615UL
7311// S390X:#define __UINTPTR_TYPE__ long unsigned int
7312// S390X:#define __UINTPTR_WIDTH__ 64
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00007313// S390X:#define __UINT_FAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00007314// S390X:#define __UINT_FAST16_TYPE__ unsigned short
7315// S390X:#define __UINT_FAST32_MAX__ 4294967295U
7316// S390X:#define __UINT_FAST32_TYPE__ unsigned int
7317// S390X:#define __UINT_FAST64_MAX__ 18446744073709551615UL
7318// S390X:#define __UINT_FAST64_TYPE__ long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00007319// S390X:#define __UINT_FAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00007320// S390X:#define __UINT_FAST8_TYPE__ unsigned char
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00007321// S390X:#define __UINT_LEAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00007322// S390X:#define __UINT_LEAST16_TYPE__ unsigned short
7323// S390X:#define __UINT_LEAST32_MAX__ 4294967295U
7324// S390X:#define __UINT_LEAST32_TYPE__ unsigned int
7325// S390X:#define __UINT_LEAST64_MAX__ 18446744073709551615UL
7326// S390X:#define __UINT_LEAST64_TYPE__ long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00007327// S390X:#define __UINT_LEAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00007328// S390X:#define __UINT_LEAST8_TYPE__ unsigned char
James Y Knightb214cbc2016-03-04 19:00:41 +00007329// S390X:#define __USER_LABEL_PREFIX__
Ulrich Weigand47445072013-05-06 16:26:41 +00007330// S390X:#define __WCHAR_MAX__ 2147483647
7331// S390X:#define __WCHAR_TYPE__ int
7332// S390X:#define __WCHAR_WIDTH__ 32
7333// S390X:#define __WINT_TYPE__ int
7334// S390X:#define __WINT_WIDTH__ 32
7335// S390X:#define __s390__ 1
7336// S390X:#define __s390x__ 1
7337//
James Y Knightb214cbc2016-03-04 19:00:41 +00007338// RUN: %clang_cc1 -E -dM -ffreestanding -triple=sparc-none-none < /dev/null | FileCheck -match-full-lines -check-prefix SPARC -check-prefix SPARC-DEFAULT %s
7339// RUN: %clang_cc1 -E -dM -ffreestanding -triple=sparc-rtems-elf < /dev/null | FileCheck -match-full-lines -check-prefix SPARC -check-prefix SPARC-DEFAULT %s
7340// RUN: %clang_cc1 -E -dM -ffreestanding -triple=sparc-none-netbsd < /dev/null | FileCheck -match-full-lines -check-prefix SPARC -check-prefix SPARC-NETOPENBSD %s
7341// RUN: %clang_cc1 -E -dM -ffreestanding -triple=sparc-none-openbsd < /dev/null | FileCheck -match-full-lines -check-prefix SPARC -check-prefix SPARC-NETOPENBSD %s
Richard Smith59139022016-09-30 22:41:36 +00007342// RUN: %clang_cc1 -x c++ -E -dM -ffreestanding -triple=sparc-none-none < /dev/null | FileCheck -match-full-lines -check-prefix SPARC -check-prefix SPARC-DEFAULT -check-prefix SPARC-DEFAULT-CXX %s
7343// RUN: %clang_cc1 -x c++ -E -dM -ffreestanding -triple=sparc-none-openbsd < /dev/null | FileCheck -match-full-lines -check-prefix SPARC -check-prefix SPARC-NETOPENBSD -check-prefix SPARC-NETOPENBSD-CXX %s
Chris Lattnere963d092009-10-29 04:55:36 +00007344//
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00007345// SPARC-NOT:#define _LP64
Tim Northovera6a19f12015-02-06 01:25:07 +00007346// SPARC:#define __BIGGEST_ALIGNMENT__ 8
Robert Lytton2c942c62014-03-10 12:06:29 +00007347// SPARC:#define __BIG_ENDIAN__ 1
Dylan Noblesmith673728f2012-07-27 18:34:31 +00007348// SPARC:#define __BYTE_ORDER__ __ORDER_BIG_ENDIAN__
Dan Gohman04f87202010-05-28 00:27:15 +00007349// SPARC:#define __CHAR16_TYPE__ unsigned short
7350// SPARC:#define __CHAR32_TYPE__ unsigned int
Chris Lattnere963d092009-10-29 04:55:36 +00007351// SPARC:#define __CHAR_BIT__ 8
7352// SPARC:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
7353// SPARC:#define __DBL_DIG__ 15
7354// SPARC:#define __DBL_EPSILON__ 2.2204460492503131e-16
7355// SPARC:#define __DBL_HAS_DENORM__ 1
7356// SPARC:#define __DBL_HAS_INFINITY__ 1
7357// SPARC:#define __DBL_HAS_QUIET_NAN__ 1
7358// SPARC:#define __DBL_MANT_DIG__ 53
7359// SPARC:#define __DBL_MAX_10_EXP__ 308
7360// SPARC:#define __DBL_MAX_EXP__ 1024
7361// SPARC:#define __DBL_MAX__ 1.7976931348623157e+308
7362// SPARC:#define __DBL_MIN_10_EXP__ (-307)
7363// SPARC:#define __DBL_MIN_EXP__ (-1021)
7364// SPARC:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00007365// SPARC:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Chris Lattnere963d092009-10-29 04:55:36 +00007366// SPARC:#define __FLT_DENORM_MIN__ 1.40129846e-45F
7367// SPARC:#define __FLT_DIG__ 6
7368// SPARC:#define __FLT_EPSILON__ 1.19209290e-7F
7369// SPARC:#define __FLT_EVAL_METHOD__ 0
7370// SPARC:#define __FLT_HAS_DENORM__ 1
7371// SPARC:#define __FLT_HAS_INFINITY__ 1
7372// SPARC:#define __FLT_HAS_QUIET_NAN__ 1
7373// SPARC:#define __FLT_MANT_DIG__ 24
7374// SPARC:#define __FLT_MAX_10_EXP__ 38
7375// SPARC:#define __FLT_MAX_EXP__ 128
7376// SPARC:#define __FLT_MAX__ 3.40282347e+38F
7377// SPARC:#define __FLT_MIN_10_EXP__ (-37)
7378// SPARC:#define __FLT_MIN_EXP__ (-125)
7379// SPARC:#define __FLT_MIN__ 1.17549435e-38F
7380// SPARC:#define __FLT_RADIX__ 2
Douglas Katzman13f4a912016-11-09 15:43:51 +00007381// SPARC:#define __GCC_ATOMIC_LLONG_LOCK_FREE 1
James Y Knightc97efa42016-02-11 16:51:29 +00007382// SPARC:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007383// SPARC:#define __INT16_FMTd__ "hd"
7384// SPARC:#define __INT16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00007385// SPARC:#define __INT16_MAX__ 32767
Chris Lattnere963d092009-10-29 04:55:36 +00007386// SPARC:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +00007387// SPARC:#define __INT32_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007388// SPARC:#define __INT32_FMTd__ "d"
7389// SPARC:#define __INT32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00007390// SPARC:#define __INT32_MAX__ 2147483647
Chris Lattnere963d092009-10-29 04:55:36 +00007391// SPARC:#define __INT32_TYPE__ int
Ken Dyck2dc8d5f2009-11-16 16:36:33 +00007392// SPARC:#define __INT64_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007393// SPARC:#define __INT64_FMTd__ "lld"
7394// SPARC:#define __INT64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00007395// SPARC:#define __INT64_MAX__ 9223372036854775807LL
Chris Lattnere963d092009-10-29 04:55:36 +00007396// SPARC:#define __INT64_TYPE__ long long int
James Y Knightc97efa42016-02-11 16:51:29 +00007397// SPARC:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007398// SPARC:#define __INT8_FMTd__ "hhd"
7399// SPARC:#define __INT8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00007400// SPARC:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00007401// SPARC:#define __INT8_TYPE__ signed char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00007402// SPARC:#define __INTMAX_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007403// SPARC:#define __INTMAX_FMTd__ "lld"
7404// SPARC:#define __INTMAX_FMTi__ "lli"
Chris Lattnere963d092009-10-29 04:55:36 +00007405// SPARC:#define __INTMAX_MAX__ 9223372036854775807LL
Ken Dyck9b25f782009-11-19 13:18:59 +00007406// SPARC:#define __INTMAX_TYPE__ long long int
Ken Dyckc0c98292009-11-18 13:52:57 +00007407// SPARC:#define __INTMAX_WIDTH__ 64
James Y Knightb214cbc2016-03-04 19:00:41 +00007408// SPARC-DEFAULT:#define __INTPTR_FMTd__ "d"
7409// SPARC-DEFAULT:#define __INTPTR_FMTi__ "i"
7410// SPARC-DEFAULT:#define __INTPTR_MAX__ 2147483647
7411// SPARC-DEFAULT:#define __INTPTR_TYPE__ int
7412// SPARC-NETOPENBSD:#define __INTPTR_FMTd__ "ld"
7413// SPARC-NETOPENBSD:#define __INTPTR_FMTi__ "li"
7414// SPARC-NETOPENBSD:#define __INTPTR_MAX__ 2147483647L
7415// SPARC-NETOPENBSD:#define __INTPTR_TYPE__ long int
Ken Dyck24cfcf12009-11-18 20:05:48 +00007416// SPARC:#define __INTPTR_WIDTH__ 32
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007417// SPARC:#define __INT_FAST16_FMTd__ "hd"
7418// SPARC:#define __INT_FAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00007419// SPARC:#define __INT_FAST16_MAX__ 32767
7420// SPARC:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007421// SPARC:#define __INT_FAST32_FMTd__ "d"
7422// SPARC:#define __INT_FAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00007423// SPARC:#define __INT_FAST32_MAX__ 2147483647
7424// SPARC:#define __INT_FAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007425// SPARC:#define __INT_FAST64_FMTd__ "lld"
7426// SPARC:#define __INT_FAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00007427// SPARC:#define __INT_FAST64_MAX__ 9223372036854775807LL
7428// SPARC:#define __INT_FAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007429// SPARC:#define __INT_FAST8_FMTd__ "hhd"
7430// SPARC:#define __INT_FAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00007431// SPARC:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00007432// SPARC:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007433// SPARC:#define __INT_LEAST16_FMTd__ "hd"
7434// SPARC:#define __INT_LEAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00007435// SPARC:#define __INT_LEAST16_MAX__ 32767
7436// SPARC:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007437// SPARC:#define __INT_LEAST32_FMTd__ "d"
7438// SPARC:#define __INT_LEAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00007439// SPARC:#define __INT_LEAST32_MAX__ 2147483647
7440// SPARC:#define __INT_LEAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007441// SPARC:#define __INT_LEAST64_FMTd__ "lld"
7442// SPARC:#define __INT_LEAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00007443// SPARC:#define __INT_LEAST64_MAX__ 9223372036854775807LL
7444// SPARC:#define __INT_LEAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007445// SPARC:#define __INT_LEAST8_FMTd__ "hhd"
7446// SPARC:#define __INT_LEAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00007447// SPARC:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00007448// SPARC:#define __INT_LEAST8_TYPE__ signed char
Chris Lattnere963d092009-10-29 04:55:36 +00007449// SPARC:#define __INT_MAX__ 2147483647
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00007450// SPARC:#define __LDBL_DENORM_MIN__ 4.9406564584124654e-324L
Chris Lattnere963d092009-10-29 04:55:36 +00007451// SPARC:#define __LDBL_DIG__ 15
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00007452// SPARC:#define __LDBL_EPSILON__ 2.2204460492503131e-16L
Chris Lattnere963d092009-10-29 04:55:36 +00007453// SPARC:#define __LDBL_HAS_DENORM__ 1
7454// SPARC:#define __LDBL_HAS_INFINITY__ 1
7455// SPARC:#define __LDBL_HAS_QUIET_NAN__ 1
7456// SPARC:#define __LDBL_MANT_DIG__ 53
7457// SPARC:#define __LDBL_MAX_10_EXP__ 308
7458// SPARC:#define __LDBL_MAX_EXP__ 1024
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00007459// SPARC:#define __LDBL_MAX__ 1.7976931348623157e+308L
Chris Lattnere963d092009-10-29 04:55:36 +00007460// SPARC:#define __LDBL_MIN_10_EXP__ (-307)
7461// SPARC:#define __LDBL_MIN_EXP__ (-1021)
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00007462// SPARC:#define __LDBL_MIN__ 2.2250738585072014e-308L
Chris Lattnere963d092009-10-29 04:55:36 +00007463// SPARC:#define __LONG_LONG_MAX__ 9223372036854775807LL
7464// SPARC:#define __LONG_MAX__ 2147483647L
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00007465// SPARC-NOT:#define __LP64__
Chris Lattnere963d092009-10-29 04:55:36 +00007466// SPARC:#define __POINTER_WIDTH__ 32
James Y Knightb214cbc2016-03-04 19:00:41 +00007467// SPARC-DEFAULT:#define __PTRDIFF_TYPE__ int
7468// SPARC-NETOPENBSD:#define __PTRDIFF_TYPE__ long int
Ken Dyck056efe02009-11-19 12:21:52 +00007469// SPARC:#define __PTRDIFF_WIDTH__ 32
Daniel Dunbaracde99e2009-12-18 18:42:37 +00007470// SPARC:#define __REGISTER_PREFIX__
Chris Lattnere963d092009-10-29 04:55:36 +00007471// SPARC:#define __SCHAR_MAX__ 127
7472// SPARC:#define __SHRT_MAX__ 32767
Joerg Sonnenbergerb3a49692014-07-17 18:31:20 +00007473// SPARC:#define __SIG_ATOMIC_MAX__ 2147483647
Ken Dyckadc85112009-11-22 15:41:04 +00007474// SPARC:#define __SIG_ATOMIC_WIDTH__ 32
Dan Gohman04f87202010-05-28 00:27:15 +00007475// SPARC:#define __SIZEOF_DOUBLE__ 8
7476// SPARC:#define __SIZEOF_FLOAT__ 4
7477// SPARC:#define __SIZEOF_INT__ 4
7478// SPARC:#define __SIZEOF_LONG_DOUBLE__ 8
7479// SPARC:#define __SIZEOF_LONG_LONG__ 8
7480// SPARC:#define __SIZEOF_LONG__ 4
7481// SPARC:#define __SIZEOF_POINTER__ 4
7482// SPARC:#define __SIZEOF_PTRDIFF_T__ 4
7483// SPARC:#define __SIZEOF_SHORT__ 2
7484// SPARC:#define __SIZEOF_SIZE_T__ 4
7485// SPARC:#define __SIZEOF_WCHAR_T__ 4
7486// SPARC:#define __SIZEOF_WINT_T__ 4
James Y Knightb214cbc2016-03-04 19:00:41 +00007487// SPARC-DEFAULT:#define __SIZE_MAX__ 4294967295U
7488// SPARC-DEFAULT:#define __SIZE_TYPE__ unsigned int
7489// SPARC-NETOPENBSD:#define __SIZE_MAX__ 4294967295UL
7490// SPARC-NETOPENBSD:#define __SIZE_TYPE__ long unsigned int
Ken Dyck57512862009-11-19 13:42:09 +00007491// SPARC:#define __SIZE_WIDTH__ 32
Richard Smith59139022016-09-30 22:41:36 +00007492// SPARC-DEFAULT-CXX:#define __STDCPP_DEFAULT_NEW_ALIGNMENT__ 8U
7493// SPARC-NETOPENBSD-CXX:#define __STDCPP_DEFAULT_NEW_ALIGNMENT__ 8UL
James Y Knightc97efa42016-02-11 16:51:29 +00007494// SPARC:#define __UINT16_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00007495// SPARC:#define __UINT16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00007496// SPARC:#define __UINT16_TYPE__ unsigned short
7497// SPARC:#define __UINT32_C_SUFFIX__ U
7498// SPARC:#define __UINT32_MAX__ 4294967295U
7499// SPARC:#define __UINT32_TYPE__ unsigned int
7500// SPARC:#define __UINT64_C_SUFFIX__ ULL
7501// SPARC:#define __UINT64_MAX__ 18446744073709551615ULL
7502// SPARC:#define __UINT64_TYPE__ long long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00007503// SPARC:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00007504// SPARC:#define __UINT8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00007505// SPARC:#define __UINT8_TYPE__ unsigned char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00007506// SPARC:#define __UINTMAX_C_SUFFIX__ ULL
JF Bastienab8d0a02014-06-25 01:31:33 +00007507// SPARC:#define __UINTMAX_MAX__ 18446744073709551615ULL
Ken Dyck9b25f782009-11-19 13:18:59 +00007508// SPARC:#define __UINTMAX_TYPE__ long long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00007509// SPARC:#define __UINTMAX_WIDTH__ 64
James Y Knightb214cbc2016-03-04 19:00:41 +00007510// SPARC-DEFAULT:#define __UINTPTR_MAX__ 4294967295U
7511// SPARC-DEFAULT:#define __UINTPTR_TYPE__ unsigned int
7512// SPARC-NETOPENBSD:#define __UINTPTR_MAX__ 4294967295UL
7513// SPARC-NETOPENBSD:#define __UINTPTR_TYPE__ long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00007514// SPARC:#define __UINTPTR_WIDTH__ 32
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00007515// SPARC:#define __UINT_FAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00007516// SPARC:#define __UINT_FAST16_TYPE__ unsigned short
7517// SPARC:#define __UINT_FAST32_MAX__ 4294967295U
7518// SPARC:#define __UINT_FAST32_TYPE__ unsigned int
7519// SPARC:#define __UINT_FAST64_MAX__ 18446744073709551615ULL
7520// SPARC:#define __UINT_FAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00007521// SPARC:#define __UINT_FAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00007522// SPARC:#define __UINT_FAST8_TYPE__ unsigned char
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00007523// SPARC:#define __UINT_LEAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00007524// SPARC:#define __UINT_LEAST16_TYPE__ unsigned short
7525// SPARC:#define __UINT_LEAST32_MAX__ 4294967295U
7526// SPARC:#define __UINT_LEAST32_TYPE__ unsigned int
7527// SPARC:#define __UINT_LEAST64_MAX__ 18446744073709551615ULL
7528// SPARC:#define __UINT_LEAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00007529// SPARC:#define __UINT_LEAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00007530// SPARC:#define __UINT_LEAST8_TYPE__ unsigned char
James Y Knightb214cbc2016-03-04 19:00:41 +00007531// SPARC:#define __USER_LABEL_PREFIX__
James Y Knightc97efa42016-02-11 16:51:29 +00007532// SPARC:#define __VERSION__ "4.2.1 Compatible{{.*}}
Chris Lattnere963d092009-10-29 04:55:36 +00007533// SPARC:#define __WCHAR_MAX__ 2147483647
7534// SPARC:#define __WCHAR_TYPE__ int
Ken Dyck0138b9e2009-11-19 15:47:58 +00007535// SPARC:#define __WCHAR_WIDTH__ 32
Chris Lattnere963d092009-10-29 04:55:36 +00007536// SPARC:#define __WINT_TYPE__ int
Ken Dycka1f677c2009-11-19 14:16:57 +00007537// SPARC:#define __WINT_WIDTH__ 32
Chris Lattnere963d092009-10-29 04:55:36 +00007538// SPARC:#define __sparc 1
7539// SPARC:#define __sparc__ 1
7540// SPARC:#define __sparcv8 1
7541// SPARC:#define sparc 1
James Y Knight4b4d19e2015-06-04 15:36:29 +00007542
James Y Knightc97efa42016-02-11 16:51:29 +00007543// RUN: %clang_cc1 -E -dM -ffreestanding -triple=tce-none-none < /dev/null | FileCheck -match-full-lines -check-prefix TCE %s
Richard Smith59139022016-09-30 22:41:36 +00007544// RUN: %clang_cc1 -x c++ -E -dM -ffreestanding -triple=tce-none-none < /dev/null | FileCheck -match-full-lines -check-prefix TCE -check-prefix TCE-CXX %s
Chris Lattnere963d092009-10-29 04:55:36 +00007545//
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00007546// TCE-NOT:#define _LP64
Tim Northovera6a19f12015-02-06 01:25:07 +00007547// TCE:#define __BIGGEST_ALIGNMENT__ 4
Robert Lytton2c942c62014-03-10 12:06:29 +00007548// TCE:#define __BIG_ENDIAN__ 1
Dylan Noblesmith673728f2012-07-27 18:34:31 +00007549// TCE:#define __BYTE_ORDER__ __ORDER_BIG_ENDIAN__
Dan Gohman04f87202010-05-28 00:27:15 +00007550// TCE:#define __CHAR16_TYPE__ unsigned short
7551// TCE:#define __CHAR32_TYPE__ unsigned int
Chris Lattnere963d092009-10-29 04:55:36 +00007552// TCE:#define __CHAR_BIT__ 8
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00007553// TCE:#define __DBL_DENORM_MIN__ 1.40129846e-45
Chris Lattnere963d092009-10-29 04:55:36 +00007554// TCE:#define __DBL_DIG__ 6
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00007555// TCE:#define __DBL_EPSILON__ 1.19209290e-7
Chris Lattnere963d092009-10-29 04:55:36 +00007556// TCE:#define __DBL_HAS_DENORM__ 1
7557// TCE:#define __DBL_HAS_INFINITY__ 1
7558// TCE:#define __DBL_HAS_QUIET_NAN__ 1
7559// TCE:#define __DBL_MANT_DIG__ 24
7560// TCE:#define __DBL_MAX_10_EXP__ 38
7561// TCE:#define __DBL_MAX_EXP__ 128
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00007562// TCE:#define __DBL_MAX__ 3.40282347e+38
Chris Lattnere963d092009-10-29 04:55:36 +00007563// TCE:#define __DBL_MIN_10_EXP__ (-37)
7564// TCE:#define __DBL_MIN_EXP__ (-125)
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00007565// TCE:#define __DBL_MIN__ 1.17549435e-38
Ed Schouten49920992015-02-23 09:12:31 +00007566// TCE:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Chris Lattnere963d092009-10-29 04:55:36 +00007567// TCE:#define __FLT_DENORM_MIN__ 1.40129846e-45F
7568// TCE:#define __FLT_DIG__ 6
7569// TCE:#define __FLT_EPSILON__ 1.19209290e-7F
7570// TCE:#define __FLT_EVAL_METHOD__ 0
7571// TCE:#define __FLT_HAS_DENORM__ 1
7572// TCE:#define __FLT_HAS_INFINITY__ 1
7573// TCE:#define __FLT_HAS_QUIET_NAN__ 1
7574// TCE:#define __FLT_MANT_DIG__ 24
7575// TCE:#define __FLT_MAX_10_EXP__ 38
7576// TCE:#define __FLT_MAX_EXP__ 128
7577// TCE:#define __FLT_MAX__ 3.40282347e+38F
7578// TCE:#define __FLT_MIN_10_EXP__ (-37)
7579// TCE:#define __FLT_MIN_EXP__ (-125)
7580// TCE:#define __FLT_MIN__ 1.17549435e-38F
7581// TCE:#define __FLT_RADIX__ 2
James Y Knightc97efa42016-02-11 16:51:29 +00007582// TCE:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007583// TCE:#define __INT16_FMTd__ "hd"
7584// TCE:#define __INT16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00007585// TCE:#define __INT16_MAX__ 32767
Chris Lattnere963d092009-10-29 04:55:36 +00007586// TCE:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +00007587// TCE:#define __INT32_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007588// TCE:#define __INT32_FMTd__ "d"
7589// TCE:#define __INT32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00007590// TCE:#define __INT32_MAX__ 2147483647
Chris Lattnere963d092009-10-29 04:55:36 +00007591// TCE:#define __INT32_TYPE__ int
James Y Knightc97efa42016-02-11 16:51:29 +00007592// TCE:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007593// TCE:#define __INT8_FMTd__ "hhd"
7594// TCE:#define __INT8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00007595// TCE:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00007596// TCE:#define __INT8_TYPE__ signed char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00007597// TCE:#define __INTMAX_C_SUFFIX__ L
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007598// TCE:#define __INTMAX_FMTd__ "ld"
7599// TCE:#define __INTMAX_FMTi__ "li"
Chris Lattnere963d092009-10-29 04:55:36 +00007600// TCE:#define __INTMAX_MAX__ 2147483647L
Ken Dyck9b25f782009-11-19 13:18:59 +00007601// TCE:#define __INTMAX_TYPE__ long int
Ken Dyckc0c98292009-11-18 13:52:57 +00007602// TCE:#define __INTMAX_WIDTH__ 32
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007603// TCE:#define __INTPTR_FMTd__ "d"
7604// TCE:#define __INTPTR_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00007605// TCE:#define __INTPTR_MAX__ 2147483647
Ken Dyck9b25f782009-11-19 13:18:59 +00007606// TCE:#define __INTPTR_TYPE__ int
Ken Dyck24cfcf12009-11-18 20:05:48 +00007607// TCE:#define __INTPTR_WIDTH__ 32
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007608// TCE:#define __INT_FAST16_FMTd__ "hd"
7609// TCE:#define __INT_FAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00007610// TCE:#define __INT_FAST16_MAX__ 32767
7611// TCE:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007612// TCE:#define __INT_FAST32_FMTd__ "d"
7613// TCE:#define __INT_FAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00007614// TCE:#define __INT_FAST32_MAX__ 2147483647
7615// TCE:#define __INT_FAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007616// TCE:#define __INT_FAST8_FMTd__ "hhd"
7617// TCE:#define __INT_FAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00007618// TCE:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00007619// TCE:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007620// TCE:#define __INT_LEAST16_FMTd__ "hd"
7621// TCE:#define __INT_LEAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00007622// TCE:#define __INT_LEAST16_MAX__ 32767
7623// TCE:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007624// TCE:#define __INT_LEAST32_FMTd__ "d"
7625// TCE:#define __INT_LEAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00007626// TCE:#define __INT_LEAST32_MAX__ 2147483647
7627// TCE:#define __INT_LEAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007628// TCE:#define __INT_LEAST8_FMTd__ "hhd"
7629// TCE:#define __INT_LEAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00007630// TCE:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00007631// TCE:#define __INT_LEAST8_TYPE__ signed char
Chris Lattnere963d092009-10-29 04:55:36 +00007632// TCE:#define __INT_MAX__ 2147483647
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00007633// TCE:#define __LDBL_DENORM_MIN__ 1.40129846e-45L
Chris Lattnere963d092009-10-29 04:55:36 +00007634// TCE:#define __LDBL_DIG__ 6
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00007635// TCE:#define __LDBL_EPSILON__ 1.19209290e-7L
Chris Lattnere963d092009-10-29 04:55:36 +00007636// TCE:#define __LDBL_HAS_DENORM__ 1
7637// TCE:#define __LDBL_HAS_INFINITY__ 1
7638// TCE:#define __LDBL_HAS_QUIET_NAN__ 1
7639// TCE:#define __LDBL_MANT_DIG__ 24
7640// TCE:#define __LDBL_MAX_10_EXP__ 38
7641// TCE:#define __LDBL_MAX_EXP__ 128
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00007642// TCE:#define __LDBL_MAX__ 3.40282347e+38L
Chris Lattnere963d092009-10-29 04:55:36 +00007643// TCE:#define __LDBL_MIN_10_EXP__ (-37)
7644// TCE:#define __LDBL_MIN_EXP__ (-125)
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00007645// TCE:#define __LDBL_MIN__ 1.17549435e-38L
Chris Lattnere963d092009-10-29 04:55:36 +00007646// TCE:#define __LONG_LONG_MAX__ 2147483647LL
7647// TCE:#define __LONG_MAX__ 2147483647L
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00007648// TCE-NOT:#define __LP64__
Chris Lattnere963d092009-10-29 04:55:36 +00007649// TCE:#define __POINTER_WIDTH__ 32
Ken Dyck9b25f782009-11-19 13:18:59 +00007650// TCE:#define __PTRDIFF_TYPE__ int
Ken Dyck056efe02009-11-19 12:21:52 +00007651// TCE:#define __PTRDIFF_WIDTH__ 32
Chris Lattnere963d092009-10-29 04:55:36 +00007652// TCE:#define __SCHAR_MAX__ 127
7653// TCE:#define __SHRT_MAX__ 32767
Joerg Sonnenbergerb3a49692014-07-17 18:31:20 +00007654// TCE:#define __SIG_ATOMIC_MAX__ 2147483647
Ken Dyckadc85112009-11-22 15:41:04 +00007655// TCE:#define __SIG_ATOMIC_WIDTH__ 32
Dan Gohman04f87202010-05-28 00:27:15 +00007656// TCE:#define __SIZEOF_DOUBLE__ 4
7657// TCE:#define __SIZEOF_FLOAT__ 4
7658// TCE:#define __SIZEOF_INT__ 4
7659// TCE:#define __SIZEOF_LONG_DOUBLE__ 4
7660// TCE:#define __SIZEOF_LONG_LONG__ 4
7661// TCE:#define __SIZEOF_LONG__ 4
7662// TCE:#define __SIZEOF_POINTER__ 4
7663// TCE:#define __SIZEOF_PTRDIFF_T__ 4
7664// TCE:#define __SIZEOF_SHORT__ 2
7665// TCE:#define __SIZEOF_SIZE_T__ 4
7666// TCE:#define __SIZEOF_WCHAR_T__ 4
7667// TCE:#define __SIZEOF_WINT_T__ 4
Evgeniy Stepanovc3c725a2013-03-28 08:36:54 +00007668// TCE:#define __SIZE_MAX__ 4294967295U
Chris Lattnere963d092009-10-29 04:55:36 +00007669// TCE:#define __SIZE_TYPE__ unsigned int
Ken Dyck57512862009-11-19 13:42:09 +00007670// TCE:#define __SIZE_WIDTH__ 32
Richard Smith59139022016-09-30 22:41:36 +00007671// TCE-CXX:#define __STDCPP_DEFAULT_NEW_ALIGNMENT__ 4U
Chris Lattnere963d092009-10-29 04:55:36 +00007672// TCE:#define __TCE_V1__ 1
7673// TCE:#define __TCE__ 1
James Y Knightc97efa42016-02-11 16:51:29 +00007674// TCE:#define __UINT16_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00007675// TCE:#define __UINT16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00007676// TCE:#define __UINT16_TYPE__ unsigned short
7677// TCE:#define __UINT32_C_SUFFIX__ U
7678// TCE:#define __UINT32_MAX__ 4294967295U
7679// TCE:#define __UINT32_TYPE__ unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00007680// TCE:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00007681// TCE:#define __UINT8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00007682// TCE:#define __UINT8_TYPE__ unsigned char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00007683// TCE:#define __UINTMAX_C_SUFFIX__ UL
JF Bastienab8d0a02014-06-25 01:31:33 +00007684// TCE:#define __UINTMAX_MAX__ 4294967295UL
Ken Dyck9b25f782009-11-19 13:18:59 +00007685// TCE:#define __UINTMAX_TYPE__ long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00007686// TCE:#define __UINTMAX_WIDTH__ 32
7687// TCE:#define __UINTPTR_MAX__ 4294967295U
7688// TCE:#define __UINTPTR_TYPE__ unsigned int
7689// TCE:#define __UINTPTR_WIDTH__ 32
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00007690// TCE:#define __UINT_FAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00007691// TCE:#define __UINT_FAST16_TYPE__ unsigned short
7692// TCE:#define __UINT_FAST32_MAX__ 4294967295U
7693// TCE:#define __UINT_FAST32_TYPE__ unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00007694// TCE:#define __UINT_FAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00007695// TCE:#define __UINT_FAST8_TYPE__ unsigned char
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00007696// TCE:#define __UINT_LEAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00007697// TCE:#define __UINT_LEAST16_TYPE__ unsigned short
7698// TCE:#define __UINT_LEAST32_MAX__ 4294967295U
7699// TCE:#define __UINT_LEAST32_TYPE__ unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00007700// TCE:#define __UINT_LEAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00007701// TCE:#define __UINT_LEAST8_TYPE__ unsigned char
James Y Knightb214cbc2016-03-04 19:00:41 +00007702// TCE:#define __USER_LABEL_PREFIX__
Chris Lattnere963d092009-10-29 04:55:36 +00007703// TCE:#define __WCHAR_MAX__ 2147483647
7704// TCE:#define __WCHAR_TYPE__ int
Ken Dyck0138b9e2009-11-19 15:47:58 +00007705// TCE:#define __WCHAR_WIDTH__ 32
Chris Lattnere963d092009-10-29 04:55:36 +00007706// TCE:#define __WINT_TYPE__ int
Ken Dycka1f677c2009-11-19 14:16:57 +00007707// TCE:#define __WINT_WIDTH__ 32
Chris Lattnere963d092009-10-29 04:55:36 +00007708// TCE:#define __tce 1
7709// TCE:#define __tce__ 1
7710// TCE:#define tce 1
7711//
James Y Knightc97efa42016-02-11 16:51:29 +00007712// RUN: %clang_cc1 -E -dM -ffreestanding -triple=x86_64-none-none < /dev/null | FileCheck -match-full-lines -check-prefix X86_64 %s
Richard Smith59139022016-09-30 22:41:36 +00007713// RUN: %clang_cc1 -x c++ -E -dM -ffreestanding -triple=x86_64-none-none < /dev/null | FileCheck -match-full-lines -check-prefix X86_64 -check-prefix X86_64-CXX %s
Chris Lattnere963d092009-10-29 04:55:36 +00007714//
7715// X86_64:#define _LP64 1
Pavel Chupin3362c5f2014-07-14 09:58:10 +00007716// X86_64-NOT:#define _LP32 1
Tim Northovera6a19f12015-02-06 01:25:07 +00007717// X86_64:#define __BIGGEST_ALIGNMENT__ 16
Dylan Noblesmith673728f2012-07-27 18:34:31 +00007718// X86_64:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
Dan Gohman04f87202010-05-28 00:27:15 +00007719// X86_64:#define __CHAR16_TYPE__ unsigned short
7720// X86_64:#define __CHAR32_TYPE__ unsigned int
Chris Lattnere963d092009-10-29 04:55:36 +00007721// X86_64:#define __CHAR_BIT__ 8
7722// X86_64:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
7723// X86_64:#define __DBL_DIG__ 15
7724// X86_64:#define __DBL_EPSILON__ 2.2204460492503131e-16
7725// X86_64:#define __DBL_HAS_DENORM__ 1
7726// X86_64:#define __DBL_HAS_INFINITY__ 1
7727// X86_64:#define __DBL_HAS_QUIET_NAN__ 1
7728// X86_64:#define __DBL_MANT_DIG__ 53
7729// X86_64:#define __DBL_MAX_10_EXP__ 308
7730// X86_64:#define __DBL_MAX_EXP__ 1024
7731// X86_64:#define __DBL_MAX__ 1.7976931348623157e+308
7732// X86_64:#define __DBL_MIN_10_EXP__ (-307)
7733// X86_64:#define __DBL_MIN_EXP__ (-1021)
7734// X86_64:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00007735// X86_64:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Chris Lattnere963d092009-10-29 04:55:36 +00007736// X86_64:#define __FLT_DENORM_MIN__ 1.40129846e-45F
7737// X86_64:#define __FLT_DIG__ 6
7738// X86_64:#define __FLT_EPSILON__ 1.19209290e-7F
7739// X86_64:#define __FLT_EVAL_METHOD__ 0
7740// X86_64:#define __FLT_HAS_DENORM__ 1
7741// X86_64:#define __FLT_HAS_INFINITY__ 1
7742// X86_64:#define __FLT_HAS_QUIET_NAN__ 1
7743// X86_64:#define __FLT_MANT_DIG__ 24
7744// X86_64:#define __FLT_MAX_10_EXP__ 38
7745// X86_64:#define __FLT_MAX_EXP__ 128
7746// X86_64:#define __FLT_MAX__ 3.40282347e+38F
7747// X86_64:#define __FLT_MIN_10_EXP__ (-37)
7748// X86_64:#define __FLT_MIN_EXP__ (-125)
7749// X86_64:#define __FLT_MIN__ 1.17549435e-38F
7750// X86_64:#define __FLT_RADIX__ 2
James Y Knightc97efa42016-02-11 16:51:29 +00007751// X86_64:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007752// X86_64:#define __INT16_FMTd__ "hd"
7753// X86_64:#define __INT16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00007754// X86_64:#define __INT16_MAX__ 32767
Chris Lattnere963d092009-10-29 04:55:36 +00007755// X86_64:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +00007756// X86_64:#define __INT32_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007757// X86_64:#define __INT32_FMTd__ "d"
7758// X86_64:#define __INT32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00007759// X86_64:#define __INT32_MAX__ 2147483647
Chris Lattnere963d092009-10-29 04:55:36 +00007760// X86_64:#define __INT32_TYPE__ int
Ken Dyck2dc8d5f2009-11-16 16:36:33 +00007761// X86_64:#define __INT64_C_SUFFIX__ L
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007762// X86_64:#define __INT64_FMTd__ "ld"
7763// X86_64:#define __INT64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00007764// X86_64:#define __INT64_MAX__ 9223372036854775807L
Chris Lattnere963d092009-10-29 04:55:36 +00007765// X86_64:#define __INT64_TYPE__ long int
James Y Knightc97efa42016-02-11 16:51:29 +00007766// X86_64:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007767// X86_64:#define __INT8_FMTd__ "hhd"
7768// X86_64:#define __INT8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00007769// X86_64:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00007770// X86_64:#define __INT8_TYPE__ signed char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00007771// X86_64:#define __INTMAX_C_SUFFIX__ L
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007772// X86_64:#define __INTMAX_FMTd__ "ld"
7773// X86_64:#define __INTMAX_FMTi__ "li"
Chris Lattnere963d092009-10-29 04:55:36 +00007774// X86_64:#define __INTMAX_MAX__ 9223372036854775807L
Ken Dyck9b25f782009-11-19 13:18:59 +00007775// X86_64:#define __INTMAX_TYPE__ long int
Ken Dyckc0c98292009-11-18 13:52:57 +00007776// X86_64:#define __INTMAX_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007777// X86_64:#define __INTPTR_FMTd__ "ld"
7778// X86_64:#define __INTPTR_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00007779// X86_64:#define __INTPTR_MAX__ 9223372036854775807L
Ken Dyck9b25f782009-11-19 13:18:59 +00007780// X86_64:#define __INTPTR_TYPE__ long int
Ken Dyck24cfcf12009-11-18 20:05:48 +00007781// X86_64:#define __INTPTR_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007782// X86_64:#define __INT_FAST16_FMTd__ "hd"
7783// X86_64:#define __INT_FAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00007784// X86_64:#define __INT_FAST16_MAX__ 32767
7785// X86_64:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007786// X86_64:#define __INT_FAST32_FMTd__ "d"
7787// X86_64:#define __INT_FAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00007788// X86_64:#define __INT_FAST32_MAX__ 2147483647
7789// X86_64:#define __INT_FAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007790// X86_64:#define __INT_FAST64_FMTd__ "ld"
7791// X86_64:#define __INT_FAST64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00007792// X86_64:#define __INT_FAST64_MAX__ 9223372036854775807L
7793// X86_64:#define __INT_FAST64_TYPE__ long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007794// X86_64:#define __INT_FAST8_FMTd__ "hhd"
7795// X86_64:#define __INT_FAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00007796// X86_64:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00007797// X86_64:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007798// X86_64:#define __INT_LEAST16_FMTd__ "hd"
7799// X86_64:#define __INT_LEAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00007800// X86_64:#define __INT_LEAST16_MAX__ 32767
7801// X86_64:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007802// X86_64:#define __INT_LEAST32_FMTd__ "d"
7803// X86_64:#define __INT_LEAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00007804// X86_64:#define __INT_LEAST32_MAX__ 2147483647
7805// X86_64:#define __INT_LEAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007806// X86_64:#define __INT_LEAST64_FMTd__ "ld"
7807// X86_64:#define __INT_LEAST64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00007808// X86_64:#define __INT_LEAST64_MAX__ 9223372036854775807L
7809// X86_64:#define __INT_LEAST64_TYPE__ long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007810// X86_64:#define __INT_LEAST8_FMTd__ "hhd"
7811// X86_64:#define __INT_LEAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00007812// X86_64:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00007813// X86_64:#define __INT_LEAST8_TYPE__ signed char
Chris Lattnere963d092009-10-29 04:55:36 +00007814// X86_64:#define __INT_MAX__ 2147483647
7815// X86_64:#define __LDBL_DENORM_MIN__ 3.64519953188247460253e-4951L
7816// X86_64:#define __LDBL_DIG__ 18
7817// X86_64:#define __LDBL_EPSILON__ 1.08420217248550443401e-19L
7818// X86_64:#define __LDBL_HAS_DENORM__ 1
7819// X86_64:#define __LDBL_HAS_INFINITY__ 1
7820// X86_64:#define __LDBL_HAS_QUIET_NAN__ 1
7821// X86_64:#define __LDBL_MANT_DIG__ 64
7822// X86_64:#define __LDBL_MAX_10_EXP__ 4932
7823// X86_64:#define __LDBL_MAX_EXP__ 16384
7824// X86_64:#define __LDBL_MAX__ 1.18973149535723176502e+4932L
7825// X86_64:#define __LDBL_MIN_10_EXP__ (-4931)
7826// X86_64:#define __LDBL_MIN_EXP__ (-16381)
7827// X86_64:#define __LDBL_MIN__ 3.36210314311209350626e-4932L
7828// X86_64:#define __LITTLE_ENDIAN__ 1
7829// X86_64:#define __LONG_LONG_MAX__ 9223372036854775807LL
7830// X86_64:#define __LONG_MAX__ 9223372036854775807L
7831// X86_64:#define __LP64__ 1
Pavel Chupin3362c5f2014-07-14 09:58:10 +00007832// X86_64-NOT:#define __ILP32__ 1
Chris Lattnere963d092009-10-29 04:55:36 +00007833// X86_64:#define __MMX__ 1
Chris Lattnere963d092009-10-29 04:55:36 +00007834// X86_64:#define __NO_MATH_INLINES 1
7835// X86_64:#define __POINTER_WIDTH__ 64
Ken Dyck9b25f782009-11-19 13:18:59 +00007836// X86_64:#define __PTRDIFF_TYPE__ long int
Ken Dyck056efe02009-11-19 12:21:52 +00007837// X86_64:#define __PTRDIFF_WIDTH__ 64
James Y Knightc97efa42016-02-11 16:51:29 +00007838// X86_64:#define __REGISTER_PREFIX__
Chris Lattnere963d092009-10-29 04:55:36 +00007839// X86_64:#define __SCHAR_MAX__ 127
7840// X86_64:#define __SHRT_MAX__ 32767
Joerg Sonnenbergerb3a49692014-07-17 18:31:20 +00007841// X86_64:#define __SIG_ATOMIC_MAX__ 2147483647
Ken Dyckadc85112009-11-22 15:41:04 +00007842// X86_64:#define __SIG_ATOMIC_WIDTH__ 32
Dan Gohman04f87202010-05-28 00:27:15 +00007843// X86_64:#define __SIZEOF_DOUBLE__ 8
7844// X86_64:#define __SIZEOF_FLOAT__ 4
7845// X86_64:#define __SIZEOF_INT__ 4
7846// X86_64:#define __SIZEOF_LONG_DOUBLE__ 16
7847// X86_64:#define __SIZEOF_LONG_LONG__ 8
7848// X86_64:#define __SIZEOF_LONG__ 8
7849// X86_64:#define __SIZEOF_POINTER__ 8
7850// X86_64:#define __SIZEOF_PTRDIFF_T__ 8
7851// X86_64:#define __SIZEOF_SHORT__ 2
7852// X86_64:#define __SIZEOF_SIZE_T__ 8
7853// X86_64:#define __SIZEOF_WCHAR_T__ 4
7854// X86_64:#define __SIZEOF_WINT_T__ 4
Evgeniy Stepanovc3c725a2013-03-28 08:36:54 +00007855// X86_64:#define __SIZE_MAX__ 18446744073709551615UL
Chris Lattnere963d092009-10-29 04:55:36 +00007856// X86_64:#define __SIZE_TYPE__ long unsigned int
Ken Dyck57512862009-11-19 13:42:09 +00007857// X86_64:#define __SIZE_WIDTH__ 64
Chris Lattnere963d092009-10-29 04:55:36 +00007858// X86_64:#define __SSE2_MATH__ 1
7859// X86_64:#define __SSE2__ 1
7860// X86_64:#define __SSE_MATH__ 1
7861// X86_64:#define __SSE__ 1
Richard Smith59139022016-09-30 22:41:36 +00007862// X86_64-CXX:#define __STDCPP_DEFAULT_NEW_ALIGNMENT__ 16UL
James Y Knightc97efa42016-02-11 16:51:29 +00007863// X86_64:#define __UINT16_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00007864// X86_64:#define __UINT16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00007865// X86_64:#define __UINT16_TYPE__ unsigned short
7866// X86_64:#define __UINT32_C_SUFFIX__ U
7867// X86_64:#define __UINT32_MAX__ 4294967295U
7868// X86_64:#define __UINT32_TYPE__ unsigned int
7869// X86_64:#define __UINT64_C_SUFFIX__ UL
7870// X86_64:#define __UINT64_MAX__ 18446744073709551615UL
7871// X86_64:#define __UINT64_TYPE__ long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00007872// X86_64:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00007873// X86_64:#define __UINT8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00007874// X86_64:#define __UINT8_TYPE__ unsigned char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00007875// X86_64:#define __UINTMAX_C_SUFFIX__ UL
JF Bastienab8d0a02014-06-25 01:31:33 +00007876// X86_64:#define __UINTMAX_MAX__ 18446744073709551615UL
Ken Dyck9b25f782009-11-19 13:18:59 +00007877// X86_64:#define __UINTMAX_TYPE__ long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00007878// X86_64:#define __UINTMAX_WIDTH__ 64
7879// X86_64:#define __UINTPTR_MAX__ 18446744073709551615UL
7880// X86_64:#define __UINTPTR_TYPE__ long unsigned int
7881// X86_64:#define __UINTPTR_WIDTH__ 64
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00007882// X86_64:#define __UINT_FAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00007883// X86_64:#define __UINT_FAST16_TYPE__ unsigned short
7884// X86_64:#define __UINT_FAST32_MAX__ 4294967295U
7885// X86_64:#define __UINT_FAST32_TYPE__ unsigned int
7886// X86_64:#define __UINT_FAST64_MAX__ 18446744073709551615UL
7887// X86_64:#define __UINT_FAST64_TYPE__ long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00007888// X86_64:#define __UINT_FAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00007889// X86_64:#define __UINT_FAST8_TYPE__ unsigned char
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00007890// X86_64:#define __UINT_LEAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00007891// X86_64:#define __UINT_LEAST16_TYPE__ unsigned short
7892// X86_64:#define __UINT_LEAST32_MAX__ 4294967295U
7893// X86_64:#define __UINT_LEAST32_TYPE__ unsigned int
7894// X86_64:#define __UINT_LEAST64_MAX__ 18446744073709551615UL
7895// X86_64:#define __UINT_LEAST64_TYPE__ long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00007896// X86_64:#define __UINT_LEAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00007897// X86_64:#define __UINT_LEAST8_TYPE__ unsigned char
James Y Knightb214cbc2016-03-04 19:00:41 +00007898// X86_64:#define __USER_LABEL_PREFIX__
Chris Lattnere963d092009-10-29 04:55:36 +00007899// X86_64:#define __WCHAR_MAX__ 2147483647
7900// X86_64:#define __WCHAR_TYPE__ int
Ken Dyck0138b9e2009-11-19 15:47:58 +00007901// X86_64:#define __WCHAR_WIDTH__ 32
Chris Lattnere963d092009-10-29 04:55:36 +00007902// X86_64:#define __WINT_TYPE__ int
Ken Dycka1f677c2009-11-19 14:16:57 +00007903// X86_64:#define __WINT_WIDTH__ 32
Chris Lattnere963d092009-10-29 04:55:36 +00007904// X86_64:#define __amd64 1
7905// X86_64:#define __amd64__ 1
Chris Lattnere963d092009-10-29 04:55:36 +00007906// X86_64:#define __x86_64 1
7907// X86_64:#define __x86_64__ 1
7908//
James Y Knightc97efa42016-02-11 16:51:29 +00007909// 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 +00007910//
7911// X86_64H:#define __x86_64 1
7912// X86_64H:#define __x86_64__ 1
7913// X86_64H:#define __x86_64h 1
7914// X86_64H:#define __x86_64h__ 1
7915
James Y Knightc97efa42016-02-11 16:51:29 +00007916// RUN: %clang_cc1 -E -dM -ffreestanding -triple=x86_64-none-none-gnux32 < /dev/null | FileCheck -match-full-lines -check-prefix X32 %s
Richard Smith59139022016-09-30 22:41:36 +00007917// RUN: %clang_cc1 -x c++ -E -dM -ffreestanding -triple=x86_64-none-none-gnux32 < /dev/null | FileCheck -match-full-lines -check-prefix X32 -check-prefix X32-CXX %s
Pavel Chupin3362c5f2014-07-14 09:58:10 +00007918//
7919// X32:#define _ILP32 1
7920// X32-NOT:#define _LP64 1
Tim Northovera6a19f12015-02-06 01:25:07 +00007921// X32:#define __BIGGEST_ALIGNMENT__ 16
Pavel Chupin3362c5f2014-07-14 09:58:10 +00007922// X32:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
7923// X32:#define __CHAR16_TYPE__ unsigned short
7924// X32:#define __CHAR32_TYPE__ unsigned int
7925// X32:#define __CHAR_BIT__ 8
7926// X32:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
7927// X32:#define __DBL_DIG__ 15
7928// X32:#define __DBL_EPSILON__ 2.2204460492503131e-16
7929// X32:#define __DBL_HAS_DENORM__ 1
7930// X32:#define __DBL_HAS_INFINITY__ 1
7931// X32:#define __DBL_HAS_QUIET_NAN__ 1
7932// X32:#define __DBL_MANT_DIG__ 53
7933// X32:#define __DBL_MAX_10_EXP__ 308
7934// X32:#define __DBL_MAX_EXP__ 1024
7935// X32:#define __DBL_MAX__ 1.7976931348623157e+308
7936// X32:#define __DBL_MIN_10_EXP__ (-307)
7937// X32:#define __DBL_MIN_EXP__ (-1021)
7938// X32:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00007939// X32:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Pavel Chupin3362c5f2014-07-14 09:58:10 +00007940// X32:#define __FLT_DENORM_MIN__ 1.40129846e-45F
7941// X32:#define __FLT_DIG__ 6
7942// X32:#define __FLT_EPSILON__ 1.19209290e-7F
7943// X32:#define __FLT_EVAL_METHOD__ 0
7944// X32:#define __FLT_HAS_DENORM__ 1
7945// X32:#define __FLT_HAS_INFINITY__ 1
7946// X32:#define __FLT_HAS_QUIET_NAN__ 1
7947// X32:#define __FLT_MANT_DIG__ 24
7948// X32:#define __FLT_MAX_10_EXP__ 38
7949// X32:#define __FLT_MAX_EXP__ 128
7950// X32:#define __FLT_MAX__ 3.40282347e+38F
7951// X32:#define __FLT_MIN_10_EXP__ (-37)
7952// X32:#define __FLT_MIN_EXP__ (-125)
7953// X32:#define __FLT_MIN__ 1.17549435e-38F
7954// X32:#define __FLT_RADIX__ 2
7955// X32:#define __ILP32__ 1
7956// X32-NOT:#define __LP64__ 1
James Y Knightc97efa42016-02-11 16:51:29 +00007957// X32:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007958// X32:#define __INT16_FMTd__ "hd"
7959// X32:#define __INT16_FMTi__ "hi"
Pavel Chupin3362c5f2014-07-14 09:58:10 +00007960// X32:#define __INT16_MAX__ 32767
7961// X32:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +00007962// X32:#define __INT32_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007963// X32:#define __INT32_FMTd__ "d"
7964// X32:#define __INT32_FMTi__ "i"
Pavel Chupin3362c5f2014-07-14 09:58:10 +00007965// X32:#define __INT32_MAX__ 2147483647
7966// X32:#define __INT32_TYPE__ int
James Y Knightc97efa42016-02-11 16:51:29 +00007967// X32:#define __INT64_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007968// X32:#define __INT64_FMTd__ "lld"
7969// X32:#define __INT64_FMTi__ "lli"
James Y Knightc97efa42016-02-11 16:51:29 +00007970// X32:#define __INT64_MAX__ 9223372036854775807LL
Pavel Chupin3362c5f2014-07-14 09:58:10 +00007971// X32:#define __INT64_TYPE__ long long int
James Y Knightc97efa42016-02-11 16:51:29 +00007972// X32:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007973// X32:#define __INT8_FMTd__ "hhd"
7974// X32:#define __INT8_FMTi__ "hhi"
Pavel Chupin3362c5f2014-07-14 09:58:10 +00007975// X32:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00007976// X32:#define __INT8_TYPE__ signed char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00007977// X32:#define __INTMAX_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007978// X32:#define __INTMAX_FMTd__ "lld"
7979// X32:#define __INTMAX_FMTi__ "lli"
James Y Knightc97efa42016-02-11 16:51:29 +00007980// X32:#define __INTMAX_MAX__ 9223372036854775807LL
Pavel Chupin3362c5f2014-07-14 09:58:10 +00007981// X32:#define __INTMAX_TYPE__ long long int
7982// X32:#define __INTMAX_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007983// X32:#define __INTPTR_FMTd__ "d"
7984// X32:#define __INTPTR_FMTi__ "i"
Pavel Chupin3362c5f2014-07-14 09:58:10 +00007985// X32:#define __INTPTR_MAX__ 2147483647
7986// X32:#define __INTPTR_TYPE__ int
7987// X32:#define __INTPTR_WIDTH__ 32
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007988// X32:#define __INT_FAST16_FMTd__ "hd"
7989// X32:#define __INT_FAST16_FMTi__ "hi"
Pavel Chupin3362c5f2014-07-14 09:58:10 +00007990// X32:#define __INT_FAST16_MAX__ 32767
7991// X32:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007992// X32:#define __INT_FAST32_FMTd__ "d"
7993// X32:#define __INT_FAST32_FMTi__ "i"
Pavel Chupin3362c5f2014-07-14 09:58:10 +00007994// X32:#define __INT_FAST32_MAX__ 2147483647
7995// X32:#define __INT_FAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007996// X32:#define __INT_FAST64_FMTd__ "lld"
7997// X32:#define __INT_FAST64_FMTi__ "lli"
James Y Knightc97efa42016-02-11 16:51:29 +00007998// X32:#define __INT_FAST64_MAX__ 9223372036854775807LL
Pavel Chupin3362c5f2014-07-14 09:58:10 +00007999// X32:#define __INT_FAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00008000// X32:#define __INT_FAST8_FMTd__ "hhd"
8001// X32:#define __INT_FAST8_FMTi__ "hhi"
Pavel Chupin3362c5f2014-07-14 09:58:10 +00008002// X32:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00008003// X32:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00008004// X32:#define __INT_LEAST16_FMTd__ "hd"
8005// X32:#define __INT_LEAST16_FMTi__ "hi"
Pavel Chupin3362c5f2014-07-14 09:58:10 +00008006// X32:#define __INT_LEAST16_MAX__ 32767
8007// X32:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00008008// X32:#define __INT_LEAST32_FMTd__ "d"
8009// X32:#define __INT_LEAST32_FMTi__ "i"
Pavel Chupin3362c5f2014-07-14 09:58:10 +00008010// X32:#define __INT_LEAST32_MAX__ 2147483647
8011// X32:#define __INT_LEAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00008012// X32:#define __INT_LEAST64_FMTd__ "lld"
8013// X32:#define __INT_LEAST64_FMTi__ "lli"
James Y Knightc97efa42016-02-11 16:51:29 +00008014// X32:#define __INT_LEAST64_MAX__ 9223372036854775807LL
Pavel Chupin3362c5f2014-07-14 09:58:10 +00008015// X32:#define __INT_LEAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00008016// X32:#define __INT_LEAST8_FMTd__ "hhd"
8017// X32:#define __INT_LEAST8_FMTi__ "hhi"
Pavel Chupin3362c5f2014-07-14 09:58:10 +00008018// X32:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00008019// X32:#define __INT_LEAST8_TYPE__ signed char
Pavel Chupin3362c5f2014-07-14 09:58:10 +00008020// X32:#define __INT_MAX__ 2147483647
8021// X32:#define __LDBL_DENORM_MIN__ 3.64519953188247460253e-4951L
8022// X32:#define __LDBL_DIG__ 18
8023// X32:#define __LDBL_EPSILON__ 1.08420217248550443401e-19L
8024// X32:#define __LDBL_HAS_DENORM__ 1
8025// X32:#define __LDBL_HAS_INFINITY__ 1
8026// X32:#define __LDBL_HAS_QUIET_NAN__ 1
8027// X32:#define __LDBL_MANT_DIG__ 64
8028// X32:#define __LDBL_MAX_10_EXP__ 4932
8029// X32:#define __LDBL_MAX_EXP__ 16384
8030// X32:#define __LDBL_MAX__ 1.18973149535723176502e+4932L
8031// X32:#define __LDBL_MIN_10_EXP__ (-4931)
8032// X32:#define __LDBL_MIN_EXP__ (-16381)
8033// X32:#define __LDBL_MIN__ 3.36210314311209350626e-4932L
8034// X32:#define __LITTLE_ENDIAN__ 1
8035// X32:#define __LONG_LONG_MAX__ 9223372036854775807LL
8036// X32:#define __LONG_MAX__ 2147483647L
8037// X32:#define __MMX__ 1
8038// X32:#define __NO_MATH_INLINES 1
8039// X32:#define __POINTER_WIDTH__ 32
8040// X32:#define __PTRDIFF_TYPE__ int
8041// X32:#define __PTRDIFF_WIDTH__ 32
James Y Knightc97efa42016-02-11 16:51:29 +00008042// X32:#define __REGISTER_PREFIX__
Pavel Chupin3362c5f2014-07-14 09:58:10 +00008043// X32:#define __SCHAR_MAX__ 127
8044// X32:#define __SHRT_MAX__ 32767
Joerg Sonnenbergerb3a49692014-07-17 18:31:20 +00008045// X32:#define __SIG_ATOMIC_MAX__ 2147483647
Pavel Chupin3362c5f2014-07-14 09:58:10 +00008046// X32:#define __SIG_ATOMIC_WIDTH__ 32
8047// X32:#define __SIZEOF_DOUBLE__ 8
8048// X32:#define __SIZEOF_FLOAT__ 4
8049// X32:#define __SIZEOF_INT__ 4
8050// X32:#define __SIZEOF_LONG_DOUBLE__ 16
8051// X32:#define __SIZEOF_LONG_LONG__ 8
8052// X32:#define __SIZEOF_LONG__ 4
8053// X32:#define __SIZEOF_POINTER__ 4
8054// X32:#define __SIZEOF_PTRDIFF_T__ 4
8055// X32:#define __SIZEOF_SHORT__ 2
8056// X32:#define __SIZEOF_SIZE_T__ 4
8057// X32:#define __SIZEOF_WCHAR_T__ 4
8058// X32:#define __SIZEOF_WINT_T__ 4
8059// X32:#define __SIZE_MAX__ 4294967295U
8060// X32:#define __SIZE_TYPE__ unsigned int
8061// X32:#define __SIZE_WIDTH__ 32
8062// X32:#define __SSE2_MATH__ 1
8063// X32:#define __SSE2__ 1
8064// X32:#define __SSE_MATH__ 1
8065// X32:#define __SSE__ 1
Richard Smith59139022016-09-30 22:41:36 +00008066// X32-CXX:#define __STDCPP_DEFAULT_NEW_ALIGNMENT__ 16U
James Y Knightc97efa42016-02-11 16:51:29 +00008067// X32:#define __UINT16_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00008068// X32:#define __UINT16_MAX__ 65535
Pavel Chupin3362c5f2014-07-14 09:58:10 +00008069// X32:#define __UINT16_TYPE__ unsigned short
8070// X32:#define __UINT32_C_SUFFIX__ U
8071// X32:#define __UINT32_MAX__ 4294967295U
8072// X32:#define __UINT32_TYPE__ unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00008073// X32:#define __UINT64_C_SUFFIX__ ULL
Pavel Chupin3362c5f2014-07-14 09:58:10 +00008074// X32:#define __UINT64_MAX__ 18446744073709551615ULL
8075// X32:#define __UINT64_TYPE__ long long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00008076// X32:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00008077// X32:#define __UINT8_MAX__ 255
Pavel Chupin3362c5f2014-07-14 09:58:10 +00008078// X32:#define __UINT8_TYPE__ unsigned char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00008079// X32:#define __UINTMAX_C_SUFFIX__ ULL
Pavel Chupin3362c5f2014-07-14 09:58:10 +00008080// X32:#define __UINTMAX_MAX__ 18446744073709551615ULL
8081// X32:#define __UINTMAX_TYPE__ long long unsigned int
8082// X32:#define __UINTMAX_WIDTH__ 64
8083// X32:#define __UINTPTR_MAX__ 4294967295U
8084// X32:#define __UINTPTR_TYPE__ unsigned int
8085// X32:#define __UINTPTR_WIDTH__ 32
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00008086// X32:#define __UINT_FAST16_MAX__ 65535
Pavel Chupin3362c5f2014-07-14 09:58:10 +00008087// X32:#define __UINT_FAST16_TYPE__ unsigned short
8088// X32:#define __UINT_FAST32_MAX__ 4294967295U
8089// X32:#define __UINT_FAST32_TYPE__ unsigned int
8090// X32:#define __UINT_FAST64_MAX__ 18446744073709551615ULL
8091// X32:#define __UINT_FAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00008092// X32:#define __UINT_FAST8_MAX__ 255
Pavel Chupin3362c5f2014-07-14 09:58:10 +00008093// X32:#define __UINT_FAST8_TYPE__ unsigned char
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00008094// X32:#define __UINT_LEAST16_MAX__ 65535
Pavel Chupin3362c5f2014-07-14 09:58:10 +00008095// X32:#define __UINT_LEAST16_TYPE__ unsigned short
8096// X32:#define __UINT_LEAST32_MAX__ 4294967295U
8097// X32:#define __UINT_LEAST32_TYPE__ unsigned int
8098// X32:#define __UINT_LEAST64_MAX__ 18446744073709551615ULL
8099// X32:#define __UINT_LEAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00008100// X32:#define __UINT_LEAST8_MAX__ 255
Pavel Chupin3362c5f2014-07-14 09:58:10 +00008101// X32:#define __UINT_LEAST8_TYPE__ unsigned char
James Y Knightb214cbc2016-03-04 19:00:41 +00008102// X32:#define __USER_LABEL_PREFIX__
Pavel Chupin3362c5f2014-07-14 09:58:10 +00008103// X32:#define __WCHAR_MAX__ 2147483647
8104// X32:#define __WCHAR_TYPE__ int
8105// X32:#define __WCHAR_WIDTH__ 32
8106// X32:#define __WINT_TYPE__ int
8107// X32:#define __WINT_WIDTH__ 32
8108// X32:#define __amd64 1
8109// X32:#define __amd64__ 1
8110// X32:#define __x86_64 1
8111// X32:#define __x86_64__ 1
8112//
James Y Knightc97efa42016-02-11 16:51:29 +00008113// 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 +00008114//
8115// X86_64-CLOUDABI:#define _LP64 1
8116// X86_64-CLOUDABI:#define __ATOMIC_ACQUIRE 2
8117// X86_64-CLOUDABI:#define __ATOMIC_ACQ_REL 4
8118// X86_64-CLOUDABI:#define __ATOMIC_CONSUME 1
8119// X86_64-CLOUDABI:#define __ATOMIC_RELAXED 0
8120// X86_64-CLOUDABI:#define __ATOMIC_RELEASE 3
8121// X86_64-CLOUDABI:#define __ATOMIC_SEQ_CST 5
8122// X86_64-CLOUDABI:#define __BIGGEST_ALIGNMENT__ 16
8123// X86_64-CLOUDABI:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
8124// X86_64-CLOUDABI:#define __CHAR16_TYPE__ unsigned short
8125// X86_64-CLOUDABI:#define __CHAR32_TYPE__ unsigned int
8126// X86_64-CLOUDABI:#define __CHAR_BIT__ 8
8127// X86_64-CLOUDABI:#define __CONSTANT_CFSTRINGS__ 1
8128// X86_64-CLOUDABI:#define __CloudABI__ 1
8129// X86_64-CLOUDABI:#define __DBL_DECIMAL_DIG__ 17
8130// X86_64-CLOUDABI:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
8131// X86_64-CLOUDABI:#define __DBL_DIG__ 15
8132// X86_64-CLOUDABI:#define __DBL_EPSILON__ 2.2204460492503131e-16
8133// X86_64-CLOUDABI:#define __DBL_HAS_DENORM__ 1
8134// X86_64-CLOUDABI:#define __DBL_HAS_INFINITY__ 1
8135// X86_64-CLOUDABI:#define __DBL_HAS_QUIET_NAN__ 1
8136// X86_64-CLOUDABI:#define __DBL_MANT_DIG__ 53
8137// X86_64-CLOUDABI:#define __DBL_MAX_10_EXP__ 308
8138// X86_64-CLOUDABI:#define __DBL_MAX_EXP__ 1024
8139// X86_64-CLOUDABI:#define __DBL_MAX__ 1.7976931348623157e+308
8140// X86_64-CLOUDABI:#define __DBL_MIN_10_EXP__ (-307)
8141// X86_64-CLOUDABI:#define __DBL_MIN_EXP__ (-1021)
8142// X86_64-CLOUDABI:#define __DBL_MIN__ 2.2250738585072014e-308
8143// X86_64-CLOUDABI:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
8144// X86_64-CLOUDABI:#define __ELF__ 1
8145// X86_64-CLOUDABI:#define __FINITE_MATH_ONLY__ 0
8146// X86_64-CLOUDABI:#define __FLT_DECIMAL_DIG__ 9
8147// X86_64-CLOUDABI:#define __FLT_DENORM_MIN__ 1.40129846e-45F
8148// X86_64-CLOUDABI:#define __FLT_DIG__ 6
8149// X86_64-CLOUDABI:#define __FLT_EPSILON__ 1.19209290e-7F
8150// X86_64-CLOUDABI:#define __FLT_EVAL_METHOD__ 0
8151// X86_64-CLOUDABI:#define __FLT_HAS_DENORM__ 1
8152// X86_64-CLOUDABI:#define __FLT_HAS_INFINITY__ 1
8153// X86_64-CLOUDABI:#define __FLT_HAS_QUIET_NAN__ 1
8154// X86_64-CLOUDABI:#define __FLT_MANT_DIG__ 24
8155// X86_64-CLOUDABI:#define __FLT_MAX_10_EXP__ 38
8156// X86_64-CLOUDABI:#define __FLT_MAX_EXP__ 128
8157// X86_64-CLOUDABI:#define __FLT_MAX__ 3.40282347e+38F
8158// X86_64-CLOUDABI:#define __FLT_MIN_10_EXP__ (-37)
8159// X86_64-CLOUDABI:#define __FLT_MIN_EXP__ (-125)
8160// X86_64-CLOUDABI:#define __FLT_MIN__ 1.17549435e-38F
8161// X86_64-CLOUDABI:#define __FLT_RADIX__ 2
8162// X86_64-CLOUDABI:#define __GCC_ATOMIC_BOOL_LOCK_FREE 2
8163// X86_64-CLOUDABI:#define __GCC_ATOMIC_CHAR16_T_LOCK_FREE 2
8164// X86_64-CLOUDABI:#define __GCC_ATOMIC_CHAR32_T_LOCK_FREE 2
8165// X86_64-CLOUDABI:#define __GCC_ATOMIC_CHAR_LOCK_FREE 2
8166// X86_64-CLOUDABI:#define __GCC_ATOMIC_INT_LOCK_FREE 2
8167// X86_64-CLOUDABI:#define __GCC_ATOMIC_LLONG_LOCK_FREE 2
8168// X86_64-CLOUDABI:#define __GCC_ATOMIC_LONG_LOCK_FREE 2
8169// X86_64-CLOUDABI:#define __GCC_ATOMIC_POINTER_LOCK_FREE 2
8170// X86_64-CLOUDABI:#define __GCC_ATOMIC_SHORT_LOCK_FREE 2
8171// X86_64-CLOUDABI:#define __GCC_ATOMIC_TEST_AND_SET_TRUEVAL 1
8172// X86_64-CLOUDABI:#define __GCC_ATOMIC_WCHAR_T_LOCK_FREE 2
8173// X86_64-CLOUDABI:#define __GNUC_MINOR__ 2
8174// X86_64-CLOUDABI:#define __GNUC_PATCHLEVEL__ 1
8175// X86_64-CLOUDABI:#define __GNUC_STDC_INLINE__ 1
8176// X86_64-CLOUDABI:#define __GNUC__ 4
8177// X86_64-CLOUDABI:#define __GXX_ABI_VERSION 1002
James Y Knightc97efa42016-02-11 16:51:29 +00008178// X86_64-CLOUDABI:#define __INT16_C_SUFFIX__
Ed Schoutenf33c6072015-03-11 08:42:46 +00008179// X86_64-CLOUDABI:#define __INT16_FMTd__ "hd"
8180// X86_64-CLOUDABI:#define __INT16_FMTi__ "hi"
8181// X86_64-CLOUDABI:#define __INT16_MAX__ 32767
8182// X86_64-CLOUDABI:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +00008183// X86_64-CLOUDABI:#define __INT32_C_SUFFIX__
Ed Schoutenf33c6072015-03-11 08:42:46 +00008184// X86_64-CLOUDABI:#define __INT32_FMTd__ "d"
8185// X86_64-CLOUDABI:#define __INT32_FMTi__ "i"
8186// X86_64-CLOUDABI:#define __INT32_MAX__ 2147483647
8187// X86_64-CLOUDABI:#define __INT32_TYPE__ int
8188// X86_64-CLOUDABI:#define __INT64_C_SUFFIX__ L
8189// X86_64-CLOUDABI:#define __INT64_FMTd__ "ld"
8190// X86_64-CLOUDABI:#define __INT64_FMTi__ "li"
8191// X86_64-CLOUDABI:#define __INT64_MAX__ 9223372036854775807L
8192// X86_64-CLOUDABI:#define __INT64_TYPE__ long int
James Y Knightc97efa42016-02-11 16:51:29 +00008193// X86_64-CLOUDABI:#define __INT8_C_SUFFIX__
Ed Schoutenf33c6072015-03-11 08:42:46 +00008194// X86_64-CLOUDABI:#define __INT8_FMTd__ "hhd"
8195// X86_64-CLOUDABI:#define __INT8_FMTi__ "hhi"
8196// X86_64-CLOUDABI:#define __INT8_MAX__ 127
8197// X86_64-CLOUDABI:#define __INT8_TYPE__ signed char
8198// X86_64-CLOUDABI:#define __INTMAX_C_SUFFIX__ L
8199// X86_64-CLOUDABI:#define __INTMAX_FMTd__ "ld"
8200// X86_64-CLOUDABI:#define __INTMAX_FMTi__ "li"
8201// X86_64-CLOUDABI:#define __INTMAX_MAX__ 9223372036854775807L
8202// X86_64-CLOUDABI:#define __INTMAX_TYPE__ long int
8203// X86_64-CLOUDABI:#define __INTMAX_WIDTH__ 64
8204// X86_64-CLOUDABI:#define __INTPTR_FMTd__ "ld"
8205// X86_64-CLOUDABI:#define __INTPTR_FMTi__ "li"
8206// X86_64-CLOUDABI:#define __INTPTR_MAX__ 9223372036854775807L
8207// X86_64-CLOUDABI:#define __INTPTR_TYPE__ long int
8208// X86_64-CLOUDABI:#define __INTPTR_WIDTH__ 64
8209// X86_64-CLOUDABI:#define __INT_FAST16_FMTd__ "hd"
8210// X86_64-CLOUDABI:#define __INT_FAST16_FMTi__ "hi"
8211// X86_64-CLOUDABI:#define __INT_FAST16_MAX__ 32767
8212// X86_64-CLOUDABI:#define __INT_FAST16_TYPE__ short
8213// X86_64-CLOUDABI:#define __INT_FAST32_FMTd__ "d"
8214// X86_64-CLOUDABI:#define __INT_FAST32_FMTi__ "i"
8215// X86_64-CLOUDABI:#define __INT_FAST32_MAX__ 2147483647
8216// X86_64-CLOUDABI:#define __INT_FAST32_TYPE__ int
8217// X86_64-CLOUDABI:#define __INT_FAST64_FMTd__ "ld"
8218// X86_64-CLOUDABI:#define __INT_FAST64_FMTi__ "li"
8219// X86_64-CLOUDABI:#define __INT_FAST64_MAX__ 9223372036854775807L
8220// X86_64-CLOUDABI:#define __INT_FAST64_TYPE__ long int
8221// X86_64-CLOUDABI:#define __INT_FAST8_FMTd__ "hhd"
8222// X86_64-CLOUDABI:#define __INT_FAST8_FMTi__ "hhi"
8223// X86_64-CLOUDABI:#define __INT_FAST8_MAX__ 127
8224// X86_64-CLOUDABI:#define __INT_FAST8_TYPE__ signed char
8225// X86_64-CLOUDABI:#define __INT_LEAST16_FMTd__ "hd"
8226// X86_64-CLOUDABI:#define __INT_LEAST16_FMTi__ "hi"
8227// X86_64-CLOUDABI:#define __INT_LEAST16_MAX__ 32767
8228// X86_64-CLOUDABI:#define __INT_LEAST16_TYPE__ short
8229// X86_64-CLOUDABI:#define __INT_LEAST32_FMTd__ "d"
8230// X86_64-CLOUDABI:#define __INT_LEAST32_FMTi__ "i"
8231// X86_64-CLOUDABI:#define __INT_LEAST32_MAX__ 2147483647
8232// X86_64-CLOUDABI:#define __INT_LEAST32_TYPE__ int
8233// X86_64-CLOUDABI:#define __INT_LEAST64_FMTd__ "ld"
8234// X86_64-CLOUDABI:#define __INT_LEAST64_FMTi__ "li"
8235// X86_64-CLOUDABI:#define __INT_LEAST64_MAX__ 9223372036854775807L
8236// X86_64-CLOUDABI:#define __INT_LEAST64_TYPE__ long int
8237// X86_64-CLOUDABI:#define __INT_LEAST8_FMTd__ "hhd"
8238// X86_64-CLOUDABI:#define __INT_LEAST8_FMTi__ "hhi"
8239// X86_64-CLOUDABI:#define __INT_LEAST8_MAX__ 127
8240// X86_64-CLOUDABI:#define __INT_LEAST8_TYPE__ signed char
8241// X86_64-CLOUDABI:#define __INT_MAX__ 2147483647
8242// X86_64-CLOUDABI:#define __LDBL_DECIMAL_DIG__ 21
8243// X86_64-CLOUDABI:#define __LDBL_DENORM_MIN__ 3.64519953188247460253e-4951L
8244// X86_64-CLOUDABI:#define __LDBL_DIG__ 18
8245// X86_64-CLOUDABI:#define __LDBL_EPSILON__ 1.08420217248550443401e-19L
8246// X86_64-CLOUDABI:#define __LDBL_HAS_DENORM__ 1
8247// X86_64-CLOUDABI:#define __LDBL_HAS_INFINITY__ 1
8248// X86_64-CLOUDABI:#define __LDBL_HAS_QUIET_NAN__ 1
8249// X86_64-CLOUDABI:#define __LDBL_MANT_DIG__ 64
8250// X86_64-CLOUDABI:#define __LDBL_MAX_10_EXP__ 4932
8251// X86_64-CLOUDABI:#define __LDBL_MAX_EXP__ 16384
8252// X86_64-CLOUDABI:#define __LDBL_MAX__ 1.18973149535723176502e+4932L
8253// X86_64-CLOUDABI:#define __LDBL_MIN_10_EXP__ (-4931)
8254// X86_64-CLOUDABI:#define __LDBL_MIN_EXP__ (-16381)
8255// X86_64-CLOUDABI:#define __LDBL_MIN__ 3.36210314311209350626e-4932L
8256// X86_64-CLOUDABI:#define __LITTLE_ENDIAN__ 1
8257// X86_64-CLOUDABI:#define __LONG_LONG_MAX__ 9223372036854775807LL
8258// X86_64-CLOUDABI:#define __LONG_MAX__ 9223372036854775807L
8259// X86_64-CLOUDABI:#define __LP64__ 1
8260// X86_64-CLOUDABI:#define __MMX__ 1
8261// X86_64-CLOUDABI:#define __NO_INLINE__ 1
8262// X86_64-CLOUDABI:#define __NO_MATH_INLINES 1
8263// X86_64-CLOUDABI:#define __ORDER_BIG_ENDIAN__ 4321
8264// X86_64-CLOUDABI:#define __ORDER_LITTLE_ENDIAN__ 1234
8265// X86_64-CLOUDABI:#define __ORDER_PDP_ENDIAN__ 3412
8266// X86_64-CLOUDABI:#define __POINTER_WIDTH__ 64
8267// X86_64-CLOUDABI:#define __PRAGMA_REDEFINE_EXTNAME 1
8268// X86_64-CLOUDABI:#define __PTRDIFF_FMTd__ "ld"
8269// X86_64-CLOUDABI:#define __PTRDIFF_FMTi__ "li"
8270// X86_64-CLOUDABI:#define __PTRDIFF_MAX__ 9223372036854775807L
8271// X86_64-CLOUDABI:#define __PTRDIFF_TYPE__ long int
8272// X86_64-CLOUDABI:#define __PTRDIFF_WIDTH__ 64
James Y Knightc97efa42016-02-11 16:51:29 +00008273// X86_64-CLOUDABI:#define __REGISTER_PREFIX__
Ed Schoutenf33c6072015-03-11 08:42:46 +00008274// X86_64-CLOUDABI:#define __SCHAR_MAX__ 127
8275// X86_64-CLOUDABI:#define __SHRT_MAX__ 32767
8276// X86_64-CLOUDABI:#define __SIG_ATOMIC_MAX__ 2147483647
8277// X86_64-CLOUDABI:#define __SIG_ATOMIC_WIDTH__ 32
8278// X86_64-CLOUDABI:#define __SIZEOF_DOUBLE__ 8
8279// X86_64-CLOUDABI:#define __SIZEOF_FLOAT__ 4
8280// X86_64-CLOUDABI:#define __SIZEOF_INT128__ 16
8281// X86_64-CLOUDABI:#define __SIZEOF_INT__ 4
8282// X86_64-CLOUDABI:#define __SIZEOF_LONG_DOUBLE__ 16
8283// X86_64-CLOUDABI:#define __SIZEOF_LONG_LONG__ 8
8284// X86_64-CLOUDABI:#define __SIZEOF_LONG__ 8
8285// X86_64-CLOUDABI:#define __SIZEOF_POINTER__ 8
8286// X86_64-CLOUDABI:#define __SIZEOF_PTRDIFF_T__ 8
8287// X86_64-CLOUDABI:#define __SIZEOF_SHORT__ 2
8288// X86_64-CLOUDABI:#define __SIZEOF_SIZE_T__ 8
8289// X86_64-CLOUDABI:#define __SIZEOF_WCHAR_T__ 4
8290// X86_64-CLOUDABI:#define __SIZEOF_WINT_T__ 4
8291// X86_64-CLOUDABI:#define __SIZE_FMTX__ "lX"
8292// X86_64-CLOUDABI:#define __SIZE_FMTo__ "lo"
8293// X86_64-CLOUDABI:#define __SIZE_FMTu__ "lu"
8294// X86_64-CLOUDABI:#define __SIZE_FMTx__ "lx"
8295// X86_64-CLOUDABI:#define __SIZE_MAX__ 18446744073709551615UL
8296// X86_64-CLOUDABI:#define __SIZE_TYPE__ long unsigned int
8297// X86_64-CLOUDABI:#define __SIZE_WIDTH__ 64
8298// X86_64-CLOUDABI:#define __SSE2_MATH__ 1
8299// X86_64-CLOUDABI:#define __SSE2__ 1
8300// X86_64-CLOUDABI:#define __SSE_MATH__ 1
8301// X86_64-CLOUDABI:#define __SSE__ 1
8302// X86_64-CLOUDABI:#define __STDC_HOSTED__ 0
8303// X86_64-CLOUDABI:#define __STDC_ISO_10646__ 201206L
8304// X86_64-CLOUDABI:#define __STDC_UTF_16__ 1
8305// X86_64-CLOUDABI:#define __STDC_UTF_32__ 1
8306// X86_64-CLOUDABI:#define __STDC_VERSION__ 201112L
8307// X86_64-CLOUDABI:#define __STDC__ 1
James Y Knightc97efa42016-02-11 16:51:29 +00008308// X86_64-CLOUDABI:#define __UINT16_C_SUFFIX__
Ed Schoutenf33c6072015-03-11 08:42:46 +00008309// X86_64-CLOUDABI:#define __UINT16_FMTX__ "hX"
8310// X86_64-CLOUDABI:#define __UINT16_FMTo__ "ho"
8311// X86_64-CLOUDABI:#define __UINT16_FMTu__ "hu"
8312// X86_64-CLOUDABI:#define __UINT16_FMTx__ "hx"
8313// X86_64-CLOUDABI:#define __UINT16_MAX__ 65535
8314// X86_64-CLOUDABI:#define __UINT16_TYPE__ unsigned short
8315// X86_64-CLOUDABI:#define __UINT32_C_SUFFIX__ U
8316// X86_64-CLOUDABI:#define __UINT32_FMTX__ "X"
8317// X86_64-CLOUDABI:#define __UINT32_FMTo__ "o"
8318// X86_64-CLOUDABI:#define __UINT32_FMTu__ "u"
8319// X86_64-CLOUDABI:#define __UINT32_FMTx__ "x"
8320// X86_64-CLOUDABI:#define __UINT32_MAX__ 4294967295U
8321// X86_64-CLOUDABI:#define __UINT32_TYPE__ unsigned int
8322// X86_64-CLOUDABI:#define __UINT64_C_SUFFIX__ UL
8323// X86_64-CLOUDABI:#define __UINT64_FMTX__ "lX"
8324// X86_64-CLOUDABI:#define __UINT64_FMTo__ "lo"
8325// X86_64-CLOUDABI:#define __UINT64_FMTu__ "lu"
8326// X86_64-CLOUDABI:#define __UINT64_FMTx__ "lx"
8327// X86_64-CLOUDABI:#define __UINT64_MAX__ 18446744073709551615UL
8328// X86_64-CLOUDABI:#define __UINT64_TYPE__ long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00008329// X86_64-CLOUDABI:#define __UINT8_C_SUFFIX__
Ed Schoutenf33c6072015-03-11 08:42:46 +00008330// X86_64-CLOUDABI:#define __UINT8_FMTX__ "hhX"
8331// X86_64-CLOUDABI:#define __UINT8_FMTo__ "hho"
8332// X86_64-CLOUDABI:#define __UINT8_FMTu__ "hhu"
8333// X86_64-CLOUDABI:#define __UINT8_FMTx__ "hhx"
8334// X86_64-CLOUDABI:#define __UINT8_MAX__ 255
8335// X86_64-CLOUDABI:#define __UINT8_TYPE__ unsigned char
8336// X86_64-CLOUDABI:#define __UINTMAX_C_SUFFIX__ UL
8337// X86_64-CLOUDABI:#define __UINTMAX_FMTX__ "lX"
8338// X86_64-CLOUDABI:#define __UINTMAX_FMTo__ "lo"
8339// X86_64-CLOUDABI:#define __UINTMAX_FMTu__ "lu"
8340// X86_64-CLOUDABI:#define __UINTMAX_FMTx__ "lx"
8341// X86_64-CLOUDABI:#define __UINTMAX_MAX__ 18446744073709551615UL
8342// X86_64-CLOUDABI:#define __UINTMAX_TYPE__ long unsigned int
8343// X86_64-CLOUDABI:#define __UINTMAX_WIDTH__ 64
8344// X86_64-CLOUDABI:#define __UINTPTR_FMTX__ "lX"
8345// X86_64-CLOUDABI:#define __UINTPTR_FMTo__ "lo"
8346// X86_64-CLOUDABI:#define __UINTPTR_FMTu__ "lu"
8347// X86_64-CLOUDABI:#define __UINTPTR_FMTx__ "lx"
8348// X86_64-CLOUDABI:#define __UINTPTR_MAX__ 18446744073709551615UL
8349// X86_64-CLOUDABI:#define __UINTPTR_TYPE__ long unsigned int
8350// X86_64-CLOUDABI:#define __UINTPTR_WIDTH__ 64
8351// X86_64-CLOUDABI:#define __UINT_FAST16_FMTX__ "hX"
8352// X86_64-CLOUDABI:#define __UINT_FAST16_FMTo__ "ho"
8353// X86_64-CLOUDABI:#define __UINT_FAST16_FMTu__ "hu"
8354// X86_64-CLOUDABI:#define __UINT_FAST16_FMTx__ "hx"
8355// X86_64-CLOUDABI:#define __UINT_FAST16_MAX__ 65535
8356// X86_64-CLOUDABI:#define __UINT_FAST16_TYPE__ unsigned short
8357// X86_64-CLOUDABI:#define __UINT_FAST32_FMTX__ "X"
8358// X86_64-CLOUDABI:#define __UINT_FAST32_FMTo__ "o"
8359// X86_64-CLOUDABI:#define __UINT_FAST32_FMTu__ "u"
8360// X86_64-CLOUDABI:#define __UINT_FAST32_FMTx__ "x"
8361// X86_64-CLOUDABI:#define __UINT_FAST32_MAX__ 4294967295U
8362// X86_64-CLOUDABI:#define __UINT_FAST32_TYPE__ unsigned int
8363// X86_64-CLOUDABI:#define __UINT_FAST64_FMTX__ "lX"
8364// X86_64-CLOUDABI:#define __UINT_FAST64_FMTo__ "lo"
8365// X86_64-CLOUDABI:#define __UINT_FAST64_FMTu__ "lu"
8366// X86_64-CLOUDABI:#define __UINT_FAST64_FMTx__ "lx"
8367// X86_64-CLOUDABI:#define __UINT_FAST64_MAX__ 18446744073709551615UL
8368// X86_64-CLOUDABI:#define __UINT_FAST64_TYPE__ long unsigned int
8369// X86_64-CLOUDABI:#define __UINT_FAST8_FMTX__ "hhX"
8370// X86_64-CLOUDABI:#define __UINT_FAST8_FMTo__ "hho"
8371// X86_64-CLOUDABI:#define __UINT_FAST8_FMTu__ "hhu"
8372// X86_64-CLOUDABI:#define __UINT_FAST8_FMTx__ "hhx"
8373// X86_64-CLOUDABI:#define __UINT_FAST8_MAX__ 255
8374// X86_64-CLOUDABI:#define __UINT_FAST8_TYPE__ unsigned char
8375// X86_64-CLOUDABI:#define __UINT_LEAST16_FMTX__ "hX"
8376// X86_64-CLOUDABI:#define __UINT_LEAST16_FMTo__ "ho"
8377// X86_64-CLOUDABI:#define __UINT_LEAST16_FMTu__ "hu"
8378// X86_64-CLOUDABI:#define __UINT_LEAST16_FMTx__ "hx"
8379// X86_64-CLOUDABI:#define __UINT_LEAST16_MAX__ 65535
8380// X86_64-CLOUDABI:#define __UINT_LEAST16_TYPE__ unsigned short
8381// X86_64-CLOUDABI:#define __UINT_LEAST32_FMTX__ "X"
8382// X86_64-CLOUDABI:#define __UINT_LEAST32_FMTo__ "o"
8383// X86_64-CLOUDABI:#define __UINT_LEAST32_FMTu__ "u"
8384// X86_64-CLOUDABI:#define __UINT_LEAST32_FMTx__ "x"
8385// X86_64-CLOUDABI:#define __UINT_LEAST32_MAX__ 4294967295U
8386// X86_64-CLOUDABI:#define __UINT_LEAST32_TYPE__ unsigned int
8387// X86_64-CLOUDABI:#define __UINT_LEAST64_FMTX__ "lX"
8388// X86_64-CLOUDABI:#define __UINT_LEAST64_FMTo__ "lo"
8389// X86_64-CLOUDABI:#define __UINT_LEAST64_FMTu__ "lu"
8390// X86_64-CLOUDABI:#define __UINT_LEAST64_FMTx__ "lx"
8391// X86_64-CLOUDABI:#define __UINT_LEAST64_MAX__ 18446744073709551615UL
8392// X86_64-CLOUDABI:#define __UINT_LEAST64_TYPE__ long unsigned int
8393// X86_64-CLOUDABI:#define __UINT_LEAST8_FMTX__ "hhX"
8394// X86_64-CLOUDABI:#define __UINT_LEAST8_FMTo__ "hho"
8395// X86_64-CLOUDABI:#define __UINT_LEAST8_FMTu__ "hhu"
8396// X86_64-CLOUDABI:#define __UINT_LEAST8_FMTx__ "hhx"
8397// X86_64-CLOUDABI:#define __UINT_LEAST8_MAX__ 255
8398// X86_64-CLOUDABI:#define __UINT_LEAST8_TYPE__ unsigned char
James Y Knightc97efa42016-02-11 16:51:29 +00008399// X86_64-CLOUDABI:#define __USER_LABEL_PREFIX__
8400// X86_64-CLOUDABI:#define __VERSION__ "4.2.1 Compatible{{.*}}
Ed Schoutenf33c6072015-03-11 08:42:46 +00008401// X86_64-CLOUDABI:#define __WCHAR_MAX__ 2147483647
8402// X86_64-CLOUDABI:#define __WCHAR_TYPE__ int
8403// X86_64-CLOUDABI:#define __WCHAR_WIDTH__ 32
8404// X86_64-CLOUDABI:#define __WINT_TYPE__ int
8405// X86_64-CLOUDABI:#define __WINT_WIDTH__ 32
8406// X86_64-CLOUDABI:#define __amd64 1
8407// X86_64-CLOUDABI:#define __amd64__ 1
8408// X86_64-CLOUDABI:#define __clang__ 1
James Y Knightc97efa42016-02-11 16:51:29 +00008409// X86_64-CLOUDABI:#define __clang_major__ {{.*}}
8410// X86_64-CLOUDABI:#define __clang_minor__ {{.*}}
8411// X86_64-CLOUDABI:#define __clang_patchlevel__ {{.*}}
8412// X86_64-CLOUDABI:#define __clang_version__ {{.*}}
Ed Schoutenf33c6072015-03-11 08:42:46 +00008413// X86_64-CLOUDABI:#define __llvm__ 1
8414// X86_64-CLOUDABI:#define __x86_64 1
8415// X86_64-CLOUDABI:#define __x86_64__ 1
8416//
James Y Knightc97efa42016-02-11 16:51:29 +00008417// 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 +00008418//
8419// X86_64-LINUX:#define _LP64 1
Tim Northovera6a19f12015-02-06 01:25:07 +00008420// X86_64-LINUX:#define __BIGGEST_ALIGNMENT__ 16
Dylan Noblesmith673728f2012-07-27 18:34:31 +00008421// X86_64-LINUX:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
Douglas Gregore6d6e512011-01-12 21:19:25 +00008422// X86_64-LINUX:#define __CHAR16_TYPE__ unsigned short
8423// X86_64-LINUX:#define __CHAR32_TYPE__ unsigned int
8424// X86_64-LINUX:#define __CHAR_BIT__ 8
8425// X86_64-LINUX:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
8426// X86_64-LINUX:#define __DBL_DIG__ 15
8427// X86_64-LINUX:#define __DBL_EPSILON__ 2.2204460492503131e-16
8428// X86_64-LINUX:#define __DBL_HAS_DENORM__ 1
8429// X86_64-LINUX:#define __DBL_HAS_INFINITY__ 1
8430// X86_64-LINUX:#define __DBL_HAS_QUIET_NAN__ 1
8431// X86_64-LINUX:#define __DBL_MANT_DIG__ 53
8432// X86_64-LINUX:#define __DBL_MAX_10_EXP__ 308
8433// X86_64-LINUX:#define __DBL_MAX_EXP__ 1024
8434// X86_64-LINUX:#define __DBL_MAX__ 1.7976931348623157e+308
8435// X86_64-LINUX:#define __DBL_MIN_10_EXP__ (-307)
8436// X86_64-LINUX:#define __DBL_MIN_EXP__ (-1021)
8437// X86_64-LINUX:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00008438// X86_64-LINUX:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Douglas Gregore6d6e512011-01-12 21:19:25 +00008439// X86_64-LINUX:#define __FLT_DENORM_MIN__ 1.40129846e-45F
8440// X86_64-LINUX:#define __FLT_DIG__ 6
8441// X86_64-LINUX:#define __FLT_EPSILON__ 1.19209290e-7F
8442// X86_64-LINUX:#define __FLT_EVAL_METHOD__ 0
8443// X86_64-LINUX:#define __FLT_HAS_DENORM__ 1
8444// X86_64-LINUX:#define __FLT_HAS_INFINITY__ 1
8445// X86_64-LINUX:#define __FLT_HAS_QUIET_NAN__ 1
8446// X86_64-LINUX:#define __FLT_MANT_DIG__ 24
8447// X86_64-LINUX:#define __FLT_MAX_10_EXP__ 38
8448// X86_64-LINUX:#define __FLT_MAX_EXP__ 128
8449// X86_64-LINUX:#define __FLT_MAX__ 3.40282347e+38F
8450// X86_64-LINUX:#define __FLT_MIN_10_EXP__ (-37)
8451// X86_64-LINUX:#define __FLT_MIN_EXP__ (-125)
8452// X86_64-LINUX:#define __FLT_MIN__ 1.17549435e-38F
8453// X86_64-LINUX:#define __FLT_RADIX__ 2
James Y Knightc97efa42016-02-11 16:51:29 +00008454// X86_64-LINUX:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00008455// X86_64-LINUX:#define __INT16_FMTd__ "hd"
8456// X86_64-LINUX:#define __INT16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00008457// X86_64-LINUX:#define __INT16_MAX__ 32767
Douglas Gregore6d6e512011-01-12 21:19:25 +00008458// X86_64-LINUX:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +00008459// X86_64-LINUX:#define __INT32_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00008460// X86_64-LINUX:#define __INT32_FMTd__ "d"
8461// X86_64-LINUX:#define __INT32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00008462// X86_64-LINUX:#define __INT32_MAX__ 2147483647
Douglas Gregore6d6e512011-01-12 21:19:25 +00008463// X86_64-LINUX:#define __INT32_TYPE__ int
8464// X86_64-LINUX:#define __INT64_C_SUFFIX__ L
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00008465// X86_64-LINUX:#define __INT64_FMTd__ "ld"
8466// X86_64-LINUX:#define __INT64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00008467// X86_64-LINUX:#define __INT64_MAX__ 9223372036854775807L
Douglas Gregore6d6e512011-01-12 21:19:25 +00008468// X86_64-LINUX:#define __INT64_TYPE__ long int
James Y Knightc97efa42016-02-11 16:51:29 +00008469// X86_64-LINUX:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00008470// X86_64-LINUX:#define __INT8_FMTd__ "hhd"
8471// X86_64-LINUX:#define __INT8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00008472// X86_64-LINUX:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00008473// X86_64-LINUX:#define __INT8_TYPE__ signed char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00008474// X86_64-LINUX:#define __INTMAX_C_SUFFIX__ L
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00008475// X86_64-LINUX:#define __INTMAX_FMTd__ "ld"
8476// X86_64-LINUX:#define __INTMAX_FMTi__ "li"
Douglas Gregore6d6e512011-01-12 21:19:25 +00008477// X86_64-LINUX:#define __INTMAX_MAX__ 9223372036854775807L
8478// X86_64-LINUX:#define __INTMAX_TYPE__ long int
8479// X86_64-LINUX:#define __INTMAX_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00008480// X86_64-LINUX:#define __INTPTR_FMTd__ "ld"
8481// X86_64-LINUX:#define __INTPTR_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00008482// X86_64-LINUX:#define __INTPTR_MAX__ 9223372036854775807L
Douglas Gregore6d6e512011-01-12 21:19:25 +00008483// X86_64-LINUX:#define __INTPTR_TYPE__ long int
8484// X86_64-LINUX:#define __INTPTR_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00008485// X86_64-LINUX:#define __INT_FAST16_FMTd__ "hd"
8486// X86_64-LINUX:#define __INT_FAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00008487// X86_64-LINUX:#define __INT_FAST16_MAX__ 32767
8488// X86_64-LINUX:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00008489// X86_64-LINUX:#define __INT_FAST32_FMTd__ "d"
8490// X86_64-LINUX:#define __INT_FAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00008491// X86_64-LINUX:#define __INT_FAST32_MAX__ 2147483647
8492// X86_64-LINUX:#define __INT_FAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00008493// X86_64-LINUX:#define __INT_FAST64_FMTd__ "ld"
8494// X86_64-LINUX:#define __INT_FAST64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00008495// X86_64-LINUX:#define __INT_FAST64_MAX__ 9223372036854775807L
8496// X86_64-LINUX:#define __INT_FAST64_TYPE__ long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00008497// X86_64-LINUX:#define __INT_FAST8_FMTd__ "hhd"
8498// X86_64-LINUX:#define __INT_FAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00008499// X86_64-LINUX:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00008500// X86_64-LINUX:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00008501// X86_64-LINUX:#define __INT_LEAST16_FMTd__ "hd"
8502// X86_64-LINUX:#define __INT_LEAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00008503// X86_64-LINUX:#define __INT_LEAST16_MAX__ 32767
8504// X86_64-LINUX:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00008505// X86_64-LINUX:#define __INT_LEAST32_FMTd__ "d"
8506// X86_64-LINUX:#define __INT_LEAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00008507// X86_64-LINUX:#define __INT_LEAST32_MAX__ 2147483647
8508// X86_64-LINUX:#define __INT_LEAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00008509// X86_64-LINUX:#define __INT_LEAST64_FMTd__ "ld"
8510// X86_64-LINUX:#define __INT_LEAST64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00008511// X86_64-LINUX:#define __INT_LEAST64_MAX__ 9223372036854775807L
8512// X86_64-LINUX:#define __INT_LEAST64_TYPE__ long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00008513// X86_64-LINUX:#define __INT_LEAST8_FMTd__ "hhd"
8514// X86_64-LINUX:#define __INT_LEAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00008515// X86_64-LINUX:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00008516// X86_64-LINUX:#define __INT_LEAST8_TYPE__ signed char
Douglas Gregore6d6e512011-01-12 21:19:25 +00008517// X86_64-LINUX:#define __INT_MAX__ 2147483647
8518// X86_64-LINUX:#define __LDBL_DENORM_MIN__ 3.64519953188247460253e-4951L
8519// X86_64-LINUX:#define __LDBL_DIG__ 18
8520// X86_64-LINUX:#define __LDBL_EPSILON__ 1.08420217248550443401e-19L
8521// X86_64-LINUX:#define __LDBL_HAS_DENORM__ 1
8522// X86_64-LINUX:#define __LDBL_HAS_INFINITY__ 1
8523// X86_64-LINUX:#define __LDBL_HAS_QUIET_NAN__ 1
8524// X86_64-LINUX:#define __LDBL_MANT_DIG__ 64
8525// X86_64-LINUX:#define __LDBL_MAX_10_EXP__ 4932
8526// X86_64-LINUX:#define __LDBL_MAX_EXP__ 16384
8527// X86_64-LINUX:#define __LDBL_MAX__ 1.18973149535723176502e+4932L
8528// X86_64-LINUX:#define __LDBL_MIN_10_EXP__ (-4931)
8529// X86_64-LINUX:#define __LDBL_MIN_EXP__ (-16381)
8530// X86_64-LINUX:#define __LDBL_MIN__ 3.36210314311209350626e-4932L
8531// X86_64-LINUX:#define __LITTLE_ENDIAN__ 1
8532// X86_64-LINUX:#define __LONG_LONG_MAX__ 9223372036854775807LL
8533// X86_64-LINUX:#define __LONG_MAX__ 9223372036854775807L
8534// X86_64-LINUX:#define __LP64__ 1
8535// X86_64-LINUX:#define __MMX__ 1
Douglas Gregore6d6e512011-01-12 21:19:25 +00008536// X86_64-LINUX:#define __NO_MATH_INLINES 1
8537// X86_64-LINUX:#define __POINTER_WIDTH__ 64
8538// X86_64-LINUX:#define __PTRDIFF_TYPE__ long int
8539// X86_64-LINUX:#define __PTRDIFF_WIDTH__ 64
James Y Knightc97efa42016-02-11 16:51:29 +00008540// X86_64-LINUX:#define __REGISTER_PREFIX__
Douglas Gregore6d6e512011-01-12 21:19:25 +00008541// X86_64-LINUX:#define __SCHAR_MAX__ 127
8542// X86_64-LINUX:#define __SHRT_MAX__ 32767
Joerg Sonnenbergerb3a49692014-07-17 18:31:20 +00008543// X86_64-LINUX:#define __SIG_ATOMIC_MAX__ 2147483647
Douglas Gregore6d6e512011-01-12 21:19:25 +00008544// X86_64-LINUX:#define __SIG_ATOMIC_WIDTH__ 32
8545// X86_64-LINUX:#define __SIZEOF_DOUBLE__ 8
8546// X86_64-LINUX:#define __SIZEOF_FLOAT__ 4
8547// X86_64-LINUX:#define __SIZEOF_INT__ 4
8548// X86_64-LINUX:#define __SIZEOF_LONG_DOUBLE__ 16
8549// X86_64-LINUX:#define __SIZEOF_LONG_LONG__ 8
8550// X86_64-LINUX:#define __SIZEOF_LONG__ 8
8551// X86_64-LINUX:#define __SIZEOF_POINTER__ 8
8552// X86_64-LINUX:#define __SIZEOF_PTRDIFF_T__ 8
8553// X86_64-LINUX:#define __SIZEOF_SHORT__ 2
8554// X86_64-LINUX:#define __SIZEOF_SIZE_T__ 8
8555// X86_64-LINUX:#define __SIZEOF_WCHAR_T__ 4
8556// X86_64-LINUX:#define __SIZEOF_WINT_T__ 4
Evgeniy Stepanovc3c725a2013-03-28 08:36:54 +00008557// X86_64-LINUX:#define __SIZE_MAX__ 18446744073709551615UL
Douglas Gregore6d6e512011-01-12 21:19:25 +00008558// X86_64-LINUX:#define __SIZE_TYPE__ long unsigned int
8559// X86_64-LINUX:#define __SIZE_WIDTH__ 64
8560// X86_64-LINUX:#define __SSE2_MATH__ 1
8561// X86_64-LINUX:#define __SSE2__ 1
8562// X86_64-LINUX:#define __SSE_MATH__ 1
8563// X86_64-LINUX:#define __SSE__ 1
James Y Knightc97efa42016-02-11 16:51:29 +00008564// X86_64-LINUX:#define __UINT16_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00008565// X86_64-LINUX:#define __UINT16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00008566// X86_64-LINUX:#define __UINT16_TYPE__ unsigned short
8567// X86_64-LINUX:#define __UINT32_C_SUFFIX__ U
8568// X86_64-LINUX:#define __UINT32_MAX__ 4294967295U
8569// X86_64-LINUX:#define __UINT32_TYPE__ unsigned int
8570// X86_64-LINUX:#define __UINT64_C_SUFFIX__ UL
8571// X86_64-LINUX:#define __UINT64_MAX__ 18446744073709551615UL
8572// X86_64-LINUX:#define __UINT64_TYPE__ long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00008573// X86_64-LINUX:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00008574// X86_64-LINUX:#define __UINT8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00008575// X86_64-LINUX:#define __UINT8_TYPE__ unsigned char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00008576// X86_64-LINUX:#define __UINTMAX_C_SUFFIX__ UL
JF Bastienab8d0a02014-06-25 01:31:33 +00008577// X86_64-LINUX:#define __UINTMAX_MAX__ 18446744073709551615UL
Douglas Gregore6d6e512011-01-12 21:19:25 +00008578// X86_64-LINUX:#define __UINTMAX_TYPE__ long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00008579// X86_64-LINUX:#define __UINTMAX_WIDTH__ 64
8580// X86_64-LINUX:#define __UINTPTR_MAX__ 18446744073709551615UL
8581// X86_64-LINUX:#define __UINTPTR_TYPE__ long unsigned int
8582// X86_64-LINUX:#define __UINTPTR_WIDTH__ 64
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00008583// X86_64-LINUX:#define __UINT_FAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00008584// X86_64-LINUX:#define __UINT_FAST16_TYPE__ unsigned short
8585// X86_64-LINUX:#define __UINT_FAST32_MAX__ 4294967295U
8586// X86_64-LINUX:#define __UINT_FAST32_TYPE__ unsigned int
8587// X86_64-LINUX:#define __UINT_FAST64_MAX__ 18446744073709551615UL
8588// X86_64-LINUX:#define __UINT_FAST64_TYPE__ long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00008589// X86_64-LINUX:#define __UINT_FAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00008590// X86_64-LINUX:#define __UINT_FAST8_TYPE__ unsigned char
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00008591// X86_64-LINUX:#define __UINT_LEAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00008592// X86_64-LINUX:#define __UINT_LEAST16_TYPE__ unsigned short
8593// X86_64-LINUX:#define __UINT_LEAST32_MAX__ 4294967295U
8594// X86_64-LINUX:#define __UINT_LEAST32_TYPE__ unsigned int
8595// X86_64-LINUX:#define __UINT_LEAST64_MAX__ 18446744073709551615UL
8596// X86_64-LINUX:#define __UINT_LEAST64_TYPE__ long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00008597// X86_64-LINUX:#define __UINT_LEAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00008598// X86_64-LINUX:#define __UINT_LEAST8_TYPE__ unsigned char
Douglas Gregore6d6e512011-01-12 21:19:25 +00008599// X86_64-LINUX:#define __USER_LABEL_PREFIX__
8600// X86_64-LINUX:#define __WCHAR_MAX__ 2147483647
8601// X86_64-LINUX:#define __WCHAR_TYPE__ int
8602// X86_64-LINUX:#define __WCHAR_WIDTH__ 32
8603// X86_64-LINUX:#define __WINT_TYPE__ unsigned int
8604// X86_64-LINUX:#define __WINT_WIDTH__ 32
8605// X86_64-LINUX:#define __amd64 1
8606// X86_64-LINUX:#define __amd64__ 1
Douglas Gregore6d6e512011-01-12 21:19:25 +00008607// X86_64-LINUX:#define __x86_64 1
8608// X86_64-LINUX:#define __x86_64__ 1
8609//
James Y Knightc97efa42016-02-11 16:51:29 +00008610// 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 +00008611//
Ed Schouten49920992015-02-23 09:12:31 +00008612// X86_64-FREEBSD:#define __DBL_DECIMAL_DIG__ 17
8613// X86_64-FREEBSD:#define __FLT_DECIMAL_DIG__ 9
Ed Schoutend0621462013-09-29 07:54:52 +00008614// X86_64-FREEBSD:#define __FreeBSD__ 9
8615// X86_64-FREEBSD:#define __FreeBSD_cc_version 900001
Ed Schouten49920992015-02-23 09:12:31 +00008616// X86_64-FREEBSD:#define __LDBL_DECIMAL_DIG__ 21
Ed Schoutend0621462013-09-29 07:54:52 +00008617// X86_64-FREEBSD:#define __STDC_MB_MIGHT_NEQ_WC__ 1
8618//
James Y Knightc97efa42016-02-11 16:51:29 +00008619// 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 +00008620//
8621// X86_64-NETBSD:#define _LP64 1
Tim Northovera6a19f12015-02-06 01:25:07 +00008622// X86_64-NETBSD:#define __BIGGEST_ALIGNMENT__ 16
Joerg Sonnenberger0e921f22013-11-11 14:00:37 +00008623// X86_64-NETBSD:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
8624// X86_64-NETBSD:#define __CHAR16_TYPE__ unsigned short
8625// X86_64-NETBSD:#define __CHAR32_TYPE__ unsigned int
8626// X86_64-NETBSD:#define __CHAR_BIT__ 8
8627// X86_64-NETBSD:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
8628// X86_64-NETBSD:#define __DBL_DIG__ 15
8629// X86_64-NETBSD:#define __DBL_EPSILON__ 2.2204460492503131e-16
8630// X86_64-NETBSD:#define __DBL_HAS_DENORM__ 1
8631// X86_64-NETBSD:#define __DBL_HAS_INFINITY__ 1
8632// X86_64-NETBSD:#define __DBL_HAS_QUIET_NAN__ 1
8633// X86_64-NETBSD:#define __DBL_MANT_DIG__ 53
8634// X86_64-NETBSD:#define __DBL_MAX_10_EXP__ 308
8635// X86_64-NETBSD:#define __DBL_MAX_EXP__ 1024
8636// X86_64-NETBSD:#define __DBL_MAX__ 1.7976931348623157e+308
8637// X86_64-NETBSD:#define __DBL_MIN_10_EXP__ (-307)
8638// X86_64-NETBSD:#define __DBL_MIN_EXP__ (-1021)
8639// X86_64-NETBSD:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00008640// X86_64-NETBSD:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Joerg Sonnenberger0e921f22013-11-11 14:00:37 +00008641// X86_64-NETBSD:#define __FLT_DENORM_MIN__ 1.40129846e-45F
8642// X86_64-NETBSD:#define __FLT_DIG__ 6
8643// X86_64-NETBSD:#define __FLT_EPSILON__ 1.19209290e-7F
8644// X86_64-NETBSD:#define __FLT_EVAL_METHOD__ 0
8645// X86_64-NETBSD:#define __FLT_HAS_DENORM__ 1
8646// X86_64-NETBSD:#define __FLT_HAS_INFINITY__ 1
8647// X86_64-NETBSD:#define __FLT_HAS_QUIET_NAN__ 1
8648// X86_64-NETBSD:#define __FLT_MANT_DIG__ 24
8649// X86_64-NETBSD:#define __FLT_MAX_10_EXP__ 38
8650// X86_64-NETBSD:#define __FLT_MAX_EXP__ 128
8651// X86_64-NETBSD:#define __FLT_MAX__ 3.40282347e+38F
8652// X86_64-NETBSD:#define __FLT_MIN_10_EXP__ (-37)
8653// X86_64-NETBSD:#define __FLT_MIN_EXP__ (-125)
8654// X86_64-NETBSD:#define __FLT_MIN__ 1.17549435e-38F
8655// X86_64-NETBSD:#define __FLT_RADIX__ 2
James Y Knightc97efa42016-02-11 16:51:29 +00008656// X86_64-NETBSD:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00008657// X86_64-NETBSD:#define __INT16_FMTd__ "hd"
8658// X86_64-NETBSD:#define __INT16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00008659// X86_64-NETBSD:#define __INT16_MAX__ 32767
Joerg Sonnenberger0e921f22013-11-11 14:00:37 +00008660// X86_64-NETBSD:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +00008661// X86_64-NETBSD:#define __INT32_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00008662// X86_64-NETBSD:#define __INT32_FMTd__ "d"
8663// X86_64-NETBSD:#define __INT32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00008664// X86_64-NETBSD:#define __INT32_MAX__ 2147483647
Joerg Sonnenberger0e921f22013-11-11 14:00:37 +00008665// X86_64-NETBSD:#define __INT32_TYPE__ int
8666// X86_64-NETBSD:#define __INT64_C_SUFFIX__ L
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00008667// X86_64-NETBSD:#define __INT64_FMTd__ "ld"
8668// X86_64-NETBSD:#define __INT64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00008669// X86_64-NETBSD:#define __INT64_MAX__ 9223372036854775807L
Joerg Sonnenberger0e921f22013-11-11 14:00:37 +00008670// X86_64-NETBSD:#define __INT64_TYPE__ long int
James Y Knightc97efa42016-02-11 16:51:29 +00008671// X86_64-NETBSD:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00008672// X86_64-NETBSD:#define __INT8_FMTd__ "hhd"
8673// X86_64-NETBSD:#define __INT8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00008674// X86_64-NETBSD:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00008675// X86_64-NETBSD:#define __INT8_TYPE__ signed char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00008676// X86_64-NETBSD:#define __INTMAX_C_SUFFIX__ L
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00008677// X86_64-NETBSD:#define __INTMAX_FMTd__ "ld"
8678// X86_64-NETBSD:#define __INTMAX_FMTi__ "li"
Joerg Sonnenberger0e921f22013-11-11 14:00:37 +00008679// X86_64-NETBSD:#define __INTMAX_MAX__ 9223372036854775807L
8680// X86_64-NETBSD:#define __INTMAX_TYPE__ long int
8681// X86_64-NETBSD:#define __INTMAX_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00008682// X86_64-NETBSD:#define __INTPTR_FMTd__ "ld"
8683// X86_64-NETBSD:#define __INTPTR_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00008684// X86_64-NETBSD:#define __INTPTR_MAX__ 9223372036854775807L
Joerg Sonnenberger0e921f22013-11-11 14:00:37 +00008685// X86_64-NETBSD:#define __INTPTR_TYPE__ long int
8686// X86_64-NETBSD:#define __INTPTR_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00008687// X86_64-NETBSD:#define __INT_FAST16_FMTd__ "hd"
8688// X86_64-NETBSD:#define __INT_FAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00008689// X86_64-NETBSD:#define __INT_FAST16_MAX__ 32767
8690// X86_64-NETBSD:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00008691// X86_64-NETBSD:#define __INT_FAST32_FMTd__ "d"
8692// X86_64-NETBSD:#define __INT_FAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00008693// X86_64-NETBSD:#define __INT_FAST32_MAX__ 2147483647
8694// X86_64-NETBSD:#define __INT_FAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00008695// X86_64-NETBSD:#define __INT_FAST64_FMTd__ "ld"
8696// X86_64-NETBSD:#define __INT_FAST64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00008697// X86_64-NETBSD:#define __INT_FAST64_MAX__ 9223372036854775807L
8698// X86_64-NETBSD:#define __INT_FAST64_TYPE__ long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00008699// X86_64-NETBSD:#define __INT_FAST8_FMTd__ "hhd"
8700// X86_64-NETBSD:#define __INT_FAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00008701// X86_64-NETBSD:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00008702// X86_64-NETBSD:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00008703// X86_64-NETBSD:#define __INT_LEAST16_FMTd__ "hd"
8704// X86_64-NETBSD:#define __INT_LEAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00008705// X86_64-NETBSD:#define __INT_LEAST16_MAX__ 32767
8706// X86_64-NETBSD:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00008707// X86_64-NETBSD:#define __INT_LEAST32_FMTd__ "d"
8708// X86_64-NETBSD:#define __INT_LEAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00008709// X86_64-NETBSD:#define __INT_LEAST32_MAX__ 2147483647
8710// X86_64-NETBSD:#define __INT_LEAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00008711// X86_64-NETBSD:#define __INT_LEAST64_FMTd__ "ld"
8712// X86_64-NETBSD:#define __INT_LEAST64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00008713// X86_64-NETBSD:#define __INT_LEAST64_MAX__ 9223372036854775807L
8714// X86_64-NETBSD:#define __INT_LEAST64_TYPE__ long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00008715// X86_64-NETBSD:#define __INT_LEAST8_FMTd__ "hhd"
8716// X86_64-NETBSD:#define __INT_LEAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00008717// X86_64-NETBSD:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00008718// X86_64-NETBSD:#define __INT_LEAST8_TYPE__ signed char
Joerg Sonnenberger0e921f22013-11-11 14:00:37 +00008719// X86_64-NETBSD:#define __INT_MAX__ 2147483647
8720// X86_64-NETBSD:#define __LDBL_DENORM_MIN__ 3.64519953188247460253e-4951L
8721// X86_64-NETBSD:#define __LDBL_DIG__ 18
8722// X86_64-NETBSD:#define __LDBL_EPSILON__ 1.08420217248550443401e-19L
8723// X86_64-NETBSD:#define __LDBL_HAS_DENORM__ 1
8724// X86_64-NETBSD:#define __LDBL_HAS_INFINITY__ 1
8725// X86_64-NETBSD:#define __LDBL_HAS_QUIET_NAN__ 1
8726// X86_64-NETBSD:#define __LDBL_MANT_DIG__ 64
8727// X86_64-NETBSD:#define __LDBL_MAX_10_EXP__ 4932
8728// X86_64-NETBSD:#define __LDBL_MAX_EXP__ 16384
8729// X86_64-NETBSD:#define __LDBL_MAX__ 1.18973149535723176502e+4932L
8730// X86_64-NETBSD:#define __LDBL_MIN_10_EXP__ (-4931)
8731// X86_64-NETBSD:#define __LDBL_MIN_EXP__ (-16381)
8732// X86_64-NETBSD:#define __LDBL_MIN__ 3.36210314311209350626e-4932L
8733// X86_64-NETBSD:#define __LITTLE_ENDIAN__ 1
8734// X86_64-NETBSD:#define __LONG_LONG_MAX__ 9223372036854775807LL
8735// X86_64-NETBSD:#define __LONG_MAX__ 9223372036854775807L
8736// X86_64-NETBSD:#define __LP64__ 1
8737// X86_64-NETBSD:#define __MMX__ 1
8738// X86_64-NETBSD:#define __NO_MATH_INLINES 1
8739// X86_64-NETBSD:#define __POINTER_WIDTH__ 64
8740// X86_64-NETBSD:#define __PTRDIFF_TYPE__ long int
8741// X86_64-NETBSD:#define __PTRDIFF_WIDTH__ 64
James Y Knightc97efa42016-02-11 16:51:29 +00008742// X86_64-NETBSD:#define __REGISTER_PREFIX__
Joerg Sonnenberger0e921f22013-11-11 14:00:37 +00008743// X86_64-NETBSD:#define __SCHAR_MAX__ 127
8744// X86_64-NETBSD:#define __SHRT_MAX__ 32767
Joerg Sonnenbergerb3a49692014-07-17 18:31:20 +00008745// X86_64-NETBSD:#define __SIG_ATOMIC_MAX__ 2147483647
Joerg Sonnenberger0e921f22013-11-11 14:00:37 +00008746// X86_64-NETBSD:#define __SIG_ATOMIC_WIDTH__ 32
8747// X86_64-NETBSD:#define __SIZEOF_DOUBLE__ 8
8748// X86_64-NETBSD:#define __SIZEOF_FLOAT__ 4
8749// X86_64-NETBSD:#define __SIZEOF_INT__ 4
8750// X86_64-NETBSD:#define __SIZEOF_LONG_DOUBLE__ 16
8751// X86_64-NETBSD:#define __SIZEOF_LONG_LONG__ 8
8752// X86_64-NETBSD:#define __SIZEOF_LONG__ 8
8753// X86_64-NETBSD:#define __SIZEOF_POINTER__ 8
8754// X86_64-NETBSD:#define __SIZEOF_PTRDIFF_T__ 8
8755// X86_64-NETBSD:#define __SIZEOF_SHORT__ 2
8756// X86_64-NETBSD:#define __SIZEOF_SIZE_T__ 8
8757// X86_64-NETBSD:#define __SIZEOF_WCHAR_T__ 4
8758// X86_64-NETBSD:#define __SIZEOF_WINT_T__ 4
8759// X86_64-NETBSD:#define __SIZE_MAX__ 18446744073709551615UL
8760// X86_64-NETBSD:#define __SIZE_TYPE__ long unsigned int
8761// X86_64-NETBSD:#define __SIZE_WIDTH__ 64
8762// X86_64-NETBSD:#define __SSE2_MATH__ 1
8763// X86_64-NETBSD:#define __SSE2__ 1
8764// X86_64-NETBSD:#define __SSE_MATH__ 1
8765// X86_64-NETBSD:#define __SSE__ 1
James Y Knightc97efa42016-02-11 16:51:29 +00008766// X86_64-NETBSD:#define __UINT16_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00008767// X86_64-NETBSD:#define __UINT16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00008768// X86_64-NETBSD:#define __UINT16_TYPE__ unsigned short
8769// X86_64-NETBSD:#define __UINT32_C_SUFFIX__ U
8770// X86_64-NETBSD:#define __UINT32_MAX__ 4294967295U
8771// X86_64-NETBSD:#define __UINT32_TYPE__ unsigned int
8772// X86_64-NETBSD:#define __UINT64_C_SUFFIX__ UL
8773// X86_64-NETBSD:#define __UINT64_MAX__ 18446744073709551615UL
8774// X86_64-NETBSD:#define __UINT64_TYPE__ long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00008775// X86_64-NETBSD:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00008776// X86_64-NETBSD:#define __UINT8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00008777// X86_64-NETBSD:#define __UINT8_TYPE__ unsigned char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00008778// X86_64-NETBSD:#define __UINTMAX_C_SUFFIX__ UL
JF Bastienab8d0a02014-06-25 01:31:33 +00008779// X86_64-NETBSD:#define __UINTMAX_MAX__ 18446744073709551615UL
Joerg Sonnenberger0e921f22013-11-11 14:00:37 +00008780// X86_64-NETBSD:#define __UINTMAX_TYPE__ long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00008781// X86_64-NETBSD:#define __UINTMAX_WIDTH__ 64
8782// X86_64-NETBSD:#define __UINTPTR_MAX__ 18446744073709551615UL
8783// X86_64-NETBSD:#define __UINTPTR_TYPE__ long unsigned int
8784// X86_64-NETBSD:#define __UINTPTR_WIDTH__ 64
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00008785// X86_64-NETBSD:#define __UINT_FAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00008786// X86_64-NETBSD:#define __UINT_FAST16_TYPE__ unsigned short
8787// X86_64-NETBSD:#define __UINT_FAST32_MAX__ 4294967295U
8788// X86_64-NETBSD:#define __UINT_FAST32_TYPE__ unsigned int
8789// X86_64-NETBSD:#define __UINT_FAST64_MAX__ 18446744073709551615UL
8790// X86_64-NETBSD:#define __UINT_FAST64_TYPE__ long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00008791// X86_64-NETBSD:#define __UINT_FAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00008792// X86_64-NETBSD:#define __UINT_FAST8_TYPE__ unsigned char
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00008793// X86_64-NETBSD:#define __UINT_LEAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00008794// X86_64-NETBSD:#define __UINT_LEAST16_TYPE__ unsigned short
8795// X86_64-NETBSD:#define __UINT_LEAST32_MAX__ 4294967295U
8796// X86_64-NETBSD:#define __UINT_LEAST32_TYPE__ unsigned int
8797// X86_64-NETBSD:#define __UINT_LEAST64_MAX__ 18446744073709551615UL
8798// X86_64-NETBSD:#define __UINT_LEAST64_TYPE__ long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00008799// X86_64-NETBSD:#define __UINT_LEAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00008800// X86_64-NETBSD:#define __UINT_LEAST8_TYPE__ unsigned char
Joerg Sonnenberger0e921f22013-11-11 14:00:37 +00008801// X86_64-NETBSD:#define __USER_LABEL_PREFIX__
8802// X86_64-NETBSD:#define __WCHAR_MAX__ 2147483647
8803// X86_64-NETBSD:#define __WCHAR_TYPE__ int
8804// X86_64-NETBSD:#define __WCHAR_WIDTH__ 32
8805// X86_64-NETBSD:#define __WINT_TYPE__ int
8806// X86_64-NETBSD:#define __WINT_WIDTH__ 32
8807// X86_64-NETBSD:#define __amd64 1
8808// X86_64-NETBSD:#define __amd64__ 1
8809// X86_64-NETBSD:#define __x86_64 1
8810// X86_64-NETBSD:#define __x86_64__ 1
8811//
James Y Knightc97efa42016-02-11 16:51:29 +00008812// 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 +00008813//
8814// PS4:#define _LP64 1
8815// PS4:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
8816// PS4:#define __CHAR16_TYPE__ unsigned short
8817// PS4:#define __CHAR32_TYPE__ unsigned int
8818// PS4:#define __CHAR_BIT__ 8
8819// PS4:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
8820// PS4:#define __DBL_DIG__ 15
8821// PS4:#define __DBL_EPSILON__ 2.2204460492503131e-16
8822// PS4:#define __DBL_HAS_DENORM__ 1
8823// PS4:#define __DBL_HAS_INFINITY__ 1
8824// PS4:#define __DBL_HAS_QUIET_NAN__ 1
8825// PS4:#define __DBL_MANT_DIG__ 53
8826// PS4:#define __DBL_MAX_10_EXP__ 308
8827// PS4:#define __DBL_MAX_EXP__ 1024
8828// PS4:#define __DBL_MAX__ 1.7976931348623157e+308
8829// PS4:#define __DBL_MIN_10_EXP__ (-307)
8830// PS4:#define __DBL_MIN_EXP__ (-1021)
8831// PS4:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00008832// PS4:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Alex Rosenberg12207fa2015-01-27 14:47:44 +00008833// PS4:#define __ELF__ 1
8834// PS4:#define __FLT_DENORM_MIN__ 1.40129846e-45F
8835// PS4:#define __FLT_DIG__ 6
8836// PS4:#define __FLT_EPSILON__ 1.19209290e-7F
8837// PS4:#define __FLT_EVAL_METHOD__ 0
8838// PS4:#define __FLT_HAS_DENORM__ 1
8839// PS4:#define __FLT_HAS_INFINITY__ 1
8840// PS4:#define __FLT_HAS_QUIET_NAN__ 1
8841// PS4:#define __FLT_MANT_DIG__ 24
8842// PS4:#define __FLT_MAX_10_EXP__ 38
8843// PS4:#define __FLT_MAX_EXP__ 128
8844// PS4:#define __FLT_MAX__ 3.40282347e+38F
8845// PS4:#define __FLT_MIN_10_EXP__ (-37)
8846// PS4:#define __FLT_MIN_EXP__ (-125)
8847// PS4:#define __FLT_MIN__ 1.17549435e-38F
8848// PS4:#define __FLT_RADIX__ 2
8849// PS4:#define __FreeBSD__ 9
8850// PS4:#define __FreeBSD_cc_version 900001
8851// PS4:#define __INT16_TYPE__ short
8852// PS4:#define __INT32_TYPE__ int
8853// PS4:#define __INT64_C_SUFFIX__ L
8854// PS4:#define __INT64_TYPE__ long int
8855// PS4:#define __INT8_TYPE__ signed char
8856// PS4:#define __INTMAX_MAX__ 9223372036854775807L
8857// PS4:#define __INTMAX_TYPE__ long int
8858// PS4:#define __INTMAX_WIDTH__ 64
8859// PS4:#define __INTPTR_TYPE__ long int
8860// PS4:#define __INTPTR_WIDTH__ 64
8861// PS4:#define __INT_MAX__ 2147483647
8862// PS4:#define __KPRINTF_ATTRIBUTE__ 1
8863// PS4:#define __LDBL_DENORM_MIN__ 3.64519953188247460253e-4951L
8864// PS4:#define __LDBL_DIG__ 18
8865// PS4:#define __LDBL_EPSILON__ 1.08420217248550443401e-19L
8866// PS4:#define __LDBL_HAS_DENORM__ 1
8867// PS4:#define __LDBL_HAS_INFINITY__ 1
8868// PS4:#define __LDBL_HAS_QUIET_NAN__ 1
8869// PS4:#define __LDBL_MANT_DIG__ 64
8870// PS4:#define __LDBL_MAX_10_EXP__ 4932
8871// PS4:#define __LDBL_MAX_EXP__ 16384
8872// PS4:#define __LDBL_MAX__ 1.18973149535723176502e+4932L
8873// PS4:#define __LDBL_MIN_10_EXP__ (-4931)
8874// PS4:#define __LDBL_MIN_EXP__ (-16381)
8875// PS4:#define __LDBL_MIN__ 3.36210314311209350626e-4932L
8876// PS4:#define __LITTLE_ENDIAN__ 1
8877// PS4:#define __LONG_LONG_MAX__ 9223372036854775807LL
8878// PS4:#define __LONG_MAX__ 9223372036854775807L
8879// PS4:#define __LP64__ 1
8880// PS4:#define __MMX__ 1
8881// PS4:#define __NO_MATH_INLINES 1
Paul Robinson9d613612016-05-16 17:22:25 +00008882// PS4:#define __ORBIS__ 1
Alex Rosenberg12207fa2015-01-27 14:47:44 +00008883// PS4:#define __POINTER_WIDTH__ 64
Alex Rosenberg12207fa2015-01-27 14:47:44 +00008884// PS4:#define __PTRDIFF_MAX__ 9223372036854775807L
8885// PS4:#define __PTRDIFF_TYPE__ long int
8886// PS4:#define __PTRDIFF_WIDTH__ 64
James Y Knightc97efa42016-02-11 16:51:29 +00008887// PS4:#define __REGISTER_PREFIX__
Alex Rosenberg12207fa2015-01-27 14:47:44 +00008888// PS4:#define __SCHAR_MAX__ 127
8889// PS4:#define __SHRT_MAX__ 32767
8890// PS4:#define __SIG_ATOMIC_MAX__ 2147483647
8891// PS4:#define __SIG_ATOMIC_WIDTH__ 32
8892// PS4:#define __SIZEOF_DOUBLE__ 8
8893// PS4:#define __SIZEOF_FLOAT__ 4
8894// PS4:#define __SIZEOF_INT__ 4
8895// PS4:#define __SIZEOF_LONG_DOUBLE__ 16
8896// PS4:#define __SIZEOF_LONG_LONG__ 8
8897// PS4:#define __SIZEOF_LONG__ 8
8898// PS4:#define __SIZEOF_POINTER__ 8
8899// PS4:#define __SIZEOF_PTRDIFF_T__ 8
8900// PS4:#define __SIZEOF_SHORT__ 2
8901// PS4:#define __SIZEOF_SIZE_T__ 8
8902// PS4:#define __SIZEOF_WCHAR_T__ 2
8903// PS4:#define __SIZEOF_WINT_T__ 4
8904// PS4:#define __SIZE_TYPE__ long unsigned int
8905// PS4:#define __SIZE_WIDTH__ 64
8906// PS4:#define __SSE2_MATH__ 1
8907// PS4:#define __SSE2__ 1
8908// PS4:#define __SSE_MATH__ 1
8909// PS4:#define __SSE__ 1
Sunil Srivastavabf010802016-04-27 19:53:03 +00008910// PS4:#define __STDC_VERSION__ 199901L
Alex Rosenberg12207fa2015-01-27 14:47:44 +00008911// PS4:#define __UINTMAX_TYPE__ long unsigned int
8912// PS4:#define __USER_LABEL_PREFIX__
8913// PS4:#define __WCHAR_MAX__ 65535
8914// PS4:#define __WCHAR_TYPE__ unsigned short
8915// PS4:#define __WCHAR_UNSIGNED__ 1
8916// PS4:#define __WCHAR_WIDTH__ 16
8917// PS4:#define __WINT_TYPE__ int
8918// PS4:#define __WINT_WIDTH__ 32
8919// PS4:#define __amd64 1
8920// PS4:#define __amd64__ 1
Saleem Abdulrasool56027092017-02-07 19:00:06 +00008921// PS4:#define __unix 1
Alex Rosenberg12207fa2015-01-27 14:47:44 +00008922// PS4:#define __unix__ 1
8923// PS4:#define __x86_64 1
8924// PS4:#define __x86_64__ 1
Douglas Yung60fc1dd2017-02-09 00:07:38 +00008925// PS4:#define unix 1
Alex Rosenberg12207fa2015-01-27 14:47:44 +00008926//
James Y Knightc97efa42016-02-11 16:51:29 +00008927// RUN: %clang_cc1 -E -dM -triple=x86_64-pc-mingw32 < /dev/null | FileCheck -match-full-lines -check-prefix X86-64-DECLSPEC %s
8928// RUN: %clang_cc1 -E -dM -fms-extensions -triple=x86_64-unknown-mingw32 < /dev/null | FileCheck -match-full-lines -check-prefix X86-64-DECLSPEC %s
8929// X86-64-DECLSPEC: #define __declspec{{.*}}
David Majnemerae1ed0e2015-05-28 04:36:18 +00008930//
James Y Knightc97efa42016-02-11 16:51:29 +00008931// 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 +00008932// SPARCV9:#define __INT64_TYPE__ long int
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00008933// SPARCV9:#define __INTMAX_C_SUFFIX__ L
Jakob Stoklund Olesen248520b2013-05-15 03:22:33 +00008934// SPARCV9:#define __INTMAX_TYPE__ long int
8935// SPARCV9:#define __INTPTR_TYPE__ long int
8936// SPARCV9:#define __LONG_MAX__ 9223372036854775807L
8937// SPARCV9:#define __LP64__ 1
8938// SPARCV9:#define __SIZEOF_LONG__ 8
8939// SPARCV9:#define __SIZEOF_POINTER__ 8
Joerg Sonnenberger3809a7a2014-07-14 20:40:56 +00008940// SPARCV9:#define __UINTPTR_TYPE__ long unsigned int
Jakob Stoklund Olesen248520b2013-05-15 03:22:33 +00008941//
James Y Knightc97efa42016-02-11 16:51:29 +00008942// 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 +00008943// SPARC64-OBSD:#define __INT64_TYPE__ long long int
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00008944// SPARC64-OBSD:#define __INTMAX_C_SUFFIX__ LL
Jakob Stoklund Olesen826df142013-05-19 17:53:37 +00008945// SPARC64-OBSD:#define __INTMAX_TYPE__ long long int
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00008946// SPARC64-OBSD:#define __UINTMAX_C_SUFFIX__ ULL
Jakob Stoklund Olesen826df142013-05-19 17:53:37 +00008947// SPARC64-OBSD:#define __UINTMAX_TYPE__ long long unsigned int
8948//
James Y Knightc97efa42016-02-11 16:51:29 +00008949// 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 +00008950// KFREEBSD-DEFINE:#define __FreeBSD_kernel__ 1
8951// KFREEBSD-DEFINE:#define __GLIBC__ 1
8952//
James Y Knightc97efa42016-02-11 16:51:29 +00008953// 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 +00008954// KFREEBSDI686-DEFINE:#define __FreeBSD_kernel__ 1
8955// KFREEBSDI686-DEFINE:#define __GLIBC__ 1
8956//
James Y Knightc97efa42016-02-11 16:51:29 +00008957// 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 +00008958// GNUSOURCE:#define _GNU_SOURCE 1
Sylvestre Ledru4e06e6e2013-09-06 15:36:36 +00008959//
James Y Knightc97efa42016-02-11 16:51:29 +00008960// RUN: %clang_cc1 -x c++ -std=c++98 -fno-rtti -E -dM < /dev/null | FileCheck -match-full-lines -check-prefix NORTTI %s
8961// NORTTI: #define __GXX_ABI_VERSION {{.*}}
Dan Gohman04f87202010-05-28 00:27:15 +00008962// NORTTI-NOT:#define __GXX_RTTI
James Y Knightc97efa42016-02-11 16:51:29 +00008963// NORTTI:#define __STDC__ 1
Evgeniy Stepanov94dc4c92012-04-26 12:08:09 +00008964//
James Y Knightc97efa42016-02-11 16:51:29 +00008965// RUN: %clang_cc1 -triple arm-linux-androideabi -E -dM < /dev/null | FileCheck -match-full-lines -check-prefix ANDROID %s
Stephen Hinesa89d8ff2016-11-11 01:29:39 +00008966// ANDROID-NOT:#define __ANDROID_API__
James Y Knightc97efa42016-02-11 16:51:29 +00008967// ANDROID:#define __ANDROID__ 1
Sylvestre Ledru4e06e6e2013-09-06 15:36:36 +00008968//
Richard Smith59139022016-09-30 22:41:36 +00008969// RUN: %clang_cc1 -x c++ -triple i686-linux-android -E -dM < /dev/null | FileCheck -match-full-lines -check-prefix I386-ANDROID-CXX %s
8970// I386-ANDROID-CXX:#define __STDCPP_DEFAULT_NEW_ALIGNMENT__ 4U
8971//
8972// RUN: %clang_cc1 -x c++ -triple x86_64-linux-android -E -dM < /dev/null | FileCheck -match-full-lines -check-prefix X86_64-ANDROID-CXX %s
8973// X86_64-ANDROID-CXX:#define __STDCPP_DEFAULT_NEW_ALIGNMENT__ 16UL
8974//
Stephen Hinesa89d8ff2016-11-11 01:29:39 +00008975// RUN: %clang_cc1 -triple arm-linux-androideabi20 -E -dM < /dev/null | FileCheck -match-full-lines -check-prefix ANDROID20 %s
8976// ANDROID20:#define __ANDROID_API__ 20
8977// ANDROID20:#define __ANDROID__ 1
8978//
Jacques Pienaard964cc22016-03-28 21:02:54 +00008979// RUN: %clang_cc1 -triple lanai-unknown-unknown -E -dM < /dev/null | FileCheck -match-full-lines -check-prefix LANAI %s
8980// LANAI: #define __lanai__ 1
8981//
Renato Golin0201a9e2016-09-22 19:28:20 +00008982// RUN: %clang_cc1 -E -dM -ffreestanding -triple=amd64-unknown-openbsd6.1 < /dev/null | FileCheck -match-full-lines -check-prefix OPENBSD %s
Brad Smith9aa2bf22017-02-21 23:13:09 +00008983// RUN: %clang_cc1 -E -dM -ffreestanding -triple=aarch64-unknown-openbsd6.1 < /dev/null | FileCheck -match-full-lines -check-prefix OPENBSD %s
Renato Golin0201a9e2016-09-22 19:28:20 +00008984// RUN: %clang_cc1 -E -dM -ffreestanding -triple=arm-unknown-openbsd6.1-gnueabi < /dev/null | FileCheck -match-full-lines -check-prefix OPENBSD %s
8985// RUN: %clang_cc1 -E -dM -ffreestanding -triple=i386-unknown-openbsd6.1 < /dev/null | FileCheck -match-full-lines -check-prefix OPENBSD %s
Brad Smith9cb3b3b2017-02-25 16:35:18 +00008986// RUN: %clang_cc1 -E -dM -ffreestanding -triple=powerpc-unknown-openbsd6.1 < /dev/null | FileCheck -match-full-lines -check-prefix OPENBSD %s
Brad Smith8e55bd52017-03-06 23:48:31 +00008987// RUN: %clang_cc1 -E -dM -ffreestanding -triple=mips64-unknown-openbsd6.1 < /dev/null | FileCheck -match-full-lines -check-prefix OPENBSD %s
8988// RUN: %clang_cc1 -E -dM -ffreestanding -triple=mips64el-unknown-openbsd6.1 < /dev/null | FileCheck -match-full-lines -check-prefix OPENBSD %s
Renato Golin0201a9e2016-09-22 19:28:20 +00008989// RUN: %clang_cc1 -E -dM -ffreestanding -triple=sparc64-unknown-openbsd6.1 < /dev/null | FileCheck -match-full-lines -check-prefix OPENBSD %s
8990// OPENBSD:#define __ELF__ 1
8991// OPENBSD:#define __INT16_TYPE__ short
8992// OPENBSD:#define __INT32_TYPE__ int
8993// OPENBSD:#define __INT64_TYPE__ long long int
8994// OPENBSD:#define __INT8_TYPE__ signed char
8995// OPENBSD:#define __INTMAX_TYPE__ long long int
8996// OPENBSD:#define __INTPTR_TYPE__ long int
8997// OPENBSD:#define __OpenBSD__ 1
8998// OPENBSD:#define __PTRDIFF_TYPE__ long int
8999// OPENBSD:#define __SIZE_TYPE__ long unsigned int
9000// OPENBSD:#define __UINT16_TYPE__ unsigned short
9001// OPENBSD:#define __UINT32_TYPE__ unsigned int
9002// OPENBSD:#define __UINT64_TYPE__ long long unsigned int
9003// OPENBSD:#define __UINT8_TYPE__ unsigned char
9004// OPENBSD:#define __UINTMAX_TYPE__ long long unsigned int
9005// OPENBSD:#define __UINTPTR_TYPE__ long unsigned int
9006// OPENBSD:#define __WCHAR_TYPE__ int
9007// OPENBSD:#define __WINT_TYPE__ int
9008//
James Y Knightc97efa42016-02-11 16:51:29 +00009009// 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 +00009010// PPC64-FREEBSD-NOT: #define __LONG_DOUBLE_128__ 1
Robert Lytton0e076492013-08-13 09:43:10 +00009011//
James Y Knightc97efa42016-02-11 16:51:29 +00009012// 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 +00009013// XCORE:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
9014// XCORE:#define __LITTLE_ENDIAN__ 1
Robert Lytton0e076492013-08-13 09:43:10 +00009015// XCORE:#define __XS1B__ 1
Dan Gohmanc2853072015-09-03 22:51:53 +00009016//
9017// RUN: %clang_cc1 -E -dM -ffreestanding -triple=wasm32-unknown-unknown \
9018// RUN: < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00009019// RUN: | FileCheck -match-full-lines -check-prefix=WEBASSEMBLY32 %s
Dan Gohmanc2853072015-09-03 22:51:53 +00009020//
James Y Knightc97efa42016-02-11 16:51:29 +00009021// WEBASSEMBLY32:#define _ILP32 1
Dan Gohmanc2853072015-09-03 22:51:53 +00009022// WEBASSEMBLY32-NOT:#define _LP64
James Y Knightc97efa42016-02-11 16:51:29 +00009023// WEBASSEMBLY32-NEXT:#define __ATOMIC_ACQUIRE 2
9024// WEBASSEMBLY32-NEXT:#define __ATOMIC_ACQ_REL 4
9025// WEBASSEMBLY32-NEXT:#define __ATOMIC_CONSUME 1
9026// WEBASSEMBLY32-NEXT:#define __ATOMIC_RELAXED 0
9027// WEBASSEMBLY32-NEXT:#define __ATOMIC_RELEASE 3
9028// WEBASSEMBLY32-NEXT:#define __ATOMIC_SEQ_CST 5
9029// WEBASSEMBLY32-NEXT:#define __BIGGEST_ALIGNMENT__ 16
9030// WEBASSEMBLY32-NEXT:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
9031// WEBASSEMBLY32-NEXT:#define __CHAR16_TYPE__ unsigned short
9032// WEBASSEMBLY32-NEXT:#define __CHAR32_TYPE__ unsigned int
9033// WEBASSEMBLY32-NEXT:#define __CHAR_BIT__ 8
Dan Gohmanc2853072015-09-03 22:51:53 +00009034// WEBASSEMBLY32-NOT:#define __CHAR_UNSIGNED__
Eric Fiselier4b2c8f72017-04-20 22:53:57 +00009035// WEBASSEMBLY32-NEXT:#define __CLANG_ATOMIC_BOOL_LOCK_FREE 2
9036// WEBASSEMBLY32-NEXT:#define __CLANG_ATOMIC_CHAR16_T_LOCK_FREE 2
9037// WEBASSEMBLY32-NEXT:#define __CLANG_ATOMIC_CHAR32_T_LOCK_FREE 2
9038// WEBASSEMBLY32-NEXT:#define __CLANG_ATOMIC_CHAR_LOCK_FREE 2
9039// WEBASSEMBLY32-NEXT:#define __CLANG_ATOMIC_INT_LOCK_FREE 2
Dan Gohman7dee1712017-06-07 02:22:40 +00009040// WEBASSEMBLY32-NEXT:#define __CLANG_ATOMIC_LLONG_LOCK_FREE 2
Eric Fiselier4b2c8f72017-04-20 22:53:57 +00009041// WEBASSEMBLY32-NEXT:#define __CLANG_ATOMIC_LONG_LOCK_FREE 2
9042// WEBASSEMBLY32-NEXT:#define __CLANG_ATOMIC_POINTER_LOCK_FREE 2
9043// WEBASSEMBLY32-NEXT:#define __CLANG_ATOMIC_SHORT_LOCK_FREE 2
9044// WEBASSEMBLY32-NEXT:#define __CLANG_ATOMIC_WCHAR_T_LOCK_FREE 2
James Y Knightc97efa42016-02-11 16:51:29 +00009045// WEBASSEMBLY32-NEXT:#define __CONSTANT_CFSTRINGS__ 1
9046// WEBASSEMBLY32-NEXT:#define __DBL_DECIMAL_DIG__ 17
9047// WEBASSEMBLY32-NEXT:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
9048// WEBASSEMBLY32-NEXT:#define __DBL_DIG__ 15
9049// WEBASSEMBLY32-NEXT:#define __DBL_EPSILON__ 2.2204460492503131e-16
9050// WEBASSEMBLY32-NEXT:#define __DBL_HAS_DENORM__ 1
9051// WEBASSEMBLY32-NEXT:#define __DBL_HAS_INFINITY__ 1
9052// WEBASSEMBLY32-NEXT:#define __DBL_HAS_QUIET_NAN__ 1
9053// WEBASSEMBLY32-NEXT:#define __DBL_MANT_DIG__ 53
9054// WEBASSEMBLY32-NEXT:#define __DBL_MAX_10_EXP__ 308
9055// WEBASSEMBLY32-NEXT:#define __DBL_MAX_EXP__ 1024
9056// WEBASSEMBLY32-NEXT:#define __DBL_MAX__ 1.7976931348623157e+308
9057// WEBASSEMBLY32-NEXT:#define __DBL_MIN_10_EXP__ (-307)
9058// WEBASSEMBLY32-NEXT:#define __DBL_MIN_EXP__ (-1021)
9059// WEBASSEMBLY32-NEXT:#define __DBL_MIN__ 2.2250738585072014e-308
9060// WEBASSEMBLY32-NEXT:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Dan Gohmanc2853072015-09-03 22:51:53 +00009061// WEBASSEMBLY32-NOT:#define __ELF__
James Y Knightc97efa42016-02-11 16:51:29 +00009062// WEBASSEMBLY32-NEXT:#define __FINITE_MATH_ONLY__ 0
9063// WEBASSEMBLY32-NEXT:#define __FLT_DECIMAL_DIG__ 9
9064// WEBASSEMBLY32-NEXT:#define __FLT_DENORM_MIN__ 1.40129846e-45F
9065// WEBASSEMBLY32-NEXT:#define __FLT_DIG__ 6
9066// WEBASSEMBLY32-NEXT:#define __FLT_EPSILON__ 1.19209290e-7F
9067// WEBASSEMBLY32-NEXT:#define __FLT_EVAL_METHOD__ 0
9068// WEBASSEMBLY32-NEXT:#define __FLT_HAS_DENORM__ 1
9069// WEBASSEMBLY32-NEXT:#define __FLT_HAS_INFINITY__ 1
9070// WEBASSEMBLY32-NEXT:#define __FLT_HAS_QUIET_NAN__ 1
9071// WEBASSEMBLY32-NEXT:#define __FLT_MANT_DIG__ 24
9072// WEBASSEMBLY32-NEXT:#define __FLT_MAX_10_EXP__ 38
9073// WEBASSEMBLY32-NEXT:#define __FLT_MAX_EXP__ 128
9074// WEBASSEMBLY32-NEXT:#define __FLT_MAX__ 3.40282347e+38F
9075// WEBASSEMBLY32-NEXT:#define __FLT_MIN_10_EXP__ (-37)
9076// WEBASSEMBLY32-NEXT:#define __FLT_MIN_EXP__ (-125)
9077// WEBASSEMBLY32-NEXT:#define __FLT_MIN__ 1.17549435e-38F
9078// WEBASSEMBLY32-NEXT:#define __FLT_RADIX__ 2
9079// WEBASSEMBLY32-NEXT:#define __GCC_ATOMIC_BOOL_LOCK_FREE 2
9080// WEBASSEMBLY32-NEXT:#define __GCC_ATOMIC_CHAR16_T_LOCK_FREE 2
9081// WEBASSEMBLY32-NEXT:#define __GCC_ATOMIC_CHAR32_T_LOCK_FREE 2
9082// WEBASSEMBLY32-NEXT:#define __GCC_ATOMIC_CHAR_LOCK_FREE 2
9083// WEBASSEMBLY32-NEXT:#define __GCC_ATOMIC_INT_LOCK_FREE 2
Dan Gohman7dee1712017-06-07 02:22:40 +00009084// WEBASSEMBLY32-NEXT:#define __GCC_ATOMIC_LLONG_LOCK_FREE 2
James Y Knightc97efa42016-02-11 16:51:29 +00009085// WEBASSEMBLY32-NEXT:#define __GCC_ATOMIC_LONG_LOCK_FREE 2
9086// WEBASSEMBLY32-NEXT:#define __GCC_ATOMIC_POINTER_LOCK_FREE 2
9087// WEBASSEMBLY32-NEXT:#define __GCC_ATOMIC_SHORT_LOCK_FREE 2
9088// WEBASSEMBLY32-NEXT:#define __GCC_ATOMIC_TEST_AND_SET_TRUEVAL 1
9089// WEBASSEMBLY32-NEXT:#define __GCC_ATOMIC_WCHAR_T_LOCK_FREE 2
Tim Northover25809012016-02-11 21:31:51 +00009090// WEBASSEMBLY32-NEXT:#define __GNUC_MINOR__ {{.*}}
9091// WEBASSEMBLY32-NEXT:#define __GNUC_PATCHLEVEL__ {{.*}}
James Y Knightc97efa42016-02-11 16:51:29 +00009092// WEBASSEMBLY32-NEXT:#define __GNUC_STDC_INLINE__ 1
Tim Northover25809012016-02-11 21:31:51 +00009093// WEBASSEMBLY32-NEXT:#define __GNUC__ {{.*}}
James Y Knightc97efa42016-02-11 16:51:29 +00009094// WEBASSEMBLY32-NEXT:#define __GXX_ABI_VERSION 1002
9095// WEBASSEMBLY32-NEXT:#define __ILP32__ 1
9096// WEBASSEMBLY32-NEXT:#define __INT16_C_SUFFIX__
9097// WEBASSEMBLY32-NEXT:#define __INT16_FMTd__ "hd"
9098// WEBASSEMBLY32-NEXT:#define __INT16_FMTi__ "hi"
9099// WEBASSEMBLY32-NEXT:#define __INT16_MAX__ 32767
9100// WEBASSEMBLY32-NEXT:#define __INT16_TYPE__ short
9101// WEBASSEMBLY32-NEXT:#define __INT32_C_SUFFIX__
9102// WEBASSEMBLY32-NEXT:#define __INT32_FMTd__ "d"
9103// WEBASSEMBLY32-NEXT:#define __INT32_FMTi__ "i"
9104// WEBASSEMBLY32-NEXT:#define __INT32_MAX__ 2147483647
9105// WEBASSEMBLY32-NEXT:#define __INT32_TYPE__ int
9106// WEBASSEMBLY32-NEXT:#define __INT64_C_SUFFIX__ LL
9107// WEBASSEMBLY32-NEXT:#define __INT64_FMTd__ "lld"
9108// WEBASSEMBLY32-NEXT:#define __INT64_FMTi__ "lli"
9109// WEBASSEMBLY32-NEXT:#define __INT64_MAX__ 9223372036854775807LL
9110// WEBASSEMBLY32-NEXT:#define __INT64_TYPE__ long long int
9111// WEBASSEMBLY32-NEXT:#define __INT8_C_SUFFIX__
9112// WEBASSEMBLY32-NEXT:#define __INT8_FMTd__ "hhd"
9113// WEBASSEMBLY32-NEXT:#define __INT8_FMTi__ "hhi"
9114// WEBASSEMBLY32-NEXT:#define __INT8_MAX__ 127
9115// WEBASSEMBLY32-NEXT:#define __INT8_TYPE__ signed char
9116// WEBASSEMBLY32-NEXT:#define __INTMAX_C_SUFFIX__ LL
9117// WEBASSEMBLY32-NEXT:#define __INTMAX_FMTd__ "lld"
9118// WEBASSEMBLY32-NEXT:#define __INTMAX_FMTi__ "lli"
9119// WEBASSEMBLY32-NEXT:#define __INTMAX_MAX__ 9223372036854775807LL
9120// WEBASSEMBLY32-NEXT:#define __INTMAX_TYPE__ long long int
9121// WEBASSEMBLY32-NEXT:#define __INTMAX_WIDTH__ 64
Derek Schuffacdc8e62016-09-01 22:38:37 +00009122// WEBASSEMBLY32-NEXT:#define __INTPTR_FMTd__ "d"
9123// WEBASSEMBLY32-NEXT:#define __INTPTR_FMTi__ "i"
9124// WEBASSEMBLY32-NEXT:#define __INTPTR_MAX__ 2147483647
9125// WEBASSEMBLY32-NEXT:#define __INTPTR_TYPE__ int
James Y Knightc97efa42016-02-11 16:51:29 +00009126// WEBASSEMBLY32-NEXT:#define __INTPTR_WIDTH__ 32
9127// WEBASSEMBLY32-NEXT:#define __INT_FAST16_FMTd__ "hd"
9128// WEBASSEMBLY32-NEXT:#define __INT_FAST16_FMTi__ "hi"
9129// WEBASSEMBLY32-NEXT:#define __INT_FAST16_MAX__ 32767
9130// WEBASSEMBLY32-NEXT:#define __INT_FAST16_TYPE__ short
9131// WEBASSEMBLY32-NEXT:#define __INT_FAST32_FMTd__ "d"
9132// WEBASSEMBLY32-NEXT:#define __INT_FAST32_FMTi__ "i"
9133// WEBASSEMBLY32-NEXT:#define __INT_FAST32_MAX__ 2147483647
9134// WEBASSEMBLY32-NEXT:#define __INT_FAST32_TYPE__ int
9135// WEBASSEMBLY32-NEXT:#define __INT_FAST64_FMTd__ "lld"
9136// WEBASSEMBLY32-NEXT:#define __INT_FAST64_FMTi__ "lli"
9137// WEBASSEMBLY32-NEXT:#define __INT_FAST64_MAX__ 9223372036854775807LL
9138// WEBASSEMBLY32-NEXT:#define __INT_FAST64_TYPE__ long long int
9139// WEBASSEMBLY32-NEXT:#define __INT_FAST8_FMTd__ "hhd"
9140// WEBASSEMBLY32-NEXT:#define __INT_FAST8_FMTi__ "hhi"
9141// WEBASSEMBLY32-NEXT:#define __INT_FAST8_MAX__ 127
9142// WEBASSEMBLY32-NEXT:#define __INT_FAST8_TYPE__ signed char
9143// WEBASSEMBLY32-NEXT:#define __INT_LEAST16_FMTd__ "hd"
9144// WEBASSEMBLY32-NEXT:#define __INT_LEAST16_FMTi__ "hi"
9145// WEBASSEMBLY32-NEXT:#define __INT_LEAST16_MAX__ 32767
9146// WEBASSEMBLY32-NEXT:#define __INT_LEAST16_TYPE__ short
9147// WEBASSEMBLY32-NEXT:#define __INT_LEAST32_FMTd__ "d"
9148// WEBASSEMBLY32-NEXT:#define __INT_LEAST32_FMTi__ "i"
9149// WEBASSEMBLY32-NEXT:#define __INT_LEAST32_MAX__ 2147483647
9150// WEBASSEMBLY32-NEXT:#define __INT_LEAST32_TYPE__ int
9151// WEBASSEMBLY32-NEXT:#define __INT_LEAST64_FMTd__ "lld"
9152// WEBASSEMBLY32-NEXT:#define __INT_LEAST64_FMTi__ "lli"
9153// WEBASSEMBLY32-NEXT:#define __INT_LEAST64_MAX__ 9223372036854775807LL
9154// WEBASSEMBLY32-NEXT:#define __INT_LEAST64_TYPE__ long long int
9155// WEBASSEMBLY32-NEXT:#define __INT_LEAST8_FMTd__ "hhd"
9156// WEBASSEMBLY32-NEXT:#define __INT_LEAST8_FMTi__ "hhi"
9157// WEBASSEMBLY32-NEXT:#define __INT_LEAST8_MAX__ 127
9158// WEBASSEMBLY32-NEXT:#define __INT_LEAST8_TYPE__ signed char
9159// WEBASSEMBLY32-NEXT:#define __INT_MAX__ 2147483647
9160// WEBASSEMBLY32-NEXT:#define __LDBL_DECIMAL_DIG__ 36
9161// WEBASSEMBLY32-NEXT:#define __LDBL_DENORM_MIN__ 6.47517511943802511092443895822764655e-4966L
9162// WEBASSEMBLY32-NEXT:#define __LDBL_DIG__ 33
9163// WEBASSEMBLY32-NEXT:#define __LDBL_EPSILON__ 1.92592994438723585305597794258492732e-34L
9164// WEBASSEMBLY32-NEXT:#define __LDBL_HAS_DENORM__ 1
9165// WEBASSEMBLY32-NEXT:#define __LDBL_HAS_INFINITY__ 1
9166// WEBASSEMBLY32-NEXT:#define __LDBL_HAS_QUIET_NAN__ 1
9167// WEBASSEMBLY32-NEXT:#define __LDBL_MANT_DIG__ 113
9168// WEBASSEMBLY32-NEXT:#define __LDBL_MAX_10_EXP__ 4932
9169// WEBASSEMBLY32-NEXT:#define __LDBL_MAX_EXP__ 16384
9170// WEBASSEMBLY32-NEXT:#define __LDBL_MAX__ 1.18973149535723176508575932662800702e+4932L
9171// WEBASSEMBLY32-NEXT:#define __LDBL_MIN_10_EXP__ (-4931)
9172// WEBASSEMBLY32-NEXT:#define __LDBL_MIN_EXP__ (-16381)
9173// WEBASSEMBLY32-NEXT:#define __LDBL_MIN__ 3.36210314311209350626267781732175260e-4932L
9174// WEBASSEMBLY32-NEXT:#define __LITTLE_ENDIAN__ 1
9175// WEBASSEMBLY32-NEXT:#define __LONG_LONG_MAX__ 9223372036854775807LL
9176// WEBASSEMBLY32-NEXT:#define __LONG_MAX__ 2147483647L
Dan Gohmanc2853072015-09-03 22:51:53 +00009177// WEBASSEMBLY32-NOT:#define __LP64__
James Y Knightc97efa42016-02-11 16:51:29 +00009178// WEBASSEMBLY32-NEXT:#define __NO_INLINE__ 1
Alex Lorenz41d13152017-01-20 16:48:25 +00009179// WEBASSEMBLY32-NEXT:#define __OBJC_BOOL_IS_BOOL 0
James Y Knightc97efa42016-02-11 16:51:29 +00009180// WEBASSEMBLY32-NEXT:#define __ORDER_BIG_ENDIAN__ 4321
9181// WEBASSEMBLY32-NEXT:#define __ORDER_LITTLE_ENDIAN__ 1234
9182// WEBASSEMBLY32-NEXT:#define __ORDER_PDP_ENDIAN__ 3412
9183// WEBASSEMBLY32-NEXT:#define __POINTER_WIDTH__ 32
9184// WEBASSEMBLY32-NEXT:#define __PRAGMA_REDEFINE_EXTNAME 1
Derek Schuffacdc8e62016-09-01 22:38:37 +00009185// WEBASSEMBLY32-NEXT:#define __PTRDIFF_FMTd__ "d"
9186// WEBASSEMBLY32-NEXT:#define __PTRDIFF_FMTi__ "i"
9187// WEBASSEMBLY32-NEXT:#define __PTRDIFF_MAX__ 2147483647
9188// WEBASSEMBLY32-NEXT:#define __PTRDIFF_TYPE__ int
James Y Knightc97efa42016-02-11 16:51:29 +00009189// WEBASSEMBLY32-NEXT:#define __PTRDIFF_WIDTH__ 32
Dan Gohmanc2853072015-09-03 22:51:53 +00009190// WEBASSEMBLY32-NOT:#define __REGISTER_PREFIX__
James Y Knightc97efa42016-02-11 16:51:29 +00009191// WEBASSEMBLY32-NEXT:#define __SCHAR_MAX__ 127
9192// WEBASSEMBLY32-NEXT:#define __SHRT_MAX__ 32767
9193// WEBASSEMBLY32-NEXT:#define __SIG_ATOMIC_MAX__ 2147483647L
9194// WEBASSEMBLY32-NEXT:#define __SIG_ATOMIC_WIDTH__ 32
9195// WEBASSEMBLY32-NEXT:#define __SIZEOF_DOUBLE__ 8
9196// WEBASSEMBLY32-NEXT:#define __SIZEOF_FLOAT__ 4
9197// WEBASSEMBLY32-NEXT:#define __SIZEOF_INT128__ 16
9198// WEBASSEMBLY32-NEXT:#define __SIZEOF_INT__ 4
9199// WEBASSEMBLY32-NEXT:#define __SIZEOF_LONG_DOUBLE__ 16
9200// WEBASSEMBLY32-NEXT:#define __SIZEOF_LONG_LONG__ 8
9201// WEBASSEMBLY32-NEXT:#define __SIZEOF_LONG__ 4
9202// WEBASSEMBLY32-NEXT:#define __SIZEOF_POINTER__ 4
9203// WEBASSEMBLY32-NEXT:#define __SIZEOF_PTRDIFF_T__ 4
9204// WEBASSEMBLY32-NEXT:#define __SIZEOF_SHORT__ 2
9205// WEBASSEMBLY32-NEXT:#define __SIZEOF_SIZE_T__ 4
9206// WEBASSEMBLY32-NEXT:#define __SIZEOF_WCHAR_T__ 4
9207// WEBASSEMBLY32-NEXT:#define __SIZEOF_WINT_T__ 4
Derek Schuffacdc8e62016-09-01 22:38:37 +00009208// WEBASSEMBLY32-NEXT:#define __SIZE_FMTX__ "X"
9209// WEBASSEMBLY32-NEXT:#define __SIZE_FMTo__ "o"
9210// WEBASSEMBLY32-NEXT:#define __SIZE_FMTu__ "u"
9211// WEBASSEMBLY32-NEXT:#define __SIZE_FMTx__ "x"
9212// WEBASSEMBLY32-NEXT:#define __SIZE_MAX__ 4294967295U
9213// WEBASSEMBLY32-NEXT:#define __SIZE_TYPE__ unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00009214// WEBASSEMBLY32-NEXT:#define __SIZE_WIDTH__ 32
9215// WEBASSEMBLY32-NEXT:#define __STDC_HOSTED__ 0
Dan Gohmanc2853072015-09-03 22:51:53 +00009216// WEBASSEMBLY32-NOT:#define __STDC_MB_MIGHT_NEQ_WC__
9217// WEBASSEMBLY32-NOT:#define __STDC_NO_ATOMICS__
9218// WEBASSEMBLY32-NOT:#define __STDC_NO_COMPLEX__
9219// WEBASSEMBLY32-NOT:#define __STDC_NO_VLA__
9220// WEBASSEMBLY32-NOT:#define __STDC_NO_THREADS__
James Y Knightc97efa42016-02-11 16:51:29 +00009221// WEBASSEMBLY32-NEXT:#define __STDC_UTF_16__ 1
9222// WEBASSEMBLY32-NEXT:#define __STDC_UTF_32__ 1
9223// WEBASSEMBLY32-NEXT:#define __STDC_VERSION__ 201112L
9224// WEBASSEMBLY32-NEXT:#define __STDC__ 1
9225// WEBASSEMBLY32-NEXT:#define __UINT16_C_SUFFIX__
9226// WEBASSEMBLY32-NEXT:#define __UINT16_FMTX__ "hX"
9227// WEBASSEMBLY32-NEXT:#define __UINT16_FMTo__ "ho"
9228// WEBASSEMBLY32-NEXT:#define __UINT16_FMTu__ "hu"
9229// WEBASSEMBLY32-NEXT:#define __UINT16_FMTx__ "hx"
9230// WEBASSEMBLY32-NEXT:#define __UINT16_MAX__ 65535
9231// WEBASSEMBLY32-NEXT:#define __UINT16_TYPE__ unsigned short
9232// WEBASSEMBLY32-NEXT:#define __UINT32_C_SUFFIX__ U
9233// WEBASSEMBLY32-NEXT:#define __UINT32_FMTX__ "X"
9234// WEBASSEMBLY32-NEXT:#define __UINT32_FMTo__ "o"
9235// WEBASSEMBLY32-NEXT:#define __UINT32_FMTu__ "u"
9236// WEBASSEMBLY32-NEXT:#define __UINT32_FMTx__ "x"
9237// WEBASSEMBLY32-NEXT:#define __UINT32_MAX__ 4294967295U
9238// WEBASSEMBLY32-NEXT:#define __UINT32_TYPE__ unsigned int
9239// WEBASSEMBLY32-NEXT:#define __UINT64_C_SUFFIX__ ULL
9240// WEBASSEMBLY32-NEXT:#define __UINT64_FMTX__ "llX"
9241// WEBASSEMBLY32-NEXT:#define __UINT64_FMTo__ "llo"
9242// WEBASSEMBLY32-NEXT:#define __UINT64_FMTu__ "llu"
9243// WEBASSEMBLY32-NEXT:#define __UINT64_FMTx__ "llx"
9244// WEBASSEMBLY32-NEXT:#define __UINT64_MAX__ 18446744073709551615ULL
9245// WEBASSEMBLY32-NEXT:#define __UINT64_TYPE__ long long unsigned int
9246// WEBASSEMBLY32-NEXT:#define __UINT8_C_SUFFIX__
9247// WEBASSEMBLY32-NEXT:#define __UINT8_FMTX__ "hhX"
9248// WEBASSEMBLY32-NEXT:#define __UINT8_FMTo__ "hho"
9249// WEBASSEMBLY32-NEXT:#define __UINT8_FMTu__ "hhu"
9250// WEBASSEMBLY32-NEXT:#define __UINT8_FMTx__ "hhx"
9251// WEBASSEMBLY32-NEXT:#define __UINT8_MAX__ 255
9252// WEBASSEMBLY32-NEXT:#define __UINT8_TYPE__ unsigned char
9253// WEBASSEMBLY32-NEXT:#define __UINTMAX_C_SUFFIX__ ULL
9254// WEBASSEMBLY32-NEXT:#define __UINTMAX_FMTX__ "llX"
9255// WEBASSEMBLY32-NEXT:#define __UINTMAX_FMTo__ "llo"
9256// WEBASSEMBLY32-NEXT:#define __UINTMAX_FMTu__ "llu"
9257// WEBASSEMBLY32-NEXT:#define __UINTMAX_FMTx__ "llx"
9258// WEBASSEMBLY32-NEXT:#define __UINTMAX_MAX__ 18446744073709551615ULL
9259// WEBASSEMBLY32-NEXT:#define __UINTMAX_TYPE__ long long unsigned int
9260// WEBASSEMBLY32-NEXT:#define __UINTMAX_WIDTH__ 64
Derek Schuffacdc8e62016-09-01 22:38:37 +00009261// WEBASSEMBLY32-NEXT:#define __UINTPTR_FMTX__ "X"
9262// WEBASSEMBLY32-NEXT:#define __UINTPTR_FMTo__ "o"
9263// WEBASSEMBLY32-NEXT:#define __UINTPTR_FMTu__ "u"
9264// WEBASSEMBLY32-NEXT:#define __UINTPTR_FMTx__ "x"
9265// WEBASSEMBLY32-NEXT:#define __UINTPTR_MAX__ 4294967295U
9266// WEBASSEMBLY32-NEXT:#define __UINTPTR_TYPE__ unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00009267// WEBASSEMBLY32-NEXT:#define __UINTPTR_WIDTH__ 32
9268// WEBASSEMBLY32-NEXT:#define __UINT_FAST16_FMTX__ "hX"
9269// WEBASSEMBLY32-NEXT:#define __UINT_FAST16_FMTo__ "ho"
9270// WEBASSEMBLY32-NEXT:#define __UINT_FAST16_FMTu__ "hu"
9271// WEBASSEMBLY32-NEXT:#define __UINT_FAST16_FMTx__ "hx"
9272// WEBASSEMBLY32-NEXT:#define __UINT_FAST16_MAX__ 65535
9273// WEBASSEMBLY32-NEXT:#define __UINT_FAST16_TYPE__ unsigned short
9274// WEBASSEMBLY32-NEXT:#define __UINT_FAST32_FMTX__ "X"
9275// WEBASSEMBLY32-NEXT:#define __UINT_FAST32_FMTo__ "o"
9276// WEBASSEMBLY32-NEXT:#define __UINT_FAST32_FMTu__ "u"
9277// WEBASSEMBLY32-NEXT:#define __UINT_FAST32_FMTx__ "x"
9278// WEBASSEMBLY32-NEXT:#define __UINT_FAST32_MAX__ 4294967295U
9279// WEBASSEMBLY32-NEXT:#define __UINT_FAST32_TYPE__ unsigned int
9280// WEBASSEMBLY32-NEXT:#define __UINT_FAST64_FMTX__ "llX"
9281// WEBASSEMBLY32-NEXT:#define __UINT_FAST64_FMTo__ "llo"
9282// WEBASSEMBLY32-NEXT:#define __UINT_FAST64_FMTu__ "llu"
9283// WEBASSEMBLY32-NEXT:#define __UINT_FAST64_FMTx__ "llx"
9284// WEBASSEMBLY32-NEXT:#define __UINT_FAST64_MAX__ 18446744073709551615ULL
9285// WEBASSEMBLY32-NEXT:#define __UINT_FAST64_TYPE__ long long unsigned int
9286// WEBASSEMBLY32-NEXT:#define __UINT_FAST8_FMTX__ "hhX"
9287// WEBASSEMBLY32-NEXT:#define __UINT_FAST8_FMTo__ "hho"
9288// WEBASSEMBLY32-NEXT:#define __UINT_FAST8_FMTu__ "hhu"
9289// WEBASSEMBLY32-NEXT:#define __UINT_FAST8_FMTx__ "hhx"
9290// WEBASSEMBLY32-NEXT:#define __UINT_FAST8_MAX__ 255
9291// WEBASSEMBLY32-NEXT:#define __UINT_FAST8_TYPE__ unsigned char
9292// WEBASSEMBLY32-NEXT:#define __UINT_LEAST16_FMTX__ "hX"
9293// WEBASSEMBLY32-NEXT:#define __UINT_LEAST16_FMTo__ "ho"
9294// WEBASSEMBLY32-NEXT:#define __UINT_LEAST16_FMTu__ "hu"
9295// WEBASSEMBLY32-NEXT:#define __UINT_LEAST16_FMTx__ "hx"
9296// WEBASSEMBLY32-NEXT:#define __UINT_LEAST16_MAX__ 65535
9297// WEBASSEMBLY32-NEXT:#define __UINT_LEAST16_TYPE__ unsigned short
9298// WEBASSEMBLY32-NEXT:#define __UINT_LEAST32_FMTX__ "X"
9299// WEBASSEMBLY32-NEXT:#define __UINT_LEAST32_FMTo__ "o"
9300// WEBASSEMBLY32-NEXT:#define __UINT_LEAST32_FMTu__ "u"
9301// WEBASSEMBLY32-NEXT:#define __UINT_LEAST32_FMTx__ "x"
9302// WEBASSEMBLY32-NEXT:#define __UINT_LEAST32_MAX__ 4294967295U
9303// WEBASSEMBLY32-NEXT:#define __UINT_LEAST32_TYPE__ unsigned int
9304// WEBASSEMBLY32-NEXT:#define __UINT_LEAST64_FMTX__ "llX"
9305// WEBASSEMBLY32-NEXT:#define __UINT_LEAST64_FMTo__ "llo"
9306// WEBASSEMBLY32-NEXT:#define __UINT_LEAST64_FMTu__ "llu"
9307// WEBASSEMBLY32-NEXT:#define __UINT_LEAST64_FMTx__ "llx"
9308// WEBASSEMBLY32-NEXT:#define __UINT_LEAST64_MAX__ 18446744073709551615ULL
9309// WEBASSEMBLY32-NEXT:#define __UINT_LEAST64_TYPE__ long long unsigned int
9310// WEBASSEMBLY32-NEXT:#define __UINT_LEAST8_FMTX__ "hhX"
9311// WEBASSEMBLY32-NEXT:#define __UINT_LEAST8_FMTo__ "hho"
9312// WEBASSEMBLY32-NEXT:#define __UINT_LEAST8_FMTu__ "hhu"
9313// WEBASSEMBLY32-NEXT:#define __UINT_LEAST8_FMTx__ "hhx"
9314// WEBASSEMBLY32-NEXT:#define __UINT_LEAST8_MAX__ 255
9315// WEBASSEMBLY32-NEXT:#define __UINT_LEAST8_TYPE__ unsigned char
9316// WEBASSEMBLY32-NEXT:#define __USER_LABEL_PREFIX__
9317// WEBASSEMBLY32-NEXT:#define __VERSION__ "{{.*}}"
9318// WEBASSEMBLY32-NEXT:#define __WCHAR_MAX__ 2147483647
9319// WEBASSEMBLY32-NEXT:#define __WCHAR_TYPE__ int
Dan Gohmanc2853072015-09-03 22:51:53 +00009320// WEBASSEMBLY32-NOT:#define __WCHAR_UNSIGNED__
James Y Knightc97efa42016-02-11 16:51:29 +00009321// WEBASSEMBLY32-NEXT:#define __WCHAR_WIDTH__ 32
9322// WEBASSEMBLY32-NEXT:#define __WINT_TYPE__ int
Dan Gohmanc2853072015-09-03 22:51:53 +00009323// WEBASSEMBLY32-NOT:#define __WINT_UNSIGNED__
James Y Knightc97efa42016-02-11 16:51:29 +00009324// WEBASSEMBLY32-NEXT:#define __WINT_WIDTH__ 32
9325// WEBASSEMBLY32-NEXT:#define __clang__ 1
Tim Northover25809012016-02-11 21:31:51 +00009326// WEBASSEMBLY32-NEXT:#define __clang_major__ {{.*}}
9327// WEBASSEMBLY32-NEXT:#define __clang_minor__ {{.*}}
9328// WEBASSEMBLY32-NEXT:#define __clang_patchlevel__ {{.*}}
James Y Knightc97efa42016-02-11 16:51:29 +00009329// WEBASSEMBLY32-NEXT:#define __clang_version__ "{{.*}}"
9330// WEBASSEMBLY32-NEXT:#define __llvm__ 1
Dan Gohmanc2853072015-09-03 22:51:53 +00009331// WEBASSEMBLY32-NOT:#define __wasm_simd128__
9332// WEBASSEMBLY32-NOT:#define __wasm_simd256__
9333// WEBASSEMBLY32-NOT:#define __wasm_simd512__
Saleem Abdulrasool56027092017-02-07 19:00:06 +00009334// WEBASSEMBLY32-NOT:#define __unix
Dan Gohmanc2853072015-09-03 22:51:53 +00009335// WEBASSEMBLY32-NOT:#define __unix__
James Y Knightc97efa42016-02-11 16:51:29 +00009336// WEBASSEMBLY32-NEXT:#define __wasm 1
9337// WEBASSEMBLY32-NEXT:#define __wasm32 1
9338// WEBASSEMBLY32-NEXT:#define __wasm32__ 1
Dan Gohmanc2853072015-09-03 22:51:53 +00009339// WEBASSEMBLY32-NOT:#define __wasm64
9340// WEBASSEMBLY32-NOT:#define __wasm64__
James Y Knightc97efa42016-02-11 16:51:29 +00009341// WEBASSEMBLY32-NEXT:#define __wasm__ 1
Dan Gohmanc2853072015-09-03 22:51:53 +00009342//
9343// RUN: %clang_cc1 -E -dM -ffreestanding -triple=wasm64-unknown-unknown \
9344// RUN: < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00009345// RUN: | FileCheck -match-full-lines -check-prefix=WEBASSEMBLY64 %s
Dan Gohmanc2853072015-09-03 22:51:53 +00009346//
9347// WEBASSEMBLY64-NOT:#define _ILP32
James Y Knightc97efa42016-02-11 16:51:29 +00009348// WEBASSEMBLY64:#define _LP64 1
9349// WEBASSEMBLY64-NEXT:#define __ATOMIC_ACQUIRE 2
9350// WEBASSEMBLY64-NEXT:#define __ATOMIC_ACQ_REL 4
9351// WEBASSEMBLY64-NEXT:#define __ATOMIC_CONSUME 1
9352// WEBASSEMBLY64-NEXT:#define __ATOMIC_RELAXED 0
9353// WEBASSEMBLY64-NEXT:#define __ATOMIC_RELEASE 3
9354// WEBASSEMBLY64-NEXT:#define __ATOMIC_SEQ_CST 5
9355// WEBASSEMBLY64-NEXT:#define __BIGGEST_ALIGNMENT__ 16
9356// WEBASSEMBLY64-NEXT:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
9357// WEBASSEMBLY64-NEXT:#define __CHAR16_TYPE__ unsigned short
9358// WEBASSEMBLY64-NEXT:#define __CHAR32_TYPE__ unsigned int
9359// WEBASSEMBLY64-NEXT:#define __CHAR_BIT__ 8
Dan Gohmanc2853072015-09-03 22:51:53 +00009360// WEBASSEMBLY64-NOT:#define __CHAR_UNSIGNED__
Eric Fiselier4b2c8f72017-04-20 22:53:57 +00009361// WEBASSEMBLY64-NEXT:#define __CLANG_ATOMIC_BOOL_LOCK_FREE 2
9362// WEBASSEMBLY64-NEXT:#define __CLANG_ATOMIC_CHAR16_T_LOCK_FREE 2
9363// WEBASSEMBLY64-NEXT:#define __CLANG_ATOMIC_CHAR32_T_LOCK_FREE 2
9364// WEBASSEMBLY64-NEXT:#define __CLANG_ATOMIC_CHAR_LOCK_FREE 2
9365// WEBASSEMBLY64-NEXT:#define __CLANG_ATOMIC_INT_LOCK_FREE 2
9366// WEBASSEMBLY64-NEXT:#define __CLANG_ATOMIC_LLONG_LOCK_FREE 2
9367// WEBASSEMBLY64-NEXT:#define __CLANG_ATOMIC_LONG_LOCK_FREE 2
9368// WEBASSEMBLY64-NEXT:#define __CLANG_ATOMIC_POINTER_LOCK_FREE 2
9369// WEBASSEMBLY64-NEXT:#define __CLANG_ATOMIC_SHORT_LOCK_FREE 2
9370// WEBASSEMBLY64-NEXT:#define __CLANG_ATOMIC_WCHAR_T_LOCK_FREE 2
James Y Knightc97efa42016-02-11 16:51:29 +00009371// WEBASSEMBLY64-NEXT:#define __CONSTANT_CFSTRINGS__ 1
9372// WEBASSEMBLY64-NEXT:#define __DBL_DECIMAL_DIG__ 17
9373// WEBASSEMBLY64-NEXT:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
9374// WEBASSEMBLY64-NEXT:#define __DBL_DIG__ 15
9375// WEBASSEMBLY64-NEXT:#define __DBL_EPSILON__ 2.2204460492503131e-16
9376// WEBASSEMBLY64-NEXT:#define __DBL_HAS_DENORM__ 1
9377// WEBASSEMBLY64-NEXT:#define __DBL_HAS_INFINITY__ 1
9378// WEBASSEMBLY64-NEXT:#define __DBL_HAS_QUIET_NAN__ 1
9379// WEBASSEMBLY64-NEXT:#define __DBL_MANT_DIG__ 53
9380// WEBASSEMBLY64-NEXT:#define __DBL_MAX_10_EXP__ 308
9381// WEBASSEMBLY64-NEXT:#define __DBL_MAX_EXP__ 1024
9382// WEBASSEMBLY64-NEXT:#define __DBL_MAX__ 1.7976931348623157e+308
9383// WEBASSEMBLY64-NEXT:#define __DBL_MIN_10_EXP__ (-307)
9384// WEBASSEMBLY64-NEXT:#define __DBL_MIN_EXP__ (-1021)
9385// WEBASSEMBLY64-NEXT:#define __DBL_MIN__ 2.2250738585072014e-308
9386// WEBASSEMBLY64-NEXT:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Dan Gohmanc2853072015-09-03 22:51:53 +00009387// WEBASSEMBLY64-NOT:#define __ELF__
James Y Knightc97efa42016-02-11 16:51:29 +00009388// WEBASSEMBLY64-NEXT:#define __FINITE_MATH_ONLY__ 0
9389// WEBASSEMBLY64-NEXT:#define __FLT_DECIMAL_DIG__ 9
9390// WEBASSEMBLY64-NEXT:#define __FLT_DENORM_MIN__ 1.40129846e-45F
9391// WEBASSEMBLY64-NEXT:#define __FLT_DIG__ 6
9392// WEBASSEMBLY64-NEXT:#define __FLT_EPSILON__ 1.19209290e-7F
9393// WEBASSEMBLY64-NEXT:#define __FLT_EVAL_METHOD__ 0
9394// WEBASSEMBLY64-NEXT:#define __FLT_HAS_DENORM__ 1
9395// WEBASSEMBLY64-NEXT:#define __FLT_HAS_INFINITY__ 1
9396// WEBASSEMBLY64-NEXT:#define __FLT_HAS_QUIET_NAN__ 1
9397// WEBASSEMBLY64-NEXT:#define __FLT_MANT_DIG__ 24
9398// WEBASSEMBLY64-NEXT:#define __FLT_MAX_10_EXP__ 38
9399// WEBASSEMBLY64-NEXT:#define __FLT_MAX_EXP__ 128
9400// WEBASSEMBLY64-NEXT:#define __FLT_MAX__ 3.40282347e+38F
9401// WEBASSEMBLY64-NEXT:#define __FLT_MIN_10_EXP__ (-37)
9402// WEBASSEMBLY64-NEXT:#define __FLT_MIN_EXP__ (-125)
9403// WEBASSEMBLY64-NEXT:#define __FLT_MIN__ 1.17549435e-38F
9404// WEBASSEMBLY64-NEXT:#define __FLT_RADIX__ 2
9405// WEBASSEMBLY64-NEXT:#define __GCC_ATOMIC_BOOL_LOCK_FREE 2
9406// WEBASSEMBLY64-NEXT:#define __GCC_ATOMIC_CHAR16_T_LOCK_FREE 2
9407// WEBASSEMBLY64-NEXT:#define __GCC_ATOMIC_CHAR32_T_LOCK_FREE 2
9408// WEBASSEMBLY64-NEXT:#define __GCC_ATOMIC_CHAR_LOCK_FREE 2
9409// WEBASSEMBLY64-NEXT:#define __GCC_ATOMIC_INT_LOCK_FREE 2
9410// WEBASSEMBLY64-NEXT:#define __GCC_ATOMIC_LLONG_LOCK_FREE 2
9411// WEBASSEMBLY64-NEXT:#define __GCC_ATOMIC_LONG_LOCK_FREE 2
9412// WEBASSEMBLY64-NEXT:#define __GCC_ATOMIC_POINTER_LOCK_FREE 2
9413// WEBASSEMBLY64-NEXT:#define __GCC_ATOMIC_SHORT_LOCK_FREE 2
9414// WEBASSEMBLY64-NEXT:#define __GCC_ATOMIC_TEST_AND_SET_TRUEVAL 1
9415// WEBASSEMBLY64-NEXT:#define __GCC_ATOMIC_WCHAR_T_LOCK_FREE 2
Tim Northover25809012016-02-11 21:31:51 +00009416// WEBASSEMBLY64-NEXT:#define __GNUC_MINOR__ {{.*}}
9417// WEBASSEMBLY64-NEXT:#define __GNUC_PATCHLEVEL__ {{.*}}
James Y Knightc97efa42016-02-11 16:51:29 +00009418// WEBASSEMBLY64-NEXT:#define __GNUC_STDC_INLINE__ 1
Dan Gohmanc2853072015-09-03 22:51:53 +00009419// WEBASSEMBLY64-NEXT:#define __GNUC__ {{.}}
James Y Knightc97efa42016-02-11 16:51:29 +00009420// WEBASSEMBLY64-NEXT:#define __GXX_ABI_VERSION 1002
Dan Gohmanc2853072015-09-03 22:51:53 +00009421// WEBASSEMBLY64-NOT:#define __ILP32__
James Y Knightc97efa42016-02-11 16:51:29 +00009422// WEBASSEMBLY64-NEXT:#define __INT16_C_SUFFIX__
9423// WEBASSEMBLY64-NEXT:#define __INT16_FMTd__ "hd"
9424// WEBASSEMBLY64-NEXT:#define __INT16_FMTi__ "hi"
9425// WEBASSEMBLY64-NEXT:#define __INT16_MAX__ 32767
9426// WEBASSEMBLY64-NEXT:#define __INT16_TYPE__ short
9427// WEBASSEMBLY64-NEXT:#define __INT32_C_SUFFIX__
9428// WEBASSEMBLY64-NEXT:#define __INT32_FMTd__ "d"
9429// WEBASSEMBLY64-NEXT:#define __INT32_FMTi__ "i"
9430// WEBASSEMBLY64-NEXT:#define __INT32_MAX__ 2147483647
9431// WEBASSEMBLY64-NEXT:#define __INT32_TYPE__ int
9432// WEBASSEMBLY64-NEXT:#define __INT64_C_SUFFIX__ LL
9433// WEBASSEMBLY64-NEXT:#define __INT64_FMTd__ "lld"
9434// WEBASSEMBLY64-NEXT:#define __INT64_FMTi__ "lli"
9435// WEBASSEMBLY64-NEXT:#define __INT64_MAX__ 9223372036854775807LL
9436// WEBASSEMBLY64-NEXT:#define __INT64_TYPE__ long long int
9437// WEBASSEMBLY64-NEXT:#define __INT8_C_SUFFIX__
9438// WEBASSEMBLY64-NEXT:#define __INT8_FMTd__ "hhd"
9439// WEBASSEMBLY64-NEXT:#define __INT8_FMTi__ "hhi"
9440// WEBASSEMBLY64-NEXT:#define __INT8_MAX__ 127
9441// WEBASSEMBLY64-NEXT:#define __INT8_TYPE__ signed char
9442// WEBASSEMBLY64-NEXT:#define __INTMAX_C_SUFFIX__ LL
9443// WEBASSEMBLY64-NEXT:#define __INTMAX_FMTd__ "lld"
9444// WEBASSEMBLY64-NEXT:#define __INTMAX_FMTi__ "lli"
9445// WEBASSEMBLY64-NEXT:#define __INTMAX_MAX__ 9223372036854775807LL
9446// WEBASSEMBLY64-NEXT:#define __INTMAX_TYPE__ long long int
9447// WEBASSEMBLY64-NEXT:#define __INTMAX_WIDTH__ 64
9448// WEBASSEMBLY64-NEXT:#define __INTPTR_FMTd__ "ld"
9449// WEBASSEMBLY64-NEXT:#define __INTPTR_FMTi__ "li"
9450// WEBASSEMBLY64-NEXT:#define __INTPTR_MAX__ 9223372036854775807L
9451// WEBASSEMBLY64-NEXT:#define __INTPTR_TYPE__ long int
9452// WEBASSEMBLY64-NEXT:#define __INTPTR_WIDTH__ 64
9453// WEBASSEMBLY64-NEXT:#define __INT_FAST16_FMTd__ "hd"
9454// WEBASSEMBLY64-NEXT:#define __INT_FAST16_FMTi__ "hi"
9455// WEBASSEMBLY64-NEXT:#define __INT_FAST16_MAX__ 32767
9456// WEBASSEMBLY64-NEXT:#define __INT_FAST16_TYPE__ short
9457// WEBASSEMBLY64-NEXT:#define __INT_FAST32_FMTd__ "d"
9458// WEBASSEMBLY64-NEXT:#define __INT_FAST32_FMTi__ "i"
9459// WEBASSEMBLY64-NEXT:#define __INT_FAST32_MAX__ 2147483647
9460// WEBASSEMBLY64-NEXT:#define __INT_FAST32_TYPE__ int
9461// WEBASSEMBLY64-NEXT:#define __INT_FAST64_FMTd__ "lld"
9462// WEBASSEMBLY64-NEXT:#define __INT_FAST64_FMTi__ "lli"
9463// WEBASSEMBLY64-NEXT:#define __INT_FAST64_MAX__ 9223372036854775807LL
9464// WEBASSEMBLY64-NEXT:#define __INT_FAST64_TYPE__ long long int
9465// WEBASSEMBLY64-NEXT:#define __INT_FAST8_FMTd__ "hhd"
9466// WEBASSEMBLY64-NEXT:#define __INT_FAST8_FMTi__ "hhi"
9467// WEBASSEMBLY64-NEXT:#define __INT_FAST8_MAX__ 127
9468// WEBASSEMBLY64-NEXT:#define __INT_FAST8_TYPE__ signed char
9469// WEBASSEMBLY64-NEXT:#define __INT_LEAST16_FMTd__ "hd"
9470// WEBASSEMBLY64-NEXT:#define __INT_LEAST16_FMTi__ "hi"
9471// WEBASSEMBLY64-NEXT:#define __INT_LEAST16_MAX__ 32767
9472// WEBASSEMBLY64-NEXT:#define __INT_LEAST16_TYPE__ short
9473// WEBASSEMBLY64-NEXT:#define __INT_LEAST32_FMTd__ "d"
9474// WEBASSEMBLY64-NEXT:#define __INT_LEAST32_FMTi__ "i"
9475// WEBASSEMBLY64-NEXT:#define __INT_LEAST32_MAX__ 2147483647
9476// WEBASSEMBLY64-NEXT:#define __INT_LEAST32_TYPE__ int
9477// WEBASSEMBLY64-NEXT:#define __INT_LEAST64_FMTd__ "lld"
9478// WEBASSEMBLY64-NEXT:#define __INT_LEAST64_FMTi__ "lli"
9479// WEBASSEMBLY64-NEXT:#define __INT_LEAST64_MAX__ 9223372036854775807LL
9480// WEBASSEMBLY64-NEXT:#define __INT_LEAST64_TYPE__ long long int
9481// WEBASSEMBLY64-NEXT:#define __INT_LEAST8_FMTd__ "hhd"
9482// WEBASSEMBLY64-NEXT:#define __INT_LEAST8_FMTi__ "hhi"
9483// WEBASSEMBLY64-NEXT:#define __INT_LEAST8_MAX__ 127
9484// WEBASSEMBLY64-NEXT:#define __INT_LEAST8_TYPE__ signed char
9485// WEBASSEMBLY64-NEXT:#define __INT_MAX__ 2147483647
9486// WEBASSEMBLY64-NEXT:#define __LDBL_DECIMAL_DIG__ 36
9487// WEBASSEMBLY64-NEXT:#define __LDBL_DENORM_MIN__ 6.47517511943802511092443895822764655e-4966L
9488// WEBASSEMBLY64-NEXT:#define __LDBL_DIG__ 33
9489// WEBASSEMBLY64-NEXT:#define __LDBL_EPSILON__ 1.92592994438723585305597794258492732e-34L
9490// WEBASSEMBLY64-NEXT:#define __LDBL_HAS_DENORM__ 1
9491// WEBASSEMBLY64-NEXT:#define __LDBL_HAS_INFINITY__ 1
9492// WEBASSEMBLY64-NEXT:#define __LDBL_HAS_QUIET_NAN__ 1
9493// WEBASSEMBLY64-NEXT:#define __LDBL_MANT_DIG__ 113
9494// WEBASSEMBLY64-NEXT:#define __LDBL_MAX_10_EXP__ 4932
9495// WEBASSEMBLY64-NEXT:#define __LDBL_MAX_EXP__ 16384
9496// WEBASSEMBLY64-NEXT:#define __LDBL_MAX__ 1.18973149535723176508575932662800702e+4932L
9497// WEBASSEMBLY64-NEXT:#define __LDBL_MIN_10_EXP__ (-4931)
9498// WEBASSEMBLY64-NEXT:#define __LDBL_MIN_EXP__ (-16381)
9499// WEBASSEMBLY64-NEXT:#define __LDBL_MIN__ 3.36210314311209350626267781732175260e-4932L
9500// WEBASSEMBLY64-NEXT:#define __LITTLE_ENDIAN__ 1
9501// WEBASSEMBLY64-NEXT:#define __LONG_LONG_MAX__ 9223372036854775807LL
9502// WEBASSEMBLY64-NEXT:#define __LONG_MAX__ 9223372036854775807L
9503// WEBASSEMBLY64-NEXT:#define __LP64__ 1
9504// WEBASSEMBLY64-NEXT:#define __NO_INLINE__ 1
Alex Lorenz41d13152017-01-20 16:48:25 +00009505// WEBASSEMBLY64-NEXT:#define __OBJC_BOOL_IS_BOOL 0
James Y Knightc97efa42016-02-11 16:51:29 +00009506// WEBASSEMBLY64-NEXT:#define __ORDER_BIG_ENDIAN__ 4321
9507// WEBASSEMBLY64-NEXT:#define __ORDER_LITTLE_ENDIAN__ 1234
9508// WEBASSEMBLY64-NEXT:#define __ORDER_PDP_ENDIAN__ 3412
9509// WEBASSEMBLY64-NEXT:#define __POINTER_WIDTH__ 64
9510// WEBASSEMBLY64-NEXT:#define __PRAGMA_REDEFINE_EXTNAME 1
9511// WEBASSEMBLY64-NEXT:#define __PTRDIFF_FMTd__ "ld"
9512// WEBASSEMBLY64-NEXT:#define __PTRDIFF_FMTi__ "li"
9513// WEBASSEMBLY64-NEXT:#define __PTRDIFF_MAX__ 9223372036854775807L
9514// WEBASSEMBLY64-NEXT:#define __PTRDIFF_TYPE__ long int
9515// WEBASSEMBLY64-NEXT:#define __PTRDIFF_WIDTH__ 64
Dan Gohmanc2853072015-09-03 22:51:53 +00009516// WEBASSEMBLY64-NOT:#define __REGISTER_PREFIX__
James Y Knightc97efa42016-02-11 16:51:29 +00009517// WEBASSEMBLY64-NEXT:#define __SCHAR_MAX__ 127
9518// WEBASSEMBLY64-NEXT:#define __SHRT_MAX__ 32767
9519// WEBASSEMBLY64-NEXT:#define __SIG_ATOMIC_MAX__ 9223372036854775807L
9520// WEBASSEMBLY64-NEXT:#define __SIG_ATOMIC_WIDTH__ 64
9521// WEBASSEMBLY64-NEXT:#define __SIZEOF_DOUBLE__ 8
9522// WEBASSEMBLY64-NEXT:#define __SIZEOF_FLOAT__ 4
9523// WEBASSEMBLY64-NEXT:#define __SIZEOF_INT128__ 16
9524// WEBASSEMBLY64-NEXT:#define __SIZEOF_INT__ 4
9525// WEBASSEMBLY64-NEXT:#define __SIZEOF_LONG_DOUBLE__ 16
9526// WEBASSEMBLY64-NEXT:#define __SIZEOF_LONG_LONG__ 8
9527// WEBASSEMBLY64-NEXT:#define __SIZEOF_LONG__ 8
9528// WEBASSEMBLY64-NEXT:#define __SIZEOF_POINTER__ 8
9529// WEBASSEMBLY64-NEXT:#define __SIZEOF_PTRDIFF_T__ 8
9530// WEBASSEMBLY64-NEXT:#define __SIZEOF_SHORT__ 2
9531// WEBASSEMBLY64-NEXT:#define __SIZEOF_SIZE_T__ 8
9532// WEBASSEMBLY64-NEXT:#define __SIZEOF_WCHAR_T__ 4
9533// WEBASSEMBLY64-NEXT:#define __SIZEOF_WINT_T__ 4
9534// WEBASSEMBLY64-NEXT:#define __SIZE_FMTX__ "lX"
9535// WEBASSEMBLY64-NEXT:#define __SIZE_FMTo__ "lo"
9536// WEBASSEMBLY64-NEXT:#define __SIZE_FMTu__ "lu"
9537// WEBASSEMBLY64-NEXT:#define __SIZE_FMTx__ "lx"
9538// WEBASSEMBLY64-NEXT:#define __SIZE_MAX__ 18446744073709551615UL
9539// WEBASSEMBLY64-NEXT:#define __SIZE_TYPE__ long unsigned int
9540// WEBASSEMBLY64-NEXT:#define __SIZE_WIDTH__ 64
9541// WEBASSEMBLY64-NEXT:#define __STDC_HOSTED__ 0
Dan Gohmanc2853072015-09-03 22:51:53 +00009542// WEBASSEMBLY64-NOT:#define __STDC_MB_MIGHT_NEQ_WC__
9543// WEBASSEMBLY64-NOT:#define __STDC_NO_ATOMICS__
9544// WEBASSEMBLY64-NOT:#define __STDC_NO_COMPLEX__
9545// WEBASSEMBLY64-NOT:#define __STDC_NO_VLA__
9546// WEBASSEMBLY64-NOT:#define __STDC_NO_THREADS__
James Y Knightc97efa42016-02-11 16:51:29 +00009547// WEBASSEMBLY64-NEXT:#define __STDC_UTF_16__ 1
9548// WEBASSEMBLY64-NEXT:#define __STDC_UTF_32__ 1
9549// WEBASSEMBLY64-NEXT:#define __STDC_VERSION__ 201112L
9550// WEBASSEMBLY64-NEXT:#define __STDC__ 1
9551// WEBASSEMBLY64-NEXT:#define __UINT16_C_SUFFIX__
9552// WEBASSEMBLY64-NEXT:#define __UINT16_FMTX__ "hX"
9553// WEBASSEMBLY64-NEXT:#define __UINT16_FMTo__ "ho"
9554// WEBASSEMBLY64-NEXT:#define __UINT16_FMTu__ "hu"
9555// WEBASSEMBLY64-NEXT:#define __UINT16_FMTx__ "hx"
9556// WEBASSEMBLY64-NEXT:#define __UINT16_MAX__ 65535
9557// WEBASSEMBLY64-NEXT:#define __UINT16_TYPE__ unsigned short
9558// WEBASSEMBLY64-NEXT:#define __UINT32_C_SUFFIX__ U
9559// WEBASSEMBLY64-NEXT:#define __UINT32_FMTX__ "X"
9560// WEBASSEMBLY64-NEXT:#define __UINT32_FMTo__ "o"
9561// WEBASSEMBLY64-NEXT:#define __UINT32_FMTu__ "u"
9562// WEBASSEMBLY64-NEXT:#define __UINT32_FMTx__ "x"
9563// WEBASSEMBLY64-NEXT:#define __UINT32_MAX__ 4294967295U
9564// WEBASSEMBLY64-NEXT:#define __UINT32_TYPE__ unsigned int
9565// WEBASSEMBLY64-NEXT:#define __UINT64_C_SUFFIX__ ULL
9566// WEBASSEMBLY64-NEXT:#define __UINT64_FMTX__ "llX"
9567// WEBASSEMBLY64-NEXT:#define __UINT64_FMTo__ "llo"
9568// WEBASSEMBLY64-NEXT:#define __UINT64_FMTu__ "llu"
9569// WEBASSEMBLY64-NEXT:#define __UINT64_FMTx__ "llx"
9570// WEBASSEMBLY64-NEXT:#define __UINT64_MAX__ 18446744073709551615ULL
9571// WEBASSEMBLY64-NEXT:#define __UINT64_TYPE__ long long unsigned int
9572// WEBASSEMBLY64-NEXT:#define __UINT8_C_SUFFIX__
9573// WEBASSEMBLY64-NEXT:#define __UINT8_FMTX__ "hhX"
9574// WEBASSEMBLY64-NEXT:#define __UINT8_FMTo__ "hho"
9575// WEBASSEMBLY64-NEXT:#define __UINT8_FMTu__ "hhu"
9576// WEBASSEMBLY64-NEXT:#define __UINT8_FMTx__ "hhx"
9577// WEBASSEMBLY64-NEXT:#define __UINT8_MAX__ 255
9578// WEBASSEMBLY64-NEXT:#define __UINT8_TYPE__ unsigned char
9579// WEBASSEMBLY64-NEXT:#define __UINTMAX_C_SUFFIX__ ULL
9580// WEBASSEMBLY64-NEXT:#define __UINTMAX_FMTX__ "llX"
9581// WEBASSEMBLY64-NEXT:#define __UINTMAX_FMTo__ "llo"
9582// WEBASSEMBLY64-NEXT:#define __UINTMAX_FMTu__ "llu"
9583// WEBASSEMBLY64-NEXT:#define __UINTMAX_FMTx__ "llx"
9584// WEBASSEMBLY64-NEXT:#define __UINTMAX_MAX__ 18446744073709551615ULL
9585// WEBASSEMBLY64-NEXT:#define __UINTMAX_TYPE__ long long unsigned int
9586// WEBASSEMBLY64-NEXT:#define __UINTMAX_WIDTH__ 64
9587// WEBASSEMBLY64-NEXT:#define __UINTPTR_FMTX__ "lX"
9588// WEBASSEMBLY64-NEXT:#define __UINTPTR_FMTo__ "lo"
9589// WEBASSEMBLY64-NEXT:#define __UINTPTR_FMTu__ "lu"
9590// WEBASSEMBLY64-NEXT:#define __UINTPTR_FMTx__ "lx"
9591// WEBASSEMBLY64-NEXT:#define __UINTPTR_MAX__ 18446744073709551615UL
9592// WEBASSEMBLY64-NEXT:#define __UINTPTR_TYPE__ long unsigned int
9593// WEBASSEMBLY64-NEXT:#define __UINTPTR_WIDTH__ 64
9594// WEBASSEMBLY64-NEXT:#define __UINT_FAST16_FMTX__ "hX"
9595// WEBASSEMBLY64-NEXT:#define __UINT_FAST16_FMTo__ "ho"
9596// WEBASSEMBLY64-NEXT:#define __UINT_FAST16_FMTu__ "hu"
9597// WEBASSEMBLY64-NEXT:#define __UINT_FAST16_FMTx__ "hx"
9598// WEBASSEMBLY64-NEXT:#define __UINT_FAST16_MAX__ 65535
9599// WEBASSEMBLY64-NEXT:#define __UINT_FAST16_TYPE__ unsigned short
9600// WEBASSEMBLY64-NEXT:#define __UINT_FAST32_FMTX__ "X"
9601// WEBASSEMBLY64-NEXT:#define __UINT_FAST32_FMTo__ "o"
9602// WEBASSEMBLY64-NEXT:#define __UINT_FAST32_FMTu__ "u"
9603// WEBASSEMBLY64-NEXT:#define __UINT_FAST32_FMTx__ "x"
9604// WEBASSEMBLY64-NEXT:#define __UINT_FAST32_MAX__ 4294967295U
9605// WEBASSEMBLY64-NEXT:#define __UINT_FAST32_TYPE__ unsigned int
9606// WEBASSEMBLY64-NEXT:#define __UINT_FAST64_FMTX__ "llX"
9607// WEBASSEMBLY64-NEXT:#define __UINT_FAST64_FMTo__ "llo"
9608// WEBASSEMBLY64-NEXT:#define __UINT_FAST64_FMTu__ "llu"
9609// WEBASSEMBLY64-NEXT:#define __UINT_FAST64_FMTx__ "llx"
9610// WEBASSEMBLY64-NEXT:#define __UINT_FAST64_MAX__ 18446744073709551615ULL
9611// WEBASSEMBLY64-NEXT:#define __UINT_FAST64_TYPE__ long long unsigned int
9612// WEBASSEMBLY64-NEXT:#define __UINT_FAST8_FMTX__ "hhX"
9613// WEBASSEMBLY64-NEXT:#define __UINT_FAST8_FMTo__ "hho"
9614// WEBASSEMBLY64-NEXT:#define __UINT_FAST8_FMTu__ "hhu"
9615// WEBASSEMBLY64-NEXT:#define __UINT_FAST8_FMTx__ "hhx"
9616// WEBASSEMBLY64-NEXT:#define __UINT_FAST8_MAX__ 255
9617// WEBASSEMBLY64-NEXT:#define __UINT_FAST8_TYPE__ unsigned char
9618// WEBASSEMBLY64-NEXT:#define __UINT_LEAST16_FMTX__ "hX"
9619// WEBASSEMBLY64-NEXT:#define __UINT_LEAST16_FMTo__ "ho"
9620// WEBASSEMBLY64-NEXT:#define __UINT_LEAST16_FMTu__ "hu"
9621// WEBASSEMBLY64-NEXT:#define __UINT_LEAST16_FMTx__ "hx"
9622// WEBASSEMBLY64-NEXT:#define __UINT_LEAST16_MAX__ 65535
9623// WEBASSEMBLY64-NEXT:#define __UINT_LEAST16_TYPE__ unsigned short
9624// WEBASSEMBLY64-NEXT:#define __UINT_LEAST32_FMTX__ "X"
9625// WEBASSEMBLY64-NEXT:#define __UINT_LEAST32_FMTo__ "o"
9626// WEBASSEMBLY64-NEXT:#define __UINT_LEAST32_FMTu__ "u"
9627// WEBASSEMBLY64-NEXT:#define __UINT_LEAST32_FMTx__ "x"
9628// WEBASSEMBLY64-NEXT:#define __UINT_LEAST32_MAX__ 4294967295U
9629// WEBASSEMBLY64-NEXT:#define __UINT_LEAST32_TYPE__ unsigned int
9630// WEBASSEMBLY64-NEXT:#define __UINT_LEAST64_FMTX__ "llX"
9631// WEBASSEMBLY64-NEXT:#define __UINT_LEAST64_FMTo__ "llo"
9632// WEBASSEMBLY64-NEXT:#define __UINT_LEAST64_FMTu__ "llu"
9633// WEBASSEMBLY64-NEXT:#define __UINT_LEAST64_FMTx__ "llx"
9634// WEBASSEMBLY64-NEXT:#define __UINT_LEAST64_MAX__ 18446744073709551615ULL
9635// WEBASSEMBLY64-NEXT:#define __UINT_LEAST64_TYPE__ long long unsigned int
9636// WEBASSEMBLY64-NEXT:#define __UINT_LEAST8_FMTX__ "hhX"
9637// WEBASSEMBLY64-NEXT:#define __UINT_LEAST8_FMTo__ "hho"
9638// WEBASSEMBLY64-NEXT:#define __UINT_LEAST8_FMTu__ "hhu"
9639// WEBASSEMBLY64-NEXT:#define __UINT_LEAST8_FMTx__ "hhx"
9640// WEBASSEMBLY64-NEXT:#define __UINT_LEAST8_MAX__ 255
9641// WEBASSEMBLY64-NEXT:#define __UINT_LEAST8_TYPE__ unsigned char
9642// WEBASSEMBLY64-NEXT:#define __USER_LABEL_PREFIX__
9643// WEBASSEMBLY64-NEXT:#define __VERSION__ "{{.*}}"
9644// WEBASSEMBLY64-NEXT:#define __WCHAR_MAX__ 2147483647
9645// WEBASSEMBLY64-NEXT:#define __WCHAR_TYPE__ int
Dan Gohmanc2853072015-09-03 22:51:53 +00009646// WEBASSEMBLY64-NOT:#define __WCHAR_UNSIGNED__
James Y Knightc97efa42016-02-11 16:51:29 +00009647// WEBASSEMBLY64-NEXT:#define __WCHAR_WIDTH__ 32
9648// WEBASSEMBLY64-NEXT:#define __WINT_TYPE__ int
Dan Gohmanc2853072015-09-03 22:51:53 +00009649// WEBASSEMBLY64-NOT:#define __WINT_UNSIGNED__
James Y Knightc97efa42016-02-11 16:51:29 +00009650// WEBASSEMBLY64-NEXT:#define __WINT_WIDTH__ 32
9651// WEBASSEMBLY64-NEXT:#define __clang__ 1
Tim Northover25809012016-02-11 21:31:51 +00009652// WEBASSEMBLY64-NEXT:#define __clang_major__ {{.*}}
9653// WEBASSEMBLY64-NEXT:#define __clang_minor__ {{.*}}
9654// WEBASSEMBLY64-NEXT:#define __clang_patchlevel__ {{.*}}
James Y Knightc97efa42016-02-11 16:51:29 +00009655// WEBASSEMBLY64-NEXT:#define __clang_version__ "{{.*}}"
9656// WEBASSEMBLY64-NEXT:#define __llvm__ 1
Dan Gohmanc2853072015-09-03 22:51:53 +00009657// WEBASSEMBLY64-NOT:#define __wasm_simd128__
9658// WEBASSEMBLY64-NOT:#define __wasm_simd256__
9659// WEBASSEMBLY64-NOT:#define __wasm_simd512__
Saleem Abdulrasool56027092017-02-07 19:00:06 +00009660// WEBASSEMBLY64-NOT:#define __unix
Dan Gohmanc2853072015-09-03 22:51:53 +00009661// WEBASSEMBLY64-NOT:#define __unix__
James Y Knightc97efa42016-02-11 16:51:29 +00009662// WEBASSEMBLY64-NEXT:#define __wasm 1
Dan Gohmanc2853072015-09-03 22:51:53 +00009663// WEBASSEMBLY64-NOT:#define __wasm32
9664// WEBASSEMBLY64-NOT:#define __wasm32__
James Y Knightc97efa42016-02-11 16:51:29 +00009665// WEBASSEMBLY64-NEXT:#define __wasm64 1
9666// WEBASSEMBLY64-NEXT:#define __wasm64__ 1
9667// WEBASSEMBLY64-NEXT:#define __wasm__ 1
Saleem Abdulrasool16fcf0a2016-02-26 16:34:01 +00009668
9669// RUN: %clang_cc1 -E -dM -ffreestanding -triple i686-windows-cygnus < /dev/null | FileCheck -match-full-lines -check-prefix CYGWIN-X32 %s
9670// CYGWIN-X32: #define __USER_LABEL_PREFIX__ _
9671
9672// RUN: %clang_cc1 -E -dM -ffreestanding -triple x86_64-windows-cygnus < /dev/null | FileCheck -match-full-lines -check-prefix CYGWIN-X64 %s
9673// CYGWIN-X64: #define __USER_LABEL_PREFIX__
9674
Dylan McKay924fa3a2017-01-05 05:20:27 +00009675// RUN: %clang_cc1 -E -dM -ffreestanding -triple=avr \
9676// RUN: < /dev/null \
9677// RUN: | FileCheck -match-full-lines -check-prefix=AVR %s
9678//
9679// AVR:#define __ATOMIC_ACQUIRE 2
9680// AVR:#define __ATOMIC_ACQ_REL 4
9681// AVR:#define __ATOMIC_CONSUME 1
9682// AVR:#define __ATOMIC_RELAXED 0
9683// AVR:#define __ATOMIC_RELEASE 3
9684// AVR:#define __ATOMIC_SEQ_CST 5
9685// AVR:#define __AVR__ 1
9686// AVR:#define __BIGGEST_ALIGNMENT__ 1
9687// AVR:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
9688// AVR:#define __CHAR16_TYPE__ unsigned int
9689// AVR:#define __CHAR32_TYPE__ long unsigned int
9690// AVR:#define __CHAR_BIT__ 8
9691// AVR:#define __DBL_DECIMAL_DIG__ 9
9692// AVR:#define __DBL_DENORM_MIN__ 1.40129846e-45
9693// AVR:#define __DBL_DIG__ 6
9694// AVR:#define __DBL_EPSILON__ 1.19209290e-7
9695// AVR:#define __DBL_HAS_DENORM__ 1
9696// AVR:#define __DBL_HAS_INFINITY__ 1
9697// AVR:#define __DBL_HAS_QUIET_NAN__ 1
9698// AVR:#define __DBL_MANT_DIG__ 24
9699// AVR:#define __DBL_MAX_10_EXP__ 38
9700// AVR:#define __DBL_MAX_EXP__ 128
9701// AVR:#define __DBL_MAX__ 3.40282347e+38
9702// AVR:#define __DBL_MIN_10_EXP__ (-37)
9703// AVR:#define __DBL_MIN_EXP__ (-125)
9704// AVR:#define __DBL_MIN__ 1.17549435e-38
9705// AVR:#define __FINITE_MATH_ONLY__ 0
9706// AVR:#define __FLT_DECIMAL_DIG__ 9
9707// AVR:#define __FLT_DENORM_MIN__ 1.40129846e-45F
9708// AVR:#define __FLT_DIG__ 6
9709// AVR:#define __FLT_EPSILON__ 1.19209290e-7F
9710// AVR:#define __FLT_EVAL_METHOD__ 0
9711// AVR:#define __FLT_HAS_DENORM__ 1
9712// AVR:#define __FLT_HAS_INFINITY__ 1
9713// AVR:#define __FLT_HAS_QUIET_NAN__ 1
9714// AVR:#define __FLT_MANT_DIG__ 24
9715// AVR:#define __FLT_MAX_10_EXP__ 38
9716// AVR:#define __FLT_MAX_EXP__ 128
9717// AVR:#define __FLT_MAX__ 3.40282347e+38F
9718// AVR:#define __FLT_MIN_10_EXP__ (-37)
9719// AVR:#define __FLT_MIN_EXP__ (-125)
9720// AVR:#define __FLT_MIN__ 1.17549435e-38F
9721// AVR:#define __FLT_RADIX__ 2
9722// AVR:#define __GCC_ATOMIC_BOOL_LOCK_FREE 1
9723// AVR:#define __GCC_ATOMIC_CHAR16_T_LOCK_FREE 1
9724// AVR:#define __GCC_ATOMIC_CHAR32_T_LOCK_FREE 1
9725// AVR:#define __GCC_ATOMIC_CHAR_LOCK_FREE 1
9726// AVR:#define __GCC_ATOMIC_INT_LOCK_FREE 1
9727// AVR:#define __GCC_ATOMIC_LLONG_LOCK_FREE 1
9728// AVR:#define __GCC_ATOMIC_LONG_LOCK_FREE 1
9729// AVR:#define __GCC_ATOMIC_POINTER_LOCK_FREE 1
9730// AVR:#define __GCC_ATOMIC_SHORT_LOCK_FREE 1
9731// AVR:#define __GCC_ATOMIC_TEST_AND_SET_TRUEVAL 1
9732// AVR:#define __GCC_ATOMIC_WCHAR_T_LOCK_FREE 1
9733// AVR:#define __GXX_ABI_VERSION 1002
9734// AVR:#define __INT16_C_SUFFIX__
9735// AVR:#define __INT16_MAX__ 32767
9736// AVR:#define __INT16_TYPE__ short
9737// AVR:#define __INT32_C_SUFFIX__ L
9738// AVR:#define __INT32_MAX__ 2147483647L
9739// AVR:#define __INT32_TYPE__ long int
9740// AVR:#define __INT64_C_SUFFIX__ LL
9741// AVR:#define __INT64_MAX__ 9223372036854775807LL
9742// AVR:#define __INT64_TYPE__ long long int
9743// AVR:#define __INT8_C_SUFFIX__
9744// AVR:#define __INT8_MAX__ 127
9745// AVR:#define __INT8_TYPE__ signed char
9746// AVR:#define __INTMAX_C_SUFFIX__ LL
9747// AVR:#define __INTMAX_MAX__ 9223372036854775807LL
9748// AVR:#define __INTMAX_TYPE__ long long int
9749// AVR:#define __INTPTR_MAX__ 32767
9750// AVR:#define __INTPTR_TYPE__ int
9751// AVR:#define __INT_FAST16_MAX__ 32767
9752// AVR:#define __INT_FAST16_TYPE__ int
9753// AVR:#define __INT_FAST32_MAX__ 2147483647L
9754// AVR:#define __INT_FAST32_TYPE__ long int
9755// AVR:#define __INT_FAST64_MAX__ 9223372036854775807LL
9756// AVR:#define __INT_FAST64_TYPE__ long long int
9757// AVR:#define __INT_FAST8_MAX__ 127
9758// AVR:#define __INT_FAST8_TYPE__ signed char
9759// AVR:#define __INT_LEAST16_MAX__ 32767
9760// AVR:#define __INT_LEAST16_TYPE__ int
9761// AVR:#define __INT_LEAST32_MAX__ 2147483647L
9762// AVR:#define __INT_LEAST32_TYPE__ long int
9763// AVR:#define __INT_LEAST64_MAX__ 9223372036854775807LL
9764// AVR:#define __INT_LEAST64_TYPE__ long long int
9765// AVR:#define __INT_LEAST8_MAX__ 127
9766// AVR:#define __INT_LEAST8_TYPE__ signed char
9767// AVR:#define __INT_MAX__ 32767
9768// AVR:#define __LDBL_DECIMAL_DIG__ 9
9769// AVR:#define __LDBL_DENORM_MIN__ 1.40129846e-45L
9770// AVR:#define __LDBL_DIG__ 6
9771// AVR:#define __LDBL_EPSILON__ 1.19209290e-7L
9772// AVR:#define __LDBL_HAS_DENORM__ 1
9773// AVR:#define __LDBL_HAS_INFINITY__ 1
9774// AVR:#define __LDBL_HAS_QUIET_NAN__ 1
9775// AVR:#define __LDBL_MANT_DIG__ 24
9776// AVR:#define __LDBL_MAX_10_EXP__ 38
9777// AVR:#define __LDBL_MAX_EXP__ 128
9778// AVR:#define __LDBL_MAX__ 3.40282347e+38L
9779// AVR:#define __LDBL_MIN_10_EXP__ (-37)
9780// AVR:#define __LDBL_MIN_EXP__ (-125)
9781// AVR:#define __LDBL_MIN__ 1.17549435e-38L
9782// AVR:#define __LONG_LONG_MAX__ 9223372036854775807LL
9783// AVR:#define __LONG_MAX__ 2147483647L
9784// AVR:#define __NO_INLINE__ 1
9785// AVR:#define __ORDER_BIG_ENDIAN__ 4321
9786// AVR:#define __ORDER_LITTLE_ENDIAN__ 1234
9787// AVR:#define __ORDER_PDP_ENDIAN__ 3412
9788// AVR:#define __PRAGMA_REDEFINE_EXTNAME 1
9789// AVR:#define __PTRDIFF_MAX__ 32767
9790// AVR:#define __PTRDIFF_TYPE__ int
9791// AVR:#define __SCHAR_MAX__ 127
9792// AVR:#define __SHRT_MAX__ 32767
9793// AVR:#define __SIG_ATOMIC_MAX__ 127
9794// AVR:#define __SIG_ATOMIC_WIDTH__ 8
9795// AVR:#define __SIZEOF_DOUBLE__ 4
9796// AVR:#define __SIZEOF_FLOAT__ 4
9797// AVR:#define __SIZEOF_INT__ 2
9798// AVR:#define __SIZEOF_LONG_DOUBLE__ 4
9799// AVR:#define __SIZEOF_LONG_LONG__ 8
9800// AVR:#define __SIZEOF_LONG__ 4
9801// AVR:#define __SIZEOF_POINTER__ 2
9802// AVR:#define __SIZEOF_PTRDIFF_T__ 2
9803// AVR:#define __SIZEOF_SHORT__ 2
9804// AVR:#define __SIZEOF_SIZE_T__ 2
9805// AVR:#define __SIZEOF_WCHAR_T__ 2
9806// AVR:#define __SIZEOF_WINT_T__ 2
9807// AVR:#define __SIZE_MAX__ 65535U
9808// AVR:#define __SIZE_TYPE__ unsigned int
9809// AVR:#define __STDC__ 1
9810// AVR:#define __UINT16_MAX__ 65535U
9811// AVR:#define __UINT16_TYPE__ unsigned short
9812// AVR:#define __UINT32_C_SUFFIX__ UL
9813// AVR:#define __UINT32_MAX__ 4294967295UL
9814// AVR:#define __UINT32_TYPE__ long unsigned int
9815// AVR:#define __UINT64_C_SUFFIX__ ULL
9816// AVR:#define __UINT64_MAX__ 18446744073709551615ULL
9817// AVR:#define __UINT64_TYPE__ long long unsigned int
9818// AVR:#define __UINT8_C_SUFFIX__
9819// AVR:#define __UINT8_MAX__ 255
9820// AVR:#define __UINT8_TYPE__ unsigned char
9821// AVR:#define __UINTMAX_C_SUFFIX__ ULL
9822// AVR:#define __UINTMAX_MAX__ 18446744073709551615ULL
9823// AVR:#define __UINTMAX_TYPE__ long long unsigned int
9824// AVR:#define __UINTPTR_MAX__ 65535U
9825// AVR:#define __UINTPTR_TYPE__ unsigned int
9826// AVR:#define __UINT_FAST16_MAX__ 65535U
9827// AVR:#define __UINT_FAST16_TYPE__ unsigned int
9828// AVR:#define __UINT_FAST32_MAX__ 4294967295UL
9829// AVR:#define __UINT_FAST32_TYPE__ long unsigned int
9830// AVR:#define __UINT_FAST64_MAX__ 18446744073709551615ULL
9831// AVR:#define __UINT_FAST64_TYPE__ long long unsigned int
9832// AVR:#define __UINT_FAST8_MAX__ 255
9833// AVR:#define __UINT_FAST8_TYPE__ unsigned char
9834// AVR:#define __UINT_LEAST16_MAX__ 65535U
9835// AVR:#define __UINT_LEAST16_TYPE__ unsigned int
9836// AVR:#define __UINT_LEAST32_MAX__ 4294967295UL
9837// AVR:#define __UINT_LEAST32_TYPE__ long unsigned int
9838// AVR:#define __UINT_LEAST64_MAX__ 18446744073709551615ULL
9839// AVR:#define __UINT_LEAST64_TYPE__ long long unsigned int
9840// AVR:#define __UINT_LEAST8_MAX__ 255
9841// AVR:#define __UINT_LEAST8_TYPE__ unsigned char
9842// AVR:#define __USER_LABEL_PREFIX__
9843// AVR:#define __WCHAR_MAX__ 32767
9844// AVR:#define __WCHAR_TYPE__ int
9845// AVR:#define __WINT_TYPE__ int
Eric Fiselier4b2c8f72017-04-20 22:53:57 +00009846
9847
9848// RUN: %clang_cc1 -E -dM -ffreestanding \
9849// RUN: -triple i686-windows-msvc -fms-compatibility < /dev/null \
9850// RUN: | FileCheck -match-full-lines -check-prefix MSVC-X32 %s
9851
9852// RUN: %clang_cc1 -E -dM -ffreestanding \
9853// RUN: -triple x86_64-windows-msvc -fms-compatibility < /dev/null \
9854// RUN: | FileCheck -match-full-lines -check-prefix MSVC-X64 %s
9855
9856// MSVC-X32:#define __CLANG_ATOMIC_BOOL_LOCK_FREE 2
9857// MSVC-X32-NEXT:#define __CLANG_ATOMIC_CHAR16_T_LOCK_FREE 2
9858// MSVC-X32-NEXT:#define __CLANG_ATOMIC_CHAR32_T_LOCK_FREE 2
9859// MSVC-X32-NEXT:#define __CLANG_ATOMIC_CHAR_LOCK_FREE 2
9860// MSVC-X32-NEXT:#define __CLANG_ATOMIC_INT_LOCK_FREE 2
9861// MSVC-X32-NEXT:#define __CLANG_ATOMIC_LLONG_LOCK_FREE 2
9862// MSVC-X32-NEXT:#define __CLANG_ATOMIC_LONG_LOCK_FREE 2
9863// MSVC-X32-NEXT:#define __CLANG_ATOMIC_POINTER_LOCK_FREE 2
9864// MSVC-X32-NEXT:#define __CLANG_ATOMIC_SHORT_LOCK_FREE 2
9865// MSVC-X32-NEXT:#define __CLANG_ATOMIC_WCHAR_T_LOCK_FREE 2
9866// MSVC-X32-NOT:#define __GCC_ATOMIC{{.*}}
9867
9868// MSVC-X64:#define __CLANG_ATOMIC_BOOL_LOCK_FREE 2
9869// MSVC-X64-NEXT:#define __CLANG_ATOMIC_CHAR16_T_LOCK_FREE 2
9870// MSVC-X64-NEXT:#define __CLANG_ATOMIC_CHAR32_T_LOCK_FREE 2
9871// MSVC-X64-NEXT:#define __CLANG_ATOMIC_CHAR_LOCK_FREE 2
9872// MSVC-X64-NEXT:#define __CLANG_ATOMIC_INT_LOCK_FREE 2
9873// MSVC-X64-NEXT:#define __CLANG_ATOMIC_LLONG_LOCK_FREE 2
9874// MSVC-X64-NEXT:#define __CLANG_ATOMIC_LONG_LOCK_FREE 2
9875// MSVC-X64-NEXT:#define __CLANG_ATOMIC_POINTER_LOCK_FREE 2
9876// MSVC-X64-NEXT:#define __CLANG_ATOMIC_SHORT_LOCK_FREE 2
9877// MSVC-X64-NEXT:#define __CLANG_ATOMIC_WCHAR_T_LOCK_FREE 2
9878// MSVC-X86-NOT:#define __GCC_ATOMIC{{.*}}
Duncan P. N. Exon Smith16b1ac92017-04-27 01:47:22 +00009879
9880// RUN: %clang_cc1 -E -dM -ffreestanding \
9881// RUN: -triple=aarch64-apple-ios9 < /dev/null \
9882// RUN: | FileCheck -check-prefix=DARWIN %s
9883// RUN: %clang_cc1 -E -dM -ffreestanding \
9884// RUN: -triple=aarch64-apple-macosx10.12 < /dev/null \
9885// RUN: | FileCheck -check-prefix=DARWIN %s
9886
9887// DARWIN:#define __STDC_NO_THREADS__ 1