blob: f5f46e23ecaa260b2dbdb721d7c46e20cb7676ee [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//
Ali Tamurbc1cd922018-10-08 22:25:20 +000050//
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
Ali Tamurbc1cd922018-10-08 22:25:20 +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//
Ali Tamurbc1cd922018-10-08 22:25:20 +000059//
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//
Ali Tamurbc1cd922018-10-08 22:25:20 +000064//
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//
Ali Tamurbc1cd922018-10-08 22:25:20 +000074//
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//
Ali Tamurbc1cd922018-10-08 22:25:20 +000089//
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
Ali Tamurbc1cd922018-10-08 22:25:20 +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//
Ali Tamurbc1cd922018-10-08 22:25:20 +0000161//
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//
Ali Tamurbc1cd922018-10-08 22:25:20 +0000166//
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//
Ali Tamurbc1cd922018-10-08 22:25:20 +0000188//
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//
Ali Tamurbc1cd922018-10-08 22:25:20 +0000200//
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//
Ali Tamurbc1cd922018-10-08 22:25:20 +0000249//
James Y Knightc97efa42016-02-11 16:51:29 +0000250// RUN: %clang_cc1 -E -dM < /dev/null | FileCheck -match-full-lines -check-prefix SCHAR %s
Ali Tamurbc1cd922018-10-08 22:25:20 +0000251//
Chris Lattnere963d092009-10-29 04:55:36 +0000252// SCHAR:#define __STDC__ 1
253// SCHAR-NOT:#define __UNSIGNED_CHAR__
254// SCHAR:#define __clang__ 1
255//
Saleem Abdulrasool729379a2017-10-06 23:09:55 +0000256// RUN: %clang_cc1 -E -dM -fwchar-type=short -fno-signed-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.
Saleem Abdulrasool729379a2017-10-06 23:09:55 +0000258// RUN: %clang_cc1 -E -dM -fwchar-type=short -fno-signed-wchar -triple=x86_64-w64-mingw32 < /dev/null | FileCheck -match-full-lines -check-prefix SHORTWCHAR %s
259// RUN: %clang_cc1 -dM -fwchar-type=short -fno-signed-wchar -triple=x86_64-unknown-windows-cygnus -E /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//
Saleem Abdulrasool729379a2017-10-06 23:09:55 +0000266// RUN: %clang_cc1 -E -dM -fwchar-type=int -triple=i686-unknown-unknown < /dev/null | FileCheck -match-full-lines -check-prefix SHORTWCHAR2 %s
267// RUN: %clang_cc1 -E -dM -fwchar-type=int -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__
Sjoerd Meijerc05609c2017-09-13 15:23:19 +0000304// AARCH64:#define __FLT16_DECIMAL_DIG__ 5
305// AARCH64:#define __FLT16_DENORM_MIN__ 5.9604644775390625e-8F16
306// AARCH64:#define __FLT16_DIG__ 3
307// AARCH64:#define __FLT16_EPSILON__ 9.765625e-4F16
308// AARCH64:#define __FLT16_HAS_DENORM__ 1
309// AARCH64:#define __FLT16_HAS_INFINITY__ 1
310// AARCH64:#define __FLT16_HAS_QUIET_NAN__ 1
311// AARCH64:#define __FLT16_MANT_DIG__ 11
312// AARCH64:#define __FLT16_MAX_10_EXP__ 4
313// AARCH64:#define __FLT16_MAX_EXP__ 15
314// AARCH64:#define __FLT16_MAX__ 6.5504e+4F16
315// AARCH64:#define __FLT16_MIN_10_EXP__ (-13)
316// AARCH64:#define __FLT16_MIN_EXP__ (-14)
317// AARCH64:#define __FLT16_MIN__ 6.103515625e-5F16
Kevin Qinad64f6d2014-02-24 02:45:03 +0000318// AARCH64:#define __FLT_DENORM_MIN__ 1.40129846e-45F
319// AARCH64:#define __FLT_DIG__ 6
320// AARCH64:#define __FLT_EPSILON__ 1.19209290e-7F
321// AARCH64:#define __FLT_EVAL_METHOD__ 0
322// AARCH64:#define __FLT_HAS_DENORM__ 1
323// AARCH64:#define __FLT_HAS_INFINITY__ 1
324// AARCH64:#define __FLT_HAS_QUIET_NAN__ 1
325// AARCH64:#define __FLT_MANT_DIG__ 24
326// AARCH64:#define __FLT_MAX_10_EXP__ 38
327// AARCH64:#define __FLT_MAX_EXP__ 128
328// AARCH64:#define __FLT_MAX__ 3.40282347e+38F
329// AARCH64:#define __FLT_MIN_10_EXP__ (-37)
330// AARCH64:#define __FLT_MIN_EXP__ (-125)
331// AARCH64:#define __FLT_MIN__ 1.17549435e-38F
332// AARCH64:#define __FLT_RADIX__ 2
James Y Knightc97efa42016-02-11 16:51:29 +0000333// AARCH64:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +0000334// AARCH64:#define __INT16_FMTd__ "hd"
335// AARCH64:#define __INT16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +0000336// AARCH64:#define __INT16_MAX__ 32767
Kevin Qinad64f6d2014-02-24 02:45:03 +0000337// AARCH64:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +0000338// AARCH64:#define __INT32_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +0000339// AARCH64:#define __INT32_FMTd__ "d"
340// AARCH64:#define __INT32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +0000341// AARCH64:#define __INT32_MAX__ 2147483647
Kevin Qinad64f6d2014-02-24 02:45:03 +0000342// AARCH64:#define __INT32_TYPE__ int
343// AARCH64:#define __INT64_C_SUFFIX__ L
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +0000344// AARCH64:#define __INT64_FMTd__ "ld"
345// AARCH64:#define __INT64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +0000346// AARCH64:#define __INT64_MAX__ 9223372036854775807L
Kevin Qinad64f6d2014-02-24 02:45:03 +0000347// AARCH64:#define __INT64_TYPE__ long int
James Y Knightc97efa42016-02-11 16:51:29 +0000348// AARCH64:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +0000349// AARCH64:#define __INT8_FMTd__ "hhd"
350// AARCH64:#define __INT8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +0000351// AARCH64:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +0000352// AARCH64:#define __INT8_TYPE__ signed char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +0000353// AARCH64:#define __INTMAX_C_SUFFIX__ L
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +0000354// AARCH64:#define __INTMAX_FMTd__ "ld"
355// AARCH64:#define __INTMAX_FMTi__ "li"
Kevin Qinad64f6d2014-02-24 02:45:03 +0000356// AARCH64:#define __INTMAX_MAX__ 9223372036854775807L
357// AARCH64:#define __INTMAX_TYPE__ long int
358// AARCH64:#define __INTMAX_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +0000359// AARCH64:#define __INTPTR_FMTd__ "ld"
360// AARCH64:#define __INTPTR_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +0000361// AARCH64:#define __INTPTR_MAX__ 9223372036854775807L
Kevin Qinad64f6d2014-02-24 02:45:03 +0000362// AARCH64:#define __INTPTR_TYPE__ long int
363// AARCH64:#define __INTPTR_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +0000364// AARCH64:#define __INT_FAST16_FMTd__ "hd"
365// AARCH64:#define __INT_FAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +0000366// AARCH64:#define __INT_FAST16_MAX__ 32767
367// AARCH64:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +0000368// AARCH64:#define __INT_FAST32_FMTd__ "d"
369// AARCH64:#define __INT_FAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +0000370// AARCH64:#define __INT_FAST32_MAX__ 2147483647
371// AARCH64:#define __INT_FAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +0000372// AARCH64:#define __INT_FAST64_FMTd__ "ld"
373// AARCH64:#define __INT_FAST64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +0000374// AARCH64:#define __INT_FAST64_MAX__ 9223372036854775807L
375// AARCH64:#define __INT_FAST64_TYPE__ long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +0000376// AARCH64:#define __INT_FAST8_FMTd__ "hhd"
377// AARCH64:#define __INT_FAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +0000378// AARCH64:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +0000379// AARCH64:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +0000380// AARCH64:#define __INT_LEAST16_FMTd__ "hd"
381// AARCH64:#define __INT_LEAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +0000382// AARCH64:#define __INT_LEAST16_MAX__ 32767
383// AARCH64:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +0000384// AARCH64:#define __INT_LEAST32_FMTd__ "d"
385// AARCH64:#define __INT_LEAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +0000386// AARCH64:#define __INT_LEAST32_MAX__ 2147483647
387// AARCH64:#define __INT_LEAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +0000388// AARCH64:#define __INT_LEAST64_FMTd__ "ld"
389// AARCH64:#define __INT_LEAST64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +0000390// AARCH64:#define __INT_LEAST64_MAX__ 9223372036854775807L
391// AARCH64:#define __INT_LEAST64_TYPE__ long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +0000392// AARCH64:#define __INT_LEAST8_FMTd__ "hhd"
393// AARCH64:#define __INT_LEAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +0000394// AARCH64:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +0000395// AARCH64:#define __INT_LEAST8_TYPE__ signed char
Kevin Qinad64f6d2014-02-24 02:45:03 +0000396// AARCH64:#define __INT_MAX__ 2147483647
397// AARCH64:#define __LDBL_DENORM_MIN__ 6.47517511943802511092443895822764655e-4966L
398// AARCH64:#define __LDBL_DIG__ 33
399// AARCH64:#define __LDBL_EPSILON__ 1.92592994438723585305597794258492732e-34L
400// AARCH64:#define __LDBL_HAS_DENORM__ 1
401// AARCH64:#define __LDBL_HAS_INFINITY__ 1
402// AARCH64:#define __LDBL_HAS_QUIET_NAN__ 1
403// AARCH64:#define __LDBL_MANT_DIG__ 113
404// AARCH64:#define __LDBL_MAX_10_EXP__ 4932
405// AARCH64:#define __LDBL_MAX_EXP__ 16384
406// AARCH64:#define __LDBL_MAX__ 1.18973149535723176508575932662800702e+4932L
407// AARCH64:#define __LDBL_MIN_10_EXP__ (-4931)
408// AARCH64:#define __LDBL_MIN_EXP__ (-16381)
409// AARCH64:#define __LDBL_MIN__ 3.36210314311209350626267781732175260e-4932L
410// AARCH64:#define __LONG_LONG_MAX__ 9223372036854775807LL
411// AARCH64:#define __LONG_MAX__ 9223372036854775807L
412// AARCH64:#define __LP64__ 1
413// AARCH64:#define __POINTER_WIDTH__ 64
414// AARCH64:#define __PTRDIFF_TYPE__ long int
415// AARCH64:#define __PTRDIFF_WIDTH__ 64
416// AARCH64:#define __SCHAR_MAX__ 127
417// AARCH64:#define __SHRT_MAX__ 32767
Joerg Sonnenbergerb3a49692014-07-17 18:31:20 +0000418// AARCH64:#define __SIG_ATOMIC_MAX__ 2147483647
Kevin Qinad64f6d2014-02-24 02:45:03 +0000419// AARCH64:#define __SIG_ATOMIC_WIDTH__ 32
420// AARCH64:#define __SIZEOF_DOUBLE__ 8
421// AARCH64:#define __SIZEOF_FLOAT__ 4
422// AARCH64:#define __SIZEOF_INT128__ 16
423// AARCH64:#define __SIZEOF_INT__ 4
424// AARCH64:#define __SIZEOF_LONG_DOUBLE__ 16
425// AARCH64:#define __SIZEOF_LONG_LONG__ 8
426// AARCH64:#define __SIZEOF_LONG__ 8
427// AARCH64:#define __SIZEOF_POINTER__ 8
428// AARCH64:#define __SIZEOF_PTRDIFF_T__ 8
429// AARCH64:#define __SIZEOF_SHORT__ 2
430// AARCH64:#define __SIZEOF_SIZE_T__ 8
431// AARCH64:#define __SIZEOF_WCHAR_T__ 4
432// AARCH64:#define __SIZEOF_WINT_T__ 4
433// AARCH64:#define __SIZE_MAX__ 18446744073709551615UL
434// AARCH64:#define __SIZE_TYPE__ long unsigned int
435// AARCH64:#define __SIZE_WIDTH__ 64
Richard Smith59139022016-09-30 22:41:36 +0000436// AARCH64-CXX:#define __STDCPP_DEFAULT_NEW_ALIGNMENT__ 16UL
James Y Knightc97efa42016-02-11 16:51:29 +0000437// AARCH64:#define __UINT16_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +0000438// AARCH64:#define __UINT16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +0000439// AARCH64:#define __UINT16_TYPE__ unsigned short
440// AARCH64:#define __UINT32_C_SUFFIX__ U
441// AARCH64:#define __UINT32_MAX__ 4294967295U
442// AARCH64:#define __UINT32_TYPE__ unsigned int
443// AARCH64:#define __UINT64_C_SUFFIX__ UL
444// AARCH64:#define __UINT64_MAX__ 18446744073709551615UL
445// AARCH64:#define __UINT64_TYPE__ long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +0000446// AARCH64:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +0000447// AARCH64:#define __UINT8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +0000448// AARCH64:#define __UINT8_TYPE__ unsigned char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +0000449// AARCH64:#define __UINTMAX_C_SUFFIX__ UL
JF Bastienab8d0a02014-06-25 01:31:33 +0000450// AARCH64:#define __UINTMAX_MAX__ 18446744073709551615UL
Kevin Qinad64f6d2014-02-24 02:45:03 +0000451// AARCH64:#define __UINTMAX_TYPE__ long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +0000452// AARCH64:#define __UINTMAX_WIDTH__ 64
453// AARCH64:#define __UINTPTR_MAX__ 18446744073709551615UL
454// AARCH64:#define __UINTPTR_TYPE__ long unsigned int
455// AARCH64:#define __UINTPTR_WIDTH__ 64
Joerg Sonnenberger587deea2014-07-17 20:12:32 +0000456// AARCH64:#define __UINT_FAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +0000457// AARCH64:#define __UINT_FAST16_TYPE__ unsigned short
458// AARCH64:#define __UINT_FAST32_MAX__ 4294967295U
459// AARCH64:#define __UINT_FAST32_TYPE__ unsigned int
460// AARCH64:#define __UINT_FAST64_MAX__ 18446744073709551615UL
461// AARCH64:#define __UINT_FAST64_TYPE__ long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +0000462// AARCH64:#define __UINT_FAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +0000463// AARCH64:#define __UINT_FAST8_TYPE__ unsigned char
Joerg Sonnenberger587deea2014-07-17 20:12:32 +0000464// AARCH64:#define __UINT_LEAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +0000465// AARCH64:#define __UINT_LEAST16_TYPE__ unsigned short
466// AARCH64:#define __UINT_LEAST32_MAX__ 4294967295U
467// AARCH64:#define __UINT_LEAST32_TYPE__ unsigned int
468// AARCH64:#define __UINT_LEAST64_MAX__ 18446744073709551615UL
469// AARCH64:#define __UINT_LEAST64_TYPE__ long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +0000470// AARCH64:#define __UINT_LEAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +0000471// AARCH64:#define __UINT_LEAST8_TYPE__ unsigned char
James Y Knightb214cbc2016-03-04 19:00:41 +0000472// AARCH64:#define __USER_LABEL_PREFIX__
Kevin Qinad64f6d2014-02-24 02:45:03 +0000473// AARCH64:#define __WCHAR_MAX__ 4294967295U
474// AARCH64:#define __WCHAR_TYPE__ unsigned int
475// AARCH64:#define __WCHAR_UNSIGNED__ 1
476// AARCH64:#define __WCHAR_WIDTH__ 32
477// AARCH64:#define __WINT_TYPE__ int
478// AARCH64:#define __WINT_WIDTH__ 32
479// AARCH64:#define __aarch64__ 1
480//
James Y Knightc97efa42016-02-11 16:51:29 +0000481// 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 +0000482//
483// AARCH64-BE:#define _LP64 1
484// AARCH64-BE:#define __AARCH64EB__ 1
485// AARCH64-BE-NOT:#define __AARCH64EL__ 1
486// AARCH64-BE:#define __AARCH_BIG_ENDIAN 1
487// AARCH64-BE:#define __ARM_64BIT_STATE 1
488// AARCH64-BE:#define __ARM_ARCH 8
489// AARCH64-BE:#define __ARM_ARCH_ISA_A64 1
490// AARCH64-BE:#define __ARM_BIG_ENDIAN 1
Tim Northovera6a19f12015-02-06 01:25:07 +0000491// AARCH64-BE:#define __BIGGEST_ALIGNMENT__ 16
Christian Pirker227f5ed2014-03-24 13:57:21 +0000492// AARCH64-BE:#define __BYTE_ORDER__ __ORDER_BIG_ENDIAN__
493// AARCH64-BE:#define __CHAR16_TYPE__ unsigned short
494// AARCH64-BE:#define __CHAR32_TYPE__ unsigned int
495// AARCH64-BE:#define __CHAR_BIT__ 8
496// AARCH64-BE:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
497// AARCH64-BE:#define __DBL_DIG__ 15
498// AARCH64-BE:#define __DBL_EPSILON__ 2.2204460492503131e-16
499// AARCH64-BE:#define __DBL_HAS_DENORM__ 1
500// AARCH64-BE:#define __DBL_HAS_INFINITY__ 1
501// AARCH64-BE:#define __DBL_HAS_QUIET_NAN__ 1
502// AARCH64-BE:#define __DBL_MANT_DIG__ 53
503// AARCH64-BE:#define __DBL_MAX_10_EXP__ 308
504// AARCH64-BE:#define __DBL_MAX_EXP__ 1024
505// AARCH64-BE:#define __DBL_MAX__ 1.7976931348623157e+308
506// AARCH64-BE:#define __DBL_MIN_10_EXP__ (-307)
507// AARCH64-BE:#define __DBL_MIN_EXP__ (-1021)
508// AARCH64-BE:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +0000509// AARCH64-BE:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Christian Pirker227f5ed2014-03-24 13:57:21 +0000510// AARCH64-BE:#define __FLT_DENORM_MIN__ 1.40129846e-45F
511// AARCH64-BE:#define __FLT_DIG__ 6
512// AARCH64-BE:#define __FLT_EPSILON__ 1.19209290e-7F
513// AARCH64-BE:#define __FLT_EVAL_METHOD__ 0
514// AARCH64-BE:#define __FLT_HAS_DENORM__ 1
515// AARCH64-BE:#define __FLT_HAS_INFINITY__ 1
516// AARCH64-BE:#define __FLT_HAS_QUIET_NAN__ 1
517// AARCH64-BE:#define __FLT_MANT_DIG__ 24
518// AARCH64-BE:#define __FLT_MAX_10_EXP__ 38
519// AARCH64-BE:#define __FLT_MAX_EXP__ 128
520// AARCH64-BE:#define __FLT_MAX__ 3.40282347e+38F
521// AARCH64-BE:#define __FLT_MIN_10_EXP__ (-37)
522// AARCH64-BE:#define __FLT_MIN_EXP__ (-125)
523// AARCH64-BE:#define __FLT_MIN__ 1.17549435e-38F
524// AARCH64-BE:#define __FLT_RADIX__ 2
James Y Knightc97efa42016-02-11 16:51:29 +0000525// AARCH64-BE:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +0000526// AARCH64-BE:#define __INT16_FMTd__ "hd"
527// AARCH64-BE:#define __INT16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +0000528// AARCH64-BE:#define __INT16_MAX__ 32767
Christian Pirker227f5ed2014-03-24 13:57:21 +0000529// AARCH64-BE:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +0000530// AARCH64-BE:#define __INT32_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +0000531// AARCH64-BE:#define __INT32_FMTd__ "d"
532// AARCH64-BE:#define __INT32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +0000533// AARCH64-BE:#define __INT32_MAX__ 2147483647
Christian Pirker227f5ed2014-03-24 13:57:21 +0000534// AARCH64-BE:#define __INT32_TYPE__ int
535// AARCH64-BE:#define __INT64_C_SUFFIX__ L
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +0000536// AARCH64-BE:#define __INT64_FMTd__ "ld"
537// AARCH64-BE:#define __INT64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +0000538// AARCH64-BE:#define __INT64_MAX__ 9223372036854775807L
Christian Pirker227f5ed2014-03-24 13:57:21 +0000539// AARCH64-BE:#define __INT64_TYPE__ long int
James Y Knightc97efa42016-02-11 16:51:29 +0000540// AARCH64-BE:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +0000541// AARCH64-BE:#define __INT8_FMTd__ "hhd"
542// AARCH64-BE:#define __INT8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +0000543// AARCH64-BE:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +0000544// AARCH64-BE:#define __INT8_TYPE__ signed char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +0000545// AARCH64-BE:#define __INTMAX_C_SUFFIX__ L
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +0000546// AARCH64-BE:#define __INTMAX_FMTd__ "ld"
547// AARCH64-BE:#define __INTMAX_FMTi__ "li"
Christian Pirker227f5ed2014-03-24 13:57:21 +0000548// AARCH64-BE:#define __INTMAX_MAX__ 9223372036854775807L
549// AARCH64-BE:#define __INTMAX_TYPE__ long int
550// AARCH64-BE:#define __INTMAX_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +0000551// AARCH64-BE:#define __INTPTR_FMTd__ "ld"
552// AARCH64-BE:#define __INTPTR_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +0000553// AARCH64-BE:#define __INTPTR_MAX__ 9223372036854775807L
Christian Pirker227f5ed2014-03-24 13:57:21 +0000554// AARCH64-BE:#define __INTPTR_TYPE__ long int
555// AARCH64-BE:#define __INTPTR_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +0000556// AARCH64-BE:#define __INT_FAST16_FMTd__ "hd"
557// AARCH64-BE:#define __INT_FAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +0000558// AARCH64-BE:#define __INT_FAST16_MAX__ 32767
559// AARCH64-BE:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +0000560// AARCH64-BE:#define __INT_FAST32_FMTd__ "d"
561// AARCH64-BE:#define __INT_FAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +0000562// AARCH64-BE:#define __INT_FAST32_MAX__ 2147483647
563// AARCH64-BE:#define __INT_FAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +0000564// AARCH64-BE:#define __INT_FAST64_FMTd__ "ld"
565// AARCH64-BE:#define __INT_FAST64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +0000566// AARCH64-BE:#define __INT_FAST64_MAX__ 9223372036854775807L
567// AARCH64-BE:#define __INT_FAST64_TYPE__ long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +0000568// AARCH64-BE:#define __INT_FAST8_FMTd__ "hhd"
569// AARCH64-BE:#define __INT_FAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +0000570// AARCH64-BE:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +0000571// AARCH64-BE:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +0000572// AARCH64-BE:#define __INT_LEAST16_FMTd__ "hd"
573// AARCH64-BE:#define __INT_LEAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +0000574// AARCH64-BE:#define __INT_LEAST16_MAX__ 32767
575// AARCH64-BE:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +0000576// AARCH64-BE:#define __INT_LEAST32_FMTd__ "d"
577// AARCH64-BE:#define __INT_LEAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +0000578// AARCH64-BE:#define __INT_LEAST32_MAX__ 2147483647
579// AARCH64-BE:#define __INT_LEAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +0000580// AARCH64-BE:#define __INT_LEAST64_FMTd__ "ld"
581// AARCH64-BE:#define __INT_LEAST64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +0000582// AARCH64-BE:#define __INT_LEAST64_MAX__ 9223372036854775807L
583// AARCH64-BE:#define __INT_LEAST64_TYPE__ long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +0000584// AARCH64-BE:#define __INT_LEAST8_FMTd__ "hhd"
585// AARCH64-BE:#define __INT_LEAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +0000586// AARCH64-BE:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +0000587// AARCH64-BE:#define __INT_LEAST8_TYPE__ signed char
Christian Pirker227f5ed2014-03-24 13:57:21 +0000588// AARCH64-BE:#define __INT_MAX__ 2147483647
589// AARCH64-BE:#define __LDBL_DENORM_MIN__ 6.47517511943802511092443895822764655e-4966L
590// AARCH64-BE:#define __LDBL_DIG__ 33
591// AARCH64-BE:#define __LDBL_EPSILON__ 1.92592994438723585305597794258492732e-34L
592// AARCH64-BE:#define __LDBL_HAS_DENORM__ 1
593// AARCH64-BE:#define __LDBL_HAS_INFINITY__ 1
594// AARCH64-BE:#define __LDBL_HAS_QUIET_NAN__ 1
595// AARCH64-BE:#define __LDBL_MANT_DIG__ 113
596// AARCH64-BE:#define __LDBL_MAX_10_EXP__ 4932
597// AARCH64-BE:#define __LDBL_MAX_EXP__ 16384
598// AARCH64-BE:#define __LDBL_MAX__ 1.18973149535723176508575932662800702e+4932L
599// AARCH64-BE:#define __LDBL_MIN_10_EXP__ (-4931)
600// AARCH64-BE:#define __LDBL_MIN_EXP__ (-16381)
601// AARCH64-BE:#define __LDBL_MIN__ 3.36210314311209350626267781732175260e-4932L
602// AARCH64-BE:#define __LONG_LONG_MAX__ 9223372036854775807LL
603// AARCH64-BE:#define __LONG_MAX__ 9223372036854775807L
604// AARCH64-BE:#define __LP64__ 1
605// AARCH64-BE:#define __POINTER_WIDTH__ 64
606// AARCH64-BE:#define __PTRDIFF_TYPE__ long int
607// AARCH64-BE:#define __PTRDIFF_WIDTH__ 64
608// AARCH64-BE:#define __SCHAR_MAX__ 127
609// AARCH64-BE:#define __SHRT_MAX__ 32767
Joerg Sonnenbergerb3a49692014-07-17 18:31:20 +0000610// AARCH64-BE:#define __SIG_ATOMIC_MAX__ 2147483647
Christian Pirker227f5ed2014-03-24 13:57:21 +0000611// AARCH64-BE:#define __SIG_ATOMIC_WIDTH__ 32
612// AARCH64-BE:#define __SIZEOF_DOUBLE__ 8
613// AARCH64-BE:#define __SIZEOF_FLOAT__ 4
614// AARCH64-BE:#define __SIZEOF_INT128__ 16
615// AARCH64-BE:#define __SIZEOF_INT__ 4
616// AARCH64-BE:#define __SIZEOF_LONG_DOUBLE__ 16
617// AARCH64-BE:#define __SIZEOF_LONG_LONG__ 8
618// AARCH64-BE:#define __SIZEOF_LONG__ 8
619// AARCH64-BE:#define __SIZEOF_POINTER__ 8
620// AARCH64-BE:#define __SIZEOF_PTRDIFF_T__ 8
621// AARCH64-BE:#define __SIZEOF_SHORT__ 2
622// AARCH64-BE:#define __SIZEOF_SIZE_T__ 8
623// AARCH64-BE:#define __SIZEOF_WCHAR_T__ 4
624// AARCH64-BE:#define __SIZEOF_WINT_T__ 4
625// AARCH64-BE:#define __SIZE_MAX__ 18446744073709551615UL
626// AARCH64-BE:#define __SIZE_TYPE__ long unsigned int
627// AARCH64-BE:#define __SIZE_WIDTH__ 64
James Y Knightc97efa42016-02-11 16:51:29 +0000628// AARCH64-BE:#define __UINT16_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +0000629// AARCH64-BE:#define __UINT16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +0000630// AARCH64-BE:#define __UINT16_TYPE__ unsigned short
631// AARCH64-BE:#define __UINT32_C_SUFFIX__ U
632// AARCH64-BE:#define __UINT32_MAX__ 4294967295U
633// AARCH64-BE:#define __UINT32_TYPE__ unsigned int
634// AARCH64-BE:#define __UINT64_C_SUFFIX__ UL
635// AARCH64-BE:#define __UINT64_MAX__ 18446744073709551615UL
636// AARCH64-BE:#define __UINT64_TYPE__ long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +0000637// AARCH64-BE:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +0000638// AARCH64-BE:#define __UINT8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +0000639// AARCH64-BE:#define __UINT8_TYPE__ unsigned char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +0000640// AARCH64-BE:#define __UINTMAX_C_SUFFIX__ UL
JF Bastienab8d0a02014-06-25 01:31:33 +0000641// AARCH64-BE:#define __UINTMAX_MAX__ 18446744073709551615UL
Christian Pirker227f5ed2014-03-24 13:57:21 +0000642// AARCH64-BE:#define __UINTMAX_TYPE__ long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +0000643// AARCH64-BE:#define __UINTMAX_WIDTH__ 64
644// AARCH64-BE:#define __UINTPTR_MAX__ 18446744073709551615UL
645// AARCH64-BE:#define __UINTPTR_TYPE__ long unsigned int
646// AARCH64-BE:#define __UINTPTR_WIDTH__ 64
Joerg Sonnenberger587deea2014-07-17 20:12:32 +0000647// AARCH64-BE:#define __UINT_FAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +0000648// AARCH64-BE:#define __UINT_FAST16_TYPE__ unsigned short
649// AARCH64-BE:#define __UINT_FAST32_MAX__ 4294967295U
650// AARCH64-BE:#define __UINT_FAST32_TYPE__ unsigned int
651// AARCH64-BE:#define __UINT_FAST64_MAX__ 18446744073709551615UL
652// AARCH64-BE:#define __UINT_FAST64_TYPE__ long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +0000653// AARCH64-BE:#define __UINT_FAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +0000654// AARCH64-BE:#define __UINT_FAST8_TYPE__ unsigned char
Joerg Sonnenberger587deea2014-07-17 20:12:32 +0000655// AARCH64-BE:#define __UINT_LEAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +0000656// AARCH64-BE:#define __UINT_LEAST16_TYPE__ unsigned short
657// AARCH64-BE:#define __UINT_LEAST32_MAX__ 4294967295U
658// AARCH64-BE:#define __UINT_LEAST32_TYPE__ unsigned int
659// AARCH64-BE:#define __UINT_LEAST64_MAX__ 18446744073709551615UL
660// AARCH64-BE:#define __UINT_LEAST64_TYPE__ long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +0000661// AARCH64-BE:#define __UINT_LEAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +0000662// AARCH64-BE:#define __UINT_LEAST8_TYPE__ unsigned char
James Y Knightb214cbc2016-03-04 19:00:41 +0000663// AARCH64-BE:#define __USER_LABEL_PREFIX__
Christian Pirker227f5ed2014-03-24 13:57:21 +0000664// AARCH64-BE:#define __WCHAR_MAX__ 4294967295U
665// AARCH64-BE:#define __WCHAR_TYPE__ unsigned int
666// AARCH64-BE:#define __WCHAR_UNSIGNED__ 1
667// AARCH64-BE:#define __WCHAR_WIDTH__ 32
668// AARCH64-BE:#define __WINT_TYPE__ int
669// AARCH64-BE:#define __WINT_WIDTH__ 32
670// AARCH64-BE:#define __aarch64__ 1
671//
James Y Knightc97efa42016-02-11 16:51:29 +0000672// 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 +0000673//
674// AARCH64-NETBSD:#define _LP64 1
Christian Pirker227f5ed2014-03-24 13:57:21 +0000675// AARCH64-NETBSD-NOT:#define __AARCH64EB__ 1
Joerg Sonnenbergerec39cc62014-02-02 21:55:32 +0000676// AARCH64-NETBSD:#define __AARCH64EL__ 1
Christian Pirker227f5ed2014-03-24 13:57:21 +0000677// AARCH64-NETBSD-NOT:#define __AARCH_BIG_ENDIAN 1
Joerg Sonnenbergerec39cc62014-02-02 21:55:32 +0000678// AARCH64-NETBSD:#define __ARM_64BIT_STATE 1
679// AARCH64-NETBSD:#define __ARM_ARCH 8
680// AARCH64-NETBSD:#define __ARM_ARCH_ISA_A64 1
Christian Pirker227f5ed2014-03-24 13:57:21 +0000681// AARCH64-NETBSD-NOT:#define __ARM_BIG_ENDIAN 1
Tim Northovera6a19f12015-02-06 01:25:07 +0000682// AARCH64-NETBSD:#define __BIGGEST_ALIGNMENT__ 16
Joerg Sonnenbergerec39cc62014-02-02 21:55:32 +0000683// AARCH64-NETBSD:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
684// AARCH64-NETBSD:#define __CHAR16_TYPE__ unsigned short
685// AARCH64-NETBSD:#define __CHAR32_TYPE__ unsigned int
686// AARCH64-NETBSD:#define __CHAR_BIT__ 8
687// AARCH64-NETBSD:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
688// AARCH64-NETBSD:#define __DBL_DIG__ 15
689// AARCH64-NETBSD:#define __DBL_EPSILON__ 2.2204460492503131e-16
690// AARCH64-NETBSD:#define __DBL_HAS_DENORM__ 1
691// AARCH64-NETBSD:#define __DBL_HAS_INFINITY__ 1
692// AARCH64-NETBSD:#define __DBL_HAS_QUIET_NAN__ 1
693// AARCH64-NETBSD:#define __DBL_MANT_DIG__ 53
694// AARCH64-NETBSD:#define __DBL_MAX_10_EXP__ 308
695// AARCH64-NETBSD:#define __DBL_MAX_EXP__ 1024
696// AARCH64-NETBSD:#define __DBL_MAX__ 1.7976931348623157e+308
697// AARCH64-NETBSD:#define __DBL_MIN_10_EXP__ (-307)
698// AARCH64-NETBSD:#define __DBL_MIN_EXP__ (-1021)
699// AARCH64-NETBSD:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +0000700// AARCH64-NETBSD:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Joerg Sonnenbergerec39cc62014-02-02 21:55:32 +0000701// AARCH64-NETBSD:#define __ELF__ 1
702// AARCH64-NETBSD:#define __FLT_DENORM_MIN__ 1.40129846e-45F
703// AARCH64-NETBSD:#define __FLT_DIG__ 6
704// AARCH64-NETBSD:#define __FLT_EPSILON__ 1.19209290e-7F
705// AARCH64-NETBSD:#define __FLT_EVAL_METHOD__ 0
706// AARCH64-NETBSD:#define __FLT_HAS_DENORM__ 1
707// AARCH64-NETBSD:#define __FLT_HAS_INFINITY__ 1
708// AARCH64-NETBSD:#define __FLT_HAS_QUIET_NAN__ 1
709// AARCH64-NETBSD:#define __FLT_MANT_DIG__ 24
710// AARCH64-NETBSD:#define __FLT_MAX_10_EXP__ 38
711// AARCH64-NETBSD:#define __FLT_MAX_EXP__ 128
712// AARCH64-NETBSD:#define __FLT_MAX__ 3.40282347e+38F
713// AARCH64-NETBSD:#define __FLT_MIN_10_EXP__ (-37)
714// AARCH64-NETBSD:#define __FLT_MIN_EXP__ (-125)
715// AARCH64-NETBSD:#define __FLT_MIN__ 1.17549435e-38F
716// AARCH64-NETBSD:#define __FLT_RADIX__ 2
James Y Knightc97efa42016-02-11 16:51:29 +0000717// AARCH64-NETBSD:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +0000718// AARCH64-NETBSD:#define __INT16_FMTd__ "hd"
719// AARCH64-NETBSD:#define __INT16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +0000720// AARCH64-NETBSD:#define __INT16_MAX__ 32767
Joerg Sonnenbergerec39cc62014-02-02 21:55:32 +0000721// AARCH64-NETBSD:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +0000722// AARCH64-NETBSD:#define __INT32_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +0000723// AARCH64-NETBSD:#define __INT32_FMTd__ "d"
724// AARCH64-NETBSD:#define __INT32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +0000725// AARCH64-NETBSD:#define __INT32_MAX__ 2147483647
Joerg Sonnenbergerec39cc62014-02-02 21:55:32 +0000726// AARCH64-NETBSD:#define __INT32_TYPE__ int
Joerg Sonnenberger68c02102018-07-17 12:33:19 +0000727// AARCH64-NETBSD:#define __INT64_C_SUFFIX__ L
728// AARCH64-NETBSD:#define __INT64_FMTd__ "ld"
729// AARCH64-NETBSD:#define __INT64_FMTi__ "li"
730// AARCH64-NETBSD:#define __INT64_MAX__ 9223372036854775807L
731// AARCH64-NETBSD:#define __INT64_TYPE__ long int
James Y Knightc97efa42016-02-11 16:51:29 +0000732// AARCH64-NETBSD:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +0000733// AARCH64-NETBSD:#define __INT8_FMTd__ "hhd"
734// AARCH64-NETBSD:#define __INT8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +0000735// AARCH64-NETBSD:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +0000736// AARCH64-NETBSD:#define __INT8_TYPE__ signed char
Joerg Sonnenberger68c02102018-07-17 12:33:19 +0000737// AARCH64-NETBSD:#define __INTMAX_C_SUFFIX__ L
738// AARCH64-NETBSD:#define __INTMAX_FMTd__ "ld"
739// AARCH64-NETBSD:#define __INTMAX_FMTi__ "li"
740// AARCH64-NETBSD:#define __INTMAX_MAX__ 9223372036854775807L
741// AARCH64-NETBSD:#define __INTMAX_TYPE__ long int
Joerg Sonnenbergerec39cc62014-02-02 21:55:32 +0000742// AARCH64-NETBSD:#define __INTMAX_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +0000743// AARCH64-NETBSD:#define __INTPTR_FMTd__ "ld"
744// AARCH64-NETBSD:#define __INTPTR_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +0000745// AARCH64-NETBSD:#define __INTPTR_MAX__ 9223372036854775807L
Joerg Sonnenbergerec39cc62014-02-02 21:55:32 +0000746// AARCH64-NETBSD:#define __INTPTR_TYPE__ long int
747// AARCH64-NETBSD:#define __INTPTR_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +0000748// AARCH64-NETBSD:#define __INT_FAST16_FMTd__ "hd"
749// AARCH64-NETBSD:#define __INT_FAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +0000750// AARCH64-NETBSD:#define __INT_FAST16_MAX__ 32767
751// AARCH64-NETBSD:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +0000752// AARCH64-NETBSD:#define __INT_FAST32_FMTd__ "d"
753// AARCH64-NETBSD:#define __INT_FAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +0000754// AARCH64-NETBSD:#define __INT_FAST32_MAX__ 2147483647
755// AARCH64-NETBSD:#define __INT_FAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +0000756// AARCH64-NETBSD:#define __INT_FAST64_FMTd__ "ld"
757// AARCH64-NETBSD:#define __INT_FAST64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +0000758// AARCH64-NETBSD:#define __INT_FAST64_MAX__ 9223372036854775807L
759// AARCH64-NETBSD:#define __INT_FAST64_TYPE__ long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +0000760// AARCH64-NETBSD:#define __INT_FAST8_FMTd__ "hhd"
761// AARCH64-NETBSD:#define __INT_FAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +0000762// AARCH64-NETBSD:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +0000763// AARCH64-NETBSD:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +0000764// AARCH64-NETBSD:#define __INT_LEAST16_FMTd__ "hd"
765// AARCH64-NETBSD:#define __INT_LEAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +0000766// AARCH64-NETBSD:#define __INT_LEAST16_MAX__ 32767
767// AARCH64-NETBSD:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +0000768// AARCH64-NETBSD:#define __INT_LEAST32_FMTd__ "d"
769// AARCH64-NETBSD:#define __INT_LEAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +0000770// AARCH64-NETBSD:#define __INT_LEAST32_MAX__ 2147483647
771// AARCH64-NETBSD:#define __INT_LEAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +0000772// AARCH64-NETBSD:#define __INT_LEAST64_FMTd__ "ld"
773// AARCH64-NETBSD:#define __INT_LEAST64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +0000774// AARCH64-NETBSD:#define __INT_LEAST64_MAX__ 9223372036854775807L
775// AARCH64-NETBSD:#define __INT_LEAST64_TYPE__ long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +0000776// AARCH64-NETBSD:#define __INT_LEAST8_FMTd__ "hhd"
777// AARCH64-NETBSD:#define __INT_LEAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +0000778// AARCH64-NETBSD:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +0000779// AARCH64-NETBSD:#define __INT_LEAST8_TYPE__ signed char
Joerg Sonnenbergerec39cc62014-02-02 21:55:32 +0000780// AARCH64-NETBSD:#define __INT_MAX__ 2147483647
781// AARCH64-NETBSD:#define __LDBL_DENORM_MIN__ 6.47517511943802511092443895822764655e-4966L
782// AARCH64-NETBSD:#define __LDBL_DIG__ 33
783// AARCH64-NETBSD:#define __LDBL_EPSILON__ 1.92592994438723585305597794258492732e-34L
784// AARCH64-NETBSD:#define __LDBL_HAS_DENORM__ 1
785// AARCH64-NETBSD:#define __LDBL_HAS_INFINITY__ 1
786// AARCH64-NETBSD:#define __LDBL_HAS_QUIET_NAN__ 1
787// AARCH64-NETBSD:#define __LDBL_MANT_DIG__ 113
788// AARCH64-NETBSD:#define __LDBL_MAX_10_EXP__ 4932
789// AARCH64-NETBSD:#define __LDBL_MAX_EXP__ 16384
790// AARCH64-NETBSD:#define __LDBL_MAX__ 1.18973149535723176508575932662800702e+4932L
791// AARCH64-NETBSD:#define __LDBL_MIN_10_EXP__ (-4931)
792// AARCH64-NETBSD:#define __LDBL_MIN_EXP__ (-16381)
793// AARCH64-NETBSD:#define __LDBL_MIN__ 3.36210314311209350626267781732175260e-4932L
794// AARCH64-NETBSD:#define __LITTLE_ENDIAN__ 1
795// AARCH64-NETBSD:#define __LONG_LONG_MAX__ 9223372036854775807LL
796// AARCH64-NETBSD:#define __LONG_MAX__ 9223372036854775807L
797// AARCH64-NETBSD:#define __LP64__ 1
798// AARCH64-NETBSD:#define __NetBSD__ 1
799// AARCH64-NETBSD:#define __POINTER_WIDTH__ 64
800// AARCH64-NETBSD:#define __PTRDIFF_TYPE__ long int
801// AARCH64-NETBSD:#define __PTRDIFF_WIDTH__ 64
802// AARCH64-NETBSD:#define __SCHAR_MAX__ 127
803// AARCH64-NETBSD:#define __SHRT_MAX__ 32767
Joerg Sonnenbergerb3a49692014-07-17 18:31:20 +0000804// AARCH64-NETBSD:#define __SIG_ATOMIC_MAX__ 2147483647
Joerg Sonnenbergerec39cc62014-02-02 21:55:32 +0000805// AARCH64-NETBSD:#define __SIG_ATOMIC_WIDTH__ 32
806// AARCH64-NETBSD:#define __SIZEOF_DOUBLE__ 8
807// AARCH64-NETBSD:#define __SIZEOF_FLOAT__ 4
808// AARCH64-NETBSD:#define __SIZEOF_INT__ 4
809// AARCH64-NETBSD:#define __SIZEOF_LONG_DOUBLE__ 16
810// AARCH64-NETBSD:#define __SIZEOF_LONG_LONG__ 8
811// AARCH64-NETBSD:#define __SIZEOF_LONG__ 8
812// AARCH64-NETBSD:#define __SIZEOF_POINTER__ 8
813// AARCH64-NETBSD:#define __SIZEOF_PTRDIFF_T__ 8
814// AARCH64-NETBSD:#define __SIZEOF_SHORT__ 2
815// AARCH64-NETBSD:#define __SIZEOF_SIZE_T__ 8
816// AARCH64-NETBSD:#define __SIZEOF_WCHAR_T__ 4
817// AARCH64-NETBSD:#define __SIZEOF_WINT_T__ 4
818// AARCH64-NETBSD:#define __SIZE_MAX__ 18446744073709551615UL
819// AARCH64-NETBSD:#define __SIZE_TYPE__ long unsigned int
820// AARCH64-NETBSD:#define __SIZE_WIDTH__ 64
James Y Knightc97efa42016-02-11 16:51:29 +0000821// AARCH64-NETBSD:#define __UINT16_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +0000822// AARCH64-NETBSD:#define __UINT16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +0000823// AARCH64-NETBSD:#define __UINT16_TYPE__ unsigned short
824// AARCH64-NETBSD:#define __UINT32_C_SUFFIX__ U
825// AARCH64-NETBSD:#define __UINT32_MAX__ 4294967295U
826// AARCH64-NETBSD:#define __UINT32_TYPE__ unsigned int
Joerg Sonnenberger68c02102018-07-17 12:33:19 +0000827// AARCH64-NETBSD:#define __UINT64_C_SUFFIX__ UL
828// AARCH64-NETBSD:#define __UINT64_MAX__ 18446744073709551615UL
829// AARCH64-NETBSD:#define __UINT64_TYPE__ long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +0000830// AARCH64-NETBSD:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +0000831// AARCH64-NETBSD:#define __UINT8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +0000832// AARCH64-NETBSD:#define __UINT8_TYPE__ unsigned char
Joerg Sonnenberger68c02102018-07-17 12:33:19 +0000833// AARCH64-NETBSD:#define __UINTMAX_C_SUFFIX__ UL
834// AARCH64-NETBSD:#define __UINTMAX_MAX__ 18446744073709551615UL
835// AARCH64-NETBSD:#define __UINTMAX_TYPE__ long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +0000836// AARCH64-NETBSD:#define __UINTMAX_WIDTH__ 64
837// AARCH64-NETBSD:#define __UINTPTR_MAX__ 18446744073709551615UL
838// AARCH64-NETBSD:#define __UINTPTR_TYPE__ long unsigned int
839// AARCH64-NETBSD:#define __UINTPTR_WIDTH__ 64
Joerg Sonnenberger587deea2014-07-17 20:12:32 +0000840// AARCH64-NETBSD:#define __UINT_FAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +0000841// AARCH64-NETBSD:#define __UINT_FAST16_TYPE__ unsigned short
842// AARCH64-NETBSD:#define __UINT_FAST32_MAX__ 4294967295U
843// AARCH64-NETBSD:#define __UINT_FAST32_TYPE__ unsigned int
844// AARCH64-NETBSD:#define __UINT_FAST64_MAX__ 18446744073709551615UL
845// AARCH64-NETBSD:#define __UINT_FAST64_TYPE__ long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +0000846// AARCH64-NETBSD:#define __UINT_FAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +0000847// AARCH64-NETBSD:#define __UINT_FAST8_TYPE__ unsigned char
Joerg Sonnenberger587deea2014-07-17 20:12:32 +0000848// AARCH64-NETBSD:#define __UINT_LEAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +0000849// AARCH64-NETBSD:#define __UINT_LEAST16_TYPE__ unsigned short
850// AARCH64-NETBSD:#define __UINT_LEAST32_MAX__ 4294967295U
851// AARCH64-NETBSD:#define __UINT_LEAST32_TYPE__ unsigned int
852// AARCH64-NETBSD:#define __UINT_LEAST64_MAX__ 18446744073709551615UL
853// AARCH64-NETBSD:#define __UINT_LEAST64_TYPE__ long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +0000854// AARCH64-NETBSD:#define __UINT_LEAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +0000855// AARCH64-NETBSD:#define __UINT_LEAST8_TYPE__ unsigned char
Joerg Sonnenbergerec39cc62014-02-02 21:55:32 +0000856// AARCH64-NETBSD:#define __USER_LABEL_PREFIX__
857// AARCH64-NETBSD:#define __WCHAR_MAX__ 2147483647
858// AARCH64-NETBSD:#define __WCHAR_TYPE__ int
859// AARCH64-NETBSD:#define __WCHAR_WIDTH__ 32
860// AARCH64-NETBSD:#define __WINT_TYPE__ int
861// AARCH64-NETBSD:#define __WINT_WIDTH__ 32
862// AARCH64-NETBSD:#define __aarch64__ 1
Ed Maste6a9eda52014-11-13 16:55:42 +0000863//
Brad Smith9aa2bf22017-02-21 23:13:09 +0000864// RUN: %clang_cc1 -E -dM -ffreestanding -triple=aarch64-openbsd < /dev/null | FileCheck -match-full-lines -check-prefix AARCH64-OPENBSD %s
865//
866// AARCH64-OPENBSD:#define _LP64 1
867// AARCH64-OPENBSD-NOT:#define __AARCH64EB__ 1
868// AARCH64-OPENBSD:#define __AARCH64EL__ 1
869// AARCH64-OPENBSD-NOT:#define __AARCH_BIG_ENDIAN 1
870// AARCH64-OPENBSD:#define __ARM_64BIT_STATE 1
871// AARCH64-OPENBSD:#define __ARM_ARCH 8
872// AARCH64-OPENBSD:#define __ARM_ARCH_ISA_A64 1
873// AARCH64-OPENBSD-NOT:#define __ARM_BIG_ENDIAN 1
874// AARCH64-OPENBSD:#define __BIGGEST_ALIGNMENT__ 16
875// AARCH64-OPENBSD:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
876// AARCH64-OPENBSD:#define __CHAR16_TYPE__ unsigned short
877// AARCH64-OPENBSD:#define __CHAR32_TYPE__ unsigned int
878// AARCH64-OPENBSD:#define __CHAR_BIT__ 8
879// AARCH64-OPENBSD:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
880// AARCH64-OPENBSD:#define __DBL_DIG__ 15
881// AARCH64-OPENBSD:#define __DBL_EPSILON__ 2.2204460492503131e-16
882// AARCH64-OPENBSD:#define __DBL_HAS_DENORM__ 1
883// AARCH64-OPENBSD:#define __DBL_HAS_INFINITY__ 1
884// AARCH64-OPENBSD:#define __DBL_HAS_QUIET_NAN__ 1
885// AARCH64-OPENBSD:#define __DBL_MANT_DIG__ 53
886// AARCH64-OPENBSD:#define __DBL_MAX_10_EXP__ 308
887// AARCH64-OPENBSD:#define __DBL_MAX_EXP__ 1024
888// AARCH64-OPENBSD:#define __DBL_MAX__ 1.7976931348623157e+308
889// AARCH64-OPENBSD:#define __DBL_MIN_10_EXP__ (-307)
890// AARCH64-OPENBSD:#define __DBL_MIN_EXP__ (-1021)
891// AARCH64-OPENBSD:#define __DBL_MIN__ 2.2250738585072014e-308
892// AARCH64-OPENBSD:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
893// AARCH64-OPENBSD:#define __ELF__ 1
894// AARCH64-OPENBSD:#define __FLT_DENORM_MIN__ 1.40129846e-45F
895// AARCH64-OPENBSD:#define __FLT_DIG__ 6
896// AARCH64-OPENBSD:#define __FLT_EPSILON__ 1.19209290e-7F
897// AARCH64-OPENBSD:#define __FLT_EVAL_METHOD__ 0
898// AARCH64-OPENBSD:#define __FLT_HAS_DENORM__ 1
899// AARCH64-OPENBSD:#define __FLT_HAS_INFINITY__ 1
900// AARCH64-OPENBSD:#define __FLT_HAS_QUIET_NAN__ 1
901// AARCH64-OPENBSD:#define __FLT_MANT_DIG__ 24
902// AARCH64-OPENBSD:#define __FLT_MAX_10_EXP__ 38
903// AARCH64-OPENBSD:#define __FLT_MAX_EXP__ 128
904// AARCH64-OPENBSD:#define __FLT_MAX__ 3.40282347e+38F
905// AARCH64-OPENBSD:#define __FLT_MIN_10_EXP__ (-37)
906// AARCH64-OPENBSD:#define __FLT_MIN_EXP__ (-125)
907// AARCH64-OPENBSD:#define __FLT_MIN__ 1.17549435e-38F
908// AARCH64-OPENBSD:#define __FLT_RADIX__ 2
909// AARCH64-OPENBSD:#define __INT16_C_SUFFIX__
910// AARCH64-OPENBSD:#define __INT16_FMTd__ "hd"
911// AARCH64-OPENBSD:#define __INT16_FMTi__ "hi"
912// AARCH64-OPENBSD:#define __INT16_MAX__ 32767
913// AARCH64-OPENBSD:#define __INT16_TYPE__ short
914// AARCH64-OPENBSD:#define __INT32_C_SUFFIX__
915// AARCH64-OPENBSD:#define __INT32_FMTd__ "d"
916// AARCH64-OPENBSD:#define __INT32_FMTi__ "i"
917// AARCH64-OPENBSD:#define __INT32_MAX__ 2147483647
918// AARCH64-OPENBSD:#define __INT32_TYPE__ int
919// AARCH64-OPENBSD:#define __INT64_C_SUFFIX__ LL
920// AARCH64-OPENBSD:#define __INT64_FMTd__ "lld"
921// AARCH64-OPENBSD:#define __INT64_FMTi__ "lli"
922// AARCH64-OPENBSD:#define __INT64_MAX__ 9223372036854775807LL
923// AARCH64-OPENBSD:#define __INT64_TYPE__ long long int
924// AARCH64-OPENBSD:#define __INT8_C_SUFFIX__
925// AARCH64-OPENBSD:#define __INT8_FMTd__ "hhd"
926// AARCH64-OPENBSD:#define __INT8_FMTi__ "hhi"
927// AARCH64-OPENBSD:#define __INT8_MAX__ 127
928// AARCH64-OPENBSD:#define __INT8_TYPE__ signed char
929// AARCH64-OPENBSD:#define __INTMAX_C_SUFFIX__ LL
930// AARCH64-OPENBSD:#define __INTMAX_FMTd__ "lld"
931// AARCH64-OPENBSD:#define __INTMAX_FMTi__ "lli"
932// AARCH64-OPENBSD:#define __INTMAX_MAX__ 9223372036854775807LL
933// AARCH64-OPENBSD:#define __INTMAX_TYPE__ long long int
934// AARCH64-OPENBSD:#define __INTMAX_WIDTH__ 64
935// AARCH64-OPENBSD:#define __INTPTR_FMTd__ "ld"
936// AARCH64-OPENBSD:#define __INTPTR_FMTi__ "li"
937// AARCH64-OPENBSD:#define __INTPTR_MAX__ 9223372036854775807L
938// AARCH64-OPENBSD:#define __INTPTR_TYPE__ long int
939// AARCH64-OPENBSD:#define __INTPTR_WIDTH__ 64
940// AARCH64-OPENBSD:#define __INT_FAST16_FMTd__ "hd"
941// AARCH64-OPENBSD:#define __INT_FAST16_FMTi__ "hi"
942// AARCH64-OPENBSD:#define __INT_FAST16_MAX__ 32767
943// AARCH64-OPENBSD:#define __INT_FAST16_TYPE__ short
944// AARCH64-OPENBSD:#define __INT_FAST32_FMTd__ "d"
945// AARCH64-OPENBSD:#define __INT_FAST32_FMTi__ "i"
946// AARCH64-OPENBSD:#define __INT_FAST32_MAX__ 2147483647
947// AARCH64-OPENBSD:#define __INT_FAST32_TYPE__ int
948// AARCH64-OPENBSD:#define __INT_FAST64_FMTd__ "ld"
949// AARCH64-OPENBSD:#define __INT_FAST64_FMTi__ "li"
950// AARCH64-OPENBSD:#define __INT_FAST64_MAX__ 9223372036854775807L
951// AARCH64-OPENBSD:#define __INT_FAST64_TYPE__ long int
952// AARCH64-OPENBSD:#define __INT_FAST8_FMTd__ "hhd"
953// AARCH64-OPENBSD:#define __INT_FAST8_FMTi__ "hhi"
954// AARCH64-OPENBSD:#define __INT_FAST8_MAX__ 127
955// AARCH64-OPENBSD:#define __INT_FAST8_TYPE__ signed char
956// AARCH64-OPENBSD:#define __INT_LEAST16_FMTd__ "hd"
957// AARCH64-OPENBSD:#define __INT_LEAST16_FMTi__ "hi"
958// AARCH64-OPENBSD:#define __INT_LEAST16_MAX__ 32767
959// AARCH64-OPENBSD:#define __INT_LEAST16_TYPE__ short
960// AARCH64-OPENBSD:#define __INT_LEAST32_FMTd__ "d"
961// AARCH64-OPENBSD:#define __INT_LEAST32_FMTi__ "i"
962// AARCH64-OPENBSD:#define __INT_LEAST32_MAX__ 2147483647
Brad Smith76e6c982017-07-30 20:33:06 +0000963// AARCH64-OPENBSD:#define __INT_LEAST32_TYPE__ int
Brad Smith9aa2bf22017-02-21 23:13:09 +0000964// AARCH64-OPENBSD:#define __INT_LEAST64_FMTd__ "ld"
965// AARCH64-OPENBSD:#define __INT_LEAST64_FMTi__ "li"
966// AARCH64-OPENBSD:#define __INT_LEAST64_MAX__ 9223372036854775807L
967// AARCH64-OPENBSD:#define __INT_LEAST64_TYPE__ long int
968// AARCH64-OPENBSD:#define __INT_LEAST8_FMTd__ "hhd"
969// AARCH64-OPENBSD:#define __INT_LEAST8_FMTi__ "hhi"
970// AARCH64-OPENBSD:#define __INT_LEAST8_MAX__ 127
971// AARCH64-OPENBSD:#define __INT_LEAST8_TYPE__ signed char
972// AARCH64-OPENBSD:#define __INT_MAX__ 2147483647
973// AARCH64-OPENBSD:#define __LDBL_DENORM_MIN__ 6.47517511943802511092443895822764655e-4966L
974// AARCH64-OPENBSD:#define __LDBL_DIG__ 33
975// AARCH64-OPENBSD:#define __LDBL_EPSILON__ 1.92592994438723585305597794258492732e-34L
976// AARCH64-OPENBSD:#define __LDBL_HAS_DENORM__ 1
977// AARCH64-OPENBSD:#define __LDBL_HAS_INFINITY__ 1
978// AARCH64-OPENBSD:#define __LDBL_HAS_QUIET_NAN__ 1
979// AARCH64-OPENBSD:#define __LDBL_MANT_DIG__ 113
980// AARCH64-OPENBSD:#define __LDBL_MAX_10_EXP__ 4932
981// AARCH64-OPENBSD:#define __LDBL_MAX_EXP__ 16384
982// AARCH64-OPENBSD:#define __LDBL_MAX__ 1.18973149535723176508575932662800702e+4932L
983// AARCH64-OPENBSD:#define __LDBL_MIN_10_EXP__ (-4931)
984// AARCH64-OPENBSD:#define __LDBL_MIN_EXP__ (-16381)
985// AARCH64-OPENBSD:#define __LDBL_MIN__ 3.36210314311209350626267781732175260e-4932L
986// AARCH64-OPENBSD:#define __LITTLE_ENDIAN__ 1
987// AARCH64-OPENBSD:#define __LONG_LONG_MAX__ 9223372036854775807LL
988// AARCH64-OPENBSD:#define __LONG_MAX__ 9223372036854775807L
989// AARCH64-OPENBSD:#define __LP64__ 1
990// AARCH64-OPENBSD:#define __OpenBSD__ 1
991// AARCH64-OPENBSD:#define __POINTER_WIDTH__ 64
992// AARCH64-OPENBSD:#define __PTRDIFF_TYPE__ long int
993// AARCH64-OPENBSD:#define __PTRDIFF_WIDTH__ 64
994// AARCH64-OPENBSD:#define __SCHAR_MAX__ 127
995// AARCH64-OPENBSD:#define __SHRT_MAX__ 32767
996// AARCH64-OPENBSD:#define __SIG_ATOMIC_MAX__ 2147483647
997// AARCH64-OPENBSD:#define __SIG_ATOMIC_WIDTH__ 32
998// AARCH64-OPENBSD:#define __SIZEOF_DOUBLE__ 8
999// AARCH64-OPENBSD:#define __SIZEOF_FLOAT__ 4
1000// AARCH64-OPENBSD:#define __SIZEOF_INT__ 4
1001// AARCH64-OPENBSD:#define __SIZEOF_LONG_DOUBLE__ 16
1002// AARCH64-OPENBSD:#define __SIZEOF_LONG_LONG__ 8
1003// AARCH64-OPENBSD:#define __SIZEOF_LONG__ 8
1004// AARCH64-OPENBSD:#define __SIZEOF_POINTER__ 8
1005// AARCH64-OPENBSD:#define __SIZEOF_PTRDIFF_T__ 8
1006// AARCH64-OPENBSD:#define __SIZEOF_SHORT__ 2
1007// AARCH64-OPENBSD:#define __SIZEOF_SIZE_T__ 8
1008// AARCH64-OPENBSD:#define __SIZEOF_WCHAR_T__ 4
1009// AARCH64-OPENBSD:#define __SIZEOF_WINT_T__ 4
1010// AARCH64-OPENBSD:#define __SIZE_MAX__ 18446744073709551615UL
1011// AARCH64-OPENBSD:#define __SIZE_TYPE__ long unsigned int
1012// AARCH64-OPENBSD:#define __SIZE_WIDTH__ 64
1013// AARCH64-OPENBSD:#define __UINT16_C_SUFFIX__
1014// AARCH64-OPENBSD:#define __UINT16_MAX__ 65535
1015// AARCH64-OPENBSD:#define __UINT16_TYPE__ unsigned short
1016// AARCH64-OPENBSD:#define __UINT32_C_SUFFIX__ U
1017// AARCH64-OPENBSD:#define __UINT32_MAX__ 4294967295U
1018// AARCH64-OPENBSD:#define __UINT32_TYPE__ unsigned int
1019// AARCH64-OPENBSD:#define __UINT64_C_SUFFIX__ ULL
1020// AARCH64-OPENBSD:#define __UINT64_MAX__ 18446744073709551615ULL
1021// AARCH64-OPENBSD:#define __UINT64_TYPE__ long long unsigned int
1022// AARCH64-OPENBSD:#define __UINT8_C_SUFFIX__
1023// AARCH64-OPENBSD:#define __UINT8_MAX__ 255
1024// AARCH64-OPENBSD:#define __UINT8_TYPE__ unsigned char
1025// AARCH64-OPENBSD:#define __UINTMAX_C_SUFFIX__ ULL
1026// AARCH64-OPENBSD:#define __UINTMAX_MAX__ 18446744073709551615ULL
1027// AARCH64-OPENBSD:#define __UINTMAX_TYPE__ long long unsigned int
1028// AARCH64-OPENBSD:#define __UINTMAX_WIDTH__ 64
1029// AARCH64-OPENBSD:#define __UINTPTR_MAX__ 18446744073709551615UL
1030// AARCH64-OPENBSD:#define __UINTPTR_TYPE__ long unsigned int
1031// AARCH64-OPENBSD:#define __UINTPTR_WIDTH__ 64
1032// AARCH64-OPENBSD:#define __UINT_FAST16_MAX__ 65535
1033// AARCH64-OPENBSD:#define __UINT_FAST16_TYPE__ unsigned short
1034// AARCH64-OPENBSD:#define __UINT_FAST32_MAX__ 4294967295U
1035// AARCH64-OPENBSD:#define __UINT_FAST32_TYPE__ unsigned int
1036// AARCH64-OPENBSD:#define __UINT_FAST64_MAX__ 18446744073709551615UL
1037// AARCH64-OPENBSD:#define __UINT_FAST64_TYPE__ long unsigned int
1038// AARCH64-OPENBSD:#define __UINT_FAST8_MAX__ 255
1039// AARCH64-OPENBSD:#define __UINT_FAST8_TYPE__ unsigned char
1040// AARCH64-OPENBSD:#define __UINT_LEAST16_MAX__ 65535
1041// AARCH64-OPENBSD:#define __UINT_LEAST16_TYPE__ unsigned short
1042// AARCH64-OPENBSD:#define __UINT_LEAST32_MAX__ 4294967295U
1043// AARCH64-OPENBSD:#define __UINT_LEAST32_TYPE__ unsigned int
1044// AARCH64-OPENBSD:#define __UINT_LEAST64_MAX__ 18446744073709551615UL
1045// AARCH64-OPENBSD:#define __UINT_LEAST64_TYPE__ long unsigned int
1046// AARCH64-OPENBSD:#define __UINT_LEAST8_MAX__ 255
1047// AARCH64-OPENBSD:#define __UINT_LEAST8_TYPE__ unsigned char
1048// AARCH64-OPENBSD:#define __USER_LABEL_PREFIX__
1049// AARCH64-OPENBSD:#define __WCHAR_MAX__ 2147483647
1050// AARCH64-OPENBSD:#define __WCHAR_TYPE__ int
1051// AARCH64-OPENBSD:#define __WCHAR_WIDTH__ 32
1052// AARCH64-OPENBSD:#define __WINT_TYPE__ int
1053// AARCH64-OPENBSD:#define __WINT_WIDTH__ 32
1054// AARCH64-OPENBSD:#define __aarch64__ 1
1055//
James Y Knightc97efa42016-02-11 16:51:29 +00001056// 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 +00001057//
1058// AARCH64-FREEBSD:#define _LP64 1
1059// AARCH64-FREEBSD-NOT:#define __AARCH64EB__ 1
1060// AARCH64-FREEBSD:#define __AARCH64EL__ 1
1061// AARCH64-FREEBSD-NOT:#define __AARCH_BIG_ENDIAN 1
1062// AARCH64-FREEBSD:#define __ARM_64BIT_STATE 1
1063// AARCH64-FREEBSD:#define __ARM_ARCH 8
1064// AARCH64-FREEBSD:#define __ARM_ARCH_ISA_A64 1
1065// AARCH64-FREEBSD-NOT:#define __ARM_BIG_ENDIAN 1
Tim Northovera6a19f12015-02-06 01:25:07 +00001066// AARCH64-FREEBSD:#define __BIGGEST_ALIGNMENT__ 16
Ed Maste6a9eda52014-11-13 16:55:42 +00001067// AARCH64-FREEBSD:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
1068// AARCH64-FREEBSD:#define __CHAR16_TYPE__ unsigned short
1069// AARCH64-FREEBSD:#define __CHAR32_TYPE__ unsigned int
1070// AARCH64-FREEBSD:#define __CHAR_BIT__ 8
1071// AARCH64-FREEBSD:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
1072// AARCH64-FREEBSD:#define __DBL_DIG__ 15
1073// AARCH64-FREEBSD:#define __DBL_EPSILON__ 2.2204460492503131e-16
1074// AARCH64-FREEBSD:#define __DBL_HAS_DENORM__ 1
1075// AARCH64-FREEBSD:#define __DBL_HAS_INFINITY__ 1
1076// AARCH64-FREEBSD:#define __DBL_HAS_QUIET_NAN__ 1
1077// AARCH64-FREEBSD:#define __DBL_MANT_DIG__ 53
1078// AARCH64-FREEBSD:#define __DBL_MAX_10_EXP__ 308
1079// AARCH64-FREEBSD:#define __DBL_MAX_EXP__ 1024
1080// AARCH64-FREEBSD:#define __DBL_MAX__ 1.7976931348623157e+308
1081// AARCH64-FREEBSD:#define __DBL_MIN_10_EXP__ (-307)
1082// AARCH64-FREEBSD:#define __DBL_MIN_EXP__ (-1021)
1083// AARCH64-FREEBSD:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00001084// AARCH64-FREEBSD:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Ed Maste6a9eda52014-11-13 16:55:42 +00001085// AARCH64-FREEBSD:#define __ELF__ 1
1086// AARCH64-FREEBSD:#define __FLT_DENORM_MIN__ 1.40129846e-45F
1087// AARCH64-FREEBSD:#define __FLT_DIG__ 6
1088// AARCH64-FREEBSD:#define __FLT_EPSILON__ 1.19209290e-7F
1089// AARCH64-FREEBSD:#define __FLT_EVAL_METHOD__ 0
1090// AARCH64-FREEBSD:#define __FLT_HAS_DENORM__ 1
1091// AARCH64-FREEBSD:#define __FLT_HAS_INFINITY__ 1
1092// AARCH64-FREEBSD:#define __FLT_HAS_QUIET_NAN__ 1
1093// AARCH64-FREEBSD:#define __FLT_MANT_DIG__ 24
1094// AARCH64-FREEBSD:#define __FLT_MAX_10_EXP__ 38
1095// AARCH64-FREEBSD:#define __FLT_MAX_EXP__ 128
1096// AARCH64-FREEBSD:#define __FLT_MAX__ 3.40282347e+38F
1097// AARCH64-FREEBSD:#define __FLT_MIN_10_EXP__ (-37)
1098// AARCH64-FREEBSD:#define __FLT_MIN_EXP__ (-125)
1099// AARCH64-FREEBSD:#define __FLT_MIN__ 1.17549435e-38F
1100// AARCH64-FREEBSD:#define __FLT_RADIX__ 2
1101// AARCH64-FREEBSD:#define __FreeBSD__ 11
James Y Knightc97efa42016-02-11 16:51:29 +00001102// AARCH64-FREEBSD:#define __INT16_C_SUFFIX__
Ed Maste6a9eda52014-11-13 16:55:42 +00001103// AARCH64-FREEBSD:#define __INT16_FMTd__ "hd"
1104// AARCH64-FREEBSD:#define __INT16_FMTi__ "hi"
1105// AARCH64-FREEBSD:#define __INT16_MAX__ 32767
1106// AARCH64-FREEBSD:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +00001107// AARCH64-FREEBSD:#define __INT32_C_SUFFIX__
Ed Maste6a9eda52014-11-13 16:55:42 +00001108// AARCH64-FREEBSD:#define __INT32_FMTd__ "d"
1109// AARCH64-FREEBSD:#define __INT32_FMTi__ "i"
1110// AARCH64-FREEBSD:#define __INT32_MAX__ 2147483647
1111// AARCH64-FREEBSD:#define __INT32_TYPE__ int
1112// AARCH64-FREEBSD:#define __INT64_C_SUFFIX__ L
1113// AARCH64-FREEBSD:#define __INT64_FMTd__ "ld"
1114// AARCH64-FREEBSD:#define __INT64_FMTi__ "li"
1115// AARCH64-FREEBSD:#define __INT64_MAX__ 9223372036854775807L
1116// AARCH64-FREEBSD:#define __INT64_TYPE__ long int
James Y Knightc97efa42016-02-11 16:51:29 +00001117// AARCH64-FREEBSD:#define __INT8_C_SUFFIX__
Ed Maste6a9eda52014-11-13 16:55:42 +00001118// AARCH64-FREEBSD:#define __INT8_FMTd__ "hhd"
1119// AARCH64-FREEBSD:#define __INT8_FMTi__ "hhi"
1120// AARCH64-FREEBSD:#define __INT8_MAX__ 127
1121// AARCH64-FREEBSD:#define __INT8_TYPE__ signed char
1122// AARCH64-FREEBSD:#define __INTMAX_C_SUFFIX__ L
1123// AARCH64-FREEBSD:#define __INTMAX_FMTd__ "ld"
1124// AARCH64-FREEBSD:#define __INTMAX_FMTi__ "li"
1125// AARCH64-FREEBSD:#define __INTMAX_MAX__ 9223372036854775807L
1126// AARCH64-FREEBSD:#define __INTMAX_TYPE__ long int
1127// AARCH64-FREEBSD:#define __INTMAX_WIDTH__ 64
1128// AARCH64-FREEBSD:#define __INTPTR_FMTd__ "ld"
1129// AARCH64-FREEBSD:#define __INTPTR_FMTi__ "li"
1130// AARCH64-FREEBSD:#define __INTPTR_MAX__ 9223372036854775807L
1131// AARCH64-FREEBSD:#define __INTPTR_TYPE__ long int
1132// AARCH64-FREEBSD:#define __INTPTR_WIDTH__ 64
1133// AARCH64-FREEBSD:#define __INT_FAST16_FMTd__ "hd"
1134// AARCH64-FREEBSD:#define __INT_FAST16_FMTi__ "hi"
1135// AARCH64-FREEBSD:#define __INT_FAST16_MAX__ 32767
1136// AARCH64-FREEBSD:#define __INT_FAST16_TYPE__ short
1137// AARCH64-FREEBSD:#define __INT_FAST32_FMTd__ "d"
1138// AARCH64-FREEBSD:#define __INT_FAST32_FMTi__ "i"
1139// AARCH64-FREEBSD:#define __INT_FAST32_MAX__ 2147483647
1140// AARCH64-FREEBSD:#define __INT_FAST32_TYPE__ int
1141// AARCH64-FREEBSD:#define __INT_FAST64_FMTd__ "ld"
1142// AARCH64-FREEBSD:#define __INT_FAST64_FMTi__ "li"
1143// AARCH64-FREEBSD:#define __INT_FAST64_MAX__ 9223372036854775807L
1144// AARCH64-FREEBSD:#define __INT_FAST64_TYPE__ long int
1145// AARCH64-FREEBSD:#define __INT_FAST8_FMTd__ "hhd"
1146// AARCH64-FREEBSD:#define __INT_FAST8_FMTi__ "hhi"
1147// AARCH64-FREEBSD:#define __INT_FAST8_MAX__ 127
1148// AARCH64-FREEBSD:#define __INT_FAST8_TYPE__ signed char
1149// AARCH64-FREEBSD:#define __INT_LEAST16_FMTd__ "hd"
1150// AARCH64-FREEBSD:#define __INT_LEAST16_FMTi__ "hi"
1151// AARCH64-FREEBSD:#define __INT_LEAST16_MAX__ 32767
1152// AARCH64-FREEBSD:#define __INT_LEAST16_TYPE__ short
1153// AARCH64-FREEBSD:#define __INT_LEAST32_FMTd__ "d"
1154// AARCH64-FREEBSD:#define __INT_LEAST32_FMTi__ "i"
1155// AARCH64-FREEBSD:#define __INT_LEAST32_MAX__ 2147483647
1156// AARCH64-FREEBSD:#define __INT_LEAST32_TYPE__ int
1157// AARCH64-FREEBSD:#define __INT_LEAST64_FMTd__ "ld"
1158// AARCH64-FREEBSD:#define __INT_LEAST64_FMTi__ "li"
1159// AARCH64-FREEBSD:#define __INT_LEAST64_MAX__ 9223372036854775807L
1160// AARCH64-FREEBSD:#define __INT_LEAST64_TYPE__ long int
1161// AARCH64-FREEBSD:#define __INT_LEAST8_FMTd__ "hhd"
1162// AARCH64-FREEBSD:#define __INT_LEAST8_FMTi__ "hhi"
1163// AARCH64-FREEBSD:#define __INT_LEAST8_MAX__ 127
1164// AARCH64-FREEBSD:#define __INT_LEAST8_TYPE__ signed char
1165// AARCH64-FREEBSD:#define __INT_MAX__ 2147483647
1166// AARCH64-FREEBSD:#define __LDBL_DENORM_MIN__ 6.47517511943802511092443895822764655e-4966L
1167// AARCH64-FREEBSD:#define __LDBL_DIG__ 33
1168// AARCH64-FREEBSD:#define __LDBL_EPSILON__ 1.92592994438723585305597794258492732e-34L
1169// AARCH64-FREEBSD:#define __LDBL_HAS_DENORM__ 1
1170// AARCH64-FREEBSD:#define __LDBL_HAS_INFINITY__ 1
1171// AARCH64-FREEBSD:#define __LDBL_HAS_QUIET_NAN__ 1
1172// AARCH64-FREEBSD:#define __LDBL_MANT_DIG__ 113
1173// AARCH64-FREEBSD:#define __LDBL_MAX_10_EXP__ 4932
1174// AARCH64-FREEBSD:#define __LDBL_MAX_EXP__ 16384
1175// AARCH64-FREEBSD:#define __LDBL_MAX__ 1.18973149535723176508575932662800702e+4932L
1176// AARCH64-FREEBSD:#define __LDBL_MIN_10_EXP__ (-4931)
1177// AARCH64-FREEBSD:#define __LDBL_MIN_EXP__ (-16381)
1178// AARCH64-FREEBSD:#define __LDBL_MIN__ 3.36210314311209350626267781732175260e-4932L
1179// AARCH64-FREEBSD:#define __LITTLE_ENDIAN__ 1
1180// AARCH64-FREEBSD:#define __LONG_LONG_MAX__ 9223372036854775807LL
1181// AARCH64-FREEBSD:#define __LONG_MAX__ 9223372036854775807L
1182// AARCH64-FREEBSD:#define __LP64__ 1
1183// AARCH64-FREEBSD:#define __POINTER_WIDTH__ 64
1184// AARCH64-FREEBSD:#define __PTRDIFF_TYPE__ long int
1185// AARCH64-FREEBSD:#define __PTRDIFF_WIDTH__ 64
1186// AARCH64-FREEBSD:#define __SCHAR_MAX__ 127
1187// AARCH64-FREEBSD:#define __SHRT_MAX__ 32767
1188// AARCH64-FREEBSD:#define __SIG_ATOMIC_MAX__ 2147483647
1189// AARCH64-FREEBSD:#define __SIG_ATOMIC_WIDTH__ 32
1190// AARCH64-FREEBSD:#define __SIZEOF_DOUBLE__ 8
1191// AARCH64-FREEBSD:#define __SIZEOF_FLOAT__ 4
1192// AARCH64-FREEBSD:#define __SIZEOF_INT128__ 16
1193// AARCH64-FREEBSD:#define __SIZEOF_INT__ 4
1194// AARCH64-FREEBSD:#define __SIZEOF_LONG_DOUBLE__ 16
1195// AARCH64-FREEBSD:#define __SIZEOF_LONG_LONG__ 8
1196// AARCH64-FREEBSD:#define __SIZEOF_LONG__ 8
1197// AARCH64-FREEBSD:#define __SIZEOF_POINTER__ 8
1198// AARCH64-FREEBSD:#define __SIZEOF_PTRDIFF_T__ 8
1199// AARCH64-FREEBSD:#define __SIZEOF_SHORT__ 2
1200// AARCH64-FREEBSD:#define __SIZEOF_SIZE_T__ 8
1201// AARCH64-FREEBSD:#define __SIZEOF_WCHAR_T__ 4
1202// AARCH64-FREEBSD:#define __SIZEOF_WINT_T__ 4
1203// AARCH64-FREEBSD:#define __SIZE_MAX__ 18446744073709551615UL
1204// AARCH64-FREEBSD:#define __SIZE_TYPE__ long unsigned int
1205// AARCH64-FREEBSD:#define __SIZE_WIDTH__ 64
James Y Knightc97efa42016-02-11 16:51:29 +00001206// AARCH64-FREEBSD:#define __UINT16_C_SUFFIX__
Ed Maste6a9eda52014-11-13 16:55:42 +00001207// AARCH64-FREEBSD:#define __UINT16_MAX__ 65535
1208// AARCH64-FREEBSD:#define __UINT16_TYPE__ unsigned short
1209// AARCH64-FREEBSD:#define __UINT32_C_SUFFIX__ U
1210// AARCH64-FREEBSD:#define __UINT32_MAX__ 4294967295U
1211// AARCH64-FREEBSD:#define __UINT32_TYPE__ unsigned int
1212// AARCH64-FREEBSD:#define __UINT64_C_SUFFIX__ UL
1213// AARCH64-FREEBSD:#define __UINT64_MAX__ 18446744073709551615UL
1214// AARCH64-FREEBSD:#define __UINT64_TYPE__ long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00001215// AARCH64-FREEBSD:#define __UINT8_C_SUFFIX__
Ed Maste6a9eda52014-11-13 16:55:42 +00001216// AARCH64-FREEBSD:#define __UINT8_MAX__ 255
1217// AARCH64-FREEBSD:#define __UINT8_TYPE__ unsigned char
1218// AARCH64-FREEBSD:#define __UINTMAX_C_SUFFIX__ UL
1219// AARCH64-FREEBSD:#define __UINTMAX_MAX__ 18446744073709551615UL
1220// AARCH64-FREEBSD:#define __UINTMAX_TYPE__ long unsigned int
1221// AARCH64-FREEBSD:#define __UINTMAX_WIDTH__ 64
1222// AARCH64-FREEBSD:#define __UINTPTR_MAX__ 18446744073709551615UL
1223// AARCH64-FREEBSD:#define __UINTPTR_TYPE__ long unsigned int
1224// AARCH64-FREEBSD:#define __UINTPTR_WIDTH__ 64
1225// AARCH64-FREEBSD:#define __UINT_FAST16_MAX__ 65535
1226// AARCH64-FREEBSD:#define __UINT_FAST16_TYPE__ unsigned short
1227// AARCH64-FREEBSD:#define __UINT_FAST32_MAX__ 4294967295U
1228// AARCH64-FREEBSD:#define __UINT_FAST32_TYPE__ unsigned int
1229// AARCH64-FREEBSD:#define __UINT_FAST64_MAX__ 18446744073709551615UL
1230// AARCH64-FREEBSD:#define __UINT_FAST64_TYPE__ long unsigned int
1231// AARCH64-FREEBSD:#define __UINT_FAST8_MAX__ 255
1232// AARCH64-FREEBSD:#define __UINT_FAST8_TYPE__ unsigned char
1233// AARCH64-FREEBSD:#define __UINT_LEAST16_MAX__ 65535
1234// AARCH64-FREEBSD:#define __UINT_LEAST16_TYPE__ unsigned short
1235// AARCH64-FREEBSD:#define __UINT_LEAST32_MAX__ 4294967295U
1236// AARCH64-FREEBSD:#define __UINT_LEAST32_TYPE__ unsigned int
1237// AARCH64-FREEBSD:#define __UINT_LEAST64_MAX__ 18446744073709551615UL
1238// AARCH64-FREEBSD:#define __UINT_LEAST64_TYPE__ long unsigned int
1239// AARCH64-FREEBSD:#define __UINT_LEAST8_MAX__ 255
1240// AARCH64-FREEBSD:#define __UINT_LEAST8_TYPE__ unsigned char
1241// AARCH64-FREEBSD:#define __USER_LABEL_PREFIX__
1242// AARCH64-FREEBSD:#define __WCHAR_MAX__ 4294967295U
1243// AARCH64-FREEBSD:#define __WCHAR_TYPE__ unsigned int
1244// AARCH64-FREEBSD:#define __WCHAR_UNSIGNED__ 1
1245// AARCH64-FREEBSD:#define __WCHAR_WIDTH__ 32
Ed Schouten1382a322017-12-05 09:13:18 +00001246// AARCH64-FREEBSD:#define __WINT_MAX__ 2147483647
Ed Maste6a9eda52014-11-13 16:55:42 +00001247// AARCH64-FREEBSD:#define __WINT_TYPE__ int
1248// AARCH64-FREEBSD:#define __WINT_WIDTH__ 32
1249// AARCH64-FREEBSD:#define __aarch64__ 1
Christian Pirker227f5ed2014-03-24 13:57:21 +00001250
James Y Knightc97efa42016-02-11 16:51:29 +00001251// 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 +00001252//
1253// AARCH64-DARWIN: #define _LP64 1
Martin Storsjo42927ca2017-07-31 20:40:48 +00001254// AARCH64-DARWIN-NOT: #define __AARCH64EB__ 1
Tim Northovera6a19f12015-02-06 01:25:07 +00001255// AARCH64-DARWIN: #define __AARCH64EL__ 1
Martin Storsjo42927ca2017-07-31 20:40:48 +00001256// AARCH64-DARWIN-NOT: #define __AARCH_BIG_ENDIAN 1
Tim Northovera6a19f12015-02-06 01:25:07 +00001257// AARCH64-DARWIN: #define __ARM_64BIT_STATE 1
1258// AARCH64-DARWIN: #define __ARM_ARCH 8
1259// AARCH64-DARWIN: #define __ARM_ARCH_ISA_A64 1
Martin Storsjo42927ca2017-07-31 20:40:48 +00001260// AARCH64-DARWIN-NOT: #define __ARM_BIG_ENDIAN 1
Tim Northovera6a19f12015-02-06 01:25:07 +00001261// AARCH64-DARWIN: #define __BIGGEST_ALIGNMENT__ 8
1262// AARCH64-DARWIN: #define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
1263// AARCH64-DARWIN: #define __CHAR16_TYPE__ unsigned short
1264// AARCH64-DARWIN: #define __CHAR32_TYPE__ unsigned int
1265// AARCH64-DARWIN: #define __CHAR_BIT__ 8
1266// AARCH64-DARWIN: #define __DBL_DENORM_MIN__ 4.9406564584124654e-324
1267// AARCH64-DARWIN: #define __DBL_DIG__ 15
1268// AARCH64-DARWIN: #define __DBL_EPSILON__ 2.2204460492503131e-16
1269// AARCH64-DARWIN: #define __DBL_HAS_DENORM__ 1
1270// AARCH64-DARWIN: #define __DBL_HAS_INFINITY__ 1
1271// AARCH64-DARWIN: #define __DBL_HAS_QUIET_NAN__ 1
1272// AARCH64-DARWIN: #define __DBL_MANT_DIG__ 53
1273// AARCH64-DARWIN: #define __DBL_MAX_10_EXP__ 308
1274// AARCH64-DARWIN: #define __DBL_MAX_EXP__ 1024
1275// AARCH64-DARWIN: #define __DBL_MAX__ 1.7976931348623157e+308
1276// AARCH64-DARWIN: #define __DBL_MIN_10_EXP__ (-307)
1277// AARCH64-DARWIN: #define __DBL_MIN_EXP__ (-1021)
1278// AARCH64-DARWIN: #define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00001279// AARCH64-DARWIN: #define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Tim Northovera6a19f12015-02-06 01:25:07 +00001280// AARCH64-DARWIN: #define __FLT_DENORM_MIN__ 1.40129846e-45F
1281// AARCH64-DARWIN: #define __FLT_DIG__ 6
1282// AARCH64-DARWIN: #define __FLT_EPSILON__ 1.19209290e-7F
1283// AARCH64-DARWIN: #define __FLT_EVAL_METHOD__ 0
1284// AARCH64-DARWIN: #define __FLT_HAS_DENORM__ 1
1285// AARCH64-DARWIN: #define __FLT_HAS_INFINITY__ 1
1286// AARCH64-DARWIN: #define __FLT_HAS_QUIET_NAN__ 1
1287// AARCH64-DARWIN: #define __FLT_MANT_DIG__ 24
1288// AARCH64-DARWIN: #define __FLT_MAX_10_EXP__ 38
1289// AARCH64-DARWIN: #define __FLT_MAX_EXP__ 128
1290// AARCH64-DARWIN: #define __FLT_MAX__ 3.40282347e+38F
1291// AARCH64-DARWIN: #define __FLT_MIN_10_EXP__ (-37)
1292// AARCH64-DARWIN: #define __FLT_MIN_EXP__ (-125)
1293// AARCH64-DARWIN: #define __FLT_MIN__ 1.17549435e-38F
1294// AARCH64-DARWIN: #define __FLT_RADIX__ 2
James Y Knightc97efa42016-02-11 16:51:29 +00001295// AARCH64-DARWIN: #define __INT16_C_SUFFIX__
Tim Northovera6a19f12015-02-06 01:25:07 +00001296// AARCH64-DARWIN: #define __INT16_FMTd__ "hd"
1297// AARCH64-DARWIN: #define __INT16_FMTi__ "hi"
1298// AARCH64-DARWIN: #define __INT16_MAX__ 32767
1299// AARCH64-DARWIN: #define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +00001300// AARCH64-DARWIN: #define __INT32_C_SUFFIX__
Tim Northovera6a19f12015-02-06 01:25:07 +00001301// AARCH64-DARWIN: #define __INT32_FMTd__ "d"
1302// AARCH64-DARWIN: #define __INT32_FMTi__ "i"
1303// AARCH64-DARWIN: #define __INT32_MAX__ 2147483647
1304// AARCH64-DARWIN: #define __INT32_TYPE__ int
James Y Knightc97efa42016-02-11 16:51:29 +00001305// AARCH64-DARWIN: #define __INT64_C_SUFFIX__ LL
Tim Northovera6a19f12015-02-06 01:25:07 +00001306// AARCH64-DARWIN: #define __INT64_FMTd__ "lld"
1307// AARCH64-DARWIN: #define __INT64_FMTi__ "lli"
James Y Knightc97efa42016-02-11 16:51:29 +00001308// AARCH64-DARWIN: #define __INT64_MAX__ 9223372036854775807LL
Tim Northovera6a19f12015-02-06 01:25:07 +00001309// AARCH64-DARWIN: #define __INT64_TYPE__ long long int
James Y Knightc97efa42016-02-11 16:51:29 +00001310// AARCH64-DARWIN: #define __INT8_C_SUFFIX__
Tim Northovera6a19f12015-02-06 01:25:07 +00001311// AARCH64-DARWIN: #define __INT8_FMTd__ "hhd"
1312// AARCH64-DARWIN: #define __INT8_FMTi__ "hhi"
1313// AARCH64-DARWIN: #define __INT8_MAX__ 127
1314// AARCH64-DARWIN: #define __INT8_TYPE__ signed char
1315// AARCH64-DARWIN: #define __INTMAX_C_SUFFIX__ L
1316// AARCH64-DARWIN: #define __INTMAX_FMTd__ "ld"
1317// AARCH64-DARWIN: #define __INTMAX_FMTi__ "li"
1318// AARCH64-DARWIN: #define __INTMAX_MAX__ 9223372036854775807L
1319// AARCH64-DARWIN: #define __INTMAX_TYPE__ long int
1320// AARCH64-DARWIN: #define __INTMAX_WIDTH__ 64
1321// AARCH64-DARWIN: #define __INTPTR_FMTd__ "ld"
1322// AARCH64-DARWIN: #define __INTPTR_FMTi__ "li"
1323// AARCH64-DARWIN: #define __INTPTR_MAX__ 9223372036854775807L
1324// AARCH64-DARWIN: #define __INTPTR_TYPE__ long int
1325// AARCH64-DARWIN: #define __INTPTR_WIDTH__ 64
1326// AARCH64-DARWIN: #define __INT_FAST16_FMTd__ "hd"
1327// AARCH64-DARWIN: #define __INT_FAST16_FMTi__ "hi"
1328// AARCH64-DARWIN: #define __INT_FAST16_MAX__ 32767
1329// AARCH64-DARWIN: #define __INT_FAST16_TYPE__ short
1330// AARCH64-DARWIN: #define __INT_FAST32_FMTd__ "d"
1331// AARCH64-DARWIN: #define __INT_FAST32_FMTi__ "i"
1332// AARCH64-DARWIN: #define __INT_FAST32_MAX__ 2147483647
1333// AARCH64-DARWIN: #define __INT_FAST32_TYPE__ int
1334// AARCH64-DARWIN: #define __INT_FAST64_FMTd__ "ld"
1335// AARCH64-DARWIN: #define __INT_FAST64_FMTi__ "li"
1336// AARCH64-DARWIN: #define __INT_FAST64_MAX__ 9223372036854775807L
1337// AARCH64-DARWIN: #define __INT_FAST64_TYPE__ long int
1338// AARCH64-DARWIN: #define __INT_FAST8_FMTd__ "hhd"
1339// AARCH64-DARWIN: #define __INT_FAST8_FMTi__ "hhi"
1340// AARCH64-DARWIN: #define __INT_FAST8_MAX__ 127
1341// AARCH64-DARWIN: #define __INT_FAST8_TYPE__ signed char
1342// AARCH64-DARWIN: #define __INT_LEAST16_FMTd__ "hd"
1343// AARCH64-DARWIN: #define __INT_LEAST16_FMTi__ "hi"
1344// AARCH64-DARWIN: #define __INT_LEAST16_MAX__ 32767
1345// AARCH64-DARWIN: #define __INT_LEAST16_TYPE__ short
1346// AARCH64-DARWIN: #define __INT_LEAST32_FMTd__ "d"
1347// AARCH64-DARWIN: #define __INT_LEAST32_FMTi__ "i"
1348// AARCH64-DARWIN: #define __INT_LEAST32_MAX__ 2147483647
1349// AARCH64-DARWIN: #define __INT_LEAST32_TYPE__ int
1350// AARCH64-DARWIN: #define __INT_LEAST64_FMTd__ "ld"
1351// AARCH64-DARWIN: #define __INT_LEAST64_FMTi__ "li"
1352// AARCH64-DARWIN: #define __INT_LEAST64_MAX__ 9223372036854775807L
1353// AARCH64-DARWIN: #define __INT_LEAST64_TYPE__ long int
1354// AARCH64-DARWIN: #define __INT_LEAST8_FMTd__ "hhd"
1355// AARCH64-DARWIN: #define __INT_LEAST8_FMTi__ "hhi"
1356// AARCH64-DARWIN: #define __INT_LEAST8_MAX__ 127
1357// AARCH64-DARWIN: #define __INT_LEAST8_TYPE__ signed char
1358// AARCH64-DARWIN: #define __INT_MAX__ 2147483647
1359// AARCH64-DARWIN: #define __LDBL_DENORM_MIN__ 4.9406564584124654e-324L
1360// AARCH64-DARWIN: #define __LDBL_DIG__ 15
1361// AARCH64-DARWIN: #define __LDBL_EPSILON__ 2.2204460492503131e-16L
1362// AARCH64-DARWIN: #define __LDBL_HAS_DENORM__ 1
1363// AARCH64-DARWIN: #define __LDBL_HAS_INFINITY__ 1
1364// AARCH64-DARWIN: #define __LDBL_HAS_QUIET_NAN__ 1
1365// AARCH64-DARWIN: #define __LDBL_MANT_DIG__ 53
1366// AARCH64-DARWIN: #define __LDBL_MAX_10_EXP__ 308
1367// AARCH64-DARWIN: #define __LDBL_MAX_EXP__ 1024
1368// AARCH64-DARWIN: #define __LDBL_MAX__ 1.7976931348623157e+308L
1369// AARCH64-DARWIN: #define __LDBL_MIN_10_EXP__ (-307)
1370// AARCH64-DARWIN: #define __LDBL_MIN_EXP__ (-1021)
1371// AARCH64-DARWIN: #define __LDBL_MIN__ 2.2250738585072014e-308L
1372// AARCH64-DARWIN: #define __LONG_LONG_MAX__ 9223372036854775807LL
1373// AARCH64-DARWIN: #define __LONG_MAX__ 9223372036854775807L
1374// AARCH64-DARWIN: #define __LP64__ 1
1375// AARCH64-DARWIN: #define __POINTER_WIDTH__ 64
1376// AARCH64-DARWIN: #define __PTRDIFF_TYPE__ long int
1377// AARCH64-DARWIN: #define __PTRDIFF_WIDTH__ 64
1378// AARCH64-DARWIN: #define __SCHAR_MAX__ 127
1379// AARCH64-DARWIN: #define __SHRT_MAX__ 32767
1380// AARCH64-DARWIN: #define __SIG_ATOMIC_MAX__ 2147483647
1381// AARCH64-DARWIN: #define __SIG_ATOMIC_WIDTH__ 32
1382// AARCH64-DARWIN: #define __SIZEOF_DOUBLE__ 8
1383// AARCH64-DARWIN: #define __SIZEOF_FLOAT__ 4
1384// AARCH64-DARWIN: #define __SIZEOF_INT128__ 16
1385// AARCH64-DARWIN: #define __SIZEOF_INT__ 4
1386// AARCH64-DARWIN: #define __SIZEOF_LONG_DOUBLE__ 8
1387// AARCH64-DARWIN: #define __SIZEOF_LONG_LONG__ 8
1388// AARCH64-DARWIN: #define __SIZEOF_LONG__ 8
1389// AARCH64-DARWIN: #define __SIZEOF_POINTER__ 8
1390// AARCH64-DARWIN: #define __SIZEOF_PTRDIFF_T__ 8
1391// AARCH64-DARWIN: #define __SIZEOF_SHORT__ 2
1392// AARCH64-DARWIN: #define __SIZEOF_SIZE_T__ 8
1393// AARCH64-DARWIN: #define __SIZEOF_WCHAR_T__ 4
1394// AARCH64-DARWIN: #define __SIZEOF_WINT_T__ 4
1395// AARCH64-DARWIN: #define __SIZE_MAX__ 18446744073709551615UL
1396// AARCH64-DARWIN: #define __SIZE_TYPE__ long unsigned int
1397// AARCH64-DARWIN: #define __SIZE_WIDTH__ 64
James Y Knightc97efa42016-02-11 16:51:29 +00001398// AARCH64-DARWIN: #define __UINT16_C_SUFFIX__
Tim Northovera6a19f12015-02-06 01:25:07 +00001399// AARCH64-DARWIN: #define __UINT16_MAX__ 65535
1400// AARCH64-DARWIN: #define __UINT16_TYPE__ unsigned short
1401// AARCH64-DARWIN: #define __UINT32_C_SUFFIX__ U
1402// AARCH64-DARWIN: #define __UINT32_MAX__ 4294967295U
1403// AARCH64-DARWIN: #define __UINT32_TYPE__ unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00001404// AARCH64-DARWIN: #define __UINT64_C_SUFFIX__ ULL
1405// AARCH64-DARWIN: #define __UINT64_MAX__ 18446744073709551615ULL
Tim Northovera6a19f12015-02-06 01:25:07 +00001406// AARCH64-DARWIN: #define __UINT64_TYPE__ long long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00001407// AARCH64-DARWIN: #define __UINT8_C_SUFFIX__
Tim Northovera6a19f12015-02-06 01:25:07 +00001408// AARCH64-DARWIN: #define __UINT8_MAX__ 255
1409// AARCH64-DARWIN: #define __UINT8_TYPE__ unsigned char
1410// AARCH64-DARWIN: #define __UINTMAX_C_SUFFIX__ UL
1411// AARCH64-DARWIN: #define __UINTMAX_MAX__ 18446744073709551615UL
1412// AARCH64-DARWIN: #define __UINTMAX_TYPE__ long unsigned int
1413// AARCH64-DARWIN: #define __UINTMAX_WIDTH__ 64
1414// AARCH64-DARWIN: #define __UINTPTR_MAX__ 18446744073709551615UL
1415// AARCH64-DARWIN: #define __UINTPTR_TYPE__ long unsigned int
1416// AARCH64-DARWIN: #define __UINTPTR_WIDTH__ 64
1417// AARCH64-DARWIN: #define __UINT_FAST16_MAX__ 65535
1418// AARCH64-DARWIN: #define __UINT_FAST16_TYPE__ unsigned short
1419// AARCH64-DARWIN: #define __UINT_FAST32_MAX__ 4294967295U
1420// AARCH64-DARWIN: #define __UINT_FAST32_TYPE__ unsigned int
1421// AARCH64-DARWIN: #define __UINT_FAST64_MAX__ 18446744073709551615UL
1422// AARCH64-DARWIN: #define __UINT_FAST64_TYPE__ long unsigned int
1423// AARCH64-DARWIN: #define __UINT_FAST8_MAX__ 255
1424// AARCH64-DARWIN: #define __UINT_FAST8_TYPE__ unsigned char
1425// AARCH64-DARWIN: #define __UINT_LEAST16_MAX__ 65535
1426// AARCH64-DARWIN: #define __UINT_LEAST16_TYPE__ unsigned short
1427// AARCH64-DARWIN: #define __UINT_LEAST32_MAX__ 4294967295U
1428// AARCH64-DARWIN: #define __UINT_LEAST32_TYPE__ unsigned int
1429// AARCH64-DARWIN: #define __UINT_LEAST64_MAX__ 18446744073709551615UL
1430// AARCH64-DARWIN: #define __UINT_LEAST64_TYPE__ long unsigned int
1431// AARCH64-DARWIN: #define __UINT_LEAST8_MAX__ 255
1432// AARCH64-DARWIN: #define __UINT_LEAST8_TYPE__ unsigned char
1433// AARCH64-DARWIN: #define __USER_LABEL_PREFIX__ _
1434// AARCH64-DARWIN: #define __WCHAR_MAX__ 2147483647
1435// AARCH64-DARWIN: #define __WCHAR_TYPE__ int
1436// AARCH64-DARWIN-NOT: #define __WCHAR_UNSIGNED__
1437// AARCH64-DARWIN: #define __WCHAR_WIDTH__ 32
1438// AARCH64-DARWIN: #define __WINT_TYPE__ int
1439// AARCH64-DARWIN: #define __WINT_WIDTH__ 32
1440// AARCH64-DARWIN: #define __aarch64__ 1
1441
Martell Malonedca72fc2017-11-21 08:09:59 +00001442// RUN: %clang_cc1 -E -dM -ffreestanding -triple=thumbv7-windows-msvc < /dev/null | FileCheck -match-full-lines -check-prefix ARM-MSVC %s
1443//
1444// ARM-MSVC: #define _M_ARM_NT 1
1445// ARM-MSVC: #define _WIN32 1
Martell Malonec950c652017-11-29 07:25:12 +00001446// ARM-MSVC-NOT:#define __ARM_DWARF_EH__ 1
Martell Malonedca72fc2017-11-21 08:09:59 +00001447
Martin Storsjo588a3e52017-07-31 20:40:53 +00001448// RUN: %clang_cc1 -E -dM -ffreestanding -triple=aarch64-windows-msvc < /dev/null | FileCheck -match-full-lines -check-prefix AARCH64-MSVC %s
1449//
1450// AARCH64-MSVC: #define _INTEGRAL_MAX_BITS 64
1451// AARCH64-MSVC-NOT: #define _LP64 1
1452// AARCH64-MSVC: #define _M_ARM64 1
1453// AARCH64-MSVC: #define _WIN32 1
1454// AARCH64-MSVC: #define _WIN64 1
1455// AARCH64-MSVC: #define __AARCH64EL__ 1
1456// AARCH64-MSVC: #define __ARM_64BIT_STATE 1
1457// AARCH64-MSVC: #define __ARM_ACLE 200
1458// AARCH64-MSVC: #define __ARM_ALIGN_MAX_STACK_PWR 4
1459// AARCH64-MSVC: #define __ARM_ARCH 8
1460// AARCH64-MSVC: #define __ARM_ARCH_ISA_A64 1
1461// AARCH64-MSVC: #define __ARM_ARCH_PROFILE 'A'
1462// AARCH64-MSVC: #define __ARM_FEATURE_CLZ 1
1463// AARCH64-MSVC: #define __ARM_FEATURE_DIRECTED_ROUNDING 1
1464// AARCH64-MSVC: #define __ARM_FEATURE_DIV 1
1465// AARCH64-MSVC: #define __ARM_FEATURE_FMA 1
1466// AARCH64-MSVC: #define __ARM_FEATURE_IDIV 1
1467// AARCH64-MSVC: #define __ARM_FEATURE_LDREX 0xF
1468// AARCH64-MSVC: #define __ARM_FEATURE_NUMERIC_MAXMIN 1
1469// AARCH64-MSVC: #define __ARM_FEATURE_UNALIGNED 1
1470// AARCH64-MSVC: #define __ARM_FP 0xE
1471// AARCH64-MSVC: #define __ARM_FP16_ARGS 1
1472// AARCH64-MSVC: #define __ARM_FP16_FORMAT_IEEE 1
1473// AARCH64-MSVC: #define __ARM_PCS_AAPCS64 1
1474// AARCH64-MSVC: #define __ARM_SIZEOF_MINIMAL_ENUM 4
1475// AARCH64-MSVC: #define __ARM_SIZEOF_WCHAR_T 4
1476// AARCH64-MSVC: #define __BIGGEST_ALIGNMENT__ 16
1477// AARCH64-MSVC: #define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
1478// AARCH64-MSVC: #define __CHAR16_TYPE__ unsigned short
1479// AARCH64-MSVC: #define __CHAR32_TYPE__ unsigned int
1480// AARCH64-MSVC: #define __CHAR_BIT__ 8
1481// AARCH64-MSVC: #define __CONSTANT_CFSTRINGS__ 1
1482// AARCH64-MSVC: #define __DBL_DECIMAL_DIG__ 17
1483// AARCH64-MSVC: #define __DBL_DENORM_MIN__ 4.9406564584124654e-324
1484// AARCH64-MSVC: #define __DBL_DIG__ 15
1485// AARCH64-MSVC: #define __DBL_EPSILON__ 2.2204460492503131e-16
1486// AARCH64-MSVC: #define __DBL_HAS_DENORM__ 1
1487// AARCH64-MSVC: #define __DBL_HAS_INFINITY__ 1
1488// AARCH64-MSVC: #define __DBL_HAS_QUIET_NAN__ 1
1489// AARCH64-MSVC: #define __DBL_MANT_DIG__ 53
1490// AARCH64-MSVC: #define __DBL_MAX_10_EXP__ 308
1491// AARCH64-MSVC: #define __DBL_MAX_EXP__ 1024
1492// AARCH64-MSVC: #define __DBL_MAX__ 1.7976931348623157e+308
1493// AARCH64-MSVC: #define __DBL_MIN_10_EXP__ (-307)
1494// AARCH64-MSVC: #define __DBL_MIN_EXP__ (-1021)
1495// AARCH64-MSVC: #define __DBL_MIN__ 2.2250738585072014e-308
1496// AARCH64-MSVC: #define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
1497// AARCH64-MSVC: #define __FINITE_MATH_ONLY__ 0
1498// AARCH64-MSVC: #define __FLT_DECIMAL_DIG__ 9
1499// AARCH64-MSVC: #define __FLT_DENORM_MIN__ 1.40129846e-45F
1500// AARCH64-MSVC: #define __FLT_DIG__ 6
1501// AARCH64-MSVC: #define __FLT_EPSILON__ 1.19209290e-7F
1502// AARCH64-MSVC: #define __FLT_EVAL_METHOD__ 0
1503// AARCH64-MSVC: #define __FLT_HAS_DENORM__ 1
1504// AARCH64-MSVC: #define __FLT_HAS_INFINITY__ 1
1505// AARCH64-MSVC: #define __FLT_HAS_QUIET_NAN__ 1
1506// AARCH64-MSVC: #define __FLT_MANT_DIG__ 24
1507// AARCH64-MSVC: #define __FLT_MAX_10_EXP__ 38
1508// AARCH64-MSVC: #define __FLT_MAX_EXP__ 128
1509// AARCH64-MSVC: #define __FLT_MAX__ 3.40282347e+38F
1510// AARCH64-MSVC: #define __FLT_MIN_10_EXP__ (-37)
1511// AARCH64-MSVC: #define __FLT_MIN_EXP__ (-125)
1512// AARCH64-MSVC: #define __FLT_MIN__ 1.17549435e-38F
1513// AARCH64-MSVC: #define __FLT_RADIX__ 2
1514// AARCH64-MSVC: #define __INT_MAX__ 2147483647
1515// AARCH64-MSVC: #define __LDBL_DECIMAL_DIG__ 17
1516// AARCH64-MSVC: #define __LDBL_DENORM_MIN__ 4.9406564584124654e-324L
1517// AARCH64-MSVC: #define __LDBL_DIG__ 15
1518// AARCH64-MSVC: #define __LDBL_EPSILON__ 2.2204460492503131e-16L
1519// AARCH64-MSVC: #define __LDBL_HAS_DENORM__ 1
1520// AARCH64-MSVC: #define __LDBL_HAS_INFINITY__ 1
1521// AARCH64-MSVC: #define __LDBL_HAS_QUIET_NAN__ 1
1522// AARCH64-MSVC: #define __LDBL_MANT_DIG__ 53
1523// AARCH64-MSVC: #define __LDBL_MAX_10_EXP__ 308
1524// AARCH64-MSVC: #define __LDBL_MAX_EXP__ 1024
1525// AARCH64-MSVC: #define __LDBL_MAX__ 1.7976931348623157e+308L
1526// AARCH64-MSVC: #define __LDBL_MIN_10_EXP__ (-307)
1527// AARCH64-MSVC: #define __LDBL_MIN_EXP__ (-1021)
1528// AARCH64-MSVC: #define __LDBL_MIN__ 2.2250738585072014e-308L
1529// AARCH64-MSVC: #define __LITTLE_ENDIAN__ 1
1530// AARCH64-MSVC: #define __LONG_LONG_MAX__ 9223372036854775807LL
1531// AARCH64-MSVC: #define __LONG_MAX__ 2147483647L
1532// AARCH64-MSVC-NOT: #define __LP64__ 1
1533// AARCH64-MSVC: #define __NO_INLINE__ 1
1534// AARCH64-MSVC: #define __OBJC_BOOL_IS_BOOL 0
1535// AARCH64-MSVC: #define __ORDER_BIG_ENDIAN__ 4321
1536// AARCH64-MSVC: #define __ORDER_LITTLE_ENDIAN__ 1234
1537// AARCH64-MSVC: #define __ORDER_PDP_ENDIAN__ 3412
1538// AARCH64-MSVC: #define __POINTER_WIDTH__ 64
1539// AARCH64-MSVC: #define __PRAGMA_REDEFINE_EXTNAME 1
1540// AARCH64-MSVC: #define __SCHAR_MAX__ 127
1541// AARCH64-MSVC: #define __SHRT_MAX__ 32767
1542// AARCH64-MSVC: #define __SIG_ATOMIC_MAX__ 2147483647
1543// AARCH64-MSVC: #define __SIG_ATOMIC_WIDTH__ 32
1544// AARCH64-MSVC: #define __SIZEOF_DOUBLE__ 8
1545// AARCH64-MSVC: #define __SIZEOF_FLOAT__ 4
1546// AARCH64-MSVC: #define __SIZEOF_INT128__ 16
1547// AARCH64-MSVC: #define __SIZEOF_INT__ 4
1548// AARCH64-MSVC: #define __SIZEOF_LONG_DOUBLE__ 8
1549// AARCH64-MSVC: #define __SIZEOF_LONG_LONG__ 8
1550// AARCH64-MSVC: #define __SIZEOF_LONG__ 4
1551// AARCH64-MSVC: #define __SIZEOF_POINTER__ 8
1552// AARCH64-MSVC: #define __SIZEOF_PTRDIFF_T__ 8
1553// AARCH64-MSVC: #define __SIZEOF_SHORT__ 2
1554// AARCH64-MSVC: #define __SIZEOF_SIZE_T__ 8
1555// AARCH64-MSVC: #define __SIZEOF_WCHAR_T__ 2
Saleem Abdulrasool6183c632018-09-19 16:18:55 +00001556// AARCH64-MSVC: #define __SIZEOF_WINT_T__ 2
Martin Storsjo588a3e52017-07-31 20:40:53 +00001557// AARCH64-MSVC: #define __SIZE_MAX__ 18446744073709551615ULL
1558// AARCH64-MSVC: #define __SIZE_TYPE__ long long unsigned int
1559// AARCH64-MSVC: #define __SIZE_WIDTH__ 64
1560// AARCH64-MSVC: #define __STDC_HOSTED__ 0
1561// AARCH64-MSVC: #define __STDC_UTF_16__ 1
1562// AARCH64-MSVC: #define __STDC_UTF_32__ 1
1563// AARCH64-MSVC: #define __STDC_VERSION__ 201112L
1564// AARCH64-MSVC: #define __STDC__ 1
1565// AARCH64-MSVC: #define __UINT16_C_SUFFIX__
1566// AARCH64-MSVC: #define __UINT16_MAX__ 65535
1567// AARCH64-MSVC: #define __UINT16_TYPE__ unsigned short
1568// AARCH64-MSVC: #define __UINT32_C_SUFFIX__ U
1569// AARCH64-MSVC: #define __UINT32_MAX__ 4294967295U
1570// AARCH64-MSVC: #define __UINT32_TYPE__ unsigned int
1571// AARCH64-MSVC: #define __UINT64_C_SUFFIX__ ULL
1572// AARCH64-MSVC: #define __UINT64_MAX__ 18446744073709551615ULL
1573// AARCH64-MSVC: #define __UINT64_TYPE__ long long unsigned int
1574// AARCH64-MSVC: #define __UINT8_C_SUFFIX__
1575// AARCH64-MSVC: #define __UINT8_MAX__ 255
1576// AARCH64-MSVC: #define __UINT8_TYPE__ unsigned char
1577// AARCH64-MSVC: #define __UINTMAX_C_SUFFIX__ ULL
1578// AARCH64-MSVC: #define __UINTMAX_MAX__ 18446744073709551615ULL
1579// AARCH64-MSVC: #define __UINTMAX_TYPE__ long long unsigned int
1580// AARCH64-MSVC: #define __UINTMAX_WIDTH__ 64
1581// AARCH64-MSVC: #define __UINTPTR_MAX__ 18446744073709551615ULL
1582// AARCH64-MSVC: #define __UINTPTR_TYPE__ long long unsigned int
1583// AARCH64-MSVC: #define __UINTPTR_WIDTH__ 64
1584// AARCH64-MSVC: #define __UINT_FAST16_MAX__ 65535
1585// AARCH64-MSVC: #define __UINT_FAST16_TYPE__ unsigned short
1586// AARCH64-MSVC: #define __UINT_FAST32_MAX__ 4294967295U
1587// AARCH64-MSVC: #define __UINT_FAST32_TYPE__ unsigned int
1588// AARCH64-MSVC: #define __UINT_FAST64_MAX__ 18446744073709551615ULL
1589// AARCH64-MSVC: #define __UINT_FAST64_TYPE__ long long unsigned int
1590// AARCH64-MSVC: #define __UINT_FAST8_MAX__ 255
1591// AARCH64-MSVC: #define __UINT_FAST8_TYPE__ unsigned char
1592// AARCH64-MSVC: #define __UINT_LEAST16_MAX__ 65535
1593// AARCH64-MSVC: #define __UINT_LEAST16_TYPE__ unsigned short
1594// AARCH64-MSVC: #define __UINT_LEAST32_MAX__ 4294967295U
1595// AARCH64-MSVC: #define __UINT_LEAST32_TYPE__ unsigned int
1596// AARCH64-MSVC: #define __UINT_LEAST64_MAX__ 18446744073709551615ULL
1597// AARCH64-MSVC: #define __UINT_LEAST64_TYPE__ long long unsigned int
1598// AARCH64-MSVC: #define __UINT_LEAST8_MAX__ 255
1599// AARCH64-MSVC: #define __UINT_LEAST8_TYPE__ unsigned char
1600// AARCH64-MSVC: #define __USER_LABEL_PREFIX__
1601// AARCH64-MSVC: #define __WCHAR_MAX__ 65535
1602// AARCH64-MSVC: #define __WCHAR_TYPE__ unsigned short
1603// AARCH64-MSVC: #define __WCHAR_UNSIGNED__ 1
1604// AARCH64-MSVC: #define __WCHAR_WIDTH__ 16
Saleem Abdulrasool6183c632018-09-19 16:18:55 +00001605// AARCH64-MSVC: #define __WINT_TYPE__ unsigned short
1606// AARCH64-MSVC: #define __WINT_WIDTH__ 16
Martin Storsjo588a3e52017-07-31 20:40:53 +00001607// AARCH64-MSVC: #define __aarch64__ 1
1608
James Y Knightc97efa42016-02-11 16:51:29 +00001609// 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 +00001610// 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 +00001611//
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00001612// ARM-NOT:#define _LP64
Chris Lattnere963d092009-10-29 04:55:36 +00001613// ARM:#define __APCS_32__ 1
Christian Pirkerf01cd6f2014-03-28 14:40:46 +00001614// ARM-NOT:#define __ARMEB__ 1
Chris Lattnere963d092009-10-29 04:55:36 +00001615// ARM:#define __ARMEL__ 1
Renato Goline84b0002015-10-08 16:43:26 +00001616// ARM:#define __ARM_ARCH_4T__ 1
Christian Pirkerf01cd6f2014-03-28 14:40:46 +00001617// ARM-NOT:#define __ARM_BIG_ENDIAN 1
Tim Northovera6a19f12015-02-06 01:25:07 +00001618// ARM:#define __BIGGEST_ALIGNMENT__ 8
Dylan Noblesmith673728f2012-07-27 18:34:31 +00001619// ARM:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
Dan Gohman04f87202010-05-28 00:27:15 +00001620// ARM:#define __CHAR16_TYPE__ unsigned short
1621// ARM:#define __CHAR32_TYPE__ unsigned int
Chris Lattnere963d092009-10-29 04:55:36 +00001622// ARM:#define __CHAR_BIT__ 8
1623// ARM:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
1624// ARM:#define __DBL_DIG__ 15
1625// ARM:#define __DBL_EPSILON__ 2.2204460492503131e-16
1626// ARM:#define __DBL_HAS_DENORM__ 1
1627// ARM:#define __DBL_HAS_INFINITY__ 1
1628// ARM:#define __DBL_HAS_QUIET_NAN__ 1
1629// ARM:#define __DBL_MANT_DIG__ 53
1630// ARM:#define __DBL_MAX_10_EXP__ 308
1631// ARM:#define __DBL_MAX_EXP__ 1024
1632// ARM:#define __DBL_MAX__ 1.7976931348623157e+308
1633// ARM:#define __DBL_MIN_10_EXP__ (-307)
1634// ARM:#define __DBL_MIN_EXP__ (-1021)
1635// ARM:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00001636// ARM:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Chris Lattnere963d092009-10-29 04:55:36 +00001637// ARM:#define __FLT_DENORM_MIN__ 1.40129846e-45F
1638// ARM:#define __FLT_DIG__ 6
1639// ARM:#define __FLT_EPSILON__ 1.19209290e-7F
1640// ARM:#define __FLT_EVAL_METHOD__ 0
1641// ARM:#define __FLT_HAS_DENORM__ 1
1642// ARM:#define __FLT_HAS_INFINITY__ 1
1643// ARM:#define __FLT_HAS_QUIET_NAN__ 1
1644// ARM:#define __FLT_MANT_DIG__ 24
1645// ARM:#define __FLT_MAX_10_EXP__ 38
1646// ARM:#define __FLT_MAX_EXP__ 128
1647// ARM:#define __FLT_MAX__ 3.40282347e+38F
1648// ARM:#define __FLT_MIN_10_EXP__ (-37)
1649// ARM:#define __FLT_MIN_EXP__ (-125)
1650// ARM:#define __FLT_MIN__ 1.17549435e-38F
1651// ARM:#define __FLT_RADIX__ 2
James Y Knightc97efa42016-02-11 16:51:29 +00001652// ARM:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001653// ARM:#define __INT16_FMTd__ "hd"
1654// ARM:#define __INT16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00001655// ARM:#define __INT16_MAX__ 32767
Chris Lattnere963d092009-10-29 04:55:36 +00001656// ARM:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +00001657// ARM:#define __INT32_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001658// ARM:#define __INT32_FMTd__ "d"
1659// ARM:#define __INT32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00001660// ARM:#define __INT32_MAX__ 2147483647
Chris Lattnere963d092009-10-29 04:55:36 +00001661// ARM:#define __INT32_TYPE__ int
Ken Dyck2dc8d5f2009-11-16 16:36:33 +00001662// ARM:#define __INT64_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001663// ARM:#define __INT64_FMTd__ "lld"
1664// ARM:#define __INT64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00001665// ARM:#define __INT64_MAX__ 9223372036854775807LL
Chris Lattnere963d092009-10-29 04:55:36 +00001666// ARM:#define __INT64_TYPE__ long long int
James Y Knightc97efa42016-02-11 16:51:29 +00001667// ARM:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001668// ARM:#define __INT8_FMTd__ "hhd"
1669// ARM:#define __INT8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00001670// ARM:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00001671// ARM:#define __INT8_TYPE__ signed char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00001672// ARM:#define __INTMAX_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001673// ARM:#define __INTMAX_FMTd__ "lld"
1674// ARM:#define __INTMAX_FMTi__ "lli"
Chris Lattnere963d092009-10-29 04:55:36 +00001675// ARM:#define __INTMAX_MAX__ 9223372036854775807LL
Ken Dyck9b25f782009-11-19 13:18:59 +00001676// ARM:#define __INTMAX_TYPE__ long long int
Ken Dyckc0c98292009-11-18 13:52:57 +00001677// ARM:#define __INTMAX_WIDTH__ 64
Saleem Abdulrasool8d799f82017-10-18 00:00:50 +00001678// ARM:#define __INTPTR_FMTd__ "d"
1679// ARM:#define __INTPTR_FMTi__ "i"
1680// ARM:#define __INTPTR_MAX__ 2147483647
1681// ARM:#define __INTPTR_TYPE__ int
Ken Dyck24cfcf12009-11-18 20:05:48 +00001682// ARM:#define __INTPTR_WIDTH__ 32
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001683// ARM:#define __INT_FAST16_FMTd__ "hd"
1684// ARM:#define __INT_FAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00001685// ARM:#define __INT_FAST16_MAX__ 32767
1686// ARM:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001687// ARM:#define __INT_FAST32_FMTd__ "d"
1688// ARM:#define __INT_FAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00001689// ARM:#define __INT_FAST32_MAX__ 2147483647
1690// ARM:#define __INT_FAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001691// ARM:#define __INT_FAST64_FMTd__ "lld"
1692// ARM:#define __INT_FAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00001693// ARM:#define __INT_FAST64_MAX__ 9223372036854775807LL
1694// ARM:#define __INT_FAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001695// ARM:#define __INT_FAST8_FMTd__ "hhd"
1696// ARM:#define __INT_FAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00001697// ARM:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00001698// ARM:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001699// ARM:#define __INT_LEAST16_FMTd__ "hd"
1700// ARM:#define __INT_LEAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00001701// ARM:#define __INT_LEAST16_MAX__ 32767
1702// ARM:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001703// ARM:#define __INT_LEAST32_FMTd__ "d"
1704// ARM:#define __INT_LEAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00001705// ARM:#define __INT_LEAST32_MAX__ 2147483647
1706// ARM:#define __INT_LEAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001707// ARM:#define __INT_LEAST64_FMTd__ "lld"
1708// ARM:#define __INT_LEAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00001709// ARM:#define __INT_LEAST64_MAX__ 9223372036854775807LL
1710// ARM:#define __INT_LEAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001711// ARM:#define __INT_LEAST8_FMTd__ "hhd"
1712// ARM:#define __INT_LEAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00001713// ARM:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00001714// ARM:#define __INT_LEAST8_TYPE__ signed char
Chris Lattnere963d092009-10-29 04:55:36 +00001715// ARM:#define __INT_MAX__ 2147483647
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00001716// ARM:#define __LDBL_DENORM_MIN__ 4.9406564584124654e-324L
Chris Lattnere963d092009-10-29 04:55:36 +00001717// ARM:#define __LDBL_DIG__ 15
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00001718// ARM:#define __LDBL_EPSILON__ 2.2204460492503131e-16L
Chris Lattnere963d092009-10-29 04:55:36 +00001719// ARM:#define __LDBL_HAS_DENORM__ 1
1720// ARM:#define __LDBL_HAS_INFINITY__ 1
1721// ARM:#define __LDBL_HAS_QUIET_NAN__ 1
1722// ARM:#define __LDBL_MANT_DIG__ 53
1723// ARM:#define __LDBL_MAX_10_EXP__ 308
1724// ARM:#define __LDBL_MAX_EXP__ 1024
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00001725// ARM:#define __LDBL_MAX__ 1.7976931348623157e+308L
Chris Lattnere963d092009-10-29 04:55:36 +00001726// ARM:#define __LDBL_MIN_10_EXP__ (-307)
1727// ARM:#define __LDBL_MIN_EXP__ (-1021)
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00001728// ARM:#define __LDBL_MIN__ 2.2250738585072014e-308L
Chris Lattnere963d092009-10-29 04:55:36 +00001729// ARM:#define __LITTLE_ENDIAN__ 1
1730// ARM:#define __LONG_LONG_MAX__ 9223372036854775807LL
1731// ARM:#define __LONG_MAX__ 2147483647L
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00001732// ARM-NOT:#define __LP64__
Chris Lattnere963d092009-10-29 04:55:36 +00001733// ARM:#define __POINTER_WIDTH__ 32
Ken Dyck9b25f782009-11-19 13:18:59 +00001734// ARM:#define __PTRDIFF_TYPE__ int
Ken Dyck056efe02009-11-19 12:21:52 +00001735// ARM:#define __PTRDIFF_WIDTH__ 32
Daniel Dunbaracde99e2009-12-18 18:42:37 +00001736// ARM:#define __REGISTER_PREFIX__
Chris Lattnere963d092009-10-29 04:55:36 +00001737// ARM:#define __SCHAR_MAX__ 127
1738// ARM:#define __SHRT_MAX__ 32767
Joerg Sonnenbergerb3a49692014-07-17 18:31:20 +00001739// ARM:#define __SIG_ATOMIC_MAX__ 2147483647
Ken Dyckadc85112009-11-22 15:41:04 +00001740// ARM:#define __SIG_ATOMIC_WIDTH__ 32
Dan Gohman04f87202010-05-28 00:27:15 +00001741// ARM:#define __SIZEOF_DOUBLE__ 8
1742// ARM:#define __SIZEOF_FLOAT__ 4
1743// ARM:#define __SIZEOF_INT__ 4
1744// ARM:#define __SIZEOF_LONG_DOUBLE__ 8
1745// ARM:#define __SIZEOF_LONG_LONG__ 8
1746// ARM:#define __SIZEOF_LONG__ 4
1747// ARM:#define __SIZEOF_POINTER__ 4
1748// ARM:#define __SIZEOF_PTRDIFF_T__ 4
1749// ARM:#define __SIZEOF_SHORT__ 2
1750// ARM:#define __SIZEOF_SIZE_T__ 4
1751// ARM:#define __SIZEOF_WCHAR_T__ 4
1752// ARM:#define __SIZEOF_WINT_T__ 4
Evgeniy Stepanovc3c725a2013-03-28 08:36:54 +00001753// ARM:#define __SIZE_MAX__ 4294967295U
Chris Lattnere963d092009-10-29 04:55:36 +00001754// ARM:#define __SIZE_TYPE__ unsigned int
Ken Dyck57512862009-11-19 13:42:09 +00001755// ARM:#define __SIZE_WIDTH__ 32
Richard Smith59139022016-09-30 22:41:36 +00001756// ARM-CXX:#define __STDCPP_DEFAULT_NEW_ALIGNMENT__ 8U
James Y Knightc97efa42016-02-11 16:51:29 +00001757// ARM:#define __UINT16_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00001758// ARM:#define __UINT16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00001759// ARM:#define __UINT16_TYPE__ unsigned short
1760// ARM:#define __UINT32_C_SUFFIX__ U
1761// ARM:#define __UINT32_MAX__ 4294967295U
1762// ARM:#define __UINT32_TYPE__ unsigned int
1763// ARM:#define __UINT64_C_SUFFIX__ ULL
1764// ARM:#define __UINT64_MAX__ 18446744073709551615ULL
1765// ARM:#define __UINT64_TYPE__ long long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00001766// ARM:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00001767// ARM:#define __UINT8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00001768// ARM:#define __UINT8_TYPE__ unsigned char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00001769// ARM:#define __UINTMAX_C_SUFFIX__ ULL
JF Bastienab8d0a02014-06-25 01:31:33 +00001770// ARM:#define __UINTMAX_MAX__ 18446744073709551615ULL
Ken Dyck9b25f782009-11-19 13:18:59 +00001771// ARM:#define __UINTMAX_TYPE__ long long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00001772// ARM:#define __UINTMAX_WIDTH__ 64
Saleem Abdulrasool8d799f82017-10-18 00:00:50 +00001773// ARM:#define __UINTPTR_MAX__ 4294967295U
1774// ARM:#define __UINTPTR_TYPE__ unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00001775// ARM:#define __UINTPTR_WIDTH__ 32
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00001776// ARM:#define __UINT_FAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00001777// ARM:#define __UINT_FAST16_TYPE__ unsigned short
1778// ARM:#define __UINT_FAST32_MAX__ 4294967295U
1779// ARM:#define __UINT_FAST32_TYPE__ unsigned int
1780// ARM:#define __UINT_FAST64_MAX__ 18446744073709551615ULL
1781// ARM:#define __UINT_FAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00001782// ARM:#define __UINT_FAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00001783// ARM:#define __UINT_FAST8_TYPE__ unsigned char
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00001784// ARM:#define __UINT_LEAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00001785// ARM:#define __UINT_LEAST16_TYPE__ unsigned short
1786// ARM:#define __UINT_LEAST32_MAX__ 4294967295U
1787// ARM:#define __UINT_LEAST32_TYPE__ unsigned int
1788// ARM:#define __UINT_LEAST64_MAX__ 18446744073709551615ULL
1789// ARM:#define __UINT_LEAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00001790// ARM:#define __UINT_LEAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00001791// ARM:#define __UINT_LEAST8_TYPE__ unsigned char
James Y Knightb214cbc2016-03-04 19:00:41 +00001792// ARM:#define __USER_LABEL_PREFIX__
James Molloyc445be42011-11-23 13:35:08 +00001793// ARM:#define __WCHAR_MAX__ 4294967295U
1794// ARM:#define __WCHAR_TYPE__ unsigned int
Ken Dyck0138b9e2009-11-19 15:47:58 +00001795// ARM:#define __WCHAR_WIDTH__ 32
Chris Lattnere963d092009-10-29 04:55:36 +00001796// ARM:#define __WINT_TYPE__ int
Ken Dycka1f677c2009-11-19 14:16:57 +00001797// ARM:#define __WINT_WIDTH__ 32
Chris Lattnere963d092009-10-29 04:55:36 +00001798// ARM:#define __arm 1
1799// ARM:#define __arm__ 1
Anton Korobeynikove6f74092012-09-08 08:45:10 +00001800
Saleem Abdulrasool418a8162017-10-27 23:04:27 +00001801// RUN: %clang_cc1 -dM -ffreestanding -triple arm-none-none -target-abi apcs-gnu -E /dev/null -o - | FileCheck -match-full-lines -check-prefix ARM-APCS-GNU %s
1802// ARM-APCS-GNU: #define __INTPTR_TYPE__ int
1803// ARM-APCS-GNU: #define __PTRDIFF_TYPE__ int
1804// ARM-APCS-GNU: #define __SIZE_TYPE__ unsigned int
1805
James Y Knightc97efa42016-02-11 16:51:29 +00001806// 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 +00001807//
1808// ARM-BE-NOT:#define _LP64
1809// ARM-BE:#define __APCS_32__ 1
1810// ARM-BE:#define __ARMEB__ 1
1811// ARM-BE-NOT:#define __ARMEL__ 1
Renato Goline84b0002015-10-08 16:43:26 +00001812// ARM-BE:#define __ARM_ARCH_4T__ 1
Christian Pirkerf01cd6f2014-03-28 14:40:46 +00001813// ARM-BE:#define __ARM_BIG_ENDIAN 1
Tim Northovera6a19f12015-02-06 01:25:07 +00001814// ARM-BE:#define __BIGGEST_ALIGNMENT__ 8
Christian Pirkerf01cd6f2014-03-28 14:40:46 +00001815// ARM-BE:#define __BIG_ENDIAN__ 1
1816// ARM-BE:#define __BYTE_ORDER__ __ORDER_BIG_ENDIAN__
1817// ARM-BE:#define __CHAR16_TYPE__ unsigned short
1818// ARM-BE:#define __CHAR32_TYPE__ unsigned int
1819// ARM-BE:#define __CHAR_BIT__ 8
1820// ARM-BE:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
1821// ARM-BE:#define __DBL_DIG__ 15
1822// ARM-BE:#define __DBL_EPSILON__ 2.2204460492503131e-16
1823// ARM-BE:#define __DBL_HAS_DENORM__ 1
1824// ARM-BE:#define __DBL_HAS_INFINITY__ 1
1825// ARM-BE:#define __DBL_HAS_QUIET_NAN__ 1
1826// ARM-BE:#define __DBL_MANT_DIG__ 53
1827// ARM-BE:#define __DBL_MAX_10_EXP__ 308
1828// ARM-BE:#define __DBL_MAX_EXP__ 1024
1829// ARM-BE:#define __DBL_MAX__ 1.7976931348623157e+308
1830// ARM-BE:#define __DBL_MIN_10_EXP__ (-307)
1831// ARM-BE:#define __DBL_MIN_EXP__ (-1021)
1832// ARM-BE:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00001833// ARM-BE:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Christian Pirkerf01cd6f2014-03-28 14:40:46 +00001834// ARM-BE:#define __FLT_DENORM_MIN__ 1.40129846e-45F
1835// ARM-BE:#define __FLT_DIG__ 6
1836// ARM-BE:#define __FLT_EPSILON__ 1.19209290e-7F
1837// ARM-BE:#define __FLT_EVAL_METHOD__ 0
1838// ARM-BE:#define __FLT_HAS_DENORM__ 1
1839// ARM-BE:#define __FLT_HAS_INFINITY__ 1
1840// ARM-BE:#define __FLT_HAS_QUIET_NAN__ 1
1841// ARM-BE:#define __FLT_MANT_DIG__ 24
1842// ARM-BE:#define __FLT_MAX_10_EXP__ 38
1843// ARM-BE:#define __FLT_MAX_EXP__ 128
1844// ARM-BE:#define __FLT_MAX__ 3.40282347e+38F
1845// ARM-BE:#define __FLT_MIN_10_EXP__ (-37)
1846// ARM-BE:#define __FLT_MIN_EXP__ (-125)
1847// ARM-BE:#define __FLT_MIN__ 1.17549435e-38F
1848// ARM-BE:#define __FLT_RADIX__ 2
James Y Knightc97efa42016-02-11 16:51:29 +00001849// ARM-BE:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001850// ARM-BE:#define __INT16_FMTd__ "hd"
1851// ARM-BE:#define __INT16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00001852// ARM-BE:#define __INT16_MAX__ 32767
Christian Pirkerf01cd6f2014-03-28 14:40:46 +00001853// ARM-BE:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +00001854// ARM-BE:#define __INT32_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001855// ARM-BE:#define __INT32_FMTd__ "d"
1856// ARM-BE:#define __INT32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00001857// ARM-BE:#define __INT32_MAX__ 2147483647
Christian Pirkerf01cd6f2014-03-28 14:40:46 +00001858// ARM-BE:#define __INT32_TYPE__ int
1859// ARM-BE:#define __INT64_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001860// ARM-BE:#define __INT64_FMTd__ "lld"
1861// ARM-BE:#define __INT64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00001862// ARM-BE:#define __INT64_MAX__ 9223372036854775807LL
Christian Pirkerf01cd6f2014-03-28 14:40:46 +00001863// ARM-BE:#define __INT64_TYPE__ long long int
James Y Knightc97efa42016-02-11 16:51:29 +00001864// ARM-BE:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001865// ARM-BE:#define __INT8_FMTd__ "hhd"
1866// ARM-BE:#define __INT8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00001867// ARM-BE:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00001868// ARM-BE:#define __INT8_TYPE__ signed char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00001869// ARM-BE:#define __INTMAX_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001870// ARM-BE:#define __INTMAX_FMTd__ "lld"
1871// ARM-BE:#define __INTMAX_FMTi__ "lli"
Christian Pirkerf01cd6f2014-03-28 14:40:46 +00001872// ARM-BE:#define __INTMAX_MAX__ 9223372036854775807LL
1873// ARM-BE:#define __INTMAX_TYPE__ long long int
1874// ARM-BE:#define __INTMAX_WIDTH__ 64
Saleem Abdulrasool8d799f82017-10-18 00:00:50 +00001875// ARM-BE:#define __INTPTR_FMTd__ "d"
1876// ARM-BE:#define __INTPTR_FMTi__ "i"
1877// ARM-BE:#define __INTPTR_MAX__ 2147483647
1878// ARM-BE:#define __INTPTR_TYPE__ int
Christian Pirkerf01cd6f2014-03-28 14:40:46 +00001879// ARM-BE:#define __INTPTR_WIDTH__ 32
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001880// ARM-BE:#define __INT_FAST16_FMTd__ "hd"
1881// ARM-BE:#define __INT_FAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00001882// ARM-BE:#define __INT_FAST16_MAX__ 32767
1883// ARM-BE:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001884// ARM-BE:#define __INT_FAST32_FMTd__ "d"
1885// ARM-BE:#define __INT_FAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00001886// ARM-BE:#define __INT_FAST32_MAX__ 2147483647
1887// ARM-BE:#define __INT_FAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001888// ARM-BE:#define __INT_FAST64_FMTd__ "lld"
1889// ARM-BE:#define __INT_FAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00001890// ARM-BE:#define __INT_FAST64_MAX__ 9223372036854775807LL
1891// ARM-BE:#define __INT_FAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001892// ARM-BE:#define __INT_FAST8_FMTd__ "hhd"
1893// ARM-BE:#define __INT_FAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00001894// ARM-BE:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00001895// ARM-BE:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001896// ARM-BE:#define __INT_LEAST16_FMTd__ "hd"
1897// ARM-BE:#define __INT_LEAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00001898// ARM-BE:#define __INT_LEAST16_MAX__ 32767
1899// ARM-BE:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001900// ARM-BE:#define __INT_LEAST32_FMTd__ "d"
1901// ARM-BE:#define __INT_LEAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00001902// ARM-BE:#define __INT_LEAST32_MAX__ 2147483647
1903// ARM-BE:#define __INT_LEAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001904// ARM-BE:#define __INT_LEAST64_FMTd__ "lld"
1905// ARM-BE:#define __INT_LEAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00001906// ARM-BE:#define __INT_LEAST64_MAX__ 9223372036854775807LL
1907// ARM-BE:#define __INT_LEAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00001908// ARM-BE:#define __INT_LEAST8_FMTd__ "hhd"
1909// ARM-BE:#define __INT_LEAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00001910// ARM-BE:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00001911// ARM-BE:#define __INT_LEAST8_TYPE__ signed char
Christian Pirkerf01cd6f2014-03-28 14:40:46 +00001912// ARM-BE:#define __INT_MAX__ 2147483647
1913// ARM-BE:#define __LDBL_DENORM_MIN__ 4.9406564584124654e-324L
1914// ARM-BE:#define __LDBL_DIG__ 15
1915// ARM-BE:#define __LDBL_EPSILON__ 2.2204460492503131e-16L
1916// ARM-BE:#define __LDBL_HAS_DENORM__ 1
1917// ARM-BE:#define __LDBL_HAS_INFINITY__ 1
1918// ARM-BE:#define __LDBL_HAS_QUIET_NAN__ 1
1919// ARM-BE:#define __LDBL_MANT_DIG__ 53
1920// ARM-BE:#define __LDBL_MAX_10_EXP__ 308
1921// ARM-BE:#define __LDBL_MAX_EXP__ 1024
1922// ARM-BE:#define __LDBL_MAX__ 1.7976931348623157e+308L
1923// ARM-BE:#define __LDBL_MIN_10_EXP__ (-307)
1924// ARM-BE:#define __LDBL_MIN_EXP__ (-1021)
1925// ARM-BE:#define __LDBL_MIN__ 2.2250738585072014e-308L
1926// ARM-BE:#define __LONG_LONG_MAX__ 9223372036854775807LL
1927// ARM-BE:#define __LONG_MAX__ 2147483647L
1928// ARM-BE-NOT:#define __LP64__
1929// ARM-BE:#define __POINTER_WIDTH__ 32
1930// ARM-BE:#define __PTRDIFF_TYPE__ int
1931// ARM-BE:#define __PTRDIFF_WIDTH__ 32
1932// ARM-BE:#define __REGISTER_PREFIX__
1933// ARM-BE:#define __SCHAR_MAX__ 127
1934// ARM-BE:#define __SHRT_MAX__ 32767
Joerg Sonnenbergerb3a49692014-07-17 18:31:20 +00001935// ARM-BE:#define __SIG_ATOMIC_MAX__ 2147483647
Christian Pirkerf01cd6f2014-03-28 14:40:46 +00001936// ARM-BE:#define __SIG_ATOMIC_WIDTH__ 32
1937// ARM-BE:#define __SIZEOF_DOUBLE__ 8
1938// ARM-BE:#define __SIZEOF_FLOAT__ 4
1939// ARM-BE:#define __SIZEOF_INT__ 4
1940// ARM-BE:#define __SIZEOF_LONG_DOUBLE__ 8
1941// ARM-BE:#define __SIZEOF_LONG_LONG__ 8
1942// ARM-BE:#define __SIZEOF_LONG__ 4
1943// ARM-BE:#define __SIZEOF_POINTER__ 4
1944// ARM-BE:#define __SIZEOF_PTRDIFF_T__ 4
1945// ARM-BE:#define __SIZEOF_SHORT__ 2
1946// ARM-BE:#define __SIZEOF_SIZE_T__ 4
1947// ARM-BE:#define __SIZEOF_WCHAR_T__ 4
1948// ARM-BE:#define __SIZEOF_WINT_T__ 4
1949// ARM-BE:#define __SIZE_MAX__ 4294967295U
1950// ARM-BE:#define __SIZE_TYPE__ unsigned int
1951// ARM-BE:#define __SIZE_WIDTH__ 32
James Y Knightc97efa42016-02-11 16:51:29 +00001952// ARM-BE:#define __UINT16_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00001953// ARM-BE:#define __UINT16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00001954// ARM-BE:#define __UINT16_TYPE__ unsigned short
1955// ARM-BE:#define __UINT32_C_SUFFIX__ U
1956// ARM-BE:#define __UINT32_MAX__ 4294967295U
1957// ARM-BE:#define __UINT32_TYPE__ unsigned int
1958// ARM-BE:#define __UINT64_C_SUFFIX__ ULL
1959// ARM-BE:#define __UINT64_MAX__ 18446744073709551615ULL
1960// ARM-BE:#define __UINT64_TYPE__ long long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00001961// ARM-BE:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00001962// ARM-BE:#define __UINT8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00001963// ARM-BE:#define __UINT8_TYPE__ unsigned char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00001964// ARM-BE:#define __UINTMAX_C_SUFFIX__ ULL
JF Bastienab8d0a02014-06-25 01:31:33 +00001965// ARM-BE:#define __UINTMAX_MAX__ 18446744073709551615ULL
Christian Pirkerf01cd6f2014-03-28 14:40:46 +00001966// ARM-BE:#define __UINTMAX_TYPE__ long long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00001967// ARM-BE:#define __UINTMAX_WIDTH__ 64
Saleem Abdulrasool8d799f82017-10-18 00:00:50 +00001968// ARM-BE:#define __UINTPTR_MAX__ 4294967295U
1969// ARM-BE:#define __UINTPTR_TYPE__ unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00001970// ARM-BE:#define __UINTPTR_WIDTH__ 32
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00001971// ARM-BE:#define __UINT_FAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00001972// ARM-BE:#define __UINT_FAST16_TYPE__ unsigned short
1973// ARM-BE:#define __UINT_FAST32_MAX__ 4294967295U
1974// ARM-BE:#define __UINT_FAST32_TYPE__ unsigned int
1975// ARM-BE:#define __UINT_FAST64_MAX__ 18446744073709551615ULL
1976// ARM-BE:#define __UINT_FAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00001977// ARM-BE:#define __UINT_FAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00001978// ARM-BE:#define __UINT_FAST8_TYPE__ unsigned char
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00001979// ARM-BE:#define __UINT_LEAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00001980// ARM-BE:#define __UINT_LEAST16_TYPE__ unsigned short
1981// ARM-BE:#define __UINT_LEAST32_MAX__ 4294967295U
1982// ARM-BE:#define __UINT_LEAST32_TYPE__ unsigned int
1983// ARM-BE:#define __UINT_LEAST64_MAX__ 18446744073709551615ULL
1984// ARM-BE:#define __UINT_LEAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00001985// ARM-BE:#define __UINT_LEAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00001986// ARM-BE:#define __UINT_LEAST8_TYPE__ unsigned char
James Y Knightb214cbc2016-03-04 19:00:41 +00001987// ARM-BE:#define __USER_LABEL_PREFIX__
Christian Pirkerf01cd6f2014-03-28 14:40:46 +00001988// ARM-BE:#define __WCHAR_MAX__ 4294967295U
1989// ARM-BE:#define __WCHAR_TYPE__ unsigned int
1990// ARM-BE:#define __WCHAR_WIDTH__ 32
1991// ARM-BE:#define __WINT_TYPE__ int
1992// ARM-BE:#define __WINT_WIDTH__ 32
1993// ARM-BE:#define __arm 1
1994// ARM-BE:#define __arm__ 1
1995
James Y Knightc97efa42016-02-11 16:51:29 +00001996// 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 +00001997//
Christian Pirkerf01cd6f2014-03-28 14:40:46 +00001998// ARMEABISOFTFP-NOT:#define _LP64
Anton Korobeynikove6f74092012-09-08 08:45:10 +00001999// ARMEABISOFTFP:#define __APCS_32__ 1
Christian Pirkerf01cd6f2014-03-28 14:40:46 +00002000// ARMEABISOFTFP-NOT:#define __ARMEB__ 1
Anton Korobeynikove6f74092012-09-08 08:45:10 +00002001// ARMEABISOFTFP:#define __ARMEL__ 1
Renato Goline84b0002015-10-08 16:43:26 +00002002// ARMEABISOFTFP:#define __ARM_ARCH 4
2003// ARMEABISOFTFP:#define __ARM_ARCH_4T__ 1
Christian Pirkerf01cd6f2014-03-28 14:40:46 +00002004// ARMEABISOFTFP-NOT:#define __ARM_BIG_ENDIAN 1
Anton Korobeynikove6f74092012-09-08 08:45:10 +00002005// ARMEABISOFTFP:#define __ARM_EABI__ 1
2006// ARMEABISOFTFP:#define __ARM_PCS 1
2007// ARMEABISOFTFP-NOT:#define __ARM_PCS_VFP 1
Tim Northovera6a19f12015-02-06 01:25:07 +00002008// ARMEABISOFTFP:#define __BIGGEST_ALIGNMENT__ 8
Anton Korobeynikove6f74092012-09-08 08:45:10 +00002009// ARMEABISOFTFP:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
2010// ARMEABISOFTFP:#define __CHAR16_TYPE__ unsigned short
2011// ARMEABISOFTFP:#define __CHAR32_TYPE__ unsigned int
2012// ARMEABISOFTFP:#define __CHAR_BIT__ 8
2013// ARMEABISOFTFP:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
2014// ARMEABISOFTFP:#define __DBL_DIG__ 15
2015// ARMEABISOFTFP:#define __DBL_EPSILON__ 2.2204460492503131e-16
2016// ARMEABISOFTFP:#define __DBL_HAS_DENORM__ 1
2017// ARMEABISOFTFP:#define __DBL_HAS_INFINITY__ 1
2018// ARMEABISOFTFP:#define __DBL_HAS_QUIET_NAN__ 1
2019// ARMEABISOFTFP:#define __DBL_MANT_DIG__ 53
2020// ARMEABISOFTFP:#define __DBL_MAX_10_EXP__ 308
2021// ARMEABISOFTFP:#define __DBL_MAX_EXP__ 1024
2022// ARMEABISOFTFP:#define __DBL_MAX__ 1.7976931348623157e+308
2023// ARMEABISOFTFP:#define __DBL_MIN_10_EXP__ (-307)
2024// ARMEABISOFTFP:#define __DBL_MIN_EXP__ (-1021)
2025// ARMEABISOFTFP:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00002026// ARMEABISOFTFP:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Anton Korobeynikove6f74092012-09-08 08:45:10 +00002027// ARMEABISOFTFP:#define __FLT_DENORM_MIN__ 1.40129846e-45F
2028// ARMEABISOFTFP:#define __FLT_DIG__ 6
2029// ARMEABISOFTFP:#define __FLT_EPSILON__ 1.19209290e-7F
2030// ARMEABISOFTFP:#define __FLT_EVAL_METHOD__ 0
2031// ARMEABISOFTFP:#define __FLT_HAS_DENORM__ 1
2032// ARMEABISOFTFP:#define __FLT_HAS_INFINITY__ 1
2033// ARMEABISOFTFP:#define __FLT_HAS_QUIET_NAN__ 1
2034// ARMEABISOFTFP:#define __FLT_MANT_DIG__ 24
2035// ARMEABISOFTFP:#define __FLT_MAX_10_EXP__ 38
2036// ARMEABISOFTFP:#define __FLT_MAX_EXP__ 128
2037// ARMEABISOFTFP:#define __FLT_MAX__ 3.40282347e+38F
2038// ARMEABISOFTFP:#define __FLT_MIN_10_EXP__ (-37)
2039// ARMEABISOFTFP:#define __FLT_MIN_EXP__ (-125)
2040// ARMEABISOFTFP:#define __FLT_MIN__ 1.17549435e-38F
2041// ARMEABISOFTFP:#define __FLT_RADIX__ 2
James Y Knightc97efa42016-02-11 16:51:29 +00002042// ARMEABISOFTFP:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002043// ARMEABISOFTFP:#define __INT16_FMTd__ "hd"
2044// ARMEABISOFTFP:#define __INT16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00002045// ARMEABISOFTFP:#define __INT16_MAX__ 32767
Anton Korobeynikove6f74092012-09-08 08:45:10 +00002046// ARMEABISOFTFP:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +00002047// ARMEABISOFTFP:#define __INT32_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002048// ARMEABISOFTFP:#define __INT32_FMTd__ "d"
2049// ARMEABISOFTFP:#define __INT32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00002050// ARMEABISOFTFP:#define __INT32_MAX__ 2147483647
Anton Korobeynikove6f74092012-09-08 08:45:10 +00002051// ARMEABISOFTFP:#define __INT32_TYPE__ int
2052// ARMEABISOFTFP:#define __INT64_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002053// ARMEABISOFTFP:#define __INT64_FMTd__ "lld"
2054// ARMEABISOFTFP:#define __INT64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00002055// ARMEABISOFTFP:#define __INT64_MAX__ 9223372036854775807LL
Anton Korobeynikove6f74092012-09-08 08:45:10 +00002056// ARMEABISOFTFP:#define __INT64_TYPE__ long long int
James Y Knightc97efa42016-02-11 16:51:29 +00002057// ARMEABISOFTFP:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002058// ARMEABISOFTFP:#define __INT8_FMTd__ "hhd"
2059// ARMEABISOFTFP:#define __INT8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00002060// ARMEABISOFTFP:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00002061// ARMEABISOFTFP:#define __INT8_TYPE__ signed char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00002062// ARMEABISOFTFP:#define __INTMAX_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002063// ARMEABISOFTFP:#define __INTMAX_FMTd__ "lld"
2064// ARMEABISOFTFP:#define __INTMAX_FMTi__ "lli"
Anton Korobeynikove6f74092012-09-08 08:45:10 +00002065// ARMEABISOFTFP:#define __INTMAX_MAX__ 9223372036854775807LL
2066// ARMEABISOFTFP:#define __INTMAX_TYPE__ long long int
2067// ARMEABISOFTFP:#define __INTMAX_WIDTH__ 64
Saleem Abdulrasool8d799f82017-10-18 00:00:50 +00002068// ARMEABISOFTFP:#define __INTPTR_FMTd__ "d"
2069// ARMEABISOFTFP:#define __INTPTR_FMTi__ "i"
2070// ARMEABISOFTFP:#define __INTPTR_MAX__ 2147483647
2071// ARMEABISOFTFP:#define __INTPTR_TYPE__ int
Anton Korobeynikove6f74092012-09-08 08:45:10 +00002072// ARMEABISOFTFP:#define __INTPTR_WIDTH__ 32
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002073// ARMEABISOFTFP:#define __INT_FAST16_FMTd__ "hd"
2074// ARMEABISOFTFP:#define __INT_FAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00002075// ARMEABISOFTFP:#define __INT_FAST16_MAX__ 32767
2076// ARMEABISOFTFP:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002077// ARMEABISOFTFP:#define __INT_FAST32_FMTd__ "d"
2078// ARMEABISOFTFP:#define __INT_FAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00002079// ARMEABISOFTFP:#define __INT_FAST32_MAX__ 2147483647
2080// ARMEABISOFTFP:#define __INT_FAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002081// ARMEABISOFTFP:#define __INT_FAST64_FMTd__ "lld"
2082// ARMEABISOFTFP:#define __INT_FAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00002083// ARMEABISOFTFP:#define __INT_FAST64_MAX__ 9223372036854775807LL
2084// ARMEABISOFTFP:#define __INT_FAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002085// ARMEABISOFTFP:#define __INT_FAST8_FMTd__ "hhd"
2086// ARMEABISOFTFP:#define __INT_FAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00002087// ARMEABISOFTFP:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00002088// ARMEABISOFTFP:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002089// ARMEABISOFTFP:#define __INT_LEAST16_FMTd__ "hd"
2090// ARMEABISOFTFP:#define __INT_LEAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00002091// ARMEABISOFTFP:#define __INT_LEAST16_MAX__ 32767
2092// ARMEABISOFTFP:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002093// ARMEABISOFTFP:#define __INT_LEAST32_FMTd__ "d"
2094// ARMEABISOFTFP:#define __INT_LEAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00002095// ARMEABISOFTFP:#define __INT_LEAST32_MAX__ 2147483647
2096// ARMEABISOFTFP:#define __INT_LEAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002097// ARMEABISOFTFP:#define __INT_LEAST64_FMTd__ "lld"
2098// ARMEABISOFTFP:#define __INT_LEAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00002099// ARMEABISOFTFP:#define __INT_LEAST64_MAX__ 9223372036854775807LL
2100// ARMEABISOFTFP:#define __INT_LEAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002101// ARMEABISOFTFP:#define __INT_LEAST8_FMTd__ "hhd"
2102// ARMEABISOFTFP:#define __INT_LEAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00002103// ARMEABISOFTFP:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00002104// ARMEABISOFTFP:#define __INT_LEAST8_TYPE__ signed char
Anton Korobeynikove6f74092012-09-08 08:45:10 +00002105// ARMEABISOFTFP:#define __INT_MAX__ 2147483647
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00002106// ARMEABISOFTFP:#define __LDBL_DENORM_MIN__ 4.9406564584124654e-324L
Anton Korobeynikove6f74092012-09-08 08:45:10 +00002107// ARMEABISOFTFP:#define __LDBL_DIG__ 15
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00002108// ARMEABISOFTFP:#define __LDBL_EPSILON__ 2.2204460492503131e-16L
Anton Korobeynikove6f74092012-09-08 08:45:10 +00002109// ARMEABISOFTFP:#define __LDBL_HAS_DENORM__ 1
2110// ARMEABISOFTFP:#define __LDBL_HAS_INFINITY__ 1
2111// ARMEABISOFTFP:#define __LDBL_HAS_QUIET_NAN__ 1
2112// ARMEABISOFTFP:#define __LDBL_MANT_DIG__ 53
2113// ARMEABISOFTFP:#define __LDBL_MAX_10_EXP__ 308
2114// ARMEABISOFTFP:#define __LDBL_MAX_EXP__ 1024
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00002115// ARMEABISOFTFP:#define __LDBL_MAX__ 1.7976931348623157e+308L
Anton Korobeynikove6f74092012-09-08 08:45:10 +00002116// ARMEABISOFTFP:#define __LDBL_MIN_10_EXP__ (-307)
2117// ARMEABISOFTFP:#define __LDBL_MIN_EXP__ (-1021)
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00002118// ARMEABISOFTFP:#define __LDBL_MIN__ 2.2250738585072014e-308L
Anton Korobeynikove6f74092012-09-08 08:45:10 +00002119// ARMEABISOFTFP:#define __LITTLE_ENDIAN__ 1
2120// ARMEABISOFTFP:#define __LONG_LONG_MAX__ 9223372036854775807LL
2121// ARMEABISOFTFP:#define __LONG_MAX__ 2147483647L
2122// ARMEABISOFTFP-NOT:#define __LP64__
2123// ARMEABISOFTFP:#define __POINTER_WIDTH__ 32
2124// ARMEABISOFTFP:#define __PTRDIFF_TYPE__ int
2125// ARMEABISOFTFP:#define __PTRDIFF_WIDTH__ 32
2126// ARMEABISOFTFP:#define __REGISTER_PREFIX__
2127// ARMEABISOFTFP:#define __SCHAR_MAX__ 127
2128// ARMEABISOFTFP:#define __SHRT_MAX__ 32767
Joerg Sonnenbergerb3a49692014-07-17 18:31:20 +00002129// ARMEABISOFTFP:#define __SIG_ATOMIC_MAX__ 2147483647
Anton Korobeynikove6f74092012-09-08 08:45:10 +00002130// ARMEABISOFTFP:#define __SIG_ATOMIC_WIDTH__ 32
2131// ARMEABISOFTFP:#define __SIZEOF_DOUBLE__ 8
2132// ARMEABISOFTFP:#define __SIZEOF_FLOAT__ 4
2133// ARMEABISOFTFP:#define __SIZEOF_INT__ 4
2134// ARMEABISOFTFP:#define __SIZEOF_LONG_DOUBLE__ 8
2135// ARMEABISOFTFP:#define __SIZEOF_LONG_LONG__ 8
2136// ARMEABISOFTFP:#define __SIZEOF_LONG__ 4
2137// ARMEABISOFTFP:#define __SIZEOF_POINTER__ 4
2138// ARMEABISOFTFP:#define __SIZEOF_PTRDIFF_T__ 4
2139// ARMEABISOFTFP:#define __SIZEOF_SHORT__ 2
2140// ARMEABISOFTFP:#define __SIZEOF_SIZE_T__ 4
2141// ARMEABISOFTFP:#define __SIZEOF_WCHAR_T__ 4
2142// ARMEABISOFTFP:#define __SIZEOF_WINT_T__ 4
Evgeniy Stepanovc3c725a2013-03-28 08:36:54 +00002143// ARMEABISOFTFP:#define __SIZE_MAX__ 4294967295U
Anton Korobeynikove6f74092012-09-08 08:45:10 +00002144// ARMEABISOFTFP:#define __SIZE_TYPE__ unsigned int
2145// ARMEABISOFTFP:#define __SIZE_WIDTH__ 32
2146// ARMEABISOFTFP:#define __SOFTFP__ 1
James Y Knightc97efa42016-02-11 16:51:29 +00002147// ARMEABISOFTFP:#define __UINT16_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00002148// ARMEABISOFTFP:#define __UINT16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00002149// ARMEABISOFTFP:#define __UINT16_TYPE__ unsigned short
2150// ARMEABISOFTFP:#define __UINT32_C_SUFFIX__ U
2151// ARMEABISOFTFP:#define __UINT32_MAX__ 4294967295U
2152// ARMEABISOFTFP:#define __UINT32_TYPE__ unsigned int
2153// ARMEABISOFTFP:#define __UINT64_C_SUFFIX__ ULL
2154// ARMEABISOFTFP:#define __UINT64_MAX__ 18446744073709551615ULL
2155// ARMEABISOFTFP:#define __UINT64_TYPE__ long long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00002156// ARMEABISOFTFP:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00002157// ARMEABISOFTFP:#define __UINT8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00002158// ARMEABISOFTFP:#define __UINT8_TYPE__ unsigned char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00002159// ARMEABISOFTFP:#define __UINTMAX_C_SUFFIX__ ULL
JF Bastienab8d0a02014-06-25 01:31:33 +00002160// ARMEABISOFTFP:#define __UINTMAX_MAX__ 18446744073709551615ULL
Anton Korobeynikove6f74092012-09-08 08:45:10 +00002161// ARMEABISOFTFP:#define __UINTMAX_TYPE__ long long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00002162// ARMEABISOFTFP:#define __UINTMAX_WIDTH__ 64
Saleem Abdulrasool8d799f82017-10-18 00:00:50 +00002163// ARMEABISOFTFP:#define __UINTPTR_MAX__ 4294967295U
2164// ARMEABISOFTFP:#define __UINTPTR_TYPE__ unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00002165// ARMEABISOFTFP:#define __UINTPTR_WIDTH__ 32
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00002166// ARMEABISOFTFP:#define __UINT_FAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00002167// ARMEABISOFTFP:#define __UINT_FAST16_TYPE__ unsigned short
2168// ARMEABISOFTFP:#define __UINT_FAST32_MAX__ 4294967295U
2169// ARMEABISOFTFP:#define __UINT_FAST32_TYPE__ unsigned int
2170// ARMEABISOFTFP:#define __UINT_FAST64_MAX__ 18446744073709551615ULL
2171// ARMEABISOFTFP:#define __UINT_FAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00002172// ARMEABISOFTFP:#define __UINT_FAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00002173// ARMEABISOFTFP:#define __UINT_FAST8_TYPE__ unsigned char
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00002174// ARMEABISOFTFP:#define __UINT_LEAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00002175// ARMEABISOFTFP:#define __UINT_LEAST16_TYPE__ unsigned short
2176// ARMEABISOFTFP:#define __UINT_LEAST32_MAX__ 4294967295U
2177// ARMEABISOFTFP:#define __UINT_LEAST32_TYPE__ unsigned int
2178// ARMEABISOFTFP:#define __UINT_LEAST64_MAX__ 18446744073709551615ULL
2179// ARMEABISOFTFP:#define __UINT_LEAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00002180// ARMEABISOFTFP:#define __UINT_LEAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00002181// ARMEABISOFTFP:#define __UINT_LEAST8_TYPE__ unsigned char
Anton Korobeynikove6f74092012-09-08 08:45:10 +00002182// ARMEABISOFTFP:#define __USER_LABEL_PREFIX__
2183// ARMEABISOFTFP:#define __WCHAR_MAX__ 4294967295U
2184// ARMEABISOFTFP:#define __WCHAR_TYPE__ unsigned int
2185// ARMEABISOFTFP:#define __WCHAR_WIDTH__ 32
2186// ARMEABISOFTFP:#define __WINT_TYPE__ unsigned int
2187// ARMEABISOFTFP:#define __WINT_WIDTH__ 32
2188// ARMEABISOFTFP:#define __arm 1
2189// ARMEABISOFTFP:#define __arm__ 1
2190
James Y Knightc97efa42016-02-11 16:51:29 +00002191// 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 +00002192//
Christian Pirkerf01cd6f2014-03-28 14:40:46 +00002193// ARMEABIHARDFP-NOT:#define _LP64
Anton Korobeynikove6f74092012-09-08 08:45:10 +00002194// ARMEABIHARDFP:#define __APCS_32__ 1
Christian Pirkerf01cd6f2014-03-28 14:40:46 +00002195// ARMEABIHARDFP-NOT:#define __ARMEB__ 1
Anton Korobeynikove6f74092012-09-08 08:45:10 +00002196// ARMEABIHARDFP:#define __ARMEL__ 1
Renato Goline84b0002015-10-08 16:43:26 +00002197// ARMEABIHARDFP:#define __ARM_ARCH 4
2198// ARMEABIHARDFP:#define __ARM_ARCH_4T__ 1
Christian Pirkerf01cd6f2014-03-28 14:40:46 +00002199// ARMEABIHARDFP-NOT:#define __ARM_BIG_ENDIAN 1
Anton Korobeynikove6f74092012-09-08 08:45:10 +00002200// ARMEABIHARDFP:#define __ARM_EABI__ 1
2201// ARMEABIHARDFP:#define __ARM_PCS 1
2202// ARMEABIHARDFP:#define __ARM_PCS_VFP 1
Tim Northovera6a19f12015-02-06 01:25:07 +00002203// ARMEABIHARDFP:#define __BIGGEST_ALIGNMENT__ 8
Anton Korobeynikove6f74092012-09-08 08:45:10 +00002204// ARMEABIHARDFP:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
2205// ARMEABIHARDFP:#define __CHAR16_TYPE__ unsigned short
2206// ARMEABIHARDFP:#define __CHAR32_TYPE__ unsigned int
2207// ARMEABIHARDFP:#define __CHAR_BIT__ 8
2208// ARMEABIHARDFP:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
2209// ARMEABIHARDFP:#define __DBL_DIG__ 15
2210// ARMEABIHARDFP:#define __DBL_EPSILON__ 2.2204460492503131e-16
2211// ARMEABIHARDFP:#define __DBL_HAS_DENORM__ 1
2212// ARMEABIHARDFP:#define __DBL_HAS_INFINITY__ 1
2213// ARMEABIHARDFP:#define __DBL_HAS_QUIET_NAN__ 1
2214// ARMEABIHARDFP:#define __DBL_MANT_DIG__ 53
2215// ARMEABIHARDFP:#define __DBL_MAX_10_EXP__ 308
2216// ARMEABIHARDFP:#define __DBL_MAX_EXP__ 1024
2217// ARMEABIHARDFP:#define __DBL_MAX__ 1.7976931348623157e+308
2218// ARMEABIHARDFP:#define __DBL_MIN_10_EXP__ (-307)
2219// ARMEABIHARDFP:#define __DBL_MIN_EXP__ (-1021)
2220// ARMEABIHARDFP:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00002221// ARMEABIHARDFP:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Anton Korobeynikove6f74092012-09-08 08:45:10 +00002222// ARMEABIHARDFP:#define __FLT_DENORM_MIN__ 1.40129846e-45F
2223// ARMEABIHARDFP:#define __FLT_DIG__ 6
2224// ARMEABIHARDFP:#define __FLT_EPSILON__ 1.19209290e-7F
2225// ARMEABIHARDFP:#define __FLT_EVAL_METHOD__ 0
2226// ARMEABIHARDFP:#define __FLT_HAS_DENORM__ 1
2227// ARMEABIHARDFP:#define __FLT_HAS_INFINITY__ 1
2228// ARMEABIHARDFP:#define __FLT_HAS_QUIET_NAN__ 1
2229// ARMEABIHARDFP:#define __FLT_MANT_DIG__ 24
2230// ARMEABIHARDFP:#define __FLT_MAX_10_EXP__ 38
2231// ARMEABIHARDFP:#define __FLT_MAX_EXP__ 128
2232// ARMEABIHARDFP:#define __FLT_MAX__ 3.40282347e+38F
2233// ARMEABIHARDFP:#define __FLT_MIN_10_EXP__ (-37)
2234// ARMEABIHARDFP:#define __FLT_MIN_EXP__ (-125)
2235// ARMEABIHARDFP:#define __FLT_MIN__ 1.17549435e-38F
2236// ARMEABIHARDFP:#define __FLT_RADIX__ 2
James Y Knightc97efa42016-02-11 16:51:29 +00002237// ARMEABIHARDFP:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002238// ARMEABIHARDFP:#define __INT16_FMTd__ "hd"
2239// ARMEABIHARDFP:#define __INT16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00002240// ARMEABIHARDFP:#define __INT16_MAX__ 32767
Anton Korobeynikove6f74092012-09-08 08:45:10 +00002241// ARMEABIHARDFP:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +00002242// ARMEABIHARDFP:#define __INT32_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002243// ARMEABIHARDFP:#define __INT32_FMTd__ "d"
2244// ARMEABIHARDFP:#define __INT32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00002245// ARMEABIHARDFP:#define __INT32_MAX__ 2147483647
Anton Korobeynikove6f74092012-09-08 08:45:10 +00002246// ARMEABIHARDFP:#define __INT32_TYPE__ int
2247// ARMEABIHARDFP:#define __INT64_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002248// ARMEABIHARDFP:#define __INT64_FMTd__ "lld"
2249// ARMEABIHARDFP:#define __INT64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00002250// ARMEABIHARDFP:#define __INT64_MAX__ 9223372036854775807LL
Anton Korobeynikove6f74092012-09-08 08:45:10 +00002251// ARMEABIHARDFP:#define __INT64_TYPE__ long long int
James Y Knightc97efa42016-02-11 16:51:29 +00002252// ARMEABIHARDFP:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002253// ARMEABIHARDFP:#define __INT8_FMTd__ "hhd"
2254// ARMEABIHARDFP:#define __INT8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00002255// ARMEABIHARDFP:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00002256// ARMEABIHARDFP:#define __INT8_TYPE__ signed char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00002257// ARMEABIHARDFP:#define __INTMAX_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002258// ARMEABIHARDFP:#define __INTMAX_FMTd__ "lld"
2259// ARMEABIHARDFP:#define __INTMAX_FMTi__ "lli"
Anton Korobeynikove6f74092012-09-08 08:45:10 +00002260// ARMEABIHARDFP:#define __INTMAX_MAX__ 9223372036854775807LL
2261// ARMEABIHARDFP:#define __INTMAX_TYPE__ long long int
2262// ARMEABIHARDFP:#define __INTMAX_WIDTH__ 64
Saleem Abdulrasool8d799f82017-10-18 00:00:50 +00002263// ARMEABIHARDFP:#define __INTPTR_FMTd__ "d"
2264// ARMEABIHARDFP:#define __INTPTR_FMTi__ "i"
2265// ARMEABIHARDFP:#define __INTPTR_MAX__ 2147483647
2266// ARMEABIHARDFP:#define __INTPTR_TYPE__ int
Anton Korobeynikove6f74092012-09-08 08:45:10 +00002267// ARMEABIHARDFP:#define __INTPTR_WIDTH__ 32
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002268// ARMEABIHARDFP:#define __INT_FAST16_FMTd__ "hd"
2269// ARMEABIHARDFP:#define __INT_FAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00002270// ARMEABIHARDFP:#define __INT_FAST16_MAX__ 32767
2271// ARMEABIHARDFP:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002272// ARMEABIHARDFP:#define __INT_FAST32_FMTd__ "d"
2273// ARMEABIHARDFP:#define __INT_FAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00002274// ARMEABIHARDFP:#define __INT_FAST32_MAX__ 2147483647
2275// ARMEABIHARDFP:#define __INT_FAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002276// ARMEABIHARDFP:#define __INT_FAST64_FMTd__ "lld"
2277// ARMEABIHARDFP:#define __INT_FAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00002278// ARMEABIHARDFP:#define __INT_FAST64_MAX__ 9223372036854775807LL
2279// ARMEABIHARDFP:#define __INT_FAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002280// ARMEABIHARDFP:#define __INT_FAST8_FMTd__ "hhd"
2281// ARMEABIHARDFP:#define __INT_FAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00002282// ARMEABIHARDFP:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00002283// ARMEABIHARDFP:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002284// ARMEABIHARDFP:#define __INT_LEAST16_FMTd__ "hd"
2285// ARMEABIHARDFP:#define __INT_LEAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00002286// ARMEABIHARDFP:#define __INT_LEAST16_MAX__ 32767
2287// ARMEABIHARDFP:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002288// ARMEABIHARDFP:#define __INT_LEAST32_FMTd__ "d"
2289// ARMEABIHARDFP:#define __INT_LEAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00002290// ARMEABIHARDFP:#define __INT_LEAST32_MAX__ 2147483647
2291// ARMEABIHARDFP:#define __INT_LEAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002292// ARMEABIHARDFP:#define __INT_LEAST64_FMTd__ "lld"
2293// ARMEABIHARDFP:#define __INT_LEAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00002294// ARMEABIHARDFP:#define __INT_LEAST64_MAX__ 9223372036854775807LL
2295// ARMEABIHARDFP:#define __INT_LEAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002296// ARMEABIHARDFP:#define __INT_LEAST8_FMTd__ "hhd"
2297// ARMEABIHARDFP:#define __INT_LEAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00002298// ARMEABIHARDFP:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00002299// ARMEABIHARDFP:#define __INT_LEAST8_TYPE__ signed char
Anton Korobeynikove6f74092012-09-08 08:45:10 +00002300// ARMEABIHARDFP:#define __INT_MAX__ 2147483647
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00002301// ARMEABIHARDFP:#define __LDBL_DENORM_MIN__ 4.9406564584124654e-324L
Anton Korobeynikove6f74092012-09-08 08:45:10 +00002302// ARMEABIHARDFP:#define __LDBL_DIG__ 15
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00002303// ARMEABIHARDFP:#define __LDBL_EPSILON__ 2.2204460492503131e-16L
Anton Korobeynikove6f74092012-09-08 08:45:10 +00002304// ARMEABIHARDFP:#define __LDBL_HAS_DENORM__ 1
2305// ARMEABIHARDFP:#define __LDBL_HAS_INFINITY__ 1
2306// ARMEABIHARDFP:#define __LDBL_HAS_QUIET_NAN__ 1
2307// ARMEABIHARDFP:#define __LDBL_MANT_DIG__ 53
2308// ARMEABIHARDFP:#define __LDBL_MAX_10_EXP__ 308
2309// ARMEABIHARDFP:#define __LDBL_MAX_EXP__ 1024
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00002310// ARMEABIHARDFP:#define __LDBL_MAX__ 1.7976931348623157e+308L
Anton Korobeynikove6f74092012-09-08 08:45:10 +00002311// ARMEABIHARDFP:#define __LDBL_MIN_10_EXP__ (-307)
2312// ARMEABIHARDFP:#define __LDBL_MIN_EXP__ (-1021)
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00002313// ARMEABIHARDFP:#define __LDBL_MIN__ 2.2250738585072014e-308L
Anton Korobeynikove6f74092012-09-08 08:45:10 +00002314// ARMEABIHARDFP:#define __LITTLE_ENDIAN__ 1
2315// ARMEABIHARDFP:#define __LONG_LONG_MAX__ 9223372036854775807LL
2316// ARMEABIHARDFP:#define __LONG_MAX__ 2147483647L
2317// ARMEABIHARDFP-NOT:#define __LP64__
2318// ARMEABIHARDFP:#define __POINTER_WIDTH__ 32
2319// ARMEABIHARDFP:#define __PTRDIFF_TYPE__ int
2320// ARMEABIHARDFP:#define __PTRDIFF_WIDTH__ 32
2321// ARMEABIHARDFP:#define __REGISTER_PREFIX__
2322// ARMEABIHARDFP:#define __SCHAR_MAX__ 127
2323// ARMEABIHARDFP:#define __SHRT_MAX__ 32767
Joerg Sonnenbergerb3a49692014-07-17 18:31:20 +00002324// ARMEABIHARDFP:#define __SIG_ATOMIC_MAX__ 2147483647
Anton Korobeynikove6f74092012-09-08 08:45:10 +00002325// ARMEABIHARDFP:#define __SIG_ATOMIC_WIDTH__ 32
2326// ARMEABIHARDFP:#define __SIZEOF_DOUBLE__ 8
2327// ARMEABIHARDFP:#define __SIZEOF_FLOAT__ 4
2328// ARMEABIHARDFP:#define __SIZEOF_INT__ 4
2329// ARMEABIHARDFP:#define __SIZEOF_LONG_DOUBLE__ 8
2330// ARMEABIHARDFP:#define __SIZEOF_LONG_LONG__ 8
2331// ARMEABIHARDFP:#define __SIZEOF_LONG__ 4
2332// ARMEABIHARDFP:#define __SIZEOF_POINTER__ 4
2333// ARMEABIHARDFP:#define __SIZEOF_PTRDIFF_T__ 4
2334// ARMEABIHARDFP:#define __SIZEOF_SHORT__ 2
2335// ARMEABIHARDFP:#define __SIZEOF_SIZE_T__ 4
2336// ARMEABIHARDFP:#define __SIZEOF_WCHAR_T__ 4
2337// ARMEABIHARDFP:#define __SIZEOF_WINT_T__ 4
Evgeniy Stepanovc3c725a2013-03-28 08:36:54 +00002338// ARMEABIHARDFP:#define __SIZE_MAX__ 4294967295U
Anton Korobeynikove6f74092012-09-08 08:45:10 +00002339// ARMEABIHARDFP:#define __SIZE_TYPE__ unsigned int
2340// ARMEABIHARDFP:#define __SIZE_WIDTH__ 32
2341// ARMEABIHARDFP-NOT:#define __SOFTFP__ 1
James Y Knightc97efa42016-02-11 16:51:29 +00002342// ARMEABIHARDFP:#define __UINT16_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00002343// ARMEABIHARDFP:#define __UINT16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00002344// ARMEABIHARDFP:#define __UINT16_TYPE__ unsigned short
2345// ARMEABIHARDFP:#define __UINT32_C_SUFFIX__ U
2346// ARMEABIHARDFP:#define __UINT32_MAX__ 4294967295U
2347// ARMEABIHARDFP:#define __UINT32_TYPE__ unsigned int
2348// ARMEABIHARDFP:#define __UINT64_C_SUFFIX__ ULL
2349// ARMEABIHARDFP:#define __UINT64_MAX__ 18446744073709551615ULL
2350// ARMEABIHARDFP:#define __UINT64_TYPE__ long long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00002351// ARMEABIHARDFP:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00002352// ARMEABIHARDFP:#define __UINT8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00002353// ARMEABIHARDFP:#define __UINT8_TYPE__ unsigned char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00002354// ARMEABIHARDFP:#define __UINTMAX_C_SUFFIX__ ULL
JF Bastienab8d0a02014-06-25 01:31:33 +00002355// ARMEABIHARDFP:#define __UINTMAX_MAX__ 18446744073709551615ULL
Anton Korobeynikove6f74092012-09-08 08:45:10 +00002356// ARMEABIHARDFP:#define __UINTMAX_TYPE__ long long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00002357// ARMEABIHARDFP:#define __UINTMAX_WIDTH__ 64
Saleem Abdulrasool8d799f82017-10-18 00:00:50 +00002358// ARMEABIHARDFP:#define __UINTPTR_MAX__ 4294967295U
2359// ARMEABIHARDFP:#define __UINTPTR_TYPE__ unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00002360// ARMEABIHARDFP:#define __UINTPTR_WIDTH__ 32
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00002361// ARMEABIHARDFP:#define __UINT_FAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00002362// ARMEABIHARDFP:#define __UINT_FAST16_TYPE__ unsigned short
2363// ARMEABIHARDFP:#define __UINT_FAST32_MAX__ 4294967295U
2364// ARMEABIHARDFP:#define __UINT_FAST32_TYPE__ unsigned int
2365// ARMEABIHARDFP:#define __UINT_FAST64_MAX__ 18446744073709551615ULL
2366// ARMEABIHARDFP:#define __UINT_FAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00002367// ARMEABIHARDFP:#define __UINT_FAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00002368// ARMEABIHARDFP:#define __UINT_FAST8_TYPE__ unsigned char
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00002369// ARMEABIHARDFP:#define __UINT_LEAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00002370// ARMEABIHARDFP:#define __UINT_LEAST16_TYPE__ unsigned short
2371// ARMEABIHARDFP:#define __UINT_LEAST32_MAX__ 4294967295U
2372// ARMEABIHARDFP:#define __UINT_LEAST32_TYPE__ unsigned int
2373// ARMEABIHARDFP:#define __UINT_LEAST64_MAX__ 18446744073709551615ULL
2374// ARMEABIHARDFP:#define __UINT_LEAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00002375// ARMEABIHARDFP:#define __UINT_LEAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00002376// ARMEABIHARDFP:#define __UINT_LEAST8_TYPE__ unsigned char
Anton Korobeynikove6f74092012-09-08 08:45:10 +00002377// ARMEABIHARDFP:#define __USER_LABEL_PREFIX__
2378// ARMEABIHARDFP:#define __WCHAR_MAX__ 4294967295U
2379// ARMEABIHARDFP:#define __WCHAR_TYPE__ unsigned int
2380// ARMEABIHARDFP:#define __WCHAR_WIDTH__ 32
2381// ARMEABIHARDFP:#define __WINT_TYPE__ unsigned int
2382// ARMEABIHARDFP:#define __WINT_WIDTH__ 32
2383// ARMEABIHARDFP:#define __arm 1
2384// ARMEABIHARDFP:#define __arm__ 1
2385
Ed Schoutenc6d1a732016-09-05 18:38:34 +00002386// RUN: %clang_cc1 -E -dM -ffreestanding -triple=armv6-unknown-cloudabi-eabihf < /dev/null | FileCheck -match-full-lines -check-prefix ARMV6-CLOUDABI %s
2387//
2388// ARMV6-CLOUDABI:#define __CloudABI__ 1
2389// ARMV6-CLOUDABI:#define __arm__ 1
2390
Joerg Sonnenberger66837642017-07-11 15:49:45 +00002391// RUN: %clang -E -dM -ffreestanding -target arm-netbsd-eabi %s -o - | FileCheck -match-full-lines -check-prefix ARM-NETBSD %s
2392
Joerg Sonnenberger4645b442014-05-13 18:58:00 +00002393// ARM-NETBSD-NOT:#define _LP64
2394// ARM-NETBSD:#define __APCS_32__ 1
2395// ARM-NETBSD-NOT:#define __ARMEB__ 1
2396// ARM-NETBSD:#define __ARMEL__ 1
Joerg Sonnenberger66837642017-07-11 15:49:45 +00002397// ARM-NETBSD:#define __ARM_ARCH_5TE__ 1
Joerg Sonnenbergercc1edb52014-05-13 18:58:36 +00002398// ARM-NETBSD:#define __ARM_DWARF_EH__ 1
Joerg Sonnenberger4645b442014-05-13 18:58:00 +00002399// ARM-NETBSD:#define __ARM_EABI__ 1
2400// ARM-NETBSD-NOT:#define __ARM_BIG_ENDIAN 1
Tim Northovera6a19f12015-02-06 01:25:07 +00002401// ARM-NETBSD:#define __BIGGEST_ALIGNMENT__ 8
Joerg Sonnenberger4645b442014-05-13 18:58:00 +00002402// ARM-NETBSD:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
2403// ARM-NETBSD:#define __CHAR16_TYPE__ unsigned short
2404// ARM-NETBSD:#define __CHAR32_TYPE__ unsigned int
2405// ARM-NETBSD:#define __CHAR_BIT__ 8
2406// ARM-NETBSD:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
2407// ARM-NETBSD:#define __DBL_DIG__ 15
2408// ARM-NETBSD:#define __DBL_EPSILON__ 2.2204460492503131e-16
2409// ARM-NETBSD:#define __DBL_HAS_DENORM__ 1
2410// ARM-NETBSD:#define __DBL_HAS_INFINITY__ 1
2411// ARM-NETBSD:#define __DBL_HAS_QUIET_NAN__ 1
2412// ARM-NETBSD:#define __DBL_MANT_DIG__ 53
2413// ARM-NETBSD:#define __DBL_MAX_10_EXP__ 308
2414// ARM-NETBSD:#define __DBL_MAX_EXP__ 1024
2415// ARM-NETBSD:#define __DBL_MAX__ 1.7976931348623157e+308
2416// ARM-NETBSD:#define __DBL_MIN_10_EXP__ (-307)
2417// ARM-NETBSD:#define __DBL_MIN_EXP__ (-1021)
2418// ARM-NETBSD:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00002419// ARM-NETBSD:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Joerg Sonnenberger4645b442014-05-13 18:58:00 +00002420// ARM-NETBSD:#define __FLT_DENORM_MIN__ 1.40129846e-45F
2421// ARM-NETBSD:#define __FLT_DIG__ 6
2422// ARM-NETBSD:#define __FLT_EPSILON__ 1.19209290e-7F
2423// ARM-NETBSD:#define __FLT_EVAL_METHOD__ 0
2424// ARM-NETBSD:#define __FLT_HAS_DENORM__ 1
2425// ARM-NETBSD:#define __FLT_HAS_INFINITY__ 1
2426// ARM-NETBSD:#define __FLT_HAS_QUIET_NAN__ 1
2427// ARM-NETBSD:#define __FLT_MANT_DIG__ 24
2428// ARM-NETBSD:#define __FLT_MAX_10_EXP__ 38
2429// ARM-NETBSD:#define __FLT_MAX_EXP__ 128
2430// ARM-NETBSD:#define __FLT_MAX__ 3.40282347e+38F
2431// ARM-NETBSD:#define __FLT_MIN_10_EXP__ (-37)
2432// ARM-NETBSD:#define __FLT_MIN_EXP__ (-125)
2433// ARM-NETBSD:#define __FLT_MIN__ 1.17549435e-38F
2434// ARM-NETBSD:#define __FLT_RADIX__ 2
James Y Knightc97efa42016-02-11 16:51:29 +00002435// ARM-NETBSD:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002436// ARM-NETBSD:#define __INT16_FMTd__ "hd"
2437// ARM-NETBSD:#define __INT16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00002438// ARM-NETBSD:#define __INT16_MAX__ 32767
Joerg Sonnenberger4645b442014-05-13 18:58:00 +00002439// ARM-NETBSD:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +00002440// ARM-NETBSD:#define __INT32_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002441// ARM-NETBSD:#define __INT32_FMTd__ "d"
2442// ARM-NETBSD:#define __INT32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00002443// ARM-NETBSD:#define __INT32_MAX__ 2147483647
Joerg Sonnenberger4645b442014-05-13 18:58:00 +00002444// ARM-NETBSD:#define __INT32_TYPE__ int
2445// ARM-NETBSD:#define __INT64_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002446// ARM-NETBSD:#define __INT64_FMTd__ "lld"
2447// ARM-NETBSD:#define __INT64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00002448// ARM-NETBSD:#define __INT64_MAX__ 9223372036854775807LL
Joerg Sonnenberger4645b442014-05-13 18:58:00 +00002449// ARM-NETBSD:#define __INT64_TYPE__ long long int
James Y Knightc97efa42016-02-11 16:51:29 +00002450// ARM-NETBSD:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002451// ARM-NETBSD:#define __INT8_FMTd__ "hhd"
2452// ARM-NETBSD:#define __INT8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00002453// ARM-NETBSD:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00002454// ARM-NETBSD:#define __INT8_TYPE__ signed char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00002455// ARM-NETBSD:#define __INTMAX_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002456// ARM-NETBSD:#define __INTMAX_FMTd__ "lld"
2457// ARM-NETBSD:#define __INTMAX_FMTi__ "lli"
Joerg Sonnenberger4645b442014-05-13 18:58:00 +00002458// ARM-NETBSD:#define __INTMAX_MAX__ 9223372036854775807LL
2459// ARM-NETBSD:#define __INTMAX_TYPE__ long long int
2460// ARM-NETBSD:#define __INTMAX_WIDTH__ 64
Saleem Abdulrasoole5696582017-10-20 04:11:28 +00002461// ARM-NETBSD:#define __INTPTR_FMTd__ "ld"
2462// ARM-NETBSD:#define __INTPTR_FMTi__ "li"
2463// ARM-NETBSD:#define __INTPTR_MAX__ 2147483647L
2464// ARM-NETBSD:#define __INTPTR_TYPE__ long int
Joerg Sonnenberger4645b442014-05-13 18:58:00 +00002465// ARM-NETBSD:#define __INTPTR_WIDTH__ 32
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002466// ARM-NETBSD:#define __INT_FAST16_FMTd__ "hd"
2467// ARM-NETBSD:#define __INT_FAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00002468// ARM-NETBSD:#define __INT_FAST16_MAX__ 32767
2469// ARM-NETBSD:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002470// ARM-NETBSD:#define __INT_FAST32_FMTd__ "d"
2471// ARM-NETBSD:#define __INT_FAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00002472// ARM-NETBSD:#define __INT_FAST32_MAX__ 2147483647
2473// ARM-NETBSD:#define __INT_FAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002474// ARM-NETBSD:#define __INT_FAST64_FMTd__ "lld"
2475// ARM-NETBSD:#define __INT_FAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00002476// ARM-NETBSD:#define __INT_FAST64_MAX__ 9223372036854775807LL
2477// ARM-NETBSD:#define __INT_FAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002478// ARM-NETBSD:#define __INT_FAST8_FMTd__ "hhd"
2479// ARM-NETBSD:#define __INT_FAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00002480// ARM-NETBSD:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00002481// ARM-NETBSD:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002482// ARM-NETBSD:#define __INT_LEAST16_FMTd__ "hd"
2483// ARM-NETBSD:#define __INT_LEAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00002484// ARM-NETBSD:#define __INT_LEAST16_MAX__ 32767
2485// ARM-NETBSD:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002486// ARM-NETBSD:#define __INT_LEAST32_FMTd__ "d"
2487// ARM-NETBSD:#define __INT_LEAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00002488// ARM-NETBSD:#define __INT_LEAST32_MAX__ 2147483647
2489// ARM-NETBSD:#define __INT_LEAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002490// ARM-NETBSD:#define __INT_LEAST64_FMTd__ "lld"
2491// ARM-NETBSD:#define __INT_LEAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00002492// ARM-NETBSD:#define __INT_LEAST64_MAX__ 9223372036854775807LL
2493// ARM-NETBSD:#define __INT_LEAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002494// ARM-NETBSD:#define __INT_LEAST8_FMTd__ "hhd"
2495// ARM-NETBSD:#define __INT_LEAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00002496// ARM-NETBSD:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00002497// ARM-NETBSD:#define __INT_LEAST8_TYPE__ signed char
Joerg Sonnenberger4645b442014-05-13 18:58:00 +00002498// ARM-NETBSD:#define __INT_MAX__ 2147483647
2499// ARM-NETBSD:#define __LDBL_DENORM_MIN__ 4.9406564584124654e-324L
2500// ARM-NETBSD:#define __LDBL_DIG__ 15
2501// ARM-NETBSD:#define __LDBL_EPSILON__ 2.2204460492503131e-16L
2502// ARM-NETBSD:#define __LDBL_HAS_DENORM__ 1
2503// ARM-NETBSD:#define __LDBL_HAS_INFINITY__ 1
2504// ARM-NETBSD:#define __LDBL_HAS_QUIET_NAN__ 1
2505// ARM-NETBSD:#define __LDBL_MANT_DIG__ 53
2506// ARM-NETBSD:#define __LDBL_MAX_10_EXP__ 308
2507// ARM-NETBSD:#define __LDBL_MAX_EXP__ 1024
2508// ARM-NETBSD:#define __LDBL_MAX__ 1.7976931348623157e+308L
2509// ARM-NETBSD:#define __LDBL_MIN_10_EXP__ (-307)
2510// ARM-NETBSD:#define __LDBL_MIN_EXP__ (-1021)
2511// ARM-NETBSD:#define __LDBL_MIN__ 2.2250738585072014e-308L
2512// ARM-NETBSD:#define __LITTLE_ENDIAN__ 1
2513// ARM-NETBSD:#define __LONG_LONG_MAX__ 9223372036854775807LL
2514// ARM-NETBSD:#define __LONG_MAX__ 2147483647L
2515// ARM-NETBSD-NOT:#define __LP64__
2516// ARM-NETBSD:#define __POINTER_WIDTH__ 32
2517// ARM-NETBSD:#define __PTRDIFF_TYPE__ long int
2518// ARM-NETBSD:#define __PTRDIFF_WIDTH__ 32
2519// ARM-NETBSD:#define __REGISTER_PREFIX__
2520// ARM-NETBSD:#define __SCHAR_MAX__ 127
2521// ARM-NETBSD:#define __SHRT_MAX__ 32767
Joerg Sonnenbergerb3a49692014-07-17 18:31:20 +00002522// ARM-NETBSD:#define __SIG_ATOMIC_MAX__ 2147483647
Joerg Sonnenberger4645b442014-05-13 18:58:00 +00002523// ARM-NETBSD:#define __SIG_ATOMIC_WIDTH__ 32
2524// ARM-NETBSD:#define __SIZEOF_DOUBLE__ 8
2525// ARM-NETBSD:#define __SIZEOF_FLOAT__ 4
2526// ARM-NETBSD:#define __SIZEOF_INT__ 4
2527// ARM-NETBSD:#define __SIZEOF_LONG_DOUBLE__ 8
2528// ARM-NETBSD:#define __SIZEOF_LONG_LONG__ 8
2529// ARM-NETBSD:#define __SIZEOF_LONG__ 4
2530// ARM-NETBSD:#define __SIZEOF_POINTER__ 4
2531// ARM-NETBSD:#define __SIZEOF_PTRDIFF_T__ 4
2532// ARM-NETBSD:#define __SIZEOF_SHORT__ 2
2533// ARM-NETBSD:#define __SIZEOF_SIZE_T__ 4
2534// ARM-NETBSD:#define __SIZEOF_WCHAR_T__ 4
2535// ARM-NETBSD:#define __SIZEOF_WINT_T__ 4
James Y Knightc97efa42016-02-11 16:51:29 +00002536// ARM-NETBSD:#define __SIZE_MAX__ 4294967295UL
Joerg Sonnenberger4645b442014-05-13 18:58:00 +00002537// ARM-NETBSD:#define __SIZE_TYPE__ long unsigned int
2538// ARM-NETBSD:#define __SIZE_WIDTH__ 32
Joerg Sonnenbergere385cfc2017-07-11 15:50:48 +00002539// ARM-NETBSD:#define __SOFTFP__ 1
James Y Knightc97efa42016-02-11 16:51:29 +00002540// ARM-NETBSD:#define __UINT16_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00002541// ARM-NETBSD:#define __UINT16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00002542// ARM-NETBSD:#define __UINT16_TYPE__ unsigned short
2543// ARM-NETBSD:#define __UINT32_C_SUFFIX__ U
2544// ARM-NETBSD:#define __UINT32_MAX__ 4294967295U
2545// ARM-NETBSD:#define __UINT32_TYPE__ unsigned int
2546// ARM-NETBSD:#define __UINT64_C_SUFFIX__ ULL
2547// ARM-NETBSD:#define __UINT64_MAX__ 18446744073709551615ULL
2548// ARM-NETBSD:#define __UINT64_TYPE__ long long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00002549// ARM-NETBSD:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00002550// ARM-NETBSD:#define __UINT8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00002551// ARM-NETBSD:#define __UINT8_TYPE__ unsigned char
James Y Knightc97efa42016-02-11 16:51:29 +00002552// ARM-NETBSD:#define __UINTMAX_C_SUFFIX__ ULL
JF Bastienab8d0a02014-06-25 01:31:33 +00002553// ARM-NETBSD:#define __UINTMAX_MAX__ 18446744073709551615ULL
Joerg Sonnenberger4645b442014-05-13 18:58:00 +00002554// ARM-NETBSD:#define __UINTMAX_TYPE__ long long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00002555// ARM-NETBSD:#define __UINTMAX_WIDTH__ 64
Saleem Abdulrasoole5696582017-10-20 04:11:28 +00002556// ARM-NETBSD:#define __UINTPTR_MAX__ 4294967295UL
2557// ARM-NETBSD:#define __UINTPTR_TYPE__ long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00002558// ARM-NETBSD:#define __UINTPTR_WIDTH__ 32
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00002559// ARM-NETBSD:#define __UINT_FAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00002560// ARM-NETBSD:#define __UINT_FAST16_TYPE__ unsigned short
2561// ARM-NETBSD:#define __UINT_FAST32_MAX__ 4294967295U
2562// ARM-NETBSD:#define __UINT_FAST32_TYPE__ unsigned int
2563// ARM-NETBSD:#define __UINT_FAST64_MAX__ 18446744073709551615ULL
2564// ARM-NETBSD:#define __UINT_FAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00002565// ARM-NETBSD:#define __UINT_FAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00002566// ARM-NETBSD:#define __UINT_FAST8_TYPE__ unsigned char
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00002567// ARM-NETBSD:#define __UINT_LEAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00002568// ARM-NETBSD:#define __UINT_LEAST16_TYPE__ unsigned short
2569// ARM-NETBSD:#define __UINT_LEAST32_MAX__ 4294967295U
2570// ARM-NETBSD:#define __UINT_LEAST32_TYPE__ unsigned int
2571// ARM-NETBSD:#define __UINT_LEAST64_MAX__ 18446744073709551615ULL
2572// ARM-NETBSD:#define __UINT_LEAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00002573// ARM-NETBSD:#define __UINT_LEAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00002574// ARM-NETBSD:#define __UINT_LEAST8_TYPE__ unsigned char
Joerg Sonnenberger4645b442014-05-13 18:58:00 +00002575// ARM-NETBSD:#define __USER_LABEL_PREFIX__
2576// ARM-NETBSD:#define __WCHAR_MAX__ 2147483647
2577// ARM-NETBSD:#define __WCHAR_TYPE__ int
2578// ARM-NETBSD:#define __WCHAR_WIDTH__ 32
2579// ARM-NETBSD:#define __WINT_TYPE__ int
2580// ARM-NETBSD:#define __WINT_WIDTH__ 32
2581// ARM-NETBSD:#define __arm 1
2582// ARM-NETBSD:#define __arm__ 1
2583
Joerg Sonnenbergere385cfc2017-07-11 15:50:48 +00002584// RUN: %clang -E -dM -ffreestanding -target arm-netbsd-eabihf %s -o - | FileCheck -match-full-lines -check-prefix ARMHF-NETBSD %s
2585// ARMHF-NETBSD:#define __SIZE_WIDTH__ 32
2586// ARMHF-NETBSD-NOT:#define __SOFTFP__ 1
2587// ARMHF-NETBSD:#define __UINT16_C_SUFFIX__
2588
Weiming Zhaob0613132016-04-18 16:25:46 +00002589// 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 +00002590// RUN: %clang_cc1 -E -dM -ffreestanding -triple=arm-none-eabihf < /dev/null | FileCheck -match-full-lines -check-prefix ARM-NONE-EABI %s
2591// RUN: %clang_cc1 -E -dM -ffreestanding -triple=aarch64-none-eabi < /dev/null | FileCheck -match-full-lines -check-prefix ARM-NONE-EABI %s
2592// RUN: %clang_cc1 -E -dM -ffreestanding -triple=aarch64-none-eabihf < /dev/null | FileCheck -match-full-lines -check-prefix ARM-NONE-EABI %s
Eli Friedman39ceea32018-10-17 21:07:11 +00002593// RUN: %clang_cc1 -E -dM -ffreestanding -triple=aarch64-none-elf < /dev/null | FileCheck -match-full-lines -check-prefix ARM-NONE-EABI %s
Weiming Zhaob0613132016-04-18 16:25:46 +00002594// ARM-NONE-EABI: #define __ELF__ 1
2595
Tim Northover862eaf82016-05-13 21:26:45 +00002596// No MachO targets use the full EABI, even if AAPCS is used.
2597// 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
2598// 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
2599// 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
2600// 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
2601// 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
2602// ARM-MACHO-NO-EABI-NOT: #define __ARM_EABI__ 1
Tim Northovere77f78c2013-11-11 19:11:22 +00002603
Silviu Barangaf9671dd2013-10-21 10:54:53 +00002604// Check that -mhwdiv works properly for targets which don't have the hwdiv feature enabled by default.
2605
James Y Knightc97efa42016-02-11 16:51:29 +00002606// 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 +00002607// ARMHWDIV-ARM:#define __ARM_ARCH_EXT_IDIV__ 1
2608
James Y Knightc97efa42016-02-11 16:51:29 +00002609// 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 +00002610// THUMBHWDIV-THUMB:#define __ARM_ARCH_EXT_IDIV__ 1
2611
James Y Knightc97efa42016-02-11 16:51:29 +00002612// 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 +00002613// ARM-FALSE-NOT:#define __ARM_ARCH_EXT_IDIV__
2614
James Y Knightc97efa42016-02-11 16:51:29 +00002615// 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 +00002616// THUMB-FALSE-NOT:#define __ARM_ARCH_EXT_IDIV__
2617
James Y Knightc97efa42016-02-11 16:51:29 +00002618// 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 +00002619// THUMBHWDIV-ARM-FALSE-NOT:#define __ARM_ARCH_EXT_IDIV__
2620
James Y Knightc97efa42016-02-11 16:51:29 +00002621// 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 +00002622// ARMHWDIV-THUMB-FALSE-NOT:#define __ARM_ARCH_EXT_IDIV__
2623
James Y Knightc97efa42016-02-11 16:51:29 +00002624// 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 +00002625// ARMv8: #define __THUMB_INTERWORK__ 1
2626// ARMv8-NOT: #define __thumb2__
2627
James Y Knightc97efa42016-02-11 16:51:29 +00002628// 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 +00002629// ARMebv8: #define __THUMB_INTERWORK__ 1
2630// ARMebv8-NOT: #define __thumb2__
2631
James Y Knightc97efa42016-02-11 16:51:29 +00002632// 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 +00002633// Thumbv8: #define __THUMB_INTERWORK__ 1
James Y Knightc97efa42016-02-11 16:51:29 +00002634// Thumbv8: #define __thumb2__ 1
Weiming Zhaofb5c21a2014-01-22 18:42:13 +00002635
James Y Knightc97efa42016-02-11 16:51:29 +00002636// 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 +00002637// Thumbebv8: #define __THUMB_INTERWORK__ 1
James Y Knightc97efa42016-02-11 16:51:29 +00002638// Thumbebv8: #define __thumb2__ 1
Christian Pirkerf01cd6f2014-03-28 14:40:46 +00002639
James Y Knightc97efa42016-02-11 16:51:29 +00002640// 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 +00002641// Thumbv5: #define __THUMB_INTERWORK__ 1
James Y Knightc97efa42016-02-11 16:51:29 +00002642// Thumbv5-NOT: #define __thumb2__ 1
Weiming Zhaofb5c21a2014-01-22 18:42:13 +00002643
James Y Knightc97efa42016-02-11 16:51:29 +00002644// 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 +00002645// Thumbv6t2: #define __THUMB_INTERWORK__ 1
James Y Knightc97efa42016-02-11 16:51:29 +00002646// Thumbv6t2: #define __thumb2__ 1
Weiming Zhaofb5c21a2014-01-22 18:42:13 +00002647
James Y Knightc97efa42016-02-11 16:51:29 +00002648// 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 +00002649// Thumbv7: #define __THUMB_INTERWORK__ 1
James Y Knightc97efa42016-02-11 16:51:29 +00002650// Thumbv7: #define __thumb2__ 1
Weiming Zhaofb5c21a2014-01-22 18:42:13 +00002651
James Y Knightc97efa42016-02-11 16:51:29 +00002652// 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 +00002653// Thumbebv7: #define __THUMB_INTERWORK__ 1
James Y Knightc97efa42016-02-11 16:51:29 +00002654// Thumbebv7: #define __thumb2__ 1
Christian Pirkerf01cd6f2014-03-28 14:40:46 +00002655
Eli Friedman29fd52d2018-04-12 22:50:50 +00002656// RUN: %clang_cc1 -E -dM -ffreestanding -triple=thumbv7-pc-windows-gnu -fdwarf-exceptions %s -o - | FileCheck -match-full-lines -check-prefix THUMB-MINGW %s
Martin Storsjoec821282017-11-17 08:06:49 +00002657
2658// THUMB-MINGW:#define __ARM_DWARF_EH__ 1
2659
Chris Lattnere963d092009-10-29 04:55:36 +00002660//
James Y Knightc97efa42016-02-11 16:51:29 +00002661// 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 +00002662//
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00002663// I386-NOT:#define _LP64
Tim Northovera6a19f12015-02-06 01:25:07 +00002664// I386:#define __BIGGEST_ALIGNMENT__ 16
Dylan Noblesmith673728f2012-07-27 18:34:31 +00002665// I386:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
Dan Gohman04f87202010-05-28 00:27:15 +00002666// I386:#define __CHAR16_TYPE__ unsigned short
2667// I386:#define __CHAR32_TYPE__ unsigned int
Chris Lattnere963d092009-10-29 04:55:36 +00002668// I386:#define __CHAR_BIT__ 8
2669// I386:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
2670// I386:#define __DBL_DIG__ 15
2671// I386:#define __DBL_EPSILON__ 2.2204460492503131e-16
2672// I386:#define __DBL_HAS_DENORM__ 1
2673// I386:#define __DBL_HAS_INFINITY__ 1
2674// I386:#define __DBL_HAS_QUIET_NAN__ 1
2675// I386:#define __DBL_MANT_DIG__ 53
2676// I386:#define __DBL_MAX_10_EXP__ 308
2677// I386:#define __DBL_MAX_EXP__ 1024
2678// I386:#define __DBL_MAX__ 1.7976931348623157e+308
2679// I386:#define __DBL_MIN_10_EXP__ (-307)
2680// I386:#define __DBL_MIN_EXP__ (-1021)
2681// I386:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00002682// I386:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Chris Lattnere963d092009-10-29 04:55:36 +00002683// I386:#define __FLT_DENORM_MIN__ 1.40129846e-45F
2684// I386:#define __FLT_DIG__ 6
2685// I386:#define __FLT_EPSILON__ 1.19209290e-7F
Benjamin Kramercf501472011-12-28 15:47:06 +00002686// I386:#define __FLT_EVAL_METHOD__ 2
Chris Lattnere963d092009-10-29 04:55:36 +00002687// I386:#define __FLT_HAS_DENORM__ 1
2688// I386:#define __FLT_HAS_INFINITY__ 1
2689// I386:#define __FLT_HAS_QUIET_NAN__ 1
2690// I386:#define __FLT_MANT_DIG__ 24
2691// I386:#define __FLT_MAX_10_EXP__ 38
2692// I386:#define __FLT_MAX_EXP__ 128
2693// I386:#define __FLT_MAX__ 3.40282347e+38F
2694// I386:#define __FLT_MIN_10_EXP__ (-37)
2695// I386:#define __FLT_MIN_EXP__ (-125)
2696// I386:#define __FLT_MIN__ 1.17549435e-38F
2697// I386:#define __FLT_RADIX__ 2
James Y Knightc97efa42016-02-11 16:51:29 +00002698// I386:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002699// I386:#define __INT16_FMTd__ "hd"
2700// I386:#define __INT16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00002701// I386:#define __INT16_MAX__ 32767
Chris Lattnere963d092009-10-29 04:55:36 +00002702// I386:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +00002703// I386:#define __INT32_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002704// I386:#define __INT32_FMTd__ "d"
2705// I386:#define __INT32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00002706// I386:#define __INT32_MAX__ 2147483647
Chris Lattnere963d092009-10-29 04:55:36 +00002707// I386:#define __INT32_TYPE__ int
Ken Dyck2dc8d5f2009-11-16 16:36:33 +00002708// I386:#define __INT64_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002709// I386:#define __INT64_FMTd__ "lld"
2710// I386:#define __INT64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00002711// I386:#define __INT64_MAX__ 9223372036854775807LL
Chris Lattnere963d092009-10-29 04:55:36 +00002712// I386:#define __INT64_TYPE__ long long int
James Y Knightc97efa42016-02-11 16:51:29 +00002713// I386:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002714// I386:#define __INT8_FMTd__ "hhd"
2715// I386:#define __INT8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00002716// I386:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00002717// I386:#define __INT8_TYPE__ signed char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00002718// I386:#define __INTMAX_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002719// I386:#define __INTMAX_FMTd__ "lld"
2720// I386:#define __INTMAX_FMTi__ "lli"
Chris Lattnere963d092009-10-29 04:55:36 +00002721// I386:#define __INTMAX_MAX__ 9223372036854775807LL
Ken Dyck9b25f782009-11-19 13:18:59 +00002722// I386:#define __INTMAX_TYPE__ long long int
Ken Dyckc0c98292009-11-18 13:52:57 +00002723// I386:#define __INTMAX_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002724// I386:#define __INTPTR_FMTd__ "d"
2725// I386:#define __INTPTR_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00002726// I386:#define __INTPTR_MAX__ 2147483647
Ken Dyck9b25f782009-11-19 13:18:59 +00002727// I386:#define __INTPTR_TYPE__ int
Ken Dyck24cfcf12009-11-18 20:05:48 +00002728// I386:#define __INTPTR_WIDTH__ 32
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002729// I386:#define __INT_FAST16_FMTd__ "hd"
2730// I386:#define __INT_FAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00002731// I386:#define __INT_FAST16_MAX__ 32767
2732// I386:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002733// I386:#define __INT_FAST32_FMTd__ "d"
2734// I386:#define __INT_FAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00002735// I386:#define __INT_FAST32_MAX__ 2147483647
2736// I386:#define __INT_FAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002737// I386:#define __INT_FAST64_FMTd__ "lld"
2738// I386:#define __INT_FAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00002739// I386:#define __INT_FAST64_MAX__ 9223372036854775807LL
2740// I386:#define __INT_FAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002741// I386:#define __INT_FAST8_FMTd__ "hhd"
2742// I386:#define __INT_FAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00002743// I386:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00002744// I386:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002745// I386:#define __INT_LEAST16_FMTd__ "hd"
2746// I386:#define __INT_LEAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00002747// I386:#define __INT_LEAST16_MAX__ 32767
2748// I386:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002749// I386:#define __INT_LEAST32_FMTd__ "d"
2750// I386:#define __INT_LEAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00002751// I386:#define __INT_LEAST32_MAX__ 2147483647
2752// I386:#define __INT_LEAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002753// I386:#define __INT_LEAST64_FMTd__ "lld"
2754// I386:#define __INT_LEAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00002755// I386:#define __INT_LEAST64_MAX__ 9223372036854775807LL
2756// I386:#define __INT_LEAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002757// I386:#define __INT_LEAST8_FMTd__ "hhd"
2758// I386:#define __INT_LEAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00002759// I386:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00002760// I386:#define __INT_LEAST8_TYPE__ signed char
Chris Lattnere963d092009-10-29 04:55:36 +00002761// I386:#define __INT_MAX__ 2147483647
2762// I386:#define __LDBL_DENORM_MIN__ 3.64519953188247460253e-4951L
2763// I386:#define __LDBL_DIG__ 18
2764// I386:#define __LDBL_EPSILON__ 1.08420217248550443401e-19L
2765// I386:#define __LDBL_HAS_DENORM__ 1
2766// I386:#define __LDBL_HAS_INFINITY__ 1
2767// I386:#define __LDBL_HAS_QUIET_NAN__ 1
2768// I386:#define __LDBL_MANT_DIG__ 64
2769// I386:#define __LDBL_MAX_10_EXP__ 4932
2770// I386:#define __LDBL_MAX_EXP__ 16384
2771// I386:#define __LDBL_MAX__ 1.18973149535723176502e+4932L
2772// I386:#define __LDBL_MIN_10_EXP__ (-4931)
2773// I386:#define __LDBL_MIN_EXP__ (-16381)
2774// I386:#define __LDBL_MIN__ 3.36210314311209350626e-4932L
2775// I386:#define __LITTLE_ENDIAN__ 1
2776// I386:#define __LONG_LONG_MAX__ 9223372036854775807LL
2777// I386:#define __LONG_MAX__ 2147483647L
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00002778// I386-NOT:#define __LP64__
Chris Lattnere963d092009-10-29 04:55:36 +00002779// I386:#define __NO_MATH_INLINES 1
2780// I386:#define __POINTER_WIDTH__ 32
Ken Dyck9b25f782009-11-19 13:18:59 +00002781// I386:#define __PTRDIFF_TYPE__ int
Ken Dyck056efe02009-11-19 12:21:52 +00002782// I386:#define __PTRDIFF_WIDTH__ 32
James Y Knightc97efa42016-02-11 16:51:29 +00002783// I386:#define __REGISTER_PREFIX__
Chris Lattnere963d092009-10-29 04:55:36 +00002784// I386:#define __SCHAR_MAX__ 127
2785// I386:#define __SHRT_MAX__ 32767
Joerg Sonnenbergerb3a49692014-07-17 18:31:20 +00002786// I386:#define __SIG_ATOMIC_MAX__ 2147483647
Ken Dyckadc85112009-11-22 15:41:04 +00002787// I386:#define __SIG_ATOMIC_WIDTH__ 32
Dan Gohman04f87202010-05-28 00:27:15 +00002788// I386:#define __SIZEOF_DOUBLE__ 8
2789// I386:#define __SIZEOF_FLOAT__ 4
2790// I386:#define __SIZEOF_INT__ 4
2791// I386:#define __SIZEOF_LONG_DOUBLE__ 12
2792// I386:#define __SIZEOF_LONG_LONG__ 8
2793// I386:#define __SIZEOF_LONG__ 4
2794// I386:#define __SIZEOF_POINTER__ 4
2795// I386:#define __SIZEOF_PTRDIFF_T__ 4
2796// I386:#define __SIZEOF_SHORT__ 2
2797// I386:#define __SIZEOF_SIZE_T__ 4
2798// I386:#define __SIZEOF_WCHAR_T__ 4
2799// I386:#define __SIZEOF_WINT_T__ 4
Evgeniy Stepanovc3c725a2013-03-28 08:36:54 +00002800// I386:#define __SIZE_MAX__ 4294967295U
Chris Lattnere963d092009-10-29 04:55:36 +00002801// I386:#define __SIZE_TYPE__ unsigned int
Ken Dyck57512862009-11-19 13:42:09 +00002802// I386:#define __SIZE_WIDTH__ 32
James Y Knightc97efa42016-02-11 16:51:29 +00002803// I386:#define __UINT16_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00002804// I386:#define __UINT16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00002805// I386:#define __UINT16_TYPE__ unsigned short
2806// I386:#define __UINT32_C_SUFFIX__ U
2807// I386:#define __UINT32_MAX__ 4294967295U
2808// I386:#define __UINT32_TYPE__ unsigned int
2809// I386:#define __UINT64_C_SUFFIX__ ULL
2810// I386:#define __UINT64_MAX__ 18446744073709551615ULL
2811// I386:#define __UINT64_TYPE__ long long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00002812// I386:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00002813// I386:#define __UINT8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00002814// I386:#define __UINT8_TYPE__ unsigned char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00002815// I386:#define __UINTMAX_C_SUFFIX__ ULL
JF Bastienab8d0a02014-06-25 01:31:33 +00002816// I386:#define __UINTMAX_MAX__ 18446744073709551615ULL
Ken Dyck9b25f782009-11-19 13:18:59 +00002817// I386:#define __UINTMAX_TYPE__ long long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00002818// I386:#define __UINTMAX_WIDTH__ 64
2819// I386:#define __UINTPTR_MAX__ 4294967295U
2820// I386:#define __UINTPTR_TYPE__ unsigned int
2821// I386:#define __UINTPTR_WIDTH__ 32
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00002822// I386:#define __UINT_FAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00002823// I386:#define __UINT_FAST16_TYPE__ unsigned short
2824// I386:#define __UINT_FAST32_MAX__ 4294967295U
2825// I386:#define __UINT_FAST32_TYPE__ unsigned int
2826// I386:#define __UINT_FAST64_MAX__ 18446744073709551615ULL
2827// I386:#define __UINT_FAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00002828// I386:#define __UINT_FAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00002829// I386:#define __UINT_FAST8_TYPE__ unsigned char
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00002830// I386:#define __UINT_LEAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00002831// I386:#define __UINT_LEAST16_TYPE__ unsigned short
2832// I386:#define __UINT_LEAST32_MAX__ 4294967295U
2833// I386:#define __UINT_LEAST32_TYPE__ unsigned int
2834// I386:#define __UINT_LEAST64_MAX__ 18446744073709551615ULL
2835// I386:#define __UINT_LEAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00002836// I386:#define __UINT_LEAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00002837// I386:#define __UINT_LEAST8_TYPE__ unsigned char
James Y Knightb214cbc2016-03-04 19:00:41 +00002838// I386:#define __USER_LABEL_PREFIX__
Chris Lattnere963d092009-10-29 04:55:36 +00002839// I386:#define __WCHAR_MAX__ 2147483647
2840// I386:#define __WCHAR_TYPE__ int
Ken Dyck0138b9e2009-11-19 15:47:58 +00002841// I386:#define __WCHAR_WIDTH__ 32
Chris Lattnere963d092009-10-29 04:55:36 +00002842// I386:#define __WINT_TYPE__ int
Ken Dycka1f677c2009-11-19 14:16:57 +00002843// I386:#define __WINT_WIDTH__ 32
Chris Lattnere963d092009-10-29 04:55:36 +00002844// I386:#define __i386 1
2845// I386:#define __i386__ 1
Chris Lattnere963d092009-10-29 04:55:36 +00002846// I386:#define i386 1
2847//
James Y Knightc97efa42016-02-11 16:51:29 +00002848// 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 +00002849// 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 +00002850//
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00002851// I386-LINUX-NOT:#define _LP64
Tim Northovera6a19f12015-02-06 01:25:07 +00002852// I386-LINUX:#define __BIGGEST_ALIGNMENT__ 16
Dylan Noblesmith673728f2012-07-27 18:34:31 +00002853// I386-LINUX:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
Douglas Gregore6d6e512011-01-12 21:19:25 +00002854// I386-LINUX:#define __CHAR16_TYPE__ unsigned short
2855// I386-LINUX:#define __CHAR32_TYPE__ unsigned int
2856// I386-LINUX:#define __CHAR_BIT__ 8
2857// I386-LINUX:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
2858// I386-LINUX:#define __DBL_DIG__ 15
2859// I386-LINUX:#define __DBL_EPSILON__ 2.2204460492503131e-16
2860// I386-LINUX:#define __DBL_HAS_DENORM__ 1
2861// I386-LINUX:#define __DBL_HAS_INFINITY__ 1
2862// I386-LINUX:#define __DBL_HAS_QUIET_NAN__ 1
2863// I386-LINUX:#define __DBL_MANT_DIG__ 53
2864// I386-LINUX:#define __DBL_MAX_10_EXP__ 308
2865// I386-LINUX:#define __DBL_MAX_EXP__ 1024
2866// I386-LINUX:#define __DBL_MAX__ 1.7976931348623157e+308
2867// I386-LINUX:#define __DBL_MIN_10_EXP__ (-307)
2868// I386-LINUX:#define __DBL_MIN_EXP__ (-1021)
2869// I386-LINUX:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00002870// I386-LINUX:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Douglas Gregore6d6e512011-01-12 21:19:25 +00002871// I386-LINUX:#define __FLT_DENORM_MIN__ 1.40129846e-45F
2872// I386-LINUX:#define __FLT_DIG__ 6
2873// I386-LINUX:#define __FLT_EPSILON__ 1.19209290e-7F
2874// I386-LINUX:#define __FLT_EVAL_METHOD__ 0
2875// I386-LINUX:#define __FLT_HAS_DENORM__ 1
2876// I386-LINUX:#define __FLT_HAS_INFINITY__ 1
2877// I386-LINUX:#define __FLT_HAS_QUIET_NAN__ 1
2878// I386-LINUX:#define __FLT_MANT_DIG__ 24
2879// I386-LINUX:#define __FLT_MAX_10_EXP__ 38
2880// I386-LINUX:#define __FLT_MAX_EXP__ 128
2881// I386-LINUX:#define __FLT_MAX__ 3.40282347e+38F
2882// I386-LINUX:#define __FLT_MIN_10_EXP__ (-37)
2883// I386-LINUX:#define __FLT_MIN_EXP__ (-125)
2884// I386-LINUX:#define __FLT_MIN__ 1.17549435e-38F
2885// I386-LINUX:#define __FLT_RADIX__ 2
James Y Knightc97efa42016-02-11 16:51:29 +00002886// I386-LINUX:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002887// I386-LINUX:#define __INT16_FMTd__ "hd"
2888// I386-LINUX:#define __INT16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00002889// I386-LINUX:#define __INT16_MAX__ 32767
Douglas Gregore6d6e512011-01-12 21:19:25 +00002890// I386-LINUX:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +00002891// I386-LINUX:#define __INT32_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002892// I386-LINUX:#define __INT32_FMTd__ "d"
2893// I386-LINUX:#define __INT32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00002894// I386-LINUX:#define __INT32_MAX__ 2147483647
Douglas Gregore6d6e512011-01-12 21:19:25 +00002895// I386-LINUX:#define __INT32_TYPE__ int
2896// I386-LINUX:#define __INT64_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002897// I386-LINUX:#define __INT64_FMTd__ "lld"
2898// I386-LINUX:#define __INT64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00002899// I386-LINUX:#define __INT64_MAX__ 9223372036854775807LL
Douglas Gregore6d6e512011-01-12 21:19:25 +00002900// I386-LINUX:#define __INT64_TYPE__ long long int
James Y Knightc97efa42016-02-11 16:51:29 +00002901// I386-LINUX:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002902// I386-LINUX:#define __INT8_FMTd__ "hhd"
2903// I386-LINUX:#define __INT8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00002904// I386-LINUX:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00002905// I386-LINUX:#define __INT8_TYPE__ signed char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00002906// I386-LINUX:#define __INTMAX_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002907// I386-LINUX:#define __INTMAX_FMTd__ "lld"
2908// I386-LINUX:#define __INTMAX_FMTi__ "lli"
Douglas Gregore6d6e512011-01-12 21:19:25 +00002909// I386-LINUX:#define __INTMAX_MAX__ 9223372036854775807LL
2910// I386-LINUX:#define __INTMAX_TYPE__ long long int
2911// I386-LINUX:#define __INTMAX_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002912// I386-LINUX:#define __INTPTR_FMTd__ "d"
2913// I386-LINUX:#define __INTPTR_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00002914// I386-LINUX:#define __INTPTR_MAX__ 2147483647
Douglas Gregore6d6e512011-01-12 21:19:25 +00002915// I386-LINUX:#define __INTPTR_TYPE__ int
2916// I386-LINUX:#define __INTPTR_WIDTH__ 32
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002917// I386-LINUX:#define __INT_FAST16_FMTd__ "hd"
2918// I386-LINUX:#define __INT_FAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00002919// I386-LINUX:#define __INT_FAST16_MAX__ 32767
2920// I386-LINUX:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002921// I386-LINUX:#define __INT_FAST32_FMTd__ "d"
2922// I386-LINUX:#define __INT_FAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00002923// I386-LINUX:#define __INT_FAST32_MAX__ 2147483647
2924// I386-LINUX:#define __INT_FAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002925// I386-LINUX:#define __INT_FAST64_FMTd__ "lld"
2926// I386-LINUX:#define __INT_FAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00002927// I386-LINUX:#define __INT_FAST64_MAX__ 9223372036854775807LL
2928// I386-LINUX:#define __INT_FAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002929// I386-LINUX:#define __INT_FAST8_FMTd__ "hhd"
2930// I386-LINUX:#define __INT_FAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00002931// I386-LINUX:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00002932// I386-LINUX:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002933// I386-LINUX:#define __INT_LEAST16_FMTd__ "hd"
2934// I386-LINUX:#define __INT_LEAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00002935// I386-LINUX:#define __INT_LEAST16_MAX__ 32767
2936// I386-LINUX:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002937// I386-LINUX:#define __INT_LEAST32_FMTd__ "d"
2938// I386-LINUX:#define __INT_LEAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00002939// I386-LINUX:#define __INT_LEAST32_MAX__ 2147483647
2940// I386-LINUX:#define __INT_LEAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002941// I386-LINUX:#define __INT_LEAST64_FMTd__ "lld"
2942// I386-LINUX:#define __INT_LEAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00002943// I386-LINUX:#define __INT_LEAST64_MAX__ 9223372036854775807LL
2944// I386-LINUX:#define __INT_LEAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00002945// I386-LINUX:#define __INT_LEAST8_FMTd__ "hhd"
2946// I386-LINUX:#define __INT_LEAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00002947// I386-LINUX:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00002948// I386-LINUX:#define __INT_LEAST8_TYPE__ signed char
Douglas Gregore6d6e512011-01-12 21:19:25 +00002949// I386-LINUX:#define __INT_MAX__ 2147483647
2950// I386-LINUX:#define __LDBL_DENORM_MIN__ 3.64519953188247460253e-4951L
2951// I386-LINUX:#define __LDBL_DIG__ 18
2952// I386-LINUX:#define __LDBL_EPSILON__ 1.08420217248550443401e-19L
2953// I386-LINUX:#define __LDBL_HAS_DENORM__ 1
2954// I386-LINUX:#define __LDBL_HAS_INFINITY__ 1
2955// I386-LINUX:#define __LDBL_HAS_QUIET_NAN__ 1
2956// I386-LINUX:#define __LDBL_MANT_DIG__ 64
2957// I386-LINUX:#define __LDBL_MAX_10_EXP__ 4932
2958// I386-LINUX:#define __LDBL_MAX_EXP__ 16384
2959// I386-LINUX:#define __LDBL_MAX__ 1.18973149535723176502e+4932L
2960// I386-LINUX:#define __LDBL_MIN_10_EXP__ (-4931)
2961// I386-LINUX:#define __LDBL_MIN_EXP__ (-16381)
2962// I386-LINUX:#define __LDBL_MIN__ 3.36210314311209350626e-4932L
2963// I386-LINUX:#define __LITTLE_ENDIAN__ 1
2964// I386-LINUX:#define __LONG_LONG_MAX__ 9223372036854775807LL
2965// I386-LINUX:#define __LONG_MAX__ 2147483647L
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00002966// I386-LINUX-NOT:#define __LP64__
Douglas Gregore6d6e512011-01-12 21:19:25 +00002967// I386-LINUX:#define __NO_MATH_INLINES 1
2968// I386-LINUX:#define __POINTER_WIDTH__ 32
2969// I386-LINUX:#define __PTRDIFF_TYPE__ int
2970// I386-LINUX:#define __PTRDIFF_WIDTH__ 32
James Y Knightc97efa42016-02-11 16:51:29 +00002971// I386-LINUX:#define __REGISTER_PREFIX__
Douglas Gregore6d6e512011-01-12 21:19:25 +00002972// I386-LINUX:#define __SCHAR_MAX__ 127
2973// I386-LINUX:#define __SHRT_MAX__ 32767
Joerg Sonnenbergerb3a49692014-07-17 18:31:20 +00002974// I386-LINUX:#define __SIG_ATOMIC_MAX__ 2147483647
Douglas Gregore6d6e512011-01-12 21:19:25 +00002975// I386-LINUX:#define __SIG_ATOMIC_WIDTH__ 32
2976// I386-LINUX:#define __SIZEOF_DOUBLE__ 8
2977// I386-LINUX:#define __SIZEOF_FLOAT__ 4
2978// I386-LINUX:#define __SIZEOF_INT__ 4
2979// I386-LINUX:#define __SIZEOF_LONG_DOUBLE__ 12
2980// I386-LINUX:#define __SIZEOF_LONG_LONG__ 8
2981// I386-LINUX:#define __SIZEOF_LONG__ 4
2982// I386-LINUX:#define __SIZEOF_POINTER__ 4
2983// I386-LINUX:#define __SIZEOF_PTRDIFF_T__ 4
2984// I386-LINUX:#define __SIZEOF_SHORT__ 2
2985// I386-LINUX:#define __SIZEOF_SIZE_T__ 4
2986// I386-LINUX:#define __SIZEOF_WCHAR_T__ 4
2987// I386-LINUX:#define __SIZEOF_WINT_T__ 4
Evgeniy Stepanovc3c725a2013-03-28 08:36:54 +00002988// I386-LINUX:#define __SIZE_MAX__ 4294967295U
Douglas Gregore6d6e512011-01-12 21:19:25 +00002989// I386-LINUX:#define __SIZE_TYPE__ unsigned int
2990// I386-LINUX:#define __SIZE_WIDTH__ 32
Richard Smith59139022016-09-30 22:41:36 +00002991// I386-LINUX-CXX:#define __STDCPP_DEFAULT_NEW_ALIGNMENT__ 8U
James Y Knightc97efa42016-02-11 16:51:29 +00002992// I386-LINUX:#define __UINT16_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00002993// I386-LINUX:#define __UINT16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00002994// I386-LINUX:#define __UINT16_TYPE__ unsigned short
2995// I386-LINUX:#define __UINT32_C_SUFFIX__ U
2996// I386-LINUX:#define __UINT32_MAX__ 4294967295U
2997// I386-LINUX:#define __UINT32_TYPE__ unsigned int
2998// I386-LINUX:#define __UINT64_C_SUFFIX__ ULL
2999// I386-LINUX:#define __UINT64_MAX__ 18446744073709551615ULL
3000// I386-LINUX:#define __UINT64_TYPE__ long long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00003001// I386-LINUX:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00003002// I386-LINUX:#define __UINT8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00003003// I386-LINUX:#define __UINT8_TYPE__ unsigned char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00003004// I386-LINUX:#define __UINTMAX_C_SUFFIX__ ULL
JF Bastienab8d0a02014-06-25 01:31:33 +00003005// I386-LINUX:#define __UINTMAX_MAX__ 18446744073709551615ULL
Douglas Gregore6d6e512011-01-12 21:19:25 +00003006// I386-LINUX:#define __UINTMAX_TYPE__ long long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00003007// I386-LINUX:#define __UINTMAX_WIDTH__ 64
3008// I386-LINUX:#define __UINTPTR_MAX__ 4294967295U
3009// I386-LINUX:#define __UINTPTR_TYPE__ unsigned int
3010// I386-LINUX:#define __UINTPTR_WIDTH__ 32
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00003011// I386-LINUX:#define __UINT_FAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00003012// I386-LINUX:#define __UINT_FAST16_TYPE__ unsigned short
3013// I386-LINUX:#define __UINT_FAST32_MAX__ 4294967295U
3014// I386-LINUX:#define __UINT_FAST32_TYPE__ unsigned int
3015// I386-LINUX:#define __UINT_FAST64_MAX__ 18446744073709551615ULL
3016// I386-LINUX:#define __UINT_FAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00003017// I386-LINUX:#define __UINT_FAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00003018// I386-LINUX:#define __UINT_FAST8_TYPE__ unsigned char
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00003019// I386-LINUX:#define __UINT_LEAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00003020// I386-LINUX:#define __UINT_LEAST16_TYPE__ unsigned short
3021// I386-LINUX:#define __UINT_LEAST32_MAX__ 4294967295U
3022// I386-LINUX:#define __UINT_LEAST32_TYPE__ unsigned int
3023// I386-LINUX:#define __UINT_LEAST64_MAX__ 18446744073709551615ULL
3024// I386-LINUX:#define __UINT_LEAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00003025// I386-LINUX:#define __UINT_LEAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00003026// I386-LINUX:#define __UINT_LEAST8_TYPE__ unsigned char
Douglas Gregore6d6e512011-01-12 21:19:25 +00003027// I386-LINUX:#define __USER_LABEL_PREFIX__
3028// I386-LINUX:#define __WCHAR_MAX__ 2147483647
3029// I386-LINUX:#define __WCHAR_TYPE__ int
3030// I386-LINUX:#define __WCHAR_WIDTH__ 32
3031// I386-LINUX:#define __WINT_TYPE__ unsigned int
3032// I386-LINUX:#define __WINT_WIDTH__ 32
3033// I386-LINUX:#define __i386 1
3034// I386-LINUX:#define __i386__ 1
Douglas Gregore6d6e512011-01-12 21:19:25 +00003035// I386-LINUX:#define i386 1
3036//
James Y Knightc97efa42016-02-11 16:51:29 +00003037// 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 +00003038// 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 +00003039//
3040// I386-NETBSD-NOT:#define _LP64
Tim Northovera6a19f12015-02-06 01:25:07 +00003041// I386-NETBSD:#define __BIGGEST_ALIGNMENT__ 16
Joerg Sonnenberger0e921f22013-11-11 14:00:37 +00003042// I386-NETBSD:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
3043// I386-NETBSD:#define __CHAR16_TYPE__ unsigned short
3044// I386-NETBSD:#define __CHAR32_TYPE__ unsigned int
3045// I386-NETBSD:#define __CHAR_BIT__ 8
3046// I386-NETBSD:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
3047// I386-NETBSD:#define __DBL_DIG__ 15
3048// I386-NETBSD:#define __DBL_EPSILON__ 2.2204460492503131e-16
3049// I386-NETBSD:#define __DBL_HAS_DENORM__ 1
3050// I386-NETBSD:#define __DBL_HAS_INFINITY__ 1
3051// I386-NETBSD:#define __DBL_HAS_QUIET_NAN__ 1
3052// I386-NETBSD:#define __DBL_MANT_DIG__ 53
3053// I386-NETBSD:#define __DBL_MAX_10_EXP__ 308
3054// I386-NETBSD:#define __DBL_MAX_EXP__ 1024
3055// I386-NETBSD:#define __DBL_MAX__ 1.7976931348623157e+308
3056// I386-NETBSD:#define __DBL_MIN_10_EXP__ (-307)
3057// I386-NETBSD:#define __DBL_MIN_EXP__ (-1021)
3058// I386-NETBSD:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00003059// I386-NETBSD:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Joerg Sonnenberger0e921f22013-11-11 14:00:37 +00003060// I386-NETBSD:#define __FLT_DENORM_MIN__ 1.40129846e-45F
3061// I386-NETBSD:#define __FLT_DIG__ 6
3062// I386-NETBSD:#define __FLT_EPSILON__ 1.19209290e-7F
3063// I386-NETBSD:#define __FLT_EVAL_METHOD__ 2
3064// I386-NETBSD:#define __FLT_HAS_DENORM__ 1
3065// I386-NETBSD:#define __FLT_HAS_INFINITY__ 1
3066// I386-NETBSD:#define __FLT_HAS_QUIET_NAN__ 1
3067// I386-NETBSD:#define __FLT_MANT_DIG__ 24
3068// I386-NETBSD:#define __FLT_MAX_10_EXP__ 38
3069// I386-NETBSD:#define __FLT_MAX_EXP__ 128
3070// I386-NETBSD:#define __FLT_MAX__ 3.40282347e+38F
3071// I386-NETBSD:#define __FLT_MIN_10_EXP__ (-37)
3072// I386-NETBSD:#define __FLT_MIN_EXP__ (-125)
3073// I386-NETBSD:#define __FLT_MIN__ 1.17549435e-38F
3074// I386-NETBSD:#define __FLT_RADIX__ 2
James Y Knightc97efa42016-02-11 16:51:29 +00003075// I386-NETBSD:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003076// I386-NETBSD:#define __INT16_FMTd__ "hd"
3077// I386-NETBSD:#define __INT16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00003078// I386-NETBSD:#define __INT16_MAX__ 32767
Joerg Sonnenberger0e921f22013-11-11 14:00:37 +00003079// I386-NETBSD:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +00003080// I386-NETBSD:#define __INT32_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003081// I386-NETBSD:#define __INT32_FMTd__ "d"
3082// I386-NETBSD:#define __INT32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00003083// I386-NETBSD:#define __INT32_MAX__ 2147483647
Joerg Sonnenberger0e921f22013-11-11 14:00:37 +00003084// I386-NETBSD:#define __INT32_TYPE__ int
3085// I386-NETBSD:#define __INT64_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003086// I386-NETBSD:#define __INT64_FMTd__ "lld"
3087// I386-NETBSD:#define __INT64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00003088// I386-NETBSD:#define __INT64_MAX__ 9223372036854775807LL
Joerg Sonnenberger0e921f22013-11-11 14:00:37 +00003089// I386-NETBSD:#define __INT64_TYPE__ long long int
James Y Knightc97efa42016-02-11 16:51:29 +00003090// I386-NETBSD:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003091// I386-NETBSD:#define __INT8_FMTd__ "hhd"
3092// I386-NETBSD:#define __INT8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00003093// I386-NETBSD:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00003094// I386-NETBSD:#define __INT8_TYPE__ signed char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00003095// I386-NETBSD:#define __INTMAX_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003096// I386-NETBSD:#define __INTMAX_FMTd__ "lld"
3097// I386-NETBSD:#define __INTMAX_FMTi__ "lli"
Joerg Sonnenberger0e921f22013-11-11 14:00:37 +00003098// I386-NETBSD:#define __INTMAX_MAX__ 9223372036854775807LL
3099// I386-NETBSD:#define __INTMAX_TYPE__ long long int
3100// I386-NETBSD:#define __INTMAX_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003101// I386-NETBSD:#define __INTPTR_FMTd__ "d"
3102// I386-NETBSD:#define __INTPTR_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00003103// I386-NETBSD:#define __INTPTR_MAX__ 2147483647
Joerg Sonnenberger0e921f22013-11-11 14:00:37 +00003104// I386-NETBSD:#define __INTPTR_TYPE__ int
3105// I386-NETBSD:#define __INTPTR_WIDTH__ 32
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003106// I386-NETBSD:#define __INT_FAST16_FMTd__ "hd"
3107// I386-NETBSD:#define __INT_FAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00003108// I386-NETBSD:#define __INT_FAST16_MAX__ 32767
3109// I386-NETBSD:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003110// I386-NETBSD:#define __INT_FAST32_FMTd__ "d"
3111// I386-NETBSD:#define __INT_FAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00003112// I386-NETBSD:#define __INT_FAST32_MAX__ 2147483647
3113// I386-NETBSD:#define __INT_FAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003114// I386-NETBSD:#define __INT_FAST64_FMTd__ "lld"
3115// I386-NETBSD:#define __INT_FAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00003116// I386-NETBSD:#define __INT_FAST64_MAX__ 9223372036854775807LL
3117// I386-NETBSD:#define __INT_FAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003118// I386-NETBSD:#define __INT_FAST8_FMTd__ "hhd"
3119// I386-NETBSD:#define __INT_FAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00003120// I386-NETBSD:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00003121// I386-NETBSD:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003122// I386-NETBSD:#define __INT_LEAST16_FMTd__ "hd"
3123// I386-NETBSD:#define __INT_LEAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00003124// I386-NETBSD:#define __INT_LEAST16_MAX__ 32767
3125// I386-NETBSD:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003126// I386-NETBSD:#define __INT_LEAST32_FMTd__ "d"
3127// I386-NETBSD:#define __INT_LEAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00003128// I386-NETBSD:#define __INT_LEAST32_MAX__ 2147483647
3129// I386-NETBSD:#define __INT_LEAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003130// I386-NETBSD:#define __INT_LEAST64_FMTd__ "lld"
3131// I386-NETBSD:#define __INT_LEAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00003132// I386-NETBSD:#define __INT_LEAST64_MAX__ 9223372036854775807LL
3133// I386-NETBSD:#define __INT_LEAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003134// I386-NETBSD:#define __INT_LEAST8_FMTd__ "hhd"
3135// I386-NETBSD:#define __INT_LEAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00003136// I386-NETBSD:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00003137// I386-NETBSD:#define __INT_LEAST8_TYPE__ signed char
Joerg Sonnenberger0e921f22013-11-11 14:00:37 +00003138// I386-NETBSD:#define __INT_MAX__ 2147483647
3139// I386-NETBSD:#define __LDBL_DENORM_MIN__ 3.64519953188247460253e-4951L
3140// I386-NETBSD:#define __LDBL_DIG__ 18
3141// I386-NETBSD:#define __LDBL_EPSILON__ 1.08420217248550443401e-19L
3142// I386-NETBSD:#define __LDBL_HAS_DENORM__ 1
3143// I386-NETBSD:#define __LDBL_HAS_INFINITY__ 1
3144// I386-NETBSD:#define __LDBL_HAS_QUIET_NAN__ 1
3145// I386-NETBSD:#define __LDBL_MANT_DIG__ 64
3146// I386-NETBSD:#define __LDBL_MAX_10_EXP__ 4932
3147// I386-NETBSD:#define __LDBL_MAX_EXP__ 16384
3148// I386-NETBSD:#define __LDBL_MAX__ 1.18973149535723176502e+4932L
3149// I386-NETBSD:#define __LDBL_MIN_10_EXP__ (-4931)
3150// I386-NETBSD:#define __LDBL_MIN_EXP__ (-16381)
3151// I386-NETBSD:#define __LDBL_MIN__ 3.36210314311209350626e-4932L
3152// I386-NETBSD:#define __LITTLE_ENDIAN__ 1
3153// I386-NETBSD:#define __LONG_LONG_MAX__ 9223372036854775807LL
3154// I386-NETBSD:#define __LONG_MAX__ 2147483647L
3155// I386-NETBSD-NOT:#define __LP64__
3156// I386-NETBSD:#define __NO_MATH_INLINES 1
3157// I386-NETBSD:#define __POINTER_WIDTH__ 32
3158// I386-NETBSD:#define __PTRDIFF_TYPE__ int
3159// I386-NETBSD:#define __PTRDIFF_WIDTH__ 32
James Y Knightc97efa42016-02-11 16:51:29 +00003160// I386-NETBSD:#define __REGISTER_PREFIX__
Joerg Sonnenberger0e921f22013-11-11 14:00:37 +00003161// I386-NETBSD:#define __SCHAR_MAX__ 127
3162// I386-NETBSD:#define __SHRT_MAX__ 32767
Joerg Sonnenbergerb3a49692014-07-17 18:31:20 +00003163// I386-NETBSD:#define __SIG_ATOMIC_MAX__ 2147483647
Joerg Sonnenberger0e921f22013-11-11 14:00:37 +00003164// I386-NETBSD:#define __SIG_ATOMIC_WIDTH__ 32
3165// I386-NETBSD:#define __SIZEOF_DOUBLE__ 8
3166// I386-NETBSD:#define __SIZEOF_FLOAT__ 4
3167// I386-NETBSD:#define __SIZEOF_INT__ 4
3168// I386-NETBSD:#define __SIZEOF_LONG_DOUBLE__ 12
3169// I386-NETBSD:#define __SIZEOF_LONG_LONG__ 8
3170// I386-NETBSD:#define __SIZEOF_LONG__ 4
3171// I386-NETBSD:#define __SIZEOF_POINTER__ 4
3172// I386-NETBSD:#define __SIZEOF_PTRDIFF_T__ 4
3173// I386-NETBSD:#define __SIZEOF_SHORT__ 2
3174// I386-NETBSD:#define __SIZEOF_SIZE_T__ 4
3175// I386-NETBSD:#define __SIZEOF_WCHAR_T__ 4
3176// I386-NETBSD:#define __SIZEOF_WINT_T__ 4
3177// I386-NETBSD:#define __SIZE_MAX__ 4294967295U
3178// I386-NETBSD:#define __SIZE_TYPE__ unsigned int
3179// I386-NETBSD:#define __SIZE_WIDTH__ 32
Richard Smith59139022016-09-30 22:41:36 +00003180// I386-NETBSD-CXX:#define __STDCPP_DEFAULT_NEW_ALIGNMENT__ 4U
James Y Knightc97efa42016-02-11 16:51:29 +00003181// I386-NETBSD:#define __UINT16_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00003182// I386-NETBSD:#define __UINT16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00003183// I386-NETBSD:#define __UINT16_TYPE__ unsigned short
3184// I386-NETBSD:#define __UINT32_C_SUFFIX__ U
3185// I386-NETBSD:#define __UINT32_MAX__ 4294967295U
3186// I386-NETBSD:#define __UINT32_TYPE__ unsigned int
3187// I386-NETBSD:#define __UINT64_C_SUFFIX__ ULL
3188// I386-NETBSD:#define __UINT64_MAX__ 18446744073709551615ULL
3189// I386-NETBSD:#define __UINT64_TYPE__ long long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00003190// I386-NETBSD:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00003191// I386-NETBSD:#define __UINT8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00003192// I386-NETBSD:#define __UINT8_TYPE__ unsigned char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00003193// I386-NETBSD:#define __UINTMAX_C_SUFFIX__ ULL
JF Bastienab8d0a02014-06-25 01:31:33 +00003194// I386-NETBSD:#define __UINTMAX_MAX__ 18446744073709551615ULL
Joerg Sonnenberger0e921f22013-11-11 14:00:37 +00003195// I386-NETBSD:#define __UINTMAX_TYPE__ long long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00003196// I386-NETBSD:#define __UINTMAX_WIDTH__ 64
3197// I386-NETBSD:#define __UINTPTR_MAX__ 4294967295U
3198// I386-NETBSD:#define __UINTPTR_TYPE__ unsigned int
3199// I386-NETBSD:#define __UINTPTR_WIDTH__ 32
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00003200// I386-NETBSD:#define __UINT_FAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00003201// I386-NETBSD:#define __UINT_FAST16_TYPE__ unsigned short
3202// I386-NETBSD:#define __UINT_FAST32_MAX__ 4294967295U
3203// I386-NETBSD:#define __UINT_FAST32_TYPE__ unsigned int
3204// I386-NETBSD:#define __UINT_FAST64_MAX__ 18446744073709551615ULL
3205// I386-NETBSD:#define __UINT_FAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00003206// I386-NETBSD:#define __UINT_FAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00003207// I386-NETBSD:#define __UINT_FAST8_TYPE__ unsigned char
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00003208// I386-NETBSD:#define __UINT_LEAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00003209// I386-NETBSD:#define __UINT_LEAST16_TYPE__ unsigned short
3210// I386-NETBSD:#define __UINT_LEAST32_MAX__ 4294967295U
3211// I386-NETBSD:#define __UINT_LEAST32_TYPE__ unsigned int
3212// I386-NETBSD:#define __UINT_LEAST64_MAX__ 18446744073709551615ULL
3213// I386-NETBSD:#define __UINT_LEAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00003214// I386-NETBSD:#define __UINT_LEAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00003215// I386-NETBSD:#define __UINT_LEAST8_TYPE__ unsigned char
Joerg Sonnenberger0e921f22013-11-11 14:00:37 +00003216// I386-NETBSD:#define __USER_LABEL_PREFIX__
3217// I386-NETBSD:#define __WCHAR_MAX__ 2147483647
3218// I386-NETBSD:#define __WCHAR_TYPE__ int
3219// I386-NETBSD:#define __WCHAR_WIDTH__ 32
3220// I386-NETBSD:#define __WINT_TYPE__ int
3221// I386-NETBSD:#define __WINT_WIDTH__ 32
3222// I386-NETBSD:#define __i386 1
3223// I386-NETBSD:#define __i386__ 1
3224// I386-NETBSD:#define i386 1
3225//
James Y Knightc97efa42016-02-11 16:51:29 +00003226// 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 +00003227// I386-NETBSD-SSE:#define __FLT_EVAL_METHOD__ 0
James Y Knightc97efa42016-02-11 16:51:29 +00003228// 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 +00003229// I386-NETBSD6:#define __FLT_EVAL_METHOD__ 1
James Y Knightc97efa42016-02-11 16:51:29 +00003230// 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 +00003231// I386-NETBSD6-SSE:#define __FLT_EVAL_METHOD__ 1
3232
James Y Knightc97efa42016-02-11 16:51:29 +00003233// RUN: %clang_cc1 -E -dM -triple=i686-pc-mingw32 < /dev/null | FileCheck -match-full-lines -check-prefix I386-DECLSPEC %s
3234// RUN: %clang_cc1 -E -dM -fms-extensions -triple=i686-pc-mingw32 < /dev/null | FileCheck -match-full-lines -check-prefix I386-DECLSPEC %s
3235// RUN: %clang_cc1 -E -dM -triple=i686-unknown-cygwin < /dev/null | FileCheck -match-full-lines -check-prefix I386-DECLSPEC %s
3236// RUN: %clang_cc1 -E -dM -fms-extensions -triple=i686-unknown-cygwin < /dev/null | FileCheck -match-full-lines -check-prefix I386-DECLSPEC %s
3237// I386-DECLSPEC: #define __declspec{{.*}}
David Majnemerae1ed0e2015-05-28 04:36:18 +00003238
Joerg Sonnenberger0e921f22013-11-11 14:00:37 +00003239//
Richard Smith59139022016-09-30 22:41:36 +00003240// RUN: %clang_cc1 -E -dM -ffreestanding -triple=mips-none-none < /dev/null | FileCheck -match-full-lines -check-prefix MIPS32BE -check-prefix MIPS32BE-C %s
3241// 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 +00003242//
3243// MIPS32BE:#define MIPSEB 1
3244// MIPS32BE:#define _ABIO32 1
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00003245// MIPS32BE-NOT:#define _LP64
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003246// MIPS32BE:#define _MIPSEB 1
Simon Atanasyan1a3665b62014-01-27 13:59:04 +00003247// MIPS32BE:#define _MIPS_ARCH "mips32r2"
3248// MIPS32BE:#define _MIPS_ARCH_MIPS32R2 1
Simon Atanasyan2c97a812013-10-18 13:13:53 +00003249// MIPS32BE:#define _MIPS_FPSET 16
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003250// MIPS32BE:#define _MIPS_SIM _ABIO32
3251// MIPS32BE:#define _MIPS_SZINT 32
3252// MIPS32BE:#define _MIPS_SZLONG 32
3253// MIPS32BE:#define _MIPS_SZPTR 32
Tim Northovera6a19f12015-02-06 01:25:07 +00003254// MIPS32BE:#define __BIGGEST_ALIGNMENT__ 8
Robert Lytton2c942c62014-03-10 12:06:29 +00003255// MIPS32BE:#define __BIG_ENDIAN__ 1
Dylan Noblesmith673728f2012-07-27 18:34:31 +00003256// MIPS32BE:#define __BYTE_ORDER__ __ORDER_BIG_ENDIAN__
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003257// MIPS32BE:#define __CHAR16_TYPE__ unsigned short
3258// MIPS32BE:#define __CHAR32_TYPE__ unsigned int
3259// MIPS32BE:#define __CHAR_BIT__ 8
3260// MIPS32BE:#define __CONSTANT_CFSTRINGS__ 1
3261// MIPS32BE:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
3262// MIPS32BE:#define __DBL_DIG__ 15
3263// MIPS32BE:#define __DBL_EPSILON__ 2.2204460492503131e-16
3264// MIPS32BE:#define __DBL_HAS_DENORM__ 1
3265// MIPS32BE:#define __DBL_HAS_INFINITY__ 1
3266// MIPS32BE:#define __DBL_HAS_QUIET_NAN__ 1
3267// MIPS32BE:#define __DBL_MANT_DIG__ 53
3268// MIPS32BE:#define __DBL_MAX_10_EXP__ 308
3269// MIPS32BE:#define __DBL_MAX_EXP__ 1024
3270// MIPS32BE:#define __DBL_MAX__ 1.7976931348623157e+308
3271// MIPS32BE:#define __DBL_MIN_10_EXP__ (-307)
3272// MIPS32BE:#define __DBL_MIN_EXP__ (-1021)
3273// MIPS32BE:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00003274// MIPS32BE:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003275// MIPS32BE:#define __FLT_DENORM_MIN__ 1.40129846e-45F
3276// MIPS32BE:#define __FLT_DIG__ 6
3277// MIPS32BE:#define __FLT_EPSILON__ 1.19209290e-7F
3278// MIPS32BE:#define __FLT_EVAL_METHOD__ 0
3279// MIPS32BE:#define __FLT_HAS_DENORM__ 1
3280// MIPS32BE:#define __FLT_HAS_INFINITY__ 1
3281// MIPS32BE:#define __FLT_HAS_QUIET_NAN__ 1
3282// MIPS32BE:#define __FLT_MANT_DIG__ 24
3283// MIPS32BE:#define __FLT_MAX_10_EXP__ 38
3284// MIPS32BE:#define __FLT_MAX_EXP__ 128
3285// MIPS32BE:#define __FLT_MAX__ 3.40282347e+38F
3286// MIPS32BE:#define __FLT_MIN_10_EXP__ (-37)
3287// MIPS32BE:#define __FLT_MIN_EXP__ (-125)
3288// MIPS32BE:#define __FLT_MIN__ 1.17549435e-38F
3289// MIPS32BE:#define __FLT_RADIX__ 2
James Y Knightc97efa42016-02-11 16:51:29 +00003290// MIPS32BE:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003291// MIPS32BE:#define __INT16_FMTd__ "hd"
3292// MIPS32BE:#define __INT16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00003293// MIPS32BE:#define __INT16_MAX__ 32767
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003294// MIPS32BE:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +00003295// MIPS32BE:#define __INT32_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003296// MIPS32BE:#define __INT32_FMTd__ "d"
3297// MIPS32BE:#define __INT32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00003298// MIPS32BE:#define __INT32_MAX__ 2147483647
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003299// MIPS32BE:#define __INT32_TYPE__ int
3300// MIPS32BE:#define __INT64_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003301// MIPS32BE:#define __INT64_FMTd__ "lld"
3302// MIPS32BE:#define __INT64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00003303// MIPS32BE:#define __INT64_MAX__ 9223372036854775807LL
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003304// MIPS32BE:#define __INT64_TYPE__ long long int
James Y Knightc97efa42016-02-11 16:51:29 +00003305// MIPS32BE:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003306// MIPS32BE:#define __INT8_FMTd__ "hhd"
3307// MIPS32BE:#define __INT8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00003308// MIPS32BE:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00003309// MIPS32BE:#define __INT8_TYPE__ signed char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00003310// MIPS32BE:#define __INTMAX_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003311// MIPS32BE:#define __INTMAX_FMTd__ "lld"
3312// MIPS32BE:#define __INTMAX_FMTi__ "lli"
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003313// MIPS32BE:#define __INTMAX_MAX__ 9223372036854775807LL
3314// MIPS32BE:#define __INTMAX_TYPE__ long long int
3315// MIPS32BE:#define __INTMAX_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003316// MIPS32BE:#define __INTPTR_FMTd__ "ld"
3317// MIPS32BE:#define __INTPTR_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00003318// MIPS32BE:#define __INTPTR_MAX__ 2147483647L
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003319// MIPS32BE:#define __INTPTR_TYPE__ long int
3320// MIPS32BE:#define __INTPTR_WIDTH__ 32
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003321// MIPS32BE:#define __INT_FAST16_FMTd__ "hd"
3322// MIPS32BE:#define __INT_FAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00003323// MIPS32BE:#define __INT_FAST16_MAX__ 32767
3324// MIPS32BE:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003325// MIPS32BE:#define __INT_FAST32_FMTd__ "d"
3326// MIPS32BE:#define __INT_FAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00003327// MIPS32BE:#define __INT_FAST32_MAX__ 2147483647
3328// MIPS32BE:#define __INT_FAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003329// MIPS32BE:#define __INT_FAST64_FMTd__ "lld"
3330// MIPS32BE:#define __INT_FAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00003331// MIPS32BE:#define __INT_FAST64_MAX__ 9223372036854775807LL
3332// MIPS32BE:#define __INT_FAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003333// MIPS32BE:#define __INT_FAST8_FMTd__ "hhd"
3334// MIPS32BE:#define __INT_FAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00003335// MIPS32BE:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00003336// MIPS32BE:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003337// MIPS32BE:#define __INT_LEAST16_FMTd__ "hd"
3338// MIPS32BE:#define __INT_LEAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00003339// MIPS32BE:#define __INT_LEAST16_MAX__ 32767
3340// MIPS32BE:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003341// MIPS32BE:#define __INT_LEAST32_FMTd__ "d"
3342// MIPS32BE:#define __INT_LEAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00003343// MIPS32BE:#define __INT_LEAST32_MAX__ 2147483647
3344// MIPS32BE:#define __INT_LEAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003345// MIPS32BE:#define __INT_LEAST64_FMTd__ "lld"
3346// MIPS32BE:#define __INT_LEAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00003347// MIPS32BE:#define __INT_LEAST64_MAX__ 9223372036854775807LL
3348// MIPS32BE:#define __INT_LEAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003349// MIPS32BE:#define __INT_LEAST8_FMTd__ "hhd"
3350// MIPS32BE:#define __INT_LEAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00003351// MIPS32BE:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00003352// MIPS32BE:#define __INT_LEAST8_TYPE__ signed char
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003353// MIPS32BE:#define __INT_MAX__ 2147483647
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00003354// MIPS32BE:#define __LDBL_DENORM_MIN__ 4.9406564584124654e-324L
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003355// MIPS32BE:#define __LDBL_DIG__ 15
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00003356// MIPS32BE:#define __LDBL_EPSILON__ 2.2204460492503131e-16L
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003357// MIPS32BE:#define __LDBL_HAS_DENORM__ 1
3358// MIPS32BE:#define __LDBL_HAS_INFINITY__ 1
3359// MIPS32BE:#define __LDBL_HAS_QUIET_NAN__ 1
3360// MIPS32BE:#define __LDBL_MANT_DIG__ 53
3361// MIPS32BE:#define __LDBL_MAX_10_EXP__ 308
3362// MIPS32BE:#define __LDBL_MAX_EXP__ 1024
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00003363// MIPS32BE:#define __LDBL_MAX__ 1.7976931348623157e+308L
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003364// MIPS32BE:#define __LDBL_MIN_10_EXP__ (-307)
3365// MIPS32BE:#define __LDBL_MIN_EXP__ (-1021)
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00003366// MIPS32BE:#define __LDBL_MIN__ 2.2250738585072014e-308L
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003367// MIPS32BE:#define __LONG_LONG_MAX__ 9223372036854775807LL
3368// MIPS32BE:#define __LONG_MAX__ 2147483647L
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00003369// MIPS32BE-NOT:#define __LP64__
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003370// MIPS32BE:#define __MIPSEB 1
3371// MIPS32BE:#define __MIPSEB__ 1
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003372// MIPS32BE:#define __POINTER_WIDTH__ 32
3373// MIPS32BE:#define __PRAGMA_REDEFINE_EXTNAME 1
3374// MIPS32BE:#define __PTRDIFF_TYPE__ int
3375// MIPS32BE:#define __PTRDIFF_WIDTH__ 32
James Y Knightc97efa42016-02-11 16:51:29 +00003376// MIPS32BE:#define __REGISTER_PREFIX__
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003377// MIPS32BE:#define __SCHAR_MAX__ 127
3378// MIPS32BE:#define __SHRT_MAX__ 32767
Joerg Sonnenbergerb3a49692014-07-17 18:31:20 +00003379// MIPS32BE:#define __SIG_ATOMIC_MAX__ 2147483647
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003380// MIPS32BE:#define __SIG_ATOMIC_WIDTH__ 32
3381// MIPS32BE:#define __SIZEOF_DOUBLE__ 8
3382// MIPS32BE:#define __SIZEOF_FLOAT__ 4
3383// MIPS32BE:#define __SIZEOF_INT__ 4
3384// MIPS32BE:#define __SIZEOF_LONG_DOUBLE__ 8
3385// MIPS32BE:#define __SIZEOF_LONG_LONG__ 8
3386// MIPS32BE:#define __SIZEOF_LONG__ 4
3387// MIPS32BE:#define __SIZEOF_POINTER__ 4
3388// MIPS32BE:#define __SIZEOF_PTRDIFF_T__ 4
3389// MIPS32BE:#define __SIZEOF_SHORT__ 2
3390// MIPS32BE:#define __SIZEOF_SIZE_T__ 4
3391// MIPS32BE:#define __SIZEOF_WCHAR_T__ 4
3392// MIPS32BE:#define __SIZEOF_WINT_T__ 4
Evgeniy Stepanovc3c725a2013-03-28 08:36:54 +00003393// MIPS32BE:#define __SIZE_MAX__ 4294967295U
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003394// MIPS32BE:#define __SIZE_TYPE__ unsigned int
3395// MIPS32BE:#define __SIZE_WIDTH__ 32
Richard Smith59139022016-09-30 22:41:36 +00003396// MIPS32BE-CXX:#define __STDCPP_DEFAULT_NEW_ALIGNMENT__ 8U
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003397// MIPS32BE:#define __STDC_HOSTED__ 0
Richard Smith59139022016-09-30 22:41:36 +00003398// MIPS32BE-C:#define __STDC_VERSION__ 201112L
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003399// MIPS32BE:#define __STDC__ 1
James Y Knightc97efa42016-02-11 16:51:29 +00003400// MIPS32BE:#define __UINT16_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00003401// MIPS32BE:#define __UINT16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00003402// MIPS32BE:#define __UINT16_TYPE__ unsigned short
3403// MIPS32BE:#define __UINT32_C_SUFFIX__ U
3404// MIPS32BE:#define __UINT32_MAX__ 4294967295U
3405// MIPS32BE:#define __UINT32_TYPE__ unsigned int
3406// MIPS32BE:#define __UINT64_C_SUFFIX__ ULL
3407// MIPS32BE:#define __UINT64_MAX__ 18446744073709551615ULL
3408// MIPS32BE:#define __UINT64_TYPE__ long long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00003409// MIPS32BE:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00003410// MIPS32BE:#define __UINT8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00003411// MIPS32BE:#define __UINT8_TYPE__ unsigned char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00003412// MIPS32BE:#define __UINTMAX_C_SUFFIX__ ULL
JF Bastienab8d0a02014-06-25 01:31:33 +00003413// MIPS32BE:#define __UINTMAX_MAX__ 18446744073709551615ULL
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003414// MIPS32BE:#define __UINTMAX_TYPE__ long long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00003415// MIPS32BE:#define __UINTMAX_WIDTH__ 64
James Y Knightc97efa42016-02-11 16:51:29 +00003416// MIPS32BE:#define __UINTPTR_MAX__ 4294967295UL
Joerg Sonnenberger3809a7a2014-07-14 20:40:56 +00003417// MIPS32BE:#define __UINTPTR_TYPE__ long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00003418// MIPS32BE:#define __UINTPTR_WIDTH__ 32
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00003419// MIPS32BE:#define __UINT_FAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00003420// MIPS32BE:#define __UINT_FAST16_TYPE__ unsigned short
3421// MIPS32BE:#define __UINT_FAST32_MAX__ 4294967295U
3422// MIPS32BE:#define __UINT_FAST32_TYPE__ unsigned int
3423// MIPS32BE:#define __UINT_FAST64_MAX__ 18446744073709551615ULL
3424// MIPS32BE:#define __UINT_FAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00003425// MIPS32BE:#define __UINT_FAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00003426// MIPS32BE:#define __UINT_FAST8_TYPE__ unsigned char
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00003427// MIPS32BE:#define __UINT_LEAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00003428// MIPS32BE:#define __UINT_LEAST16_TYPE__ unsigned short
3429// MIPS32BE:#define __UINT_LEAST32_MAX__ 4294967295U
3430// MIPS32BE:#define __UINT_LEAST32_TYPE__ unsigned int
3431// MIPS32BE:#define __UINT_LEAST64_MAX__ 18446744073709551615ULL
3432// MIPS32BE:#define __UINT_LEAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00003433// MIPS32BE:#define __UINT_LEAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00003434// MIPS32BE:#define __UINT_LEAST8_TYPE__ unsigned char
James Y Knightb214cbc2016-03-04 19:00:41 +00003435// MIPS32BE:#define __USER_LABEL_PREFIX__
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003436// MIPS32BE:#define __WCHAR_MAX__ 2147483647
3437// MIPS32BE:#define __WCHAR_TYPE__ int
3438// MIPS32BE:#define __WCHAR_WIDTH__ 32
3439// MIPS32BE:#define __WINT_TYPE__ int
3440// MIPS32BE:#define __WINT_WIDTH__ 32
3441// MIPS32BE:#define __clang__ 1
3442// MIPS32BE:#define __llvm__ 1
Simon Atanasyan26292cc2014-01-27 13:59:11 +00003443// MIPS32BE:#define __mips 32
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003444// MIPS32BE:#define __mips__ 1
Simon Dardisdf827a72017-02-21 16:01:00 +00003445// MIPS32BE:#define __mips_abicalls 1
Stefan Maksimoviceb632562018-08-22 09:26:25 +00003446// MIPS32BE:#define __mips_fpr 0
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003447// MIPS32BE:#define __mips_hard_float 1
3448// MIPS32BE:#define __mips_o32 1
3449// MIPS32BE:#define _mips 1
3450// MIPS32BE:#define mips 1
3451//
James Y Knightc97efa42016-02-11 16:51:29 +00003452// 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 +00003453//
3454// MIPS32EL:#define MIPSEL 1
3455// MIPS32EL:#define _ABIO32 1
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00003456// MIPS32EL-NOT:#define _LP64
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003457// MIPS32EL:#define _MIPSEL 1
Simon Atanasyan1a3665b62014-01-27 13:59:04 +00003458// MIPS32EL:#define _MIPS_ARCH "mips32r2"
3459// MIPS32EL:#define _MIPS_ARCH_MIPS32R2 1
Simon Atanasyan2c97a812013-10-18 13:13:53 +00003460// MIPS32EL:#define _MIPS_FPSET 16
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003461// MIPS32EL:#define _MIPS_SIM _ABIO32
3462// MIPS32EL:#define _MIPS_SZINT 32
3463// MIPS32EL:#define _MIPS_SZLONG 32
3464// MIPS32EL:#define _MIPS_SZPTR 32
Tim Northovera6a19f12015-02-06 01:25:07 +00003465// MIPS32EL:#define __BIGGEST_ALIGNMENT__ 8
Dylan Noblesmith673728f2012-07-27 18:34:31 +00003466// MIPS32EL:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003467// MIPS32EL:#define __CHAR16_TYPE__ unsigned short
3468// MIPS32EL:#define __CHAR32_TYPE__ unsigned int
3469// MIPS32EL:#define __CHAR_BIT__ 8
3470// MIPS32EL:#define __CONSTANT_CFSTRINGS__ 1
3471// MIPS32EL:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
3472// MIPS32EL:#define __DBL_DIG__ 15
3473// MIPS32EL:#define __DBL_EPSILON__ 2.2204460492503131e-16
3474// MIPS32EL:#define __DBL_HAS_DENORM__ 1
3475// MIPS32EL:#define __DBL_HAS_INFINITY__ 1
3476// MIPS32EL:#define __DBL_HAS_QUIET_NAN__ 1
3477// MIPS32EL:#define __DBL_MANT_DIG__ 53
3478// MIPS32EL:#define __DBL_MAX_10_EXP__ 308
3479// MIPS32EL:#define __DBL_MAX_EXP__ 1024
3480// MIPS32EL:#define __DBL_MAX__ 1.7976931348623157e+308
3481// MIPS32EL:#define __DBL_MIN_10_EXP__ (-307)
3482// MIPS32EL:#define __DBL_MIN_EXP__ (-1021)
3483// MIPS32EL:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00003484// MIPS32EL:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003485// MIPS32EL:#define __FLT_DENORM_MIN__ 1.40129846e-45F
3486// MIPS32EL:#define __FLT_DIG__ 6
3487// MIPS32EL:#define __FLT_EPSILON__ 1.19209290e-7F
3488// MIPS32EL:#define __FLT_EVAL_METHOD__ 0
3489// MIPS32EL:#define __FLT_HAS_DENORM__ 1
3490// MIPS32EL:#define __FLT_HAS_INFINITY__ 1
3491// MIPS32EL:#define __FLT_HAS_QUIET_NAN__ 1
3492// MIPS32EL:#define __FLT_MANT_DIG__ 24
3493// MIPS32EL:#define __FLT_MAX_10_EXP__ 38
3494// MIPS32EL:#define __FLT_MAX_EXP__ 128
3495// MIPS32EL:#define __FLT_MAX__ 3.40282347e+38F
3496// MIPS32EL:#define __FLT_MIN_10_EXP__ (-37)
3497// MIPS32EL:#define __FLT_MIN_EXP__ (-125)
3498// MIPS32EL:#define __FLT_MIN__ 1.17549435e-38F
3499// MIPS32EL:#define __FLT_RADIX__ 2
James Y Knightc97efa42016-02-11 16:51:29 +00003500// MIPS32EL:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003501// MIPS32EL:#define __INT16_FMTd__ "hd"
3502// MIPS32EL:#define __INT16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00003503// MIPS32EL:#define __INT16_MAX__ 32767
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003504// MIPS32EL:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +00003505// MIPS32EL:#define __INT32_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003506// MIPS32EL:#define __INT32_FMTd__ "d"
3507// MIPS32EL:#define __INT32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00003508// MIPS32EL:#define __INT32_MAX__ 2147483647
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003509// MIPS32EL:#define __INT32_TYPE__ int
3510// MIPS32EL:#define __INT64_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003511// MIPS32EL:#define __INT64_FMTd__ "lld"
3512// MIPS32EL:#define __INT64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00003513// MIPS32EL:#define __INT64_MAX__ 9223372036854775807LL
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003514// MIPS32EL:#define __INT64_TYPE__ long long int
James Y Knightc97efa42016-02-11 16:51:29 +00003515// MIPS32EL:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003516// MIPS32EL:#define __INT8_FMTd__ "hhd"
3517// MIPS32EL:#define __INT8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00003518// MIPS32EL:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00003519// MIPS32EL:#define __INT8_TYPE__ signed char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00003520// MIPS32EL:#define __INTMAX_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003521// MIPS32EL:#define __INTMAX_FMTd__ "lld"
3522// MIPS32EL:#define __INTMAX_FMTi__ "lli"
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003523// MIPS32EL:#define __INTMAX_MAX__ 9223372036854775807LL
3524// MIPS32EL:#define __INTMAX_TYPE__ long long int
3525// MIPS32EL:#define __INTMAX_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003526// MIPS32EL:#define __INTPTR_FMTd__ "ld"
3527// MIPS32EL:#define __INTPTR_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00003528// MIPS32EL:#define __INTPTR_MAX__ 2147483647L
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003529// MIPS32EL:#define __INTPTR_TYPE__ long int
3530// MIPS32EL:#define __INTPTR_WIDTH__ 32
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003531// MIPS32EL:#define __INT_FAST16_FMTd__ "hd"
3532// MIPS32EL:#define __INT_FAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00003533// MIPS32EL:#define __INT_FAST16_MAX__ 32767
3534// MIPS32EL:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003535// MIPS32EL:#define __INT_FAST32_FMTd__ "d"
3536// MIPS32EL:#define __INT_FAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00003537// MIPS32EL:#define __INT_FAST32_MAX__ 2147483647
3538// MIPS32EL:#define __INT_FAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003539// MIPS32EL:#define __INT_FAST64_FMTd__ "lld"
3540// MIPS32EL:#define __INT_FAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00003541// MIPS32EL:#define __INT_FAST64_MAX__ 9223372036854775807LL
3542// MIPS32EL:#define __INT_FAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003543// MIPS32EL:#define __INT_FAST8_FMTd__ "hhd"
3544// MIPS32EL:#define __INT_FAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00003545// MIPS32EL:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00003546// MIPS32EL:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003547// MIPS32EL:#define __INT_LEAST16_FMTd__ "hd"
3548// MIPS32EL:#define __INT_LEAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00003549// MIPS32EL:#define __INT_LEAST16_MAX__ 32767
3550// MIPS32EL:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003551// MIPS32EL:#define __INT_LEAST32_FMTd__ "d"
3552// MIPS32EL:#define __INT_LEAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00003553// MIPS32EL:#define __INT_LEAST32_MAX__ 2147483647
3554// MIPS32EL:#define __INT_LEAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003555// MIPS32EL:#define __INT_LEAST64_FMTd__ "lld"
3556// MIPS32EL:#define __INT_LEAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00003557// MIPS32EL:#define __INT_LEAST64_MAX__ 9223372036854775807LL
3558// MIPS32EL:#define __INT_LEAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00003559// MIPS32EL:#define __INT_LEAST8_FMTd__ "hhd"
3560// MIPS32EL:#define __INT_LEAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00003561// MIPS32EL:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00003562// MIPS32EL:#define __INT_LEAST8_TYPE__ signed char
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003563// MIPS32EL:#define __INT_MAX__ 2147483647
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00003564// MIPS32EL:#define __LDBL_DENORM_MIN__ 4.9406564584124654e-324L
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003565// MIPS32EL:#define __LDBL_DIG__ 15
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00003566// MIPS32EL:#define __LDBL_EPSILON__ 2.2204460492503131e-16L
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003567// MIPS32EL:#define __LDBL_HAS_DENORM__ 1
3568// MIPS32EL:#define __LDBL_HAS_INFINITY__ 1
3569// MIPS32EL:#define __LDBL_HAS_QUIET_NAN__ 1
3570// MIPS32EL:#define __LDBL_MANT_DIG__ 53
3571// MIPS32EL:#define __LDBL_MAX_10_EXP__ 308
3572// MIPS32EL:#define __LDBL_MAX_EXP__ 1024
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00003573// MIPS32EL:#define __LDBL_MAX__ 1.7976931348623157e+308L
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003574// MIPS32EL:#define __LDBL_MIN_10_EXP__ (-307)
3575// MIPS32EL:#define __LDBL_MIN_EXP__ (-1021)
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00003576// MIPS32EL:#define __LDBL_MIN__ 2.2250738585072014e-308L
Robert Lytton2c942c62014-03-10 12:06:29 +00003577// MIPS32EL:#define __LITTLE_ENDIAN__ 1
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003578// MIPS32EL:#define __LONG_LONG_MAX__ 9223372036854775807LL
3579// MIPS32EL:#define __LONG_MAX__ 2147483647L
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00003580// MIPS32EL-NOT:#define __LP64__
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003581// MIPS32EL:#define __MIPSEL 1
3582// MIPS32EL:#define __MIPSEL__ 1
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003583// MIPS32EL:#define __POINTER_WIDTH__ 32
3584// MIPS32EL:#define __PRAGMA_REDEFINE_EXTNAME 1
3585// MIPS32EL:#define __PTRDIFF_TYPE__ int
3586// MIPS32EL:#define __PTRDIFF_WIDTH__ 32
James Y Knightc97efa42016-02-11 16:51:29 +00003587// MIPS32EL:#define __REGISTER_PREFIX__
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003588// MIPS32EL:#define __SCHAR_MAX__ 127
3589// MIPS32EL:#define __SHRT_MAX__ 32767
Joerg Sonnenbergerb3a49692014-07-17 18:31:20 +00003590// MIPS32EL:#define __SIG_ATOMIC_MAX__ 2147483647
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003591// MIPS32EL:#define __SIG_ATOMIC_WIDTH__ 32
3592// MIPS32EL:#define __SIZEOF_DOUBLE__ 8
3593// MIPS32EL:#define __SIZEOF_FLOAT__ 4
3594// MIPS32EL:#define __SIZEOF_INT__ 4
3595// MIPS32EL:#define __SIZEOF_LONG_DOUBLE__ 8
3596// MIPS32EL:#define __SIZEOF_LONG_LONG__ 8
3597// MIPS32EL:#define __SIZEOF_LONG__ 4
3598// MIPS32EL:#define __SIZEOF_POINTER__ 4
3599// MIPS32EL:#define __SIZEOF_PTRDIFF_T__ 4
3600// MIPS32EL:#define __SIZEOF_SHORT__ 2
3601// MIPS32EL:#define __SIZEOF_SIZE_T__ 4
3602// MIPS32EL:#define __SIZEOF_WCHAR_T__ 4
3603// MIPS32EL:#define __SIZEOF_WINT_T__ 4
Evgeniy Stepanovc3c725a2013-03-28 08:36:54 +00003604// MIPS32EL:#define __SIZE_MAX__ 4294967295U
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003605// MIPS32EL:#define __SIZE_TYPE__ unsigned int
3606// MIPS32EL:#define __SIZE_WIDTH__ 32
James Y Knightc97efa42016-02-11 16:51:29 +00003607// MIPS32EL:#define __UINT16_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00003608// MIPS32EL:#define __UINT16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00003609// MIPS32EL:#define __UINT16_TYPE__ unsigned short
3610// MIPS32EL:#define __UINT32_C_SUFFIX__ U
3611// MIPS32EL:#define __UINT32_MAX__ 4294967295U
3612// MIPS32EL:#define __UINT32_TYPE__ unsigned int
3613// MIPS32EL:#define __UINT64_C_SUFFIX__ ULL
3614// MIPS32EL:#define __UINT64_MAX__ 18446744073709551615ULL
3615// MIPS32EL:#define __UINT64_TYPE__ long long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00003616// MIPS32EL:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00003617// MIPS32EL:#define __UINT8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00003618// MIPS32EL:#define __UINT8_TYPE__ unsigned char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00003619// MIPS32EL:#define __UINTMAX_C_SUFFIX__ ULL
JF Bastienab8d0a02014-06-25 01:31:33 +00003620// MIPS32EL:#define __UINTMAX_MAX__ 18446744073709551615ULL
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003621// MIPS32EL:#define __UINTMAX_TYPE__ long long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00003622// MIPS32EL:#define __UINTMAX_WIDTH__ 64
James Y Knightc97efa42016-02-11 16:51:29 +00003623// MIPS32EL:#define __UINTPTR_MAX__ 4294967295UL
Joerg Sonnenberger3809a7a2014-07-14 20:40:56 +00003624// MIPS32EL:#define __UINTPTR_TYPE__ long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00003625// MIPS32EL:#define __UINTPTR_WIDTH__ 32
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00003626// MIPS32EL:#define __UINT_FAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00003627// MIPS32EL:#define __UINT_FAST16_TYPE__ unsigned short
3628// MIPS32EL:#define __UINT_FAST32_MAX__ 4294967295U
3629// MIPS32EL:#define __UINT_FAST32_TYPE__ unsigned int
3630// MIPS32EL:#define __UINT_FAST64_MAX__ 18446744073709551615ULL
3631// MIPS32EL:#define __UINT_FAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00003632// MIPS32EL:#define __UINT_FAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00003633// MIPS32EL:#define __UINT_FAST8_TYPE__ unsigned char
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00003634// MIPS32EL:#define __UINT_LEAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00003635// MIPS32EL:#define __UINT_LEAST16_TYPE__ unsigned short
3636// MIPS32EL:#define __UINT_LEAST32_MAX__ 4294967295U
3637// MIPS32EL:#define __UINT_LEAST32_TYPE__ unsigned int
3638// MIPS32EL:#define __UINT_LEAST64_MAX__ 18446744073709551615ULL
3639// MIPS32EL:#define __UINT_LEAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00003640// MIPS32EL:#define __UINT_LEAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00003641// MIPS32EL:#define __UINT_LEAST8_TYPE__ unsigned char
James Y Knightb214cbc2016-03-04 19:00:41 +00003642// MIPS32EL:#define __USER_LABEL_PREFIX__
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003643// MIPS32EL:#define __WCHAR_MAX__ 2147483647
3644// MIPS32EL:#define __WCHAR_TYPE__ int
3645// MIPS32EL:#define __WCHAR_WIDTH__ 32
3646// MIPS32EL:#define __WINT_TYPE__ int
3647// MIPS32EL:#define __WINT_WIDTH__ 32
3648// MIPS32EL:#define __clang__ 1
3649// MIPS32EL:#define __llvm__ 1
Simon Atanasyan26292cc2014-01-27 13:59:11 +00003650// MIPS32EL:#define __mips 32
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003651// MIPS32EL:#define __mips__ 1
Simon Dardisdf827a72017-02-21 16:01:00 +00003652// MIPS32EL:#define __mips_abicalls 1
Stefan Maksimoviceb632562018-08-22 09:26:25 +00003653// MIPS32EL:#define __mips_fpr 0
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00003654// MIPS32EL:#define __mips_hard_float 1
3655// MIPS32EL:#define __mips_o32 1
3656// MIPS32EL:#define _mips 1
3657// MIPS32EL:#define mips 1
3658//
Simon Atanasyan495523e42015-01-22 23:16:48 +00003659// RUN: %clang_cc1 -E -dM -ffreestanding \
3660// RUN: -triple=mips64-none-none -target-abi n32 < /dev/null \
Richard Smith59139022016-09-30 22:41:36 +00003661// RUN: | FileCheck -match-full-lines -check-prefix MIPSN32BE -check-prefix MIPSN32BE-C %s
3662// RUN: %clang_cc1 -x c++ -E -dM -ffreestanding \
3663// RUN: -triple=mips64-none-none -target-abi n32 < /dev/null \
3664// RUN: | FileCheck -match-full-lines -check-prefix MIPSN32BE -check-prefix MIPSN32BE-CXX %s
Simon Atanasyan495523e42015-01-22 23:16:48 +00003665//
3666// MIPSN32BE: #define MIPSEB 1
3667// MIPSN32BE: #define _ABIN32 2
3668// MIPSN32BE: #define _ILP32 1
3669// MIPSN32BE: #define _MIPSEB 1
3670// MIPSN32BE: #define _MIPS_ARCH "mips64r2"
3671// MIPSN32BE: #define _MIPS_ARCH_MIPS64R2 1
3672// MIPSN32BE: #define _MIPS_FPSET 32
3673// MIPSN32BE: #define _MIPS_ISA _MIPS_ISA_MIPS64
3674// MIPSN32BE: #define _MIPS_SIM _ABIN32
3675// MIPSN32BE: #define _MIPS_SZINT 32
3676// MIPSN32BE: #define _MIPS_SZLONG 32
3677// MIPSN32BE: #define _MIPS_SZPTR 32
3678// MIPSN32BE: #define __ATOMIC_ACQUIRE 2
3679// MIPSN32BE: #define __ATOMIC_ACQ_REL 4
3680// MIPSN32BE: #define __ATOMIC_CONSUME 1
3681// MIPSN32BE: #define __ATOMIC_RELAXED 0
3682// MIPSN32BE: #define __ATOMIC_RELEASE 3
3683// MIPSN32BE: #define __ATOMIC_SEQ_CST 5
3684// MIPSN32BE: #define __BIG_ENDIAN__ 1
3685// MIPSN32BE: #define __BYTE_ORDER__ __ORDER_BIG_ENDIAN__
3686// MIPSN32BE: #define __CHAR16_TYPE__ unsigned short
3687// MIPSN32BE: #define __CHAR32_TYPE__ unsigned int
3688// MIPSN32BE: #define __CHAR_BIT__ 8
3689// MIPSN32BE: #define __CONSTANT_CFSTRINGS__ 1
3690// MIPSN32BE: #define __DBL_DENORM_MIN__ 4.9406564584124654e-324
3691// MIPSN32BE: #define __DBL_DIG__ 15
3692// MIPSN32BE: #define __DBL_EPSILON__ 2.2204460492503131e-16
3693// MIPSN32BE: #define __DBL_HAS_DENORM__ 1
3694// MIPSN32BE: #define __DBL_HAS_INFINITY__ 1
3695// MIPSN32BE: #define __DBL_HAS_QUIET_NAN__ 1
3696// MIPSN32BE: #define __DBL_MANT_DIG__ 53
3697// MIPSN32BE: #define __DBL_MAX_10_EXP__ 308
3698// MIPSN32BE: #define __DBL_MAX_EXP__ 1024
3699// MIPSN32BE: #define __DBL_MAX__ 1.7976931348623157e+308
3700// MIPSN32BE: #define __DBL_MIN_10_EXP__ (-307)
3701// MIPSN32BE: #define __DBL_MIN_EXP__ (-1021)
3702// MIPSN32BE: #define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00003703// MIPSN32BE: #define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Simon Atanasyan495523e42015-01-22 23:16:48 +00003704// MIPSN32BE: #define __FINITE_MATH_ONLY__ 0
3705// MIPSN32BE: #define __FLT_DENORM_MIN__ 1.40129846e-45F
3706// MIPSN32BE: #define __FLT_DIG__ 6
3707// MIPSN32BE: #define __FLT_EPSILON__ 1.19209290e-7F
3708// MIPSN32BE: #define __FLT_EVAL_METHOD__ 0
3709// MIPSN32BE: #define __FLT_HAS_DENORM__ 1
3710// MIPSN32BE: #define __FLT_HAS_INFINITY__ 1
3711// MIPSN32BE: #define __FLT_HAS_QUIET_NAN__ 1
3712// MIPSN32BE: #define __FLT_MANT_DIG__ 24
3713// MIPSN32BE: #define __FLT_MAX_10_EXP__ 38
3714// MIPSN32BE: #define __FLT_MAX_EXP__ 128
3715// MIPSN32BE: #define __FLT_MAX__ 3.40282347e+38F
3716// MIPSN32BE: #define __FLT_MIN_10_EXP__ (-37)
3717// MIPSN32BE: #define __FLT_MIN_EXP__ (-125)
3718// MIPSN32BE: #define __FLT_MIN__ 1.17549435e-38F
3719// MIPSN32BE: #define __FLT_RADIX__ 2
3720// MIPSN32BE: #define __GCC_ATOMIC_BOOL_LOCK_FREE 2
3721// MIPSN32BE: #define __GCC_ATOMIC_CHAR16_T_LOCK_FREE 2
3722// MIPSN32BE: #define __GCC_ATOMIC_CHAR32_T_LOCK_FREE 2
3723// MIPSN32BE: #define __GCC_ATOMIC_CHAR_LOCK_FREE 2
3724// MIPSN32BE: #define __GCC_ATOMIC_INT_LOCK_FREE 2
3725// MIPSN32BE: #define __GCC_ATOMIC_LLONG_LOCK_FREE 2
3726// MIPSN32BE: #define __GCC_ATOMIC_LONG_LOCK_FREE 2
3727// MIPSN32BE: #define __GCC_ATOMIC_POINTER_LOCK_FREE 2
3728// MIPSN32BE: #define __GCC_ATOMIC_SHORT_LOCK_FREE 2
3729// MIPSN32BE: #define __GCC_ATOMIC_TEST_AND_SET_TRUEVAL 1
3730// MIPSN32BE: #define __GCC_ATOMIC_WCHAR_T_LOCK_FREE 2
3731// MIPSN32BE: #define __GNUC_MINOR__ 2
3732// MIPSN32BE: #define __GNUC_PATCHLEVEL__ 1
Richard Smith59139022016-09-30 22:41:36 +00003733// MIPSN32BE-C: #define __GNUC_STDC_INLINE__ 1
Simon Atanasyan495523e42015-01-22 23:16:48 +00003734// MIPSN32BE: #define __GNUC__ 4
3735// MIPSN32BE: #define __GXX_ABI_VERSION 1002
Simon Atanasyan495523e42015-01-22 23:16:48 +00003736// MIPSN32BE: #define __ILP32__ 1
3737// MIPSN32BE: #define __INT16_C_SUFFIX__
3738// MIPSN32BE: #define __INT16_FMTd__ "hd"
3739// MIPSN32BE: #define __INT16_FMTi__ "hi"
3740// MIPSN32BE: #define __INT16_MAX__ 32767
3741// MIPSN32BE: #define __INT16_TYPE__ short
3742// MIPSN32BE: #define __INT32_C_SUFFIX__
3743// MIPSN32BE: #define __INT32_FMTd__ "d"
3744// MIPSN32BE: #define __INT32_FMTi__ "i"
3745// MIPSN32BE: #define __INT32_MAX__ 2147483647
3746// MIPSN32BE: #define __INT32_TYPE__ int
3747// MIPSN32BE: #define __INT64_C_SUFFIX__ LL
3748// MIPSN32BE: #define __INT64_FMTd__ "lld"
3749// MIPSN32BE: #define __INT64_FMTi__ "lli"
3750// MIPSN32BE: #define __INT64_MAX__ 9223372036854775807LL
3751// MIPSN32BE: #define __INT64_TYPE__ long long int
3752// MIPSN32BE: #define __INT8_C_SUFFIX__
3753// MIPSN32BE: #define __INT8_FMTd__ "hhd"
3754// MIPSN32BE: #define __INT8_FMTi__ "hhi"
3755// MIPSN32BE: #define __INT8_MAX__ 127
3756// MIPSN32BE: #define __INT8_TYPE__ signed char
3757// MIPSN32BE: #define __INTMAX_C_SUFFIX__ LL
3758// MIPSN32BE: #define __INTMAX_FMTd__ "lld"
3759// MIPSN32BE: #define __INTMAX_FMTi__ "lli"
3760// MIPSN32BE: #define __INTMAX_MAX__ 9223372036854775807LL
3761// MIPSN32BE: #define __INTMAX_TYPE__ long long int
3762// MIPSN32BE: #define __INTMAX_WIDTH__ 64
3763// MIPSN32BE: #define __INTPTR_FMTd__ "ld"
3764// MIPSN32BE: #define __INTPTR_FMTi__ "li"
3765// MIPSN32BE: #define __INTPTR_MAX__ 2147483647L
3766// MIPSN32BE: #define __INTPTR_TYPE__ long int
3767// MIPSN32BE: #define __INTPTR_WIDTH__ 32
3768// MIPSN32BE: #define __INT_FAST16_FMTd__ "hd"
3769// MIPSN32BE: #define __INT_FAST16_FMTi__ "hi"
3770// MIPSN32BE: #define __INT_FAST16_MAX__ 32767
3771// MIPSN32BE: #define __INT_FAST16_TYPE__ short
3772// MIPSN32BE: #define __INT_FAST32_FMTd__ "d"
3773// MIPSN32BE: #define __INT_FAST32_FMTi__ "i"
3774// MIPSN32BE: #define __INT_FAST32_MAX__ 2147483647
3775// MIPSN32BE: #define __INT_FAST32_TYPE__ int
3776// MIPSN32BE: #define __INT_FAST64_FMTd__ "lld"
3777// MIPSN32BE: #define __INT_FAST64_FMTi__ "lli"
3778// MIPSN32BE: #define __INT_FAST64_MAX__ 9223372036854775807LL
3779// MIPSN32BE: #define __INT_FAST64_TYPE__ long long int
3780// MIPSN32BE: #define __INT_FAST8_FMTd__ "hhd"
3781// MIPSN32BE: #define __INT_FAST8_FMTi__ "hhi"
3782// MIPSN32BE: #define __INT_FAST8_MAX__ 127
3783// MIPSN32BE: #define __INT_FAST8_TYPE__ signed char
3784// MIPSN32BE: #define __INT_LEAST16_FMTd__ "hd"
3785// MIPSN32BE: #define __INT_LEAST16_FMTi__ "hi"
3786// MIPSN32BE: #define __INT_LEAST16_MAX__ 32767
3787// MIPSN32BE: #define __INT_LEAST16_TYPE__ short
3788// MIPSN32BE: #define __INT_LEAST32_FMTd__ "d"
3789// MIPSN32BE: #define __INT_LEAST32_FMTi__ "i"
3790// MIPSN32BE: #define __INT_LEAST32_MAX__ 2147483647
3791// MIPSN32BE: #define __INT_LEAST32_TYPE__ int
3792// MIPSN32BE: #define __INT_LEAST64_FMTd__ "lld"
3793// MIPSN32BE: #define __INT_LEAST64_FMTi__ "lli"
3794// MIPSN32BE: #define __INT_LEAST64_MAX__ 9223372036854775807LL
3795// MIPSN32BE: #define __INT_LEAST64_TYPE__ long long int
3796// MIPSN32BE: #define __INT_LEAST8_FMTd__ "hhd"
3797// MIPSN32BE: #define __INT_LEAST8_FMTi__ "hhi"
3798// MIPSN32BE: #define __INT_LEAST8_MAX__ 127
3799// MIPSN32BE: #define __INT_LEAST8_TYPE__ signed char
3800// MIPSN32BE: #define __INT_MAX__ 2147483647
3801// MIPSN32BE: #define __LDBL_DENORM_MIN__ 6.47517511943802511092443895822764655e-4966L
3802// MIPSN32BE: #define __LDBL_DIG__ 33
3803// MIPSN32BE: #define __LDBL_EPSILON__ 1.92592994438723585305597794258492732e-34L
3804// MIPSN32BE: #define __LDBL_HAS_DENORM__ 1
3805// MIPSN32BE: #define __LDBL_HAS_INFINITY__ 1
3806// MIPSN32BE: #define __LDBL_HAS_QUIET_NAN__ 1
3807// MIPSN32BE: #define __LDBL_MANT_DIG__ 113
3808// MIPSN32BE: #define __LDBL_MAX_10_EXP__ 4932
3809// MIPSN32BE: #define __LDBL_MAX_EXP__ 16384
3810// MIPSN32BE: #define __LDBL_MAX__ 1.18973149535723176508575932662800702e+4932L
3811// MIPSN32BE: #define __LDBL_MIN_10_EXP__ (-4931)
3812// MIPSN32BE: #define __LDBL_MIN_EXP__ (-16381)
3813// MIPSN32BE: #define __LDBL_MIN__ 3.36210314311209350626267781732175260e-4932L
3814// MIPSN32BE: #define __LONG_LONG_MAX__ 9223372036854775807LL
3815// MIPSN32BE: #define __LONG_MAX__ 2147483647L
3816// MIPSN32BE: #define __MIPSEB 1
3817// MIPSN32BE: #define __MIPSEB__ 1
3818// MIPSN32BE: #define __NO_INLINE__ 1
3819// MIPSN32BE: #define __ORDER_BIG_ENDIAN__ 4321
3820// MIPSN32BE: #define __ORDER_LITTLE_ENDIAN__ 1234
3821// MIPSN32BE: #define __ORDER_PDP_ENDIAN__ 3412
3822// MIPSN32BE: #define __POINTER_WIDTH__ 32
3823// MIPSN32BE: #define __PRAGMA_REDEFINE_EXTNAME 1
3824// MIPSN32BE: #define __PTRDIFF_FMTd__ "d"
3825// MIPSN32BE: #define __PTRDIFF_FMTi__ "i"
3826// MIPSN32BE: #define __PTRDIFF_MAX__ 2147483647
3827// MIPSN32BE: #define __PTRDIFF_TYPE__ int
3828// MIPSN32BE: #define __PTRDIFF_WIDTH__ 32
3829// MIPSN32BE: #define __REGISTER_PREFIX__
3830// MIPSN32BE: #define __SCHAR_MAX__ 127
3831// MIPSN32BE: #define __SHRT_MAX__ 32767
3832// MIPSN32BE: #define __SIG_ATOMIC_MAX__ 2147483647
3833// MIPSN32BE: #define __SIG_ATOMIC_WIDTH__ 32
3834// MIPSN32BE: #define __SIZEOF_DOUBLE__ 8
3835// MIPSN32BE: #define __SIZEOF_FLOAT__ 4
3836// MIPSN32BE: #define __SIZEOF_INT__ 4
3837// MIPSN32BE: #define __SIZEOF_LONG_DOUBLE__ 16
3838// MIPSN32BE: #define __SIZEOF_LONG_LONG__ 8
3839// MIPSN32BE: #define __SIZEOF_LONG__ 4
3840// MIPSN32BE: #define __SIZEOF_POINTER__ 4
3841// MIPSN32BE: #define __SIZEOF_PTRDIFF_T__ 4
3842// MIPSN32BE: #define __SIZEOF_SHORT__ 2
3843// MIPSN32BE: #define __SIZEOF_SIZE_T__ 4
3844// MIPSN32BE: #define __SIZEOF_WCHAR_T__ 4
3845// MIPSN32BE: #define __SIZEOF_WINT_T__ 4
3846// MIPSN32BE: #define __SIZE_FMTX__ "X"
3847// MIPSN32BE: #define __SIZE_FMTo__ "o"
3848// MIPSN32BE: #define __SIZE_FMTu__ "u"
3849// MIPSN32BE: #define __SIZE_FMTx__ "x"
3850// MIPSN32BE: #define __SIZE_MAX__ 4294967295U
3851// MIPSN32BE: #define __SIZE_TYPE__ unsigned int
3852// MIPSN32BE: #define __SIZE_WIDTH__ 32
Richard Smith59139022016-09-30 22:41:36 +00003853// MIPSN32BE-CXX: #define __STDCPP_DEFAULT_NEW_ALIGNMENT__ 16U
Simon Atanasyan495523e42015-01-22 23:16:48 +00003854// MIPSN32BE: #define __STDC_HOSTED__ 0
3855// MIPSN32BE: #define __STDC_UTF_16__ 1
3856// MIPSN32BE: #define __STDC_UTF_32__ 1
Richard Smith59139022016-09-30 22:41:36 +00003857// MIPSN32BE-C: #define __STDC_VERSION__ 201112L
Simon Atanasyan495523e42015-01-22 23:16:48 +00003858// MIPSN32BE: #define __STDC__ 1
3859// MIPSN32BE: #define __UINT16_C_SUFFIX__
3860// MIPSN32BE: #define __UINT16_FMTX__ "hX"
3861// MIPSN32BE: #define __UINT16_FMTo__ "ho"
3862// MIPSN32BE: #define __UINT16_FMTu__ "hu"
3863// MIPSN32BE: #define __UINT16_FMTx__ "hx"
3864// MIPSN32BE: #define __UINT16_MAX__ 65535
3865// MIPSN32BE: #define __UINT16_TYPE__ unsigned short
3866// MIPSN32BE: #define __UINT32_C_SUFFIX__ U
3867// MIPSN32BE: #define __UINT32_FMTX__ "X"
3868// MIPSN32BE: #define __UINT32_FMTo__ "o"
3869// MIPSN32BE: #define __UINT32_FMTu__ "u"
3870// MIPSN32BE: #define __UINT32_FMTx__ "x"
3871// MIPSN32BE: #define __UINT32_MAX__ 4294967295U
3872// MIPSN32BE: #define __UINT32_TYPE__ unsigned int
3873// MIPSN32BE: #define __UINT64_C_SUFFIX__ ULL
3874// MIPSN32BE: #define __UINT64_FMTX__ "llX"
3875// MIPSN32BE: #define __UINT64_FMTo__ "llo"
3876// MIPSN32BE: #define __UINT64_FMTu__ "llu"
3877// MIPSN32BE: #define __UINT64_FMTx__ "llx"
3878// MIPSN32BE: #define __UINT64_MAX__ 18446744073709551615ULL
3879// MIPSN32BE: #define __UINT64_TYPE__ long long unsigned int
3880// MIPSN32BE: #define __UINT8_C_SUFFIX__
3881// MIPSN32BE: #define __UINT8_FMTX__ "hhX"
3882// MIPSN32BE: #define __UINT8_FMTo__ "hho"
3883// MIPSN32BE: #define __UINT8_FMTu__ "hhu"
3884// MIPSN32BE: #define __UINT8_FMTx__ "hhx"
3885// MIPSN32BE: #define __UINT8_MAX__ 255
3886// MIPSN32BE: #define __UINT8_TYPE__ unsigned char
3887// MIPSN32BE: #define __UINTMAX_C_SUFFIX__ ULL
3888// MIPSN32BE: #define __UINTMAX_FMTX__ "llX"
3889// MIPSN32BE: #define __UINTMAX_FMTo__ "llo"
3890// MIPSN32BE: #define __UINTMAX_FMTu__ "llu"
3891// MIPSN32BE: #define __UINTMAX_FMTx__ "llx"
3892// MIPSN32BE: #define __UINTMAX_MAX__ 18446744073709551615ULL
3893// MIPSN32BE: #define __UINTMAX_TYPE__ long long unsigned int
3894// MIPSN32BE: #define __UINTMAX_WIDTH__ 64
3895// MIPSN32BE: #define __UINTPTR_FMTX__ "lX"
3896// MIPSN32BE: #define __UINTPTR_FMTo__ "lo"
3897// MIPSN32BE: #define __UINTPTR_FMTu__ "lu"
3898// MIPSN32BE: #define __UINTPTR_FMTx__ "lx"
3899// MIPSN32BE: #define __UINTPTR_MAX__ 4294967295UL
3900// MIPSN32BE: #define __UINTPTR_TYPE__ long unsigned int
3901// MIPSN32BE: #define __UINTPTR_WIDTH__ 32
3902// MIPSN32BE: #define __UINT_FAST16_FMTX__ "hX"
3903// MIPSN32BE: #define __UINT_FAST16_FMTo__ "ho"
3904// MIPSN32BE: #define __UINT_FAST16_FMTu__ "hu"
3905// MIPSN32BE: #define __UINT_FAST16_FMTx__ "hx"
3906// MIPSN32BE: #define __UINT_FAST16_MAX__ 65535
3907// MIPSN32BE: #define __UINT_FAST16_TYPE__ unsigned short
3908// MIPSN32BE: #define __UINT_FAST32_FMTX__ "X"
3909// MIPSN32BE: #define __UINT_FAST32_FMTo__ "o"
3910// MIPSN32BE: #define __UINT_FAST32_FMTu__ "u"
3911// MIPSN32BE: #define __UINT_FAST32_FMTx__ "x"
3912// MIPSN32BE: #define __UINT_FAST32_MAX__ 4294967295U
3913// MIPSN32BE: #define __UINT_FAST32_TYPE__ unsigned int
3914// MIPSN32BE: #define __UINT_FAST64_FMTX__ "llX"
3915// MIPSN32BE: #define __UINT_FAST64_FMTo__ "llo"
3916// MIPSN32BE: #define __UINT_FAST64_FMTu__ "llu"
3917// MIPSN32BE: #define __UINT_FAST64_FMTx__ "llx"
3918// MIPSN32BE: #define __UINT_FAST64_MAX__ 18446744073709551615ULL
3919// MIPSN32BE: #define __UINT_FAST64_TYPE__ long long unsigned int
3920// MIPSN32BE: #define __UINT_FAST8_FMTX__ "hhX"
3921// MIPSN32BE: #define __UINT_FAST8_FMTo__ "hho"
3922// MIPSN32BE: #define __UINT_FAST8_FMTu__ "hhu"
3923// MIPSN32BE: #define __UINT_FAST8_FMTx__ "hhx"
3924// MIPSN32BE: #define __UINT_FAST8_MAX__ 255
3925// MIPSN32BE: #define __UINT_FAST8_TYPE__ unsigned char
3926// MIPSN32BE: #define __UINT_LEAST16_FMTX__ "hX"
3927// MIPSN32BE: #define __UINT_LEAST16_FMTo__ "ho"
3928// MIPSN32BE: #define __UINT_LEAST16_FMTu__ "hu"
3929// MIPSN32BE: #define __UINT_LEAST16_FMTx__ "hx"
3930// MIPSN32BE: #define __UINT_LEAST16_MAX__ 65535
3931// MIPSN32BE: #define __UINT_LEAST16_TYPE__ unsigned short
3932// MIPSN32BE: #define __UINT_LEAST32_FMTX__ "X"
3933// MIPSN32BE: #define __UINT_LEAST32_FMTo__ "o"
3934// MIPSN32BE: #define __UINT_LEAST32_FMTu__ "u"
3935// MIPSN32BE: #define __UINT_LEAST32_FMTx__ "x"
3936// MIPSN32BE: #define __UINT_LEAST32_MAX__ 4294967295U
3937// MIPSN32BE: #define __UINT_LEAST32_TYPE__ unsigned int
3938// MIPSN32BE: #define __UINT_LEAST64_FMTX__ "llX"
3939// MIPSN32BE: #define __UINT_LEAST64_FMTo__ "llo"
3940// MIPSN32BE: #define __UINT_LEAST64_FMTu__ "llu"
3941// MIPSN32BE: #define __UINT_LEAST64_FMTx__ "llx"
3942// MIPSN32BE: #define __UINT_LEAST64_MAX__ 18446744073709551615ULL
3943// MIPSN32BE: #define __UINT_LEAST64_TYPE__ long long unsigned int
3944// MIPSN32BE: #define __UINT_LEAST8_FMTX__ "hhX"
3945// MIPSN32BE: #define __UINT_LEAST8_FMTo__ "hho"
3946// MIPSN32BE: #define __UINT_LEAST8_FMTu__ "hhu"
3947// MIPSN32BE: #define __UINT_LEAST8_FMTx__ "hhx"
3948// MIPSN32BE: #define __UINT_LEAST8_MAX__ 255
3949// MIPSN32BE: #define __UINT_LEAST8_TYPE__ unsigned char
James Y Knightb214cbc2016-03-04 19:00:41 +00003950// MIPSN32BE: #define __USER_LABEL_PREFIX__
Simon Atanasyan495523e42015-01-22 23:16:48 +00003951// MIPSN32BE: #define __WCHAR_MAX__ 2147483647
3952// MIPSN32BE: #define __WCHAR_TYPE__ int
3953// MIPSN32BE: #define __WCHAR_WIDTH__ 32
3954// MIPSN32BE: #define __WINT_TYPE__ int
3955// MIPSN32BE: #define __WINT_WIDTH__ 32
3956// MIPSN32BE: #define __clang__ 1
3957// MIPSN32BE: #define __llvm__ 1
3958// MIPSN32BE: #define __mips 64
3959// MIPSN32BE: #define __mips64 1
3960// MIPSN32BE: #define __mips64__ 1
3961// MIPSN32BE: #define __mips__ 1
Simon Dardisdf827a72017-02-21 16:01:00 +00003962// MIPSN32BE: #define __mips_abicalls 1
Simon Atanasyan495523e42015-01-22 23:16:48 +00003963// MIPSN32BE: #define __mips_fpr 64
3964// MIPSN32BE: #define __mips_hard_float 1
3965// MIPSN32BE: #define __mips_isa_rev 2
3966// MIPSN32BE: #define __mips_n32 1
3967// MIPSN32BE: #define _mips 1
3968// MIPSN32BE: #define mips 1
3969//
3970// RUN: %clang_cc1 -E -dM -ffreestanding \
3971// RUN: -triple=mips64el-none-none -target-abi n32 < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00003972// RUN: | FileCheck -match-full-lines -check-prefix MIPSN32EL %s
Simon Atanasyan495523e42015-01-22 23:16:48 +00003973//
3974// MIPSN32EL: #define MIPSEL 1
3975// MIPSN32EL: #define _ABIN32 2
3976// MIPSN32EL: #define _ILP32 1
3977// MIPSN32EL: #define _MIPSEL 1
3978// MIPSN32EL: #define _MIPS_ARCH "mips64r2"
3979// MIPSN32EL: #define _MIPS_ARCH_MIPS64R2 1
3980// MIPSN32EL: #define _MIPS_FPSET 32
3981// MIPSN32EL: #define _MIPS_ISA _MIPS_ISA_MIPS64
3982// MIPSN32EL: #define _MIPS_SIM _ABIN32
3983// MIPSN32EL: #define _MIPS_SZINT 32
3984// MIPSN32EL: #define _MIPS_SZLONG 32
3985// MIPSN32EL: #define _MIPS_SZPTR 32
3986// MIPSN32EL: #define __ATOMIC_ACQUIRE 2
3987// MIPSN32EL: #define __ATOMIC_ACQ_REL 4
3988// MIPSN32EL: #define __ATOMIC_CONSUME 1
3989// MIPSN32EL: #define __ATOMIC_RELAXED 0
3990// MIPSN32EL: #define __ATOMIC_RELEASE 3
3991// MIPSN32EL: #define __ATOMIC_SEQ_CST 5
3992// MIPSN32EL: #define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
3993// MIPSN32EL: #define __CHAR16_TYPE__ unsigned short
3994// MIPSN32EL: #define __CHAR32_TYPE__ unsigned int
3995// MIPSN32EL: #define __CHAR_BIT__ 8
3996// MIPSN32EL: #define __CONSTANT_CFSTRINGS__ 1
3997// MIPSN32EL: #define __DBL_DENORM_MIN__ 4.9406564584124654e-324
3998// MIPSN32EL: #define __DBL_DIG__ 15
3999// MIPSN32EL: #define __DBL_EPSILON__ 2.2204460492503131e-16
4000// MIPSN32EL: #define __DBL_HAS_DENORM__ 1
4001// MIPSN32EL: #define __DBL_HAS_INFINITY__ 1
4002// MIPSN32EL: #define __DBL_HAS_QUIET_NAN__ 1
4003// MIPSN32EL: #define __DBL_MANT_DIG__ 53
4004// MIPSN32EL: #define __DBL_MAX_10_EXP__ 308
4005// MIPSN32EL: #define __DBL_MAX_EXP__ 1024
4006// MIPSN32EL: #define __DBL_MAX__ 1.7976931348623157e+308
4007// MIPSN32EL: #define __DBL_MIN_10_EXP__ (-307)
4008// MIPSN32EL: #define __DBL_MIN_EXP__ (-1021)
4009// MIPSN32EL: #define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00004010// MIPSN32EL: #define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Simon Atanasyan495523e42015-01-22 23:16:48 +00004011// MIPSN32EL: #define __FINITE_MATH_ONLY__ 0
4012// MIPSN32EL: #define __FLT_DENORM_MIN__ 1.40129846e-45F
4013// MIPSN32EL: #define __FLT_DIG__ 6
4014// MIPSN32EL: #define __FLT_EPSILON__ 1.19209290e-7F
4015// MIPSN32EL: #define __FLT_EVAL_METHOD__ 0
4016// MIPSN32EL: #define __FLT_HAS_DENORM__ 1
4017// MIPSN32EL: #define __FLT_HAS_INFINITY__ 1
4018// MIPSN32EL: #define __FLT_HAS_QUIET_NAN__ 1
4019// MIPSN32EL: #define __FLT_MANT_DIG__ 24
4020// MIPSN32EL: #define __FLT_MAX_10_EXP__ 38
4021// MIPSN32EL: #define __FLT_MAX_EXP__ 128
4022// MIPSN32EL: #define __FLT_MAX__ 3.40282347e+38F
4023// MIPSN32EL: #define __FLT_MIN_10_EXP__ (-37)
4024// MIPSN32EL: #define __FLT_MIN_EXP__ (-125)
4025// MIPSN32EL: #define __FLT_MIN__ 1.17549435e-38F
4026// MIPSN32EL: #define __FLT_RADIX__ 2
4027// MIPSN32EL: #define __GCC_ATOMIC_BOOL_LOCK_FREE 2
4028// MIPSN32EL: #define __GCC_ATOMIC_CHAR16_T_LOCK_FREE 2
4029// MIPSN32EL: #define __GCC_ATOMIC_CHAR32_T_LOCK_FREE 2
4030// MIPSN32EL: #define __GCC_ATOMIC_CHAR_LOCK_FREE 2
4031// MIPSN32EL: #define __GCC_ATOMIC_INT_LOCK_FREE 2
4032// MIPSN32EL: #define __GCC_ATOMIC_LLONG_LOCK_FREE 2
4033// MIPSN32EL: #define __GCC_ATOMIC_LONG_LOCK_FREE 2
4034// MIPSN32EL: #define __GCC_ATOMIC_POINTER_LOCK_FREE 2
4035// MIPSN32EL: #define __GCC_ATOMIC_SHORT_LOCK_FREE 2
4036// MIPSN32EL: #define __GCC_ATOMIC_TEST_AND_SET_TRUEVAL 1
4037// MIPSN32EL: #define __GCC_ATOMIC_WCHAR_T_LOCK_FREE 2
4038// MIPSN32EL: #define __GNUC_MINOR__ 2
4039// MIPSN32EL: #define __GNUC_PATCHLEVEL__ 1
4040// MIPSN32EL: #define __GNUC_STDC_INLINE__ 1
4041// MIPSN32EL: #define __GNUC__ 4
4042// MIPSN32EL: #define __GXX_ABI_VERSION 1002
Simon Atanasyan495523e42015-01-22 23:16:48 +00004043// MIPSN32EL: #define __ILP32__ 1
4044// MIPSN32EL: #define __INT16_C_SUFFIX__
4045// MIPSN32EL: #define __INT16_FMTd__ "hd"
4046// MIPSN32EL: #define __INT16_FMTi__ "hi"
4047// MIPSN32EL: #define __INT16_MAX__ 32767
4048// MIPSN32EL: #define __INT16_TYPE__ short
4049// MIPSN32EL: #define __INT32_C_SUFFIX__
4050// MIPSN32EL: #define __INT32_FMTd__ "d"
4051// MIPSN32EL: #define __INT32_FMTi__ "i"
4052// MIPSN32EL: #define __INT32_MAX__ 2147483647
4053// MIPSN32EL: #define __INT32_TYPE__ int
4054// MIPSN32EL: #define __INT64_C_SUFFIX__ LL
4055// MIPSN32EL: #define __INT64_FMTd__ "lld"
4056// MIPSN32EL: #define __INT64_FMTi__ "lli"
4057// MIPSN32EL: #define __INT64_MAX__ 9223372036854775807LL
4058// MIPSN32EL: #define __INT64_TYPE__ long long int
4059// MIPSN32EL: #define __INT8_C_SUFFIX__
4060// MIPSN32EL: #define __INT8_FMTd__ "hhd"
4061// MIPSN32EL: #define __INT8_FMTi__ "hhi"
4062// MIPSN32EL: #define __INT8_MAX__ 127
4063// MIPSN32EL: #define __INT8_TYPE__ signed char
4064// MIPSN32EL: #define __INTMAX_C_SUFFIX__ LL
4065// MIPSN32EL: #define __INTMAX_FMTd__ "lld"
4066// MIPSN32EL: #define __INTMAX_FMTi__ "lli"
4067// MIPSN32EL: #define __INTMAX_MAX__ 9223372036854775807LL
4068// MIPSN32EL: #define __INTMAX_TYPE__ long long int
4069// MIPSN32EL: #define __INTMAX_WIDTH__ 64
4070// MIPSN32EL: #define __INTPTR_FMTd__ "ld"
4071// MIPSN32EL: #define __INTPTR_FMTi__ "li"
4072// MIPSN32EL: #define __INTPTR_MAX__ 2147483647L
4073// MIPSN32EL: #define __INTPTR_TYPE__ long int
4074// MIPSN32EL: #define __INTPTR_WIDTH__ 32
4075// MIPSN32EL: #define __INT_FAST16_FMTd__ "hd"
4076// MIPSN32EL: #define __INT_FAST16_FMTi__ "hi"
4077// MIPSN32EL: #define __INT_FAST16_MAX__ 32767
4078// MIPSN32EL: #define __INT_FAST16_TYPE__ short
4079// MIPSN32EL: #define __INT_FAST32_FMTd__ "d"
4080// MIPSN32EL: #define __INT_FAST32_FMTi__ "i"
4081// MIPSN32EL: #define __INT_FAST32_MAX__ 2147483647
4082// MIPSN32EL: #define __INT_FAST32_TYPE__ int
4083// MIPSN32EL: #define __INT_FAST64_FMTd__ "lld"
4084// MIPSN32EL: #define __INT_FAST64_FMTi__ "lli"
4085// MIPSN32EL: #define __INT_FAST64_MAX__ 9223372036854775807LL
4086// MIPSN32EL: #define __INT_FAST64_TYPE__ long long int
4087// MIPSN32EL: #define __INT_FAST8_FMTd__ "hhd"
4088// MIPSN32EL: #define __INT_FAST8_FMTi__ "hhi"
4089// MIPSN32EL: #define __INT_FAST8_MAX__ 127
4090// MIPSN32EL: #define __INT_FAST8_TYPE__ signed char
4091// MIPSN32EL: #define __INT_LEAST16_FMTd__ "hd"
4092// MIPSN32EL: #define __INT_LEAST16_FMTi__ "hi"
4093// MIPSN32EL: #define __INT_LEAST16_MAX__ 32767
4094// MIPSN32EL: #define __INT_LEAST16_TYPE__ short
4095// MIPSN32EL: #define __INT_LEAST32_FMTd__ "d"
4096// MIPSN32EL: #define __INT_LEAST32_FMTi__ "i"
4097// MIPSN32EL: #define __INT_LEAST32_MAX__ 2147483647
4098// MIPSN32EL: #define __INT_LEAST32_TYPE__ int
4099// MIPSN32EL: #define __INT_LEAST64_FMTd__ "lld"
4100// MIPSN32EL: #define __INT_LEAST64_FMTi__ "lli"
4101// MIPSN32EL: #define __INT_LEAST64_MAX__ 9223372036854775807LL
4102// MIPSN32EL: #define __INT_LEAST64_TYPE__ long long int
4103// MIPSN32EL: #define __INT_LEAST8_FMTd__ "hhd"
4104// MIPSN32EL: #define __INT_LEAST8_FMTi__ "hhi"
4105// MIPSN32EL: #define __INT_LEAST8_MAX__ 127
4106// MIPSN32EL: #define __INT_LEAST8_TYPE__ signed char
4107// MIPSN32EL: #define __INT_MAX__ 2147483647
4108// MIPSN32EL: #define __LDBL_DENORM_MIN__ 6.47517511943802511092443895822764655e-4966L
4109// MIPSN32EL: #define __LDBL_DIG__ 33
4110// MIPSN32EL: #define __LDBL_EPSILON__ 1.92592994438723585305597794258492732e-34L
4111// MIPSN32EL: #define __LDBL_HAS_DENORM__ 1
4112// MIPSN32EL: #define __LDBL_HAS_INFINITY__ 1
4113// MIPSN32EL: #define __LDBL_HAS_QUIET_NAN__ 1
4114// MIPSN32EL: #define __LDBL_MANT_DIG__ 113
4115// MIPSN32EL: #define __LDBL_MAX_10_EXP__ 4932
4116// MIPSN32EL: #define __LDBL_MAX_EXP__ 16384
4117// MIPSN32EL: #define __LDBL_MAX__ 1.18973149535723176508575932662800702e+4932L
4118// MIPSN32EL: #define __LDBL_MIN_10_EXP__ (-4931)
4119// MIPSN32EL: #define __LDBL_MIN_EXP__ (-16381)
4120// MIPSN32EL: #define __LDBL_MIN__ 3.36210314311209350626267781732175260e-4932L
4121// MIPSN32EL: #define __LITTLE_ENDIAN__ 1
4122// MIPSN32EL: #define __LONG_LONG_MAX__ 9223372036854775807LL
4123// MIPSN32EL: #define __LONG_MAX__ 2147483647L
4124// MIPSN32EL: #define __MIPSEL 1
4125// MIPSN32EL: #define __MIPSEL__ 1
4126// MIPSN32EL: #define __NO_INLINE__ 1
4127// MIPSN32EL: #define __ORDER_BIG_ENDIAN__ 4321
4128// MIPSN32EL: #define __ORDER_LITTLE_ENDIAN__ 1234
4129// MIPSN32EL: #define __ORDER_PDP_ENDIAN__ 3412
4130// MIPSN32EL: #define __POINTER_WIDTH__ 32
4131// MIPSN32EL: #define __PRAGMA_REDEFINE_EXTNAME 1
4132// MIPSN32EL: #define __PTRDIFF_FMTd__ "d"
4133// MIPSN32EL: #define __PTRDIFF_FMTi__ "i"
4134// MIPSN32EL: #define __PTRDIFF_MAX__ 2147483647
4135// MIPSN32EL: #define __PTRDIFF_TYPE__ int
4136// MIPSN32EL: #define __PTRDIFF_WIDTH__ 32
4137// MIPSN32EL: #define __REGISTER_PREFIX__
4138// MIPSN32EL: #define __SCHAR_MAX__ 127
4139// MIPSN32EL: #define __SHRT_MAX__ 32767
4140// MIPSN32EL: #define __SIG_ATOMIC_MAX__ 2147483647
4141// MIPSN32EL: #define __SIG_ATOMIC_WIDTH__ 32
4142// MIPSN32EL: #define __SIZEOF_DOUBLE__ 8
4143// MIPSN32EL: #define __SIZEOF_FLOAT__ 4
4144// MIPSN32EL: #define __SIZEOF_INT__ 4
4145// MIPSN32EL: #define __SIZEOF_LONG_DOUBLE__ 16
4146// MIPSN32EL: #define __SIZEOF_LONG_LONG__ 8
4147// MIPSN32EL: #define __SIZEOF_LONG__ 4
4148// MIPSN32EL: #define __SIZEOF_POINTER__ 4
4149// MIPSN32EL: #define __SIZEOF_PTRDIFF_T__ 4
4150// MIPSN32EL: #define __SIZEOF_SHORT__ 2
4151// MIPSN32EL: #define __SIZEOF_SIZE_T__ 4
4152// MIPSN32EL: #define __SIZEOF_WCHAR_T__ 4
4153// MIPSN32EL: #define __SIZEOF_WINT_T__ 4
4154// MIPSN32EL: #define __SIZE_FMTX__ "X"
4155// MIPSN32EL: #define __SIZE_FMTo__ "o"
4156// MIPSN32EL: #define __SIZE_FMTu__ "u"
4157// MIPSN32EL: #define __SIZE_FMTx__ "x"
4158// MIPSN32EL: #define __SIZE_MAX__ 4294967295U
4159// MIPSN32EL: #define __SIZE_TYPE__ unsigned int
4160// MIPSN32EL: #define __SIZE_WIDTH__ 32
4161// MIPSN32EL: #define __STDC_HOSTED__ 0
4162// MIPSN32EL: #define __STDC_UTF_16__ 1
4163// MIPSN32EL: #define __STDC_UTF_32__ 1
4164// MIPSN32EL: #define __STDC_VERSION__ 201112L
4165// MIPSN32EL: #define __STDC__ 1
4166// MIPSN32EL: #define __UINT16_C_SUFFIX__
4167// MIPSN32EL: #define __UINT16_FMTX__ "hX"
4168// MIPSN32EL: #define __UINT16_FMTo__ "ho"
4169// MIPSN32EL: #define __UINT16_FMTu__ "hu"
4170// MIPSN32EL: #define __UINT16_FMTx__ "hx"
4171// MIPSN32EL: #define __UINT16_MAX__ 65535
4172// MIPSN32EL: #define __UINT16_TYPE__ unsigned short
4173// MIPSN32EL: #define __UINT32_C_SUFFIX__ U
4174// MIPSN32EL: #define __UINT32_FMTX__ "X"
4175// MIPSN32EL: #define __UINT32_FMTo__ "o"
4176// MIPSN32EL: #define __UINT32_FMTu__ "u"
4177// MIPSN32EL: #define __UINT32_FMTx__ "x"
4178// MIPSN32EL: #define __UINT32_MAX__ 4294967295U
4179// MIPSN32EL: #define __UINT32_TYPE__ unsigned int
4180// MIPSN32EL: #define __UINT64_C_SUFFIX__ ULL
4181// MIPSN32EL: #define __UINT64_FMTX__ "llX"
4182// MIPSN32EL: #define __UINT64_FMTo__ "llo"
4183// MIPSN32EL: #define __UINT64_FMTu__ "llu"
4184// MIPSN32EL: #define __UINT64_FMTx__ "llx"
4185// MIPSN32EL: #define __UINT64_MAX__ 18446744073709551615ULL
4186// MIPSN32EL: #define __UINT64_TYPE__ long long unsigned int
4187// MIPSN32EL: #define __UINT8_C_SUFFIX__
4188// MIPSN32EL: #define __UINT8_FMTX__ "hhX"
4189// MIPSN32EL: #define __UINT8_FMTo__ "hho"
4190// MIPSN32EL: #define __UINT8_FMTu__ "hhu"
4191// MIPSN32EL: #define __UINT8_FMTx__ "hhx"
4192// MIPSN32EL: #define __UINT8_MAX__ 255
4193// MIPSN32EL: #define __UINT8_TYPE__ unsigned char
4194// MIPSN32EL: #define __UINTMAX_C_SUFFIX__ ULL
4195// MIPSN32EL: #define __UINTMAX_FMTX__ "llX"
4196// MIPSN32EL: #define __UINTMAX_FMTo__ "llo"
4197// MIPSN32EL: #define __UINTMAX_FMTu__ "llu"
4198// MIPSN32EL: #define __UINTMAX_FMTx__ "llx"
4199// MIPSN32EL: #define __UINTMAX_MAX__ 18446744073709551615ULL
4200// MIPSN32EL: #define __UINTMAX_TYPE__ long long unsigned int
4201// MIPSN32EL: #define __UINTMAX_WIDTH__ 64
4202// MIPSN32EL: #define __UINTPTR_FMTX__ "lX"
4203// MIPSN32EL: #define __UINTPTR_FMTo__ "lo"
4204// MIPSN32EL: #define __UINTPTR_FMTu__ "lu"
4205// MIPSN32EL: #define __UINTPTR_FMTx__ "lx"
4206// MIPSN32EL: #define __UINTPTR_MAX__ 4294967295UL
4207// MIPSN32EL: #define __UINTPTR_TYPE__ long unsigned int
4208// MIPSN32EL: #define __UINTPTR_WIDTH__ 32
4209// MIPSN32EL: #define __UINT_FAST16_FMTX__ "hX"
4210// MIPSN32EL: #define __UINT_FAST16_FMTo__ "ho"
4211// MIPSN32EL: #define __UINT_FAST16_FMTu__ "hu"
4212// MIPSN32EL: #define __UINT_FAST16_FMTx__ "hx"
4213// MIPSN32EL: #define __UINT_FAST16_MAX__ 65535
4214// MIPSN32EL: #define __UINT_FAST16_TYPE__ unsigned short
4215// MIPSN32EL: #define __UINT_FAST32_FMTX__ "X"
4216// MIPSN32EL: #define __UINT_FAST32_FMTo__ "o"
4217// MIPSN32EL: #define __UINT_FAST32_FMTu__ "u"
4218// MIPSN32EL: #define __UINT_FAST32_FMTx__ "x"
4219// MIPSN32EL: #define __UINT_FAST32_MAX__ 4294967295U
4220// MIPSN32EL: #define __UINT_FAST32_TYPE__ unsigned int
4221// MIPSN32EL: #define __UINT_FAST64_FMTX__ "llX"
4222// MIPSN32EL: #define __UINT_FAST64_FMTo__ "llo"
4223// MIPSN32EL: #define __UINT_FAST64_FMTu__ "llu"
4224// MIPSN32EL: #define __UINT_FAST64_FMTx__ "llx"
4225// MIPSN32EL: #define __UINT_FAST64_MAX__ 18446744073709551615ULL
4226// MIPSN32EL: #define __UINT_FAST64_TYPE__ long long unsigned int
4227// MIPSN32EL: #define __UINT_FAST8_FMTX__ "hhX"
4228// MIPSN32EL: #define __UINT_FAST8_FMTo__ "hho"
4229// MIPSN32EL: #define __UINT_FAST8_FMTu__ "hhu"
4230// MIPSN32EL: #define __UINT_FAST8_FMTx__ "hhx"
4231// MIPSN32EL: #define __UINT_FAST8_MAX__ 255
4232// MIPSN32EL: #define __UINT_FAST8_TYPE__ unsigned char
4233// MIPSN32EL: #define __UINT_LEAST16_FMTX__ "hX"
4234// MIPSN32EL: #define __UINT_LEAST16_FMTo__ "ho"
4235// MIPSN32EL: #define __UINT_LEAST16_FMTu__ "hu"
4236// MIPSN32EL: #define __UINT_LEAST16_FMTx__ "hx"
4237// MIPSN32EL: #define __UINT_LEAST16_MAX__ 65535
4238// MIPSN32EL: #define __UINT_LEAST16_TYPE__ unsigned short
4239// MIPSN32EL: #define __UINT_LEAST32_FMTX__ "X"
4240// MIPSN32EL: #define __UINT_LEAST32_FMTo__ "o"
4241// MIPSN32EL: #define __UINT_LEAST32_FMTu__ "u"
4242// MIPSN32EL: #define __UINT_LEAST32_FMTx__ "x"
4243// MIPSN32EL: #define __UINT_LEAST32_MAX__ 4294967295U
4244// MIPSN32EL: #define __UINT_LEAST32_TYPE__ unsigned int
4245// MIPSN32EL: #define __UINT_LEAST64_FMTX__ "llX"
4246// MIPSN32EL: #define __UINT_LEAST64_FMTo__ "llo"
4247// MIPSN32EL: #define __UINT_LEAST64_FMTu__ "llu"
4248// MIPSN32EL: #define __UINT_LEAST64_FMTx__ "llx"
4249// MIPSN32EL: #define __UINT_LEAST64_MAX__ 18446744073709551615ULL
4250// MIPSN32EL: #define __UINT_LEAST64_TYPE__ long long unsigned int
4251// MIPSN32EL: #define __UINT_LEAST8_FMTX__ "hhX"
4252// MIPSN32EL: #define __UINT_LEAST8_FMTo__ "hho"
4253// MIPSN32EL: #define __UINT_LEAST8_FMTu__ "hhu"
4254// MIPSN32EL: #define __UINT_LEAST8_FMTx__ "hhx"
4255// MIPSN32EL: #define __UINT_LEAST8_MAX__ 255
4256// MIPSN32EL: #define __UINT_LEAST8_TYPE__ unsigned char
James Y Knightb214cbc2016-03-04 19:00:41 +00004257// MIPSN32EL: #define __USER_LABEL_PREFIX__
Simon Atanasyan495523e42015-01-22 23:16:48 +00004258// MIPSN32EL: #define __WCHAR_MAX__ 2147483647
4259// MIPSN32EL: #define __WCHAR_TYPE__ int
4260// MIPSN32EL: #define __WCHAR_WIDTH__ 32
4261// MIPSN32EL: #define __WINT_TYPE__ int
4262// MIPSN32EL: #define __WINT_WIDTH__ 32
4263// MIPSN32EL: #define __clang__ 1
4264// MIPSN32EL: #define __llvm__ 1
4265// MIPSN32EL: #define __mips 64
4266// MIPSN32EL: #define __mips64 1
4267// MIPSN32EL: #define __mips64__ 1
4268// MIPSN32EL: #define __mips__ 1
Simon Dardisdf827a72017-02-21 16:01:00 +00004269// MIPSN32EL: #define __mips_abicalls 1
Simon Atanasyan495523e42015-01-22 23:16:48 +00004270// MIPSN32EL: #define __mips_fpr 64
4271// MIPSN32EL: #define __mips_hard_float 1
4272// MIPSN32EL: #define __mips_isa_rev 2
4273// MIPSN32EL: #define __mips_n32 1
4274// MIPSN32EL: #define _mips 1
4275// MIPSN32EL: #define mips 1
4276//
James Y Knightc97efa42016-02-11 16:51:29 +00004277// 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 +00004278// 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 +00004279//
4280// MIPS64BE:#define MIPSEB 1
4281// MIPS64BE:#define _ABI64 3
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00004282// MIPS64BE:#define _LP64 1
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004283// MIPS64BE:#define _MIPSEB 1
Simon Atanasyan1a3665b62014-01-27 13:59:04 +00004284// MIPS64BE:#define _MIPS_ARCH "mips64r2"
4285// MIPS64BE:#define _MIPS_ARCH_MIPS64R2 1
Simon Atanasyan2c97a812013-10-18 13:13:53 +00004286// MIPS64BE:#define _MIPS_FPSET 32
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004287// MIPS64BE:#define _MIPS_SIM _ABI64
4288// MIPS64BE:#define _MIPS_SZINT 32
4289// MIPS64BE:#define _MIPS_SZLONG 64
4290// MIPS64BE:#define _MIPS_SZPTR 64
Tim Northovera6a19f12015-02-06 01:25:07 +00004291// MIPS64BE:#define __BIGGEST_ALIGNMENT__ 16
Robert Lytton2c942c62014-03-10 12:06:29 +00004292// MIPS64BE:#define __BIG_ENDIAN__ 1
Dylan Noblesmith673728f2012-07-27 18:34:31 +00004293// MIPS64BE:#define __BYTE_ORDER__ __ORDER_BIG_ENDIAN__
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004294// MIPS64BE:#define __CHAR16_TYPE__ unsigned short
4295// MIPS64BE:#define __CHAR32_TYPE__ unsigned int
4296// MIPS64BE:#define __CHAR_BIT__ 8
4297// MIPS64BE:#define __CONSTANT_CFSTRINGS__ 1
4298// MIPS64BE:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
4299// MIPS64BE:#define __DBL_DIG__ 15
4300// MIPS64BE:#define __DBL_EPSILON__ 2.2204460492503131e-16
4301// MIPS64BE:#define __DBL_HAS_DENORM__ 1
4302// MIPS64BE:#define __DBL_HAS_INFINITY__ 1
4303// MIPS64BE:#define __DBL_HAS_QUIET_NAN__ 1
4304// MIPS64BE:#define __DBL_MANT_DIG__ 53
4305// MIPS64BE:#define __DBL_MAX_10_EXP__ 308
4306// MIPS64BE:#define __DBL_MAX_EXP__ 1024
4307// MIPS64BE:#define __DBL_MAX__ 1.7976931348623157e+308
4308// MIPS64BE:#define __DBL_MIN_10_EXP__ (-307)
4309// MIPS64BE:#define __DBL_MIN_EXP__ (-1021)
4310// MIPS64BE:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00004311// MIPS64BE:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004312// MIPS64BE:#define __FLT_DENORM_MIN__ 1.40129846e-45F
4313// MIPS64BE:#define __FLT_DIG__ 6
4314// MIPS64BE:#define __FLT_EPSILON__ 1.19209290e-7F
4315// MIPS64BE:#define __FLT_EVAL_METHOD__ 0
4316// MIPS64BE:#define __FLT_HAS_DENORM__ 1
4317// MIPS64BE:#define __FLT_HAS_INFINITY__ 1
4318// MIPS64BE:#define __FLT_HAS_QUIET_NAN__ 1
4319// MIPS64BE:#define __FLT_MANT_DIG__ 24
4320// MIPS64BE:#define __FLT_MAX_10_EXP__ 38
4321// MIPS64BE:#define __FLT_MAX_EXP__ 128
4322// MIPS64BE:#define __FLT_MAX__ 3.40282347e+38F
4323// MIPS64BE:#define __FLT_MIN_10_EXP__ (-37)
4324// MIPS64BE:#define __FLT_MIN_EXP__ (-125)
4325// MIPS64BE:#define __FLT_MIN__ 1.17549435e-38F
4326// MIPS64BE:#define __FLT_RADIX__ 2
James Y Knightc97efa42016-02-11 16:51:29 +00004327// MIPS64BE:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004328// MIPS64BE:#define __INT16_FMTd__ "hd"
4329// MIPS64BE:#define __INT16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00004330// MIPS64BE:#define __INT16_MAX__ 32767
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004331// MIPS64BE:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +00004332// MIPS64BE:#define __INT32_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004333// MIPS64BE:#define __INT32_FMTd__ "d"
4334// MIPS64BE:#define __INT32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00004335// MIPS64BE:#define __INT32_MAX__ 2147483647
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004336// MIPS64BE:#define __INT32_TYPE__ int
Simon Atanasyan495523e42015-01-22 23:16:48 +00004337// MIPS64BE:#define __INT64_C_SUFFIX__ L
4338// MIPS64BE:#define __INT64_FMTd__ "ld"
4339// MIPS64BE:#define __INT64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00004340// MIPS64BE:#define __INT64_MAX__ 9223372036854775807L
Simon Atanasyan495523e42015-01-22 23:16:48 +00004341// MIPS64BE:#define __INT64_TYPE__ long int
James Y Knightc97efa42016-02-11 16:51:29 +00004342// MIPS64BE:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004343// MIPS64BE:#define __INT8_FMTd__ "hhd"
4344// MIPS64BE:#define __INT8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00004345// MIPS64BE:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00004346// MIPS64BE:#define __INT8_TYPE__ signed char
Simon Atanasyan495523e42015-01-22 23:16:48 +00004347// MIPS64BE:#define __INTMAX_C_SUFFIX__ L
4348// MIPS64BE:#define __INTMAX_FMTd__ "ld"
4349// MIPS64BE:#define __INTMAX_FMTi__ "li"
4350// MIPS64BE:#define __INTMAX_MAX__ 9223372036854775807L
4351// MIPS64BE:#define __INTMAX_TYPE__ long int
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004352// MIPS64BE:#define __INTMAX_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004353// MIPS64BE:#define __INTPTR_FMTd__ "ld"
4354// MIPS64BE:#define __INTPTR_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00004355// MIPS64BE:#define __INTPTR_MAX__ 9223372036854775807L
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004356// MIPS64BE:#define __INTPTR_TYPE__ long int
4357// MIPS64BE:#define __INTPTR_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004358// MIPS64BE:#define __INT_FAST16_FMTd__ "hd"
4359// MIPS64BE:#define __INT_FAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00004360// MIPS64BE:#define __INT_FAST16_MAX__ 32767
4361// MIPS64BE:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004362// MIPS64BE:#define __INT_FAST32_FMTd__ "d"
4363// MIPS64BE:#define __INT_FAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00004364// MIPS64BE:#define __INT_FAST32_MAX__ 2147483647
4365// MIPS64BE:#define __INT_FAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004366// MIPS64BE:#define __INT_FAST64_FMTd__ "ld"
4367// MIPS64BE:#define __INT_FAST64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00004368// MIPS64BE:#define __INT_FAST64_MAX__ 9223372036854775807L
4369// MIPS64BE:#define __INT_FAST64_TYPE__ long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004370// MIPS64BE:#define __INT_FAST8_FMTd__ "hhd"
4371// MIPS64BE:#define __INT_FAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00004372// MIPS64BE:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00004373// MIPS64BE:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004374// MIPS64BE:#define __INT_LEAST16_FMTd__ "hd"
4375// MIPS64BE:#define __INT_LEAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00004376// MIPS64BE:#define __INT_LEAST16_MAX__ 32767
4377// MIPS64BE:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004378// MIPS64BE:#define __INT_LEAST32_FMTd__ "d"
4379// MIPS64BE:#define __INT_LEAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00004380// MIPS64BE:#define __INT_LEAST32_MAX__ 2147483647
4381// MIPS64BE:#define __INT_LEAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004382// MIPS64BE:#define __INT_LEAST64_FMTd__ "ld"
4383// MIPS64BE:#define __INT_LEAST64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00004384// MIPS64BE:#define __INT_LEAST64_MAX__ 9223372036854775807L
4385// MIPS64BE:#define __INT_LEAST64_TYPE__ long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004386// MIPS64BE:#define __INT_LEAST8_FMTd__ "hhd"
4387// MIPS64BE:#define __INT_LEAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00004388// MIPS64BE:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00004389// MIPS64BE:#define __INT_LEAST8_TYPE__ signed char
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004390// MIPS64BE:#define __INT_MAX__ 2147483647
4391// MIPS64BE:#define __LDBL_DENORM_MIN__ 6.47517511943802511092443895822764655e-4966L
4392// MIPS64BE:#define __LDBL_DIG__ 33
4393// MIPS64BE:#define __LDBL_EPSILON__ 1.92592994438723585305597794258492732e-34L
4394// MIPS64BE:#define __LDBL_HAS_DENORM__ 1
4395// MIPS64BE:#define __LDBL_HAS_INFINITY__ 1
4396// MIPS64BE:#define __LDBL_HAS_QUIET_NAN__ 1
4397// MIPS64BE:#define __LDBL_MANT_DIG__ 113
4398// MIPS64BE:#define __LDBL_MAX_10_EXP__ 4932
4399// MIPS64BE:#define __LDBL_MAX_EXP__ 16384
4400// MIPS64BE:#define __LDBL_MAX__ 1.18973149535723176508575932662800702e+4932L
4401// MIPS64BE:#define __LDBL_MIN_10_EXP__ (-4931)
4402// MIPS64BE:#define __LDBL_MIN_EXP__ (-16381)
4403// MIPS64BE:#define __LDBL_MIN__ 3.36210314311209350626267781732175260e-4932L
4404// MIPS64BE:#define __LONG_LONG_MAX__ 9223372036854775807LL
4405// MIPS64BE:#define __LONG_MAX__ 9223372036854775807L
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00004406// MIPS64BE:#define __LP64__ 1
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004407// MIPS64BE:#define __MIPSEB 1
4408// MIPS64BE:#define __MIPSEB__ 1
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004409// MIPS64BE:#define __POINTER_WIDTH__ 64
4410// MIPS64BE:#define __PRAGMA_REDEFINE_EXTNAME 1
4411// MIPS64BE:#define __PTRDIFF_TYPE__ long int
4412// MIPS64BE:#define __PTRDIFF_WIDTH__ 64
James Y Knightc97efa42016-02-11 16:51:29 +00004413// MIPS64BE:#define __REGISTER_PREFIX__
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004414// MIPS64BE:#define __SCHAR_MAX__ 127
4415// MIPS64BE:#define __SHRT_MAX__ 32767
Joerg Sonnenbergerb3a49692014-07-17 18:31:20 +00004416// MIPS64BE:#define __SIG_ATOMIC_MAX__ 2147483647
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004417// MIPS64BE:#define __SIG_ATOMIC_WIDTH__ 32
4418// MIPS64BE:#define __SIZEOF_DOUBLE__ 8
4419// MIPS64BE:#define __SIZEOF_FLOAT__ 4
Vasileios Kalintirisea503122015-02-12 11:36:56 +00004420// MIPS64BE:#define __SIZEOF_INT128__ 16
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004421// MIPS64BE:#define __SIZEOF_INT__ 4
4422// MIPS64BE:#define __SIZEOF_LONG_DOUBLE__ 16
4423// MIPS64BE:#define __SIZEOF_LONG_LONG__ 8
4424// MIPS64BE:#define __SIZEOF_LONG__ 8
4425// MIPS64BE:#define __SIZEOF_POINTER__ 8
4426// MIPS64BE:#define __SIZEOF_PTRDIFF_T__ 8
4427// MIPS64BE:#define __SIZEOF_SHORT__ 2
4428// MIPS64BE:#define __SIZEOF_SIZE_T__ 8
4429// MIPS64BE:#define __SIZEOF_WCHAR_T__ 4
4430// MIPS64BE:#define __SIZEOF_WINT_T__ 4
Evgeniy Stepanovc3c725a2013-03-28 08:36:54 +00004431// MIPS64BE:#define __SIZE_MAX__ 18446744073709551615UL
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004432// MIPS64BE:#define __SIZE_TYPE__ long unsigned int
4433// MIPS64BE:#define __SIZE_WIDTH__ 64
Richard Smith59139022016-09-30 22:41:36 +00004434// MIPS64BE-CXX:#define __STDCPP_DEFAULT_NEW_ALIGNMENT__ 16UL
James Y Knightc97efa42016-02-11 16:51:29 +00004435// MIPS64BE:#define __UINT16_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00004436// MIPS64BE:#define __UINT16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00004437// MIPS64BE:#define __UINT16_TYPE__ unsigned short
4438// MIPS64BE:#define __UINT32_C_SUFFIX__ U
4439// MIPS64BE:#define __UINT32_MAX__ 4294967295U
4440// MIPS64BE:#define __UINT32_TYPE__ unsigned int
Simon Atanasyan495523e42015-01-22 23:16:48 +00004441// MIPS64BE:#define __UINT64_C_SUFFIX__ UL
4442// MIPS64BE:#define __UINT64_MAX__ 18446744073709551615UL
4443// MIPS64BE:#define __UINT64_TYPE__ long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00004444// MIPS64BE:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00004445// MIPS64BE:#define __UINT8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00004446// MIPS64BE:#define __UINT8_TYPE__ unsigned char
Simon Atanasyan495523e42015-01-22 23:16:48 +00004447// MIPS64BE:#define __UINTMAX_C_SUFFIX__ UL
4448// MIPS64BE:#define __UINTMAX_MAX__ 18446744073709551615UL
4449// MIPS64BE:#define __UINTMAX_TYPE__ long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00004450// MIPS64BE:#define __UINTMAX_WIDTH__ 64
4451// MIPS64BE:#define __UINTPTR_MAX__ 18446744073709551615UL
4452// MIPS64BE:#define __UINTPTR_TYPE__ long unsigned int
4453// MIPS64BE:#define __UINTPTR_WIDTH__ 64
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00004454// MIPS64BE:#define __UINT_FAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00004455// MIPS64BE:#define __UINT_FAST16_TYPE__ unsigned short
4456// MIPS64BE:#define __UINT_FAST32_MAX__ 4294967295U
4457// MIPS64BE:#define __UINT_FAST32_TYPE__ unsigned int
4458// MIPS64BE:#define __UINT_FAST64_MAX__ 18446744073709551615UL
4459// MIPS64BE:#define __UINT_FAST64_TYPE__ long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00004460// MIPS64BE:#define __UINT_FAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00004461// MIPS64BE:#define __UINT_FAST8_TYPE__ unsigned char
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00004462// MIPS64BE:#define __UINT_LEAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00004463// MIPS64BE:#define __UINT_LEAST16_TYPE__ unsigned short
4464// MIPS64BE:#define __UINT_LEAST32_MAX__ 4294967295U
4465// MIPS64BE:#define __UINT_LEAST32_TYPE__ unsigned int
4466// MIPS64BE:#define __UINT_LEAST64_MAX__ 18446744073709551615UL
4467// MIPS64BE:#define __UINT_LEAST64_TYPE__ long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00004468// MIPS64BE:#define __UINT_LEAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00004469// MIPS64BE:#define __UINT_LEAST8_TYPE__ unsigned char
James Y Knightb214cbc2016-03-04 19:00:41 +00004470// MIPS64BE:#define __USER_LABEL_PREFIX__
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004471// MIPS64BE:#define __WCHAR_MAX__ 2147483647
4472// MIPS64BE:#define __WCHAR_TYPE__ int
4473// MIPS64BE:#define __WCHAR_WIDTH__ 32
4474// MIPS64BE:#define __WINT_TYPE__ int
4475// MIPS64BE:#define __WINT_WIDTH__ 32
4476// MIPS64BE:#define __clang__ 1
4477// MIPS64BE:#define __llvm__ 1
Simon Atanasyan26292cc2014-01-27 13:59:11 +00004478// MIPS64BE:#define __mips 64
Simon Atanasyanc6a0be02012-08-29 20:50:11 +00004479// MIPS64BE:#define __mips64 1
4480// MIPS64BE:#define __mips64__ 1
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004481// MIPS64BE:#define __mips__ 1
Simon Dardisdf827a72017-02-21 16:01:00 +00004482// MIPS64BE:#define __mips_abicalls 1
Simon Atanasyan2c97a812013-10-18 13:13:53 +00004483// MIPS64BE:#define __mips_fpr 64
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004484// MIPS64BE:#define __mips_hard_float 1
4485// MIPS64BE:#define __mips_n64 1
4486// MIPS64BE:#define _mips 1
4487// MIPS64BE:#define mips 1
4488//
James Y Knightc97efa42016-02-11 16:51:29 +00004489// 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 +00004490//
4491// MIPS64EL:#define MIPSEL 1
4492// MIPS64EL:#define _ABI64 3
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00004493// MIPS64EL:#define _LP64 1
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004494// MIPS64EL:#define _MIPSEL 1
Simon Atanasyan1a3665b62014-01-27 13:59:04 +00004495// MIPS64EL:#define _MIPS_ARCH "mips64r2"
4496// MIPS64EL:#define _MIPS_ARCH_MIPS64R2 1
Simon Atanasyan2c97a812013-10-18 13:13:53 +00004497// MIPS64EL:#define _MIPS_FPSET 32
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004498// MIPS64EL:#define _MIPS_SIM _ABI64
4499// MIPS64EL:#define _MIPS_SZINT 32
4500// MIPS64EL:#define _MIPS_SZLONG 64
4501// MIPS64EL:#define _MIPS_SZPTR 64
Tim Northovera6a19f12015-02-06 01:25:07 +00004502// MIPS64EL:#define __BIGGEST_ALIGNMENT__ 16
Dylan Noblesmith673728f2012-07-27 18:34:31 +00004503// MIPS64EL:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004504// MIPS64EL:#define __CHAR16_TYPE__ unsigned short
4505// MIPS64EL:#define __CHAR32_TYPE__ unsigned int
4506// MIPS64EL:#define __CHAR_BIT__ 8
4507// MIPS64EL:#define __CONSTANT_CFSTRINGS__ 1
4508// MIPS64EL:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
4509// MIPS64EL:#define __DBL_DIG__ 15
4510// MIPS64EL:#define __DBL_EPSILON__ 2.2204460492503131e-16
4511// MIPS64EL:#define __DBL_HAS_DENORM__ 1
4512// MIPS64EL:#define __DBL_HAS_INFINITY__ 1
4513// MIPS64EL:#define __DBL_HAS_QUIET_NAN__ 1
4514// MIPS64EL:#define __DBL_MANT_DIG__ 53
4515// MIPS64EL:#define __DBL_MAX_10_EXP__ 308
4516// MIPS64EL:#define __DBL_MAX_EXP__ 1024
4517// MIPS64EL:#define __DBL_MAX__ 1.7976931348623157e+308
4518// MIPS64EL:#define __DBL_MIN_10_EXP__ (-307)
4519// MIPS64EL:#define __DBL_MIN_EXP__ (-1021)
4520// MIPS64EL:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00004521// MIPS64EL:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004522// MIPS64EL:#define __FLT_DENORM_MIN__ 1.40129846e-45F
4523// MIPS64EL:#define __FLT_DIG__ 6
4524// MIPS64EL:#define __FLT_EPSILON__ 1.19209290e-7F
4525// MIPS64EL:#define __FLT_EVAL_METHOD__ 0
4526// MIPS64EL:#define __FLT_HAS_DENORM__ 1
4527// MIPS64EL:#define __FLT_HAS_INFINITY__ 1
4528// MIPS64EL:#define __FLT_HAS_QUIET_NAN__ 1
4529// MIPS64EL:#define __FLT_MANT_DIG__ 24
4530// MIPS64EL:#define __FLT_MAX_10_EXP__ 38
4531// MIPS64EL:#define __FLT_MAX_EXP__ 128
4532// MIPS64EL:#define __FLT_MAX__ 3.40282347e+38F
4533// MIPS64EL:#define __FLT_MIN_10_EXP__ (-37)
4534// MIPS64EL:#define __FLT_MIN_EXP__ (-125)
4535// MIPS64EL:#define __FLT_MIN__ 1.17549435e-38F
4536// MIPS64EL:#define __FLT_RADIX__ 2
James Y Knightc97efa42016-02-11 16:51:29 +00004537// MIPS64EL:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004538// MIPS64EL:#define __INT16_FMTd__ "hd"
4539// MIPS64EL:#define __INT16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00004540// MIPS64EL:#define __INT16_MAX__ 32767
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004541// MIPS64EL:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +00004542// MIPS64EL:#define __INT32_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004543// MIPS64EL:#define __INT32_FMTd__ "d"
4544// MIPS64EL:#define __INT32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00004545// MIPS64EL:#define __INT32_MAX__ 2147483647
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004546// MIPS64EL:#define __INT32_TYPE__ int
Simon Atanasyan495523e42015-01-22 23:16:48 +00004547// MIPS64EL:#define __INT64_C_SUFFIX__ L
4548// MIPS64EL:#define __INT64_FMTd__ "ld"
4549// MIPS64EL:#define __INT64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00004550// MIPS64EL:#define __INT64_MAX__ 9223372036854775807L
Simon Atanasyan495523e42015-01-22 23:16:48 +00004551// MIPS64EL:#define __INT64_TYPE__ long int
James Y Knightc97efa42016-02-11 16:51:29 +00004552// MIPS64EL:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004553// MIPS64EL:#define __INT8_FMTd__ "hhd"
4554// MIPS64EL:#define __INT8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00004555// MIPS64EL:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00004556// MIPS64EL:#define __INT8_TYPE__ signed char
Simon Atanasyan495523e42015-01-22 23:16:48 +00004557// MIPS64EL:#define __INTMAX_C_SUFFIX__ L
4558// MIPS64EL:#define __INTMAX_FMTd__ "ld"
4559// MIPS64EL:#define __INTMAX_FMTi__ "li"
4560// MIPS64EL:#define __INTMAX_MAX__ 9223372036854775807L
4561// MIPS64EL:#define __INTMAX_TYPE__ long int
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004562// MIPS64EL:#define __INTMAX_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004563// MIPS64EL:#define __INTPTR_FMTd__ "ld"
4564// MIPS64EL:#define __INTPTR_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00004565// MIPS64EL:#define __INTPTR_MAX__ 9223372036854775807L
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004566// MIPS64EL:#define __INTPTR_TYPE__ long int
4567// MIPS64EL:#define __INTPTR_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004568// MIPS64EL:#define __INT_FAST16_FMTd__ "hd"
4569// MIPS64EL:#define __INT_FAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00004570// MIPS64EL:#define __INT_FAST16_MAX__ 32767
4571// MIPS64EL:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004572// MIPS64EL:#define __INT_FAST32_FMTd__ "d"
4573// MIPS64EL:#define __INT_FAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00004574// MIPS64EL:#define __INT_FAST32_MAX__ 2147483647
4575// MIPS64EL:#define __INT_FAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004576// MIPS64EL:#define __INT_FAST64_FMTd__ "ld"
4577// MIPS64EL:#define __INT_FAST64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00004578// MIPS64EL:#define __INT_FAST64_MAX__ 9223372036854775807L
4579// MIPS64EL:#define __INT_FAST64_TYPE__ long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004580// MIPS64EL:#define __INT_FAST8_FMTd__ "hhd"
4581// MIPS64EL:#define __INT_FAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00004582// MIPS64EL:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00004583// MIPS64EL:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004584// MIPS64EL:#define __INT_LEAST16_FMTd__ "hd"
4585// MIPS64EL:#define __INT_LEAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00004586// MIPS64EL:#define __INT_LEAST16_MAX__ 32767
4587// MIPS64EL:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004588// MIPS64EL:#define __INT_LEAST32_FMTd__ "d"
4589// MIPS64EL:#define __INT_LEAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00004590// MIPS64EL:#define __INT_LEAST32_MAX__ 2147483647
4591// MIPS64EL:#define __INT_LEAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004592// MIPS64EL:#define __INT_LEAST64_FMTd__ "ld"
4593// MIPS64EL:#define __INT_LEAST64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00004594// MIPS64EL:#define __INT_LEAST64_MAX__ 9223372036854775807L
4595// MIPS64EL:#define __INT_LEAST64_TYPE__ long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00004596// MIPS64EL:#define __INT_LEAST8_FMTd__ "hhd"
4597// MIPS64EL:#define __INT_LEAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00004598// MIPS64EL:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00004599// MIPS64EL:#define __INT_LEAST8_TYPE__ signed char
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004600// MIPS64EL:#define __INT_MAX__ 2147483647
4601// MIPS64EL:#define __LDBL_DENORM_MIN__ 6.47517511943802511092443895822764655e-4966L
4602// MIPS64EL:#define __LDBL_DIG__ 33
4603// MIPS64EL:#define __LDBL_EPSILON__ 1.92592994438723585305597794258492732e-34L
4604// MIPS64EL:#define __LDBL_HAS_DENORM__ 1
4605// MIPS64EL:#define __LDBL_HAS_INFINITY__ 1
4606// MIPS64EL:#define __LDBL_HAS_QUIET_NAN__ 1
4607// MIPS64EL:#define __LDBL_MANT_DIG__ 113
4608// MIPS64EL:#define __LDBL_MAX_10_EXP__ 4932
4609// MIPS64EL:#define __LDBL_MAX_EXP__ 16384
4610// MIPS64EL:#define __LDBL_MAX__ 1.18973149535723176508575932662800702e+4932L
4611// MIPS64EL:#define __LDBL_MIN_10_EXP__ (-4931)
4612// MIPS64EL:#define __LDBL_MIN_EXP__ (-16381)
4613// MIPS64EL:#define __LDBL_MIN__ 3.36210314311209350626267781732175260e-4932L
Robert Lytton2c942c62014-03-10 12:06:29 +00004614// MIPS64EL:#define __LITTLE_ENDIAN__ 1
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004615// MIPS64EL:#define __LONG_LONG_MAX__ 9223372036854775807LL
4616// MIPS64EL:#define __LONG_MAX__ 9223372036854775807L
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00004617// MIPS64EL:#define __LP64__ 1
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004618// MIPS64EL:#define __MIPSEL 1
4619// MIPS64EL:#define __MIPSEL__ 1
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004620// MIPS64EL:#define __POINTER_WIDTH__ 64
4621// MIPS64EL:#define __PRAGMA_REDEFINE_EXTNAME 1
4622// MIPS64EL:#define __PTRDIFF_TYPE__ long int
4623// MIPS64EL:#define __PTRDIFF_WIDTH__ 64
James Y Knightc97efa42016-02-11 16:51:29 +00004624// MIPS64EL:#define __REGISTER_PREFIX__
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004625// MIPS64EL:#define __SCHAR_MAX__ 127
4626// MIPS64EL:#define __SHRT_MAX__ 32767
Joerg Sonnenbergerb3a49692014-07-17 18:31:20 +00004627// MIPS64EL:#define __SIG_ATOMIC_MAX__ 2147483647
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004628// MIPS64EL:#define __SIG_ATOMIC_WIDTH__ 32
4629// MIPS64EL:#define __SIZEOF_DOUBLE__ 8
4630// MIPS64EL:#define __SIZEOF_FLOAT__ 4
Vasileios Kalintirisea503122015-02-12 11:36:56 +00004631// MIPS64EL:#define __SIZEOF_INT128__ 16
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004632// MIPS64EL:#define __SIZEOF_INT__ 4
4633// MIPS64EL:#define __SIZEOF_LONG_DOUBLE__ 16
4634// MIPS64EL:#define __SIZEOF_LONG_LONG__ 8
4635// MIPS64EL:#define __SIZEOF_LONG__ 8
4636// MIPS64EL:#define __SIZEOF_POINTER__ 8
4637// MIPS64EL:#define __SIZEOF_PTRDIFF_T__ 8
4638// MIPS64EL:#define __SIZEOF_SHORT__ 2
4639// MIPS64EL:#define __SIZEOF_SIZE_T__ 8
4640// MIPS64EL:#define __SIZEOF_WCHAR_T__ 4
4641// MIPS64EL:#define __SIZEOF_WINT_T__ 4
Evgeniy Stepanovc3c725a2013-03-28 08:36:54 +00004642// MIPS64EL:#define __SIZE_MAX__ 18446744073709551615UL
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004643// MIPS64EL:#define __SIZE_TYPE__ long unsigned int
4644// MIPS64EL:#define __SIZE_WIDTH__ 64
James Y Knightc97efa42016-02-11 16:51:29 +00004645// MIPS64EL:#define __UINT16_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00004646// MIPS64EL:#define __UINT16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00004647// MIPS64EL:#define __UINT16_TYPE__ unsigned short
4648// MIPS64EL:#define __UINT32_C_SUFFIX__ U
4649// MIPS64EL:#define __UINT32_MAX__ 4294967295U
4650// MIPS64EL:#define __UINT32_TYPE__ unsigned int
Simon Atanasyan495523e42015-01-22 23:16:48 +00004651// MIPS64EL:#define __UINT64_C_SUFFIX__ UL
4652// MIPS64EL:#define __UINT64_MAX__ 18446744073709551615UL
4653// MIPS64EL:#define __UINT64_TYPE__ long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00004654// MIPS64EL:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00004655// MIPS64EL:#define __UINT8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00004656// MIPS64EL:#define __UINT8_TYPE__ unsigned char
Simon Atanasyan495523e42015-01-22 23:16:48 +00004657// MIPS64EL:#define __UINTMAX_C_SUFFIX__ UL
4658// MIPS64EL:#define __UINTMAX_MAX__ 18446744073709551615UL
4659// MIPS64EL:#define __UINTMAX_TYPE__ long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00004660// MIPS64EL:#define __UINTMAX_WIDTH__ 64
4661// MIPS64EL:#define __UINTPTR_MAX__ 18446744073709551615UL
4662// MIPS64EL:#define __UINTPTR_TYPE__ long unsigned int
4663// MIPS64EL:#define __UINTPTR_WIDTH__ 64
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00004664// MIPS64EL:#define __UINT_FAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00004665// MIPS64EL:#define __UINT_FAST16_TYPE__ unsigned short
4666// MIPS64EL:#define __UINT_FAST32_MAX__ 4294967295U
4667// MIPS64EL:#define __UINT_FAST32_TYPE__ unsigned int
4668// MIPS64EL:#define __UINT_FAST64_MAX__ 18446744073709551615UL
4669// MIPS64EL:#define __UINT_FAST64_TYPE__ long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00004670// MIPS64EL:#define __UINT_FAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00004671// MIPS64EL:#define __UINT_FAST8_TYPE__ unsigned char
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00004672// MIPS64EL:#define __UINT_LEAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00004673// MIPS64EL:#define __UINT_LEAST16_TYPE__ unsigned short
4674// MIPS64EL:#define __UINT_LEAST32_MAX__ 4294967295U
4675// MIPS64EL:#define __UINT_LEAST32_TYPE__ unsigned int
4676// MIPS64EL:#define __UINT_LEAST64_MAX__ 18446744073709551615UL
4677// MIPS64EL:#define __UINT_LEAST64_TYPE__ long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00004678// MIPS64EL:#define __UINT_LEAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00004679// MIPS64EL:#define __UINT_LEAST8_TYPE__ unsigned char
James Y Knightb214cbc2016-03-04 19:00:41 +00004680// MIPS64EL:#define __USER_LABEL_PREFIX__
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004681// MIPS64EL:#define __WCHAR_MAX__ 2147483647
4682// MIPS64EL:#define __WCHAR_TYPE__ int
4683// MIPS64EL:#define __WCHAR_WIDTH__ 32
4684// MIPS64EL:#define __WINT_TYPE__ int
4685// MIPS64EL:#define __WINT_WIDTH__ 32
4686// MIPS64EL:#define __clang__ 1
4687// MIPS64EL:#define __llvm__ 1
Simon Atanasyan26292cc2014-01-27 13:59:11 +00004688// MIPS64EL:#define __mips 64
Simon Atanasyanc6a0be02012-08-29 20:50:11 +00004689// MIPS64EL:#define __mips64 1
4690// MIPS64EL:#define __mips64__ 1
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004691// MIPS64EL:#define __mips__ 1
Simon Dardisdf827a72017-02-21 16:01:00 +00004692// MIPS64EL:#define __mips_abicalls 1
Simon Atanasyan2c97a812013-10-18 13:13:53 +00004693// MIPS64EL:#define __mips_fpr 64
Simon Atanasyanc3e45fe2012-04-06 08:37:24 +00004694// MIPS64EL:#define __mips_hard_float 1
4695// MIPS64EL:#define __mips_n64 1
4696// MIPS64EL:#define _mips 1
4697// MIPS64EL:#define mips 1
4698//
Matheus Almeidab84b37d2014-06-05 14:59:18 +00004699// Check MIPS arch and isa macros
Simon Atanasyan682b49b2014-01-27 13:58:54 +00004700//
4701// RUN: %clang_cc1 -E -dM -ffreestanding -triple=mips-none-none \
4702// RUN: < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004703// RUN: | FileCheck -match-full-lines -check-prefix MIPS-ARCH-DEF32 %s
Simon Atanasyan682b49b2014-01-27 13:58:54 +00004704//
Simon Atanasyan1a3665b62014-01-27 13:59:04 +00004705// MIPS-ARCH-DEF32:#define _MIPS_ARCH "mips32r2"
4706// MIPS-ARCH-DEF32:#define _MIPS_ARCH_MIPS32R2 1
Matheus Almeidab84b37d2014-06-05 14:59:18 +00004707// MIPS-ARCH-DEF32:#define _MIPS_ISA _MIPS_ISA_MIPS32
4708// MIPS-ARCH-DEF32:#define __mips_isa_rev 2
Simon Atanasyan682b49b2014-01-27 13:58:54 +00004709//
4710// RUN: %clang_cc1 -E -dM -ffreestanding -triple=mips-none-nones \
4711// RUN: -target-cpu mips32 < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004712// RUN: | FileCheck -match-full-lines -check-prefix MIPS-ARCH-32 %s
Simon Atanasyan682b49b2014-01-27 13:58:54 +00004713//
4714// MIPS-ARCH-32:#define _MIPS_ARCH "mips32"
4715// MIPS-ARCH-32:#define _MIPS_ARCH_MIPS32 1
Matheus Almeidab84b37d2014-06-05 14:59:18 +00004716// MIPS-ARCH-32:#define _MIPS_ISA _MIPS_ISA_MIPS32
4717// MIPS-ARCH-32:#define __mips_isa_rev 1
Simon Atanasyan682b49b2014-01-27 13:58:54 +00004718//
4719// RUN: %clang_cc1 -E -dM -ffreestanding -triple=mips-none-none \
4720// RUN: -target-cpu mips32r2 < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004721// RUN: | FileCheck -match-full-lines -check-prefix MIPS-ARCH-32R2 %s
Simon Atanasyan682b49b2014-01-27 13:58:54 +00004722//
4723// MIPS-ARCH-32R2:#define _MIPS_ARCH "mips32r2"
4724// MIPS-ARCH-32R2:#define _MIPS_ARCH_MIPS32R2 1
Matheus Almeidab84b37d2014-06-05 14:59:18 +00004725// MIPS-ARCH-32R2:#define _MIPS_ISA _MIPS_ISA_MIPS32
4726// MIPS-ARCH-32R2:#define __mips_isa_rev 2
Simon Atanasyan682b49b2014-01-27 13:58:54 +00004727//
Simon Atanasyane6694eb2015-01-15 07:04:48 +00004728// RUN: %clang_cc1 -E -dM -ffreestanding -triple=mips-none-none \
Simon Atanasyan162feb52015-02-20 23:37:40 +00004729// RUN: -target-cpu mips32r3 < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004730// RUN: | FileCheck -match-full-lines -check-prefix MIPS-ARCH-32R3 %s
Simon Atanasyan162feb52015-02-20 23:37:40 +00004731//
4732// MIPS-ARCH-32R3:#define _MIPS_ARCH "mips32r3"
4733// MIPS-ARCH-32R3:#define _MIPS_ARCH_MIPS32R3 1
4734// MIPS-ARCH-32R3:#define _MIPS_ISA _MIPS_ISA_MIPS32
4735// MIPS-ARCH-32R3:#define __mips_isa_rev 3
4736//
4737// RUN: %clang_cc1 -E -dM -ffreestanding -triple=mips-none-none \
4738// RUN: -target-cpu mips32r5 < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004739// RUN: | FileCheck -match-full-lines -check-prefix MIPS-ARCH-32R5 %s
Simon Atanasyan162feb52015-02-20 23:37:40 +00004740//
4741// MIPS-ARCH-32R5:#define _MIPS_ARCH "mips32r5"
4742// MIPS-ARCH-32R5:#define _MIPS_ARCH_MIPS32R5 1
4743// MIPS-ARCH-32R5:#define _MIPS_ISA _MIPS_ISA_MIPS32
4744// MIPS-ARCH-32R5:#define __mips_isa_rev 5
4745//
4746// RUN: %clang_cc1 -E -dM -ffreestanding -triple=mips-none-none \
Simon Atanasyane6694eb2015-01-15 07:04:48 +00004747// RUN: -target-cpu mips32r6 < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004748// RUN: | FileCheck -match-full-lines -check-prefix MIPS-ARCH-32R6 %s
Simon Atanasyane6694eb2015-01-15 07:04:48 +00004749//
4750// MIPS-ARCH-32R6:#define _MIPS_ARCH "mips32r6"
4751// MIPS-ARCH-32R6:#define _MIPS_ARCH_MIPS32R6 1
4752// MIPS-ARCH-32R6:#define _MIPS_ISA _MIPS_ISA_MIPS32
4753// MIPS-ARCH-32R6:#define __mips_isa_rev 6
4754//
Simon Atanasyan682b49b2014-01-27 13:58:54 +00004755// RUN: %clang_cc1 -E -dM -ffreestanding -triple=mips64-none-none \
4756// RUN: < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004757// RUN: | FileCheck -match-full-lines -check-prefix MIPS-ARCH-DEF64 %s
Simon Atanasyan682b49b2014-01-27 13:58:54 +00004758//
Simon Atanasyan1a3665b62014-01-27 13:59:04 +00004759// MIPS-ARCH-DEF64:#define _MIPS_ARCH "mips64r2"
4760// MIPS-ARCH-DEF64:#define _MIPS_ARCH_MIPS64R2 1
Matheus Almeidab84b37d2014-06-05 14:59:18 +00004761// MIPS-ARCH-DEF64:#define _MIPS_ISA _MIPS_ISA_MIPS64
4762// MIPS-ARCH-DEF64:#define __mips_isa_rev 2
Simon Atanasyan682b49b2014-01-27 13:58:54 +00004763//
4764// RUN: %clang_cc1 -E -dM -ffreestanding -triple=mips64-none-none \
4765// RUN: -target-cpu mips64 < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004766// RUN: | FileCheck -match-full-lines -check-prefix MIPS-ARCH-64 %s
Simon Atanasyan682b49b2014-01-27 13:58:54 +00004767//
4768// MIPS-ARCH-64:#define _MIPS_ARCH "mips64"
4769// MIPS-ARCH-64:#define _MIPS_ARCH_MIPS64 1
Matheus Almeidab84b37d2014-06-05 14:59:18 +00004770// MIPS-ARCH-64:#define _MIPS_ISA _MIPS_ISA_MIPS64
4771// MIPS-ARCH-64:#define __mips_isa_rev 1
Simon Atanasyan682b49b2014-01-27 13:58:54 +00004772//
4773// RUN: %clang_cc1 -E -dM -ffreestanding -triple=mips64-none-none \
4774// RUN: -target-cpu mips64r2 < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004775// RUN: | FileCheck -match-full-lines -check-prefix MIPS-ARCH-64R2 %s
Simon Atanasyan682b49b2014-01-27 13:58:54 +00004776//
4777// MIPS-ARCH-64R2:#define _MIPS_ARCH "mips64r2"
4778// MIPS-ARCH-64R2:#define _MIPS_ARCH_MIPS64R2 1
Matheus Almeidab84b37d2014-06-05 14:59:18 +00004779// MIPS-ARCH-64R2:#define _MIPS_ISA _MIPS_ISA_MIPS64
4780// MIPS-ARCH-64R2:#define __mips_isa_rev 2
Simon Atanasyan682b49b2014-01-27 13:58:54 +00004781//
Simon Atanasyane6694eb2015-01-15 07:04:48 +00004782// RUN: %clang_cc1 -E -dM -ffreestanding -triple=mips64-none-none \
Simon Atanasyan162feb52015-02-20 23:37:40 +00004783// RUN: -target-cpu mips64r3 < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004784// RUN: | FileCheck -match-full-lines -check-prefix MIPS-ARCH-64R3 %s
Simon Atanasyan162feb52015-02-20 23:37:40 +00004785//
4786// MIPS-ARCH-64R3:#define _MIPS_ARCH "mips64r3"
4787// MIPS-ARCH-64R3:#define _MIPS_ARCH_MIPS64R3 1
4788// MIPS-ARCH-64R3:#define _MIPS_ISA _MIPS_ISA_MIPS64
4789// MIPS-ARCH-64R3:#define __mips_isa_rev 3
4790//
4791// RUN: %clang_cc1 -E -dM -ffreestanding -triple=mips64-none-none \
4792// RUN: -target-cpu mips64r5 < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004793// RUN: | FileCheck -match-full-lines -check-prefix MIPS-ARCH-64R5 %s
Simon Atanasyan162feb52015-02-20 23:37:40 +00004794//
4795// MIPS-ARCH-64R5:#define _MIPS_ARCH "mips64r5"
4796// MIPS-ARCH-64R5:#define _MIPS_ARCH_MIPS64R5 1
4797// MIPS-ARCH-64R5:#define _MIPS_ISA _MIPS_ISA_MIPS64
4798// MIPS-ARCH-64R5:#define __mips_isa_rev 5
4799//
4800// RUN: %clang_cc1 -E -dM -ffreestanding -triple=mips64-none-none \
Simon Atanasyane6694eb2015-01-15 07:04:48 +00004801// RUN: -target-cpu mips64r6 < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004802// RUN: | FileCheck -match-full-lines -check-prefix MIPS-ARCH-64R6 %s
Simon Atanasyane6694eb2015-01-15 07:04:48 +00004803//
4804// MIPS-ARCH-64R6:#define _MIPS_ARCH "mips64r6"
4805// MIPS-ARCH-64R6:#define _MIPS_ARCH_MIPS64R6 1
4806// MIPS-ARCH-64R6:#define _MIPS_ISA _MIPS_ISA_MIPS64
4807// MIPS-ARCH-64R6:#define __mips_isa_rev 6
4808//
Simon Atanasyan5e21c802012-04-06 17:51:49 +00004809// Check MIPS float ABI macros
4810//
4811// RUN: %clang_cc1 -E -dM -ffreestanding \
4812// RUN: -triple=mips-none-none < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004813// RUN: | FileCheck -match-full-lines -check-prefix MIPS-FABI-HARD %s
Simon Atanasyan5e21c802012-04-06 17:51:49 +00004814// MIPS-FABI-HARD:#define __mips_hard_float 1
4815//
4816// RUN: %clang_cc1 -target-feature +soft-float -E -dM -ffreestanding \
4817// RUN: -triple=mips-none-none < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004818// RUN: | FileCheck -match-full-lines -check-prefix MIPS-FABI-SOFT %s
Simon Atanasyan5e21c802012-04-06 17:51:49 +00004819// MIPS-FABI-SOFT:#define __mips_soft_float 1
4820//
4821// RUN: %clang_cc1 -target-feature +single-float -E -dM -ffreestanding \
4822// RUN: -triple=mips-none-none < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004823// RUN: | FileCheck -match-full-lines -check-prefix MIPS-FABI-SINGLE %s
Simon Atanasyand3d173d2012-06-05 13:06:56 +00004824// MIPS-FABI-SINGLE:#define __mips_hard_float 1
Simon Atanasyan5e21c802012-04-06 17:51:49 +00004825// MIPS-FABI-SINGLE:#define __mips_single_float 1
4826//
Simon Atanasyan16071912013-04-14 14:07:30 +00004827// RUN: %clang_cc1 -target-feature +soft-float -target-feature +single-float \
4828// RUN: -E -dM -ffreestanding -triple=mips-none-none < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004829// RUN: | FileCheck -match-full-lines -check-prefix MIPS-FABI-SINGLE-SOFT %s
Simon Atanasyan16071912013-04-14 14:07:30 +00004830// MIPS-FABI-SINGLE-SOFT:#define __mips_single_float 1
4831// MIPS-FABI-SINGLE-SOFT:#define __mips_soft_float 1
4832//
Simon Atanasyan72244b62012-07-05 16:06:06 +00004833// Check MIPS features macros
4834//
4835// RUN: %clang_cc1 -target-feature +mips16 \
4836// RUN: -E -dM -triple=mips-none-none < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004837// RUN: | FileCheck -match-full-lines -check-prefix MIPS16 %s
Simon Atanasyan72244b62012-07-05 16:06:06 +00004838// MIPS16:#define __mips16 1
4839//
4840// RUN: %clang_cc1 -target-feature -mips16 \
4841// RUN: -E -dM -triple=mips-none-none < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004842// RUN: | FileCheck -match-full-lines -check-prefix NOMIPS16 %s
Simon Atanasyan72244b62012-07-05 16:06:06 +00004843// NOMIPS16-NOT:#define __mips16 1
4844//
Simon Atanasyan60777612013-04-14 14:07:51 +00004845// RUN: %clang_cc1 -target-feature +micromips \
4846// RUN: -E -dM -triple=mips-none-none < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004847// RUN: | FileCheck -match-full-lines -check-prefix MICROMIPS %s
Simon Atanasyan60777612013-04-14 14:07:51 +00004848// MICROMIPS:#define __mips_micromips 1
4849//
4850// RUN: %clang_cc1 -target-feature -micromips \
4851// RUN: -E -dM -triple=mips-none-none < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004852// RUN: | FileCheck -match-full-lines -check-prefix NOMICROMIPS %s
Simon Atanasyan60777612013-04-14 14:07:51 +00004853// NOMICROMIPS-NOT:#define __mips_micromips 1
4854//
Simon Atanasyan9780e4a2012-07-05 20:16:22 +00004855// RUN: %clang_cc1 -target-feature +dsp \
4856// RUN: -E -dM -triple=mips-none-none < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004857// RUN: | FileCheck -match-full-lines -check-prefix MIPS-DSP %s
Simon Atanasyan9780e4a2012-07-05 20:16:22 +00004858// MIPS-DSP:#define __mips_dsp 1
4859// MIPS-DSP:#define __mips_dsp_rev 1
4860// MIPS-DSP-NOT:#define __mips_dspr2 1
4861//
4862// RUN: %clang_cc1 -target-feature +dspr2 \
4863// RUN: -E -dM -triple=mips-none-none < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004864// RUN: | FileCheck -match-full-lines -check-prefix MIPS-DSPR2 %s
Simon Atanasyan9780e4a2012-07-05 20:16:22 +00004865// MIPS-DSPR2:#define __mips_dsp 1
4866// MIPS-DSPR2:#define __mips_dsp_rev 2
4867// MIPS-DSPR2:#define __mips_dspr2 1
4868//
Jack Carter44ff1e52013-08-12 17:20:29 +00004869// RUN: %clang_cc1 -target-feature +msa \
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 MIPS-MSA %s
Jack Carter44ff1e52013-08-12 17:20:29 +00004872// MIPS-MSA:#define __mips_msa 1
4873//
Stefan Maksimovic76391b12017-08-11 11:03:54 +00004874// RUN: %clang_cc1 -target-feature +nomadd4 \
4875// RUN: -E -dM -triple=mips-none-none < /dev/null \
4876// RUN: | FileCheck -match-full-lines -check-prefix MIPS-NOMADD4 %s
4877// MIPS-NOMADD4:#define __mips_no_madd4 1
4878//
4879// RUN: %clang_cc1 \
4880// RUN: -E -dM -triple=mips-none-none < /dev/null \
4881// RUN: | FileCheck -match-full-lines -check-prefix MIPS-MADD4 %s
4882// MIPS-MADD4-NOT:#define __mips_no_madd4 1
4883//
Petar Jovanovic1dbc3172015-04-14 12:49:08 +00004884// RUN: %clang_cc1 -target-cpu mips32r3 -target-feature +nan2008 \
Simon Atanasyan22127ce2013-09-24 09:09:16 +00004885// RUN: -E -dM -triple=mips-none-none < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004886// RUN: | FileCheck -match-full-lines -check-prefix MIPS-NAN2008 %s
Simon Atanasyan22127ce2013-09-24 09:09:16 +00004887// MIPS-NAN2008:#define __mips_nan2008 1
4888//
Petar Jovanovic1dbc3172015-04-14 12:49:08 +00004889// RUN: %clang_cc1 -target-cpu mips32r3 -target-feature -nan2008 \
4890// RUN: -E -dM -triple=mips-none-none < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004891// RUN: | FileCheck -match-full-lines -check-prefix NOMIPS-NAN2008 %s
Petar Jovanovic1dbc3172015-04-14 12:49:08 +00004892// NOMIPS-NAN2008-NOT:#define __mips_nan2008 1
4893//
Petar Jovanovic50765112017-08-24 16:06:30 +00004894// RUN: %clang_cc1 -target-cpu mips32r3 -target-feature +abs2008 \
4895// RUN: -E -dM -triple=mips-none-none < /dev/null \
4896// RUN: | FileCheck -match-full-lines -check-prefix MIPS-ABS2008 %s
4897// MIPS-ABS2008:#define __mips_abs2008 1
4898//
4899// RUN: %clang_cc1 -target-cpu mips32r3 -target-feature -abs2008 \
4900// RUN: -E -dM -triple=mips-none-none < /dev/null \
4901// RUN: | FileCheck -match-full-lines -check-prefix NOMIPS-ABS2008 %s
4902// NOMIPS-ABS2008-NOT:#define __mips_abs2008 1
4903//
Stefan Maksimoviceb632562018-08-22 09:26:25 +00004904// RUN: %clang_cc1 \
4905// RUN: -E -dM -triple=mips-none-none < /dev/null \
4906// RUN: | FileCheck -match-full-lines -check-prefix MIPS32-NOFP %s
4907// MIPS32-NOFP:#define __mips_fpr 0
4908//
4909// RUN: %clang_cc1 -target-feature +fpxx \
4910// RUN: -E -dM -triple=mips-none-none < /dev/null \
4911// RUN: | FileCheck -match-full-lines -check-prefix MIPS32-MFPXX %s
4912// MIPS32-MFPXX:#define __mips_fpr 0
4913//
4914// RUN: %clang_cc1 -target-cpu mips32r6 -target-feature +fpxx \
4915// RUN: -E -dM -triple=mips-none-none < /dev/null \
4916// RUN: | FileCheck -match-full-lines -check-prefix MIPS32R6-MFPXX %s
4917// MIPS32R6-MFPXX:#define __mips_fpr 0
4918//
4919// RUN: %clang_cc1 \
4920// RUN: -E -dM -triple=mips64-none-none < /dev/null \
4921// RUN: | FileCheck -match-full-lines -check-prefix MIPS64-NOFP %s
4922// MIPS64-NOFP:#define __mips_fpr 64
4923//
4924// RUN: not %clang_cc1 -target-feature -fp64 \
4925// RUN: -E -dM -triple=mips64-none-none < /dev/null 2>&1 \
4926// RUN: | FileCheck -match-full-lines -check-prefix MIPS64-MFP32 %s
4927// MIPS64-MFP32:error: option '-mfpxx' cannot be specified with 'mips64r2'
4928//
4929// RUN: not %clang_cc1 -target-feature +fpxx \
4930// RUN: -E -dM -triple=mips64-none-none < /dev/null 2>&1 \
4931// RUN: | FileCheck -match-full-lines -check-prefix MIPS64-MFPXX %s
4932// MIPS64-MFPXX:error: '-mfpxx' can only be used with the 'o32' ABI
4933//
4934// RUN: not %clang_cc1 -target-cpu mips64r6 -target-feature +fpxx \
4935// RUN: -E -dM -triple=mips64-none-none < /dev/null 2>&1 \
4936// RUN: | FileCheck -match-full-lines -check-prefix MIPS64R6-MFPXX %s
4937// MIPS64R6-MFPXX:error: '-mfpxx' can only be used with the 'o32' ABI
4938//
Simon Atanasyan2c97a812013-10-18 13:13:53 +00004939// RUN: %clang_cc1 -target-feature -fp64 \
4940// RUN: -E -dM -triple=mips-none-none < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004941// RUN: | FileCheck -match-full-lines -check-prefix MIPS32-MFP32 %s
Simon Atanasyan2c97a812013-10-18 13:13:53 +00004942// MIPS32-MFP32:#define _MIPS_FPSET 16
4943// MIPS32-MFP32:#define __mips_fpr 32
4944//
4945// RUN: %clang_cc1 -target-feature +fp64 \
4946// RUN: -E -dM -triple=mips-none-none < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004947// RUN: | FileCheck -match-full-lines -check-prefix MIPS32-MFP64 %s
Simon Atanasyan2c97a812013-10-18 13:13:53 +00004948// MIPS32-MFP64:#define _MIPS_FPSET 32
4949// MIPS32-MFP64:#define __mips_fpr 64
4950//
4951// RUN: %clang_cc1 -target-feature +single-float \
4952// RUN: -E -dM -triple=mips-none-none < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004953// RUN: | FileCheck -match-full-lines -check-prefix MIPS32-MFP32SF %s
Simon Atanasyan2c97a812013-10-18 13:13:53 +00004954// MIPS32-MFP32SF:#define _MIPS_FPSET 32
Stefan Maksimoviceb632562018-08-22 09:26:25 +00004955// MIPS32-MFP32SF:#define __mips_fpr 0
Simon Atanasyan2c97a812013-10-18 13:13:53 +00004956//
4957// RUN: %clang_cc1 -target-feature +fp64 \
4958// RUN: -E -dM -triple=mips64-none-none < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004959// RUN: | FileCheck -match-full-lines -check-prefix MIPS64-MFP64 %s
Simon Atanasyan2c97a812013-10-18 13:13:53 +00004960// MIPS64-MFP64:#define _MIPS_FPSET 32
4961// MIPS64-MFP64:#define __mips_fpr 64
4962//
4963// RUN: %clang_cc1 -target-feature -fp64 -target-feature +single-float \
4964// RUN: -E -dM -triple=mips64-none-none < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004965// RUN: | FileCheck -match-full-lines -check-prefix MIPS64-NOMFP64 %s
Simon Atanasyan2c97a812013-10-18 13:13:53 +00004966// MIPS64-NOMFP64:#define _MIPS_FPSET 32
4967// MIPS64-NOMFP64:#define __mips_fpr 32
4968//
Daniel Sanders9500d2d2014-07-09 13:56:23 +00004969// RUN: %clang_cc1 -target-cpu mips32r6 \
4970// RUN: -E -dM -triple=mips-none-none < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004971// RUN: | FileCheck -match-full-lines -check-prefix MIPS-XXR6 %s
Daniel Sanders9500d2d2014-07-09 13:56:23 +00004972// RUN: %clang_cc1 -target-cpu mips64r6 \
4973// RUN: -E -dM -triple=mips64-none-none < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00004974// RUN: | FileCheck -match-full-lines -check-prefix MIPS-XXR6 %s
Daniel Sanders9500d2d2014-07-09 13:56:23 +00004975// MIPS-XXR6:#define _MIPS_FPSET 32
4976// MIPS-XXR6:#define __mips_fpr 64
4977// MIPS-XXR6:#define __mips_nan2008 1
4978//
Simon Dardisdf827a72017-02-21 16:01:00 +00004979// RUN: %clang_cc1 -target-cpu mips32 \
4980// RUN: -E -dM -triple=mips-unknown-netbsd -mrelocation-model pic < /dev/null \
4981// RUN: | FileCheck -match-full-lines -check-prefix MIPS-ABICALLS-NETBSD %s
4982// MIPS-ABICALLS-NETBSD-NOT: #define __ABICALLS__ 1
4983// MIPS-ABICALLS-NETBSD: #define __mips_abicalls 1
4984//
4985// RUN: %clang_cc1 -target-cpu mips64 \
4986// RUN: -E -dM -triple=mips64-unknown-netbsd -mrelocation-model pic < \
4987// RUN: /dev/null | FileCheck -match-full-lines \
4988// RUN: -check-prefix MIPS-ABICALLS-NETBSD64 %s
4989// MIPS-ABICALLS-NETBSD64-NOT: #define __ABICALLS__ 1
4990// MIPS-ABICALLS-NETBSD64: #define __mips_abicalls 1
4991//
4992// RUN: %clang_cc1 -target-cpu mips32 \
4993// RUN: -E -dM -triple=mips-unknown-freebsd -mrelocation-model pic < /dev/null \
4994// RUN: | FileCheck -match-full-lines -check-prefix MIPS-ABICALLS-FREEBSD %s
4995// MIPS-ABICALLS-FREEBSD: #define __ABICALLS__ 1
4996// MIPS-ABICALLS-FREEBSD: #define __mips_abicalls 1
4997//
4998// RUN: %clang_cc1 -target-cpu mips64 \
4999// RUN: -E -dM -triple=mips64-unknown-freebsd -mrelocation-model pic < \
5000// RUN: /dev/null | FileCheck -match-full-lines \
5001// RUN: -check-prefix MIPS-ABICALLS-FREEBSD64 %s
5002// MIPS-ABICALLS-FREEBSD64: #define __ABICALLS__ 1
5003// MIPS-ABICALLS-FREEBSD64: #define __mips_abicalls 1
5004//
5005// RUN: %clang_cc1 -target-cpu mips32 \
5006// RUN: -E -dM -triple=mips-unknown-openbsd -mrelocation-model pic < /dev/null \
5007// RUN: | FileCheck -match-full-lines -check-prefix MIPS-ABICALLS-OPENBSD %s
5008// MIPS-ABICALLS-OPENBSD: #define __ABICALLS__ 1
5009// MIPS-ABICALLS-OPENBSD: #define __mips_abicalls 1
5010//
5011// RUN: %clang_cc1 -target-cpu mips64 \
5012// RUN: -E -dM -triple=mips64-unknown-openbsd -mrelocation-model pic < \
5013// RUN: /dev/null | FileCheck -match-full-lines \
5014// RUN: -check-prefix MIPS-ABICALLS-OPENBSD64 %s
5015// MIPS-ABICALLS-OPENBSD64: #define __ABICALLS__ 1
5016// MIPS-ABICALLS-OPENBSD64: #define __mips_abicalls 1
5017//
James Y Knightc97efa42016-02-11 16:51:29 +00005018// 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 +00005019// 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 +00005020//
5021// MSP430:#define MSP430 1
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00005022// MSP430-NOT:#define _LP64
Tim Northovera6a19f12015-02-06 01:25:07 +00005023// MSP430:#define __BIGGEST_ALIGNMENT__ 2
Dylan Noblesmith673728f2012-07-27 18:34:31 +00005024// MSP430:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
Dan Gohman04f87202010-05-28 00:27:15 +00005025// MSP430:#define __CHAR16_TYPE__ unsigned short
5026// MSP430:#define __CHAR32_TYPE__ unsigned int
Chris Lattnere963d092009-10-29 04:55:36 +00005027// MSP430:#define __CHAR_BIT__ 8
5028// MSP430:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
5029// MSP430:#define __DBL_DIG__ 15
5030// MSP430:#define __DBL_EPSILON__ 2.2204460492503131e-16
5031// MSP430:#define __DBL_HAS_DENORM__ 1
5032// MSP430:#define __DBL_HAS_INFINITY__ 1
5033// MSP430:#define __DBL_HAS_QUIET_NAN__ 1
5034// MSP430:#define __DBL_MANT_DIG__ 53
5035// MSP430:#define __DBL_MAX_10_EXP__ 308
5036// MSP430:#define __DBL_MAX_EXP__ 1024
5037// MSP430:#define __DBL_MAX__ 1.7976931348623157e+308
5038// MSP430:#define __DBL_MIN_10_EXP__ (-307)
5039// MSP430:#define __DBL_MIN_EXP__ (-1021)
5040// MSP430:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00005041// MSP430:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Chris Lattnere963d092009-10-29 04:55:36 +00005042// MSP430:#define __FLT_DENORM_MIN__ 1.40129846e-45F
5043// MSP430:#define __FLT_DIG__ 6
5044// MSP430:#define __FLT_EPSILON__ 1.19209290e-7F
5045// MSP430:#define __FLT_EVAL_METHOD__ 0
5046// MSP430:#define __FLT_HAS_DENORM__ 1
5047// MSP430:#define __FLT_HAS_INFINITY__ 1
5048// MSP430:#define __FLT_HAS_QUIET_NAN__ 1
5049// MSP430:#define __FLT_MANT_DIG__ 24
5050// MSP430:#define __FLT_MAX_10_EXP__ 38
5051// MSP430:#define __FLT_MAX_EXP__ 128
5052// MSP430:#define __FLT_MAX__ 3.40282347e+38F
5053// MSP430:#define __FLT_MIN_10_EXP__ (-37)
5054// MSP430:#define __FLT_MIN_EXP__ (-125)
5055// MSP430:#define __FLT_MIN__ 1.17549435e-38F
5056// MSP430:#define __FLT_RADIX__ 2
James Y Knightc97efa42016-02-11 16:51:29 +00005057// MSP430:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005058// MSP430:#define __INT16_FMTd__ "hd"
5059// MSP430:#define __INT16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00005060// MSP430:#define __INT16_MAX__ 32767
Chris Lattnere963d092009-10-29 04:55:36 +00005061// MSP430:#define __INT16_TYPE__ short
Ken Dyck2dc8d5f2009-11-16 16:36:33 +00005062// MSP430:#define __INT32_C_SUFFIX__ L
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005063// MSP430:#define __INT32_FMTd__ "ld"
5064// MSP430:#define __INT32_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00005065// MSP430:#define __INT32_MAX__ 2147483647L
Chris Lattner55c98772009-11-12 08:08:27 +00005066// MSP430:#define __INT32_TYPE__ long int
JF Bastienab8d0a02014-06-25 01:31:33 +00005067// MSP430:#define __INT64_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005068// MSP430:#define __INT64_FMTd__ "lld"
5069// MSP430:#define __INT64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00005070// MSP430:#define __INT64_MAX__ 9223372036854775807LL
5071// MSP430:#define __INT64_TYPE__ long long int
James Y Knightc97efa42016-02-11 16:51:29 +00005072// MSP430:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005073// MSP430:#define __INT8_FMTd__ "hhd"
5074// MSP430:#define __INT8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00005075// MSP430:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00005076// MSP430:#define __INT8_TYPE__ signed char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00005077// MSP430:#define __INTMAX_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005078// MSP430:#define __INTMAX_FMTd__ "lld"
5079// MSP430:#define __INTMAX_FMTi__ "lli"
Anton Korobeynikovef412902013-07-01 19:42:40 +00005080// MSP430:#define __INTMAX_MAX__ 9223372036854775807LL
5081// MSP430:#define __INTMAX_TYPE__ long long int
5082// MSP430:#define __INTMAX_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005083// MSP430:#define __INTPTR_FMTd__ "d"
5084// MSP430:#define __INTPTR_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00005085// MSP430:#define __INTPTR_MAX__ 32767
Anton Korobeynikovef412902013-07-01 19:42:40 +00005086// MSP430:#define __INTPTR_TYPE__ int
Ken Dyck24cfcf12009-11-18 20:05:48 +00005087// MSP430:#define __INTPTR_WIDTH__ 16
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005088// MSP430:#define __INT_FAST16_FMTd__ "hd"
5089// MSP430:#define __INT_FAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00005090// MSP430:#define __INT_FAST16_MAX__ 32767
5091// MSP430:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005092// MSP430:#define __INT_FAST32_FMTd__ "ld"
5093// MSP430:#define __INT_FAST32_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00005094// MSP430:#define __INT_FAST32_MAX__ 2147483647L
5095// MSP430:#define __INT_FAST32_TYPE__ long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005096// MSP430:#define __INT_FAST64_FMTd__ "lld"
5097// MSP430:#define __INT_FAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00005098// MSP430:#define __INT_FAST64_MAX__ 9223372036854775807LL
5099// MSP430:#define __INT_FAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005100// MSP430:#define __INT_FAST8_FMTd__ "hhd"
5101// MSP430:#define __INT_FAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00005102// MSP430:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00005103// MSP430:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005104// MSP430:#define __INT_LEAST16_FMTd__ "hd"
5105// MSP430:#define __INT_LEAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00005106// MSP430:#define __INT_LEAST16_MAX__ 32767
5107// MSP430:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005108// MSP430:#define __INT_LEAST32_FMTd__ "ld"
5109// MSP430:#define __INT_LEAST32_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00005110// MSP430:#define __INT_LEAST32_MAX__ 2147483647L
5111// MSP430:#define __INT_LEAST32_TYPE__ long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005112// MSP430:#define __INT_LEAST64_FMTd__ "lld"
5113// MSP430:#define __INT_LEAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00005114// MSP430:#define __INT_LEAST64_MAX__ 9223372036854775807LL
5115// MSP430:#define __INT_LEAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005116// MSP430:#define __INT_LEAST8_FMTd__ "hhd"
5117// MSP430:#define __INT_LEAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00005118// MSP430:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00005119// MSP430:#define __INT_LEAST8_TYPE__ signed char
Chris Lattnere963d092009-10-29 04:55:36 +00005120// MSP430:#define __INT_MAX__ 32767
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00005121// MSP430:#define __LDBL_DENORM_MIN__ 4.9406564584124654e-324L
Chris Lattnere963d092009-10-29 04:55:36 +00005122// MSP430:#define __LDBL_DIG__ 15
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00005123// MSP430:#define __LDBL_EPSILON__ 2.2204460492503131e-16L
Chris Lattnere963d092009-10-29 04:55:36 +00005124// MSP430:#define __LDBL_HAS_DENORM__ 1
5125// MSP430:#define __LDBL_HAS_INFINITY__ 1
5126// MSP430:#define __LDBL_HAS_QUIET_NAN__ 1
5127// MSP430:#define __LDBL_MANT_DIG__ 53
5128// MSP430:#define __LDBL_MAX_10_EXP__ 308
5129// MSP430:#define __LDBL_MAX_EXP__ 1024
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00005130// MSP430:#define __LDBL_MAX__ 1.7976931348623157e+308L
Chris Lattnere963d092009-10-29 04:55:36 +00005131// MSP430:#define __LDBL_MIN_10_EXP__ (-307)
5132// MSP430:#define __LDBL_MIN_EXP__ (-1021)
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00005133// MSP430:#define __LDBL_MIN__ 2.2250738585072014e-308L
Robert Lytton2c942c62014-03-10 12:06:29 +00005134// MSP430:#define __LITTLE_ENDIAN__ 1
Anton Korobeynikov485810e2010-01-14 21:36:52 +00005135// MSP430:#define __LONG_LONG_MAX__ 9223372036854775807LL
Chris Lattnere963d092009-10-29 04:55:36 +00005136// MSP430:#define __LONG_MAX__ 2147483647L
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00005137// MSP430-NOT:#define __LP64__
Chris Lattnere963d092009-10-29 04:55:36 +00005138// MSP430:#define __MSP430__ 1
Chris Lattnere963d092009-10-29 04:55:36 +00005139// MSP430:#define __POINTER_WIDTH__ 16
Ken Dyck9b25f782009-11-19 13:18:59 +00005140// MSP430:#define __PTRDIFF_TYPE__ int
James Y Knightc97efa42016-02-11 16:51:29 +00005141// MSP430:#define __PTRDIFF_WIDTH__ 16
Chris Lattnere963d092009-10-29 04:55:36 +00005142// MSP430:#define __SCHAR_MAX__ 127
5143// MSP430:#define __SHRT_MAX__ 32767
James Y Knightc97efa42016-02-11 16:51:29 +00005144// MSP430:#define __SIG_ATOMIC_MAX__ 2147483647L
Ken Dyckadc85112009-11-22 15:41:04 +00005145// MSP430:#define __SIG_ATOMIC_WIDTH__ 32
Dan Gohman04f87202010-05-28 00:27:15 +00005146// MSP430:#define __SIZEOF_DOUBLE__ 8
5147// MSP430:#define __SIZEOF_FLOAT__ 4
5148// MSP430:#define __SIZEOF_INT__ 2
5149// MSP430:#define __SIZEOF_LONG_DOUBLE__ 8
5150// MSP430:#define __SIZEOF_LONG_LONG__ 8
5151// MSP430:#define __SIZEOF_LONG__ 4
5152// MSP430:#define __SIZEOF_POINTER__ 2
5153// MSP430:#define __SIZEOF_PTRDIFF_T__ 2
5154// MSP430:#define __SIZEOF_SHORT__ 2
5155// MSP430:#define __SIZEOF_SIZE_T__ 2
5156// MSP430:#define __SIZEOF_WCHAR_T__ 2
5157// MSP430:#define __SIZEOF_WINT_T__ 2
James Y Knightc97efa42016-02-11 16:51:29 +00005158// MSP430:#define __SIZE_MAX__ 65535U
Chris Lattnere963d092009-10-29 04:55:36 +00005159// MSP430:#define __SIZE_TYPE__ unsigned int
Ken Dyck57512862009-11-19 13:42:09 +00005160// MSP430:#define __SIZE_WIDTH__ 16
Richard Smith59139022016-09-30 22:41:36 +00005161// MSP430-CXX:#define __STDCPP_DEFAULT_NEW_ALIGNMENT__ 8U
JF Bastienab8d0a02014-06-25 01:31:33 +00005162// MSP430:#define __UINT16_C_SUFFIX__ U
James Y Knightc97efa42016-02-11 16:51:29 +00005163// MSP430:#define __UINT16_MAX__ 65535U
JF Bastienab8d0a02014-06-25 01:31:33 +00005164// MSP430:#define __UINT16_TYPE__ unsigned short
5165// MSP430:#define __UINT32_C_SUFFIX__ UL
5166// MSP430:#define __UINT32_MAX__ 4294967295UL
5167// MSP430:#define __UINT32_TYPE__ long unsigned int
5168// MSP430:#define __UINT64_C_SUFFIX__ ULL
5169// MSP430:#define __UINT64_MAX__ 18446744073709551615ULL
5170// MSP430:#define __UINT64_TYPE__ long long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00005171// MSP430:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00005172// MSP430:#define __UINT8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00005173// MSP430:#define __UINT8_TYPE__ unsigned char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00005174// MSP430:#define __UINTMAX_C_SUFFIX__ ULL
JF Bastienab8d0a02014-06-25 01:31:33 +00005175// MSP430:#define __UINTMAX_MAX__ 18446744073709551615ULL
Anton Korobeynikovef412902013-07-01 19:42:40 +00005176// MSP430:#define __UINTMAX_TYPE__ long long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00005177// MSP430:#define __UINTMAX_WIDTH__ 64
James Y Knightc97efa42016-02-11 16:51:29 +00005178// MSP430:#define __UINTPTR_MAX__ 65535U
Joerg Sonnenberger3809a7a2014-07-14 20:40:56 +00005179// MSP430:#define __UINTPTR_TYPE__ unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00005180// MSP430:#define __UINTPTR_WIDTH__ 16
James Y Knightc97efa42016-02-11 16:51:29 +00005181// MSP430:#define __UINT_FAST16_MAX__ 65535U
JF Bastienab8d0a02014-06-25 01:31:33 +00005182// MSP430:#define __UINT_FAST16_TYPE__ unsigned short
5183// MSP430:#define __UINT_FAST32_MAX__ 4294967295UL
5184// MSP430:#define __UINT_FAST32_TYPE__ long unsigned int
5185// MSP430:#define __UINT_FAST64_MAX__ 18446744073709551615ULL
5186// MSP430:#define __UINT_FAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00005187// MSP430:#define __UINT_FAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00005188// MSP430:#define __UINT_FAST8_TYPE__ unsigned char
James Y Knightc97efa42016-02-11 16:51:29 +00005189// MSP430:#define __UINT_LEAST16_MAX__ 65535U
JF Bastienab8d0a02014-06-25 01:31:33 +00005190// MSP430:#define __UINT_LEAST16_TYPE__ unsigned short
5191// MSP430:#define __UINT_LEAST32_MAX__ 4294967295UL
5192// MSP430:#define __UINT_LEAST32_TYPE__ long unsigned int
5193// MSP430:#define __UINT_LEAST64_MAX__ 18446744073709551615ULL
5194// MSP430:#define __UINT_LEAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00005195// MSP430:#define __UINT_LEAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00005196// MSP430:#define __UINT_LEAST8_TYPE__ unsigned char
James Y Knightb214cbc2016-03-04 19:00:41 +00005197// MSP430:#define __USER_LABEL_PREFIX__
Chris Lattner0fb5bbd2009-11-12 08:04:33 +00005198// MSP430:#define __WCHAR_MAX__ 32767
Chris Lattnere963d092009-10-29 04:55:36 +00005199// MSP430:#define __WCHAR_TYPE__ int
Ken Dyck0138b9e2009-11-19 15:47:58 +00005200// MSP430:#define __WCHAR_WIDTH__ 16
Chris Lattnere963d092009-10-29 04:55:36 +00005201// MSP430:#define __WINT_TYPE__ int
Ken Dycka1f677c2009-11-19 14:16:57 +00005202// MSP430:#define __WINT_WIDTH__ 16
Chris Lattnere963d092009-10-29 04:55:36 +00005203// MSP430:#define __clang__ 1
5204//
James Y Knightc97efa42016-02-11 16:51:29 +00005205// 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 +00005206// 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 +00005207//
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00005208// NVPTX32-NOT:#define _LP64
Tim Northovera6a19f12015-02-06 01:25:07 +00005209// NVPTX32:#define __BIGGEST_ALIGNMENT__ 8
Dylan Noblesmith673728f2012-07-27 18:34:31 +00005210// NVPTX32:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00005211// NVPTX32:#define __CHAR16_TYPE__ unsigned short
5212// NVPTX32:#define __CHAR32_TYPE__ unsigned int
5213// NVPTX32:#define __CHAR_BIT__ 8
5214// NVPTX32:#define __CONSTANT_CFSTRINGS__ 1
5215// NVPTX32:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
5216// NVPTX32:#define __DBL_DIG__ 15
5217// NVPTX32:#define __DBL_EPSILON__ 2.2204460492503131e-16
5218// NVPTX32:#define __DBL_HAS_DENORM__ 1
5219// NVPTX32:#define __DBL_HAS_INFINITY__ 1
5220// NVPTX32:#define __DBL_HAS_QUIET_NAN__ 1
5221// NVPTX32:#define __DBL_MANT_DIG__ 53
5222// NVPTX32:#define __DBL_MAX_10_EXP__ 308
5223// NVPTX32:#define __DBL_MAX_EXP__ 1024
5224// NVPTX32:#define __DBL_MAX__ 1.7976931348623157e+308
5225// NVPTX32:#define __DBL_MIN_10_EXP__ (-307)
5226// NVPTX32:#define __DBL_MIN_EXP__ (-1021)
5227// NVPTX32:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00005228// NVPTX32:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00005229// NVPTX32:#define __FINITE_MATH_ONLY__ 0
5230// NVPTX32:#define __FLT_DENORM_MIN__ 1.40129846e-45F
5231// NVPTX32:#define __FLT_DIG__ 6
5232// NVPTX32:#define __FLT_EPSILON__ 1.19209290e-7F
5233// NVPTX32:#define __FLT_EVAL_METHOD__ 0
5234// NVPTX32:#define __FLT_HAS_DENORM__ 1
5235// NVPTX32:#define __FLT_HAS_INFINITY__ 1
5236// NVPTX32:#define __FLT_HAS_QUIET_NAN__ 1
5237// NVPTX32:#define __FLT_MANT_DIG__ 24
5238// NVPTX32:#define __FLT_MAX_10_EXP__ 38
5239// NVPTX32:#define __FLT_MAX_EXP__ 128
5240// NVPTX32:#define __FLT_MAX__ 3.40282347e+38F
5241// NVPTX32:#define __FLT_MIN_10_EXP__ (-37)
5242// NVPTX32:#define __FLT_MIN_EXP__ (-125)
5243// NVPTX32:#define __FLT_MIN__ 1.17549435e-38F
5244// NVPTX32:#define __FLT_RADIX__ 2
James Y Knightc97efa42016-02-11 16:51:29 +00005245// NVPTX32:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005246// NVPTX32:#define __INT16_FMTd__ "hd"
5247// NVPTX32:#define __INT16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00005248// NVPTX32:#define __INT16_MAX__ 32767
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00005249// NVPTX32:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +00005250// NVPTX32:#define __INT32_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005251// NVPTX32:#define __INT32_FMTd__ "d"
5252// NVPTX32:#define __INT32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00005253// NVPTX32:#define __INT32_MAX__ 2147483647
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00005254// NVPTX32:#define __INT32_TYPE__ int
5255// NVPTX32:#define __INT64_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005256// NVPTX32:#define __INT64_FMTd__ "lld"
5257// NVPTX32:#define __INT64_FMTi__ "lli"
James Y Knightc97efa42016-02-11 16:51:29 +00005258// NVPTX32:#define __INT64_MAX__ 9223372036854775807LL
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00005259// NVPTX32:#define __INT64_TYPE__ long long int
James Y Knightc97efa42016-02-11 16:51:29 +00005260// NVPTX32:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005261// NVPTX32:#define __INT8_FMTd__ "hhd"
5262// NVPTX32:#define __INT8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00005263// NVPTX32:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00005264// NVPTX32:#define __INT8_TYPE__ signed char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00005265// NVPTX32:#define __INTMAX_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005266// NVPTX32:#define __INTMAX_FMTd__ "lld"
5267// NVPTX32:#define __INTMAX_FMTi__ "lli"
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00005268// NVPTX32:#define __INTMAX_MAX__ 9223372036854775807LL
5269// NVPTX32:#define __INTMAX_TYPE__ long long int
5270// NVPTX32:#define __INTMAX_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005271// NVPTX32:#define __INTPTR_FMTd__ "d"
5272// NVPTX32:#define __INTPTR_FMTi__ "i"
Joerg Sonnenberger3809a7a2014-07-14 20:40:56 +00005273// NVPTX32:#define __INTPTR_MAX__ 2147483647
5274// NVPTX32:#define __INTPTR_TYPE__ int
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00005275// NVPTX32:#define __INTPTR_WIDTH__ 32
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005276// NVPTX32:#define __INT_FAST16_FMTd__ "hd"
5277// NVPTX32:#define __INT_FAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00005278// NVPTX32:#define __INT_FAST16_MAX__ 32767
5279// NVPTX32:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005280// NVPTX32:#define __INT_FAST32_FMTd__ "d"
5281// NVPTX32:#define __INT_FAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00005282// NVPTX32:#define __INT_FAST32_MAX__ 2147483647
5283// NVPTX32:#define __INT_FAST32_TYPE__ int
Artem Belevich236cfdc2015-09-28 22:54:08 +00005284// NVPTX32:#define __INT_FAST64_FMTd__ "lld"
5285// NVPTX32:#define __INT_FAST64_FMTi__ "lli"
James Y Knightc97efa42016-02-11 16:51:29 +00005286// NVPTX32:#define __INT_FAST64_MAX__ 9223372036854775807LL
Artem Belevich236cfdc2015-09-28 22:54:08 +00005287// NVPTX32:#define __INT_FAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005288// NVPTX32:#define __INT_FAST8_FMTd__ "hhd"
5289// NVPTX32:#define __INT_FAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00005290// NVPTX32:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00005291// NVPTX32:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005292// NVPTX32:#define __INT_LEAST16_FMTd__ "hd"
5293// NVPTX32:#define __INT_LEAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00005294// NVPTX32:#define __INT_LEAST16_MAX__ 32767
5295// NVPTX32:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005296// NVPTX32:#define __INT_LEAST32_FMTd__ "d"
5297// NVPTX32:#define __INT_LEAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00005298// NVPTX32:#define __INT_LEAST32_MAX__ 2147483647
5299// NVPTX32:#define __INT_LEAST32_TYPE__ int
Artem Belevich236cfdc2015-09-28 22:54:08 +00005300// NVPTX32:#define __INT_LEAST64_FMTd__ "lld"
5301// NVPTX32:#define __INT_LEAST64_FMTi__ "lli"
James Y Knightc97efa42016-02-11 16:51:29 +00005302// NVPTX32:#define __INT_LEAST64_MAX__ 9223372036854775807LL
Artem Belevich236cfdc2015-09-28 22:54:08 +00005303// NVPTX32:#define __INT_LEAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005304// NVPTX32:#define __INT_LEAST8_FMTd__ "hhd"
5305// NVPTX32:#define __INT_LEAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00005306// NVPTX32:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00005307// NVPTX32:#define __INT_LEAST8_TYPE__ signed char
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00005308// NVPTX32:#define __INT_MAX__ 2147483647
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00005309// NVPTX32:#define __LDBL_DENORM_MIN__ 4.9406564584124654e-324L
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00005310// NVPTX32:#define __LDBL_DIG__ 15
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00005311// NVPTX32:#define __LDBL_EPSILON__ 2.2204460492503131e-16L
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00005312// NVPTX32:#define __LDBL_HAS_DENORM__ 1
5313// NVPTX32:#define __LDBL_HAS_INFINITY__ 1
5314// NVPTX32:#define __LDBL_HAS_QUIET_NAN__ 1
5315// NVPTX32:#define __LDBL_MANT_DIG__ 53
5316// NVPTX32:#define __LDBL_MAX_10_EXP__ 308
5317// NVPTX32:#define __LDBL_MAX_EXP__ 1024
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00005318// NVPTX32:#define __LDBL_MAX__ 1.7976931348623157e+308L
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00005319// NVPTX32:#define __LDBL_MIN_10_EXP__ (-307)
5320// NVPTX32:#define __LDBL_MIN_EXP__ (-1021)
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00005321// NVPTX32:#define __LDBL_MIN__ 2.2250738585072014e-308L
Robert Lytton2c942c62014-03-10 12:06:29 +00005322// NVPTX32:#define __LITTLE_ENDIAN__ 1
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00005323// NVPTX32:#define __LONG_LONG_MAX__ 9223372036854775807LL
Artem Belevich236cfdc2015-09-28 22:54:08 +00005324// NVPTX32:#define __LONG_MAX__ 2147483647L
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00005325// NVPTX32-NOT:#define __LP64__
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00005326// NVPTX32:#define __NVPTX__ 1
5327// NVPTX32:#define __POINTER_WIDTH__ 32
5328// NVPTX32:#define __PRAGMA_REDEFINE_EXTNAME 1
Eli Bendersky13467172015-04-01 20:29:18 +00005329// NVPTX32:#define __PTRDIFF_TYPE__ int
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00005330// NVPTX32:#define __PTRDIFF_WIDTH__ 32
5331// NVPTX32:#define __PTX__ 1
5332// NVPTX32:#define __SCHAR_MAX__ 127
5333// NVPTX32:#define __SHRT_MAX__ 32767
Joerg Sonnenbergerb3a49692014-07-17 18:31:20 +00005334// NVPTX32:#define __SIG_ATOMIC_MAX__ 2147483647
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00005335// NVPTX32:#define __SIG_ATOMIC_WIDTH__ 32
5336// NVPTX32:#define __SIZEOF_DOUBLE__ 8
5337// NVPTX32:#define __SIZEOF_FLOAT__ 4
5338// NVPTX32:#define __SIZEOF_INT__ 4
5339// NVPTX32:#define __SIZEOF_LONG_DOUBLE__ 8
5340// NVPTX32:#define __SIZEOF_LONG_LONG__ 8
Artem Belevich236cfdc2015-09-28 22:54:08 +00005341// NVPTX32:#define __SIZEOF_LONG__ 4
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00005342// NVPTX32:#define __SIZEOF_POINTER__ 4
5343// NVPTX32:#define __SIZEOF_PTRDIFF_T__ 4
5344// NVPTX32:#define __SIZEOF_SHORT__ 2
5345// NVPTX32:#define __SIZEOF_SIZE_T__ 4
5346// NVPTX32:#define __SIZEOF_WCHAR_T__ 4
5347// NVPTX32:#define __SIZEOF_WINT_T__ 4
Evgeniy Stepanovc3c725a2013-03-28 08:36:54 +00005348// NVPTX32:#define __SIZE_MAX__ 4294967295U
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00005349// NVPTX32:#define __SIZE_TYPE__ unsigned int
5350// NVPTX32:#define __SIZE_WIDTH__ 32
Richard Smith59139022016-09-30 22:41:36 +00005351// NVPTX32-CXX:#define __STDCPP_DEFAULT_NEW_ALIGNMENT__ 8U
James Y Knightc97efa42016-02-11 16:51:29 +00005352// NVPTX32:#define __UINT16_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00005353// NVPTX32:#define __UINT16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00005354// NVPTX32:#define __UINT16_TYPE__ unsigned short
5355// NVPTX32:#define __UINT32_C_SUFFIX__ U
5356// NVPTX32:#define __UINT32_MAX__ 4294967295U
5357// NVPTX32:#define __UINT32_TYPE__ unsigned int
Joerg Sonnenberger62277b32014-07-15 11:51:38 +00005358// NVPTX32:#define __UINT64_C_SUFFIX__ ULL
5359// NVPTX32:#define __UINT64_MAX__ 18446744073709551615ULL
5360// NVPTX32:#define __UINT64_TYPE__ long long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00005361// NVPTX32:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00005362// NVPTX32:#define __UINT8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00005363// NVPTX32:#define __UINT8_TYPE__ unsigned char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00005364// NVPTX32:#define __UINTMAX_C_SUFFIX__ ULL
JF Bastienab8d0a02014-06-25 01:31:33 +00005365// NVPTX32:#define __UINTMAX_MAX__ 18446744073709551615ULL
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00005366// NVPTX32:#define __UINTMAX_TYPE__ long long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00005367// NVPTX32:#define __UINTMAX_WIDTH__ 64
5368// NVPTX32:#define __UINTPTR_MAX__ 4294967295U
5369// NVPTX32:#define __UINTPTR_TYPE__ unsigned int
5370// NVPTX32:#define __UINTPTR_WIDTH__ 32
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00005371// NVPTX32:#define __UINT_FAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00005372// NVPTX32:#define __UINT_FAST16_TYPE__ unsigned short
5373// NVPTX32:#define __UINT_FAST32_MAX__ 4294967295U
5374// NVPTX32:#define __UINT_FAST32_TYPE__ unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00005375// NVPTX32:#define __UINT_FAST64_MAX__ 18446744073709551615ULL
Artem Belevich236cfdc2015-09-28 22:54:08 +00005376// NVPTX32:#define __UINT_FAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00005377// NVPTX32:#define __UINT_FAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00005378// NVPTX32:#define __UINT_FAST8_TYPE__ unsigned char
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00005379// NVPTX32:#define __UINT_LEAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00005380// NVPTX32:#define __UINT_LEAST16_TYPE__ unsigned short
5381// NVPTX32:#define __UINT_LEAST32_MAX__ 4294967295U
5382// NVPTX32:#define __UINT_LEAST32_TYPE__ unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00005383// NVPTX32:#define __UINT_LEAST64_MAX__ 18446744073709551615ULL
Artem Belevich236cfdc2015-09-28 22:54:08 +00005384// NVPTX32:#define __UINT_LEAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00005385// NVPTX32:#define __UINT_LEAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00005386// NVPTX32:#define __UINT_LEAST8_TYPE__ unsigned char
James Y Knightb214cbc2016-03-04 19:00:41 +00005387// NVPTX32:#define __USER_LABEL_PREFIX__
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00005388// NVPTX32:#define __WCHAR_MAX__ 2147483647
5389// NVPTX32:#define __WCHAR_TYPE__ int
5390// NVPTX32:#define __WCHAR_WIDTH__ 32
5391// NVPTX32:#define __WINT_TYPE__ int
5392// NVPTX32:#define __WINT_WIDTH__ 32
5393//
James Y Knightc97efa42016-02-11 16:51:29 +00005394// 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 +00005395// 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 +00005396//
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00005397// NVPTX64:#define _LP64 1
Tim Northovera6a19f12015-02-06 01:25:07 +00005398// NVPTX64:#define __BIGGEST_ALIGNMENT__ 8
Dylan Noblesmith673728f2012-07-27 18:34:31 +00005399// NVPTX64:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00005400// NVPTX64:#define __CHAR16_TYPE__ unsigned short
5401// NVPTX64:#define __CHAR32_TYPE__ unsigned int
5402// NVPTX64:#define __CHAR_BIT__ 8
5403// NVPTX64:#define __CONSTANT_CFSTRINGS__ 1
5404// NVPTX64:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
5405// NVPTX64:#define __DBL_DIG__ 15
5406// NVPTX64:#define __DBL_EPSILON__ 2.2204460492503131e-16
5407// NVPTX64:#define __DBL_HAS_DENORM__ 1
5408// NVPTX64:#define __DBL_HAS_INFINITY__ 1
5409// NVPTX64:#define __DBL_HAS_QUIET_NAN__ 1
5410// NVPTX64:#define __DBL_MANT_DIG__ 53
5411// NVPTX64:#define __DBL_MAX_10_EXP__ 308
5412// NVPTX64:#define __DBL_MAX_EXP__ 1024
5413// NVPTX64:#define __DBL_MAX__ 1.7976931348623157e+308
5414// NVPTX64:#define __DBL_MIN_10_EXP__ (-307)
5415// NVPTX64:#define __DBL_MIN_EXP__ (-1021)
5416// NVPTX64:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00005417// NVPTX64:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00005418// NVPTX64:#define __FINITE_MATH_ONLY__ 0
5419// NVPTX64:#define __FLT_DENORM_MIN__ 1.40129846e-45F
5420// NVPTX64:#define __FLT_DIG__ 6
5421// NVPTX64:#define __FLT_EPSILON__ 1.19209290e-7F
5422// NVPTX64:#define __FLT_EVAL_METHOD__ 0
5423// NVPTX64:#define __FLT_HAS_DENORM__ 1
5424// NVPTX64:#define __FLT_HAS_INFINITY__ 1
5425// NVPTX64:#define __FLT_HAS_QUIET_NAN__ 1
5426// NVPTX64:#define __FLT_MANT_DIG__ 24
5427// NVPTX64:#define __FLT_MAX_10_EXP__ 38
5428// NVPTX64:#define __FLT_MAX_EXP__ 128
5429// NVPTX64:#define __FLT_MAX__ 3.40282347e+38F
5430// NVPTX64:#define __FLT_MIN_10_EXP__ (-37)
5431// NVPTX64:#define __FLT_MIN_EXP__ (-125)
5432// NVPTX64:#define __FLT_MIN__ 1.17549435e-38F
5433// NVPTX64:#define __FLT_RADIX__ 2
James Y Knightc97efa42016-02-11 16:51:29 +00005434// NVPTX64:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005435// NVPTX64:#define __INT16_FMTd__ "hd"
5436// NVPTX64:#define __INT16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00005437// NVPTX64:#define __INT16_MAX__ 32767
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00005438// NVPTX64:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +00005439// NVPTX64:#define __INT32_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005440// NVPTX64:#define __INT32_FMTd__ "d"
5441// NVPTX64:#define __INT32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00005442// NVPTX64:#define __INT32_MAX__ 2147483647
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00005443// NVPTX64:#define __INT32_TYPE__ int
5444// NVPTX64:#define __INT64_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005445// NVPTX64:#define __INT64_FMTd__ "lld"
5446// NVPTX64:#define __INT64_FMTi__ "lli"
James Y Knightc97efa42016-02-11 16:51:29 +00005447// NVPTX64:#define __INT64_MAX__ 9223372036854775807LL
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00005448// NVPTX64:#define __INT64_TYPE__ long long int
James Y Knightc97efa42016-02-11 16:51:29 +00005449// NVPTX64:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005450// NVPTX64:#define __INT8_FMTd__ "hhd"
5451// NVPTX64:#define __INT8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00005452// NVPTX64:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00005453// NVPTX64:#define __INT8_TYPE__ signed char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00005454// NVPTX64:#define __INTMAX_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005455// NVPTX64:#define __INTMAX_FMTd__ "lld"
5456// NVPTX64:#define __INTMAX_FMTi__ "lli"
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00005457// NVPTX64:#define __INTMAX_MAX__ 9223372036854775807LL
5458// NVPTX64:#define __INTMAX_TYPE__ long long int
5459// NVPTX64:#define __INTMAX_WIDTH__ 64
Eli Bendersky15f63422015-04-01 18:29:27 +00005460// NVPTX64:#define __INTPTR_FMTd__ "ld"
5461// NVPTX64:#define __INTPTR_FMTi__ "li"
5462// NVPTX64:#define __INTPTR_MAX__ 9223372036854775807L
5463// NVPTX64:#define __INTPTR_TYPE__ long int
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00005464// NVPTX64:#define __INTPTR_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005465// NVPTX64:#define __INT_FAST16_FMTd__ "hd"
5466// NVPTX64:#define __INT_FAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00005467// NVPTX64:#define __INT_FAST16_MAX__ 32767
5468// NVPTX64:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005469// NVPTX64:#define __INT_FAST32_FMTd__ "d"
5470// NVPTX64:#define __INT_FAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00005471// NVPTX64:#define __INT_FAST32_MAX__ 2147483647
5472// NVPTX64:#define __INT_FAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005473// NVPTX64:#define __INT_FAST64_FMTd__ "ld"
5474// NVPTX64:#define __INT_FAST64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00005475// NVPTX64:#define __INT_FAST64_MAX__ 9223372036854775807L
5476// NVPTX64:#define __INT_FAST64_TYPE__ long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005477// NVPTX64:#define __INT_FAST8_FMTd__ "hhd"
5478// NVPTX64:#define __INT_FAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00005479// NVPTX64:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00005480// NVPTX64:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005481// NVPTX64:#define __INT_LEAST16_FMTd__ "hd"
5482// NVPTX64:#define __INT_LEAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00005483// NVPTX64:#define __INT_LEAST16_MAX__ 32767
5484// NVPTX64:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005485// NVPTX64:#define __INT_LEAST32_FMTd__ "d"
5486// NVPTX64:#define __INT_LEAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00005487// NVPTX64:#define __INT_LEAST32_MAX__ 2147483647
5488// NVPTX64:#define __INT_LEAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005489// NVPTX64:#define __INT_LEAST64_FMTd__ "ld"
5490// NVPTX64:#define __INT_LEAST64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00005491// NVPTX64:#define __INT_LEAST64_MAX__ 9223372036854775807L
5492// NVPTX64:#define __INT_LEAST64_TYPE__ long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005493// NVPTX64:#define __INT_LEAST8_FMTd__ "hhd"
5494// NVPTX64:#define __INT_LEAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00005495// NVPTX64:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00005496// NVPTX64:#define __INT_LEAST8_TYPE__ signed char
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00005497// NVPTX64:#define __INT_MAX__ 2147483647
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00005498// NVPTX64:#define __LDBL_DENORM_MIN__ 4.9406564584124654e-324L
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00005499// NVPTX64:#define __LDBL_DIG__ 15
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00005500// NVPTX64:#define __LDBL_EPSILON__ 2.2204460492503131e-16L
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00005501// NVPTX64:#define __LDBL_HAS_DENORM__ 1
5502// NVPTX64:#define __LDBL_HAS_INFINITY__ 1
5503// NVPTX64:#define __LDBL_HAS_QUIET_NAN__ 1
5504// NVPTX64:#define __LDBL_MANT_DIG__ 53
5505// NVPTX64:#define __LDBL_MAX_10_EXP__ 308
5506// NVPTX64:#define __LDBL_MAX_EXP__ 1024
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00005507// NVPTX64:#define __LDBL_MAX__ 1.7976931348623157e+308L
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00005508// NVPTX64:#define __LDBL_MIN_10_EXP__ (-307)
5509// NVPTX64:#define __LDBL_MIN_EXP__ (-1021)
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00005510// NVPTX64:#define __LDBL_MIN__ 2.2250738585072014e-308L
Robert Lytton2c942c62014-03-10 12:06:29 +00005511// NVPTX64:#define __LITTLE_ENDIAN__ 1
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00005512// NVPTX64:#define __LONG_LONG_MAX__ 9223372036854775807LL
5513// NVPTX64:#define __LONG_MAX__ 9223372036854775807L
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00005514// NVPTX64:#define __LP64__ 1
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00005515// NVPTX64:#define __NVPTX__ 1
5516// NVPTX64:#define __POINTER_WIDTH__ 64
5517// NVPTX64:#define __PRAGMA_REDEFINE_EXTNAME 1
Eli Bendersky13467172015-04-01 20:29:18 +00005518// NVPTX64:#define __PTRDIFF_TYPE__ long int
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00005519// NVPTX64:#define __PTRDIFF_WIDTH__ 64
5520// NVPTX64:#define __PTX__ 1
5521// NVPTX64:#define __SCHAR_MAX__ 127
5522// NVPTX64:#define __SHRT_MAX__ 32767
Joerg Sonnenbergerb3a49692014-07-17 18:31:20 +00005523// NVPTX64:#define __SIG_ATOMIC_MAX__ 2147483647
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00005524// NVPTX64:#define __SIG_ATOMIC_WIDTH__ 32
5525// NVPTX64:#define __SIZEOF_DOUBLE__ 8
5526// NVPTX64:#define __SIZEOF_FLOAT__ 4
5527// NVPTX64:#define __SIZEOF_INT__ 4
5528// NVPTX64:#define __SIZEOF_LONG_DOUBLE__ 8
5529// NVPTX64:#define __SIZEOF_LONG_LONG__ 8
5530// NVPTX64:#define __SIZEOF_LONG__ 8
5531// NVPTX64:#define __SIZEOF_POINTER__ 8
5532// NVPTX64:#define __SIZEOF_PTRDIFF_T__ 8
5533// NVPTX64:#define __SIZEOF_SHORT__ 2
5534// NVPTX64:#define __SIZEOF_SIZE_T__ 8
5535// NVPTX64:#define __SIZEOF_WCHAR_T__ 4
5536// NVPTX64:#define __SIZEOF_WINT_T__ 4
Evgeniy Stepanovc3c725a2013-03-28 08:36:54 +00005537// NVPTX64:#define __SIZE_MAX__ 18446744073709551615UL
Eli Bendersky15f63422015-04-01 18:29:27 +00005538// NVPTX64:#define __SIZE_TYPE__ long unsigned int
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00005539// NVPTX64:#define __SIZE_WIDTH__ 64
Richard Smith59139022016-09-30 22:41:36 +00005540// NVPTX64-CXX:#define __STDCPP_DEFAULT_NEW_ALIGNMENT__ 8UL
James Y Knightc97efa42016-02-11 16:51:29 +00005541// NVPTX64:#define __UINT16_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00005542// NVPTX64:#define __UINT16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00005543// NVPTX64:#define __UINT16_TYPE__ unsigned short
5544// NVPTX64:#define __UINT32_C_SUFFIX__ U
5545// NVPTX64:#define __UINT32_MAX__ 4294967295U
5546// NVPTX64:#define __UINT32_TYPE__ unsigned int
Joerg Sonnenberger62277b32014-07-15 11:51:38 +00005547// NVPTX64:#define __UINT64_C_SUFFIX__ ULL
5548// NVPTX64:#define __UINT64_MAX__ 18446744073709551615ULL
5549// NVPTX64:#define __UINT64_TYPE__ long long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00005550// NVPTX64:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00005551// NVPTX64:#define __UINT8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00005552// NVPTX64:#define __UINT8_TYPE__ unsigned char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00005553// NVPTX64:#define __UINTMAX_C_SUFFIX__ ULL
JF Bastienab8d0a02014-06-25 01:31:33 +00005554// NVPTX64:#define __UINTMAX_MAX__ 18446744073709551615ULL
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00005555// NVPTX64:#define __UINTMAX_TYPE__ long long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00005556// NVPTX64:#define __UINTMAX_WIDTH__ 64
Eli Bendersky15f63422015-04-01 18:29:27 +00005557// NVPTX64:#define __UINTPTR_MAX__ 18446744073709551615UL
5558// NVPTX64:#define __UINTPTR_TYPE__ long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00005559// NVPTX64:#define __UINTPTR_WIDTH__ 64
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00005560// NVPTX64:#define __UINT_FAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00005561// NVPTX64:#define __UINT_FAST16_TYPE__ unsigned short
5562// NVPTX64:#define __UINT_FAST32_MAX__ 4294967295U
5563// NVPTX64:#define __UINT_FAST32_TYPE__ unsigned int
5564// NVPTX64:#define __UINT_FAST64_MAX__ 18446744073709551615UL
5565// NVPTX64:#define __UINT_FAST64_TYPE__ long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00005566// NVPTX64:#define __UINT_FAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00005567// NVPTX64:#define __UINT_FAST8_TYPE__ unsigned char
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00005568// NVPTX64:#define __UINT_LEAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00005569// NVPTX64:#define __UINT_LEAST16_TYPE__ unsigned short
5570// NVPTX64:#define __UINT_LEAST32_MAX__ 4294967295U
5571// NVPTX64:#define __UINT_LEAST32_TYPE__ unsigned int
5572// NVPTX64:#define __UINT_LEAST64_MAX__ 18446744073709551615UL
5573// NVPTX64:#define __UINT_LEAST64_TYPE__ long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00005574// NVPTX64:#define __UINT_LEAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00005575// NVPTX64:#define __UINT_LEAST8_TYPE__ unsigned char
James Y Knightb214cbc2016-03-04 19:00:41 +00005576// NVPTX64:#define __USER_LABEL_PREFIX__
Dylan Noblesmitheaea2a82012-07-27 16:37:53 +00005577// NVPTX64:#define __WCHAR_MAX__ 2147483647
5578// NVPTX64:#define __WCHAR_TYPE__ int
5579// NVPTX64:#define __WCHAR_WIDTH__ 32
5580// NVPTX64:#define __WINT_TYPE__ int
5581// NVPTX64:#define __WINT_WIDTH__ 32
5582//
James Y Knightc97efa42016-02-11 16:51:29 +00005583// 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 +00005584// 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 +00005585//
5586// PPC603E:#define _ARCH_603 1
5587// PPC603E:#define _ARCH_603E 1
5588// PPC603E:#define _ARCH_PPC 1
5589// PPC603E:#define _ARCH_PPCGR 1
5590// PPC603E:#define _BIG_ENDIAN 1
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00005591// PPC603E-NOT:#define _LP64
Eric Christopher153dad42017-03-25 02:55:21 +00005592// PPC603E:#define __BIGGEST_ALIGNMENT__ 16
Hal Finkel6b984f02012-07-03 16:51:04 +00005593// PPC603E:#define __BIG_ENDIAN__ 1
Dylan Noblesmith673728f2012-07-27 18:34:31 +00005594// PPC603E:#define __BYTE_ORDER__ __ORDER_BIG_ENDIAN__
Hal Finkel6b984f02012-07-03 16:51:04 +00005595// PPC603E:#define __CHAR16_TYPE__ unsigned short
5596// PPC603E:#define __CHAR32_TYPE__ unsigned int
5597// PPC603E:#define __CHAR_BIT__ 8
5598// PPC603E:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
5599// PPC603E:#define __DBL_DIG__ 15
5600// PPC603E:#define __DBL_EPSILON__ 2.2204460492503131e-16
5601// PPC603E:#define __DBL_HAS_DENORM__ 1
5602// PPC603E:#define __DBL_HAS_INFINITY__ 1
5603// PPC603E:#define __DBL_HAS_QUIET_NAN__ 1
5604// PPC603E:#define __DBL_MANT_DIG__ 53
5605// PPC603E:#define __DBL_MAX_10_EXP__ 308
5606// PPC603E:#define __DBL_MAX_EXP__ 1024
5607// PPC603E:#define __DBL_MAX__ 1.7976931348623157e+308
5608// PPC603E:#define __DBL_MIN_10_EXP__ (-307)
5609// PPC603E:#define __DBL_MIN_EXP__ (-1021)
5610// PPC603E:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00005611// PPC603E:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Hal Finkel6b984f02012-07-03 16:51:04 +00005612// PPC603E:#define __FLT_DENORM_MIN__ 1.40129846e-45F
5613// PPC603E:#define __FLT_DIG__ 6
5614// PPC603E:#define __FLT_EPSILON__ 1.19209290e-7F
5615// PPC603E:#define __FLT_EVAL_METHOD__ 0
5616// PPC603E:#define __FLT_HAS_DENORM__ 1
5617// PPC603E:#define __FLT_HAS_INFINITY__ 1
5618// PPC603E:#define __FLT_HAS_QUIET_NAN__ 1
5619// PPC603E:#define __FLT_MANT_DIG__ 24
5620// PPC603E:#define __FLT_MAX_10_EXP__ 38
5621// PPC603E:#define __FLT_MAX_EXP__ 128
5622// PPC603E:#define __FLT_MAX__ 3.40282347e+38F
5623// PPC603E:#define __FLT_MIN_10_EXP__ (-37)
5624// PPC603E:#define __FLT_MIN_EXP__ (-125)
5625// PPC603E:#define __FLT_MIN__ 1.17549435e-38F
5626// PPC603E:#define __FLT_RADIX__ 2
James Y Knightc97efa42016-02-11 16:51:29 +00005627// PPC603E:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005628// PPC603E:#define __INT16_FMTd__ "hd"
5629// PPC603E:#define __INT16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00005630// PPC603E:#define __INT16_MAX__ 32767
Hal Finkel6b984f02012-07-03 16:51:04 +00005631// PPC603E:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +00005632// PPC603E:#define __INT32_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005633// PPC603E:#define __INT32_FMTd__ "d"
5634// PPC603E:#define __INT32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00005635// PPC603E:#define __INT32_MAX__ 2147483647
Hal Finkel6b984f02012-07-03 16:51:04 +00005636// PPC603E:#define __INT32_TYPE__ int
5637// PPC603E:#define __INT64_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005638// PPC603E:#define __INT64_FMTd__ "lld"
5639// PPC603E:#define __INT64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00005640// PPC603E:#define __INT64_MAX__ 9223372036854775807LL
Hal Finkel6b984f02012-07-03 16:51:04 +00005641// PPC603E:#define __INT64_TYPE__ long long int
James Y Knightc97efa42016-02-11 16:51:29 +00005642// PPC603E:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005643// PPC603E:#define __INT8_FMTd__ "hhd"
5644// PPC603E:#define __INT8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00005645// PPC603E:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00005646// PPC603E:#define __INT8_TYPE__ signed char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00005647// PPC603E:#define __INTMAX_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005648// PPC603E:#define __INTMAX_FMTd__ "lld"
5649// PPC603E:#define __INTMAX_FMTi__ "lli"
Hal Finkel6b984f02012-07-03 16:51:04 +00005650// PPC603E:#define __INTMAX_MAX__ 9223372036854775807LL
5651// PPC603E:#define __INTMAX_TYPE__ long long int
5652// PPC603E:#define __INTMAX_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005653// PPC603E:#define __INTPTR_FMTd__ "ld"
5654// PPC603E:#define __INTPTR_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00005655// PPC603E:#define __INTPTR_MAX__ 2147483647L
Hal Finkel6b984f02012-07-03 16:51:04 +00005656// PPC603E:#define __INTPTR_TYPE__ long int
5657// PPC603E:#define __INTPTR_WIDTH__ 32
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005658// PPC603E:#define __INT_FAST16_FMTd__ "hd"
5659// PPC603E:#define __INT_FAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00005660// PPC603E:#define __INT_FAST16_MAX__ 32767
5661// PPC603E:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005662// PPC603E:#define __INT_FAST32_FMTd__ "d"
5663// PPC603E:#define __INT_FAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00005664// PPC603E:#define __INT_FAST32_MAX__ 2147483647
5665// PPC603E:#define __INT_FAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005666// PPC603E:#define __INT_FAST64_FMTd__ "lld"
5667// PPC603E:#define __INT_FAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00005668// PPC603E:#define __INT_FAST64_MAX__ 9223372036854775807LL
5669// PPC603E:#define __INT_FAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005670// PPC603E:#define __INT_FAST8_FMTd__ "hhd"
5671// PPC603E:#define __INT_FAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00005672// PPC603E:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00005673// PPC603E:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005674// PPC603E:#define __INT_LEAST16_FMTd__ "hd"
5675// PPC603E:#define __INT_LEAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00005676// PPC603E:#define __INT_LEAST16_MAX__ 32767
5677// PPC603E:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005678// PPC603E:#define __INT_LEAST32_FMTd__ "d"
5679// PPC603E:#define __INT_LEAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00005680// PPC603E:#define __INT_LEAST32_MAX__ 2147483647
5681// PPC603E:#define __INT_LEAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005682// PPC603E:#define __INT_LEAST64_FMTd__ "lld"
5683// PPC603E:#define __INT_LEAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00005684// PPC603E:#define __INT_LEAST64_MAX__ 9223372036854775807LL
5685// PPC603E:#define __INT_LEAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005686// PPC603E:#define __INT_LEAST8_FMTd__ "hhd"
5687// PPC603E:#define __INT_LEAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00005688// PPC603E:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00005689// PPC603E:#define __INT_LEAST8_TYPE__ signed char
Hal Finkel6b984f02012-07-03 16:51:04 +00005690// PPC603E:#define __INT_MAX__ 2147483647
5691// PPC603E:#define __LDBL_DENORM_MIN__ 4.94065645841246544176568792868221e-324L
5692// PPC603E:#define __LDBL_DIG__ 31
5693// PPC603E:#define __LDBL_EPSILON__ 4.94065645841246544176568792868221e-324L
5694// PPC603E:#define __LDBL_HAS_DENORM__ 1
5695// PPC603E:#define __LDBL_HAS_INFINITY__ 1
5696// PPC603E:#define __LDBL_HAS_QUIET_NAN__ 1
5697// PPC603E:#define __LDBL_MANT_DIG__ 106
5698// PPC603E:#define __LDBL_MAX_10_EXP__ 308
5699// PPC603E:#define __LDBL_MAX_EXP__ 1024
5700// PPC603E:#define __LDBL_MAX__ 1.79769313486231580793728971405301e+308L
5701// PPC603E:#define __LDBL_MIN_10_EXP__ (-291)
5702// PPC603E:#define __LDBL_MIN_EXP__ (-968)
5703// PPC603E:#define __LDBL_MIN__ 2.00416836000897277799610805135016e-292L
Eric Christopheree214102017-03-25 06:37:23 +00005704// PPC603E:#define __LONGDOUBLE128 1
Hal Finkel6b984f02012-07-03 16:51:04 +00005705// PPC603E:#define __LONG_DOUBLE_128__ 1
5706// PPC603E:#define __LONG_LONG_MAX__ 9223372036854775807LL
5707// PPC603E:#define __LONG_MAX__ 2147483647L
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00005708// PPC603E-NOT:#define __LP64__
Hal Finkel6b984f02012-07-03 16:51:04 +00005709// PPC603E:#define __NATURAL_ALIGNMENT__ 1
Hal Finkel6b984f02012-07-03 16:51:04 +00005710// PPC603E:#define __POINTER_WIDTH__ 32
5711// PPC603E:#define __POWERPC__ 1
Chandler Carruth6aa92ad2013-06-25 11:13:47 +00005712// PPC603E:#define __PPC__ 1
Hal Finkel6b984f02012-07-03 16:51:04 +00005713// PPC603E:#define __PTRDIFF_TYPE__ long int
5714// PPC603E:#define __PTRDIFF_WIDTH__ 32
5715// PPC603E:#define __REGISTER_PREFIX__
5716// PPC603E:#define __SCHAR_MAX__ 127
5717// PPC603E:#define __SHRT_MAX__ 32767
Joerg Sonnenbergerb3a49692014-07-17 18:31:20 +00005718// PPC603E:#define __SIG_ATOMIC_MAX__ 2147483647
Hal Finkel6b984f02012-07-03 16:51:04 +00005719// PPC603E:#define __SIG_ATOMIC_WIDTH__ 32
5720// PPC603E:#define __SIZEOF_DOUBLE__ 8
5721// PPC603E:#define __SIZEOF_FLOAT__ 4
5722// PPC603E:#define __SIZEOF_INT__ 4
5723// PPC603E:#define __SIZEOF_LONG_DOUBLE__ 16
5724// PPC603E:#define __SIZEOF_LONG_LONG__ 8
5725// PPC603E:#define __SIZEOF_LONG__ 4
5726// PPC603E:#define __SIZEOF_POINTER__ 4
5727// PPC603E:#define __SIZEOF_PTRDIFF_T__ 4
5728// PPC603E:#define __SIZEOF_SHORT__ 2
5729// PPC603E:#define __SIZEOF_SIZE_T__ 4
5730// PPC603E:#define __SIZEOF_WCHAR_T__ 4
5731// PPC603E:#define __SIZEOF_WINT_T__ 4
James Y Knightc97efa42016-02-11 16:51:29 +00005732// PPC603E:#define __SIZE_MAX__ 4294967295UL
Hal Finkel6b984f02012-07-03 16:51:04 +00005733// PPC603E:#define __SIZE_TYPE__ long unsigned int
5734// PPC603E:#define __SIZE_WIDTH__ 32
Richard Smith59139022016-09-30 22:41:36 +00005735// PPC603E-CXX:#define __STDCPP_DEFAULT_NEW_ALIGNMENT__ 16UL
James Y Knightc97efa42016-02-11 16:51:29 +00005736// PPC603E:#define __UINT16_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00005737// PPC603E:#define __UINT16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00005738// PPC603E:#define __UINT16_TYPE__ unsigned short
5739// PPC603E:#define __UINT32_C_SUFFIX__ U
5740// PPC603E:#define __UINT32_MAX__ 4294967295U
5741// PPC603E:#define __UINT32_TYPE__ unsigned int
5742// PPC603E:#define __UINT64_C_SUFFIX__ ULL
5743// PPC603E:#define __UINT64_MAX__ 18446744073709551615ULL
5744// PPC603E:#define __UINT64_TYPE__ long long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00005745// PPC603E:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00005746// PPC603E:#define __UINT8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00005747// PPC603E:#define __UINT8_TYPE__ unsigned char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00005748// PPC603E:#define __UINTMAX_C_SUFFIX__ ULL
JF Bastienab8d0a02014-06-25 01:31:33 +00005749// PPC603E:#define __UINTMAX_MAX__ 18446744073709551615ULL
Hal Finkel6b984f02012-07-03 16:51:04 +00005750// PPC603E:#define __UINTMAX_TYPE__ long long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00005751// PPC603E:#define __UINTMAX_WIDTH__ 64
James Y Knightc97efa42016-02-11 16:51:29 +00005752// PPC603E:#define __UINTPTR_MAX__ 4294967295UL
Joerg Sonnenberger3809a7a2014-07-14 20:40:56 +00005753// PPC603E:#define __UINTPTR_TYPE__ long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00005754// PPC603E:#define __UINTPTR_WIDTH__ 32
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00005755// PPC603E:#define __UINT_FAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00005756// PPC603E:#define __UINT_FAST16_TYPE__ unsigned short
5757// PPC603E:#define __UINT_FAST32_MAX__ 4294967295U
5758// PPC603E:#define __UINT_FAST32_TYPE__ unsigned int
5759// PPC603E:#define __UINT_FAST64_MAX__ 18446744073709551615ULL
5760// PPC603E:#define __UINT_FAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00005761// PPC603E:#define __UINT_FAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00005762// PPC603E:#define __UINT_FAST8_TYPE__ unsigned char
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00005763// PPC603E:#define __UINT_LEAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00005764// PPC603E:#define __UINT_LEAST16_TYPE__ unsigned short
5765// PPC603E:#define __UINT_LEAST32_MAX__ 4294967295U
5766// PPC603E:#define __UINT_LEAST32_TYPE__ unsigned int
5767// PPC603E:#define __UINT_LEAST64_MAX__ 18446744073709551615ULL
5768// PPC603E:#define __UINT_LEAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00005769// PPC603E:#define __UINT_LEAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00005770// PPC603E:#define __UINT_LEAST8_TYPE__ unsigned char
James Y Knightb214cbc2016-03-04 19:00:41 +00005771// PPC603E:#define __USER_LABEL_PREFIX__
Hal Finkel6b984f02012-07-03 16:51:04 +00005772// PPC603E:#define __WCHAR_MAX__ 2147483647
5773// PPC603E:#define __WCHAR_TYPE__ int
5774// PPC603E:#define __WCHAR_WIDTH__ 32
5775// PPC603E:#define __WINT_TYPE__ int
5776// PPC603E:#define __WINT_WIDTH__ 32
5777// PPC603E:#define __powerpc__ 1
5778// PPC603E:#define __ppc__ 1
5779//
James Y Knightc97efa42016-02-11 16:51:29 +00005780// 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 +00005781// 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 +00005782//
5783// PPC64:#define _ARCH_PPC 1
5784// PPC64:#define _ARCH_PPC64 1
Hal Finkel6b984f02012-07-03 16:51:04 +00005785// PPC64:#define _ARCH_PPCGR 1
5786// PPC64:#define _ARCH_PPCSQ 1
5787// PPC64:#define _ARCH_PWR4 1
5788// PPC64:#define _ARCH_PWR5 1
5789// PPC64:#define _ARCH_PWR6 1
Hal Finkel8eb59282012-06-11 22:35:19 +00005790// PPC64:#define _ARCH_PWR7 1
Chris Lattnere963d092009-10-29 04:55:36 +00005791// PPC64:#define _BIG_ENDIAN 1
5792// PPC64:#define _LP64 1
Eric Christopher153dad42017-03-25 02:55:21 +00005793// PPC64:#define __BIGGEST_ALIGNMENT__ 16
Chris Lattnere963d092009-10-29 04:55:36 +00005794// PPC64:#define __BIG_ENDIAN__ 1
Dylan Noblesmith673728f2012-07-27 18:34:31 +00005795// PPC64:#define __BYTE_ORDER__ __ORDER_BIG_ENDIAN__
Dan Gohman04f87202010-05-28 00:27:15 +00005796// PPC64:#define __CHAR16_TYPE__ unsigned short
5797// PPC64:#define __CHAR32_TYPE__ unsigned int
Chris Lattnere963d092009-10-29 04:55:36 +00005798// PPC64:#define __CHAR_BIT__ 8
5799// PPC64:#define __CHAR_UNSIGNED__ 1
5800// PPC64:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
5801// PPC64:#define __DBL_DIG__ 15
5802// PPC64:#define __DBL_EPSILON__ 2.2204460492503131e-16
5803// PPC64:#define __DBL_HAS_DENORM__ 1
5804// PPC64:#define __DBL_HAS_INFINITY__ 1
5805// PPC64:#define __DBL_HAS_QUIET_NAN__ 1
5806// PPC64:#define __DBL_MANT_DIG__ 53
5807// PPC64:#define __DBL_MAX_10_EXP__ 308
5808// PPC64:#define __DBL_MAX_EXP__ 1024
5809// PPC64:#define __DBL_MAX__ 1.7976931348623157e+308
5810// PPC64:#define __DBL_MIN_10_EXP__ (-307)
5811// PPC64:#define __DBL_MIN_EXP__ (-1021)
5812// PPC64:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00005813// PPC64:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Chris Lattnere963d092009-10-29 04:55:36 +00005814// PPC64:#define __FLT_DENORM_MIN__ 1.40129846e-45F
5815// PPC64:#define __FLT_DIG__ 6
5816// PPC64:#define __FLT_EPSILON__ 1.19209290e-7F
5817// PPC64:#define __FLT_EVAL_METHOD__ 0
5818// PPC64:#define __FLT_HAS_DENORM__ 1
5819// PPC64:#define __FLT_HAS_INFINITY__ 1
5820// PPC64:#define __FLT_HAS_QUIET_NAN__ 1
5821// PPC64:#define __FLT_MANT_DIG__ 24
5822// PPC64:#define __FLT_MAX_10_EXP__ 38
5823// PPC64:#define __FLT_MAX_EXP__ 128
5824// PPC64:#define __FLT_MAX__ 3.40282347e+38F
5825// PPC64:#define __FLT_MIN_10_EXP__ (-37)
5826// PPC64:#define __FLT_MIN_EXP__ (-125)
5827// PPC64:#define __FLT_MIN__ 1.17549435e-38F
5828// PPC64:#define __FLT_RADIX__ 2
Eric Christopher0d361162017-03-25 05:40:13 +00005829// PPC64:#define __HAVE_BSWAP__ 1
James Y Knightc97efa42016-02-11 16:51:29 +00005830// PPC64:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005831// PPC64:#define __INT16_FMTd__ "hd"
5832// PPC64:#define __INT16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00005833// PPC64:#define __INT16_MAX__ 32767
Chris Lattnere963d092009-10-29 04:55:36 +00005834// PPC64:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +00005835// PPC64:#define __INT32_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005836// PPC64:#define __INT32_FMTd__ "d"
5837// PPC64:#define __INT32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00005838// PPC64:#define __INT32_MAX__ 2147483647
Chris Lattnere963d092009-10-29 04:55:36 +00005839// PPC64:#define __INT32_TYPE__ int
Ken Dyck2dc8d5f2009-11-16 16:36:33 +00005840// PPC64:#define __INT64_C_SUFFIX__ L
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005841// PPC64:#define __INT64_FMTd__ "ld"
5842// PPC64:#define __INT64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00005843// PPC64:#define __INT64_MAX__ 9223372036854775807L
Chris Lattnere963d092009-10-29 04:55:36 +00005844// PPC64:#define __INT64_TYPE__ long int
James Y Knightc97efa42016-02-11 16:51:29 +00005845// PPC64:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005846// PPC64:#define __INT8_FMTd__ "hhd"
5847// PPC64:#define __INT8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00005848// PPC64:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00005849// PPC64:#define __INT8_TYPE__ signed char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00005850// PPC64:#define __INTMAX_C_SUFFIX__ L
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005851// PPC64:#define __INTMAX_FMTd__ "ld"
5852// PPC64:#define __INTMAX_FMTi__ "li"
Chris Lattnere963d092009-10-29 04:55:36 +00005853// PPC64:#define __INTMAX_MAX__ 9223372036854775807L
Ken Dyck9b25f782009-11-19 13:18:59 +00005854// PPC64:#define __INTMAX_TYPE__ long int
Ken Dyckc0c98292009-11-18 13:52:57 +00005855// PPC64:#define __INTMAX_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005856// PPC64:#define __INTPTR_FMTd__ "ld"
5857// PPC64:#define __INTPTR_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00005858// PPC64:#define __INTPTR_MAX__ 9223372036854775807L
Ken Dyck9b25f782009-11-19 13:18:59 +00005859// PPC64:#define __INTPTR_TYPE__ long int
Ken Dyck24cfcf12009-11-18 20:05:48 +00005860// PPC64:#define __INTPTR_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005861// PPC64:#define __INT_FAST16_FMTd__ "hd"
5862// PPC64:#define __INT_FAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00005863// PPC64:#define __INT_FAST16_MAX__ 32767
5864// PPC64:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005865// PPC64:#define __INT_FAST32_FMTd__ "d"
5866// PPC64:#define __INT_FAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00005867// PPC64:#define __INT_FAST32_MAX__ 2147483647
5868// PPC64:#define __INT_FAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005869// PPC64:#define __INT_FAST64_FMTd__ "ld"
5870// PPC64:#define __INT_FAST64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00005871// PPC64:#define __INT_FAST64_MAX__ 9223372036854775807L
5872// PPC64:#define __INT_FAST64_TYPE__ long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005873// PPC64:#define __INT_FAST8_FMTd__ "hhd"
5874// PPC64:#define __INT_FAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00005875// PPC64:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00005876// PPC64:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005877// PPC64:#define __INT_LEAST16_FMTd__ "hd"
5878// PPC64:#define __INT_LEAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00005879// PPC64:#define __INT_LEAST16_MAX__ 32767
5880// PPC64:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005881// PPC64:#define __INT_LEAST32_FMTd__ "d"
5882// PPC64:#define __INT_LEAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00005883// PPC64:#define __INT_LEAST32_MAX__ 2147483647
5884// PPC64:#define __INT_LEAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005885// PPC64:#define __INT_LEAST64_FMTd__ "ld"
5886// PPC64:#define __INT_LEAST64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00005887// PPC64:#define __INT_LEAST64_MAX__ 9223372036854775807L
5888// PPC64:#define __INT_LEAST64_TYPE__ long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00005889// PPC64:#define __INT_LEAST8_FMTd__ "hhd"
5890// PPC64:#define __INT_LEAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00005891// PPC64:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00005892// PPC64:#define __INT_LEAST8_TYPE__ signed char
Chris Lattnere963d092009-10-29 04:55:36 +00005893// PPC64:#define __INT_MAX__ 2147483647
Nico Weber3435ede2012-01-31 02:07:33 +00005894// PPC64:#define __LDBL_DENORM_MIN__ 4.94065645841246544176568792868221e-324L
5895// PPC64:#define __LDBL_DIG__ 31
5896// PPC64:#define __LDBL_EPSILON__ 4.94065645841246544176568792868221e-324L
Chris Lattnere963d092009-10-29 04:55:36 +00005897// PPC64:#define __LDBL_HAS_DENORM__ 1
5898// PPC64:#define __LDBL_HAS_INFINITY__ 1
5899// PPC64:#define __LDBL_HAS_QUIET_NAN__ 1
Nico Weber3435ede2012-01-31 02:07:33 +00005900// PPC64:#define __LDBL_MANT_DIG__ 106
Chris Lattnere963d092009-10-29 04:55:36 +00005901// PPC64:#define __LDBL_MAX_10_EXP__ 308
5902// PPC64:#define __LDBL_MAX_EXP__ 1024
Nico Weber3435ede2012-01-31 02:07:33 +00005903// PPC64:#define __LDBL_MAX__ 1.79769313486231580793728971405301e+308L
5904// PPC64:#define __LDBL_MIN_10_EXP__ (-291)
5905// PPC64:#define __LDBL_MIN_EXP__ (-968)
5906// PPC64:#define __LDBL_MIN__ 2.00416836000897277799610805135016e-292L
Eric Christopheree214102017-03-25 06:37:23 +00005907// PPC64:#define __LONGDOUBLE128 1
Chris Lattnere963d092009-10-29 04:55:36 +00005908// PPC64:#define __LONG_DOUBLE_128__ 1
5909// PPC64:#define __LONG_LONG_MAX__ 9223372036854775807LL
5910// PPC64:#define __LONG_MAX__ 9223372036854775807L
5911// PPC64:#define __LP64__ 1
5912// PPC64:#define __NATURAL_ALIGNMENT__ 1
Chris Lattnere963d092009-10-29 04:55:36 +00005913// PPC64:#define __POINTER_WIDTH__ 64
5914// PPC64:#define __POWERPC__ 1
Chandler Carruth6aa92ad2013-06-25 11:13:47 +00005915// PPC64:#define __PPC64__ 1
5916// PPC64:#define __PPC__ 1
Ken Dyck9b25f782009-11-19 13:18:59 +00005917// PPC64:#define __PTRDIFF_TYPE__ long int
Ken Dyck056efe02009-11-19 12:21:52 +00005918// PPC64:#define __PTRDIFF_WIDTH__ 64
James Y Knightc97efa42016-02-11 16:51:29 +00005919// PPC64:#define __REGISTER_PREFIX__
Chris Lattnere963d092009-10-29 04:55:36 +00005920// PPC64:#define __SCHAR_MAX__ 127
5921// PPC64:#define __SHRT_MAX__ 32767
Joerg Sonnenbergerb3a49692014-07-17 18:31:20 +00005922// PPC64:#define __SIG_ATOMIC_MAX__ 2147483647
Ken Dyckadc85112009-11-22 15:41:04 +00005923// PPC64:#define __SIG_ATOMIC_WIDTH__ 32
Dan Gohman04f87202010-05-28 00:27:15 +00005924// PPC64:#define __SIZEOF_DOUBLE__ 8
5925// PPC64:#define __SIZEOF_FLOAT__ 4
5926// PPC64:#define __SIZEOF_INT__ 4
Nico Weber3435ede2012-01-31 02:07:33 +00005927// PPC64:#define __SIZEOF_LONG_DOUBLE__ 16
Dan Gohman04f87202010-05-28 00:27:15 +00005928// PPC64:#define __SIZEOF_LONG_LONG__ 8
5929// PPC64:#define __SIZEOF_LONG__ 8
5930// PPC64:#define __SIZEOF_POINTER__ 8
5931// PPC64:#define __SIZEOF_PTRDIFF_T__ 8
5932// PPC64:#define __SIZEOF_SHORT__ 2
5933// PPC64:#define __SIZEOF_SIZE_T__ 8
5934// PPC64:#define __SIZEOF_WCHAR_T__ 4
5935// PPC64:#define __SIZEOF_WINT_T__ 4
Evgeniy Stepanovc3c725a2013-03-28 08:36:54 +00005936// PPC64:#define __SIZE_MAX__ 18446744073709551615UL
Chris Lattnere963d092009-10-29 04:55:36 +00005937// PPC64:#define __SIZE_TYPE__ long unsigned int
Ken Dyck57512862009-11-19 13:42:09 +00005938// PPC64:#define __SIZE_WIDTH__ 64
Richard Smith59139022016-09-30 22:41:36 +00005939// PPC64-CXX:#define __STDCPP_DEFAULT_NEW_ALIGNMENT__ 16UL
James Y Knightc97efa42016-02-11 16:51:29 +00005940// PPC64:#define __UINT16_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00005941// PPC64:#define __UINT16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00005942// PPC64:#define __UINT16_TYPE__ unsigned short
5943// PPC64:#define __UINT32_C_SUFFIX__ U
5944// PPC64:#define __UINT32_MAX__ 4294967295U
5945// PPC64:#define __UINT32_TYPE__ unsigned int
5946// PPC64:#define __UINT64_C_SUFFIX__ UL
5947// PPC64:#define __UINT64_MAX__ 18446744073709551615UL
5948// PPC64:#define __UINT64_TYPE__ long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00005949// PPC64:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00005950// PPC64:#define __UINT8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00005951// PPC64:#define __UINT8_TYPE__ unsigned char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00005952// PPC64:#define __UINTMAX_C_SUFFIX__ UL
JF Bastienab8d0a02014-06-25 01:31:33 +00005953// PPC64:#define __UINTMAX_MAX__ 18446744073709551615UL
Ken Dyck9b25f782009-11-19 13:18:59 +00005954// PPC64:#define __UINTMAX_TYPE__ long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00005955// PPC64:#define __UINTMAX_WIDTH__ 64
5956// PPC64:#define __UINTPTR_MAX__ 18446744073709551615UL
5957// PPC64:#define __UINTPTR_TYPE__ long unsigned int
5958// PPC64:#define __UINTPTR_WIDTH__ 64
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00005959// PPC64:#define __UINT_FAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00005960// PPC64:#define __UINT_FAST16_TYPE__ unsigned short
5961// PPC64:#define __UINT_FAST32_MAX__ 4294967295U
5962// PPC64:#define __UINT_FAST32_TYPE__ unsigned int
5963// PPC64:#define __UINT_FAST64_MAX__ 18446744073709551615UL
5964// PPC64:#define __UINT_FAST64_TYPE__ long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00005965// PPC64:#define __UINT_FAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00005966// PPC64:#define __UINT_FAST8_TYPE__ unsigned char
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00005967// PPC64:#define __UINT_LEAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00005968// PPC64:#define __UINT_LEAST16_TYPE__ unsigned short
5969// PPC64:#define __UINT_LEAST32_MAX__ 4294967295U
5970// PPC64:#define __UINT_LEAST32_TYPE__ unsigned int
5971// PPC64:#define __UINT_LEAST64_MAX__ 18446744073709551615UL
5972// PPC64:#define __UINT_LEAST64_TYPE__ long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00005973// PPC64:#define __UINT_LEAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00005974// PPC64:#define __UINT_LEAST8_TYPE__ unsigned char
James Y Knightb214cbc2016-03-04 19:00:41 +00005975// PPC64:#define __USER_LABEL_PREFIX__
Chris Lattnere963d092009-10-29 04:55:36 +00005976// PPC64:#define __WCHAR_MAX__ 2147483647
5977// PPC64:#define __WCHAR_TYPE__ int
Ken Dyck0138b9e2009-11-19 15:47:58 +00005978// PPC64:#define __WCHAR_WIDTH__ 32
Chris Lattnere963d092009-10-29 04:55:36 +00005979// PPC64:#define __WINT_TYPE__ int
Ken Dycka1f677c2009-11-19 14:16:57 +00005980// PPC64:#define __WINT_WIDTH__ 32
Chris Lattnere963d092009-10-29 04:55:36 +00005981// PPC64:#define __ppc64__ 1
5982// PPC64:#define __ppc__ 1
5983//
James Y Knightc97efa42016-02-11 16:51:29 +00005984// 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 +00005985//
5986// PPC64LE:#define _ARCH_PPC 1
5987// PPC64LE:#define _ARCH_PPC64 1
5988// PPC64LE:#define _ARCH_PPCGR 1
5989// PPC64LE:#define _ARCH_PPCSQ 1
5990// PPC64LE:#define _ARCH_PWR4 1
5991// PPC64LE:#define _ARCH_PWR5 1
5992// PPC64LE:#define _ARCH_PWR5X 1
5993// PPC64LE:#define _ARCH_PWR6 1
5994// PPC64LE:#define _ARCH_PWR6X 1
5995// PPC64LE:#define _ARCH_PWR7 1
Will Schmidt5fa50f3c2014-03-24 21:09:16 +00005996// PPC64LE:#define _CALL_ELF 2
Bill Schmidt778d3872013-07-26 01:36:11 +00005997// PPC64LE:#define _LITTLE_ENDIAN 1
5998// PPC64LE:#define _LP64 1
Eric Christopher153dad42017-03-25 02:55:21 +00005999// PPC64LE:#define __BIGGEST_ALIGNMENT__ 16
Bill Schmidt778d3872013-07-26 01:36:11 +00006000// PPC64LE:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
6001// PPC64LE:#define __CHAR16_TYPE__ unsigned short
6002// PPC64LE:#define __CHAR32_TYPE__ unsigned int
6003// PPC64LE:#define __CHAR_BIT__ 8
6004// PPC64LE:#define __CHAR_UNSIGNED__ 1
6005// PPC64LE:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
6006// PPC64LE:#define __DBL_DIG__ 15
6007// PPC64LE:#define __DBL_EPSILON__ 2.2204460492503131e-16
6008// PPC64LE:#define __DBL_HAS_DENORM__ 1
6009// PPC64LE:#define __DBL_HAS_INFINITY__ 1
6010// PPC64LE:#define __DBL_HAS_QUIET_NAN__ 1
6011// PPC64LE:#define __DBL_MANT_DIG__ 53
6012// PPC64LE:#define __DBL_MAX_10_EXP__ 308
6013// PPC64LE:#define __DBL_MAX_EXP__ 1024
6014// PPC64LE:#define __DBL_MAX__ 1.7976931348623157e+308
6015// PPC64LE:#define __DBL_MIN_10_EXP__ (-307)
6016// PPC64LE:#define __DBL_MIN_EXP__ (-1021)
6017// PPC64LE:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00006018// PPC64LE:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Bill Schmidt778d3872013-07-26 01:36:11 +00006019// PPC64LE:#define __FLT_DENORM_MIN__ 1.40129846e-45F
6020// PPC64LE:#define __FLT_DIG__ 6
6021// PPC64LE:#define __FLT_EPSILON__ 1.19209290e-7F
6022// PPC64LE:#define __FLT_EVAL_METHOD__ 0
6023// PPC64LE:#define __FLT_HAS_DENORM__ 1
6024// PPC64LE:#define __FLT_HAS_INFINITY__ 1
6025// PPC64LE:#define __FLT_HAS_QUIET_NAN__ 1
6026// PPC64LE:#define __FLT_MANT_DIG__ 24
6027// PPC64LE:#define __FLT_MAX_10_EXP__ 38
6028// PPC64LE:#define __FLT_MAX_EXP__ 128
6029// PPC64LE:#define __FLT_MAX__ 3.40282347e+38F
6030// PPC64LE:#define __FLT_MIN_10_EXP__ (-37)
6031// PPC64LE:#define __FLT_MIN_EXP__ (-125)
6032// PPC64LE:#define __FLT_MIN__ 1.17549435e-38F
6033// PPC64LE:#define __FLT_RADIX__ 2
Eric Christopher0d361162017-03-25 05:40:13 +00006034// PPC64LE:#define __HAVE_BSWAP__ 1
James Y Knightc97efa42016-02-11 16:51:29 +00006035// PPC64LE:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006036// PPC64LE:#define __INT16_FMTd__ "hd"
6037// PPC64LE:#define __INT16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00006038// PPC64LE:#define __INT16_MAX__ 32767
Bill Schmidt778d3872013-07-26 01:36:11 +00006039// PPC64LE:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +00006040// PPC64LE:#define __INT32_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006041// PPC64LE:#define __INT32_FMTd__ "d"
6042// PPC64LE:#define __INT32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00006043// PPC64LE:#define __INT32_MAX__ 2147483647
Bill Schmidt778d3872013-07-26 01:36:11 +00006044// PPC64LE:#define __INT32_TYPE__ int
6045// PPC64LE:#define __INT64_C_SUFFIX__ L
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006046// PPC64LE:#define __INT64_FMTd__ "ld"
6047// PPC64LE:#define __INT64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00006048// PPC64LE:#define __INT64_MAX__ 9223372036854775807L
Bill Schmidt778d3872013-07-26 01:36:11 +00006049// PPC64LE:#define __INT64_TYPE__ long int
James Y Knightc97efa42016-02-11 16:51:29 +00006050// PPC64LE:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006051// PPC64LE:#define __INT8_FMTd__ "hhd"
6052// PPC64LE:#define __INT8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00006053// PPC64LE:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00006054// PPC64LE:#define __INT8_TYPE__ signed char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00006055// PPC64LE:#define __INTMAX_C_SUFFIX__ L
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006056// PPC64LE:#define __INTMAX_FMTd__ "ld"
6057// PPC64LE:#define __INTMAX_FMTi__ "li"
Bill Schmidt778d3872013-07-26 01:36:11 +00006058// PPC64LE:#define __INTMAX_MAX__ 9223372036854775807L
6059// PPC64LE:#define __INTMAX_TYPE__ long int
6060// PPC64LE:#define __INTMAX_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006061// PPC64LE:#define __INTPTR_FMTd__ "ld"
6062// PPC64LE:#define __INTPTR_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00006063// PPC64LE:#define __INTPTR_MAX__ 9223372036854775807L
Bill Schmidt778d3872013-07-26 01:36:11 +00006064// PPC64LE:#define __INTPTR_TYPE__ long int
6065// PPC64LE:#define __INTPTR_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006066// PPC64LE:#define __INT_FAST16_FMTd__ "hd"
6067// PPC64LE:#define __INT_FAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00006068// PPC64LE:#define __INT_FAST16_MAX__ 32767
6069// PPC64LE:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006070// PPC64LE:#define __INT_FAST32_FMTd__ "d"
6071// PPC64LE:#define __INT_FAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00006072// PPC64LE:#define __INT_FAST32_MAX__ 2147483647
6073// PPC64LE:#define __INT_FAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006074// PPC64LE:#define __INT_FAST64_FMTd__ "ld"
6075// PPC64LE:#define __INT_FAST64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00006076// PPC64LE:#define __INT_FAST64_MAX__ 9223372036854775807L
6077// PPC64LE:#define __INT_FAST64_TYPE__ long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006078// PPC64LE:#define __INT_FAST8_FMTd__ "hhd"
6079// PPC64LE:#define __INT_FAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00006080// PPC64LE:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00006081// PPC64LE:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006082// PPC64LE:#define __INT_LEAST16_FMTd__ "hd"
6083// PPC64LE:#define __INT_LEAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00006084// PPC64LE:#define __INT_LEAST16_MAX__ 32767
6085// PPC64LE:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006086// PPC64LE:#define __INT_LEAST32_FMTd__ "d"
6087// PPC64LE:#define __INT_LEAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00006088// PPC64LE:#define __INT_LEAST32_MAX__ 2147483647
6089// PPC64LE:#define __INT_LEAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006090// PPC64LE:#define __INT_LEAST64_FMTd__ "ld"
6091// PPC64LE:#define __INT_LEAST64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00006092// PPC64LE:#define __INT_LEAST64_MAX__ 9223372036854775807L
6093// PPC64LE:#define __INT_LEAST64_TYPE__ long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006094// PPC64LE:#define __INT_LEAST8_FMTd__ "hhd"
6095// PPC64LE:#define __INT_LEAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00006096// PPC64LE:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00006097// PPC64LE:#define __INT_LEAST8_TYPE__ signed char
Bill Schmidt778d3872013-07-26 01:36:11 +00006098// PPC64LE:#define __INT_MAX__ 2147483647
6099// PPC64LE:#define __LDBL_DENORM_MIN__ 4.94065645841246544176568792868221e-324L
6100// PPC64LE:#define __LDBL_DIG__ 31
6101// PPC64LE:#define __LDBL_EPSILON__ 4.94065645841246544176568792868221e-324L
6102// PPC64LE:#define __LDBL_HAS_DENORM__ 1
6103// PPC64LE:#define __LDBL_HAS_INFINITY__ 1
6104// PPC64LE:#define __LDBL_HAS_QUIET_NAN__ 1
6105// PPC64LE:#define __LDBL_MANT_DIG__ 106
6106// PPC64LE:#define __LDBL_MAX_10_EXP__ 308
6107// PPC64LE:#define __LDBL_MAX_EXP__ 1024
6108// PPC64LE:#define __LDBL_MAX__ 1.79769313486231580793728971405301e+308L
6109// PPC64LE:#define __LDBL_MIN_10_EXP__ (-291)
6110// PPC64LE:#define __LDBL_MIN_EXP__ (-968)
6111// PPC64LE:#define __LDBL_MIN__ 2.00416836000897277799610805135016e-292L
6112// PPC64LE:#define __LITTLE_ENDIAN__ 1
Eric Christopheree214102017-03-25 06:37:23 +00006113// PPC64LE:#define __LONGDOUBLE128 1
Bill Schmidt778d3872013-07-26 01:36:11 +00006114// PPC64LE:#define __LONG_DOUBLE_128__ 1
6115// PPC64LE:#define __LONG_LONG_MAX__ 9223372036854775807LL
6116// PPC64LE:#define __LONG_MAX__ 9223372036854775807L
6117// PPC64LE:#define __LP64__ 1
6118// PPC64LE:#define __NATURAL_ALIGNMENT__ 1
6119// PPC64LE:#define __POINTER_WIDTH__ 64
6120// PPC64LE:#define __POWERPC__ 1
6121// PPC64LE:#define __PPC64__ 1
6122// PPC64LE:#define __PPC__ 1
6123// PPC64LE:#define __PTRDIFF_TYPE__ long int
6124// PPC64LE:#define __PTRDIFF_WIDTH__ 64
James Y Knightc97efa42016-02-11 16:51:29 +00006125// PPC64LE:#define __REGISTER_PREFIX__
Bill Schmidt778d3872013-07-26 01:36:11 +00006126// PPC64LE:#define __SCHAR_MAX__ 127
6127// PPC64LE:#define __SHRT_MAX__ 32767
Joerg Sonnenbergerb3a49692014-07-17 18:31:20 +00006128// PPC64LE:#define __SIG_ATOMIC_MAX__ 2147483647
Bill Schmidt778d3872013-07-26 01:36:11 +00006129// PPC64LE:#define __SIG_ATOMIC_WIDTH__ 32
6130// PPC64LE:#define __SIZEOF_DOUBLE__ 8
6131// PPC64LE:#define __SIZEOF_FLOAT__ 4
6132// PPC64LE:#define __SIZEOF_INT__ 4
6133// PPC64LE:#define __SIZEOF_LONG_DOUBLE__ 16
6134// PPC64LE:#define __SIZEOF_LONG_LONG__ 8
6135// PPC64LE:#define __SIZEOF_LONG__ 8
6136// PPC64LE:#define __SIZEOF_POINTER__ 8
6137// PPC64LE:#define __SIZEOF_PTRDIFF_T__ 8
6138// PPC64LE:#define __SIZEOF_SHORT__ 2
6139// PPC64LE:#define __SIZEOF_SIZE_T__ 8
6140// PPC64LE:#define __SIZEOF_WCHAR_T__ 4
6141// PPC64LE:#define __SIZEOF_WINT_T__ 4
6142// PPC64LE:#define __SIZE_MAX__ 18446744073709551615UL
6143// PPC64LE:#define __SIZE_TYPE__ long unsigned int
6144// PPC64LE:#define __SIZE_WIDTH__ 64
Eric Christopher32ac5e42017-02-15 07:50:11 +00006145// PPC64LE:#define __STRUCT_PARM_ALIGN__ 16
James Y Knightc97efa42016-02-11 16:51:29 +00006146// PPC64LE:#define __UINT16_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00006147// PPC64LE:#define __UINT16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00006148// PPC64LE:#define __UINT16_TYPE__ unsigned short
6149// PPC64LE:#define __UINT32_C_SUFFIX__ U
6150// PPC64LE:#define __UINT32_MAX__ 4294967295U
6151// PPC64LE:#define __UINT32_TYPE__ unsigned int
6152// PPC64LE:#define __UINT64_C_SUFFIX__ UL
6153// PPC64LE:#define __UINT64_MAX__ 18446744073709551615UL
6154// PPC64LE:#define __UINT64_TYPE__ long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00006155// PPC64LE:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00006156// PPC64LE:#define __UINT8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00006157// PPC64LE:#define __UINT8_TYPE__ unsigned char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00006158// PPC64LE:#define __UINTMAX_C_SUFFIX__ UL
JF Bastienab8d0a02014-06-25 01:31:33 +00006159// PPC64LE:#define __UINTMAX_MAX__ 18446744073709551615UL
Bill Schmidt778d3872013-07-26 01:36:11 +00006160// PPC64LE:#define __UINTMAX_TYPE__ long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00006161// PPC64LE:#define __UINTMAX_WIDTH__ 64
6162// PPC64LE:#define __UINTPTR_MAX__ 18446744073709551615UL
6163// PPC64LE:#define __UINTPTR_TYPE__ long unsigned int
6164// PPC64LE:#define __UINTPTR_WIDTH__ 64
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00006165// PPC64LE:#define __UINT_FAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00006166// PPC64LE:#define __UINT_FAST16_TYPE__ unsigned short
6167// PPC64LE:#define __UINT_FAST32_MAX__ 4294967295U
6168// PPC64LE:#define __UINT_FAST32_TYPE__ unsigned int
6169// PPC64LE:#define __UINT_FAST64_MAX__ 18446744073709551615UL
6170// PPC64LE:#define __UINT_FAST64_TYPE__ long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00006171// PPC64LE:#define __UINT_FAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00006172// PPC64LE:#define __UINT_FAST8_TYPE__ unsigned char
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00006173// PPC64LE:#define __UINT_LEAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00006174// PPC64LE:#define __UINT_LEAST16_TYPE__ unsigned short
6175// PPC64LE:#define __UINT_LEAST32_MAX__ 4294967295U
6176// PPC64LE:#define __UINT_LEAST32_TYPE__ unsigned int
6177// PPC64LE:#define __UINT_LEAST64_MAX__ 18446744073709551615UL
6178// PPC64LE:#define __UINT_LEAST64_TYPE__ long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00006179// PPC64LE:#define __UINT_LEAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00006180// PPC64LE:#define __UINT_LEAST8_TYPE__ unsigned char
James Y Knightb214cbc2016-03-04 19:00:41 +00006181// PPC64LE:#define __USER_LABEL_PREFIX__
Bill Schmidt778d3872013-07-26 01:36:11 +00006182// PPC64LE:#define __WCHAR_MAX__ 2147483647
6183// PPC64LE:#define __WCHAR_TYPE__ int
6184// PPC64LE:#define __WCHAR_WIDTH__ 32
6185// PPC64LE:#define __WINT_TYPE__ int
6186// PPC64LE:#define __WINT_WIDTH__ 32
6187// PPC64LE:#define __ppc64__ 1
6188// PPC64LE:#define __ppc__ 1
6189//
James Y Knightc97efa42016-02-11 16:51:29 +00006190// 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 +00006191//
6192// PPCA2Q:#define _ARCH_A2 1
6193// PPCA2Q:#define _ARCH_A2Q 1
6194// PPCA2Q:#define _ARCH_PPC 1
6195// PPCA2Q:#define _ARCH_PPC64 1
6196// PPCA2Q:#define _ARCH_QP 1
6197//
James Y Knightc97efa42016-02-11 16:51:29 +00006198// 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 +00006199//
6200// PPCBGQ:#define __THW_BLUEGENE__ 1
6201// PPCBGQ:#define __TOS_BGQ__ 1
6202// PPCBGQ:#define __bg__ 1
6203// PPCBGQ:#define __bgq__ 1
6204//
James Y Knightc97efa42016-02-11 16:51:29 +00006205// 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 +00006206//
6207// PPC630:#define _ARCH_630 1
6208// PPC630:#define _ARCH_PPC 1
6209// PPC630:#define _ARCH_PPC64 1
6210// PPC630:#define _ARCH_PPCGR 1
6211//
James Y Knightc97efa42016-02-11 16:51:29 +00006212// 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 +00006213//
6214// PPCPWR3:#define _ARCH_PPC 1
6215// PPCPWR3:#define _ARCH_PPC64 1
6216// PPCPWR3:#define _ARCH_PPCGR 1
6217//
James Y Knightc97efa42016-02-11 16:51:29 +00006218// 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 +00006219//
6220// PPCPOWER3:#define _ARCH_PPC 1
6221// PPCPOWER3:#define _ARCH_PPC64 1
6222// PPCPOWER3:#define _ARCH_PPCGR 1
6223//
James Y Knightc97efa42016-02-11 16:51:29 +00006224// 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 +00006225//
6226// PPCPWR4:#define _ARCH_PPC 1
6227// PPCPWR4:#define _ARCH_PPC64 1
6228// PPCPWR4:#define _ARCH_PPCGR 1
6229// PPCPWR4:#define _ARCH_PPCSQ 1
6230// PPCPWR4:#define _ARCH_PWR4 1
6231//
James Y Knightc97efa42016-02-11 16:51:29 +00006232// 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 +00006233//
6234// PPCPOWER4:#define _ARCH_PPC 1
6235// PPCPOWER4:#define _ARCH_PPC64 1
6236// PPCPOWER4:#define _ARCH_PPCGR 1
6237// PPCPOWER4:#define _ARCH_PPCSQ 1
6238// PPCPOWER4:#define _ARCH_PWR4 1
6239//
James Y Knightc97efa42016-02-11 16:51:29 +00006240// 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 +00006241//
6242// PPCPWR5:#define _ARCH_PPC 1
6243// PPCPWR5:#define _ARCH_PPC64 1
6244// PPCPWR5:#define _ARCH_PPCGR 1
6245// PPCPWR5:#define _ARCH_PPCSQ 1
6246// PPCPWR5:#define _ARCH_PWR4 1
6247// PPCPWR5:#define _ARCH_PWR5 1
6248//
James Y Knightc97efa42016-02-11 16:51:29 +00006249// 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 +00006250//
6251// PPCPOWER5:#define _ARCH_PPC 1
6252// PPCPOWER5:#define _ARCH_PPC64 1
6253// PPCPOWER5:#define _ARCH_PPCGR 1
6254// PPCPOWER5:#define _ARCH_PPCSQ 1
6255// PPCPOWER5:#define _ARCH_PWR4 1
6256// PPCPOWER5:#define _ARCH_PWR5 1
6257//
James Y Knightc97efa42016-02-11 16:51:29 +00006258// 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 +00006259//
6260// PPCPWR5X:#define _ARCH_PPC 1
6261// PPCPWR5X:#define _ARCH_PPC64 1
6262// PPCPWR5X:#define _ARCH_PPCGR 1
6263// PPCPWR5X:#define _ARCH_PPCSQ 1
6264// PPCPWR5X:#define _ARCH_PWR4 1
6265// PPCPWR5X:#define _ARCH_PWR5 1
6266// PPCPWR5X:#define _ARCH_PWR5X 1
6267//
James Y Knightc97efa42016-02-11 16:51:29 +00006268// 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 +00006269//
6270// PPCPOWER5X:#define _ARCH_PPC 1
6271// PPCPOWER5X:#define _ARCH_PPC64 1
6272// PPCPOWER5X:#define _ARCH_PPCGR 1
6273// PPCPOWER5X:#define _ARCH_PPCSQ 1
6274// PPCPOWER5X:#define _ARCH_PWR4 1
6275// PPCPOWER5X:#define _ARCH_PWR5 1
6276// PPCPOWER5X:#define _ARCH_PWR5X 1
6277//
James Y Knightc97efa42016-02-11 16:51:29 +00006278// 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 +00006279//
6280// PPCPWR6:#define _ARCH_PPC 1
6281// PPCPWR6:#define _ARCH_PPC64 1
6282// PPCPWR6:#define _ARCH_PPCGR 1
6283// PPCPWR6:#define _ARCH_PPCSQ 1
6284// PPCPWR6:#define _ARCH_PWR4 1
6285// PPCPWR6:#define _ARCH_PWR5 1
6286// PPCPWR6:#define _ARCH_PWR5X 1
6287// PPCPWR6:#define _ARCH_PWR6 1
6288//
James Y Knightc97efa42016-02-11 16:51:29 +00006289// 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 +00006290//
6291// PPCPOWER6:#define _ARCH_PPC 1
6292// PPCPOWER6:#define _ARCH_PPC64 1
6293// PPCPOWER6:#define _ARCH_PPCGR 1
6294// PPCPOWER6:#define _ARCH_PPCSQ 1
6295// PPCPOWER6:#define _ARCH_PWR4 1
6296// PPCPOWER6:#define _ARCH_PWR5 1
6297// PPCPOWER6:#define _ARCH_PWR5X 1
6298// PPCPOWER6:#define _ARCH_PWR6 1
6299//
James Y Knightc97efa42016-02-11 16:51:29 +00006300// 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 +00006301//
6302// PPCPWR6X:#define _ARCH_PPC 1
6303// PPCPWR6X:#define _ARCH_PPC64 1
6304// PPCPWR6X:#define _ARCH_PPCGR 1
6305// PPCPWR6X:#define _ARCH_PPCSQ 1
6306// PPCPWR6X:#define _ARCH_PWR4 1
6307// PPCPWR6X:#define _ARCH_PWR5 1
6308// PPCPWR6X:#define _ARCH_PWR5X 1
6309// PPCPWR6X:#define _ARCH_PWR6 1
6310// PPCPWR6X:#define _ARCH_PWR6X 1
6311//
James Y Knightc97efa42016-02-11 16:51:29 +00006312// 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 +00006313//
6314// PPCPOWER6X:#define _ARCH_PPC 1
6315// PPCPOWER6X:#define _ARCH_PPC64 1
6316// PPCPOWER6X:#define _ARCH_PPCGR 1
6317// PPCPOWER6X:#define _ARCH_PPCSQ 1
6318// PPCPOWER6X:#define _ARCH_PWR4 1
6319// PPCPOWER6X:#define _ARCH_PWR5 1
6320// PPCPOWER6X:#define _ARCH_PWR5X 1
6321// PPCPOWER6X:#define _ARCH_PWR6 1
6322// PPCPOWER6X:#define _ARCH_PWR6X 1
6323//
James Y Knightc97efa42016-02-11 16:51:29 +00006324// 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 +00006325//
6326// PPCPWR7:#define _ARCH_PPC 1
6327// PPCPWR7:#define _ARCH_PPC64 1
6328// PPCPWR7:#define _ARCH_PPCGR 1
6329// PPCPWR7:#define _ARCH_PPCSQ 1
6330// PPCPWR7:#define _ARCH_PWR4 1
6331// PPCPWR7:#define _ARCH_PWR5 1
6332// PPCPWR7:#define _ARCH_PWR5X 1
6333// PPCPWR7:#define _ARCH_PWR6 1
6334// PPCPWR7:#define _ARCH_PWR6X 1
6335// PPCPWR7:#define _ARCH_PWR7 1
6336//
James Y Knightc97efa42016-02-11 16:51:29 +00006337// 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 +00006338//
6339// PPCPOWER7:#define _ARCH_PPC 1
6340// PPCPOWER7:#define _ARCH_PPC64 1
6341// PPCPOWER7:#define _ARCH_PPCGR 1
6342// PPCPOWER7:#define _ARCH_PPCSQ 1
6343// PPCPOWER7:#define _ARCH_PWR4 1
6344// PPCPOWER7:#define _ARCH_PWR5 1
6345// PPCPOWER7:#define _ARCH_PWR5X 1
6346// PPCPOWER7:#define _ARCH_PWR6 1
6347// PPCPOWER7:#define _ARCH_PWR6X 1
6348// PPCPOWER7:#define _ARCH_PWR7 1
6349//
James Y Knightc97efa42016-02-11 16:51:29 +00006350// 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 +00006351//
6352// PPCPWR8:#define _ARCH_PPC 1
6353// PPCPWR8:#define _ARCH_PPC64 1
6354// PPCPWR8:#define _ARCH_PPCGR 1
6355// PPCPWR8:#define _ARCH_PPCSQ 1
6356// PPCPWR8:#define _ARCH_PWR4 1
6357// PPCPWR8:#define _ARCH_PWR5 1
6358// PPCPWR8:#define _ARCH_PWR5X 1
6359// PPCPWR8:#define _ARCH_PWR6 1
6360// PPCPWR8:#define _ARCH_PWR6X 1
6361// PPCPWR8:#define _ARCH_PWR7 1
6362// PPCPWR8:#define _ARCH_PWR8 1
6363//
James Y Knightc97efa42016-02-11 16:51:29 +00006364// 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 +00006365//
Eric Christopherb70819e2017-03-25 02:29:18 +00006366// ppc64le also defaults to power8.
6367// 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
6368//
Will Schmidtf0487512014-06-26 13:34:10 +00006369// PPCPOWER8:#define _ARCH_PPC 1
6370// PPCPOWER8:#define _ARCH_PPC64 1
6371// PPCPOWER8:#define _ARCH_PPCGR 1
6372// PPCPOWER8:#define _ARCH_PPCSQ 1
6373// PPCPOWER8:#define _ARCH_PWR4 1
6374// PPCPOWER8:#define _ARCH_PWR5 1
6375// PPCPOWER8:#define _ARCH_PWR5X 1
6376// PPCPOWER8:#define _ARCH_PWR6 1
6377// PPCPOWER8:#define _ARCH_PWR6X 1
6378// PPCPOWER8:#define _ARCH_PWR7 1
6379// PPCPOWER8:#define _ARCH_PWR8 1
6380//
Nemanja Ivanovicd99f21b2016-05-09 18:58:02 +00006381// 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
6382//
6383// PPCPWR9:#define _ARCH_PPC 1
6384// PPCPWR9:#define _ARCH_PPC64 1
6385// PPCPWR9:#define _ARCH_PPCGR 1
6386// PPCPWR9:#define _ARCH_PPCSQ 1
6387// PPCPWR9:#define _ARCH_PWR4 1
6388// PPCPWR9:#define _ARCH_PWR5 1
6389// PPCPWR9:#define _ARCH_PWR5X 1
6390// PPCPWR9:#define _ARCH_PWR6 1
6391// PPCPWR9:#define _ARCH_PWR6X 1
6392// PPCPWR9:#define _ARCH_PWR7 1
6393// PPCPWR9:#define _ARCH_PWR9 1
6394//
6395// 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
6396//
6397// PPCPOWER9:#define _ARCH_PPC 1
6398// PPCPOWER9:#define _ARCH_PPC64 1
6399// PPCPOWER9:#define _ARCH_PPCGR 1
6400// PPCPOWER9:#define _ARCH_PPCSQ 1
6401// PPCPOWER9:#define _ARCH_PWR4 1
6402// PPCPOWER9:#define _ARCH_PWR5 1
6403// PPCPOWER9:#define _ARCH_PWR5X 1
6404// PPCPOWER9:#define _ARCH_PWR6 1
6405// PPCPOWER9:#define _ARCH_PWR6X 1
6406// PPCPOWER9:#define _ARCH_PWR7 1
6407// PPCPOWER9:#define _ARCH_PWR9 1
6408//
Stefan Pintiliea6ce3fe2018-06-13 16:05:05 +00006409// RUN: %clang_cc1 -E -dM -ffreestanding -triple=powerpc64-none-none -target-feature +float128 -target-cpu power9 -fno-signed-char < /dev/null | FileCheck -check-prefix PPC-FLOAT128 %s
Nemanja Ivanovicbb1ea2d2016-05-09 08:52:33 +00006410// PPC-FLOAT128:#define __FLOAT128__ 1
6411//
James Y Knightc97efa42016-02-11 16:51:29 +00006412// 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 +00006413//
6414// PPC64-LINUX:#define _ARCH_PPC 1
6415// PPC64-LINUX:#define _ARCH_PPC64 1
6416// PPC64-LINUX:#define _BIG_ENDIAN 1
Eric Christopher2fd2eda2017-03-25 03:33:59 +00006417// PPC64-LINUX:#define _CALL_LINUX 1
Nico Weber3435ede2012-01-31 02:07:33 +00006418// PPC64-LINUX:#define _LP64 1
Eric Christopher153dad42017-03-25 02:55:21 +00006419// PPC64-LINUX:#define __BIGGEST_ALIGNMENT__ 16
Nico Weber3435ede2012-01-31 02:07:33 +00006420// PPC64-LINUX:#define __BIG_ENDIAN__ 1
Dylan Noblesmith673728f2012-07-27 18:34:31 +00006421// PPC64-LINUX:#define __BYTE_ORDER__ __ORDER_BIG_ENDIAN__
Nico Weber3435ede2012-01-31 02:07:33 +00006422// PPC64-LINUX:#define __CHAR16_TYPE__ unsigned short
6423// PPC64-LINUX:#define __CHAR32_TYPE__ unsigned int
6424// PPC64-LINUX:#define __CHAR_BIT__ 8
6425// PPC64-LINUX:#define __CHAR_UNSIGNED__ 1
6426// PPC64-LINUX:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
6427// PPC64-LINUX:#define __DBL_DIG__ 15
6428// PPC64-LINUX:#define __DBL_EPSILON__ 2.2204460492503131e-16
6429// PPC64-LINUX:#define __DBL_HAS_DENORM__ 1
6430// PPC64-LINUX:#define __DBL_HAS_INFINITY__ 1
6431// PPC64-LINUX:#define __DBL_HAS_QUIET_NAN__ 1
6432// PPC64-LINUX:#define __DBL_MANT_DIG__ 53
6433// PPC64-LINUX:#define __DBL_MAX_10_EXP__ 308
6434// PPC64-LINUX:#define __DBL_MAX_EXP__ 1024
6435// PPC64-LINUX:#define __DBL_MAX__ 1.7976931348623157e+308
6436// PPC64-LINUX:#define __DBL_MIN_10_EXP__ (-307)
6437// PPC64-LINUX:#define __DBL_MIN_EXP__ (-1021)
6438// PPC64-LINUX:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00006439// PPC64-LINUX:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Nico Weber3435ede2012-01-31 02:07:33 +00006440// PPC64-LINUX:#define __FLT_DENORM_MIN__ 1.40129846e-45F
6441// PPC64-LINUX:#define __FLT_DIG__ 6
6442// PPC64-LINUX:#define __FLT_EPSILON__ 1.19209290e-7F
6443// PPC64-LINUX:#define __FLT_EVAL_METHOD__ 0
6444// PPC64-LINUX:#define __FLT_HAS_DENORM__ 1
6445// PPC64-LINUX:#define __FLT_HAS_INFINITY__ 1
6446// PPC64-LINUX:#define __FLT_HAS_QUIET_NAN__ 1
6447// PPC64-LINUX:#define __FLT_MANT_DIG__ 24
6448// PPC64-LINUX:#define __FLT_MAX_10_EXP__ 38
6449// PPC64-LINUX:#define __FLT_MAX_EXP__ 128
6450// PPC64-LINUX:#define __FLT_MAX__ 3.40282347e+38F
6451// PPC64-LINUX:#define __FLT_MIN_10_EXP__ (-37)
6452// PPC64-LINUX:#define __FLT_MIN_EXP__ (-125)
6453// PPC64-LINUX:#define __FLT_MIN__ 1.17549435e-38F
6454// PPC64-LINUX:#define __FLT_RADIX__ 2
Eric Christopher0d361162017-03-25 05:40:13 +00006455// PPC64-LINUX:#define __HAVE_BSWAP__ 1
James Y Knightc97efa42016-02-11 16:51:29 +00006456// PPC64-LINUX:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006457// PPC64-LINUX:#define __INT16_FMTd__ "hd"
6458// PPC64-LINUX:#define __INT16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00006459// PPC64-LINUX:#define __INT16_MAX__ 32767
Nico Weber3435ede2012-01-31 02:07:33 +00006460// PPC64-LINUX:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +00006461// PPC64-LINUX:#define __INT32_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006462// PPC64-LINUX:#define __INT32_FMTd__ "d"
6463// PPC64-LINUX:#define __INT32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00006464// PPC64-LINUX:#define __INT32_MAX__ 2147483647
Nico Weber3435ede2012-01-31 02:07:33 +00006465// PPC64-LINUX:#define __INT32_TYPE__ int
6466// PPC64-LINUX:#define __INT64_C_SUFFIX__ L
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006467// PPC64-LINUX:#define __INT64_FMTd__ "ld"
6468// PPC64-LINUX:#define __INT64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00006469// PPC64-LINUX:#define __INT64_MAX__ 9223372036854775807L
Nico Weber3435ede2012-01-31 02:07:33 +00006470// PPC64-LINUX:#define __INT64_TYPE__ long int
James Y Knightc97efa42016-02-11 16:51:29 +00006471// PPC64-LINUX:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006472// PPC64-LINUX:#define __INT8_FMTd__ "hhd"
6473// PPC64-LINUX:#define __INT8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00006474// PPC64-LINUX:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00006475// PPC64-LINUX:#define __INT8_TYPE__ signed char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00006476// PPC64-LINUX:#define __INTMAX_C_SUFFIX__ L
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006477// PPC64-LINUX:#define __INTMAX_FMTd__ "ld"
6478// PPC64-LINUX:#define __INTMAX_FMTi__ "li"
Nico Weber3435ede2012-01-31 02:07:33 +00006479// PPC64-LINUX:#define __INTMAX_MAX__ 9223372036854775807L
6480// PPC64-LINUX:#define __INTMAX_TYPE__ long int
6481// PPC64-LINUX:#define __INTMAX_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006482// PPC64-LINUX:#define __INTPTR_FMTd__ "ld"
6483// PPC64-LINUX:#define __INTPTR_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00006484// PPC64-LINUX:#define __INTPTR_MAX__ 9223372036854775807L
Nico Weber3435ede2012-01-31 02:07:33 +00006485// PPC64-LINUX:#define __INTPTR_TYPE__ long int
6486// PPC64-LINUX:#define __INTPTR_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006487// PPC64-LINUX:#define __INT_FAST16_FMTd__ "hd"
6488// PPC64-LINUX:#define __INT_FAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00006489// PPC64-LINUX:#define __INT_FAST16_MAX__ 32767
6490// PPC64-LINUX:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006491// PPC64-LINUX:#define __INT_FAST32_FMTd__ "d"
6492// PPC64-LINUX:#define __INT_FAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00006493// PPC64-LINUX:#define __INT_FAST32_MAX__ 2147483647
6494// PPC64-LINUX:#define __INT_FAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006495// PPC64-LINUX:#define __INT_FAST64_FMTd__ "ld"
6496// PPC64-LINUX:#define __INT_FAST64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00006497// PPC64-LINUX:#define __INT_FAST64_MAX__ 9223372036854775807L
6498// PPC64-LINUX:#define __INT_FAST64_TYPE__ long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006499// PPC64-LINUX:#define __INT_FAST8_FMTd__ "hhd"
6500// PPC64-LINUX:#define __INT_FAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00006501// PPC64-LINUX:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00006502// PPC64-LINUX:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006503// PPC64-LINUX:#define __INT_LEAST16_FMTd__ "hd"
6504// PPC64-LINUX:#define __INT_LEAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00006505// PPC64-LINUX:#define __INT_LEAST16_MAX__ 32767
6506// PPC64-LINUX:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006507// PPC64-LINUX:#define __INT_LEAST32_FMTd__ "d"
6508// PPC64-LINUX:#define __INT_LEAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00006509// PPC64-LINUX:#define __INT_LEAST32_MAX__ 2147483647
6510// PPC64-LINUX:#define __INT_LEAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006511// PPC64-LINUX:#define __INT_LEAST64_FMTd__ "ld"
6512// PPC64-LINUX:#define __INT_LEAST64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00006513// PPC64-LINUX:#define __INT_LEAST64_MAX__ 9223372036854775807L
6514// PPC64-LINUX:#define __INT_LEAST64_TYPE__ long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006515// PPC64-LINUX:#define __INT_LEAST8_FMTd__ "hhd"
6516// PPC64-LINUX:#define __INT_LEAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00006517// PPC64-LINUX:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00006518// PPC64-LINUX:#define __INT_LEAST8_TYPE__ signed char
Nico Weber3435ede2012-01-31 02:07:33 +00006519// PPC64-LINUX:#define __INT_MAX__ 2147483647
6520// PPC64-LINUX:#define __LDBL_DENORM_MIN__ 4.94065645841246544176568792868221e-324L
6521// PPC64-LINUX:#define __LDBL_DIG__ 31
6522// PPC64-LINUX:#define __LDBL_EPSILON__ 4.94065645841246544176568792868221e-324L
6523// PPC64-LINUX:#define __LDBL_HAS_DENORM__ 1
6524// PPC64-LINUX:#define __LDBL_HAS_INFINITY__ 1
6525// PPC64-LINUX:#define __LDBL_HAS_QUIET_NAN__ 1
6526// PPC64-LINUX:#define __LDBL_MANT_DIG__ 106
6527// PPC64-LINUX:#define __LDBL_MAX_10_EXP__ 308
6528// PPC64-LINUX:#define __LDBL_MAX_EXP__ 1024
6529// PPC64-LINUX:#define __LDBL_MAX__ 1.79769313486231580793728971405301e+308L
6530// PPC64-LINUX:#define __LDBL_MIN_10_EXP__ (-291)
6531// PPC64-LINUX:#define __LDBL_MIN_EXP__ (-968)
6532// PPC64-LINUX:#define __LDBL_MIN__ 2.00416836000897277799610805135016e-292L
Eric Christopheree214102017-03-25 06:37:23 +00006533// PPC64-LINUX:#define __LONGDOUBLE128 1
Nico Weber3435ede2012-01-31 02:07:33 +00006534// PPC64-LINUX:#define __LONG_DOUBLE_128__ 1
6535// PPC64-LINUX:#define __LONG_LONG_MAX__ 9223372036854775807LL
6536// PPC64-LINUX:#define __LONG_MAX__ 9223372036854775807L
6537// PPC64-LINUX:#define __LP64__ 1
6538// PPC64-LINUX:#define __NATURAL_ALIGNMENT__ 1
Nico Weber3435ede2012-01-31 02:07:33 +00006539// PPC64-LINUX:#define __POINTER_WIDTH__ 64
6540// PPC64-LINUX:#define __POWERPC__ 1
Chandler Carruth6aa92ad2013-06-25 11:13:47 +00006541// PPC64-LINUX:#define __PPC64__ 1
6542// PPC64-LINUX:#define __PPC__ 1
Nico Weber3435ede2012-01-31 02:07:33 +00006543// PPC64-LINUX:#define __PTRDIFF_TYPE__ long int
6544// PPC64-LINUX:#define __PTRDIFF_WIDTH__ 64
6545// PPC64-LINUX:#define __REGISTER_PREFIX__
6546// PPC64-LINUX:#define __SCHAR_MAX__ 127
6547// PPC64-LINUX:#define __SHRT_MAX__ 32767
Joerg Sonnenbergerb3a49692014-07-17 18:31:20 +00006548// PPC64-LINUX:#define __SIG_ATOMIC_MAX__ 2147483647
Nico Weber3435ede2012-01-31 02:07:33 +00006549// PPC64-LINUX:#define __SIG_ATOMIC_WIDTH__ 32
6550// PPC64-LINUX:#define __SIZEOF_DOUBLE__ 8
6551// PPC64-LINUX:#define __SIZEOF_FLOAT__ 4
6552// PPC64-LINUX:#define __SIZEOF_INT__ 4
6553// PPC64-LINUX:#define __SIZEOF_LONG_DOUBLE__ 16
6554// PPC64-LINUX:#define __SIZEOF_LONG_LONG__ 8
6555// PPC64-LINUX:#define __SIZEOF_LONG__ 8
6556// PPC64-LINUX:#define __SIZEOF_POINTER__ 8
6557// PPC64-LINUX:#define __SIZEOF_PTRDIFF_T__ 8
6558// PPC64-LINUX:#define __SIZEOF_SHORT__ 2
6559// PPC64-LINUX:#define __SIZEOF_SIZE_T__ 8
6560// PPC64-LINUX:#define __SIZEOF_WCHAR_T__ 4
6561// PPC64-LINUX:#define __SIZEOF_WINT_T__ 4
Evgeniy Stepanovc3c725a2013-03-28 08:36:54 +00006562// PPC64-LINUX:#define __SIZE_MAX__ 18446744073709551615UL
Nico Weber3435ede2012-01-31 02:07:33 +00006563// PPC64-LINUX:#define __SIZE_TYPE__ long unsigned int
6564// PPC64-LINUX:#define __SIZE_WIDTH__ 64
James Y Knightc97efa42016-02-11 16:51:29 +00006565// PPC64-LINUX:#define __UINT16_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00006566// PPC64-LINUX:#define __UINT16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00006567// PPC64-LINUX:#define __UINT16_TYPE__ unsigned short
6568// PPC64-LINUX:#define __UINT32_C_SUFFIX__ U
6569// PPC64-LINUX:#define __UINT32_MAX__ 4294967295U
6570// PPC64-LINUX:#define __UINT32_TYPE__ unsigned int
6571// PPC64-LINUX:#define __UINT64_C_SUFFIX__ UL
6572// PPC64-LINUX:#define __UINT64_MAX__ 18446744073709551615UL
6573// PPC64-LINUX:#define __UINT64_TYPE__ long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00006574// PPC64-LINUX:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00006575// PPC64-LINUX:#define __UINT8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00006576// PPC64-LINUX:#define __UINT8_TYPE__ unsigned char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00006577// PPC64-LINUX:#define __UINTMAX_C_SUFFIX__ UL
JF Bastienab8d0a02014-06-25 01:31:33 +00006578// PPC64-LINUX:#define __UINTMAX_MAX__ 18446744073709551615UL
Nico Weber3435ede2012-01-31 02:07:33 +00006579// PPC64-LINUX:#define __UINTMAX_TYPE__ long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00006580// PPC64-LINUX:#define __UINTMAX_WIDTH__ 64
6581// PPC64-LINUX:#define __UINTPTR_MAX__ 18446744073709551615UL
6582// PPC64-LINUX:#define __UINTPTR_TYPE__ long unsigned int
6583// PPC64-LINUX:#define __UINTPTR_WIDTH__ 64
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00006584// PPC64-LINUX:#define __UINT_FAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00006585// PPC64-LINUX:#define __UINT_FAST16_TYPE__ unsigned short
6586// PPC64-LINUX:#define __UINT_FAST32_MAX__ 4294967295U
6587// PPC64-LINUX:#define __UINT_FAST32_TYPE__ unsigned int
6588// PPC64-LINUX:#define __UINT_FAST64_MAX__ 18446744073709551615UL
6589// PPC64-LINUX:#define __UINT_FAST64_TYPE__ long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00006590// PPC64-LINUX:#define __UINT_FAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00006591// PPC64-LINUX:#define __UINT_FAST8_TYPE__ unsigned char
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00006592// PPC64-LINUX:#define __UINT_LEAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00006593// PPC64-LINUX:#define __UINT_LEAST16_TYPE__ unsigned short
6594// PPC64-LINUX:#define __UINT_LEAST32_MAX__ 4294967295U
6595// PPC64-LINUX:#define __UINT_LEAST32_TYPE__ unsigned int
6596// PPC64-LINUX:#define __UINT_LEAST64_MAX__ 18446744073709551615UL
6597// PPC64-LINUX:#define __UINT_LEAST64_TYPE__ long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00006598// PPC64-LINUX:#define __UINT_LEAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00006599// PPC64-LINUX:#define __UINT_LEAST8_TYPE__ unsigned char
Nico Weber3435ede2012-01-31 02:07:33 +00006600// PPC64-LINUX:#define __USER_LABEL_PREFIX__
6601// PPC64-LINUX:#define __WCHAR_MAX__ 2147483647
6602// PPC64-LINUX:#define __WCHAR_TYPE__ int
6603// PPC64-LINUX:#define __WCHAR_WIDTH__ 32
6604// PPC64-LINUX:#define __WINT_TYPE__ unsigned int
6605// PPC64-LINUX:#define __WINT_UNSIGNED__ 1
6606// PPC64-LINUX:#define __WINT_WIDTH__ 32
6607// PPC64-LINUX:#define __powerpc64__ 1
6608// PPC64-LINUX:#define __powerpc__ 1
6609// PPC64-LINUX:#define __ppc64__ 1
6610// PPC64-LINUX:#define __ppc__ 1
Ulrich Weigand8afad612014-07-28 13:17:52 +00006611
James Y Knightc97efa42016-02-11 16:51:29 +00006612// RUN: %clang_cc1 -E -dM -ffreestanding -triple=powerpc64-unknown-linux-gnu < /dev/null | FileCheck -match-full-lines -check-prefix PPC64-ELFv1 %s
6613// 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
6614// 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
6615// 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
6616// RUN: %clang_cc1 -E -dM -ffreestanding -triple=powerpc64le-unknown-linux-gnu < /dev/null | FileCheck -match-full-lines -check-prefix PPC64-ELFv2 %s
6617// 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
6618// 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 +00006619// PPC64-ELFv1:#define _CALL_ELF 1
6620// PPC64-ELFv2:#define _CALL_ELF 2
Nico Weber3435ede2012-01-31 02:07:33 +00006621//
Eric Christopher2fd2eda2017-03-25 03:33:59 +00006622// Most of this is encompassed in other places.
6623// 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
6624//
6625// PPC64LE-LINUX:#define _CALL_LINUX 1
6626//
James Y Knightc97efa42016-02-11 16:51:29 +00006627// 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 +00006628//
6629// PPC:#define _ARCH_PPC 1
6630// PPC:#define _BIG_ENDIAN 1
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00006631// PPC-NOT:#define _LP64
Eric Christopher153dad42017-03-25 02:55:21 +00006632// PPC:#define __BIGGEST_ALIGNMENT__ 16
Chris Lattnere963d092009-10-29 04:55:36 +00006633// PPC:#define __BIG_ENDIAN__ 1
Dylan Noblesmith673728f2012-07-27 18:34:31 +00006634// PPC:#define __BYTE_ORDER__ __ORDER_BIG_ENDIAN__
Dan Gohman04f87202010-05-28 00:27:15 +00006635// PPC:#define __CHAR16_TYPE__ unsigned short
6636// PPC:#define __CHAR32_TYPE__ unsigned int
Chris Lattnere963d092009-10-29 04:55:36 +00006637// PPC:#define __CHAR_BIT__ 8
6638// PPC:#define __CHAR_UNSIGNED__ 1
6639// PPC:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
6640// PPC:#define __DBL_DIG__ 15
6641// PPC:#define __DBL_EPSILON__ 2.2204460492503131e-16
6642// PPC:#define __DBL_HAS_DENORM__ 1
6643// PPC:#define __DBL_HAS_INFINITY__ 1
6644// PPC:#define __DBL_HAS_QUIET_NAN__ 1
6645// PPC:#define __DBL_MANT_DIG__ 53
6646// PPC:#define __DBL_MAX_10_EXP__ 308
6647// PPC:#define __DBL_MAX_EXP__ 1024
6648// PPC:#define __DBL_MAX__ 1.7976931348623157e+308
6649// PPC:#define __DBL_MIN_10_EXP__ (-307)
6650// PPC:#define __DBL_MIN_EXP__ (-1021)
6651// PPC:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00006652// PPC:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Chris Lattnere963d092009-10-29 04:55:36 +00006653// PPC:#define __FLT_DENORM_MIN__ 1.40129846e-45F
6654// PPC:#define __FLT_DIG__ 6
6655// PPC:#define __FLT_EPSILON__ 1.19209290e-7F
6656// PPC:#define __FLT_EVAL_METHOD__ 0
6657// PPC:#define __FLT_HAS_DENORM__ 1
6658// PPC:#define __FLT_HAS_INFINITY__ 1
6659// PPC:#define __FLT_HAS_QUIET_NAN__ 1
6660// PPC:#define __FLT_MANT_DIG__ 24
6661// PPC:#define __FLT_MAX_10_EXP__ 38
6662// PPC:#define __FLT_MAX_EXP__ 128
6663// PPC:#define __FLT_MAX__ 3.40282347e+38F
6664// PPC:#define __FLT_MIN_10_EXP__ (-37)
6665// PPC:#define __FLT_MIN_EXP__ (-125)
6666// PPC:#define __FLT_MIN__ 1.17549435e-38F
6667// PPC:#define __FLT_RADIX__ 2
Eric Christopher0d361162017-03-25 05:40:13 +00006668// PPC:#define __HAVE_BSWAP__ 1
James Y Knightc97efa42016-02-11 16:51:29 +00006669// PPC:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006670// PPC:#define __INT16_FMTd__ "hd"
6671// PPC:#define __INT16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00006672// PPC:#define __INT16_MAX__ 32767
Chris Lattnere963d092009-10-29 04:55:36 +00006673// PPC:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +00006674// PPC:#define __INT32_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006675// PPC:#define __INT32_FMTd__ "d"
6676// PPC:#define __INT32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00006677// PPC:#define __INT32_MAX__ 2147483647
Chris Lattnere963d092009-10-29 04:55:36 +00006678// PPC:#define __INT32_TYPE__ int
Ken Dyck2dc8d5f2009-11-16 16:36:33 +00006679// PPC:#define __INT64_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006680// PPC:#define __INT64_FMTd__ "lld"
6681// PPC:#define __INT64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00006682// PPC:#define __INT64_MAX__ 9223372036854775807LL
Chris Lattnere963d092009-10-29 04:55:36 +00006683// PPC:#define __INT64_TYPE__ long long int
James Y Knightc97efa42016-02-11 16:51:29 +00006684// PPC:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006685// PPC:#define __INT8_FMTd__ "hhd"
6686// PPC:#define __INT8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00006687// PPC:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00006688// PPC:#define __INT8_TYPE__ signed char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00006689// PPC:#define __INTMAX_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006690// PPC:#define __INTMAX_FMTd__ "lld"
6691// PPC:#define __INTMAX_FMTi__ "lli"
Chris Lattnere963d092009-10-29 04:55:36 +00006692// PPC:#define __INTMAX_MAX__ 9223372036854775807LL
Ken Dyck9b25f782009-11-19 13:18:59 +00006693// PPC:#define __INTMAX_TYPE__ long long int
Ken Dyckc0c98292009-11-18 13:52:57 +00006694// PPC:#define __INTMAX_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006695// PPC:#define __INTPTR_FMTd__ "ld"
6696// PPC:#define __INTPTR_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00006697// PPC:#define __INTPTR_MAX__ 2147483647L
Ken Dyck9b25f782009-11-19 13:18:59 +00006698// PPC:#define __INTPTR_TYPE__ long int
Ken Dyck24cfcf12009-11-18 20:05:48 +00006699// PPC:#define __INTPTR_WIDTH__ 32
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006700// PPC:#define __INT_FAST16_FMTd__ "hd"
6701// PPC:#define __INT_FAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00006702// PPC:#define __INT_FAST16_MAX__ 32767
6703// PPC:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006704// PPC:#define __INT_FAST32_FMTd__ "d"
6705// PPC:#define __INT_FAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00006706// PPC:#define __INT_FAST32_MAX__ 2147483647
6707// PPC:#define __INT_FAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006708// PPC:#define __INT_FAST64_FMTd__ "lld"
6709// PPC:#define __INT_FAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00006710// PPC:#define __INT_FAST64_MAX__ 9223372036854775807LL
6711// PPC:#define __INT_FAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006712// PPC:#define __INT_FAST8_FMTd__ "hhd"
6713// PPC:#define __INT_FAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00006714// PPC:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00006715// PPC:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006716// PPC:#define __INT_LEAST16_FMTd__ "hd"
6717// PPC:#define __INT_LEAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00006718// PPC:#define __INT_LEAST16_MAX__ 32767
6719// PPC:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006720// PPC:#define __INT_LEAST32_FMTd__ "d"
6721// PPC:#define __INT_LEAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00006722// PPC:#define __INT_LEAST32_MAX__ 2147483647
6723// PPC:#define __INT_LEAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006724// PPC:#define __INT_LEAST64_FMTd__ "lld"
6725// PPC:#define __INT_LEAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00006726// PPC:#define __INT_LEAST64_MAX__ 9223372036854775807LL
6727// PPC:#define __INT_LEAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006728// PPC:#define __INT_LEAST8_FMTd__ "hhd"
6729// PPC:#define __INT_LEAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00006730// PPC:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00006731// PPC:#define __INT_LEAST8_TYPE__ signed char
Chris Lattnere963d092009-10-29 04:55:36 +00006732// PPC:#define __INT_MAX__ 2147483647
Nico Weber3435ede2012-01-31 02:07:33 +00006733// PPC:#define __LDBL_DENORM_MIN__ 4.94065645841246544176568792868221e-324L
6734// PPC:#define __LDBL_DIG__ 31
6735// PPC:#define __LDBL_EPSILON__ 4.94065645841246544176568792868221e-324L
Chris Lattnere963d092009-10-29 04:55:36 +00006736// PPC:#define __LDBL_HAS_DENORM__ 1
6737// PPC:#define __LDBL_HAS_INFINITY__ 1
6738// PPC:#define __LDBL_HAS_QUIET_NAN__ 1
Nico Weber3435ede2012-01-31 02:07:33 +00006739// PPC:#define __LDBL_MANT_DIG__ 106
Chris Lattnere963d092009-10-29 04:55:36 +00006740// PPC:#define __LDBL_MAX_10_EXP__ 308
6741// PPC:#define __LDBL_MAX_EXP__ 1024
Nico Weber3435ede2012-01-31 02:07:33 +00006742// PPC:#define __LDBL_MAX__ 1.79769313486231580793728971405301e+308L
6743// PPC:#define __LDBL_MIN_10_EXP__ (-291)
6744// PPC:#define __LDBL_MIN_EXP__ (-968)
6745// PPC:#define __LDBL_MIN__ 2.00416836000897277799610805135016e-292L
Eric Christopheree214102017-03-25 06:37:23 +00006746// PPC:#define __LONGDOUBLE128 1
Chris Lattnere963d092009-10-29 04:55:36 +00006747// PPC:#define __LONG_DOUBLE_128__ 1
6748// PPC:#define __LONG_LONG_MAX__ 9223372036854775807LL
6749// PPC:#define __LONG_MAX__ 2147483647L
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00006750// PPC-NOT:#define __LP64__
Chris Lattnere963d092009-10-29 04:55:36 +00006751// PPC:#define __NATURAL_ALIGNMENT__ 1
Chris Lattnere963d092009-10-29 04:55:36 +00006752// PPC:#define __POINTER_WIDTH__ 32
6753// PPC:#define __POWERPC__ 1
Chandler Carruth6aa92ad2013-06-25 11:13:47 +00006754// PPC:#define __PPC__ 1
Ken Dyck9b25f782009-11-19 13:18:59 +00006755// PPC:#define __PTRDIFF_TYPE__ long int
Ken Dyck056efe02009-11-19 12:21:52 +00006756// PPC:#define __PTRDIFF_WIDTH__ 32
James Y Knightc97efa42016-02-11 16:51:29 +00006757// PPC:#define __REGISTER_PREFIX__
Chris Lattnere963d092009-10-29 04:55:36 +00006758// PPC:#define __SCHAR_MAX__ 127
6759// PPC:#define __SHRT_MAX__ 32767
Joerg Sonnenbergerb3a49692014-07-17 18:31:20 +00006760// PPC:#define __SIG_ATOMIC_MAX__ 2147483647
Ken Dyckadc85112009-11-22 15:41:04 +00006761// PPC:#define __SIG_ATOMIC_WIDTH__ 32
Dan Gohman04f87202010-05-28 00:27:15 +00006762// PPC:#define __SIZEOF_DOUBLE__ 8
6763// PPC:#define __SIZEOF_FLOAT__ 4
6764// PPC:#define __SIZEOF_INT__ 4
Nico Weber3435ede2012-01-31 02:07:33 +00006765// PPC:#define __SIZEOF_LONG_DOUBLE__ 16
Dan Gohman04f87202010-05-28 00:27:15 +00006766// PPC:#define __SIZEOF_LONG_LONG__ 8
6767// PPC:#define __SIZEOF_LONG__ 4
6768// PPC:#define __SIZEOF_POINTER__ 4
6769// PPC:#define __SIZEOF_PTRDIFF_T__ 4
6770// PPC:#define __SIZEOF_SHORT__ 2
6771// PPC:#define __SIZEOF_SIZE_T__ 4
6772// PPC:#define __SIZEOF_WCHAR_T__ 4
6773// PPC:#define __SIZEOF_WINT_T__ 4
James Y Knightc97efa42016-02-11 16:51:29 +00006774// PPC:#define __SIZE_MAX__ 4294967295UL
Chris Lattnere963d092009-10-29 04:55:36 +00006775// PPC:#define __SIZE_TYPE__ long unsigned int
Ken Dyck57512862009-11-19 13:42:09 +00006776// PPC:#define __SIZE_WIDTH__ 32
James Y Knightc97efa42016-02-11 16:51:29 +00006777// PPC:#define __UINT16_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00006778// PPC:#define __UINT16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00006779// PPC:#define __UINT16_TYPE__ unsigned short
6780// PPC:#define __UINT32_C_SUFFIX__ U
6781// PPC:#define __UINT32_MAX__ 4294967295U
6782// PPC:#define __UINT32_TYPE__ unsigned int
6783// PPC:#define __UINT64_C_SUFFIX__ ULL
6784// PPC:#define __UINT64_MAX__ 18446744073709551615ULL
6785// PPC:#define __UINT64_TYPE__ long long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00006786// PPC:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00006787// PPC:#define __UINT8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00006788// PPC:#define __UINT8_TYPE__ unsigned char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00006789// PPC:#define __UINTMAX_C_SUFFIX__ ULL
JF Bastienab8d0a02014-06-25 01:31:33 +00006790// PPC:#define __UINTMAX_MAX__ 18446744073709551615ULL
Ken Dyck9b25f782009-11-19 13:18:59 +00006791// PPC:#define __UINTMAX_TYPE__ long long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00006792// PPC:#define __UINTMAX_WIDTH__ 64
James Y Knightc97efa42016-02-11 16:51:29 +00006793// PPC:#define __UINTPTR_MAX__ 4294967295UL
Joerg Sonnenberger3809a7a2014-07-14 20:40:56 +00006794// PPC:#define __UINTPTR_TYPE__ long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00006795// PPC:#define __UINTPTR_WIDTH__ 32
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00006796// PPC:#define __UINT_FAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00006797// PPC:#define __UINT_FAST16_TYPE__ unsigned short
6798// PPC:#define __UINT_FAST32_MAX__ 4294967295U
6799// PPC:#define __UINT_FAST32_TYPE__ unsigned int
6800// PPC:#define __UINT_FAST64_MAX__ 18446744073709551615ULL
6801// PPC:#define __UINT_FAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00006802// PPC:#define __UINT_FAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00006803// PPC:#define __UINT_FAST8_TYPE__ unsigned char
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00006804// PPC:#define __UINT_LEAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00006805// PPC:#define __UINT_LEAST16_TYPE__ unsigned short
6806// PPC:#define __UINT_LEAST32_MAX__ 4294967295U
6807// PPC:#define __UINT_LEAST32_TYPE__ unsigned int
6808// PPC:#define __UINT_LEAST64_MAX__ 18446744073709551615ULL
6809// PPC:#define __UINT_LEAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00006810// PPC:#define __UINT_LEAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00006811// PPC:#define __UINT_LEAST8_TYPE__ unsigned char
James Y Knightb214cbc2016-03-04 19:00:41 +00006812// PPC:#define __USER_LABEL_PREFIX__
Chris Lattnere963d092009-10-29 04:55:36 +00006813// PPC:#define __WCHAR_MAX__ 2147483647
6814// PPC:#define __WCHAR_TYPE__ int
Ken Dyck0138b9e2009-11-19 15:47:58 +00006815// PPC:#define __WCHAR_WIDTH__ 32
Chris Lattnere963d092009-10-29 04:55:36 +00006816// PPC:#define __WINT_TYPE__ int
Ken Dycka1f677c2009-11-19 14:16:57 +00006817// PPC:#define __WINT_WIDTH__ 32
Chris Lattnere963d092009-10-29 04:55:36 +00006818// PPC:#define __ppc__ 1
6819//
James Y Knightc97efa42016-02-11 16:51:29 +00006820// 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 +00006821//
6822// PPC-LINUX:#define _ARCH_PPC 1
6823// PPC-LINUX:#define _BIG_ENDIAN 1
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00006824// PPC-LINUX-NOT:#define _LP64
Eric Christopher153dad42017-03-25 02:55:21 +00006825// PPC-LINUX:#define __BIGGEST_ALIGNMENT__ 16
Nico Weber3435ede2012-01-31 02:07:33 +00006826// PPC-LINUX:#define __BIG_ENDIAN__ 1
Dylan Noblesmith673728f2012-07-27 18:34:31 +00006827// PPC-LINUX:#define __BYTE_ORDER__ __ORDER_BIG_ENDIAN__
Nico Weber3435ede2012-01-31 02:07:33 +00006828// PPC-LINUX:#define __CHAR16_TYPE__ unsigned short
6829// PPC-LINUX:#define __CHAR32_TYPE__ unsigned int
6830// PPC-LINUX:#define __CHAR_BIT__ 8
6831// PPC-LINUX:#define __CHAR_UNSIGNED__ 1
6832// PPC-LINUX:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
6833// PPC-LINUX:#define __DBL_DIG__ 15
6834// PPC-LINUX:#define __DBL_EPSILON__ 2.2204460492503131e-16
6835// PPC-LINUX:#define __DBL_HAS_DENORM__ 1
6836// PPC-LINUX:#define __DBL_HAS_INFINITY__ 1
6837// PPC-LINUX:#define __DBL_HAS_QUIET_NAN__ 1
6838// PPC-LINUX:#define __DBL_MANT_DIG__ 53
6839// PPC-LINUX:#define __DBL_MAX_10_EXP__ 308
6840// PPC-LINUX:#define __DBL_MAX_EXP__ 1024
6841// PPC-LINUX:#define __DBL_MAX__ 1.7976931348623157e+308
6842// PPC-LINUX:#define __DBL_MIN_10_EXP__ (-307)
6843// PPC-LINUX:#define __DBL_MIN_EXP__ (-1021)
6844// PPC-LINUX:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00006845// PPC-LINUX:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Nico Weber3435ede2012-01-31 02:07:33 +00006846// PPC-LINUX:#define __FLT_DENORM_MIN__ 1.40129846e-45F
6847// PPC-LINUX:#define __FLT_DIG__ 6
6848// PPC-LINUX:#define __FLT_EPSILON__ 1.19209290e-7F
6849// PPC-LINUX:#define __FLT_EVAL_METHOD__ 0
6850// PPC-LINUX:#define __FLT_HAS_DENORM__ 1
6851// PPC-LINUX:#define __FLT_HAS_INFINITY__ 1
6852// PPC-LINUX:#define __FLT_HAS_QUIET_NAN__ 1
6853// PPC-LINUX:#define __FLT_MANT_DIG__ 24
6854// PPC-LINUX:#define __FLT_MAX_10_EXP__ 38
6855// PPC-LINUX:#define __FLT_MAX_EXP__ 128
6856// PPC-LINUX:#define __FLT_MAX__ 3.40282347e+38F
6857// PPC-LINUX:#define __FLT_MIN_10_EXP__ (-37)
6858// PPC-LINUX:#define __FLT_MIN_EXP__ (-125)
6859// PPC-LINUX:#define __FLT_MIN__ 1.17549435e-38F
6860// PPC-LINUX:#define __FLT_RADIX__ 2
Eric Christopher0d361162017-03-25 05:40:13 +00006861// PPC-LINUX:#define __HAVE_BSWAP__ 1
James Y Knightc97efa42016-02-11 16:51:29 +00006862// PPC-LINUX:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006863// PPC-LINUX:#define __INT16_FMTd__ "hd"
6864// PPC-LINUX:#define __INT16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00006865// PPC-LINUX:#define __INT16_MAX__ 32767
Nico Weber3435ede2012-01-31 02:07:33 +00006866// PPC-LINUX:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +00006867// PPC-LINUX:#define __INT32_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006868// PPC-LINUX:#define __INT32_FMTd__ "d"
6869// PPC-LINUX:#define __INT32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00006870// PPC-LINUX:#define __INT32_MAX__ 2147483647
Nico Weber3435ede2012-01-31 02:07:33 +00006871// PPC-LINUX:#define __INT32_TYPE__ int
6872// PPC-LINUX:#define __INT64_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006873// PPC-LINUX:#define __INT64_FMTd__ "lld"
6874// PPC-LINUX:#define __INT64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00006875// PPC-LINUX:#define __INT64_MAX__ 9223372036854775807LL
Nico Weber3435ede2012-01-31 02:07:33 +00006876// PPC-LINUX:#define __INT64_TYPE__ long long int
James Y Knightc97efa42016-02-11 16:51:29 +00006877// PPC-LINUX:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006878// PPC-LINUX:#define __INT8_FMTd__ "hhd"
6879// PPC-LINUX:#define __INT8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00006880// PPC-LINUX:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00006881// PPC-LINUX:#define __INT8_TYPE__ signed char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00006882// PPC-LINUX:#define __INTMAX_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006883// PPC-LINUX:#define __INTMAX_FMTd__ "lld"
6884// PPC-LINUX:#define __INTMAX_FMTi__ "lli"
Nico Weber3435ede2012-01-31 02:07:33 +00006885// PPC-LINUX:#define __INTMAX_MAX__ 9223372036854775807LL
6886// PPC-LINUX:#define __INTMAX_TYPE__ long long int
6887// PPC-LINUX:#define __INTMAX_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006888// PPC-LINUX:#define __INTPTR_FMTd__ "d"
6889// PPC-LINUX:#define __INTPTR_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00006890// PPC-LINUX:#define __INTPTR_MAX__ 2147483647
Hal Finkel26908382012-03-02 20:54:36 +00006891// PPC-LINUX:#define __INTPTR_TYPE__ int
Nico Weber3435ede2012-01-31 02:07:33 +00006892// PPC-LINUX:#define __INTPTR_WIDTH__ 32
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006893// PPC-LINUX:#define __INT_FAST16_FMTd__ "hd"
6894// PPC-LINUX:#define __INT_FAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00006895// PPC-LINUX:#define __INT_FAST16_MAX__ 32767
6896// PPC-LINUX:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006897// PPC-LINUX:#define __INT_FAST32_FMTd__ "d"
6898// PPC-LINUX:#define __INT_FAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00006899// PPC-LINUX:#define __INT_FAST32_MAX__ 2147483647
6900// PPC-LINUX:#define __INT_FAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006901// PPC-LINUX:#define __INT_FAST64_FMTd__ "lld"
6902// PPC-LINUX:#define __INT_FAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00006903// PPC-LINUX:#define __INT_FAST64_MAX__ 9223372036854775807LL
6904// PPC-LINUX:#define __INT_FAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006905// PPC-LINUX:#define __INT_FAST8_FMTd__ "hhd"
6906// PPC-LINUX:#define __INT_FAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00006907// PPC-LINUX:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00006908// PPC-LINUX:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006909// PPC-LINUX:#define __INT_LEAST16_FMTd__ "hd"
6910// PPC-LINUX:#define __INT_LEAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00006911// PPC-LINUX:#define __INT_LEAST16_MAX__ 32767
6912// PPC-LINUX:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006913// PPC-LINUX:#define __INT_LEAST32_FMTd__ "d"
6914// PPC-LINUX:#define __INT_LEAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00006915// PPC-LINUX:#define __INT_LEAST32_MAX__ 2147483647
6916// PPC-LINUX:#define __INT_LEAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006917// PPC-LINUX:#define __INT_LEAST64_FMTd__ "lld"
6918// PPC-LINUX:#define __INT_LEAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00006919// PPC-LINUX:#define __INT_LEAST64_MAX__ 9223372036854775807LL
6920// PPC-LINUX:#define __INT_LEAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00006921// PPC-LINUX:#define __INT_LEAST8_FMTd__ "hhd"
6922// PPC-LINUX:#define __INT_LEAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00006923// PPC-LINUX:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00006924// PPC-LINUX:#define __INT_LEAST8_TYPE__ signed char
Nico Weber3435ede2012-01-31 02:07:33 +00006925// PPC-LINUX:#define __INT_MAX__ 2147483647
6926// PPC-LINUX:#define __LDBL_DENORM_MIN__ 4.94065645841246544176568792868221e-324L
6927// PPC-LINUX:#define __LDBL_DIG__ 31
6928// PPC-LINUX:#define __LDBL_EPSILON__ 4.94065645841246544176568792868221e-324L
6929// PPC-LINUX:#define __LDBL_HAS_DENORM__ 1
6930// PPC-LINUX:#define __LDBL_HAS_INFINITY__ 1
6931// PPC-LINUX:#define __LDBL_HAS_QUIET_NAN__ 1
6932// PPC-LINUX:#define __LDBL_MANT_DIG__ 106
6933// PPC-LINUX:#define __LDBL_MAX_10_EXP__ 308
6934// PPC-LINUX:#define __LDBL_MAX_EXP__ 1024
6935// PPC-LINUX:#define __LDBL_MAX__ 1.79769313486231580793728971405301e+308L
6936// PPC-LINUX:#define __LDBL_MIN_10_EXP__ (-291)
6937// PPC-LINUX:#define __LDBL_MIN_EXP__ (-968)
6938// PPC-LINUX:#define __LDBL_MIN__ 2.00416836000897277799610805135016e-292L
Eric Christopheree214102017-03-25 06:37:23 +00006939// PPC-LINUX:#define __LONGDOUBLE128 1
Nico Weber3435ede2012-01-31 02:07:33 +00006940// PPC-LINUX:#define __LONG_DOUBLE_128__ 1
6941// PPC-LINUX:#define __LONG_LONG_MAX__ 9223372036854775807LL
6942// PPC-LINUX:#define __LONG_MAX__ 2147483647L
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00006943// PPC-LINUX-NOT:#define __LP64__
Nico Weber3435ede2012-01-31 02:07:33 +00006944// PPC-LINUX:#define __NATURAL_ALIGNMENT__ 1
Nico Weber3435ede2012-01-31 02:07:33 +00006945// PPC-LINUX:#define __POINTER_WIDTH__ 32
6946// PPC-LINUX:#define __POWERPC__ 1
Chandler Carruth6aa92ad2013-06-25 11:13:47 +00006947// PPC-LINUX:#define __PPC__ 1
Hal Finkel26908382012-03-02 20:54:36 +00006948// PPC-LINUX:#define __PTRDIFF_TYPE__ int
Nico Weber3435ede2012-01-31 02:07:33 +00006949// PPC-LINUX:#define __PTRDIFF_WIDTH__ 32
6950// PPC-LINUX:#define __REGISTER_PREFIX__
6951// PPC-LINUX:#define __SCHAR_MAX__ 127
6952// PPC-LINUX:#define __SHRT_MAX__ 32767
Joerg Sonnenbergerb3a49692014-07-17 18:31:20 +00006953// PPC-LINUX:#define __SIG_ATOMIC_MAX__ 2147483647
Nico Weber3435ede2012-01-31 02:07:33 +00006954// PPC-LINUX:#define __SIG_ATOMIC_WIDTH__ 32
6955// PPC-LINUX:#define __SIZEOF_DOUBLE__ 8
6956// PPC-LINUX:#define __SIZEOF_FLOAT__ 4
6957// PPC-LINUX:#define __SIZEOF_INT__ 4
6958// PPC-LINUX:#define __SIZEOF_LONG_DOUBLE__ 16
6959// PPC-LINUX:#define __SIZEOF_LONG_LONG__ 8
6960// PPC-LINUX:#define __SIZEOF_LONG__ 4
6961// PPC-LINUX:#define __SIZEOF_POINTER__ 4
6962// PPC-LINUX:#define __SIZEOF_PTRDIFF_T__ 4
6963// PPC-LINUX:#define __SIZEOF_SHORT__ 2
6964// PPC-LINUX:#define __SIZEOF_SIZE_T__ 4
6965// PPC-LINUX:#define __SIZEOF_WCHAR_T__ 4
6966// PPC-LINUX:#define __SIZEOF_WINT_T__ 4
Evgeniy Stepanovc3c725a2013-03-28 08:36:54 +00006967// PPC-LINUX:#define __SIZE_MAX__ 4294967295U
Nico Weber3435ede2012-01-31 02:07:33 +00006968// PPC-LINUX:#define __SIZE_TYPE__ unsigned int
6969// PPC-LINUX:#define __SIZE_WIDTH__ 32
James Y Knightc97efa42016-02-11 16:51:29 +00006970// PPC-LINUX:#define __UINT16_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00006971// PPC-LINUX:#define __UINT16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00006972// PPC-LINUX:#define __UINT16_TYPE__ unsigned short
6973// PPC-LINUX:#define __UINT32_C_SUFFIX__ U
6974// PPC-LINUX:#define __UINT32_MAX__ 4294967295U
6975// PPC-LINUX:#define __UINT32_TYPE__ unsigned int
6976// PPC-LINUX:#define __UINT64_C_SUFFIX__ ULL
6977// PPC-LINUX:#define __UINT64_MAX__ 18446744073709551615ULL
6978// PPC-LINUX:#define __UINT64_TYPE__ long long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00006979// PPC-LINUX:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00006980// PPC-LINUX:#define __UINT8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00006981// PPC-LINUX:#define __UINT8_TYPE__ unsigned char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00006982// PPC-LINUX:#define __UINTMAX_C_SUFFIX__ ULL
JF Bastienab8d0a02014-06-25 01:31:33 +00006983// PPC-LINUX:#define __UINTMAX_MAX__ 18446744073709551615ULL
Nico Weber3435ede2012-01-31 02:07:33 +00006984// PPC-LINUX:#define __UINTMAX_TYPE__ long long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00006985// PPC-LINUX:#define __UINTMAX_WIDTH__ 64
6986// PPC-LINUX:#define __UINTPTR_MAX__ 4294967295U
6987// PPC-LINUX:#define __UINTPTR_TYPE__ unsigned int
6988// PPC-LINUX:#define __UINTPTR_WIDTH__ 32
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00006989// PPC-LINUX:#define __UINT_FAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00006990// PPC-LINUX:#define __UINT_FAST16_TYPE__ unsigned short
6991// PPC-LINUX:#define __UINT_FAST32_MAX__ 4294967295U
6992// PPC-LINUX:#define __UINT_FAST32_TYPE__ unsigned int
6993// PPC-LINUX:#define __UINT_FAST64_MAX__ 18446744073709551615ULL
6994// PPC-LINUX:#define __UINT_FAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00006995// PPC-LINUX:#define __UINT_FAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00006996// PPC-LINUX:#define __UINT_FAST8_TYPE__ unsigned char
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00006997// PPC-LINUX:#define __UINT_LEAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00006998// PPC-LINUX:#define __UINT_LEAST16_TYPE__ unsigned short
6999// PPC-LINUX:#define __UINT_LEAST32_MAX__ 4294967295U
7000// PPC-LINUX:#define __UINT_LEAST32_TYPE__ unsigned int
7001// PPC-LINUX:#define __UINT_LEAST64_MAX__ 18446744073709551615ULL
7002// PPC-LINUX:#define __UINT_LEAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00007003// PPC-LINUX:#define __UINT_LEAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00007004// PPC-LINUX:#define __UINT_LEAST8_TYPE__ unsigned char
Nico Weber3435ede2012-01-31 02:07:33 +00007005// PPC-LINUX:#define __USER_LABEL_PREFIX__
7006// PPC-LINUX:#define __WCHAR_MAX__ 2147483647
7007// PPC-LINUX:#define __WCHAR_TYPE__ int
7008// PPC-LINUX:#define __WCHAR_WIDTH__ 32
7009// PPC-LINUX:#define __WINT_TYPE__ unsigned int
7010// PPC-LINUX:#define __WINT_UNSIGNED__ 1
7011// PPC-LINUX:#define __WINT_WIDTH__ 32
7012// PPC-LINUX:#define __powerpc__ 1
7013// PPC-LINUX:#define __ppc__ 1
7014//
Eric Christopher1e6fedb2017-03-25 19:26:04 +00007015// 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
7016//
7017// PPC32-LINUX-NOT: _CALL_LINUX
7018//
James Y Knightc97efa42016-02-11 16:51:29 +00007019// 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 +00007020//
7021// PPC-DARWIN:#define _ARCH_PPC 1
7022// PPC-DARWIN:#define _BIG_ENDIAN 1
Tim Northovera6a19f12015-02-06 01:25:07 +00007023// PPC-DARWIN:#define __BIGGEST_ALIGNMENT__ 16
David Fang072d47b2013-05-16 17:51:48 +00007024// PPC-DARWIN:#define __BIG_ENDIAN__ 1
7025// PPC-DARWIN:#define __BYTE_ORDER__ __ORDER_BIG_ENDIAN__
7026// PPC-DARWIN:#define __CHAR16_TYPE__ unsigned short
7027// PPC-DARWIN:#define __CHAR32_TYPE__ unsigned int
7028// PPC-DARWIN:#define __CHAR_BIT__ 8
7029// PPC-DARWIN:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
7030// PPC-DARWIN:#define __DBL_DIG__ 15
7031// PPC-DARWIN:#define __DBL_EPSILON__ 2.2204460492503131e-16
7032// PPC-DARWIN:#define __DBL_HAS_DENORM__ 1
7033// PPC-DARWIN:#define __DBL_HAS_INFINITY__ 1
7034// PPC-DARWIN:#define __DBL_HAS_QUIET_NAN__ 1
7035// PPC-DARWIN:#define __DBL_MANT_DIG__ 53
7036// PPC-DARWIN:#define __DBL_MAX_10_EXP__ 308
7037// PPC-DARWIN:#define __DBL_MAX_EXP__ 1024
7038// PPC-DARWIN:#define __DBL_MAX__ 1.7976931348623157e+308
7039// PPC-DARWIN:#define __DBL_MIN_10_EXP__ (-307)
7040// PPC-DARWIN:#define __DBL_MIN_EXP__ (-1021)
7041// PPC-DARWIN:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00007042// PPC-DARWIN:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
David Fang072d47b2013-05-16 17:51:48 +00007043// PPC-DARWIN:#define __FLT_DENORM_MIN__ 1.40129846e-45F
7044// PPC-DARWIN:#define __FLT_DIG__ 6
7045// PPC-DARWIN:#define __FLT_EPSILON__ 1.19209290e-7F
7046// PPC-DARWIN:#define __FLT_EVAL_METHOD__ 0
7047// PPC-DARWIN:#define __FLT_HAS_DENORM__ 1
7048// PPC-DARWIN:#define __FLT_HAS_INFINITY__ 1
7049// PPC-DARWIN:#define __FLT_HAS_QUIET_NAN__ 1
7050// PPC-DARWIN:#define __FLT_MANT_DIG__ 24
7051// PPC-DARWIN:#define __FLT_MAX_10_EXP__ 38
7052// PPC-DARWIN:#define __FLT_MAX_EXP__ 128
7053// PPC-DARWIN:#define __FLT_MAX__ 3.40282347e+38F
7054// PPC-DARWIN:#define __FLT_MIN_10_EXP__ (-37)
7055// PPC-DARWIN:#define __FLT_MIN_EXP__ (-125)
7056// PPC-DARWIN:#define __FLT_MIN__ 1.17549435e-38F
7057// PPC-DARWIN:#define __FLT_RADIX__ 2
Eric Christopher0d361162017-03-25 05:40:13 +00007058// PPC-DARWIN:#define __HAVE_BSWAP__ 1
James Y Knightc97efa42016-02-11 16:51:29 +00007059// PPC-DARWIN:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007060// PPC-DARWIN:#define __INT16_FMTd__ "hd"
7061// PPC-DARWIN:#define __INT16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00007062// PPC-DARWIN:#define __INT16_MAX__ 32767
David Fang072d47b2013-05-16 17:51:48 +00007063// PPC-DARWIN:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +00007064// PPC-DARWIN:#define __INT32_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007065// PPC-DARWIN:#define __INT32_FMTd__ "d"
7066// PPC-DARWIN:#define __INT32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00007067// PPC-DARWIN:#define __INT32_MAX__ 2147483647
David Fang072d47b2013-05-16 17:51:48 +00007068// PPC-DARWIN:#define __INT32_TYPE__ int
7069// PPC-DARWIN:#define __INT64_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007070// PPC-DARWIN:#define __INT64_FMTd__ "lld"
7071// PPC-DARWIN:#define __INT64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00007072// PPC-DARWIN:#define __INT64_MAX__ 9223372036854775807LL
David Fang072d47b2013-05-16 17:51:48 +00007073// PPC-DARWIN:#define __INT64_TYPE__ long long int
James Y Knightc97efa42016-02-11 16:51:29 +00007074// PPC-DARWIN:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007075// PPC-DARWIN:#define __INT8_FMTd__ "hhd"
7076// PPC-DARWIN:#define __INT8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00007077// PPC-DARWIN:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00007078// PPC-DARWIN:#define __INT8_TYPE__ signed char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00007079// PPC-DARWIN:#define __INTMAX_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007080// PPC-DARWIN:#define __INTMAX_FMTd__ "lld"
7081// PPC-DARWIN:#define __INTMAX_FMTi__ "lli"
David Fang072d47b2013-05-16 17:51:48 +00007082// PPC-DARWIN:#define __INTMAX_MAX__ 9223372036854775807LL
7083// PPC-DARWIN:#define __INTMAX_TYPE__ long long int
7084// PPC-DARWIN:#define __INTMAX_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007085// PPC-DARWIN:#define __INTPTR_FMTd__ "ld"
7086// PPC-DARWIN:#define __INTPTR_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00007087// PPC-DARWIN:#define __INTPTR_MAX__ 2147483647L
David Fang072d47b2013-05-16 17:51:48 +00007088// PPC-DARWIN:#define __INTPTR_TYPE__ long int
7089// PPC-DARWIN:#define __INTPTR_WIDTH__ 32
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007090// PPC-DARWIN:#define __INT_FAST16_FMTd__ "hd"
7091// PPC-DARWIN:#define __INT_FAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00007092// PPC-DARWIN:#define __INT_FAST16_MAX__ 32767
7093// PPC-DARWIN:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007094// PPC-DARWIN:#define __INT_FAST32_FMTd__ "d"
7095// PPC-DARWIN:#define __INT_FAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00007096// PPC-DARWIN:#define __INT_FAST32_MAX__ 2147483647
7097// PPC-DARWIN:#define __INT_FAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007098// PPC-DARWIN:#define __INT_FAST64_FMTd__ "lld"
7099// PPC-DARWIN:#define __INT_FAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00007100// PPC-DARWIN:#define __INT_FAST64_MAX__ 9223372036854775807LL
7101// PPC-DARWIN:#define __INT_FAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007102// PPC-DARWIN:#define __INT_FAST8_FMTd__ "hhd"
7103// PPC-DARWIN:#define __INT_FAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00007104// PPC-DARWIN:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00007105// PPC-DARWIN:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007106// PPC-DARWIN:#define __INT_LEAST16_FMTd__ "hd"
7107// PPC-DARWIN:#define __INT_LEAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00007108// PPC-DARWIN:#define __INT_LEAST16_MAX__ 32767
7109// PPC-DARWIN:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007110// PPC-DARWIN:#define __INT_LEAST32_FMTd__ "d"
7111// PPC-DARWIN:#define __INT_LEAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00007112// PPC-DARWIN:#define __INT_LEAST32_MAX__ 2147483647
7113// PPC-DARWIN:#define __INT_LEAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007114// PPC-DARWIN:#define __INT_LEAST64_FMTd__ "lld"
7115// PPC-DARWIN:#define __INT_LEAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00007116// PPC-DARWIN:#define __INT_LEAST64_MAX__ 9223372036854775807LL
7117// PPC-DARWIN:#define __INT_LEAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007118// PPC-DARWIN:#define __INT_LEAST8_FMTd__ "hhd"
7119// PPC-DARWIN:#define __INT_LEAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00007120// PPC-DARWIN:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00007121// PPC-DARWIN:#define __INT_LEAST8_TYPE__ signed char
David Fang072d47b2013-05-16 17:51:48 +00007122// PPC-DARWIN:#define __INT_MAX__ 2147483647
7123// PPC-DARWIN:#define __LDBL_DENORM_MIN__ 4.94065645841246544176568792868221e-324L
7124// PPC-DARWIN:#define __LDBL_DIG__ 31
7125// PPC-DARWIN:#define __LDBL_EPSILON__ 4.94065645841246544176568792868221e-324L
7126// PPC-DARWIN:#define __LDBL_HAS_DENORM__ 1
7127// PPC-DARWIN:#define __LDBL_HAS_INFINITY__ 1
7128// PPC-DARWIN:#define __LDBL_HAS_QUIET_NAN__ 1
7129// PPC-DARWIN:#define __LDBL_MANT_DIG__ 106
7130// PPC-DARWIN:#define __LDBL_MAX_10_EXP__ 308
7131// PPC-DARWIN:#define __LDBL_MAX_EXP__ 1024
7132// PPC-DARWIN:#define __LDBL_MAX__ 1.79769313486231580793728971405301e+308L
7133// PPC-DARWIN:#define __LDBL_MIN_10_EXP__ (-291)
7134// PPC-DARWIN:#define __LDBL_MIN_EXP__ (-968)
7135// PPC-DARWIN:#define __LDBL_MIN__ 2.00416836000897277799610805135016e-292L
Eric Christopheree214102017-03-25 06:37:23 +00007136// PPC-DARWIN:#define __LONGDOUBLE128 1
David Fang072d47b2013-05-16 17:51:48 +00007137// PPC-DARWIN:#define __LONG_DOUBLE_128__ 1
7138// PPC-DARWIN:#define __LONG_LONG_MAX__ 9223372036854775807LL
7139// PPC-DARWIN:#define __LONG_MAX__ 2147483647L
7140// PPC-DARWIN:#define __MACH__ 1
7141// PPC-DARWIN:#define __NATURAL_ALIGNMENT__ 1
7142// PPC-DARWIN:#define __ORDER_BIG_ENDIAN__ 4321
7143// PPC-DARWIN:#define __ORDER_LITTLE_ENDIAN__ 1234
7144// PPC-DARWIN:#define __ORDER_PDP_ENDIAN__ 3412
7145// PPC-DARWIN:#define __POINTER_WIDTH__ 32
7146// PPC-DARWIN:#define __POWERPC__ 1
Chandler Carruth6aa92ad2013-06-25 11:13:47 +00007147// PPC-DARWIN:#define __PPC__ 1
David Fang072d47b2013-05-16 17:51:48 +00007148// PPC-DARWIN:#define __PTRDIFF_TYPE__ int
7149// PPC-DARWIN:#define __PTRDIFF_WIDTH__ 32
James Y Knightc97efa42016-02-11 16:51:29 +00007150// PPC-DARWIN:#define __REGISTER_PREFIX__
David Fang072d47b2013-05-16 17:51:48 +00007151// PPC-DARWIN:#define __SCHAR_MAX__ 127
7152// PPC-DARWIN:#define __SHRT_MAX__ 32767
Joerg Sonnenbergerb3a49692014-07-17 18:31:20 +00007153// PPC-DARWIN:#define __SIG_ATOMIC_MAX__ 2147483647
David Fang072d47b2013-05-16 17:51:48 +00007154// PPC-DARWIN:#define __SIG_ATOMIC_WIDTH__ 32
7155// PPC-DARWIN:#define __SIZEOF_DOUBLE__ 8
7156// PPC-DARWIN:#define __SIZEOF_FLOAT__ 4
7157// PPC-DARWIN:#define __SIZEOF_INT__ 4
7158// PPC-DARWIN:#define __SIZEOF_LONG_DOUBLE__ 16
7159// PPC-DARWIN:#define __SIZEOF_LONG_LONG__ 8
7160// PPC-DARWIN:#define __SIZEOF_LONG__ 4
7161// PPC-DARWIN:#define __SIZEOF_POINTER__ 4
7162// PPC-DARWIN:#define __SIZEOF_PTRDIFF_T__ 4
7163// PPC-DARWIN:#define __SIZEOF_SHORT__ 2
7164// PPC-DARWIN:#define __SIZEOF_SIZE_T__ 4
7165// PPC-DARWIN:#define __SIZEOF_WCHAR_T__ 4
7166// PPC-DARWIN:#define __SIZEOF_WINT_T__ 4
7167// PPC-DARWIN:#define __SIZE_MAX__ 4294967295UL
7168// PPC-DARWIN:#define __SIZE_TYPE__ long unsigned int
7169// PPC-DARWIN:#define __SIZE_WIDTH__ 32
7170// PPC-DARWIN:#define __STDC_HOSTED__ 0
Richard Smithab506ad2014-10-20 23:26:58 +00007171// PPC-DARWIN:#define __STDC_VERSION__ 201112L
David Fang072d47b2013-05-16 17:51:48 +00007172// PPC-DARWIN:#define __STDC__ 1
James Y Knightc97efa42016-02-11 16:51:29 +00007173// PPC-DARWIN:#define __UINT16_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00007174// PPC-DARWIN:#define __UINT16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00007175// PPC-DARWIN:#define __UINT16_TYPE__ unsigned short
7176// PPC-DARWIN:#define __UINT32_C_SUFFIX__ U
7177// PPC-DARWIN:#define __UINT32_MAX__ 4294967295U
7178// PPC-DARWIN:#define __UINT32_TYPE__ unsigned int
7179// PPC-DARWIN:#define __UINT64_C_SUFFIX__ ULL
7180// PPC-DARWIN:#define __UINT64_MAX__ 18446744073709551615ULL
7181// PPC-DARWIN:#define __UINT64_TYPE__ long long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00007182// PPC-DARWIN:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00007183// PPC-DARWIN:#define __UINT8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00007184// PPC-DARWIN:#define __UINT8_TYPE__ unsigned char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00007185// PPC-DARWIN:#define __UINTMAX_C_SUFFIX__ ULL
JF Bastienab8d0a02014-06-25 01:31:33 +00007186// PPC-DARWIN:#define __UINTMAX_MAX__ 18446744073709551615ULL
David Fang072d47b2013-05-16 17:51:48 +00007187// PPC-DARWIN:#define __UINTMAX_TYPE__ long long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00007188// PPC-DARWIN:#define __UINTMAX_WIDTH__ 64
James Y Knightc97efa42016-02-11 16:51:29 +00007189// PPC-DARWIN:#define __UINTPTR_MAX__ 4294967295UL
Joerg Sonnenberger3809a7a2014-07-14 20:40:56 +00007190// PPC-DARWIN:#define __UINTPTR_TYPE__ long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00007191// PPC-DARWIN:#define __UINTPTR_WIDTH__ 32
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00007192// PPC-DARWIN:#define __UINT_FAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00007193// PPC-DARWIN:#define __UINT_FAST16_TYPE__ unsigned short
7194// PPC-DARWIN:#define __UINT_FAST32_MAX__ 4294967295U
7195// PPC-DARWIN:#define __UINT_FAST32_TYPE__ unsigned int
7196// PPC-DARWIN:#define __UINT_FAST64_MAX__ 18446744073709551615ULL
7197// PPC-DARWIN:#define __UINT_FAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00007198// PPC-DARWIN:#define __UINT_FAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00007199// PPC-DARWIN:#define __UINT_FAST8_TYPE__ unsigned char
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00007200// PPC-DARWIN:#define __UINT_LEAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00007201// PPC-DARWIN:#define __UINT_LEAST16_TYPE__ unsigned short
7202// PPC-DARWIN:#define __UINT_LEAST32_MAX__ 4294967295U
7203// PPC-DARWIN:#define __UINT_LEAST32_TYPE__ unsigned int
7204// PPC-DARWIN:#define __UINT_LEAST64_MAX__ 18446744073709551615ULL
7205// PPC-DARWIN:#define __UINT_LEAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00007206// PPC-DARWIN:#define __UINT_LEAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00007207// PPC-DARWIN:#define __UINT_LEAST8_TYPE__ unsigned char
David Fang072d47b2013-05-16 17:51:48 +00007208// PPC-DARWIN:#define __USER_LABEL_PREFIX__ _
7209// PPC-DARWIN:#define __WCHAR_MAX__ 2147483647
7210// PPC-DARWIN:#define __WCHAR_TYPE__ int
7211// PPC-DARWIN:#define __WCHAR_WIDTH__ 32
7212// PPC-DARWIN:#define __WINT_TYPE__ int
7213// PPC-DARWIN:#define __WINT_WIDTH__ 32
7214// PPC-DARWIN:#define __powerpc__ 1
7215// PPC-DARWIN:#define __ppc__ 1
Eric Christopherdec1b922017-03-16 22:31:07 +00007216
7217// RUN: %clang_cc1 -E -dM -ffreestanding -triple=powerpc64-apple-darwin8 < /dev/null | FileCheck -match-full-lines -check-prefix PPC64-DARWIN %s
7218// PPC64-DARWIN:#define __STRUCT_PARM_ALIGN__ 16
7219
James Y Knightc97efa42016-02-11 16:51:29 +00007220// RUN: %clang_cc1 -x cl -E -dM -ffreestanding -triple=amdgcn < /dev/null | FileCheck -match-full-lines -check-prefix AMDGCN --check-prefix AMDGPU %s
7221// 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 +00007222//
Matt Arsenaultf333de32016-09-07 07:08:02 +00007223// AMDGPU:#define __ENDIAN_LITTLE__ 1
Tom Stellard22041372015-07-17 13:16:52 +00007224// AMDGPU:#define cl_khr_byte_addressable_store 1
Tom Stellardfded50f2015-02-27 15:10:19 +00007225// AMDGCN:#define cl_khr_fp64 1
Tom Stellard22041372015-07-17 13:16:52 +00007226// AMDGPU:#define cl_khr_global_int32_base_atomics 1
7227// AMDGPU:#define cl_khr_global_int32_extended_atomics 1
7228// AMDGPU:#define cl_khr_local_int32_base_atomics 1
7229// AMDGPU:#define cl_khr_local_int32_extended_atomics 1
Tom Stellardfded50f2015-02-27 15:10:19 +00007230
James Y Knightc97efa42016-02-11 16:51:29 +00007231// 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 +00007232// 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 +00007233//
Tim Northovera6a19f12015-02-06 01:25:07 +00007234// S390X:#define __BIGGEST_ALIGNMENT__ 8
Ulrich Weigand47445072013-05-06 16:26:41 +00007235// S390X:#define __CHAR16_TYPE__ unsigned short
7236// S390X:#define __CHAR32_TYPE__ unsigned int
7237// S390X:#define __CHAR_BIT__ 8
7238// S390X:#define __CHAR_UNSIGNED__ 1
7239// S390X:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
7240// S390X:#define __DBL_DIG__ 15
7241// S390X:#define __DBL_EPSILON__ 2.2204460492503131e-16
7242// S390X:#define __DBL_HAS_DENORM__ 1
7243// S390X:#define __DBL_HAS_INFINITY__ 1
7244// S390X:#define __DBL_HAS_QUIET_NAN__ 1
7245// S390X:#define __DBL_MANT_DIG__ 53
7246// S390X:#define __DBL_MAX_10_EXP__ 308
7247// S390X:#define __DBL_MAX_EXP__ 1024
7248// S390X:#define __DBL_MAX__ 1.7976931348623157e+308
7249// S390X:#define __DBL_MIN_10_EXP__ (-307)
7250// S390X:#define __DBL_MIN_EXP__ (-1021)
7251// S390X:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00007252// S390X:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Ulrich Weigand47445072013-05-06 16:26:41 +00007253// S390X:#define __FLT_DENORM_MIN__ 1.40129846e-45F
7254// S390X:#define __FLT_DIG__ 6
7255// S390X:#define __FLT_EPSILON__ 1.19209290e-7F
7256// S390X:#define __FLT_EVAL_METHOD__ 0
7257// S390X:#define __FLT_HAS_DENORM__ 1
7258// S390X:#define __FLT_HAS_INFINITY__ 1
7259// S390X:#define __FLT_HAS_QUIET_NAN__ 1
7260// S390X:#define __FLT_MANT_DIG__ 24
7261// S390X:#define __FLT_MAX_10_EXP__ 38
7262// S390X:#define __FLT_MAX_EXP__ 128
7263// S390X:#define __FLT_MAX__ 3.40282347e+38F
7264// S390X:#define __FLT_MIN_10_EXP__ (-37)
7265// S390X:#define __FLT_MIN_EXP__ (-125)
7266// S390X:#define __FLT_MIN__ 1.17549435e-38F
7267// S390X:#define __FLT_RADIX__ 2
James Y Knightc97efa42016-02-11 16:51:29 +00007268// S390X:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007269// S390X:#define __INT16_FMTd__ "hd"
7270// S390X:#define __INT16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00007271// S390X:#define __INT16_MAX__ 32767
Ulrich Weigand47445072013-05-06 16:26:41 +00007272// S390X:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +00007273// S390X:#define __INT32_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007274// S390X:#define __INT32_FMTd__ "d"
7275// S390X:#define __INT32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00007276// S390X:#define __INT32_MAX__ 2147483647
Ulrich Weigand47445072013-05-06 16:26:41 +00007277// S390X:#define __INT32_TYPE__ int
Ulrich Weigand881497a2015-03-30 13:50:21 +00007278// S390X:#define __INT64_C_SUFFIX__ L
7279// S390X:#define __INT64_FMTd__ "ld"
7280// S390X:#define __INT64_FMTi__ "li"
7281// S390X:#define __INT64_MAX__ 9223372036854775807L
7282// S390X:#define __INT64_TYPE__ long int
James Y Knightc97efa42016-02-11 16:51:29 +00007283// S390X:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007284// S390X:#define __INT8_FMTd__ "hhd"
7285// S390X:#define __INT8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00007286// S390X:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00007287// S390X:#define __INT8_TYPE__ signed char
Ulrich Weigand881497a2015-03-30 13:50:21 +00007288// S390X:#define __INTMAX_C_SUFFIX__ L
7289// S390X:#define __INTMAX_FMTd__ "ld"
7290// S390X:#define __INTMAX_FMTi__ "li"
7291// S390X:#define __INTMAX_MAX__ 9223372036854775807L
7292// S390X:#define __INTMAX_TYPE__ long int
Ulrich Weigand47445072013-05-06 16:26:41 +00007293// S390X:#define __INTMAX_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007294// S390X:#define __INTPTR_FMTd__ "ld"
7295// S390X:#define __INTPTR_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00007296// S390X:#define __INTPTR_MAX__ 9223372036854775807L
Ulrich Weigand47445072013-05-06 16:26:41 +00007297// S390X:#define __INTPTR_TYPE__ long int
7298// S390X:#define __INTPTR_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007299// S390X:#define __INT_FAST16_FMTd__ "hd"
7300// S390X:#define __INT_FAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00007301// S390X:#define __INT_FAST16_MAX__ 32767
7302// S390X:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007303// S390X:#define __INT_FAST32_FMTd__ "d"
7304// S390X:#define __INT_FAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00007305// S390X:#define __INT_FAST32_MAX__ 2147483647
7306// S390X:#define __INT_FAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007307// S390X:#define __INT_FAST64_FMTd__ "ld"
7308// S390X:#define __INT_FAST64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00007309// S390X:#define __INT_FAST64_MAX__ 9223372036854775807L
7310// S390X:#define __INT_FAST64_TYPE__ long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007311// S390X:#define __INT_FAST8_FMTd__ "hhd"
7312// S390X:#define __INT_FAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00007313// S390X:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00007314// S390X:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007315// S390X:#define __INT_LEAST16_FMTd__ "hd"
7316// S390X:#define __INT_LEAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00007317// S390X:#define __INT_LEAST16_MAX__ 32767
7318// S390X:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007319// S390X:#define __INT_LEAST32_FMTd__ "d"
7320// S390X:#define __INT_LEAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00007321// S390X:#define __INT_LEAST32_MAX__ 2147483647
7322// S390X:#define __INT_LEAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007323// S390X:#define __INT_LEAST64_FMTd__ "ld"
7324// S390X:#define __INT_LEAST64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00007325// S390X:#define __INT_LEAST64_MAX__ 9223372036854775807L
7326// S390X:#define __INT_LEAST64_TYPE__ long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007327// S390X:#define __INT_LEAST8_FMTd__ "hhd"
7328// S390X:#define __INT_LEAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00007329// S390X:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00007330// S390X:#define __INT_LEAST8_TYPE__ signed char
Ulrich Weigand47445072013-05-06 16:26:41 +00007331// S390X:#define __INT_MAX__ 2147483647
7332// S390X:#define __LDBL_DENORM_MIN__ 6.47517511943802511092443895822764655e-4966L
7333// S390X:#define __LDBL_DIG__ 33
7334// S390X:#define __LDBL_EPSILON__ 1.92592994438723585305597794258492732e-34L
7335// S390X:#define __LDBL_HAS_DENORM__ 1
7336// S390X:#define __LDBL_HAS_INFINITY__ 1
7337// S390X:#define __LDBL_HAS_QUIET_NAN__ 1
7338// S390X:#define __LDBL_MANT_DIG__ 113
7339// S390X:#define __LDBL_MAX_10_EXP__ 4932
7340// S390X:#define __LDBL_MAX_EXP__ 16384
7341// S390X:#define __LDBL_MAX__ 1.18973149535723176508575932662800702e+4932L
7342// S390X:#define __LDBL_MIN_10_EXP__ (-4931)
7343// S390X:#define __LDBL_MIN_EXP__ (-16381)
7344// S390X:#define __LDBL_MIN__ 3.36210314311209350626267781732175260e-4932L
7345// S390X:#define __LONG_LONG_MAX__ 9223372036854775807LL
7346// S390X:#define __LONG_MAX__ 9223372036854775807L
7347// S390X:#define __NO_INLINE__ 1
7348// S390X:#define __POINTER_WIDTH__ 64
7349// S390X:#define __PTRDIFF_TYPE__ long int
7350// S390X:#define __PTRDIFF_WIDTH__ 64
7351// S390X:#define __SCHAR_MAX__ 127
7352// S390X:#define __SHRT_MAX__ 32767
Joerg Sonnenbergerb3a49692014-07-17 18:31:20 +00007353// S390X:#define __SIG_ATOMIC_MAX__ 2147483647
Ulrich Weigand47445072013-05-06 16:26:41 +00007354// S390X:#define __SIG_ATOMIC_WIDTH__ 32
7355// S390X:#define __SIZEOF_DOUBLE__ 8
7356// S390X:#define __SIZEOF_FLOAT__ 4
7357// S390X:#define __SIZEOF_INT__ 4
7358// S390X:#define __SIZEOF_LONG_DOUBLE__ 16
7359// S390X:#define __SIZEOF_LONG_LONG__ 8
7360// S390X:#define __SIZEOF_LONG__ 8
7361// S390X:#define __SIZEOF_POINTER__ 8
7362// S390X:#define __SIZEOF_PTRDIFF_T__ 8
7363// S390X:#define __SIZEOF_SHORT__ 2
7364// S390X:#define __SIZEOF_SIZE_T__ 8
7365// S390X:#define __SIZEOF_WCHAR_T__ 4
7366// S390X:#define __SIZEOF_WINT_T__ 4
7367// S390X:#define __SIZE_TYPE__ long unsigned int
7368// S390X:#define __SIZE_WIDTH__ 64
Richard Smith59139022016-09-30 22:41:36 +00007369// S390X-CXX:#define __STDCPP_DEFAULT_NEW_ALIGNMENT__ 8UL
James Y Knightc97efa42016-02-11 16:51:29 +00007370// S390X:#define __UINT16_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00007371// S390X:#define __UINT16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00007372// S390X:#define __UINT16_TYPE__ unsigned short
7373// S390X:#define __UINT32_C_SUFFIX__ U
7374// S390X:#define __UINT32_MAX__ 4294967295U
7375// S390X:#define __UINT32_TYPE__ unsigned int
Ulrich Weigand881497a2015-03-30 13:50:21 +00007376// S390X:#define __UINT64_C_SUFFIX__ UL
7377// S390X:#define __UINT64_MAX__ 18446744073709551615UL
7378// S390X:#define __UINT64_TYPE__ long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00007379// S390X:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00007380// S390X:#define __UINT8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00007381// S390X:#define __UINT8_TYPE__ unsigned char
Ulrich Weigand881497a2015-03-30 13:50:21 +00007382// S390X:#define __UINTMAX_C_SUFFIX__ UL
7383// S390X:#define __UINTMAX_MAX__ 18446744073709551615UL
7384// S390X:#define __UINTMAX_TYPE__ long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00007385// S390X:#define __UINTMAX_WIDTH__ 64
7386// S390X:#define __UINTPTR_MAX__ 18446744073709551615UL
7387// S390X:#define __UINTPTR_TYPE__ long unsigned int
7388// S390X:#define __UINTPTR_WIDTH__ 64
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00007389// S390X:#define __UINT_FAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00007390// S390X:#define __UINT_FAST16_TYPE__ unsigned short
7391// S390X:#define __UINT_FAST32_MAX__ 4294967295U
7392// S390X:#define __UINT_FAST32_TYPE__ unsigned int
7393// S390X:#define __UINT_FAST64_MAX__ 18446744073709551615UL
7394// S390X:#define __UINT_FAST64_TYPE__ long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00007395// S390X:#define __UINT_FAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00007396// S390X:#define __UINT_FAST8_TYPE__ unsigned char
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00007397// S390X:#define __UINT_LEAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00007398// S390X:#define __UINT_LEAST16_TYPE__ unsigned short
7399// S390X:#define __UINT_LEAST32_MAX__ 4294967295U
7400// S390X:#define __UINT_LEAST32_TYPE__ unsigned int
7401// S390X:#define __UINT_LEAST64_MAX__ 18446744073709551615UL
7402// S390X:#define __UINT_LEAST64_TYPE__ long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00007403// S390X:#define __UINT_LEAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00007404// S390X:#define __UINT_LEAST8_TYPE__ unsigned char
James Y Knightb214cbc2016-03-04 19:00:41 +00007405// S390X:#define __USER_LABEL_PREFIX__
Ulrich Weigand47445072013-05-06 16:26:41 +00007406// S390X:#define __WCHAR_MAX__ 2147483647
7407// S390X:#define __WCHAR_TYPE__ int
7408// S390X:#define __WCHAR_WIDTH__ 32
7409// S390X:#define __WINT_TYPE__ int
7410// S390X:#define __WINT_WIDTH__ 32
7411// S390X:#define __s390__ 1
7412// S390X:#define __s390x__ 1
7413//
James Y Knightb214cbc2016-03-04 19:00:41 +00007414// RUN: %clang_cc1 -E -dM -ffreestanding -triple=sparc-none-none < /dev/null | FileCheck -match-full-lines -check-prefix SPARC -check-prefix SPARC-DEFAULT %s
7415// RUN: %clang_cc1 -E -dM -ffreestanding -triple=sparc-rtems-elf < /dev/null | FileCheck -match-full-lines -check-prefix SPARC -check-prefix SPARC-DEFAULT %s
7416// RUN: %clang_cc1 -E -dM -ffreestanding -triple=sparc-none-netbsd < /dev/null | FileCheck -match-full-lines -check-prefix SPARC -check-prefix SPARC-NETOPENBSD %s
7417// 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 +00007418// 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
7419// 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 +00007420//
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00007421// SPARC-NOT:#define _LP64
Tim Northovera6a19f12015-02-06 01:25:07 +00007422// SPARC:#define __BIGGEST_ALIGNMENT__ 8
Robert Lytton2c942c62014-03-10 12:06:29 +00007423// SPARC:#define __BIG_ENDIAN__ 1
Dylan Noblesmith673728f2012-07-27 18:34:31 +00007424// SPARC:#define __BYTE_ORDER__ __ORDER_BIG_ENDIAN__
Dan Gohman04f87202010-05-28 00:27:15 +00007425// SPARC:#define __CHAR16_TYPE__ unsigned short
7426// SPARC:#define __CHAR32_TYPE__ unsigned int
Chris Lattnere963d092009-10-29 04:55:36 +00007427// SPARC:#define __CHAR_BIT__ 8
7428// SPARC:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
7429// SPARC:#define __DBL_DIG__ 15
7430// SPARC:#define __DBL_EPSILON__ 2.2204460492503131e-16
7431// SPARC:#define __DBL_HAS_DENORM__ 1
7432// SPARC:#define __DBL_HAS_INFINITY__ 1
7433// SPARC:#define __DBL_HAS_QUIET_NAN__ 1
7434// SPARC:#define __DBL_MANT_DIG__ 53
7435// SPARC:#define __DBL_MAX_10_EXP__ 308
7436// SPARC:#define __DBL_MAX_EXP__ 1024
7437// SPARC:#define __DBL_MAX__ 1.7976931348623157e+308
7438// SPARC:#define __DBL_MIN_10_EXP__ (-307)
7439// SPARC:#define __DBL_MIN_EXP__ (-1021)
7440// SPARC:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00007441// SPARC:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Chris Lattnere963d092009-10-29 04:55:36 +00007442// SPARC:#define __FLT_DENORM_MIN__ 1.40129846e-45F
7443// SPARC:#define __FLT_DIG__ 6
7444// SPARC:#define __FLT_EPSILON__ 1.19209290e-7F
7445// SPARC:#define __FLT_EVAL_METHOD__ 0
7446// SPARC:#define __FLT_HAS_DENORM__ 1
7447// SPARC:#define __FLT_HAS_INFINITY__ 1
7448// SPARC:#define __FLT_HAS_QUIET_NAN__ 1
7449// SPARC:#define __FLT_MANT_DIG__ 24
7450// SPARC:#define __FLT_MAX_10_EXP__ 38
7451// SPARC:#define __FLT_MAX_EXP__ 128
7452// SPARC:#define __FLT_MAX__ 3.40282347e+38F
7453// SPARC:#define __FLT_MIN_10_EXP__ (-37)
7454// SPARC:#define __FLT_MIN_EXP__ (-125)
7455// SPARC:#define __FLT_MIN__ 1.17549435e-38F
7456// SPARC:#define __FLT_RADIX__ 2
Douglas Katzman13f4a912016-11-09 15:43:51 +00007457// SPARC:#define __GCC_ATOMIC_LLONG_LOCK_FREE 1
James Y Knightc97efa42016-02-11 16:51:29 +00007458// SPARC:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007459// SPARC:#define __INT16_FMTd__ "hd"
7460// SPARC:#define __INT16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00007461// SPARC:#define __INT16_MAX__ 32767
Chris Lattnere963d092009-10-29 04:55:36 +00007462// SPARC:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +00007463// SPARC:#define __INT32_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007464// SPARC:#define __INT32_FMTd__ "d"
7465// SPARC:#define __INT32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00007466// SPARC:#define __INT32_MAX__ 2147483647
Chris Lattnere963d092009-10-29 04:55:36 +00007467// SPARC:#define __INT32_TYPE__ int
Ken Dyck2dc8d5f2009-11-16 16:36:33 +00007468// SPARC:#define __INT64_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007469// SPARC:#define __INT64_FMTd__ "lld"
7470// SPARC:#define __INT64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00007471// SPARC:#define __INT64_MAX__ 9223372036854775807LL
Chris Lattnere963d092009-10-29 04:55:36 +00007472// SPARC:#define __INT64_TYPE__ long long int
James Y Knightc97efa42016-02-11 16:51:29 +00007473// SPARC:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007474// SPARC:#define __INT8_FMTd__ "hhd"
7475// SPARC:#define __INT8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00007476// SPARC:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00007477// SPARC:#define __INT8_TYPE__ signed char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00007478// SPARC:#define __INTMAX_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007479// SPARC:#define __INTMAX_FMTd__ "lld"
7480// SPARC:#define __INTMAX_FMTi__ "lli"
Chris Lattnere963d092009-10-29 04:55:36 +00007481// SPARC:#define __INTMAX_MAX__ 9223372036854775807LL
Ken Dyck9b25f782009-11-19 13:18:59 +00007482// SPARC:#define __INTMAX_TYPE__ long long int
Ken Dyckc0c98292009-11-18 13:52:57 +00007483// SPARC:#define __INTMAX_WIDTH__ 64
James Y Knightb214cbc2016-03-04 19:00:41 +00007484// SPARC-DEFAULT:#define __INTPTR_FMTd__ "d"
7485// SPARC-DEFAULT:#define __INTPTR_FMTi__ "i"
7486// SPARC-DEFAULT:#define __INTPTR_MAX__ 2147483647
7487// SPARC-DEFAULT:#define __INTPTR_TYPE__ int
7488// SPARC-NETOPENBSD:#define __INTPTR_FMTd__ "ld"
7489// SPARC-NETOPENBSD:#define __INTPTR_FMTi__ "li"
7490// SPARC-NETOPENBSD:#define __INTPTR_MAX__ 2147483647L
7491// SPARC-NETOPENBSD:#define __INTPTR_TYPE__ long int
Ken Dyck24cfcf12009-11-18 20:05:48 +00007492// SPARC:#define __INTPTR_WIDTH__ 32
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007493// SPARC:#define __INT_FAST16_FMTd__ "hd"
7494// SPARC:#define __INT_FAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00007495// SPARC:#define __INT_FAST16_MAX__ 32767
7496// SPARC:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007497// SPARC:#define __INT_FAST32_FMTd__ "d"
7498// SPARC:#define __INT_FAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00007499// SPARC:#define __INT_FAST32_MAX__ 2147483647
7500// SPARC:#define __INT_FAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007501// SPARC:#define __INT_FAST64_FMTd__ "lld"
7502// SPARC:#define __INT_FAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00007503// SPARC:#define __INT_FAST64_MAX__ 9223372036854775807LL
7504// SPARC:#define __INT_FAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007505// SPARC:#define __INT_FAST8_FMTd__ "hhd"
7506// SPARC:#define __INT_FAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00007507// SPARC:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00007508// SPARC:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007509// SPARC:#define __INT_LEAST16_FMTd__ "hd"
7510// SPARC:#define __INT_LEAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00007511// SPARC:#define __INT_LEAST16_MAX__ 32767
7512// SPARC:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007513// SPARC:#define __INT_LEAST32_FMTd__ "d"
7514// SPARC:#define __INT_LEAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00007515// SPARC:#define __INT_LEAST32_MAX__ 2147483647
7516// SPARC:#define __INT_LEAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007517// SPARC:#define __INT_LEAST64_FMTd__ "lld"
7518// SPARC:#define __INT_LEAST64_FMTi__ "lli"
JF Bastienab8d0a02014-06-25 01:31:33 +00007519// SPARC:#define __INT_LEAST64_MAX__ 9223372036854775807LL
7520// SPARC:#define __INT_LEAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007521// SPARC:#define __INT_LEAST8_FMTd__ "hhd"
7522// SPARC:#define __INT_LEAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00007523// SPARC:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00007524// SPARC:#define __INT_LEAST8_TYPE__ signed char
Chris Lattnere963d092009-10-29 04:55:36 +00007525// SPARC:#define __INT_MAX__ 2147483647
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00007526// SPARC:#define __LDBL_DENORM_MIN__ 4.9406564584124654e-324L
Chris Lattnere963d092009-10-29 04:55:36 +00007527// SPARC:#define __LDBL_DIG__ 15
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00007528// SPARC:#define __LDBL_EPSILON__ 2.2204460492503131e-16L
Chris Lattnere963d092009-10-29 04:55:36 +00007529// SPARC:#define __LDBL_HAS_DENORM__ 1
7530// SPARC:#define __LDBL_HAS_INFINITY__ 1
7531// SPARC:#define __LDBL_HAS_QUIET_NAN__ 1
7532// SPARC:#define __LDBL_MANT_DIG__ 53
7533// SPARC:#define __LDBL_MAX_10_EXP__ 308
7534// SPARC:#define __LDBL_MAX_EXP__ 1024
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00007535// SPARC:#define __LDBL_MAX__ 1.7976931348623157e+308L
Chris Lattnere963d092009-10-29 04:55:36 +00007536// SPARC:#define __LDBL_MIN_10_EXP__ (-307)
7537// SPARC:#define __LDBL_MIN_EXP__ (-1021)
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00007538// SPARC:#define __LDBL_MIN__ 2.2250738585072014e-308L
Chris Lattnere963d092009-10-29 04:55:36 +00007539// SPARC:#define __LONG_LONG_MAX__ 9223372036854775807LL
7540// SPARC:#define __LONG_MAX__ 2147483647L
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00007541// SPARC-NOT:#define __LP64__
Chris Lattnere963d092009-10-29 04:55:36 +00007542// SPARC:#define __POINTER_WIDTH__ 32
James Y Knightb214cbc2016-03-04 19:00:41 +00007543// SPARC-DEFAULT:#define __PTRDIFF_TYPE__ int
7544// SPARC-NETOPENBSD:#define __PTRDIFF_TYPE__ long int
Ken Dyck056efe02009-11-19 12:21:52 +00007545// SPARC:#define __PTRDIFF_WIDTH__ 32
Daniel Dunbaracde99e2009-12-18 18:42:37 +00007546// SPARC:#define __REGISTER_PREFIX__
Chris Lattnere963d092009-10-29 04:55:36 +00007547// SPARC:#define __SCHAR_MAX__ 127
7548// SPARC:#define __SHRT_MAX__ 32767
Joerg Sonnenbergerb3a49692014-07-17 18:31:20 +00007549// SPARC:#define __SIG_ATOMIC_MAX__ 2147483647
Ken Dyckadc85112009-11-22 15:41:04 +00007550// SPARC:#define __SIG_ATOMIC_WIDTH__ 32
Dan Gohman04f87202010-05-28 00:27:15 +00007551// SPARC:#define __SIZEOF_DOUBLE__ 8
7552// SPARC:#define __SIZEOF_FLOAT__ 4
7553// SPARC:#define __SIZEOF_INT__ 4
7554// SPARC:#define __SIZEOF_LONG_DOUBLE__ 8
7555// SPARC:#define __SIZEOF_LONG_LONG__ 8
7556// SPARC:#define __SIZEOF_LONG__ 4
7557// SPARC:#define __SIZEOF_POINTER__ 4
7558// SPARC:#define __SIZEOF_PTRDIFF_T__ 4
7559// SPARC:#define __SIZEOF_SHORT__ 2
7560// SPARC:#define __SIZEOF_SIZE_T__ 4
7561// SPARC:#define __SIZEOF_WCHAR_T__ 4
7562// SPARC:#define __SIZEOF_WINT_T__ 4
James Y Knightb214cbc2016-03-04 19:00:41 +00007563// SPARC-DEFAULT:#define __SIZE_MAX__ 4294967295U
7564// SPARC-DEFAULT:#define __SIZE_TYPE__ unsigned int
7565// SPARC-NETOPENBSD:#define __SIZE_MAX__ 4294967295UL
7566// SPARC-NETOPENBSD:#define __SIZE_TYPE__ long unsigned int
Ken Dyck57512862009-11-19 13:42:09 +00007567// SPARC:#define __SIZE_WIDTH__ 32
Richard Smith59139022016-09-30 22:41:36 +00007568// SPARC-DEFAULT-CXX:#define __STDCPP_DEFAULT_NEW_ALIGNMENT__ 8U
7569// SPARC-NETOPENBSD-CXX:#define __STDCPP_DEFAULT_NEW_ALIGNMENT__ 8UL
James Y Knightc97efa42016-02-11 16:51:29 +00007570// SPARC:#define __UINT16_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00007571// SPARC:#define __UINT16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00007572// SPARC:#define __UINT16_TYPE__ unsigned short
7573// SPARC:#define __UINT32_C_SUFFIX__ U
7574// SPARC:#define __UINT32_MAX__ 4294967295U
7575// SPARC:#define __UINT32_TYPE__ unsigned int
7576// SPARC:#define __UINT64_C_SUFFIX__ ULL
7577// SPARC:#define __UINT64_MAX__ 18446744073709551615ULL
7578// SPARC:#define __UINT64_TYPE__ long long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00007579// SPARC:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00007580// SPARC:#define __UINT8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00007581// SPARC:#define __UINT8_TYPE__ unsigned char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00007582// SPARC:#define __UINTMAX_C_SUFFIX__ ULL
JF Bastienab8d0a02014-06-25 01:31:33 +00007583// SPARC:#define __UINTMAX_MAX__ 18446744073709551615ULL
Ken Dyck9b25f782009-11-19 13:18:59 +00007584// SPARC:#define __UINTMAX_TYPE__ long long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00007585// SPARC:#define __UINTMAX_WIDTH__ 64
James Y Knightb214cbc2016-03-04 19:00:41 +00007586// SPARC-DEFAULT:#define __UINTPTR_MAX__ 4294967295U
7587// SPARC-DEFAULT:#define __UINTPTR_TYPE__ unsigned int
7588// SPARC-NETOPENBSD:#define __UINTPTR_MAX__ 4294967295UL
7589// SPARC-NETOPENBSD:#define __UINTPTR_TYPE__ long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00007590// SPARC:#define __UINTPTR_WIDTH__ 32
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00007591// SPARC:#define __UINT_FAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00007592// SPARC:#define __UINT_FAST16_TYPE__ unsigned short
7593// SPARC:#define __UINT_FAST32_MAX__ 4294967295U
7594// SPARC:#define __UINT_FAST32_TYPE__ unsigned int
7595// SPARC:#define __UINT_FAST64_MAX__ 18446744073709551615ULL
7596// SPARC:#define __UINT_FAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00007597// SPARC:#define __UINT_FAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00007598// SPARC:#define __UINT_FAST8_TYPE__ unsigned char
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00007599// SPARC:#define __UINT_LEAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00007600// SPARC:#define __UINT_LEAST16_TYPE__ unsigned short
7601// SPARC:#define __UINT_LEAST32_MAX__ 4294967295U
7602// SPARC:#define __UINT_LEAST32_TYPE__ unsigned int
7603// SPARC:#define __UINT_LEAST64_MAX__ 18446744073709551615ULL
7604// SPARC:#define __UINT_LEAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00007605// SPARC:#define __UINT_LEAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00007606// SPARC:#define __UINT_LEAST8_TYPE__ unsigned char
James Y Knightb214cbc2016-03-04 19:00:41 +00007607// SPARC:#define __USER_LABEL_PREFIX__
James Y Knightc97efa42016-02-11 16:51:29 +00007608// SPARC:#define __VERSION__ "4.2.1 Compatible{{.*}}
Chris Lattnere963d092009-10-29 04:55:36 +00007609// SPARC:#define __WCHAR_MAX__ 2147483647
7610// SPARC:#define __WCHAR_TYPE__ int
Ken Dyck0138b9e2009-11-19 15:47:58 +00007611// SPARC:#define __WCHAR_WIDTH__ 32
Chris Lattnere963d092009-10-29 04:55:36 +00007612// SPARC:#define __WINT_TYPE__ int
Ken Dycka1f677c2009-11-19 14:16:57 +00007613// SPARC:#define __WINT_WIDTH__ 32
Chris Lattnere963d092009-10-29 04:55:36 +00007614// SPARC:#define __sparc 1
7615// SPARC:#define __sparc__ 1
7616// SPARC:#define __sparcv8 1
7617// SPARC:#define sparc 1
James Y Knight4b4d19e2015-06-04 15:36:29 +00007618
James Y Knightc97efa42016-02-11 16:51:29 +00007619// 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 +00007620// 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 +00007621//
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00007622// TCE-NOT:#define _LP64
Tim Northovera6a19f12015-02-06 01:25:07 +00007623// TCE:#define __BIGGEST_ALIGNMENT__ 4
Robert Lytton2c942c62014-03-10 12:06:29 +00007624// TCE:#define __BIG_ENDIAN__ 1
Dylan Noblesmith673728f2012-07-27 18:34:31 +00007625// TCE:#define __BYTE_ORDER__ __ORDER_BIG_ENDIAN__
Dan Gohman04f87202010-05-28 00:27:15 +00007626// TCE:#define __CHAR16_TYPE__ unsigned short
7627// TCE:#define __CHAR32_TYPE__ unsigned int
Chris Lattnere963d092009-10-29 04:55:36 +00007628// TCE:#define __CHAR_BIT__ 8
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00007629// TCE:#define __DBL_DENORM_MIN__ 1.40129846e-45
Chris Lattnere963d092009-10-29 04:55:36 +00007630// TCE:#define __DBL_DIG__ 6
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00007631// TCE:#define __DBL_EPSILON__ 1.19209290e-7
Chris Lattnere963d092009-10-29 04:55:36 +00007632// TCE:#define __DBL_HAS_DENORM__ 1
7633// TCE:#define __DBL_HAS_INFINITY__ 1
7634// TCE:#define __DBL_HAS_QUIET_NAN__ 1
7635// TCE:#define __DBL_MANT_DIG__ 24
7636// TCE:#define __DBL_MAX_10_EXP__ 38
7637// TCE:#define __DBL_MAX_EXP__ 128
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00007638// TCE:#define __DBL_MAX__ 3.40282347e+38
Chris Lattnere963d092009-10-29 04:55:36 +00007639// TCE:#define __DBL_MIN_10_EXP__ (-37)
7640// TCE:#define __DBL_MIN_EXP__ (-125)
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00007641// TCE:#define __DBL_MIN__ 1.17549435e-38
Ed Schouten49920992015-02-23 09:12:31 +00007642// TCE:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Chris Lattnere963d092009-10-29 04:55:36 +00007643// TCE:#define __FLT_DENORM_MIN__ 1.40129846e-45F
7644// TCE:#define __FLT_DIG__ 6
7645// TCE:#define __FLT_EPSILON__ 1.19209290e-7F
7646// TCE:#define __FLT_EVAL_METHOD__ 0
7647// TCE:#define __FLT_HAS_DENORM__ 1
7648// TCE:#define __FLT_HAS_INFINITY__ 1
7649// TCE:#define __FLT_HAS_QUIET_NAN__ 1
7650// TCE:#define __FLT_MANT_DIG__ 24
7651// TCE:#define __FLT_MAX_10_EXP__ 38
7652// TCE:#define __FLT_MAX_EXP__ 128
7653// TCE:#define __FLT_MAX__ 3.40282347e+38F
7654// TCE:#define __FLT_MIN_10_EXP__ (-37)
7655// TCE:#define __FLT_MIN_EXP__ (-125)
7656// TCE:#define __FLT_MIN__ 1.17549435e-38F
7657// TCE:#define __FLT_RADIX__ 2
James Y Knightc97efa42016-02-11 16:51:29 +00007658// TCE:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007659// TCE:#define __INT16_FMTd__ "hd"
7660// TCE:#define __INT16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00007661// TCE:#define __INT16_MAX__ 32767
Chris Lattnere963d092009-10-29 04:55:36 +00007662// TCE:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +00007663// TCE:#define __INT32_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007664// TCE:#define __INT32_FMTd__ "d"
7665// TCE:#define __INT32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00007666// TCE:#define __INT32_MAX__ 2147483647
Chris Lattnere963d092009-10-29 04:55:36 +00007667// TCE:#define __INT32_TYPE__ int
James Y Knightc97efa42016-02-11 16:51:29 +00007668// TCE:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007669// TCE:#define __INT8_FMTd__ "hhd"
7670// TCE:#define __INT8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00007671// TCE:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00007672// TCE:#define __INT8_TYPE__ signed char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00007673// TCE:#define __INTMAX_C_SUFFIX__ L
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007674// TCE:#define __INTMAX_FMTd__ "ld"
7675// TCE:#define __INTMAX_FMTi__ "li"
Chris Lattnere963d092009-10-29 04:55:36 +00007676// TCE:#define __INTMAX_MAX__ 2147483647L
Ken Dyck9b25f782009-11-19 13:18:59 +00007677// TCE:#define __INTMAX_TYPE__ long int
Ken Dyckc0c98292009-11-18 13:52:57 +00007678// TCE:#define __INTMAX_WIDTH__ 32
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007679// TCE:#define __INTPTR_FMTd__ "d"
7680// TCE:#define __INTPTR_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00007681// TCE:#define __INTPTR_MAX__ 2147483647
Ken Dyck9b25f782009-11-19 13:18:59 +00007682// TCE:#define __INTPTR_TYPE__ int
Ken Dyck24cfcf12009-11-18 20:05:48 +00007683// TCE:#define __INTPTR_WIDTH__ 32
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007684// TCE:#define __INT_FAST16_FMTd__ "hd"
7685// TCE:#define __INT_FAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00007686// TCE:#define __INT_FAST16_MAX__ 32767
7687// TCE:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007688// TCE:#define __INT_FAST32_FMTd__ "d"
7689// TCE:#define __INT_FAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00007690// TCE:#define __INT_FAST32_MAX__ 2147483647
7691// TCE:#define __INT_FAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007692// TCE:#define __INT_FAST8_FMTd__ "hhd"
7693// TCE:#define __INT_FAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00007694// TCE:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00007695// TCE:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007696// TCE:#define __INT_LEAST16_FMTd__ "hd"
7697// TCE:#define __INT_LEAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00007698// TCE:#define __INT_LEAST16_MAX__ 32767
7699// TCE:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007700// TCE:#define __INT_LEAST32_FMTd__ "d"
7701// TCE:#define __INT_LEAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00007702// TCE:#define __INT_LEAST32_MAX__ 2147483647
7703// TCE:#define __INT_LEAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007704// TCE:#define __INT_LEAST8_FMTd__ "hhd"
7705// TCE:#define __INT_LEAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00007706// TCE:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00007707// TCE:#define __INT_LEAST8_TYPE__ signed char
Chris Lattnere963d092009-10-29 04:55:36 +00007708// TCE:#define __INT_MAX__ 2147483647
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00007709// TCE:#define __LDBL_DENORM_MIN__ 1.40129846e-45L
Chris Lattnere963d092009-10-29 04:55:36 +00007710// TCE:#define __LDBL_DIG__ 6
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00007711// TCE:#define __LDBL_EPSILON__ 1.19209290e-7L
Chris Lattnere963d092009-10-29 04:55:36 +00007712// TCE:#define __LDBL_HAS_DENORM__ 1
7713// TCE:#define __LDBL_HAS_INFINITY__ 1
7714// TCE:#define __LDBL_HAS_QUIET_NAN__ 1
7715// TCE:#define __LDBL_MANT_DIG__ 24
7716// TCE:#define __LDBL_MAX_10_EXP__ 38
7717// TCE:#define __LDBL_MAX_EXP__ 128
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00007718// TCE:#define __LDBL_MAX__ 3.40282347e+38L
Chris Lattnere963d092009-10-29 04:55:36 +00007719// TCE:#define __LDBL_MIN_10_EXP__ (-37)
7720// TCE:#define __LDBL_MIN_EXP__ (-125)
Eli Friedmanc6d2fdb2012-11-10 00:20:38 +00007721// TCE:#define __LDBL_MIN__ 1.17549435e-38L
Chris Lattnere963d092009-10-29 04:55:36 +00007722// TCE:#define __LONG_LONG_MAX__ 2147483647LL
7723// TCE:#define __LONG_MAX__ 2147483647L
Dylan Noblesmith8d48c8c2012-08-10 19:12:37 +00007724// TCE-NOT:#define __LP64__
Chris Lattnere963d092009-10-29 04:55:36 +00007725// TCE:#define __POINTER_WIDTH__ 32
Ken Dyck9b25f782009-11-19 13:18:59 +00007726// TCE:#define __PTRDIFF_TYPE__ int
Ken Dyck056efe02009-11-19 12:21:52 +00007727// TCE:#define __PTRDIFF_WIDTH__ 32
Chris Lattnere963d092009-10-29 04:55:36 +00007728// TCE:#define __SCHAR_MAX__ 127
7729// TCE:#define __SHRT_MAX__ 32767
Joerg Sonnenbergerb3a49692014-07-17 18:31:20 +00007730// TCE:#define __SIG_ATOMIC_MAX__ 2147483647
Ken Dyckadc85112009-11-22 15:41:04 +00007731// TCE:#define __SIG_ATOMIC_WIDTH__ 32
Dan Gohman04f87202010-05-28 00:27:15 +00007732// TCE:#define __SIZEOF_DOUBLE__ 4
7733// TCE:#define __SIZEOF_FLOAT__ 4
7734// TCE:#define __SIZEOF_INT__ 4
7735// TCE:#define __SIZEOF_LONG_DOUBLE__ 4
7736// TCE:#define __SIZEOF_LONG_LONG__ 4
7737// TCE:#define __SIZEOF_LONG__ 4
7738// TCE:#define __SIZEOF_POINTER__ 4
7739// TCE:#define __SIZEOF_PTRDIFF_T__ 4
7740// TCE:#define __SIZEOF_SHORT__ 2
7741// TCE:#define __SIZEOF_SIZE_T__ 4
7742// TCE:#define __SIZEOF_WCHAR_T__ 4
7743// TCE:#define __SIZEOF_WINT_T__ 4
Evgeniy Stepanovc3c725a2013-03-28 08:36:54 +00007744// TCE:#define __SIZE_MAX__ 4294967295U
Chris Lattnere963d092009-10-29 04:55:36 +00007745// TCE:#define __SIZE_TYPE__ unsigned int
Ken Dyck57512862009-11-19 13:42:09 +00007746// TCE:#define __SIZE_WIDTH__ 32
Richard Smith59139022016-09-30 22:41:36 +00007747// TCE-CXX:#define __STDCPP_DEFAULT_NEW_ALIGNMENT__ 4U
Chris Lattnere963d092009-10-29 04:55:36 +00007748// TCE:#define __TCE_V1__ 1
7749// TCE:#define __TCE__ 1
James Y Knightc97efa42016-02-11 16:51:29 +00007750// TCE:#define __UINT16_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00007751// TCE:#define __UINT16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00007752// TCE:#define __UINT16_TYPE__ unsigned short
7753// TCE:#define __UINT32_C_SUFFIX__ U
7754// TCE:#define __UINT32_MAX__ 4294967295U
7755// TCE:#define __UINT32_TYPE__ unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00007756// TCE:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00007757// TCE:#define __UINT8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00007758// TCE:#define __UINT8_TYPE__ unsigned char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00007759// TCE:#define __UINTMAX_C_SUFFIX__ UL
JF Bastienab8d0a02014-06-25 01:31:33 +00007760// TCE:#define __UINTMAX_MAX__ 4294967295UL
Ken Dyck9b25f782009-11-19 13:18:59 +00007761// TCE:#define __UINTMAX_TYPE__ long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00007762// TCE:#define __UINTMAX_WIDTH__ 32
7763// TCE:#define __UINTPTR_MAX__ 4294967295U
7764// TCE:#define __UINTPTR_TYPE__ unsigned int
7765// TCE:#define __UINTPTR_WIDTH__ 32
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00007766// TCE:#define __UINT_FAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00007767// TCE:#define __UINT_FAST16_TYPE__ unsigned short
7768// TCE:#define __UINT_FAST32_MAX__ 4294967295U
7769// TCE:#define __UINT_FAST32_TYPE__ unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00007770// TCE:#define __UINT_FAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00007771// TCE:#define __UINT_FAST8_TYPE__ unsigned char
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00007772// TCE:#define __UINT_LEAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00007773// TCE:#define __UINT_LEAST16_TYPE__ unsigned short
7774// TCE:#define __UINT_LEAST32_MAX__ 4294967295U
7775// TCE:#define __UINT_LEAST32_TYPE__ unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00007776// TCE:#define __UINT_LEAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00007777// TCE:#define __UINT_LEAST8_TYPE__ unsigned char
James Y Knightb214cbc2016-03-04 19:00:41 +00007778// TCE:#define __USER_LABEL_PREFIX__
Chris Lattnere963d092009-10-29 04:55:36 +00007779// TCE:#define __WCHAR_MAX__ 2147483647
7780// TCE:#define __WCHAR_TYPE__ int
Ken Dyck0138b9e2009-11-19 15:47:58 +00007781// TCE:#define __WCHAR_WIDTH__ 32
Chris Lattnere963d092009-10-29 04:55:36 +00007782// TCE:#define __WINT_TYPE__ int
Ken Dycka1f677c2009-11-19 14:16:57 +00007783// TCE:#define __WINT_WIDTH__ 32
Chris Lattnere963d092009-10-29 04:55:36 +00007784// TCE:#define __tce 1
7785// TCE:#define __tce__ 1
7786// TCE:#define tce 1
7787//
James Y Knightc97efa42016-02-11 16:51:29 +00007788// 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 +00007789// 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 +00007790//
7791// X86_64:#define _LP64 1
Pavel Chupin3362c5f2014-07-14 09:58:10 +00007792// X86_64-NOT:#define _LP32 1
Tim Northovera6a19f12015-02-06 01:25:07 +00007793// X86_64:#define __BIGGEST_ALIGNMENT__ 16
Dylan Noblesmith673728f2012-07-27 18:34:31 +00007794// X86_64:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
Dan Gohman04f87202010-05-28 00:27:15 +00007795// X86_64:#define __CHAR16_TYPE__ unsigned short
7796// X86_64:#define __CHAR32_TYPE__ unsigned int
Chris Lattnere963d092009-10-29 04:55:36 +00007797// X86_64:#define __CHAR_BIT__ 8
7798// X86_64:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
7799// X86_64:#define __DBL_DIG__ 15
7800// X86_64:#define __DBL_EPSILON__ 2.2204460492503131e-16
7801// X86_64:#define __DBL_HAS_DENORM__ 1
7802// X86_64:#define __DBL_HAS_INFINITY__ 1
7803// X86_64:#define __DBL_HAS_QUIET_NAN__ 1
7804// X86_64:#define __DBL_MANT_DIG__ 53
7805// X86_64:#define __DBL_MAX_10_EXP__ 308
7806// X86_64:#define __DBL_MAX_EXP__ 1024
7807// X86_64:#define __DBL_MAX__ 1.7976931348623157e+308
7808// X86_64:#define __DBL_MIN_10_EXP__ (-307)
7809// X86_64:#define __DBL_MIN_EXP__ (-1021)
7810// X86_64:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00007811// X86_64:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Chris Lattnere963d092009-10-29 04:55:36 +00007812// X86_64:#define __FLT_DENORM_MIN__ 1.40129846e-45F
7813// X86_64:#define __FLT_DIG__ 6
7814// X86_64:#define __FLT_EPSILON__ 1.19209290e-7F
7815// X86_64:#define __FLT_EVAL_METHOD__ 0
7816// X86_64:#define __FLT_HAS_DENORM__ 1
7817// X86_64:#define __FLT_HAS_INFINITY__ 1
7818// X86_64:#define __FLT_HAS_QUIET_NAN__ 1
7819// X86_64:#define __FLT_MANT_DIG__ 24
7820// X86_64:#define __FLT_MAX_10_EXP__ 38
7821// X86_64:#define __FLT_MAX_EXP__ 128
7822// X86_64:#define __FLT_MAX__ 3.40282347e+38F
7823// X86_64:#define __FLT_MIN_10_EXP__ (-37)
7824// X86_64:#define __FLT_MIN_EXP__ (-125)
7825// X86_64:#define __FLT_MIN__ 1.17549435e-38F
7826// X86_64:#define __FLT_RADIX__ 2
James Y Knightc97efa42016-02-11 16:51:29 +00007827// X86_64:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007828// X86_64:#define __INT16_FMTd__ "hd"
7829// X86_64:#define __INT16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00007830// X86_64:#define __INT16_MAX__ 32767
Chris Lattnere963d092009-10-29 04:55:36 +00007831// X86_64:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +00007832// X86_64:#define __INT32_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007833// X86_64:#define __INT32_FMTd__ "d"
7834// X86_64:#define __INT32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00007835// X86_64:#define __INT32_MAX__ 2147483647
Chris Lattnere963d092009-10-29 04:55:36 +00007836// X86_64:#define __INT32_TYPE__ int
Ken Dyck2dc8d5f2009-11-16 16:36:33 +00007837// X86_64:#define __INT64_C_SUFFIX__ L
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007838// X86_64:#define __INT64_FMTd__ "ld"
7839// X86_64:#define __INT64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00007840// X86_64:#define __INT64_MAX__ 9223372036854775807L
Chris Lattnere963d092009-10-29 04:55:36 +00007841// X86_64:#define __INT64_TYPE__ long int
James Y Knightc97efa42016-02-11 16:51:29 +00007842// X86_64:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007843// X86_64:#define __INT8_FMTd__ "hhd"
7844// X86_64:#define __INT8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00007845// X86_64:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00007846// X86_64:#define __INT8_TYPE__ signed char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00007847// X86_64:#define __INTMAX_C_SUFFIX__ L
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007848// X86_64:#define __INTMAX_FMTd__ "ld"
7849// X86_64:#define __INTMAX_FMTi__ "li"
Chris Lattnere963d092009-10-29 04:55:36 +00007850// X86_64:#define __INTMAX_MAX__ 9223372036854775807L
Ken Dyck9b25f782009-11-19 13:18:59 +00007851// X86_64:#define __INTMAX_TYPE__ long int
Ken Dyckc0c98292009-11-18 13:52:57 +00007852// X86_64:#define __INTMAX_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007853// X86_64:#define __INTPTR_FMTd__ "ld"
7854// X86_64:#define __INTPTR_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00007855// X86_64:#define __INTPTR_MAX__ 9223372036854775807L
Ken Dyck9b25f782009-11-19 13:18:59 +00007856// X86_64:#define __INTPTR_TYPE__ long int
Ken Dyck24cfcf12009-11-18 20:05:48 +00007857// X86_64:#define __INTPTR_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007858// X86_64:#define __INT_FAST16_FMTd__ "hd"
7859// X86_64:#define __INT_FAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00007860// X86_64:#define __INT_FAST16_MAX__ 32767
7861// X86_64:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007862// X86_64:#define __INT_FAST32_FMTd__ "d"
7863// X86_64:#define __INT_FAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00007864// X86_64:#define __INT_FAST32_MAX__ 2147483647
7865// X86_64:#define __INT_FAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007866// X86_64:#define __INT_FAST64_FMTd__ "ld"
7867// X86_64:#define __INT_FAST64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00007868// X86_64:#define __INT_FAST64_MAX__ 9223372036854775807L
7869// X86_64:#define __INT_FAST64_TYPE__ long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007870// X86_64:#define __INT_FAST8_FMTd__ "hhd"
7871// X86_64:#define __INT_FAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00007872// X86_64:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00007873// X86_64:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007874// X86_64:#define __INT_LEAST16_FMTd__ "hd"
7875// X86_64:#define __INT_LEAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00007876// X86_64:#define __INT_LEAST16_MAX__ 32767
7877// X86_64:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007878// X86_64:#define __INT_LEAST32_FMTd__ "d"
7879// X86_64:#define __INT_LEAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00007880// X86_64:#define __INT_LEAST32_MAX__ 2147483647
7881// X86_64:#define __INT_LEAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007882// X86_64:#define __INT_LEAST64_FMTd__ "ld"
7883// X86_64:#define __INT_LEAST64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00007884// X86_64:#define __INT_LEAST64_MAX__ 9223372036854775807L
7885// X86_64:#define __INT_LEAST64_TYPE__ long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00007886// X86_64:#define __INT_LEAST8_FMTd__ "hhd"
7887// X86_64:#define __INT_LEAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00007888// X86_64:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00007889// X86_64:#define __INT_LEAST8_TYPE__ signed char
Chris Lattnere963d092009-10-29 04:55:36 +00007890// X86_64:#define __INT_MAX__ 2147483647
7891// X86_64:#define __LDBL_DENORM_MIN__ 3.64519953188247460253e-4951L
7892// X86_64:#define __LDBL_DIG__ 18
7893// X86_64:#define __LDBL_EPSILON__ 1.08420217248550443401e-19L
7894// X86_64:#define __LDBL_HAS_DENORM__ 1
7895// X86_64:#define __LDBL_HAS_INFINITY__ 1
7896// X86_64:#define __LDBL_HAS_QUIET_NAN__ 1
7897// X86_64:#define __LDBL_MANT_DIG__ 64
7898// X86_64:#define __LDBL_MAX_10_EXP__ 4932
7899// X86_64:#define __LDBL_MAX_EXP__ 16384
7900// X86_64:#define __LDBL_MAX__ 1.18973149535723176502e+4932L
7901// X86_64:#define __LDBL_MIN_10_EXP__ (-4931)
7902// X86_64:#define __LDBL_MIN_EXP__ (-16381)
7903// X86_64:#define __LDBL_MIN__ 3.36210314311209350626e-4932L
7904// X86_64:#define __LITTLE_ENDIAN__ 1
7905// X86_64:#define __LONG_LONG_MAX__ 9223372036854775807LL
7906// X86_64:#define __LONG_MAX__ 9223372036854775807L
7907// X86_64:#define __LP64__ 1
Pavel Chupin3362c5f2014-07-14 09:58:10 +00007908// X86_64-NOT:#define __ILP32__ 1
Chris Lattnere963d092009-10-29 04:55:36 +00007909// X86_64:#define __MMX__ 1
Chris Lattnere963d092009-10-29 04:55:36 +00007910// X86_64:#define __NO_MATH_INLINES 1
7911// X86_64:#define __POINTER_WIDTH__ 64
Ken Dyck9b25f782009-11-19 13:18:59 +00007912// X86_64:#define __PTRDIFF_TYPE__ long int
Ken Dyck056efe02009-11-19 12:21:52 +00007913// X86_64:#define __PTRDIFF_WIDTH__ 64
James Y Knightc97efa42016-02-11 16:51:29 +00007914// X86_64:#define __REGISTER_PREFIX__
Chris Lattnere963d092009-10-29 04:55:36 +00007915// X86_64:#define __SCHAR_MAX__ 127
7916// X86_64:#define __SHRT_MAX__ 32767
Joerg Sonnenbergerb3a49692014-07-17 18:31:20 +00007917// X86_64:#define __SIG_ATOMIC_MAX__ 2147483647
Ken Dyckadc85112009-11-22 15:41:04 +00007918// X86_64:#define __SIG_ATOMIC_WIDTH__ 32
Dan Gohman04f87202010-05-28 00:27:15 +00007919// X86_64:#define __SIZEOF_DOUBLE__ 8
7920// X86_64:#define __SIZEOF_FLOAT__ 4
7921// X86_64:#define __SIZEOF_INT__ 4
7922// X86_64:#define __SIZEOF_LONG_DOUBLE__ 16
7923// X86_64:#define __SIZEOF_LONG_LONG__ 8
7924// X86_64:#define __SIZEOF_LONG__ 8
7925// X86_64:#define __SIZEOF_POINTER__ 8
7926// X86_64:#define __SIZEOF_PTRDIFF_T__ 8
7927// X86_64:#define __SIZEOF_SHORT__ 2
7928// X86_64:#define __SIZEOF_SIZE_T__ 8
7929// X86_64:#define __SIZEOF_WCHAR_T__ 4
7930// X86_64:#define __SIZEOF_WINT_T__ 4
Evgeniy Stepanovc3c725a2013-03-28 08:36:54 +00007931// X86_64:#define __SIZE_MAX__ 18446744073709551615UL
Chris Lattnere963d092009-10-29 04:55:36 +00007932// X86_64:#define __SIZE_TYPE__ long unsigned int
Ken Dyck57512862009-11-19 13:42:09 +00007933// X86_64:#define __SIZE_WIDTH__ 64
Chris Lattnere963d092009-10-29 04:55:36 +00007934// X86_64:#define __SSE2_MATH__ 1
7935// X86_64:#define __SSE2__ 1
7936// X86_64:#define __SSE_MATH__ 1
7937// X86_64:#define __SSE__ 1
Richard Smith59139022016-09-30 22:41:36 +00007938// X86_64-CXX:#define __STDCPP_DEFAULT_NEW_ALIGNMENT__ 16UL
James Y Knightc97efa42016-02-11 16:51:29 +00007939// X86_64:#define __UINT16_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00007940// X86_64:#define __UINT16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00007941// X86_64:#define __UINT16_TYPE__ unsigned short
7942// X86_64:#define __UINT32_C_SUFFIX__ U
7943// X86_64:#define __UINT32_MAX__ 4294967295U
7944// X86_64:#define __UINT32_TYPE__ unsigned int
7945// X86_64:#define __UINT64_C_SUFFIX__ UL
7946// X86_64:#define __UINT64_MAX__ 18446744073709551615UL
7947// X86_64:#define __UINT64_TYPE__ long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00007948// X86_64:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00007949// X86_64:#define __UINT8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00007950// X86_64:#define __UINT8_TYPE__ unsigned char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00007951// X86_64:#define __UINTMAX_C_SUFFIX__ UL
JF Bastienab8d0a02014-06-25 01:31:33 +00007952// X86_64:#define __UINTMAX_MAX__ 18446744073709551615UL
Ken Dyck9b25f782009-11-19 13:18:59 +00007953// X86_64:#define __UINTMAX_TYPE__ long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00007954// X86_64:#define __UINTMAX_WIDTH__ 64
7955// X86_64:#define __UINTPTR_MAX__ 18446744073709551615UL
7956// X86_64:#define __UINTPTR_TYPE__ long unsigned int
7957// X86_64:#define __UINTPTR_WIDTH__ 64
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00007958// X86_64:#define __UINT_FAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00007959// X86_64:#define __UINT_FAST16_TYPE__ unsigned short
7960// X86_64:#define __UINT_FAST32_MAX__ 4294967295U
7961// X86_64:#define __UINT_FAST32_TYPE__ unsigned int
7962// X86_64:#define __UINT_FAST64_MAX__ 18446744073709551615UL
7963// X86_64:#define __UINT_FAST64_TYPE__ long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00007964// X86_64:#define __UINT_FAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00007965// X86_64:#define __UINT_FAST8_TYPE__ unsigned char
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00007966// X86_64:#define __UINT_LEAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00007967// X86_64:#define __UINT_LEAST16_TYPE__ unsigned short
7968// X86_64:#define __UINT_LEAST32_MAX__ 4294967295U
7969// X86_64:#define __UINT_LEAST32_TYPE__ unsigned int
7970// X86_64:#define __UINT_LEAST64_MAX__ 18446744073709551615UL
7971// X86_64:#define __UINT_LEAST64_TYPE__ long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00007972// X86_64:#define __UINT_LEAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00007973// X86_64:#define __UINT_LEAST8_TYPE__ unsigned char
James Y Knightb214cbc2016-03-04 19:00:41 +00007974// X86_64:#define __USER_LABEL_PREFIX__
Chris Lattnere963d092009-10-29 04:55:36 +00007975// X86_64:#define __WCHAR_MAX__ 2147483647
7976// X86_64:#define __WCHAR_TYPE__ int
Ken Dyck0138b9e2009-11-19 15:47:58 +00007977// X86_64:#define __WCHAR_WIDTH__ 32
Chris Lattnere963d092009-10-29 04:55:36 +00007978// X86_64:#define __WINT_TYPE__ int
Ken Dycka1f677c2009-11-19 14:16:57 +00007979// X86_64:#define __WINT_WIDTH__ 32
Chris Lattnere963d092009-10-29 04:55:36 +00007980// X86_64:#define __amd64 1
7981// X86_64:#define __amd64__ 1
Ali Tamurbc1cd922018-10-08 22:25:20 +00007982// X86_64:#define __code_model_small_ 1
Chris Lattnere963d092009-10-29 04:55:36 +00007983// X86_64:#define __x86_64 1
7984// X86_64:#define __x86_64__ 1
7985//
James Y Knightc97efa42016-02-11 16:51:29 +00007986// 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 +00007987//
7988// X86_64H:#define __x86_64 1
7989// X86_64H:#define __x86_64__ 1
7990// X86_64H:#define __x86_64h 1
7991// X86_64H:#define __x86_64h__ 1
Ali Tamurbc1cd922018-10-08 22:25:20 +00007992//
7993// RUN: %clang -xc - -E -dM -mcmodel=medium --target=i386-unknown-linux < /dev/null | FileCheck -match-full-lines -check-prefix X86_MEDIUM %s
7994// X86_MEDIUM:#define __code_model_medium_ 1
7995//
James Y Knightc97efa42016-02-11 16:51:29 +00007996// 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 +00007997// 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 +00007998//
7999// X32:#define _ILP32 1
8000// X32-NOT:#define _LP64 1
Tim Northovera6a19f12015-02-06 01:25:07 +00008001// X32:#define __BIGGEST_ALIGNMENT__ 16
Pavel Chupin3362c5f2014-07-14 09:58:10 +00008002// X32:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
8003// X32:#define __CHAR16_TYPE__ unsigned short
8004// X32:#define __CHAR32_TYPE__ unsigned int
8005// X32:#define __CHAR_BIT__ 8
8006// X32:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
8007// X32:#define __DBL_DIG__ 15
8008// X32:#define __DBL_EPSILON__ 2.2204460492503131e-16
8009// X32:#define __DBL_HAS_DENORM__ 1
8010// X32:#define __DBL_HAS_INFINITY__ 1
8011// X32:#define __DBL_HAS_QUIET_NAN__ 1
8012// X32:#define __DBL_MANT_DIG__ 53
8013// X32:#define __DBL_MAX_10_EXP__ 308
8014// X32:#define __DBL_MAX_EXP__ 1024
8015// X32:#define __DBL_MAX__ 1.7976931348623157e+308
8016// X32:#define __DBL_MIN_10_EXP__ (-307)
8017// X32:#define __DBL_MIN_EXP__ (-1021)
8018// X32:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00008019// X32:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Pavel Chupin3362c5f2014-07-14 09:58:10 +00008020// X32:#define __FLT_DENORM_MIN__ 1.40129846e-45F
8021// X32:#define __FLT_DIG__ 6
8022// X32:#define __FLT_EPSILON__ 1.19209290e-7F
8023// X32:#define __FLT_EVAL_METHOD__ 0
8024// X32:#define __FLT_HAS_DENORM__ 1
8025// X32:#define __FLT_HAS_INFINITY__ 1
8026// X32:#define __FLT_HAS_QUIET_NAN__ 1
8027// X32:#define __FLT_MANT_DIG__ 24
8028// X32:#define __FLT_MAX_10_EXP__ 38
8029// X32:#define __FLT_MAX_EXP__ 128
8030// X32:#define __FLT_MAX__ 3.40282347e+38F
8031// X32:#define __FLT_MIN_10_EXP__ (-37)
8032// X32:#define __FLT_MIN_EXP__ (-125)
8033// X32:#define __FLT_MIN__ 1.17549435e-38F
8034// X32:#define __FLT_RADIX__ 2
8035// X32:#define __ILP32__ 1
8036// X32-NOT:#define __LP64__ 1
James Y Knightc97efa42016-02-11 16:51:29 +00008037// X32:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00008038// X32:#define __INT16_FMTd__ "hd"
8039// X32:#define __INT16_FMTi__ "hi"
Pavel Chupin3362c5f2014-07-14 09:58:10 +00008040// X32:#define __INT16_MAX__ 32767
8041// X32:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +00008042// X32:#define __INT32_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00008043// X32:#define __INT32_FMTd__ "d"
8044// X32:#define __INT32_FMTi__ "i"
Pavel Chupin3362c5f2014-07-14 09:58:10 +00008045// X32:#define __INT32_MAX__ 2147483647
8046// X32:#define __INT32_TYPE__ int
James Y Knightc97efa42016-02-11 16:51:29 +00008047// X32:#define __INT64_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00008048// X32:#define __INT64_FMTd__ "lld"
8049// X32:#define __INT64_FMTi__ "lli"
James Y Knightc97efa42016-02-11 16:51:29 +00008050// X32:#define __INT64_MAX__ 9223372036854775807LL
Pavel Chupin3362c5f2014-07-14 09:58:10 +00008051// X32:#define __INT64_TYPE__ long long int
James Y Knightc97efa42016-02-11 16:51:29 +00008052// X32:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00008053// X32:#define __INT8_FMTd__ "hhd"
8054// X32:#define __INT8_FMTi__ "hhi"
Pavel Chupin3362c5f2014-07-14 09:58:10 +00008055// X32:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00008056// X32:#define __INT8_TYPE__ signed char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00008057// X32:#define __INTMAX_C_SUFFIX__ LL
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00008058// X32:#define __INTMAX_FMTd__ "lld"
8059// X32:#define __INTMAX_FMTi__ "lli"
James Y Knightc97efa42016-02-11 16:51:29 +00008060// X32:#define __INTMAX_MAX__ 9223372036854775807LL
Pavel Chupin3362c5f2014-07-14 09:58:10 +00008061// X32:#define __INTMAX_TYPE__ long long int
8062// X32:#define __INTMAX_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00008063// X32:#define __INTPTR_FMTd__ "d"
8064// X32:#define __INTPTR_FMTi__ "i"
Pavel Chupin3362c5f2014-07-14 09:58:10 +00008065// X32:#define __INTPTR_MAX__ 2147483647
8066// X32:#define __INTPTR_TYPE__ int
8067// X32:#define __INTPTR_WIDTH__ 32
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00008068// X32:#define __INT_FAST16_FMTd__ "hd"
8069// X32:#define __INT_FAST16_FMTi__ "hi"
Pavel Chupin3362c5f2014-07-14 09:58:10 +00008070// X32:#define __INT_FAST16_MAX__ 32767
8071// X32:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00008072// X32:#define __INT_FAST32_FMTd__ "d"
8073// X32:#define __INT_FAST32_FMTi__ "i"
Pavel Chupin3362c5f2014-07-14 09:58:10 +00008074// X32:#define __INT_FAST32_MAX__ 2147483647
8075// X32:#define __INT_FAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00008076// X32:#define __INT_FAST64_FMTd__ "lld"
8077// X32:#define __INT_FAST64_FMTi__ "lli"
James Y Knightc97efa42016-02-11 16:51:29 +00008078// X32:#define __INT_FAST64_MAX__ 9223372036854775807LL
Pavel Chupin3362c5f2014-07-14 09:58:10 +00008079// X32:#define __INT_FAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00008080// X32:#define __INT_FAST8_FMTd__ "hhd"
8081// X32:#define __INT_FAST8_FMTi__ "hhi"
Pavel Chupin3362c5f2014-07-14 09:58:10 +00008082// X32:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00008083// X32:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00008084// X32:#define __INT_LEAST16_FMTd__ "hd"
8085// X32:#define __INT_LEAST16_FMTi__ "hi"
Pavel Chupin3362c5f2014-07-14 09:58:10 +00008086// X32:#define __INT_LEAST16_MAX__ 32767
8087// X32:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00008088// X32:#define __INT_LEAST32_FMTd__ "d"
8089// X32:#define __INT_LEAST32_FMTi__ "i"
Pavel Chupin3362c5f2014-07-14 09:58:10 +00008090// X32:#define __INT_LEAST32_MAX__ 2147483647
8091// X32:#define __INT_LEAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00008092// X32:#define __INT_LEAST64_FMTd__ "lld"
8093// X32:#define __INT_LEAST64_FMTi__ "lli"
James Y Knightc97efa42016-02-11 16:51:29 +00008094// X32:#define __INT_LEAST64_MAX__ 9223372036854775807LL
Pavel Chupin3362c5f2014-07-14 09:58:10 +00008095// X32:#define __INT_LEAST64_TYPE__ long long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00008096// X32:#define __INT_LEAST8_FMTd__ "hhd"
8097// X32:#define __INT_LEAST8_FMTi__ "hhi"
Pavel Chupin3362c5f2014-07-14 09:58:10 +00008098// X32:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00008099// X32:#define __INT_LEAST8_TYPE__ signed char
Pavel Chupin3362c5f2014-07-14 09:58:10 +00008100// X32:#define __INT_MAX__ 2147483647
8101// X32:#define __LDBL_DENORM_MIN__ 3.64519953188247460253e-4951L
8102// X32:#define __LDBL_DIG__ 18
8103// X32:#define __LDBL_EPSILON__ 1.08420217248550443401e-19L
8104// X32:#define __LDBL_HAS_DENORM__ 1
8105// X32:#define __LDBL_HAS_INFINITY__ 1
8106// X32:#define __LDBL_HAS_QUIET_NAN__ 1
8107// X32:#define __LDBL_MANT_DIG__ 64
8108// X32:#define __LDBL_MAX_10_EXP__ 4932
8109// X32:#define __LDBL_MAX_EXP__ 16384
8110// X32:#define __LDBL_MAX__ 1.18973149535723176502e+4932L
8111// X32:#define __LDBL_MIN_10_EXP__ (-4931)
8112// X32:#define __LDBL_MIN_EXP__ (-16381)
8113// X32:#define __LDBL_MIN__ 3.36210314311209350626e-4932L
8114// X32:#define __LITTLE_ENDIAN__ 1
8115// X32:#define __LONG_LONG_MAX__ 9223372036854775807LL
8116// X32:#define __LONG_MAX__ 2147483647L
8117// X32:#define __MMX__ 1
8118// X32:#define __NO_MATH_INLINES 1
8119// X32:#define __POINTER_WIDTH__ 32
8120// X32:#define __PTRDIFF_TYPE__ int
8121// X32:#define __PTRDIFF_WIDTH__ 32
James Y Knightc97efa42016-02-11 16:51:29 +00008122// X32:#define __REGISTER_PREFIX__
Pavel Chupin3362c5f2014-07-14 09:58:10 +00008123// X32:#define __SCHAR_MAX__ 127
8124// X32:#define __SHRT_MAX__ 32767
Joerg Sonnenbergerb3a49692014-07-17 18:31:20 +00008125// X32:#define __SIG_ATOMIC_MAX__ 2147483647
Pavel Chupin3362c5f2014-07-14 09:58:10 +00008126// X32:#define __SIG_ATOMIC_WIDTH__ 32
8127// X32:#define __SIZEOF_DOUBLE__ 8
8128// X32:#define __SIZEOF_FLOAT__ 4
8129// X32:#define __SIZEOF_INT__ 4
8130// X32:#define __SIZEOF_LONG_DOUBLE__ 16
8131// X32:#define __SIZEOF_LONG_LONG__ 8
8132// X32:#define __SIZEOF_LONG__ 4
8133// X32:#define __SIZEOF_POINTER__ 4
8134// X32:#define __SIZEOF_PTRDIFF_T__ 4
8135// X32:#define __SIZEOF_SHORT__ 2
8136// X32:#define __SIZEOF_SIZE_T__ 4
8137// X32:#define __SIZEOF_WCHAR_T__ 4
8138// X32:#define __SIZEOF_WINT_T__ 4
8139// X32:#define __SIZE_MAX__ 4294967295U
8140// X32:#define __SIZE_TYPE__ unsigned int
8141// X32:#define __SIZE_WIDTH__ 32
8142// X32:#define __SSE2_MATH__ 1
8143// X32:#define __SSE2__ 1
8144// X32:#define __SSE_MATH__ 1
8145// X32:#define __SSE__ 1
Richard Smith59139022016-09-30 22:41:36 +00008146// X32-CXX:#define __STDCPP_DEFAULT_NEW_ALIGNMENT__ 16U
James Y Knightc97efa42016-02-11 16:51:29 +00008147// X32:#define __UINT16_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00008148// X32:#define __UINT16_MAX__ 65535
Pavel Chupin3362c5f2014-07-14 09:58:10 +00008149// X32:#define __UINT16_TYPE__ unsigned short
8150// X32:#define __UINT32_C_SUFFIX__ U
8151// X32:#define __UINT32_MAX__ 4294967295U
8152// X32:#define __UINT32_TYPE__ unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00008153// X32:#define __UINT64_C_SUFFIX__ ULL
Pavel Chupin3362c5f2014-07-14 09:58:10 +00008154// X32:#define __UINT64_MAX__ 18446744073709551615ULL
8155// X32:#define __UINT64_TYPE__ long long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00008156// X32:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00008157// X32:#define __UINT8_MAX__ 255
Pavel Chupin3362c5f2014-07-14 09:58:10 +00008158// X32:#define __UINT8_TYPE__ unsigned char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00008159// X32:#define __UINTMAX_C_SUFFIX__ ULL
Pavel Chupin3362c5f2014-07-14 09:58:10 +00008160// X32:#define __UINTMAX_MAX__ 18446744073709551615ULL
8161// X32:#define __UINTMAX_TYPE__ long long unsigned int
8162// X32:#define __UINTMAX_WIDTH__ 64
8163// X32:#define __UINTPTR_MAX__ 4294967295U
8164// X32:#define __UINTPTR_TYPE__ unsigned int
8165// X32:#define __UINTPTR_WIDTH__ 32
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00008166// X32:#define __UINT_FAST16_MAX__ 65535
Pavel Chupin3362c5f2014-07-14 09:58:10 +00008167// X32:#define __UINT_FAST16_TYPE__ unsigned short
8168// X32:#define __UINT_FAST32_MAX__ 4294967295U
8169// X32:#define __UINT_FAST32_TYPE__ unsigned int
8170// X32:#define __UINT_FAST64_MAX__ 18446744073709551615ULL
8171// X32:#define __UINT_FAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00008172// X32:#define __UINT_FAST8_MAX__ 255
Pavel Chupin3362c5f2014-07-14 09:58:10 +00008173// X32:#define __UINT_FAST8_TYPE__ unsigned char
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00008174// X32:#define __UINT_LEAST16_MAX__ 65535
Pavel Chupin3362c5f2014-07-14 09:58:10 +00008175// X32:#define __UINT_LEAST16_TYPE__ unsigned short
8176// X32:#define __UINT_LEAST32_MAX__ 4294967295U
8177// X32:#define __UINT_LEAST32_TYPE__ unsigned int
8178// X32:#define __UINT_LEAST64_MAX__ 18446744073709551615ULL
8179// X32:#define __UINT_LEAST64_TYPE__ long long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00008180// X32:#define __UINT_LEAST8_MAX__ 255
Pavel Chupin3362c5f2014-07-14 09:58:10 +00008181// X32:#define __UINT_LEAST8_TYPE__ unsigned char
James Y Knightb214cbc2016-03-04 19:00:41 +00008182// X32:#define __USER_LABEL_PREFIX__
Pavel Chupin3362c5f2014-07-14 09:58:10 +00008183// X32:#define __WCHAR_MAX__ 2147483647
8184// X32:#define __WCHAR_TYPE__ int
8185// X32:#define __WCHAR_WIDTH__ 32
8186// X32:#define __WINT_TYPE__ int
8187// X32:#define __WINT_WIDTH__ 32
8188// X32:#define __amd64 1
8189// X32:#define __amd64__ 1
8190// X32:#define __x86_64 1
8191// X32:#define __x86_64__ 1
8192//
James Y Knightc97efa42016-02-11 16:51:29 +00008193// 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 +00008194//
8195// X86_64-CLOUDABI:#define _LP64 1
8196// X86_64-CLOUDABI:#define __ATOMIC_ACQUIRE 2
8197// X86_64-CLOUDABI:#define __ATOMIC_ACQ_REL 4
8198// X86_64-CLOUDABI:#define __ATOMIC_CONSUME 1
8199// X86_64-CLOUDABI:#define __ATOMIC_RELAXED 0
8200// X86_64-CLOUDABI:#define __ATOMIC_RELEASE 3
8201// X86_64-CLOUDABI:#define __ATOMIC_SEQ_CST 5
8202// X86_64-CLOUDABI:#define __BIGGEST_ALIGNMENT__ 16
8203// X86_64-CLOUDABI:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
8204// X86_64-CLOUDABI:#define __CHAR16_TYPE__ unsigned short
8205// X86_64-CLOUDABI:#define __CHAR32_TYPE__ unsigned int
8206// X86_64-CLOUDABI:#define __CHAR_BIT__ 8
8207// X86_64-CLOUDABI:#define __CONSTANT_CFSTRINGS__ 1
8208// X86_64-CLOUDABI:#define __CloudABI__ 1
8209// X86_64-CLOUDABI:#define __DBL_DECIMAL_DIG__ 17
8210// X86_64-CLOUDABI:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
8211// X86_64-CLOUDABI:#define __DBL_DIG__ 15
8212// X86_64-CLOUDABI:#define __DBL_EPSILON__ 2.2204460492503131e-16
8213// X86_64-CLOUDABI:#define __DBL_HAS_DENORM__ 1
8214// X86_64-CLOUDABI:#define __DBL_HAS_INFINITY__ 1
8215// X86_64-CLOUDABI:#define __DBL_HAS_QUIET_NAN__ 1
8216// X86_64-CLOUDABI:#define __DBL_MANT_DIG__ 53
8217// X86_64-CLOUDABI:#define __DBL_MAX_10_EXP__ 308
8218// X86_64-CLOUDABI:#define __DBL_MAX_EXP__ 1024
8219// X86_64-CLOUDABI:#define __DBL_MAX__ 1.7976931348623157e+308
8220// X86_64-CLOUDABI:#define __DBL_MIN_10_EXP__ (-307)
8221// X86_64-CLOUDABI:#define __DBL_MIN_EXP__ (-1021)
8222// X86_64-CLOUDABI:#define __DBL_MIN__ 2.2250738585072014e-308
8223// X86_64-CLOUDABI:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
8224// X86_64-CLOUDABI:#define __ELF__ 1
8225// X86_64-CLOUDABI:#define __FINITE_MATH_ONLY__ 0
8226// X86_64-CLOUDABI:#define __FLT_DECIMAL_DIG__ 9
8227// X86_64-CLOUDABI:#define __FLT_DENORM_MIN__ 1.40129846e-45F
8228// X86_64-CLOUDABI:#define __FLT_DIG__ 6
8229// X86_64-CLOUDABI:#define __FLT_EPSILON__ 1.19209290e-7F
8230// X86_64-CLOUDABI:#define __FLT_EVAL_METHOD__ 0
8231// X86_64-CLOUDABI:#define __FLT_HAS_DENORM__ 1
8232// X86_64-CLOUDABI:#define __FLT_HAS_INFINITY__ 1
8233// X86_64-CLOUDABI:#define __FLT_HAS_QUIET_NAN__ 1
8234// X86_64-CLOUDABI:#define __FLT_MANT_DIG__ 24
8235// X86_64-CLOUDABI:#define __FLT_MAX_10_EXP__ 38
8236// X86_64-CLOUDABI:#define __FLT_MAX_EXP__ 128
8237// X86_64-CLOUDABI:#define __FLT_MAX__ 3.40282347e+38F
8238// X86_64-CLOUDABI:#define __FLT_MIN_10_EXP__ (-37)
8239// X86_64-CLOUDABI:#define __FLT_MIN_EXP__ (-125)
8240// X86_64-CLOUDABI:#define __FLT_MIN__ 1.17549435e-38F
8241// X86_64-CLOUDABI:#define __FLT_RADIX__ 2
8242// X86_64-CLOUDABI:#define __GCC_ATOMIC_BOOL_LOCK_FREE 2
8243// X86_64-CLOUDABI:#define __GCC_ATOMIC_CHAR16_T_LOCK_FREE 2
8244// X86_64-CLOUDABI:#define __GCC_ATOMIC_CHAR32_T_LOCK_FREE 2
8245// X86_64-CLOUDABI:#define __GCC_ATOMIC_CHAR_LOCK_FREE 2
8246// X86_64-CLOUDABI:#define __GCC_ATOMIC_INT_LOCK_FREE 2
8247// X86_64-CLOUDABI:#define __GCC_ATOMIC_LLONG_LOCK_FREE 2
8248// X86_64-CLOUDABI:#define __GCC_ATOMIC_LONG_LOCK_FREE 2
8249// X86_64-CLOUDABI:#define __GCC_ATOMIC_POINTER_LOCK_FREE 2
8250// X86_64-CLOUDABI:#define __GCC_ATOMIC_SHORT_LOCK_FREE 2
8251// X86_64-CLOUDABI:#define __GCC_ATOMIC_TEST_AND_SET_TRUEVAL 1
8252// X86_64-CLOUDABI:#define __GCC_ATOMIC_WCHAR_T_LOCK_FREE 2
8253// X86_64-CLOUDABI:#define __GNUC_MINOR__ 2
8254// X86_64-CLOUDABI:#define __GNUC_PATCHLEVEL__ 1
8255// X86_64-CLOUDABI:#define __GNUC_STDC_INLINE__ 1
8256// X86_64-CLOUDABI:#define __GNUC__ 4
8257// X86_64-CLOUDABI:#define __GXX_ABI_VERSION 1002
James Y Knightc97efa42016-02-11 16:51:29 +00008258// X86_64-CLOUDABI:#define __INT16_C_SUFFIX__
Ed Schoutenf33c6072015-03-11 08:42:46 +00008259// X86_64-CLOUDABI:#define __INT16_FMTd__ "hd"
8260// X86_64-CLOUDABI:#define __INT16_FMTi__ "hi"
8261// X86_64-CLOUDABI:#define __INT16_MAX__ 32767
8262// X86_64-CLOUDABI:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +00008263// X86_64-CLOUDABI:#define __INT32_C_SUFFIX__
Ed Schoutenf33c6072015-03-11 08:42:46 +00008264// X86_64-CLOUDABI:#define __INT32_FMTd__ "d"
8265// X86_64-CLOUDABI:#define __INT32_FMTi__ "i"
8266// X86_64-CLOUDABI:#define __INT32_MAX__ 2147483647
8267// X86_64-CLOUDABI:#define __INT32_TYPE__ int
8268// X86_64-CLOUDABI:#define __INT64_C_SUFFIX__ L
8269// X86_64-CLOUDABI:#define __INT64_FMTd__ "ld"
8270// X86_64-CLOUDABI:#define __INT64_FMTi__ "li"
8271// X86_64-CLOUDABI:#define __INT64_MAX__ 9223372036854775807L
8272// X86_64-CLOUDABI:#define __INT64_TYPE__ long int
James Y Knightc97efa42016-02-11 16:51:29 +00008273// X86_64-CLOUDABI:#define __INT8_C_SUFFIX__
Ed Schoutenf33c6072015-03-11 08:42:46 +00008274// X86_64-CLOUDABI:#define __INT8_FMTd__ "hhd"
8275// X86_64-CLOUDABI:#define __INT8_FMTi__ "hhi"
8276// X86_64-CLOUDABI:#define __INT8_MAX__ 127
8277// X86_64-CLOUDABI:#define __INT8_TYPE__ signed char
8278// X86_64-CLOUDABI:#define __INTMAX_C_SUFFIX__ L
8279// X86_64-CLOUDABI:#define __INTMAX_FMTd__ "ld"
8280// X86_64-CLOUDABI:#define __INTMAX_FMTi__ "li"
8281// X86_64-CLOUDABI:#define __INTMAX_MAX__ 9223372036854775807L
8282// X86_64-CLOUDABI:#define __INTMAX_TYPE__ long int
8283// X86_64-CLOUDABI:#define __INTMAX_WIDTH__ 64
8284// X86_64-CLOUDABI:#define __INTPTR_FMTd__ "ld"
8285// X86_64-CLOUDABI:#define __INTPTR_FMTi__ "li"
8286// X86_64-CLOUDABI:#define __INTPTR_MAX__ 9223372036854775807L
8287// X86_64-CLOUDABI:#define __INTPTR_TYPE__ long int
8288// X86_64-CLOUDABI:#define __INTPTR_WIDTH__ 64
8289// X86_64-CLOUDABI:#define __INT_FAST16_FMTd__ "hd"
8290// X86_64-CLOUDABI:#define __INT_FAST16_FMTi__ "hi"
8291// X86_64-CLOUDABI:#define __INT_FAST16_MAX__ 32767
8292// X86_64-CLOUDABI:#define __INT_FAST16_TYPE__ short
8293// X86_64-CLOUDABI:#define __INT_FAST32_FMTd__ "d"
8294// X86_64-CLOUDABI:#define __INT_FAST32_FMTi__ "i"
8295// X86_64-CLOUDABI:#define __INT_FAST32_MAX__ 2147483647
8296// X86_64-CLOUDABI:#define __INT_FAST32_TYPE__ int
8297// X86_64-CLOUDABI:#define __INT_FAST64_FMTd__ "ld"
8298// X86_64-CLOUDABI:#define __INT_FAST64_FMTi__ "li"
8299// X86_64-CLOUDABI:#define __INT_FAST64_MAX__ 9223372036854775807L
8300// X86_64-CLOUDABI:#define __INT_FAST64_TYPE__ long int
8301// X86_64-CLOUDABI:#define __INT_FAST8_FMTd__ "hhd"
8302// X86_64-CLOUDABI:#define __INT_FAST8_FMTi__ "hhi"
8303// X86_64-CLOUDABI:#define __INT_FAST8_MAX__ 127
8304// X86_64-CLOUDABI:#define __INT_FAST8_TYPE__ signed char
8305// X86_64-CLOUDABI:#define __INT_LEAST16_FMTd__ "hd"
8306// X86_64-CLOUDABI:#define __INT_LEAST16_FMTi__ "hi"
8307// X86_64-CLOUDABI:#define __INT_LEAST16_MAX__ 32767
8308// X86_64-CLOUDABI:#define __INT_LEAST16_TYPE__ short
8309// X86_64-CLOUDABI:#define __INT_LEAST32_FMTd__ "d"
8310// X86_64-CLOUDABI:#define __INT_LEAST32_FMTi__ "i"
8311// X86_64-CLOUDABI:#define __INT_LEAST32_MAX__ 2147483647
8312// X86_64-CLOUDABI:#define __INT_LEAST32_TYPE__ int
8313// X86_64-CLOUDABI:#define __INT_LEAST64_FMTd__ "ld"
8314// X86_64-CLOUDABI:#define __INT_LEAST64_FMTi__ "li"
8315// X86_64-CLOUDABI:#define __INT_LEAST64_MAX__ 9223372036854775807L
8316// X86_64-CLOUDABI:#define __INT_LEAST64_TYPE__ long int
8317// X86_64-CLOUDABI:#define __INT_LEAST8_FMTd__ "hhd"
8318// X86_64-CLOUDABI:#define __INT_LEAST8_FMTi__ "hhi"
8319// X86_64-CLOUDABI:#define __INT_LEAST8_MAX__ 127
8320// X86_64-CLOUDABI:#define __INT_LEAST8_TYPE__ signed char
8321// X86_64-CLOUDABI:#define __INT_MAX__ 2147483647
8322// X86_64-CLOUDABI:#define __LDBL_DECIMAL_DIG__ 21
8323// X86_64-CLOUDABI:#define __LDBL_DENORM_MIN__ 3.64519953188247460253e-4951L
8324// X86_64-CLOUDABI:#define __LDBL_DIG__ 18
8325// X86_64-CLOUDABI:#define __LDBL_EPSILON__ 1.08420217248550443401e-19L
8326// X86_64-CLOUDABI:#define __LDBL_HAS_DENORM__ 1
8327// X86_64-CLOUDABI:#define __LDBL_HAS_INFINITY__ 1
8328// X86_64-CLOUDABI:#define __LDBL_HAS_QUIET_NAN__ 1
8329// X86_64-CLOUDABI:#define __LDBL_MANT_DIG__ 64
8330// X86_64-CLOUDABI:#define __LDBL_MAX_10_EXP__ 4932
8331// X86_64-CLOUDABI:#define __LDBL_MAX_EXP__ 16384
8332// X86_64-CLOUDABI:#define __LDBL_MAX__ 1.18973149535723176502e+4932L
8333// X86_64-CLOUDABI:#define __LDBL_MIN_10_EXP__ (-4931)
8334// X86_64-CLOUDABI:#define __LDBL_MIN_EXP__ (-16381)
8335// X86_64-CLOUDABI:#define __LDBL_MIN__ 3.36210314311209350626e-4932L
8336// X86_64-CLOUDABI:#define __LITTLE_ENDIAN__ 1
8337// X86_64-CLOUDABI:#define __LONG_LONG_MAX__ 9223372036854775807LL
8338// X86_64-CLOUDABI:#define __LONG_MAX__ 9223372036854775807L
8339// X86_64-CLOUDABI:#define __LP64__ 1
8340// X86_64-CLOUDABI:#define __MMX__ 1
8341// X86_64-CLOUDABI:#define __NO_INLINE__ 1
8342// X86_64-CLOUDABI:#define __NO_MATH_INLINES 1
8343// X86_64-CLOUDABI:#define __ORDER_BIG_ENDIAN__ 4321
8344// X86_64-CLOUDABI:#define __ORDER_LITTLE_ENDIAN__ 1234
8345// X86_64-CLOUDABI:#define __ORDER_PDP_ENDIAN__ 3412
8346// X86_64-CLOUDABI:#define __POINTER_WIDTH__ 64
8347// X86_64-CLOUDABI:#define __PRAGMA_REDEFINE_EXTNAME 1
8348// X86_64-CLOUDABI:#define __PTRDIFF_FMTd__ "ld"
8349// X86_64-CLOUDABI:#define __PTRDIFF_FMTi__ "li"
8350// X86_64-CLOUDABI:#define __PTRDIFF_MAX__ 9223372036854775807L
8351// X86_64-CLOUDABI:#define __PTRDIFF_TYPE__ long int
8352// X86_64-CLOUDABI:#define __PTRDIFF_WIDTH__ 64
James Y Knightc97efa42016-02-11 16:51:29 +00008353// X86_64-CLOUDABI:#define __REGISTER_PREFIX__
Ed Schoutenf33c6072015-03-11 08:42:46 +00008354// X86_64-CLOUDABI:#define __SCHAR_MAX__ 127
8355// X86_64-CLOUDABI:#define __SHRT_MAX__ 32767
8356// X86_64-CLOUDABI:#define __SIG_ATOMIC_MAX__ 2147483647
8357// X86_64-CLOUDABI:#define __SIG_ATOMIC_WIDTH__ 32
8358// X86_64-CLOUDABI:#define __SIZEOF_DOUBLE__ 8
8359// X86_64-CLOUDABI:#define __SIZEOF_FLOAT__ 4
8360// X86_64-CLOUDABI:#define __SIZEOF_INT128__ 16
8361// X86_64-CLOUDABI:#define __SIZEOF_INT__ 4
8362// X86_64-CLOUDABI:#define __SIZEOF_LONG_DOUBLE__ 16
8363// X86_64-CLOUDABI:#define __SIZEOF_LONG_LONG__ 8
8364// X86_64-CLOUDABI:#define __SIZEOF_LONG__ 8
8365// X86_64-CLOUDABI:#define __SIZEOF_POINTER__ 8
8366// X86_64-CLOUDABI:#define __SIZEOF_PTRDIFF_T__ 8
8367// X86_64-CLOUDABI:#define __SIZEOF_SHORT__ 2
8368// X86_64-CLOUDABI:#define __SIZEOF_SIZE_T__ 8
8369// X86_64-CLOUDABI:#define __SIZEOF_WCHAR_T__ 4
8370// X86_64-CLOUDABI:#define __SIZEOF_WINT_T__ 4
8371// X86_64-CLOUDABI:#define __SIZE_FMTX__ "lX"
8372// X86_64-CLOUDABI:#define __SIZE_FMTo__ "lo"
8373// X86_64-CLOUDABI:#define __SIZE_FMTu__ "lu"
8374// X86_64-CLOUDABI:#define __SIZE_FMTx__ "lx"
8375// X86_64-CLOUDABI:#define __SIZE_MAX__ 18446744073709551615UL
8376// X86_64-CLOUDABI:#define __SIZE_TYPE__ long unsigned int
8377// X86_64-CLOUDABI:#define __SIZE_WIDTH__ 64
8378// X86_64-CLOUDABI:#define __SSE2_MATH__ 1
8379// X86_64-CLOUDABI:#define __SSE2__ 1
8380// X86_64-CLOUDABI:#define __SSE_MATH__ 1
8381// X86_64-CLOUDABI:#define __SSE__ 1
8382// X86_64-CLOUDABI:#define __STDC_HOSTED__ 0
8383// X86_64-CLOUDABI:#define __STDC_ISO_10646__ 201206L
8384// X86_64-CLOUDABI:#define __STDC_UTF_16__ 1
8385// X86_64-CLOUDABI:#define __STDC_UTF_32__ 1
8386// X86_64-CLOUDABI:#define __STDC_VERSION__ 201112L
8387// X86_64-CLOUDABI:#define __STDC__ 1
James Y Knightc97efa42016-02-11 16:51:29 +00008388// X86_64-CLOUDABI:#define __UINT16_C_SUFFIX__
Ed Schoutenf33c6072015-03-11 08:42:46 +00008389// X86_64-CLOUDABI:#define __UINT16_FMTX__ "hX"
8390// X86_64-CLOUDABI:#define __UINT16_FMTo__ "ho"
8391// X86_64-CLOUDABI:#define __UINT16_FMTu__ "hu"
8392// X86_64-CLOUDABI:#define __UINT16_FMTx__ "hx"
8393// X86_64-CLOUDABI:#define __UINT16_MAX__ 65535
8394// X86_64-CLOUDABI:#define __UINT16_TYPE__ unsigned short
8395// X86_64-CLOUDABI:#define __UINT32_C_SUFFIX__ U
8396// X86_64-CLOUDABI:#define __UINT32_FMTX__ "X"
8397// X86_64-CLOUDABI:#define __UINT32_FMTo__ "o"
8398// X86_64-CLOUDABI:#define __UINT32_FMTu__ "u"
8399// X86_64-CLOUDABI:#define __UINT32_FMTx__ "x"
8400// X86_64-CLOUDABI:#define __UINT32_MAX__ 4294967295U
8401// X86_64-CLOUDABI:#define __UINT32_TYPE__ unsigned int
8402// X86_64-CLOUDABI:#define __UINT64_C_SUFFIX__ UL
8403// X86_64-CLOUDABI:#define __UINT64_FMTX__ "lX"
8404// X86_64-CLOUDABI:#define __UINT64_FMTo__ "lo"
8405// X86_64-CLOUDABI:#define __UINT64_FMTu__ "lu"
8406// X86_64-CLOUDABI:#define __UINT64_FMTx__ "lx"
8407// X86_64-CLOUDABI:#define __UINT64_MAX__ 18446744073709551615UL
8408// X86_64-CLOUDABI:#define __UINT64_TYPE__ long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00008409// X86_64-CLOUDABI:#define __UINT8_C_SUFFIX__
Ed Schoutenf33c6072015-03-11 08:42:46 +00008410// X86_64-CLOUDABI:#define __UINT8_FMTX__ "hhX"
8411// X86_64-CLOUDABI:#define __UINT8_FMTo__ "hho"
8412// X86_64-CLOUDABI:#define __UINT8_FMTu__ "hhu"
8413// X86_64-CLOUDABI:#define __UINT8_FMTx__ "hhx"
8414// X86_64-CLOUDABI:#define __UINT8_MAX__ 255
8415// X86_64-CLOUDABI:#define __UINT8_TYPE__ unsigned char
8416// X86_64-CLOUDABI:#define __UINTMAX_C_SUFFIX__ UL
8417// X86_64-CLOUDABI:#define __UINTMAX_FMTX__ "lX"
8418// X86_64-CLOUDABI:#define __UINTMAX_FMTo__ "lo"
8419// X86_64-CLOUDABI:#define __UINTMAX_FMTu__ "lu"
8420// X86_64-CLOUDABI:#define __UINTMAX_FMTx__ "lx"
8421// X86_64-CLOUDABI:#define __UINTMAX_MAX__ 18446744073709551615UL
8422// X86_64-CLOUDABI:#define __UINTMAX_TYPE__ long unsigned int
8423// X86_64-CLOUDABI:#define __UINTMAX_WIDTH__ 64
8424// X86_64-CLOUDABI:#define __UINTPTR_FMTX__ "lX"
8425// X86_64-CLOUDABI:#define __UINTPTR_FMTo__ "lo"
8426// X86_64-CLOUDABI:#define __UINTPTR_FMTu__ "lu"
8427// X86_64-CLOUDABI:#define __UINTPTR_FMTx__ "lx"
8428// X86_64-CLOUDABI:#define __UINTPTR_MAX__ 18446744073709551615UL
8429// X86_64-CLOUDABI:#define __UINTPTR_TYPE__ long unsigned int
8430// X86_64-CLOUDABI:#define __UINTPTR_WIDTH__ 64
8431// X86_64-CLOUDABI:#define __UINT_FAST16_FMTX__ "hX"
8432// X86_64-CLOUDABI:#define __UINT_FAST16_FMTo__ "ho"
8433// X86_64-CLOUDABI:#define __UINT_FAST16_FMTu__ "hu"
8434// X86_64-CLOUDABI:#define __UINT_FAST16_FMTx__ "hx"
8435// X86_64-CLOUDABI:#define __UINT_FAST16_MAX__ 65535
8436// X86_64-CLOUDABI:#define __UINT_FAST16_TYPE__ unsigned short
8437// X86_64-CLOUDABI:#define __UINT_FAST32_FMTX__ "X"
8438// X86_64-CLOUDABI:#define __UINT_FAST32_FMTo__ "o"
8439// X86_64-CLOUDABI:#define __UINT_FAST32_FMTu__ "u"
8440// X86_64-CLOUDABI:#define __UINT_FAST32_FMTx__ "x"
8441// X86_64-CLOUDABI:#define __UINT_FAST32_MAX__ 4294967295U
8442// X86_64-CLOUDABI:#define __UINT_FAST32_TYPE__ unsigned int
8443// X86_64-CLOUDABI:#define __UINT_FAST64_FMTX__ "lX"
8444// X86_64-CLOUDABI:#define __UINT_FAST64_FMTo__ "lo"
8445// X86_64-CLOUDABI:#define __UINT_FAST64_FMTu__ "lu"
8446// X86_64-CLOUDABI:#define __UINT_FAST64_FMTx__ "lx"
8447// X86_64-CLOUDABI:#define __UINT_FAST64_MAX__ 18446744073709551615UL
8448// X86_64-CLOUDABI:#define __UINT_FAST64_TYPE__ long unsigned int
8449// X86_64-CLOUDABI:#define __UINT_FAST8_FMTX__ "hhX"
8450// X86_64-CLOUDABI:#define __UINT_FAST8_FMTo__ "hho"
8451// X86_64-CLOUDABI:#define __UINT_FAST8_FMTu__ "hhu"
8452// X86_64-CLOUDABI:#define __UINT_FAST8_FMTx__ "hhx"
8453// X86_64-CLOUDABI:#define __UINT_FAST8_MAX__ 255
8454// X86_64-CLOUDABI:#define __UINT_FAST8_TYPE__ unsigned char
8455// X86_64-CLOUDABI:#define __UINT_LEAST16_FMTX__ "hX"
8456// X86_64-CLOUDABI:#define __UINT_LEAST16_FMTo__ "ho"
8457// X86_64-CLOUDABI:#define __UINT_LEAST16_FMTu__ "hu"
8458// X86_64-CLOUDABI:#define __UINT_LEAST16_FMTx__ "hx"
8459// X86_64-CLOUDABI:#define __UINT_LEAST16_MAX__ 65535
8460// X86_64-CLOUDABI:#define __UINT_LEAST16_TYPE__ unsigned short
8461// X86_64-CLOUDABI:#define __UINT_LEAST32_FMTX__ "X"
8462// X86_64-CLOUDABI:#define __UINT_LEAST32_FMTo__ "o"
8463// X86_64-CLOUDABI:#define __UINT_LEAST32_FMTu__ "u"
8464// X86_64-CLOUDABI:#define __UINT_LEAST32_FMTx__ "x"
8465// X86_64-CLOUDABI:#define __UINT_LEAST32_MAX__ 4294967295U
8466// X86_64-CLOUDABI:#define __UINT_LEAST32_TYPE__ unsigned int
8467// X86_64-CLOUDABI:#define __UINT_LEAST64_FMTX__ "lX"
8468// X86_64-CLOUDABI:#define __UINT_LEAST64_FMTo__ "lo"
8469// X86_64-CLOUDABI:#define __UINT_LEAST64_FMTu__ "lu"
8470// X86_64-CLOUDABI:#define __UINT_LEAST64_FMTx__ "lx"
8471// X86_64-CLOUDABI:#define __UINT_LEAST64_MAX__ 18446744073709551615UL
8472// X86_64-CLOUDABI:#define __UINT_LEAST64_TYPE__ long unsigned int
8473// X86_64-CLOUDABI:#define __UINT_LEAST8_FMTX__ "hhX"
8474// X86_64-CLOUDABI:#define __UINT_LEAST8_FMTo__ "hho"
8475// X86_64-CLOUDABI:#define __UINT_LEAST8_FMTu__ "hhu"
8476// X86_64-CLOUDABI:#define __UINT_LEAST8_FMTx__ "hhx"
8477// X86_64-CLOUDABI:#define __UINT_LEAST8_MAX__ 255
8478// X86_64-CLOUDABI:#define __UINT_LEAST8_TYPE__ unsigned char
James Y Knightc97efa42016-02-11 16:51:29 +00008479// X86_64-CLOUDABI:#define __USER_LABEL_PREFIX__
8480// X86_64-CLOUDABI:#define __VERSION__ "4.2.1 Compatible{{.*}}
Ed Schoutenf33c6072015-03-11 08:42:46 +00008481// X86_64-CLOUDABI:#define __WCHAR_MAX__ 2147483647
8482// X86_64-CLOUDABI:#define __WCHAR_TYPE__ int
8483// X86_64-CLOUDABI:#define __WCHAR_WIDTH__ 32
Ed Schouten1382a322017-12-05 09:13:18 +00008484// X86_64-CLOUDABI:#define __WINT_MAX__ 2147483647
Ed Schoutenf33c6072015-03-11 08:42:46 +00008485// X86_64-CLOUDABI:#define __WINT_TYPE__ int
8486// X86_64-CLOUDABI:#define __WINT_WIDTH__ 32
8487// X86_64-CLOUDABI:#define __amd64 1
8488// X86_64-CLOUDABI:#define __amd64__ 1
8489// X86_64-CLOUDABI:#define __clang__ 1
James Y Knightc97efa42016-02-11 16:51:29 +00008490// X86_64-CLOUDABI:#define __clang_major__ {{.*}}
8491// X86_64-CLOUDABI:#define __clang_minor__ {{.*}}
8492// X86_64-CLOUDABI:#define __clang_patchlevel__ {{.*}}
8493// X86_64-CLOUDABI:#define __clang_version__ {{.*}}
Ed Schoutenf33c6072015-03-11 08:42:46 +00008494// X86_64-CLOUDABI:#define __llvm__ 1
8495// X86_64-CLOUDABI:#define __x86_64 1
8496// X86_64-CLOUDABI:#define __x86_64__ 1
8497//
James Y Knightc97efa42016-02-11 16:51:29 +00008498// 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 +00008499//
8500// X86_64-LINUX:#define _LP64 1
Tim Northovera6a19f12015-02-06 01:25:07 +00008501// X86_64-LINUX:#define __BIGGEST_ALIGNMENT__ 16
Dylan Noblesmith673728f2012-07-27 18:34:31 +00008502// X86_64-LINUX:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
Douglas Gregore6d6e512011-01-12 21:19:25 +00008503// X86_64-LINUX:#define __CHAR16_TYPE__ unsigned short
8504// X86_64-LINUX:#define __CHAR32_TYPE__ unsigned int
8505// X86_64-LINUX:#define __CHAR_BIT__ 8
8506// X86_64-LINUX:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
8507// X86_64-LINUX:#define __DBL_DIG__ 15
8508// X86_64-LINUX:#define __DBL_EPSILON__ 2.2204460492503131e-16
8509// X86_64-LINUX:#define __DBL_HAS_DENORM__ 1
8510// X86_64-LINUX:#define __DBL_HAS_INFINITY__ 1
8511// X86_64-LINUX:#define __DBL_HAS_QUIET_NAN__ 1
8512// X86_64-LINUX:#define __DBL_MANT_DIG__ 53
8513// X86_64-LINUX:#define __DBL_MAX_10_EXP__ 308
8514// X86_64-LINUX:#define __DBL_MAX_EXP__ 1024
8515// X86_64-LINUX:#define __DBL_MAX__ 1.7976931348623157e+308
8516// X86_64-LINUX:#define __DBL_MIN_10_EXP__ (-307)
8517// X86_64-LINUX:#define __DBL_MIN_EXP__ (-1021)
8518// X86_64-LINUX:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00008519// X86_64-LINUX:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Douglas Gregore6d6e512011-01-12 21:19:25 +00008520// X86_64-LINUX:#define __FLT_DENORM_MIN__ 1.40129846e-45F
8521// X86_64-LINUX:#define __FLT_DIG__ 6
8522// X86_64-LINUX:#define __FLT_EPSILON__ 1.19209290e-7F
8523// X86_64-LINUX:#define __FLT_EVAL_METHOD__ 0
8524// X86_64-LINUX:#define __FLT_HAS_DENORM__ 1
8525// X86_64-LINUX:#define __FLT_HAS_INFINITY__ 1
8526// X86_64-LINUX:#define __FLT_HAS_QUIET_NAN__ 1
8527// X86_64-LINUX:#define __FLT_MANT_DIG__ 24
8528// X86_64-LINUX:#define __FLT_MAX_10_EXP__ 38
8529// X86_64-LINUX:#define __FLT_MAX_EXP__ 128
8530// X86_64-LINUX:#define __FLT_MAX__ 3.40282347e+38F
8531// X86_64-LINUX:#define __FLT_MIN_10_EXP__ (-37)
8532// X86_64-LINUX:#define __FLT_MIN_EXP__ (-125)
8533// X86_64-LINUX:#define __FLT_MIN__ 1.17549435e-38F
8534// X86_64-LINUX:#define __FLT_RADIX__ 2
James Y Knightc97efa42016-02-11 16:51:29 +00008535// X86_64-LINUX:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00008536// X86_64-LINUX:#define __INT16_FMTd__ "hd"
8537// X86_64-LINUX:#define __INT16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00008538// X86_64-LINUX:#define __INT16_MAX__ 32767
Douglas Gregore6d6e512011-01-12 21:19:25 +00008539// X86_64-LINUX:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +00008540// X86_64-LINUX:#define __INT32_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00008541// X86_64-LINUX:#define __INT32_FMTd__ "d"
8542// X86_64-LINUX:#define __INT32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00008543// X86_64-LINUX:#define __INT32_MAX__ 2147483647
Douglas Gregore6d6e512011-01-12 21:19:25 +00008544// X86_64-LINUX:#define __INT32_TYPE__ int
8545// X86_64-LINUX:#define __INT64_C_SUFFIX__ L
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00008546// X86_64-LINUX:#define __INT64_FMTd__ "ld"
8547// X86_64-LINUX:#define __INT64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00008548// X86_64-LINUX:#define __INT64_MAX__ 9223372036854775807L
Douglas Gregore6d6e512011-01-12 21:19:25 +00008549// X86_64-LINUX:#define __INT64_TYPE__ long int
James Y Knightc97efa42016-02-11 16:51:29 +00008550// X86_64-LINUX:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00008551// X86_64-LINUX:#define __INT8_FMTd__ "hhd"
8552// X86_64-LINUX:#define __INT8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00008553// X86_64-LINUX:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00008554// X86_64-LINUX:#define __INT8_TYPE__ signed char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00008555// X86_64-LINUX:#define __INTMAX_C_SUFFIX__ L
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00008556// X86_64-LINUX:#define __INTMAX_FMTd__ "ld"
8557// X86_64-LINUX:#define __INTMAX_FMTi__ "li"
Douglas Gregore6d6e512011-01-12 21:19:25 +00008558// X86_64-LINUX:#define __INTMAX_MAX__ 9223372036854775807L
8559// X86_64-LINUX:#define __INTMAX_TYPE__ long int
8560// X86_64-LINUX:#define __INTMAX_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00008561// X86_64-LINUX:#define __INTPTR_FMTd__ "ld"
8562// X86_64-LINUX:#define __INTPTR_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00008563// X86_64-LINUX:#define __INTPTR_MAX__ 9223372036854775807L
Douglas Gregore6d6e512011-01-12 21:19:25 +00008564// X86_64-LINUX:#define __INTPTR_TYPE__ long int
8565// X86_64-LINUX:#define __INTPTR_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00008566// X86_64-LINUX:#define __INT_FAST16_FMTd__ "hd"
8567// X86_64-LINUX:#define __INT_FAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00008568// X86_64-LINUX:#define __INT_FAST16_MAX__ 32767
8569// X86_64-LINUX:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00008570// X86_64-LINUX:#define __INT_FAST32_FMTd__ "d"
8571// X86_64-LINUX:#define __INT_FAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00008572// X86_64-LINUX:#define __INT_FAST32_MAX__ 2147483647
8573// X86_64-LINUX:#define __INT_FAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00008574// X86_64-LINUX:#define __INT_FAST64_FMTd__ "ld"
8575// X86_64-LINUX:#define __INT_FAST64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00008576// X86_64-LINUX:#define __INT_FAST64_MAX__ 9223372036854775807L
8577// X86_64-LINUX:#define __INT_FAST64_TYPE__ long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00008578// X86_64-LINUX:#define __INT_FAST8_FMTd__ "hhd"
8579// X86_64-LINUX:#define __INT_FAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00008580// X86_64-LINUX:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00008581// X86_64-LINUX:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00008582// X86_64-LINUX:#define __INT_LEAST16_FMTd__ "hd"
8583// X86_64-LINUX:#define __INT_LEAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00008584// X86_64-LINUX:#define __INT_LEAST16_MAX__ 32767
8585// X86_64-LINUX:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00008586// X86_64-LINUX:#define __INT_LEAST32_FMTd__ "d"
8587// X86_64-LINUX:#define __INT_LEAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00008588// X86_64-LINUX:#define __INT_LEAST32_MAX__ 2147483647
8589// X86_64-LINUX:#define __INT_LEAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00008590// X86_64-LINUX:#define __INT_LEAST64_FMTd__ "ld"
8591// X86_64-LINUX:#define __INT_LEAST64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00008592// X86_64-LINUX:#define __INT_LEAST64_MAX__ 9223372036854775807L
8593// X86_64-LINUX:#define __INT_LEAST64_TYPE__ long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00008594// X86_64-LINUX:#define __INT_LEAST8_FMTd__ "hhd"
8595// X86_64-LINUX:#define __INT_LEAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00008596// X86_64-LINUX:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00008597// X86_64-LINUX:#define __INT_LEAST8_TYPE__ signed char
Douglas Gregore6d6e512011-01-12 21:19:25 +00008598// X86_64-LINUX:#define __INT_MAX__ 2147483647
8599// X86_64-LINUX:#define __LDBL_DENORM_MIN__ 3.64519953188247460253e-4951L
8600// X86_64-LINUX:#define __LDBL_DIG__ 18
8601// X86_64-LINUX:#define __LDBL_EPSILON__ 1.08420217248550443401e-19L
8602// X86_64-LINUX:#define __LDBL_HAS_DENORM__ 1
8603// X86_64-LINUX:#define __LDBL_HAS_INFINITY__ 1
8604// X86_64-LINUX:#define __LDBL_HAS_QUIET_NAN__ 1
8605// X86_64-LINUX:#define __LDBL_MANT_DIG__ 64
8606// X86_64-LINUX:#define __LDBL_MAX_10_EXP__ 4932
8607// X86_64-LINUX:#define __LDBL_MAX_EXP__ 16384
8608// X86_64-LINUX:#define __LDBL_MAX__ 1.18973149535723176502e+4932L
8609// X86_64-LINUX:#define __LDBL_MIN_10_EXP__ (-4931)
8610// X86_64-LINUX:#define __LDBL_MIN_EXP__ (-16381)
8611// X86_64-LINUX:#define __LDBL_MIN__ 3.36210314311209350626e-4932L
8612// X86_64-LINUX:#define __LITTLE_ENDIAN__ 1
8613// X86_64-LINUX:#define __LONG_LONG_MAX__ 9223372036854775807LL
8614// X86_64-LINUX:#define __LONG_MAX__ 9223372036854775807L
8615// X86_64-LINUX:#define __LP64__ 1
8616// X86_64-LINUX:#define __MMX__ 1
Douglas Gregore6d6e512011-01-12 21:19:25 +00008617// X86_64-LINUX:#define __NO_MATH_INLINES 1
8618// X86_64-LINUX:#define __POINTER_WIDTH__ 64
8619// X86_64-LINUX:#define __PTRDIFF_TYPE__ long int
8620// X86_64-LINUX:#define __PTRDIFF_WIDTH__ 64
James Y Knightc97efa42016-02-11 16:51:29 +00008621// X86_64-LINUX:#define __REGISTER_PREFIX__
Douglas Gregore6d6e512011-01-12 21:19:25 +00008622// X86_64-LINUX:#define __SCHAR_MAX__ 127
8623// X86_64-LINUX:#define __SHRT_MAX__ 32767
Joerg Sonnenbergerb3a49692014-07-17 18:31:20 +00008624// X86_64-LINUX:#define __SIG_ATOMIC_MAX__ 2147483647
Douglas Gregore6d6e512011-01-12 21:19:25 +00008625// X86_64-LINUX:#define __SIG_ATOMIC_WIDTH__ 32
8626// X86_64-LINUX:#define __SIZEOF_DOUBLE__ 8
8627// X86_64-LINUX:#define __SIZEOF_FLOAT__ 4
8628// X86_64-LINUX:#define __SIZEOF_INT__ 4
8629// X86_64-LINUX:#define __SIZEOF_LONG_DOUBLE__ 16
8630// X86_64-LINUX:#define __SIZEOF_LONG_LONG__ 8
8631// X86_64-LINUX:#define __SIZEOF_LONG__ 8
8632// X86_64-LINUX:#define __SIZEOF_POINTER__ 8
8633// X86_64-LINUX:#define __SIZEOF_PTRDIFF_T__ 8
8634// X86_64-LINUX:#define __SIZEOF_SHORT__ 2
8635// X86_64-LINUX:#define __SIZEOF_SIZE_T__ 8
8636// X86_64-LINUX:#define __SIZEOF_WCHAR_T__ 4
8637// X86_64-LINUX:#define __SIZEOF_WINT_T__ 4
Evgeniy Stepanovc3c725a2013-03-28 08:36:54 +00008638// X86_64-LINUX:#define __SIZE_MAX__ 18446744073709551615UL
Douglas Gregore6d6e512011-01-12 21:19:25 +00008639// X86_64-LINUX:#define __SIZE_TYPE__ long unsigned int
8640// X86_64-LINUX:#define __SIZE_WIDTH__ 64
8641// X86_64-LINUX:#define __SSE2_MATH__ 1
8642// X86_64-LINUX:#define __SSE2__ 1
8643// X86_64-LINUX:#define __SSE_MATH__ 1
8644// X86_64-LINUX:#define __SSE__ 1
James Y Knightc97efa42016-02-11 16:51:29 +00008645// X86_64-LINUX:#define __UINT16_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00008646// X86_64-LINUX:#define __UINT16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00008647// X86_64-LINUX:#define __UINT16_TYPE__ unsigned short
8648// X86_64-LINUX:#define __UINT32_C_SUFFIX__ U
8649// X86_64-LINUX:#define __UINT32_MAX__ 4294967295U
8650// X86_64-LINUX:#define __UINT32_TYPE__ unsigned int
8651// X86_64-LINUX:#define __UINT64_C_SUFFIX__ UL
8652// X86_64-LINUX:#define __UINT64_MAX__ 18446744073709551615UL
8653// X86_64-LINUX:#define __UINT64_TYPE__ long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00008654// X86_64-LINUX:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00008655// X86_64-LINUX:#define __UINT8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00008656// X86_64-LINUX:#define __UINT8_TYPE__ unsigned char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00008657// X86_64-LINUX:#define __UINTMAX_C_SUFFIX__ UL
JF Bastienab8d0a02014-06-25 01:31:33 +00008658// X86_64-LINUX:#define __UINTMAX_MAX__ 18446744073709551615UL
Douglas Gregore6d6e512011-01-12 21:19:25 +00008659// X86_64-LINUX:#define __UINTMAX_TYPE__ long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00008660// X86_64-LINUX:#define __UINTMAX_WIDTH__ 64
8661// X86_64-LINUX:#define __UINTPTR_MAX__ 18446744073709551615UL
8662// X86_64-LINUX:#define __UINTPTR_TYPE__ long unsigned int
8663// X86_64-LINUX:#define __UINTPTR_WIDTH__ 64
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00008664// X86_64-LINUX:#define __UINT_FAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00008665// X86_64-LINUX:#define __UINT_FAST16_TYPE__ unsigned short
8666// X86_64-LINUX:#define __UINT_FAST32_MAX__ 4294967295U
8667// X86_64-LINUX:#define __UINT_FAST32_TYPE__ unsigned int
8668// X86_64-LINUX:#define __UINT_FAST64_MAX__ 18446744073709551615UL
8669// X86_64-LINUX:#define __UINT_FAST64_TYPE__ long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00008670// X86_64-LINUX:#define __UINT_FAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00008671// X86_64-LINUX:#define __UINT_FAST8_TYPE__ unsigned char
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00008672// X86_64-LINUX:#define __UINT_LEAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00008673// X86_64-LINUX:#define __UINT_LEAST16_TYPE__ unsigned short
8674// X86_64-LINUX:#define __UINT_LEAST32_MAX__ 4294967295U
8675// X86_64-LINUX:#define __UINT_LEAST32_TYPE__ unsigned int
8676// X86_64-LINUX:#define __UINT_LEAST64_MAX__ 18446744073709551615UL
8677// X86_64-LINUX:#define __UINT_LEAST64_TYPE__ long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00008678// X86_64-LINUX:#define __UINT_LEAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00008679// X86_64-LINUX:#define __UINT_LEAST8_TYPE__ unsigned char
Douglas Gregore6d6e512011-01-12 21:19:25 +00008680// X86_64-LINUX:#define __USER_LABEL_PREFIX__
8681// X86_64-LINUX:#define __WCHAR_MAX__ 2147483647
8682// X86_64-LINUX:#define __WCHAR_TYPE__ int
8683// X86_64-LINUX:#define __WCHAR_WIDTH__ 32
8684// X86_64-LINUX:#define __WINT_TYPE__ unsigned int
8685// X86_64-LINUX:#define __WINT_WIDTH__ 32
8686// X86_64-LINUX:#define __amd64 1
8687// X86_64-LINUX:#define __amd64__ 1
Douglas Gregore6d6e512011-01-12 21:19:25 +00008688// X86_64-LINUX:#define __x86_64 1
8689// X86_64-LINUX:#define __x86_64__ 1
8690//
James Y Knightc97efa42016-02-11 16:51:29 +00008691// 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 +00008692//
Ed Schouten49920992015-02-23 09:12:31 +00008693// X86_64-FREEBSD:#define __DBL_DECIMAL_DIG__ 17
8694// X86_64-FREEBSD:#define __FLT_DECIMAL_DIG__ 9
Ed Schoutend0621462013-09-29 07:54:52 +00008695// X86_64-FREEBSD:#define __FreeBSD__ 9
8696// X86_64-FREEBSD:#define __FreeBSD_cc_version 900001
Ed Schouten49920992015-02-23 09:12:31 +00008697// X86_64-FREEBSD:#define __LDBL_DECIMAL_DIG__ 21
Ed Schoutend0621462013-09-29 07:54:52 +00008698// X86_64-FREEBSD:#define __STDC_MB_MIGHT_NEQ_WC__ 1
8699//
James Y Knightc97efa42016-02-11 16:51:29 +00008700// 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 +00008701//
8702// X86_64-NETBSD:#define _LP64 1
Tim Northovera6a19f12015-02-06 01:25:07 +00008703// X86_64-NETBSD:#define __BIGGEST_ALIGNMENT__ 16
Joerg Sonnenberger0e921f22013-11-11 14:00:37 +00008704// X86_64-NETBSD:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
8705// X86_64-NETBSD:#define __CHAR16_TYPE__ unsigned short
8706// X86_64-NETBSD:#define __CHAR32_TYPE__ unsigned int
8707// X86_64-NETBSD:#define __CHAR_BIT__ 8
8708// X86_64-NETBSD:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
8709// X86_64-NETBSD:#define __DBL_DIG__ 15
8710// X86_64-NETBSD:#define __DBL_EPSILON__ 2.2204460492503131e-16
8711// X86_64-NETBSD:#define __DBL_HAS_DENORM__ 1
8712// X86_64-NETBSD:#define __DBL_HAS_INFINITY__ 1
8713// X86_64-NETBSD:#define __DBL_HAS_QUIET_NAN__ 1
8714// X86_64-NETBSD:#define __DBL_MANT_DIG__ 53
8715// X86_64-NETBSD:#define __DBL_MAX_10_EXP__ 308
8716// X86_64-NETBSD:#define __DBL_MAX_EXP__ 1024
8717// X86_64-NETBSD:#define __DBL_MAX__ 1.7976931348623157e+308
8718// X86_64-NETBSD:#define __DBL_MIN_10_EXP__ (-307)
8719// X86_64-NETBSD:#define __DBL_MIN_EXP__ (-1021)
8720// X86_64-NETBSD:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00008721// X86_64-NETBSD:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Joerg Sonnenberger0e921f22013-11-11 14:00:37 +00008722// X86_64-NETBSD:#define __FLT_DENORM_MIN__ 1.40129846e-45F
8723// X86_64-NETBSD:#define __FLT_DIG__ 6
8724// X86_64-NETBSD:#define __FLT_EPSILON__ 1.19209290e-7F
8725// X86_64-NETBSD:#define __FLT_EVAL_METHOD__ 0
8726// X86_64-NETBSD:#define __FLT_HAS_DENORM__ 1
8727// X86_64-NETBSD:#define __FLT_HAS_INFINITY__ 1
8728// X86_64-NETBSD:#define __FLT_HAS_QUIET_NAN__ 1
8729// X86_64-NETBSD:#define __FLT_MANT_DIG__ 24
8730// X86_64-NETBSD:#define __FLT_MAX_10_EXP__ 38
8731// X86_64-NETBSD:#define __FLT_MAX_EXP__ 128
8732// X86_64-NETBSD:#define __FLT_MAX__ 3.40282347e+38F
8733// X86_64-NETBSD:#define __FLT_MIN_10_EXP__ (-37)
8734// X86_64-NETBSD:#define __FLT_MIN_EXP__ (-125)
8735// X86_64-NETBSD:#define __FLT_MIN__ 1.17549435e-38F
8736// X86_64-NETBSD:#define __FLT_RADIX__ 2
James Y Knightc97efa42016-02-11 16:51:29 +00008737// X86_64-NETBSD:#define __INT16_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00008738// X86_64-NETBSD:#define __INT16_FMTd__ "hd"
8739// X86_64-NETBSD:#define __INT16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00008740// X86_64-NETBSD:#define __INT16_MAX__ 32767
Joerg Sonnenberger0e921f22013-11-11 14:00:37 +00008741// X86_64-NETBSD:#define __INT16_TYPE__ short
James Y Knightc97efa42016-02-11 16:51:29 +00008742// X86_64-NETBSD:#define __INT32_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00008743// X86_64-NETBSD:#define __INT32_FMTd__ "d"
8744// X86_64-NETBSD:#define __INT32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00008745// X86_64-NETBSD:#define __INT32_MAX__ 2147483647
Joerg Sonnenberger0e921f22013-11-11 14:00:37 +00008746// X86_64-NETBSD:#define __INT32_TYPE__ int
8747// X86_64-NETBSD:#define __INT64_C_SUFFIX__ L
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00008748// X86_64-NETBSD:#define __INT64_FMTd__ "ld"
8749// X86_64-NETBSD:#define __INT64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00008750// X86_64-NETBSD:#define __INT64_MAX__ 9223372036854775807L
Joerg Sonnenberger0e921f22013-11-11 14:00:37 +00008751// X86_64-NETBSD:#define __INT64_TYPE__ long int
James Y Knightc97efa42016-02-11 16:51:29 +00008752// X86_64-NETBSD:#define __INT8_C_SUFFIX__
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00008753// X86_64-NETBSD:#define __INT8_FMTd__ "hhd"
8754// X86_64-NETBSD:#define __INT8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00008755// X86_64-NETBSD:#define __INT8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00008756// X86_64-NETBSD:#define __INT8_TYPE__ signed char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00008757// X86_64-NETBSD:#define __INTMAX_C_SUFFIX__ L
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00008758// X86_64-NETBSD:#define __INTMAX_FMTd__ "ld"
8759// X86_64-NETBSD:#define __INTMAX_FMTi__ "li"
Joerg Sonnenberger0e921f22013-11-11 14:00:37 +00008760// X86_64-NETBSD:#define __INTMAX_MAX__ 9223372036854775807L
8761// X86_64-NETBSD:#define __INTMAX_TYPE__ long int
8762// X86_64-NETBSD:#define __INTMAX_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00008763// X86_64-NETBSD:#define __INTPTR_FMTd__ "ld"
8764// X86_64-NETBSD:#define __INTPTR_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00008765// X86_64-NETBSD:#define __INTPTR_MAX__ 9223372036854775807L
Joerg Sonnenberger0e921f22013-11-11 14:00:37 +00008766// X86_64-NETBSD:#define __INTPTR_TYPE__ long int
8767// X86_64-NETBSD:#define __INTPTR_WIDTH__ 64
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00008768// X86_64-NETBSD:#define __INT_FAST16_FMTd__ "hd"
8769// X86_64-NETBSD:#define __INT_FAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00008770// X86_64-NETBSD:#define __INT_FAST16_MAX__ 32767
8771// X86_64-NETBSD:#define __INT_FAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00008772// X86_64-NETBSD:#define __INT_FAST32_FMTd__ "d"
8773// X86_64-NETBSD:#define __INT_FAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00008774// X86_64-NETBSD:#define __INT_FAST32_MAX__ 2147483647
8775// X86_64-NETBSD:#define __INT_FAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00008776// X86_64-NETBSD:#define __INT_FAST64_FMTd__ "ld"
8777// X86_64-NETBSD:#define __INT_FAST64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00008778// X86_64-NETBSD:#define __INT_FAST64_MAX__ 9223372036854775807L
8779// X86_64-NETBSD:#define __INT_FAST64_TYPE__ long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00008780// X86_64-NETBSD:#define __INT_FAST8_FMTd__ "hhd"
8781// X86_64-NETBSD:#define __INT_FAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00008782// X86_64-NETBSD:#define __INT_FAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00008783// X86_64-NETBSD:#define __INT_FAST8_TYPE__ signed char
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00008784// X86_64-NETBSD:#define __INT_LEAST16_FMTd__ "hd"
8785// X86_64-NETBSD:#define __INT_LEAST16_FMTi__ "hi"
JF Bastienab8d0a02014-06-25 01:31:33 +00008786// X86_64-NETBSD:#define __INT_LEAST16_MAX__ 32767
8787// X86_64-NETBSD:#define __INT_LEAST16_TYPE__ short
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00008788// X86_64-NETBSD:#define __INT_LEAST32_FMTd__ "d"
8789// X86_64-NETBSD:#define __INT_LEAST32_FMTi__ "i"
JF Bastienab8d0a02014-06-25 01:31:33 +00008790// X86_64-NETBSD:#define __INT_LEAST32_MAX__ 2147483647
8791// X86_64-NETBSD:#define __INT_LEAST32_TYPE__ int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00008792// X86_64-NETBSD:#define __INT_LEAST64_FMTd__ "ld"
8793// X86_64-NETBSD:#define __INT_LEAST64_FMTi__ "li"
JF Bastienab8d0a02014-06-25 01:31:33 +00008794// X86_64-NETBSD:#define __INT_LEAST64_MAX__ 9223372036854775807L
8795// X86_64-NETBSD:#define __INT_LEAST64_TYPE__ long int
Joerg Sonnenbergerbe324f92014-07-15 11:30:00 +00008796// X86_64-NETBSD:#define __INT_LEAST8_FMTd__ "hhd"
8797// X86_64-NETBSD:#define __INT_LEAST8_FMTi__ "hhi"
JF Bastienab8d0a02014-06-25 01:31:33 +00008798// X86_64-NETBSD:#define __INT_LEAST8_MAX__ 127
Joerg Sonnenberger3d9478c2014-07-28 21:06:22 +00008799// X86_64-NETBSD:#define __INT_LEAST8_TYPE__ signed char
Joerg Sonnenberger0e921f22013-11-11 14:00:37 +00008800// X86_64-NETBSD:#define __INT_MAX__ 2147483647
8801// X86_64-NETBSD:#define __LDBL_DENORM_MIN__ 3.64519953188247460253e-4951L
8802// X86_64-NETBSD:#define __LDBL_DIG__ 18
8803// X86_64-NETBSD:#define __LDBL_EPSILON__ 1.08420217248550443401e-19L
8804// X86_64-NETBSD:#define __LDBL_HAS_DENORM__ 1
8805// X86_64-NETBSD:#define __LDBL_HAS_INFINITY__ 1
8806// X86_64-NETBSD:#define __LDBL_HAS_QUIET_NAN__ 1
8807// X86_64-NETBSD:#define __LDBL_MANT_DIG__ 64
8808// X86_64-NETBSD:#define __LDBL_MAX_10_EXP__ 4932
8809// X86_64-NETBSD:#define __LDBL_MAX_EXP__ 16384
8810// X86_64-NETBSD:#define __LDBL_MAX__ 1.18973149535723176502e+4932L
8811// X86_64-NETBSD:#define __LDBL_MIN_10_EXP__ (-4931)
8812// X86_64-NETBSD:#define __LDBL_MIN_EXP__ (-16381)
8813// X86_64-NETBSD:#define __LDBL_MIN__ 3.36210314311209350626e-4932L
8814// X86_64-NETBSD:#define __LITTLE_ENDIAN__ 1
8815// X86_64-NETBSD:#define __LONG_LONG_MAX__ 9223372036854775807LL
8816// X86_64-NETBSD:#define __LONG_MAX__ 9223372036854775807L
8817// X86_64-NETBSD:#define __LP64__ 1
8818// X86_64-NETBSD:#define __MMX__ 1
8819// X86_64-NETBSD:#define __NO_MATH_INLINES 1
8820// X86_64-NETBSD:#define __POINTER_WIDTH__ 64
8821// X86_64-NETBSD:#define __PTRDIFF_TYPE__ long int
8822// X86_64-NETBSD:#define __PTRDIFF_WIDTH__ 64
James Y Knightc97efa42016-02-11 16:51:29 +00008823// X86_64-NETBSD:#define __REGISTER_PREFIX__
Joerg Sonnenberger0e921f22013-11-11 14:00:37 +00008824// X86_64-NETBSD:#define __SCHAR_MAX__ 127
8825// X86_64-NETBSD:#define __SHRT_MAX__ 32767
Joerg Sonnenbergerb3a49692014-07-17 18:31:20 +00008826// X86_64-NETBSD:#define __SIG_ATOMIC_MAX__ 2147483647
Joerg Sonnenberger0e921f22013-11-11 14:00:37 +00008827// X86_64-NETBSD:#define __SIG_ATOMIC_WIDTH__ 32
8828// X86_64-NETBSD:#define __SIZEOF_DOUBLE__ 8
8829// X86_64-NETBSD:#define __SIZEOF_FLOAT__ 4
8830// X86_64-NETBSD:#define __SIZEOF_INT__ 4
8831// X86_64-NETBSD:#define __SIZEOF_LONG_DOUBLE__ 16
8832// X86_64-NETBSD:#define __SIZEOF_LONG_LONG__ 8
8833// X86_64-NETBSD:#define __SIZEOF_LONG__ 8
8834// X86_64-NETBSD:#define __SIZEOF_POINTER__ 8
8835// X86_64-NETBSD:#define __SIZEOF_PTRDIFF_T__ 8
8836// X86_64-NETBSD:#define __SIZEOF_SHORT__ 2
8837// X86_64-NETBSD:#define __SIZEOF_SIZE_T__ 8
8838// X86_64-NETBSD:#define __SIZEOF_WCHAR_T__ 4
8839// X86_64-NETBSD:#define __SIZEOF_WINT_T__ 4
8840// X86_64-NETBSD:#define __SIZE_MAX__ 18446744073709551615UL
8841// X86_64-NETBSD:#define __SIZE_TYPE__ long unsigned int
8842// X86_64-NETBSD:#define __SIZE_WIDTH__ 64
8843// X86_64-NETBSD:#define __SSE2_MATH__ 1
8844// X86_64-NETBSD:#define __SSE2__ 1
8845// X86_64-NETBSD:#define __SSE_MATH__ 1
8846// X86_64-NETBSD:#define __SSE__ 1
James Y Knightc97efa42016-02-11 16:51:29 +00008847// X86_64-NETBSD:#define __UINT16_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00008848// X86_64-NETBSD:#define __UINT16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00008849// X86_64-NETBSD:#define __UINT16_TYPE__ unsigned short
8850// X86_64-NETBSD:#define __UINT32_C_SUFFIX__ U
8851// X86_64-NETBSD:#define __UINT32_MAX__ 4294967295U
8852// X86_64-NETBSD:#define __UINT32_TYPE__ unsigned int
8853// X86_64-NETBSD:#define __UINT64_C_SUFFIX__ UL
8854// X86_64-NETBSD:#define __UINT64_MAX__ 18446744073709551615UL
8855// X86_64-NETBSD:#define __UINT64_TYPE__ long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00008856// X86_64-NETBSD:#define __UINT8_C_SUFFIX__
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00008857// X86_64-NETBSD:#define __UINT8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00008858// X86_64-NETBSD:#define __UINT8_TYPE__ unsigned char
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00008859// X86_64-NETBSD:#define __UINTMAX_C_SUFFIX__ UL
JF Bastienab8d0a02014-06-25 01:31:33 +00008860// X86_64-NETBSD:#define __UINTMAX_MAX__ 18446744073709551615UL
Joerg Sonnenberger0e921f22013-11-11 14:00:37 +00008861// X86_64-NETBSD:#define __UINTMAX_TYPE__ long unsigned int
JF Bastienab8d0a02014-06-25 01:31:33 +00008862// X86_64-NETBSD:#define __UINTMAX_WIDTH__ 64
8863// X86_64-NETBSD:#define __UINTPTR_MAX__ 18446744073709551615UL
8864// X86_64-NETBSD:#define __UINTPTR_TYPE__ long unsigned int
8865// X86_64-NETBSD:#define __UINTPTR_WIDTH__ 64
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00008866// X86_64-NETBSD:#define __UINT_FAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00008867// X86_64-NETBSD:#define __UINT_FAST16_TYPE__ unsigned short
8868// X86_64-NETBSD:#define __UINT_FAST32_MAX__ 4294967295U
8869// X86_64-NETBSD:#define __UINT_FAST32_TYPE__ unsigned int
8870// X86_64-NETBSD:#define __UINT_FAST64_MAX__ 18446744073709551615UL
8871// X86_64-NETBSD:#define __UINT_FAST64_TYPE__ long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00008872// X86_64-NETBSD:#define __UINT_FAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00008873// X86_64-NETBSD:#define __UINT_FAST8_TYPE__ unsigned char
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00008874// X86_64-NETBSD:#define __UINT_LEAST16_MAX__ 65535
JF Bastienab8d0a02014-06-25 01:31:33 +00008875// X86_64-NETBSD:#define __UINT_LEAST16_TYPE__ unsigned short
8876// X86_64-NETBSD:#define __UINT_LEAST32_MAX__ 4294967295U
8877// X86_64-NETBSD:#define __UINT_LEAST32_TYPE__ unsigned int
8878// X86_64-NETBSD:#define __UINT_LEAST64_MAX__ 18446744073709551615UL
8879// X86_64-NETBSD:#define __UINT_LEAST64_TYPE__ long unsigned int
Joerg Sonnenberger587deea2014-07-17 20:12:32 +00008880// X86_64-NETBSD:#define __UINT_LEAST8_MAX__ 255
JF Bastienab8d0a02014-06-25 01:31:33 +00008881// X86_64-NETBSD:#define __UINT_LEAST8_TYPE__ unsigned char
Joerg Sonnenberger0e921f22013-11-11 14:00:37 +00008882// X86_64-NETBSD:#define __USER_LABEL_PREFIX__
8883// X86_64-NETBSD:#define __WCHAR_MAX__ 2147483647
8884// X86_64-NETBSD:#define __WCHAR_TYPE__ int
8885// X86_64-NETBSD:#define __WCHAR_WIDTH__ 32
8886// X86_64-NETBSD:#define __WINT_TYPE__ int
8887// X86_64-NETBSD:#define __WINT_WIDTH__ 32
8888// X86_64-NETBSD:#define __amd64 1
8889// X86_64-NETBSD:#define __amd64__ 1
8890// X86_64-NETBSD:#define __x86_64 1
8891// X86_64-NETBSD:#define __x86_64__ 1
8892//
James Y Knightc97efa42016-02-11 16:51:29 +00008893// 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 +00008894//
8895// PS4:#define _LP64 1
8896// PS4:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
8897// PS4:#define __CHAR16_TYPE__ unsigned short
8898// PS4:#define __CHAR32_TYPE__ unsigned int
8899// PS4:#define __CHAR_BIT__ 8
8900// PS4:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
8901// PS4:#define __DBL_DIG__ 15
8902// PS4:#define __DBL_EPSILON__ 2.2204460492503131e-16
8903// PS4:#define __DBL_HAS_DENORM__ 1
8904// PS4:#define __DBL_HAS_INFINITY__ 1
8905// PS4:#define __DBL_HAS_QUIET_NAN__ 1
8906// PS4:#define __DBL_MANT_DIG__ 53
8907// PS4:#define __DBL_MAX_10_EXP__ 308
8908// PS4:#define __DBL_MAX_EXP__ 1024
8909// PS4:#define __DBL_MAX__ 1.7976931348623157e+308
8910// PS4:#define __DBL_MIN_10_EXP__ (-307)
8911// PS4:#define __DBL_MIN_EXP__ (-1021)
8912// PS4:#define __DBL_MIN__ 2.2250738585072014e-308
Ed Schouten49920992015-02-23 09:12:31 +00008913// PS4:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Alex Rosenberg12207fa2015-01-27 14:47:44 +00008914// PS4:#define __ELF__ 1
8915// PS4:#define __FLT_DENORM_MIN__ 1.40129846e-45F
8916// PS4:#define __FLT_DIG__ 6
8917// PS4:#define __FLT_EPSILON__ 1.19209290e-7F
8918// PS4:#define __FLT_EVAL_METHOD__ 0
8919// PS4:#define __FLT_HAS_DENORM__ 1
8920// PS4:#define __FLT_HAS_INFINITY__ 1
8921// PS4:#define __FLT_HAS_QUIET_NAN__ 1
8922// PS4:#define __FLT_MANT_DIG__ 24
8923// PS4:#define __FLT_MAX_10_EXP__ 38
8924// PS4:#define __FLT_MAX_EXP__ 128
8925// PS4:#define __FLT_MAX__ 3.40282347e+38F
8926// PS4:#define __FLT_MIN_10_EXP__ (-37)
8927// PS4:#define __FLT_MIN_EXP__ (-125)
8928// PS4:#define __FLT_MIN__ 1.17549435e-38F
8929// PS4:#define __FLT_RADIX__ 2
8930// PS4:#define __FreeBSD__ 9
8931// PS4:#define __FreeBSD_cc_version 900001
8932// PS4:#define __INT16_TYPE__ short
8933// PS4:#define __INT32_TYPE__ int
8934// PS4:#define __INT64_C_SUFFIX__ L
8935// PS4:#define __INT64_TYPE__ long int
8936// PS4:#define __INT8_TYPE__ signed char
8937// PS4:#define __INTMAX_MAX__ 9223372036854775807L
8938// PS4:#define __INTMAX_TYPE__ long int
8939// PS4:#define __INTMAX_WIDTH__ 64
8940// PS4:#define __INTPTR_TYPE__ long int
8941// PS4:#define __INTPTR_WIDTH__ 64
8942// PS4:#define __INT_MAX__ 2147483647
8943// PS4:#define __KPRINTF_ATTRIBUTE__ 1
8944// PS4:#define __LDBL_DENORM_MIN__ 3.64519953188247460253e-4951L
8945// PS4:#define __LDBL_DIG__ 18
8946// PS4:#define __LDBL_EPSILON__ 1.08420217248550443401e-19L
8947// PS4:#define __LDBL_HAS_DENORM__ 1
8948// PS4:#define __LDBL_HAS_INFINITY__ 1
8949// PS4:#define __LDBL_HAS_QUIET_NAN__ 1
8950// PS4:#define __LDBL_MANT_DIG__ 64
8951// PS4:#define __LDBL_MAX_10_EXP__ 4932
8952// PS4:#define __LDBL_MAX_EXP__ 16384
8953// PS4:#define __LDBL_MAX__ 1.18973149535723176502e+4932L
8954// PS4:#define __LDBL_MIN_10_EXP__ (-4931)
8955// PS4:#define __LDBL_MIN_EXP__ (-16381)
8956// PS4:#define __LDBL_MIN__ 3.36210314311209350626e-4932L
8957// PS4:#define __LITTLE_ENDIAN__ 1
8958// PS4:#define __LONG_LONG_MAX__ 9223372036854775807LL
8959// PS4:#define __LONG_MAX__ 9223372036854775807L
8960// PS4:#define __LP64__ 1
8961// PS4:#define __MMX__ 1
8962// PS4:#define __NO_MATH_INLINES 1
Paul Robinson9d613612016-05-16 17:22:25 +00008963// PS4:#define __ORBIS__ 1
Alex Rosenberg12207fa2015-01-27 14:47:44 +00008964// PS4:#define __POINTER_WIDTH__ 64
Alex Rosenberg12207fa2015-01-27 14:47:44 +00008965// PS4:#define __PTRDIFF_MAX__ 9223372036854775807L
8966// PS4:#define __PTRDIFF_TYPE__ long int
8967// PS4:#define __PTRDIFF_WIDTH__ 64
James Y Knightc97efa42016-02-11 16:51:29 +00008968// PS4:#define __REGISTER_PREFIX__
Alex Rosenberg12207fa2015-01-27 14:47:44 +00008969// PS4:#define __SCHAR_MAX__ 127
8970// PS4:#define __SHRT_MAX__ 32767
8971// PS4:#define __SIG_ATOMIC_MAX__ 2147483647
8972// PS4:#define __SIG_ATOMIC_WIDTH__ 32
8973// PS4:#define __SIZEOF_DOUBLE__ 8
8974// PS4:#define __SIZEOF_FLOAT__ 4
8975// PS4:#define __SIZEOF_INT__ 4
8976// PS4:#define __SIZEOF_LONG_DOUBLE__ 16
8977// PS4:#define __SIZEOF_LONG_LONG__ 8
8978// PS4:#define __SIZEOF_LONG__ 8
8979// PS4:#define __SIZEOF_POINTER__ 8
8980// PS4:#define __SIZEOF_PTRDIFF_T__ 8
8981// PS4:#define __SIZEOF_SHORT__ 2
8982// PS4:#define __SIZEOF_SIZE_T__ 8
8983// PS4:#define __SIZEOF_WCHAR_T__ 2
8984// PS4:#define __SIZEOF_WINT_T__ 4
8985// PS4:#define __SIZE_TYPE__ long unsigned int
8986// PS4:#define __SIZE_WIDTH__ 64
8987// PS4:#define __SSE2_MATH__ 1
8988// PS4:#define __SSE2__ 1
8989// PS4:#define __SSE_MATH__ 1
8990// PS4:#define __SSE__ 1
Sunil Srivastavabf010802016-04-27 19:53:03 +00008991// PS4:#define __STDC_VERSION__ 199901L
Alex Rosenberg12207fa2015-01-27 14:47:44 +00008992// PS4:#define __UINTMAX_TYPE__ long unsigned int
8993// PS4:#define __USER_LABEL_PREFIX__
8994// PS4:#define __WCHAR_MAX__ 65535
8995// PS4:#define __WCHAR_TYPE__ unsigned short
8996// PS4:#define __WCHAR_UNSIGNED__ 1
8997// PS4:#define __WCHAR_WIDTH__ 16
8998// PS4:#define __WINT_TYPE__ int
8999// PS4:#define __WINT_WIDTH__ 32
9000// PS4:#define __amd64 1
9001// PS4:#define __amd64__ 1
Saleem Abdulrasool56027092017-02-07 19:00:06 +00009002// PS4:#define __unix 1
Alex Rosenberg12207fa2015-01-27 14:47:44 +00009003// PS4:#define __unix__ 1
9004// PS4:#define __x86_64 1
9005// PS4:#define __x86_64__ 1
Douglas Yung60fc1dd2017-02-09 00:07:38 +00009006// PS4:#define unix 1
Alex Rosenberg12207fa2015-01-27 14:47:44 +00009007//
Matthew Voss0a6a7012018-03-07 20:48:16 +00009008// RUN: %clang_cc1 -x c++ -E -dM -ffreestanding -triple=x86_64-scei-ps4 < /dev/null | FileCheck -match-full-lines -check-prefix PS4-CXX %s
9009// PS4-CXX:#define __STDCPP_DEFAULT_NEW_ALIGNMENT__ 32UL
9010//
James Y Knightc97efa42016-02-11 16:51:29 +00009011// RUN: %clang_cc1 -E -dM -triple=x86_64-pc-mingw32 < /dev/null | FileCheck -match-full-lines -check-prefix X86-64-DECLSPEC %s
9012// RUN: %clang_cc1 -E -dM -fms-extensions -triple=x86_64-unknown-mingw32 < /dev/null | FileCheck -match-full-lines -check-prefix X86-64-DECLSPEC %s
9013// X86-64-DECLSPEC: #define __declspec{{.*}}
David Majnemerae1ed0e2015-05-28 04:36:18 +00009014//
James Y Knightc97efa42016-02-11 16:51:29 +00009015// 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 +00009016// SPARCV9:#define __INT64_TYPE__ long int
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00009017// SPARCV9:#define __INTMAX_C_SUFFIX__ L
Jakob Stoklund Olesen248520b2013-05-15 03:22:33 +00009018// SPARCV9:#define __INTMAX_TYPE__ long int
9019// SPARCV9:#define __INTPTR_TYPE__ long int
9020// SPARCV9:#define __LONG_MAX__ 9223372036854775807L
9021// SPARCV9:#define __LP64__ 1
9022// SPARCV9:#define __SIZEOF_LONG__ 8
9023// SPARCV9:#define __SIZEOF_POINTER__ 8
Joerg Sonnenberger3809a7a2014-07-14 20:40:56 +00009024// SPARCV9:#define __UINTPTR_TYPE__ long unsigned int
Jakob Stoklund Olesen248520b2013-05-15 03:22:33 +00009025//
James Y Knightc97efa42016-02-11 16:51:29 +00009026// 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 +00009027// SPARC64-OBSD:#define __INT64_TYPE__ long long int
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00009028// SPARC64-OBSD:#define __INTMAX_C_SUFFIX__ LL
Jakob Stoklund Olesen826df142013-05-19 17:53:37 +00009029// SPARC64-OBSD:#define __INTMAX_TYPE__ long long int
Joerg Sonnenbergerf6432d82014-07-15 21:58:11 +00009030// SPARC64-OBSD:#define __UINTMAX_C_SUFFIX__ ULL
Jakob Stoklund Olesen826df142013-05-19 17:53:37 +00009031// SPARC64-OBSD:#define __UINTMAX_TYPE__ long long unsigned int
9032//
James Y Knightc97efa42016-02-11 16:51:29 +00009033// 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 +00009034// KFREEBSD-DEFINE:#define __FreeBSD_kernel__ 1
9035// KFREEBSD-DEFINE:#define __GLIBC__ 1
9036//
James Y Knightc97efa42016-02-11 16:51:29 +00009037// 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 +00009038// KFREEBSDI686-DEFINE:#define __FreeBSD_kernel__ 1
9039// KFREEBSDI686-DEFINE:#define __GLIBC__ 1
9040//
James Y Knightc97efa42016-02-11 16:51:29 +00009041// 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
Walter Lee4e93a692017-08-02 14:36:52 +00009042// RUN: %clang_cc1 -x c++ -triple sparc-rtems-elf -E -dM < /dev/null | FileCheck -match-full-lines -check-prefix GNUSOURCE %s
Douglas Gregord2b896a2010-04-16 06:31:05 +00009043// GNUSOURCE:#define _GNU_SOURCE 1
Sylvestre Ledru4e06e6e2013-09-06 15:36:36 +00009044//
David Chisnall404bbcb2018-05-22 10:13:06 +00009045// Check that the GNUstep Objective-C ABI defines exist and are clamped at the
9046// highest supported version.
9047// RUN: %clang_cc1 -x objective-c -triple i386-unknown-freebsd -fobjc-runtime=gnustep-1.9 -E -dM < /dev/null | FileCheck -match-full-lines -check-prefix GNUSTEP1 %s
9048// GNUSTEP1:#define __OBJC_GNUSTEP_RUNTIME_ABI__ 18
9049// RUN: %clang_cc1 -x objective-c -triple i386-unknown-freebsd -fobjc-runtime=gnustep-2.5 -E -dM < /dev/null | FileCheck -match-full-lines -check-prefix GNUSTEP2 %s
9050// GNUSTEP2:#define __OBJC_GNUSTEP_RUNTIME_ABI__ 20
9051//
James Y Knightc97efa42016-02-11 16:51:29 +00009052// RUN: %clang_cc1 -x c++ -std=c++98 -fno-rtti -E -dM < /dev/null | FileCheck -match-full-lines -check-prefix NORTTI %s
9053// NORTTI: #define __GXX_ABI_VERSION {{.*}}
Dan Gohman04f87202010-05-28 00:27:15 +00009054// NORTTI-NOT:#define __GXX_RTTI
James Y Knightc97efa42016-02-11 16:51:29 +00009055// NORTTI:#define __STDC__ 1
Evgeniy Stepanov94dc4c92012-04-26 12:08:09 +00009056//
James Y Knightc97efa42016-02-11 16:51:29 +00009057// 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 +00009058// ANDROID-NOT:#define __ANDROID_API__
James Y Knightc97efa42016-02-11 16:51:29 +00009059// ANDROID:#define __ANDROID__ 1
Sylvestre Ledru4e06e6e2013-09-06 15:36:36 +00009060//
Richard Smith59139022016-09-30 22:41:36 +00009061// RUN: %clang_cc1 -x c++ -triple i686-linux-android -E -dM < /dev/null | FileCheck -match-full-lines -check-prefix I386-ANDROID-CXX %s
Pirama Arumuga Nainarb8183472018-08-01 17:55:34 +00009062// I386-ANDROID-CXX:#define __STDCPP_DEFAULT_NEW_ALIGNMENT__ 8U
Richard Smith59139022016-09-30 22:41:36 +00009063//
9064// 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
9065// X86_64-ANDROID-CXX:#define __STDCPP_DEFAULT_NEW_ALIGNMENT__ 16UL
9066//
Stephen Hinesa89d8ff2016-11-11 01:29:39 +00009067// RUN: %clang_cc1 -triple arm-linux-androideabi20 -E -dM < /dev/null | FileCheck -match-full-lines -check-prefix ANDROID20 %s
9068// ANDROID20:#define __ANDROID_API__ 20
9069// ANDROID20:#define __ANDROID__ 1
9070//
Jacques Pienaard964cc22016-03-28 21:02:54 +00009071// RUN: %clang_cc1 -triple lanai-unknown-unknown -E -dM < /dev/null | FileCheck -match-full-lines -check-prefix LANAI %s
9072// LANAI: #define __lanai__ 1
9073//
Renato Golin0201a9e2016-09-22 19:28:20 +00009074// 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 +00009075// 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 +00009076// RUN: %clang_cc1 -E -dM -ffreestanding -triple=arm-unknown-openbsd6.1-gnueabi < /dev/null | FileCheck -match-full-lines -check-prefix OPENBSD %s
9077// 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 +00009078// 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 +00009079// RUN: %clang_cc1 -E -dM -ffreestanding -triple=mips64-unknown-openbsd6.1 < /dev/null | FileCheck -match-full-lines -check-prefix OPENBSD %s
9080// 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 +00009081// RUN: %clang_cc1 -E -dM -ffreestanding -triple=sparc64-unknown-openbsd6.1 < /dev/null | FileCheck -match-full-lines -check-prefix OPENBSD %s
9082// OPENBSD:#define __ELF__ 1
9083// OPENBSD:#define __INT16_TYPE__ short
9084// OPENBSD:#define __INT32_TYPE__ int
9085// OPENBSD:#define __INT64_TYPE__ long long int
9086// OPENBSD:#define __INT8_TYPE__ signed char
9087// OPENBSD:#define __INTMAX_TYPE__ long long int
9088// OPENBSD:#define __INTPTR_TYPE__ long int
9089// OPENBSD:#define __OpenBSD__ 1
9090// OPENBSD:#define __PTRDIFF_TYPE__ long int
9091// OPENBSD:#define __SIZE_TYPE__ long unsigned int
9092// OPENBSD:#define __UINT16_TYPE__ unsigned short
9093// OPENBSD:#define __UINT32_TYPE__ unsigned int
9094// OPENBSD:#define __UINT64_TYPE__ long long unsigned int
9095// OPENBSD:#define __UINT8_TYPE__ unsigned char
9096// OPENBSD:#define __UINTMAX_TYPE__ long long unsigned int
9097// OPENBSD:#define __UINTPTR_TYPE__ long unsigned int
9098// OPENBSD:#define __WCHAR_TYPE__ int
9099// OPENBSD:#define __WINT_TYPE__ int
9100//
James Y Knightc97efa42016-02-11 16:51:29 +00009101// 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 +00009102// PPC64-FREEBSD-NOT: #define __LONG_DOUBLE_128__ 1
Robert Lytton0e076492013-08-13 09:43:10 +00009103//
James Y Knightc97efa42016-02-11 16:51:29 +00009104// 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 +00009105// XCORE:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
9106// XCORE:#define __LITTLE_ENDIAN__ 1
Robert Lytton0e076492013-08-13 09:43:10 +00009107// XCORE:#define __XS1B__ 1
Dan Gohmanc2853072015-09-03 22:51:53 +00009108//
9109// RUN: %clang_cc1 -E -dM -ffreestanding -triple=wasm32-unknown-unknown \
9110// RUN: < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00009111// RUN: | FileCheck -match-full-lines -check-prefix=WEBASSEMBLY32 %s
Dan Gohmanc2853072015-09-03 22:51:53 +00009112//
James Y Knightc97efa42016-02-11 16:51:29 +00009113// WEBASSEMBLY32:#define _ILP32 1
Dan Gohmanc2853072015-09-03 22:51:53 +00009114// WEBASSEMBLY32-NOT:#define _LP64
James Y Knightc97efa42016-02-11 16:51:29 +00009115// WEBASSEMBLY32-NEXT:#define __ATOMIC_ACQUIRE 2
9116// WEBASSEMBLY32-NEXT:#define __ATOMIC_ACQ_REL 4
9117// WEBASSEMBLY32-NEXT:#define __ATOMIC_CONSUME 1
9118// WEBASSEMBLY32-NEXT:#define __ATOMIC_RELAXED 0
9119// WEBASSEMBLY32-NEXT:#define __ATOMIC_RELEASE 3
9120// WEBASSEMBLY32-NEXT:#define __ATOMIC_SEQ_CST 5
9121// WEBASSEMBLY32-NEXT:#define __BIGGEST_ALIGNMENT__ 16
9122// WEBASSEMBLY32-NEXT:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
9123// WEBASSEMBLY32-NEXT:#define __CHAR16_TYPE__ unsigned short
9124// WEBASSEMBLY32-NEXT:#define __CHAR32_TYPE__ unsigned int
9125// WEBASSEMBLY32-NEXT:#define __CHAR_BIT__ 8
Dan Gohmanc2853072015-09-03 22:51:53 +00009126// WEBASSEMBLY32-NOT:#define __CHAR_UNSIGNED__
Eric Fiselier4b2c8f72017-04-20 22:53:57 +00009127// WEBASSEMBLY32-NEXT:#define __CLANG_ATOMIC_BOOL_LOCK_FREE 2
9128// WEBASSEMBLY32-NEXT:#define __CLANG_ATOMIC_CHAR16_T_LOCK_FREE 2
9129// WEBASSEMBLY32-NEXT:#define __CLANG_ATOMIC_CHAR32_T_LOCK_FREE 2
9130// WEBASSEMBLY32-NEXT:#define __CLANG_ATOMIC_CHAR_LOCK_FREE 2
9131// WEBASSEMBLY32-NEXT:#define __CLANG_ATOMIC_INT_LOCK_FREE 2
Dan Gohman7dee1712017-06-07 02:22:40 +00009132// WEBASSEMBLY32-NEXT:#define __CLANG_ATOMIC_LLONG_LOCK_FREE 2
Eric Fiselier4b2c8f72017-04-20 22:53:57 +00009133// WEBASSEMBLY32-NEXT:#define __CLANG_ATOMIC_LONG_LOCK_FREE 2
9134// WEBASSEMBLY32-NEXT:#define __CLANG_ATOMIC_POINTER_LOCK_FREE 2
9135// WEBASSEMBLY32-NEXT:#define __CLANG_ATOMIC_SHORT_LOCK_FREE 2
9136// WEBASSEMBLY32-NEXT:#define __CLANG_ATOMIC_WCHAR_T_LOCK_FREE 2
James Y Knightc97efa42016-02-11 16:51:29 +00009137// WEBASSEMBLY32-NEXT:#define __CONSTANT_CFSTRINGS__ 1
9138// WEBASSEMBLY32-NEXT:#define __DBL_DECIMAL_DIG__ 17
9139// WEBASSEMBLY32-NEXT:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
9140// WEBASSEMBLY32-NEXT:#define __DBL_DIG__ 15
9141// WEBASSEMBLY32-NEXT:#define __DBL_EPSILON__ 2.2204460492503131e-16
9142// WEBASSEMBLY32-NEXT:#define __DBL_HAS_DENORM__ 1
9143// WEBASSEMBLY32-NEXT:#define __DBL_HAS_INFINITY__ 1
9144// WEBASSEMBLY32-NEXT:#define __DBL_HAS_QUIET_NAN__ 1
9145// WEBASSEMBLY32-NEXT:#define __DBL_MANT_DIG__ 53
9146// WEBASSEMBLY32-NEXT:#define __DBL_MAX_10_EXP__ 308
9147// WEBASSEMBLY32-NEXT:#define __DBL_MAX_EXP__ 1024
9148// WEBASSEMBLY32-NEXT:#define __DBL_MAX__ 1.7976931348623157e+308
9149// WEBASSEMBLY32-NEXT:#define __DBL_MIN_10_EXP__ (-307)
9150// WEBASSEMBLY32-NEXT:#define __DBL_MIN_EXP__ (-1021)
9151// WEBASSEMBLY32-NEXT:#define __DBL_MIN__ 2.2250738585072014e-308
9152// WEBASSEMBLY32-NEXT:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Dan Gohmanc2853072015-09-03 22:51:53 +00009153// WEBASSEMBLY32-NOT:#define __ELF__
James Y Knightc97efa42016-02-11 16:51:29 +00009154// WEBASSEMBLY32-NEXT:#define __FINITE_MATH_ONLY__ 0
Sjoerd Meijerc05609c2017-09-13 15:23:19 +00009155// WEBASSEMBLY32:#define __FLT_DECIMAL_DIG__ 9
James Y Knightc97efa42016-02-11 16:51:29 +00009156// WEBASSEMBLY32-NEXT:#define __FLT_DENORM_MIN__ 1.40129846e-45F
9157// WEBASSEMBLY32-NEXT:#define __FLT_DIG__ 6
9158// WEBASSEMBLY32-NEXT:#define __FLT_EPSILON__ 1.19209290e-7F
9159// WEBASSEMBLY32-NEXT:#define __FLT_EVAL_METHOD__ 0
9160// WEBASSEMBLY32-NEXT:#define __FLT_HAS_DENORM__ 1
9161// WEBASSEMBLY32-NEXT:#define __FLT_HAS_INFINITY__ 1
9162// WEBASSEMBLY32-NEXT:#define __FLT_HAS_QUIET_NAN__ 1
9163// WEBASSEMBLY32-NEXT:#define __FLT_MANT_DIG__ 24
9164// WEBASSEMBLY32-NEXT:#define __FLT_MAX_10_EXP__ 38
9165// WEBASSEMBLY32-NEXT:#define __FLT_MAX_EXP__ 128
9166// WEBASSEMBLY32-NEXT:#define __FLT_MAX__ 3.40282347e+38F
9167// WEBASSEMBLY32-NEXT:#define __FLT_MIN_10_EXP__ (-37)
9168// WEBASSEMBLY32-NEXT:#define __FLT_MIN_EXP__ (-125)
9169// WEBASSEMBLY32-NEXT:#define __FLT_MIN__ 1.17549435e-38F
9170// WEBASSEMBLY32-NEXT:#define __FLT_RADIX__ 2
9171// WEBASSEMBLY32-NEXT:#define __GCC_ATOMIC_BOOL_LOCK_FREE 2
9172// WEBASSEMBLY32-NEXT:#define __GCC_ATOMIC_CHAR16_T_LOCK_FREE 2
9173// WEBASSEMBLY32-NEXT:#define __GCC_ATOMIC_CHAR32_T_LOCK_FREE 2
9174// WEBASSEMBLY32-NEXT:#define __GCC_ATOMIC_CHAR_LOCK_FREE 2
9175// WEBASSEMBLY32-NEXT:#define __GCC_ATOMIC_INT_LOCK_FREE 2
Dan Gohman7dee1712017-06-07 02:22:40 +00009176// WEBASSEMBLY32-NEXT:#define __GCC_ATOMIC_LLONG_LOCK_FREE 2
James Y Knightc97efa42016-02-11 16:51:29 +00009177// WEBASSEMBLY32-NEXT:#define __GCC_ATOMIC_LONG_LOCK_FREE 2
9178// WEBASSEMBLY32-NEXT:#define __GCC_ATOMIC_POINTER_LOCK_FREE 2
9179// WEBASSEMBLY32-NEXT:#define __GCC_ATOMIC_SHORT_LOCK_FREE 2
9180// WEBASSEMBLY32-NEXT:#define __GCC_ATOMIC_TEST_AND_SET_TRUEVAL 1
9181// WEBASSEMBLY32-NEXT:#define __GCC_ATOMIC_WCHAR_T_LOCK_FREE 2
Tim Northover25809012016-02-11 21:31:51 +00009182// WEBASSEMBLY32-NEXT:#define __GNUC_MINOR__ {{.*}}
9183// WEBASSEMBLY32-NEXT:#define __GNUC_PATCHLEVEL__ {{.*}}
James Y Knightc97efa42016-02-11 16:51:29 +00009184// WEBASSEMBLY32-NEXT:#define __GNUC_STDC_INLINE__ 1
Tim Northover25809012016-02-11 21:31:51 +00009185// WEBASSEMBLY32-NEXT:#define __GNUC__ {{.*}}
James Y Knightc97efa42016-02-11 16:51:29 +00009186// WEBASSEMBLY32-NEXT:#define __GXX_ABI_VERSION 1002
9187// WEBASSEMBLY32-NEXT:#define __ILP32__ 1
9188// WEBASSEMBLY32-NEXT:#define __INT16_C_SUFFIX__
9189// WEBASSEMBLY32-NEXT:#define __INT16_FMTd__ "hd"
9190// WEBASSEMBLY32-NEXT:#define __INT16_FMTi__ "hi"
9191// WEBASSEMBLY32-NEXT:#define __INT16_MAX__ 32767
9192// WEBASSEMBLY32-NEXT:#define __INT16_TYPE__ short
9193// WEBASSEMBLY32-NEXT:#define __INT32_C_SUFFIX__
9194// WEBASSEMBLY32-NEXT:#define __INT32_FMTd__ "d"
9195// WEBASSEMBLY32-NEXT:#define __INT32_FMTi__ "i"
9196// WEBASSEMBLY32-NEXT:#define __INT32_MAX__ 2147483647
9197// WEBASSEMBLY32-NEXT:#define __INT32_TYPE__ int
9198// WEBASSEMBLY32-NEXT:#define __INT64_C_SUFFIX__ LL
9199// WEBASSEMBLY32-NEXT:#define __INT64_FMTd__ "lld"
9200// WEBASSEMBLY32-NEXT:#define __INT64_FMTi__ "lli"
9201// WEBASSEMBLY32-NEXT:#define __INT64_MAX__ 9223372036854775807LL
9202// WEBASSEMBLY32-NEXT:#define __INT64_TYPE__ long long int
9203// WEBASSEMBLY32-NEXT:#define __INT8_C_SUFFIX__
9204// WEBASSEMBLY32-NEXT:#define __INT8_FMTd__ "hhd"
9205// WEBASSEMBLY32-NEXT:#define __INT8_FMTi__ "hhi"
9206// WEBASSEMBLY32-NEXT:#define __INT8_MAX__ 127
9207// WEBASSEMBLY32-NEXT:#define __INT8_TYPE__ signed char
9208// WEBASSEMBLY32-NEXT:#define __INTMAX_C_SUFFIX__ LL
9209// WEBASSEMBLY32-NEXT:#define __INTMAX_FMTd__ "lld"
9210// WEBASSEMBLY32-NEXT:#define __INTMAX_FMTi__ "lli"
9211// WEBASSEMBLY32-NEXT:#define __INTMAX_MAX__ 9223372036854775807LL
9212// WEBASSEMBLY32-NEXT:#define __INTMAX_TYPE__ long long int
9213// WEBASSEMBLY32-NEXT:#define __INTMAX_WIDTH__ 64
Dan Gohmandf07a352018-07-24 00:29:58 +00009214// WEBASSEMBLY32-NEXT:#define __INTPTR_FMTd__ "ld"
9215// WEBASSEMBLY32-NEXT:#define __INTPTR_FMTi__ "li"
9216// WEBASSEMBLY32-NEXT:#define __INTPTR_MAX__ 2147483647L
9217// WEBASSEMBLY32-NEXT:#define __INTPTR_TYPE__ long int
James Y Knightc97efa42016-02-11 16:51:29 +00009218// WEBASSEMBLY32-NEXT:#define __INTPTR_WIDTH__ 32
9219// WEBASSEMBLY32-NEXT:#define __INT_FAST16_FMTd__ "hd"
9220// WEBASSEMBLY32-NEXT:#define __INT_FAST16_FMTi__ "hi"
9221// WEBASSEMBLY32-NEXT:#define __INT_FAST16_MAX__ 32767
9222// WEBASSEMBLY32-NEXT:#define __INT_FAST16_TYPE__ short
9223// WEBASSEMBLY32-NEXT:#define __INT_FAST32_FMTd__ "d"
9224// WEBASSEMBLY32-NEXT:#define __INT_FAST32_FMTi__ "i"
9225// WEBASSEMBLY32-NEXT:#define __INT_FAST32_MAX__ 2147483647
9226// WEBASSEMBLY32-NEXT:#define __INT_FAST32_TYPE__ int
9227// WEBASSEMBLY32-NEXT:#define __INT_FAST64_FMTd__ "lld"
9228// WEBASSEMBLY32-NEXT:#define __INT_FAST64_FMTi__ "lli"
9229// WEBASSEMBLY32-NEXT:#define __INT_FAST64_MAX__ 9223372036854775807LL
9230// WEBASSEMBLY32-NEXT:#define __INT_FAST64_TYPE__ long long int
9231// WEBASSEMBLY32-NEXT:#define __INT_FAST8_FMTd__ "hhd"
9232// WEBASSEMBLY32-NEXT:#define __INT_FAST8_FMTi__ "hhi"
9233// WEBASSEMBLY32-NEXT:#define __INT_FAST8_MAX__ 127
9234// WEBASSEMBLY32-NEXT:#define __INT_FAST8_TYPE__ signed char
9235// WEBASSEMBLY32-NEXT:#define __INT_LEAST16_FMTd__ "hd"
9236// WEBASSEMBLY32-NEXT:#define __INT_LEAST16_FMTi__ "hi"
9237// WEBASSEMBLY32-NEXT:#define __INT_LEAST16_MAX__ 32767
9238// WEBASSEMBLY32-NEXT:#define __INT_LEAST16_TYPE__ short
9239// WEBASSEMBLY32-NEXT:#define __INT_LEAST32_FMTd__ "d"
9240// WEBASSEMBLY32-NEXT:#define __INT_LEAST32_FMTi__ "i"
9241// WEBASSEMBLY32-NEXT:#define __INT_LEAST32_MAX__ 2147483647
9242// WEBASSEMBLY32-NEXT:#define __INT_LEAST32_TYPE__ int
9243// WEBASSEMBLY32-NEXT:#define __INT_LEAST64_FMTd__ "lld"
9244// WEBASSEMBLY32-NEXT:#define __INT_LEAST64_FMTi__ "lli"
9245// WEBASSEMBLY32-NEXT:#define __INT_LEAST64_MAX__ 9223372036854775807LL
9246// WEBASSEMBLY32-NEXT:#define __INT_LEAST64_TYPE__ long long int
9247// WEBASSEMBLY32-NEXT:#define __INT_LEAST8_FMTd__ "hhd"
9248// WEBASSEMBLY32-NEXT:#define __INT_LEAST8_FMTi__ "hhi"
9249// WEBASSEMBLY32-NEXT:#define __INT_LEAST8_MAX__ 127
9250// WEBASSEMBLY32-NEXT:#define __INT_LEAST8_TYPE__ signed char
9251// WEBASSEMBLY32-NEXT:#define __INT_MAX__ 2147483647
9252// WEBASSEMBLY32-NEXT:#define __LDBL_DECIMAL_DIG__ 36
9253// WEBASSEMBLY32-NEXT:#define __LDBL_DENORM_MIN__ 6.47517511943802511092443895822764655e-4966L
9254// WEBASSEMBLY32-NEXT:#define __LDBL_DIG__ 33
9255// WEBASSEMBLY32-NEXT:#define __LDBL_EPSILON__ 1.92592994438723585305597794258492732e-34L
9256// WEBASSEMBLY32-NEXT:#define __LDBL_HAS_DENORM__ 1
9257// WEBASSEMBLY32-NEXT:#define __LDBL_HAS_INFINITY__ 1
9258// WEBASSEMBLY32-NEXT:#define __LDBL_HAS_QUIET_NAN__ 1
9259// WEBASSEMBLY32-NEXT:#define __LDBL_MANT_DIG__ 113
9260// WEBASSEMBLY32-NEXT:#define __LDBL_MAX_10_EXP__ 4932
9261// WEBASSEMBLY32-NEXT:#define __LDBL_MAX_EXP__ 16384
9262// WEBASSEMBLY32-NEXT:#define __LDBL_MAX__ 1.18973149535723176508575932662800702e+4932L
9263// WEBASSEMBLY32-NEXT:#define __LDBL_MIN_10_EXP__ (-4931)
9264// WEBASSEMBLY32-NEXT:#define __LDBL_MIN_EXP__ (-16381)
9265// WEBASSEMBLY32-NEXT:#define __LDBL_MIN__ 3.36210314311209350626267781732175260e-4932L
9266// WEBASSEMBLY32-NEXT:#define __LITTLE_ENDIAN__ 1
9267// WEBASSEMBLY32-NEXT:#define __LONG_LONG_MAX__ 9223372036854775807LL
9268// WEBASSEMBLY32-NEXT:#define __LONG_MAX__ 2147483647L
Dan Gohmanc2853072015-09-03 22:51:53 +00009269// WEBASSEMBLY32-NOT:#define __LP64__
James Y Knightc97efa42016-02-11 16:51:29 +00009270// WEBASSEMBLY32-NEXT:#define __NO_INLINE__ 1
Alex Lorenz41d13152017-01-20 16:48:25 +00009271// WEBASSEMBLY32-NEXT:#define __OBJC_BOOL_IS_BOOL 0
Yaxun Liu39195062017-08-04 18:16:31 +00009272// WEBASSEMBLY32-NEXT:#define __OPENCL_MEMORY_SCOPE_ALL_SVM_DEVICES 3
9273// WEBASSEMBLY32-NEXT:#define __OPENCL_MEMORY_SCOPE_DEVICE 2
9274// WEBASSEMBLY32-NEXT:#define __OPENCL_MEMORY_SCOPE_SUB_GROUP 4
9275// WEBASSEMBLY32-NEXT:#define __OPENCL_MEMORY_SCOPE_WORK_GROUP 1
9276// WEBASSEMBLY32-NEXT:#define __OPENCL_MEMORY_SCOPE_WORK_ITEM 0
James Y Knightc97efa42016-02-11 16:51:29 +00009277// WEBASSEMBLY32-NEXT:#define __ORDER_BIG_ENDIAN__ 4321
9278// WEBASSEMBLY32-NEXT:#define __ORDER_LITTLE_ENDIAN__ 1234
9279// WEBASSEMBLY32-NEXT:#define __ORDER_PDP_ENDIAN__ 3412
9280// WEBASSEMBLY32-NEXT:#define __POINTER_WIDTH__ 32
9281// WEBASSEMBLY32-NEXT:#define __PRAGMA_REDEFINE_EXTNAME 1
Dan Gohmandf07a352018-07-24 00:29:58 +00009282// WEBASSEMBLY32-NEXT:#define __PTRDIFF_FMTd__ "ld"
9283// WEBASSEMBLY32-NEXT:#define __PTRDIFF_FMTi__ "li"
9284// WEBASSEMBLY32-NEXT:#define __PTRDIFF_MAX__ 2147483647L
9285// WEBASSEMBLY32-NEXT:#define __PTRDIFF_TYPE__ long int
James Y Knightc97efa42016-02-11 16:51:29 +00009286// WEBASSEMBLY32-NEXT:#define __PTRDIFF_WIDTH__ 32
Dan Gohmanc2853072015-09-03 22:51:53 +00009287// WEBASSEMBLY32-NOT:#define __REGISTER_PREFIX__
James Y Knightc97efa42016-02-11 16:51:29 +00009288// WEBASSEMBLY32-NEXT:#define __SCHAR_MAX__ 127
9289// WEBASSEMBLY32-NEXT:#define __SHRT_MAX__ 32767
9290// WEBASSEMBLY32-NEXT:#define __SIG_ATOMIC_MAX__ 2147483647L
9291// WEBASSEMBLY32-NEXT:#define __SIG_ATOMIC_WIDTH__ 32
9292// WEBASSEMBLY32-NEXT:#define __SIZEOF_DOUBLE__ 8
9293// WEBASSEMBLY32-NEXT:#define __SIZEOF_FLOAT__ 4
9294// WEBASSEMBLY32-NEXT:#define __SIZEOF_INT128__ 16
9295// WEBASSEMBLY32-NEXT:#define __SIZEOF_INT__ 4
9296// WEBASSEMBLY32-NEXT:#define __SIZEOF_LONG_DOUBLE__ 16
9297// WEBASSEMBLY32-NEXT:#define __SIZEOF_LONG_LONG__ 8
9298// WEBASSEMBLY32-NEXT:#define __SIZEOF_LONG__ 4
9299// WEBASSEMBLY32-NEXT:#define __SIZEOF_POINTER__ 4
9300// WEBASSEMBLY32-NEXT:#define __SIZEOF_PTRDIFF_T__ 4
9301// WEBASSEMBLY32-NEXT:#define __SIZEOF_SHORT__ 2
9302// WEBASSEMBLY32-NEXT:#define __SIZEOF_SIZE_T__ 4
9303// WEBASSEMBLY32-NEXT:#define __SIZEOF_WCHAR_T__ 4
9304// WEBASSEMBLY32-NEXT:#define __SIZEOF_WINT_T__ 4
Dan Gohmandf07a352018-07-24 00:29:58 +00009305// WEBASSEMBLY32-NEXT:#define __SIZE_FMTX__ "lX"
9306// WEBASSEMBLY32-NEXT:#define __SIZE_FMTo__ "lo"
9307// WEBASSEMBLY32-NEXT:#define __SIZE_FMTu__ "lu"
9308// WEBASSEMBLY32-NEXT:#define __SIZE_FMTx__ "lx"
9309// WEBASSEMBLY32-NEXT:#define __SIZE_MAX__ 4294967295UL
9310// WEBASSEMBLY32-NEXT:#define __SIZE_TYPE__ long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00009311// WEBASSEMBLY32-NEXT:#define __SIZE_WIDTH__ 32
9312// WEBASSEMBLY32-NEXT:#define __STDC_HOSTED__ 0
Dan Gohmanc2853072015-09-03 22:51:53 +00009313// WEBASSEMBLY32-NOT:#define __STDC_MB_MIGHT_NEQ_WC__
9314// WEBASSEMBLY32-NOT:#define __STDC_NO_ATOMICS__
9315// WEBASSEMBLY32-NOT:#define __STDC_NO_COMPLEX__
9316// WEBASSEMBLY32-NOT:#define __STDC_NO_VLA__
9317// WEBASSEMBLY32-NOT:#define __STDC_NO_THREADS__
James Y Knightc97efa42016-02-11 16:51:29 +00009318// WEBASSEMBLY32-NEXT:#define __STDC_UTF_16__ 1
9319// WEBASSEMBLY32-NEXT:#define __STDC_UTF_32__ 1
9320// WEBASSEMBLY32-NEXT:#define __STDC_VERSION__ 201112L
9321// WEBASSEMBLY32-NEXT:#define __STDC__ 1
9322// WEBASSEMBLY32-NEXT:#define __UINT16_C_SUFFIX__
9323// WEBASSEMBLY32-NEXT:#define __UINT16_FMTX__ "hX"
9324// WEBASSEMBLY32-NEXT:#define __UINT16_FMTo__ "ho"
9325// WEBASSEMBLY32-NEXT:#define __UINT16_FMTu__ "hu"
9326// WEBASSEMBLY32-NEXT:#define __UINT16_FMTx__ "hx"
9327// WEBASSEMBLY32-NEXT:#define __UINT16_MAX__ 65535
9328// WEBASSEMBLY32-NEXT:#define __UINT16_TYPE__ unsigned short
9329// WEBASSEMBLY32-NEXT:#define __UINT32_C_SUFFIX__ U
9330// WEBASSEMBLY32-NEXT:#define __UINT32_FMTX__ "X"
9331// WEBASSEMBLY32-NEXT:#define __UINT32_FMTo__ "o"
9332// WEBASSEMBLY32-NEXT:#define __UINT32_FMTu__ "u"
9333// WEBASSEMBLY32-NEXT:#define __UINT32_FMTx__ "x"
9334// WEBASSEMBLY32-NEXT:#define __UINT32_MAX__ 4294967295U
9335// WEBASSEMBLY32-NEXT:#define __UINT32_TYPE__ unsigned int
9336// WEBASSEMBLY32-NEXT:#define __UINT64_C_SUFFIX__ ULL
9337// WEBASSEMBLY32-NEXT:#define __UINT64_FMTX__ "llX"
9338// WEBASSEMBLY32-NEXT:#define __UINT64_FMTo__ "llo"
9339// WEBASSEMBLY32-NEXT:#define __UINT64_FMTu__ "llu"
9340// WEBASSEMBLY32-NEXT:#define __UINT64_FMTx__ "llx"
9341// WEBASSEMBLY32-NEXT:#define __UINT64_MAX__ 18446744073709551615ULL
9342// WEBASSEMBLY32-NEXT:#define __UINT64_TYPE__ long long unsigned int
9343// WEBASSEMBLY32-NEXT:#define __UINT8_C_SUFFIX__
9344// WEBASSEMBLY32-NEXT:#define __UINT8_FMTX__ "hhX"
9345// WEBASSEMBLY32-NEXT:#define __UINT8_FMTo__ "hho"
9346// WEBASSEMBLY32-NEXT:#define __UINT8_FMTu__ "hhu"
9347// WEBASSEMBLY32-NEXT:#define __UINT8_FMTx__ "hhx"
9348// WEBASSEMBLY32-NEXT:#define __UINT8_MAX__ 255
9349// WEBASSEMBLY32-NEXT:#define __UINT8_TYPE__ unsigned char
9350// WEBASSEMBLY32-NEXT:#define __UINTMAX_C_SUFFIX__ ULL
9351// WEBASSEMBLY32-NEXT:#define __UINTMAX_FMTX__ "llX"
9352// WEBASSEMBLY32-NEXT:#define __UINTMAX_FMTo__ "llo"
9353// WEBASSEMBLY32-NEXT:#define __UINTMAX_FMTu__ "llu"
9354// WEBASSEMBLY32-NEXT:#define __UINTMAX_FMTx__ "llx"
9355// WEBASSEMBLY32-NEXT:#define __UINTMAX_MAX__ 18446744073709551615ULL
9356// WEBASSEMBLY32-NEXT:#define __UINTMAX_TYPE__ long long unsigned int
9357// WEBASSEMBLY32-NEXT:#define __UINTMAX_WIDTH__ 64
Dan Gohmandf07a352018-07-24 00:29:58 +00009358// WEBASSEMBLY32-NEXT:#define __UINTPTR_FMTX__ "lX"
9359// WEBASSEMBLY32-NEXT:#define __UINTPTR_FMTo__ "lo"
9360// WEBASSEMBLY32-NEXT:#define __UINTPTR_FMTu__ "lu"
9361// WEBASSEMBLY32-NEXT:#define __UINTPTR_FMTx__ "lx"
9362// WEBASSEMBLY32-NEXT:#define __UINTPTR_MAX__ 4294967295UL
9363// WEBASSEMBLY32-NEXT:#define __UINTPTR_TYPE__ long unsigned int
James Y Knightc97efa42016-02-11 16:51:29 +00009364// WEBASSEMBLY32-NEXT:#define __UINTPTR_WIDTH__ 32
9365// WEBASSEMBLY32-NEXT:#define __UINT_FAST16_FMTX__ "hX"
9366// WEBASSEMBLY32-NEXT:#define __UINT_FAST16_FMTo__ "ho"
9367// WEBASSEMBLY32-NEXT:#define __UINT_FAST16_FMTu__ "hu"
9368// WEBASSEMBLY32-NEXT:#define __UINT_FAST16_FMTx__ "hx"
9369// WEBASSEMBLY32-NEXT:#define __UINT_FAST16_MAX__ 65535
9370// WEBASSEMBLY32-NEXT:#define __UINT_FAST16_TYPE__ unsigned short
9371// WEBASSEMBLY32-NEXT:#define __UINT_FAST32_FMTX__ "X"
9372// WEBASSEMBLY32-NEXT:#define __UINT_FAST32_FMTo__ "o"
9373// WEBASSEMBLY32-NEXT:#define __UINT_FAST32_FMTu__ "u"
9374// WEBASSEMBLY32-NEXT:#define __UINT_FAST32_FMTx__ "x"
9375// WEBASSEMBLY32-NEXT:#define __UINT_FAST32_MAX__ 4294967295U
9376// WEBASSEMBLY32-NEXT:#define __UINT_FAST32_TYPE__ unsigned int
9377// WEBASSEMBLY32-NEXT:#define __UINT_FAST64_FMTX__ "llX"
9378// WEBASSEMBLY32-NEXT:#define __UINT_FAST64_FMTo__ "llo"
9379// WEBASSEMBLY32-NEXT:#define __UINT_FAST64_FMTu__ "llu"
9380// WEBASSEMBLY32-NEXT:#define __UINT_FAST64_FMTx__ "llx"
9381// WEBASSEMBLY32-NEXT:#define __UINT_FAST64_MAX__ 18446744073709551615ULL
9382// WEBASSEMBLY32-NEXT:#define __UINT_FAST64_TYPE__ long long unsigned int
9383// WEBASSEMBLY32-NEXT:#define __UINT_FAST8_FMTX__ "hhX"
9384// WEBASSEMBLY32-NEXT:#define __UINT_FAST8_FMTo__ "hho"
9385// WEBASSEMBLY32-NEXT:#define __UINT_FAST8_FMTu__ "hhu"
9386// WEBASSEMBLY32-NEXT:#define __UINT_FAST8_FMTx__ "hhx"
9387// WEBASSEMBLY32-NEXT:#define __UINT_FAST8_MAX__ 255
9388// WEBASSEMBLY32-NEXT:#define __UINT_FAST8_TYPE__ unsigned char
9389// WEBASSEMBLY32-NEXT:#define __UINT_LEAST16_FMTX__ "hX"
9390// WEBASSEMBLY32-NEXT:#define __UINT_LEAST16_FMTo__ "ho"
9391// WEBASSEMBLY32-NEXT:#define __UINT_LEAST16_FMTu__ "hu"
9392// WEBASSEMBLY32-NEXT:#define __UINT_LEAST16_FMTx__ "hx"
9393// WEBASSEMBLY32-NEXT:#define __UINT_LEAST16_MAX__ 65535
9394// WEBASSEMBLY32-NEXT:#define __UINT_LEAST16_TYPE__ unsigned short
9395// WEBASSEMBLY32-NEXT:#define __UINT_LEAST32_FMTX__ "X"
9396// WEBASSEMBLY32-NEXT:#define __UINT_LEAST32_FMTo__ "o"
9397// WEBASSEMBLY32-NEXT:#define __UINT_LEAST32_FMTu__ "u"
9398// WEBASSEMBLY32-NEXT:#define __UINT_LEAST32_FMTx__ "x"
9399// WEBASSEMBLY32-NEXT:#define __UINT_LEAST32_MAX__ 4294967295U
9400// WEBASSEMBLY32-NEXT:#define __UINT_LEAST32_TYPE__ unsigned int
9401// WEBASSEMBLY32-NEXT:#define __UINT_LEAST64_FMTX__ "llX"
9402// WEBASSEMBLY32-NEXT:#define __UINT_LEAST64_FMTo__ "llo"
9403// WEBASSEMBLY32-NEXT:#define __UINT_LEAST64_FMTu__ "llu"
9404// WEBASSEMBLY32-NEXT:#define __UINT_LEAST64_FMTx__ "llx"
9405// WEBASSEMBLY32-NEXT:#define __UINT_LEAST64_MAX__ 18446744073709551615ULL
9406// WEBASSEMBLY32-NEXT:#define __UINT_LEAST64_TYPE__ long long unsigned int
9407// WEBASSEMBLY32-NEXT:#define __UINT_LEAST8_FMTX__ "hhX"
9408// WEBASSEMBLY32-NEXT:#define __UINT_LEAST8_FMTo__ "hho"
9409// WEBASSEMBLY32-NEXT:#define __UINT_LEAST8_FMTu__ "hhu"
9410// WEBASSEMBLY32-NEXT:#define __UINT_LEAST8_FMTx__ "hhx"
9411// WEBASSEMBLY32-NEXT:#define __UINT_LEAST8_MAX__ 255
9412// WEBASSEMBLY32-NEXT:#define __UINT_LEAST8_TYPE__ unsigned char
9413// WEBASSEMBLY32-NEXT:#define __USER_LABEL_PREFIX__
9414// WEBASSEMBLY32-NEXT:#define __VERSION__ "{{.*}}"
9415// WEBASSEMBLY32-NEXT:#define __WCHAR_MAX__ 2147483647
9416// WEBASSEMBLY32-NEXT:#define __WCHAR_TYPE__ int
Dan Gohmanc2853072015-09-03 22:51:53 +00009417// WEBASSEMBLY32-NOT:#define __WCHAR_UNSIGNED__
James Y Knightc97efa42016-02-11 16:51:29 +00009418// WEBASSEMBLY32-NEXT:#define __WCHAR_WIDTH__ 32
Ed Schouten1382a322017-12-05 09:13:18 +00009419// WEBASSEMBLY32-NEXT:#define __WINT_MAX__ 2147483647
James Y Knightc97efa42016-02-11 16:51:29 +00009420// WEBASSEMBLY32-NEXT:#define __WINT_TYPE__ int
Dan Gohmanc2853072015-09-03 22:51:53 +00009421// WEBASSEMBLY32-NOT:#define __WINT_UNSIGNED__
James Y Knightc97efa42016-02-11 16:51:29 +00009422// WEBASSEMBLY32-NEXT:#define __WINT_WIDTH__ 32
9423// WEBASSEMBLY32-NEXT:#define __clang__ 1
Tim Northover25809012016-02-11 21:31:51 +00009424// WEBASSEMBLY32-NEXT:#define __clang_major__ {{.*}}
9425// WEBASSEMBLY32-NEXT:#define __clang_minor__ {{.*}}
9426// WEBASSEMBLY32-NEXT:#define __clang_patchlevel__ {{.*}}
James Y Knightc97efa42016-02-11 16:51:29 +00009427// WEBASSEMBLY32-NEXT:#define __clang_version__ "{{.*}}"
9428// WEBASSEMBLY32-NEXT:#define __llvm__ 1
Dan Gohmanc2853072015-09-03 22:51:53 +00009429// WEBASSEMBLY32-NOT:#define __wasm_simd128__
9430// WEBASSEMBLY32-NOT:#define __wasm_simd256__
9431// WEBASSEMBLY32-NOT:#define __wasm_simd512__
Saleem Abdulrasool56027092017-02-07 19:00:06 +00009432// WEBASSEMBLY32-NOT:#define __unix
Dan Gohmanc2853072015-09-03 22:51:53 +00009433// WEBASSEMBLY32-NOT:#define __unix__
James Y Knightc97efa42016-02-11 16:51:29 +00009434// WEBASSEMBLY32-NEXT:#define __wasm 1
9435// WEBASSEMBLY32-NEXT:#define __wasm32 1
9436// WEBASSEMBLY32-NEXT:#define __wasm32__ 1
Dan Gohmanc2853072015-09-03 22:51:53 +00009437// WEBASSEMBLY32-NOT:#define __wasm64
9438// WEBASSEMBLY32-NOT:#define __wasm64__
James Y Knightc97efa42016-02-11 16:51:29 +00009439// WEBASSEMBLY32-NEXT:#define __wasm__ 1
Dan Gohmanc2853072015-09-03 22:51:53 +00009440//
9441// RUN: %clang_cc1 -E -dM -ffreestanding -triple=wasm64-unknown-unknown \
9442// RUN: < /dev/null \
James Y Knightc97efa42016-02-11 16:51:29 +00009443// RUN: | FileCheck -match-full-lines -check-prefix=WEBASSEMBLY64 %s
Dan Gohmanc2853072015-09-03 22:51:53 +00009444//
9445// WEBASSEMBLY64-NOT:#define _ILP32
James Y Knightc97efa42016-02-11 16:51:29 +00009446// WEBASSEMBLY64:#define _LP64 1
9447// WEBASSEMBLY64-NEXT:#define __ATOMIC_ACQUIRE 2
9448// WEBASSEMBLY64-NEXT:#define __ATOMIC_ACQ_REL 4
9449// WEBASSEMBLY64-NEXT:#define __ATOMIC_CONSUME 1
9450// WEBASSEMBLY64-NEXT:#define __ATOMIC_RELAXED 0
9451// WEBASSEMBLY64-NEXT:#define __ATOMIC_RELEASE 3
9452// WEBASSEMBLY64-NEXT:#define __ATOMIC_SEQ_CST 5
9453// WEBASSEMBLY64-NEXT:#define __BIGGEST_ALIGNMENT__ 16
9454// WEBASSEMBLY64-NEXT:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
9455// WEBASSEMBLY64-NEXT:#define __CHAR16_TYPE__ unsigned short
9456// WEBASSEMBLY64-NEXT:#define __CHAR32_TYPE__ unsigned int
9457// WEBASSEMBLY64-NEXT:#define __CHAR_BIT__ 8
Dan Gohmanc2853072015-09-03 22:51:53 +00009458// WEBASSEMBLY64-NOT:#define __CHAR_UNSIGNED__
Eric Fiselier4b2c8f72017-04-20 22:53:57 +00009459// WEBASSEMBLY64-NEXT:#define __CLANG_ATOMIC_BOOL_LOCK_FREE 2
9460// WEBASSEMBLY64-NEXT:#define __CLANG_ATOMIC_CHAR16_T_LOCK_FREE 2
9461// WEBASSEMBLY64-NEXT:#define __CLANG_ATOMIC_CHAR32_T_LOCK_FREE 2
9462// WEBASSEMBLY64-NEXT:#define __CLANG_ATOMIC_CHAR_LOCK_FREE 2
9463// WEBASSEMBLY64-NEXT:#define __CLANG_ATOMIC_INT_LOCK_FREE 2
9464// WEBASSEMBLY64-NEXT:#define __CLANG_ATOMIC_LLONG_LOCK_FREE 2
9465// WEBASSEMBLY64-NEXT:#define __CLANG_ATOMIC_LONG_LOCK_FREE 2
9466// WEBASSEMBLY64-NEXT:#define __CLANG_ATOMIC_POINTER_LOCK_FREE 2
9467// WEBASSEMBLY64-NEXT:#define __CLANG_ATOMIC_SHORT_LOCK_FREE 2
9468// WEBASSEMBLY64-NEXT:#define __CLANG_ATOMIC_WCHAR_T_LOCK_FREE 2
James Y Knightc97efa42016-02-11 16:51:29 +00009469// WEBASSEMBLY64-NEXT:#define __CONSTANT_CFSTRINGS__ 1
9470// WEBASSEMBLY64-NEXT:#define __DBL_DECIMAL_DIG__ 17
9471// WEBASSEMBLY64-NEXT:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
9472// WEBASSEMBLY64-NEXT:#define __DBL_DIG__ 15
9473// WEBASSEMBLY64-NEXT:#define __DBL_EPSILON__ 2.2204460492503131e-16
9474// WEBASSEMBLY64-NEXT:#define __DBL_HAS_DENORM__ 1
9475// WEBASSEMBLY64-NEXT:#define __DBL_HAS_INFINITY__ 1
9476// WEBASSEMBLY64-NEXT:#define __DBL_HAS_QUIET_NAN__ 1
9477// WEBASSEMBLY64-NEXT:#define __DBL_MANT_DIG__ 53
9478// WEBASSEMBLY64-NEXT:#define __DBL_MAX_10_EXP__ 308
9479// WEBASSEMBLY64-NEXT:#define __DBL_MAX_EXP__ 1024
9480// WEBASSEMBLY64-NEXT:#define __DBL_MAX__ 1.7976931348623157e+308
9481// WEBASSEMBLY64-NEXT:#define __DBL_MIN_10_EXP__ (-307)
9482// WEBASSEMBLY64-NEXT:#define __DBL_MIN_EXP__ (-1021)
9483// WEBASSEMBLY64-NEXT:#define __DBL_MIN__ 2.2250738585072014e-308
9484// WEBASSEMBLY64-NEXT:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
Dan Gohmanc2853072015-09-03 22:51:53 +00009485// WEBASSEMBLY64-NOT:#define __ELF__
James Y Knightc97efa42016-02-11 16:51:29 +00009486// WEBASSEMBLY64-NEXT:#define __FINITE_MATH_ONLY__ 0
Sjoerd Meijerc05609c2017-09-13 15:23:19 +00009487// WEBASSEMBLY64:#define __FLT_DECIMAL_DIG__ 9
James Y Knightc97efa42016-02-11 16:51:29 +00009488// WEBASSEMBLY64-NEXT:#define __FLT_DENORM_MIN__ 1.40129846e-45F
9489// WEBASSEMBLY64-NEXT:#define __FLT_DIG__ 6
9490// WEBASSEMBLY64-NEXT:#define __FLT_EPSILON__ 1.19209290e-7F
9491// WEBASSEMBLY64-NEXT:#define __FLT_EVAL_METHOD__ 0
9492// WEBASSEMBLY64-NEXT:#define __FLT_HAS_DENORM__ 1
9493// WEBASSEMBLY64-NEXT:#define __FLT_HAS_INFINITY__ 1
9494// WEBASSEMBLY64-NEXT:#define __FLT_HAS_QUIET_NAN__ 1
9495// WEBASSEMBLY64-NEXT:#define __FLT_MANT_DIG__ 24
9496// WEBASSEMBLY64-NEXT:#define __FLT_MAX_10_EXP__ 38
9497// WEBASSEMBLY64-NEXT:#define __FLT_MAX_EXP__ 128
9498// WEBASSEMBLY64-NEXT:#define __FLT_MAX__ 3.40282347e+38F
9499// WEBASSEMBLY64-NEXT:#define __FLT_MIN_10_EXP__ (-37)
9500// WEBASSEMBLY64-NEXT:#define __FLT_MIN_EXP__ (-125)
9501// WEBASSEMBLY64-NEXT:#define __FLT_MIN__ 1.17549435e-38F
9502// WEBASSEMBLY64-NEXT:#define __FLT_RADIX__ 2
9503// WEBASSEMBLY64-NEXT:#define __GCC_ATOMIC_BOOL_LOCK_FREE 2
9504// WEBASSEMBLY64-NEXT:#define __GCC_ATOMIC_CHAR16_T_LOCK_FREE 2
9505// WEBASSEMBLY64-NEXT:#define __GCC_ATOMIC_CHAR32_T_LOCK_FREE 2
9506// WEBASSEMBLY64-NEXT:#define __GCC_ATOMIC_CHAR_LOCK_FREE 2
9507// WEBASSEMBLY64-NEXT:#define __GCC_ATOMIC_INT_LOCK_FREE 2
9508// WEBASSEMBLY64-NEXT:#define __GCC_ATOMIC_LLONG_LOCK_FREE 2
9509// WEBASSEMBLY64-NEXT:#define __GCC_ATOMIC_LONG_LOCK_FREE 2
9510// WEBASSEMBLY64-NEXT:#define __GCC_ATOMIC_POINTER_LOCK_FREE 2
9511// WEBASSEMBLY64-NEXT:#define __GCC_ATOMIC_SHORT_LOCK_FREE 2
9512// WEBASSEMBLY64-NEXT:#define __GCC_ATOMIC_TEST_AND_SET_TRUEVAL 1
9513// WEBASSEMBLY64-NEXT:#define __GCC_ATOMIC_WCHAR_T_LOCK_FREE 2
Tim Northover25809012016-02-11 21:31:51 +00009514// WEBASSEMBLY64-NEXT:#define __GNUC_MINOR__ {{.*}}
9515// WEBASSEMBLY64-NEXT:#define __GNUC_PATCHLEVEL__ {{.*}}
James Y Knightc97efa42016-02-11 16:51:29 +00009516// WEBASSEMBLY64-NEXT:#define __GNUC_STDC_INLINE__ 1
Dan Gohmanc2853072015-09-03 22:51:53 +00009517// WEBASSEMBLY64-NEXT:#define __GNUC__ {{.}}
James Y Knightc97efa42016-02-11 16:51:29 +00009518// WEBASSEMBLY64-NEXT:#define __GXX_ABI_VERSION 1002
Dan Gohmanc2853072015-09-03 22:51:53 +00009519// WEBASSEMBLY64-NOT:#define __ILP32__
James Y Knightc97efa42016-02-11 16:51:29 +00009520// WEBASSEMBLY64-NEXT:#define __INT16_C_SUFFIX__
9521// WEBASSEMBLY64-NEXT:#define __INT16_FMTd__ "hd"
9522// WEBASSEMBLY64-NEXT:#define __INT16_FMTi__ "hi"
9523// WEBASSEMBLY64-NEXT:#define __INT16_MAX__ 32767
9524// WEBASSEMBLY64-NEXT:#define __INT16_TYPE__ short
9525// WEBASSEMBLY64-NEXT:#define __INT32_C_SUFFIX__
9526// WEBASSEMBLY64-NEXT:#define __INT32_FMTd__ "d"
9527// WEBASSEMBLY64-NEXT:#define __INT32_FMTi__ "i"
9528// WEBASSEMBLY64-NEXT:#define __INT32_MAX__ 2147483647
9529// WEBASSEMBLY64-NEXT:#define __INT32_TYPE__ int
9530// WEBASSEMBLY64-NEXT:#define __INT64_C_SUFFIX__ LL
9531// WEBASSEMBLY64-NEXT:#define __INT64_FMTd__ "lld"
9532// WEBASSEMBLY64-NEXT:#define __INT64_FMTi__ "lli"
9533// WEBASSEMBLY64-NEXT:#define __INT64_MAX__ 9223372036854775807LL
9534// WEBASSEMBLY64-NEXT:#define __INT64_TYPE__ long long int
9535// WEBASSEMBLY64-NEXT:#define __INT8_C_SUFFIX__
9536// WEBASSEMBLY64-NEXT:#define __INT8_FMTd__ "hhd"
9537// WEBASSEMBLY64-NEXT:#define __INT8_FMTi__ "hhi"
9538// WEBASSEMBLY64-NEXT:#define __INT8_MAX__ 127
9539// WEBASSEMBLY64-NEXT:#define __INT8_TYPE__ signed char
9540// WEBASSEMBLY64-NEXT:#define __INTMAX_C_SUFFIX__ LL
9541// WEBASSEMBLY64-NEXT:#define __INTMAX_FMTd__ "lld"
9542// WEBASSEMBLY64-NEXT:#define __INTMAX_FMTi__ "lli"
9543// WEBASSEMBLY64-NEXT:#define __INTMAX_MAX__ 9223372036854775807LL
9544// WEBASSEMBLY64-NEXT:#define __INTMAX_TYPE__ long long int
9545// WEBASSEMBLY64-NEXT:#define __INTMAX_WIDTH__ 64
9546// WEBASSEMBLY64-NEXT:#define __INTPTR_FMTd__ "ld"
9547// WEBASSEMBLY64-NEXT:#define __INTPTR_FMTi__ "li"
9548// WEBASSEMBLY64-NEXT:#define __INTPTR_MAX__ 9223372036854775807L
9549// WEBASSEMBLY64-NEXT:#define __INTPTR_TYPE__ long int
9550// WEBASSEMBLY64-NEXT:#define __INTPTR_WIDTH__ 64
9551// WEBASSEMBLY64-NEXT:#define __INT_FAST16_FMTd__ "hd"
9552// WEBASSEMBLY64-NEXT:#define __INT_FAST16_FMTi__ "hi"
9553// WEBASSEMBLY64-NEXT:#define __INT_FAST16_MAX__ 32767
9554// WEBASSEMBLY64-NEXT:#define __INT_FAST16_TYPE__ short
9555// WEBASSEMBLY64-NEXT:#define __INT_FAST32_FMTd__ "d"
9556// WEBASSEMBLY64-NEXT:#define __INT_FAST32_FMTi__ "i"
9557// WEBASSEMBLY64-NEXT:#define __INT_FAST32_MAX__ 2147483647
9558// WEBASSEMBLY64-NEXT:#define __INT_FAST32_TYPE__ int
9559// WEBASSEMBLY64-NEXT:#define __INT_FAST64_FMTd__ "lld"
9560// WEBASSEMBLY64-NEXT:#define __INT_FAST64_FMTi__ "lli"
9561// WEBASSEMBLY64-NEXT:#define __INT_FAST64_MAX__ 9223372036854775807LL
9562// WEBASSEMBLY64-NEXT:#define __INT_FAST64_TYPE__ long long int
9563// WEBASSEMBLY64-NEXT:#define __INT_FAST8_FMTd__ "hhd"
9564// WEBASSEMBLY64-NEXT:#define __INT_FAST8_FMTi__ "hhi"
9565// WEBASSEMBLY64-NEXT:#define __INT_FAST8_MAX__ 127
9566// WEBASSEMBLY64-NEXT:#define __INT_FAST8_TYPE__ signed char
9567// WEBASSEMBLY64-NEXT:#define __INT_LEAST16_FMTd__ "hd"
9568// WEBASSEMBLY64-NEXT:#define __INT_LEAST16_FMTi__ "hi"
9569// WEBASSEMBLY64-NEXT:#define __INT_LEAST16_MAX__ 32767
9570// WEBASSEMBLY64-NEXT:#define __INT_LEAST16_TYPE__ short
9571// WEBASSEMBLY64-NEXT:#define __INT_LEAST32_FMTd__ "d"
9572// WEBASSEMBLY64-NEXT:#define __INT_LEAST32_FMTi__ "i"
9573// WEBASSEMBLY64-NEXT:#define __INT_LEAST32_MAX__ 2147483647
9574// WEBASSEMBLY64-NEXT:#define __INT_LEAST32_TYPE__ int
9575// WEBASSEMBLY64-NEXT:#define __INT_LEAST64_FMTd__ "lld"
9576// WEBASSEMBLY64-NEXT:#define __INT_LEAST64_FMTi__ "lli"
9577// WEBASSEMBLY64-NEXT:#define __INT_LEAST64_MAX__ 9223372036854775807LL
9578// WEBASSEMBLY64-NEXT:#define __INT_LEAST64_TYPE__ long long int
9579// WEBASSEMBLY64-NEXT:#define __INT_LEAST8_FMTd__ "hhd"
9580// WEBASSEMBLY64-NEXT:#define __INT_LEAST8_FMTi__ "hhi"
9581// WEBASSEMBLY64-NEXT:#define __INT_LEAST8_MAX__ 127
9582// WEBASSEMBLY64-NEXT:#define __INT_LEAST8_TYPE__ signed char
9583// WEBASSEMBLY64-NEXT:#define __INT_MAX__ 2147483647
9584// WEBASSEMBLY64-NEXT:#define __LDBL_DECIMAL_DIG__ 36
9585// WEBASSEMBLY64-NEXT:#define __LDBL_DENORM_MIN__ 6.47517511943802511092443895822764655e-4966L
9586// WEBASSEMBLY64-NEXT:#define __LDBL_DIG__ 33
9587// WEBASSEMBLY64-NEXT:#define __LDBL_EPSILON__ 1.92592994438723585305597794258492732e-34L
9588// WEBASSEMBLY64-NEXT:#define __LDBL_HAS_DENORM__ 1
9589// WEBASSEMBLY64-NEXT:#define __LDBL_HAS_INFINITY__ 1
9590// WEBASSEMBLY64-NEXT:#define __LDBL_HAS_QUIET_NAN__ 1
9591// WEBASSEMBLY64-NEXT:#define __LDBL_MANT_DIG__ 113
9592// WEBASSEMBLY64-NEXT:#define __LDBL_MAX_10_EXP__ 4932
9593// WEBASSEMBLY64-NEXT:#define __LDBL_MAX_EXP__ 16384
9594// WEBASSEMBLY64-NEXT:#define __LDBL_MAX__ 1.18973149535723176508575932662800702e+4932L
9595// WEBASSEMBLY64-NEXT:#define __LDBL_MIN_10_EXP__ (-4931)
9596// WEBASSEMBLY64-NEXT:#define __LDBL_MIN_EXP__ (-16381)
9597// WEBASSEMBLY64-NEXT:#define __LDBL_MIN__ 3.36210314311209350626267781732175260e-4932L
9598// WEBASSEMBLY64-NEXT:#define __LITTLE_ENDIAN__ 1
9599// WEBASSEMBLY64-NEXT:#define __LONG_LONG_MAX__ 9223372036854775807LL
9600// WEBASSEMBLY64-NEXT:#define __LONG_MAX__ 9223372036854775807L
9601// WEBASSEMBLY64-NEXT:#define __LP64__ 1
9602// WEBASSEMBLY64-NEXT:#define __NO_INLINE__ 1
Alex Lorenz41d13152017-01-20 16:48:25 +00009603// WEBASSEMBLY64-NEXT:#define __OBJC_BOOL_IS_BOOL 0
Yaxun Liu39195062017-08-04 18:16:31 +00009604// WEBASSEMBLY64-NEXT:#define __OPENCL_MEMORY_SCOPE_ALL_SVM_DEVICES 3
9605// WEBASSEMBLY64-NEXT:#define __OPENCL_MEMORY_SCOPE_DEVICE 2
9606// WEBASSEMBLY64-NEXT:#define __OPENCL_MEMORY_SCOPE_SUB_GROUP 4
9607// WEBASSEMBLY64-NEXT:#define __OPENCL_MEMORY_SCOPE_WORK_GROUP 1
9608// WEBASSEMBLY64-NEXT:#define __OPENCL_MEMORY_SCOPE_WORK_ITEM 0
James Y Knightc97efa42016-02-11 16:51:29 +00009609// WEBASSEMBLY64-NEXT:#define __ORDER_BIG_ENDIAN__ 4321
9610// WEBASSEMBLY64-NEXT:#define __ORDER_LITTLE_ENDIAN__ 1234
9611// WEBASSEMBLY64-NEXT:#define __ORDER_PDP_ENDIAN__ 3412
9612// WEBASSEMBLY64-NEXT:#define __POINTER_WIDTH__ 64
9613// WEBASSEMBLY64-NEXT:#define __PRAGMA_REDEFINE_EXTNAME 1
9614// WEBASSEMBLY64-NEXT:#define __PTRDIFF_FMTd__ "ld"
9615// WEBASSEMBLY64-NEXT:#define __PTRDIFF_FMTi__ "li"
9616// WEBASSEMBLY64-NEXT:#define __PTRDIFF_MAX__ 9223372036854775807L
9617// WEBASSEMBLY64-NEXT:#define __PTRDIFF_TYPE__ long int
9618// WEBASSEMBLY64-NEXT:#define __PTRDIFF_WIDTH__ 64
Dan Gohmanc2853072015-09-03 22:51:53 +00009619// WEBASSEMBLY64-NOT:#define __REGISTER_PREFIX__
James Y Knightc97efa42016-02-11 16:51:29 +00009620// WEBASSEMBLY64-NEXT:#define __SCHAR_MAX__ 127
9621// WEBASSEMBLY64-NEXT:#define __SHRT_MAX__ 32767
9622// WEBASSEMBLY64-NEXT:#define __SIG_ATOMIC_MAX__ 9223372036854775807L
9623// WEBASSEMBLY64-NEXT:#define __SIG_ATOMIC_WIDTH__ 64
9624// WEBASSEMBLY64-NEXT:#define __SIZEOF_DOUBLE__ 8
9625// WEBASSEMBLY64-NEXT:#define __SIZEOF_FLOAT__ 4
9626// WEBASSEMBLY64-NEXT:#define __SIZEOF_INT128__ 16
9627// WEBASSEMBLY64-NEXT:#define __SIZEOF_INT__ 4
9628// WEBASSEMBLY64-NEXT:#define __SIZEOF_LONG_DOUBLE__ 16
9629// WEBASSEMBLY64-NEXT:#define __SIZEOF_LONG_LONG__ 8
9630// WEBASSEMBLY64-NEXT:#define __SIZEOF_LONG__ 8
9631// WEBASSEMBLY64-NEXT:#define __SIZEOF_POINTER__ 8
9632// WEBASSEMBLY64-NEXT:#define __SIZEOF_PTRDIFF_T__ 8
9633// WEBASSEMBLY64-NEXT:#define __SIZEOF_SHORT__ 2
9634// WEBASSEMBLY64-NEXT:#define __SIZEOF_SIZE_T__ 8
9635// WEBASSEMBLY64-NEXT:#define __SIZEOF_WCHAR_T__ 4
9636// WEBASSEMBLY64-NEXT:#define __SIZEOF_WINT_T__ 4
9637// WEBASSEMBLY64-NEXT:#define __SIZE_FMTX__ "lX"
9638// WEBASSEMBLY64-NEXT:#define __SIZE_FMTo__ "lo"
9639// WEBASSEMBLY64-NEXT:#define __SIZE_FMTu__ "lu"
9640// WEBASSEMBLY64-NEXT:#define __SIZE_FMTx__ "lx"
9641// WEBASSEMBLY64-NEXT:#define __SIZE_MAX__ 18446744073709551615UL
9642// WEBASSEMBLY64-NEXT:#define __SIZE_TYPE__ long unsigned int
9643// WEBASSEMBLY64-NEXT:#define __SIZE_WIDTH__ 64
9644// WEBASSEMBLY64-NEXT:#define __STDC_HOSTED__ 0
Dan Gohmanc2853072015-09-03 22:51:53 +00009645// WEBASSEMBLY64-NOT:#define __STDC_MB_MIGHT_NEQ_WC__
9646// WEBASSEMBLY64-NOT:#define __STDC_NO_ATOMICS__
9647// WEBASSEMBLY64-NOT:#define __STDC_NO_COMPLEX__
9648// WEBASSEMBLY64-NOT:#define __STDC_NO_VLA__
9649// WEBASSEMBLY64-NOT:#define __STDC_NO_THREADS__
James Y Knightc97efa42016-02-11 16:51:29 +00009650// WEBASSEMBLY64-NEXT:#define __STDC_UTF_16__ 1
9651// WEBASSEMBLY64-NEXT:#define __STDC_UTF_32__ 1
9652// WEBASSEMBLY64-NEXT:#define __STDC_VERSION__ 201112L
9653// WEBASSEMBLY64-NEXT:#define __STDC__ 1
9654// WEBASSEMBLY64-NEXT:#define __UINT16_C_SUFFIX__
9655// WEBASSEMBLY64-NEXT:#define __UINT16_FMTX__ "hX"
9656// WEBASSEMBLY64-NEXT:#define __UINT16_FMTo__ "ho"
9657// WEBASSEMBLY64-NEXT:#define __UINT16_FMTu__ "hu"
9658// WEBASSEMBLY64-NEXT:#define __UINT16_FMTx__ "hx"
9659// WEBASSEMBLY64-NEXT:#define __UINT16_MAX__ 65535
9660// WEBASSEMBLY64-NEXT:#define __UINT16_TYPE__ unsigned short
9661// WEBASSEMBLY64-NEXT:#define __UINT32_C_SUFFIX__ U
9662// WEBASSEMBLY64-NEXT:#define __UINT32_FMTX__ "X"
9663// WEBASSEMBLY64-NEXT:#define __UINT32_FMTo__ "o"
9664// WEBASSEMBLY64-NEXT:#define __UINT32_FMTu__ "u"
9665// WEBASSEMBLY64-NEXT:#define __UINT32_FMTx__ "x"
9666// WEBASSEMBLY64-NEXT:#define __UINT32_MAX__ 4294967295U
9667// WEBASSEMBLY64-NEXT:#define __UINT32_TYPE__ unsigned int
9668// WEBASSEMBLY64-NEXT:#define __UINT64_C_SUFFIX__ ULL
9669// WEBASSEMBLY64-NEXT:#define __UINT64_FMTX__ "llX"
9670// WEBASSEMBLY64-NEXT:#define __UINT64_FMTo__ "llo"
9671// WEBASSEMBLY64-NEXT:#define __UINT64_FMTu__ "llu"
9672// WEBASSEMBLY64-NEXT:#define __UINT64_FMTx__ "llx"
9673// WEBASSEMBLY64-NEXT:#define __UINT64_MAX__ 18446744073709551615ULL
9674// WEBASSEMBLY64-NEXT:#define __UINT64_TYPE__ long long unsigned int
9675// WEBASSEMBLY64-NEXT:#define __UINT8_C_SUFFIX__
9676// WEBASSEMBLY64-NEXT:#define __UINT8_FMTX__ "hhX"
9677// WEBASSEMBLY64-NEXT:#define __UINT8_FMTo__ "hho"
9678// WEBASSEMBLY64-NEXT:#define __UINT8_FMTu__ "hhu"
9679// WEBASSEMBLY64-NEXT:#define __UINT8_FMTx__ "hhx"
9680// WEBASSEMBLY64-NEXT:#define __UINT8_MAX__ 255
9681// WEBASSEMBLY64-NEXT:#define __UINT8_TYPE__ unsigned char
9682// WEBASSEMBLY64-NEXT:#define __UINTMAX_C_SUFFIX__ ULL
9683// WEBASSEMBLY64-NEXT:#define __UINTMAX_FMTX__ "llX"
9684// WEBASSEMBLY64-NEXT:#define __UINTMAX_FMTo__ "llo"
9685// WEBASSEMBLY64-NEXT:#define __UINTMAX_FMTu__ "llu"
9686// WEBASSEMBLY64-NEXT:#define __UINTMAX_FMTx__ "llx"
9687// WEBASSEMBLY64-NEXT:#define __UINTMAX_MAX__ 18446744073709551615ULL
9688// WEBASSEMBLY64-NEXT:#define __UINTMAX_TYPE__ long long unsigned int
9689// WEBASSEMBLY64-NEXT:#define __UINTMAX_WIDTH__ 64
9690// WEBASSEMBLY64-NEXT:#define __UINTPTR_FMTX__ "lX"
9691// WEBASSEMBLY64-NEXT:#define __UINTPTR_FMTo__ "lo"
9692// WEBASSEMBLY64-NEXT:#define __UINTPTR_FMTu__ "lu"
9693// WEBASSEMBLY64-NEXT:#define __UINTPTR_FMTx__ "lx"
9694// WEBASSEMBLY64-NEXT:#define __UINTPTR_MAX__ 18446744073709551615UL
9695// WEBASSEMBLY64-NEXT:#define __UINTPTR_TYPE__ long unsigned int
9696// WEBASSEMBLY64-NEXT:#define __UINTPTR_WIDTH__ 64
9697// WEBASSEMBLY64-NEXT:#define __UINT_FAST16_FMTX__ "hX"
9698// WEBASSEMBLY64-NEXT:#define __UINT_FAST16_FMTo__ "ho"
9699// WEBASSEMBLY64-NEXT:#define __UINT_FAST16_FMTu__ "hu"
9700// WEBASSEMBLY64-NEXT:#define __UINT_FAST16_FMTx__ "hx"
9701// WEBASSEMBLY64-NEXT:#define __UINT_FAST16_MAX__ 65535
9702// WEBASSEMBLY64-NEXT:#define __UINT_FAST16_TYPE__ unsigned short
9703// WEBASSEMBLY64-NEXT:#define __UINT_FAST32_FMTX__ "X"
9704// WEBASSEMBLY64-NEXT:#define __UINT_FAST32_FMTo__ "o"
9705// WEBASSEMBLY64-NEXT:#define __UINT_FAST32_FMTu__ "u"
9706// WEBASSEMBLY64-NEXT:#define __UINT_FAST32_FMTx__ "x"
9707// WEBASSEMBLY64-NEXT:#define __UINT_FAST32_MAX__ 4294967295U
9708// WEBASSEMBLY64-NEXT:#define __UINT_FAST32_TYPE__ unsigned int
9709// WEBASSEMBLY64-NEXT:#define __UINT_FAST64_FMTX__ "llX"
9710// WEBASSEMBLY64-NEXT:#define __UINT_FAST64_FMTo__ "llo"
9711// WEBASSEMBLY64-NEXT:#define __UINT_FAST64_FMTu__ "llu"
9712// WEBASSEMBLY64-NEXT:#define __UINT_FAST64_FMTx__ "llx"
9713// WEBASSEMBLY64-NEXT:#define __UINT_FAST64_MAX__ 18446744073709551615ULL
9714// WEBASSEMBLY64-NEXT:#define __UINT_FAST64_TYPE__ long long unsigned int
9715// WEBASSEMBLY64-NEXT:#define __UINT_FAST8_FMTX__ "hhX"
9716// WEBASSEMBLY64-NEXT:#define __UINT_FAST8_FMTo__ "hho"
9717// WEBASSEMBLY64-NEXT:#define __UINT_FAST8_FMTu__ "hhu"
9718// WEBASSEMBLY64-NEXT:#define __UINT_FAST8_FMTx__ "hhx"
9719// WEBASSEMBLY64-NEXT:#define __UINT_FAST8_MAX__ 255
9720// WEBASSEMBLY64-NEXT:#define __UINT_FAST8_TYPE__ unsigned char
9721// WEBASSEMBLY64-NEXT:#define __UINT_LEAST16_FMTX__ "hX"
9722// WEBASSEMBLY64-NEXT:#define __UINT_LEAST16_FMTo__ "ho"
9723// WEBASSEMBLY64-NEXT:#define __UINT_LEAST16_FMTu__ "hu"
9724// WEBASSEMBLY64-NEXT:#define __UINT_LEAST16_FMTx__ "hx"
9725// WEBASSEMBLY64-NEXT:#define __UINT_LEAST16_MAX__ 65535
9726// WEBASSEMBLY64-NEXT:#define __UINT_LEAST16_TYPE__ unsigned short
9727// WEBASSEMBLY64-NEXT:#define __UINT_LEAST32_FMTX__ "X"
9728// WEBASSEMBLY64-NEXT:#define __UINT_LEAST32_FMTo__ "o"
9729// WEBASSEMBLY64-NEXT:#define __UINT_LEAST32_FMTu__ "u"
9730// WEBASSEMBLY64-NEXT:#define __UINT_LEAST32_FMTx__ "x"
9731// WEBASSEMBLY64-NEXT:#define __UINT_LEAST32_MAX__ 4294967295U
9732// WEBASSEMBLY64-NEXT:#define __UINT_LEAST32_TYPE__ unsigned int
9733// WEBASSEMBLY64-NEXT:#define __UINT_LEAST64_FMTX__ "llX"
9734// WEBASSEMBLY64-NEXT:#define __UINT_LEAST64_FMTo__ "llo"
9735// WEBASSEMBLY64-NEXT:#define __UINT_LEAST64_FMTu__ "llu"
9736// WEBASSEMBLY64-NEXT:#define __UINT_LEAST64_FMTx__ "llx"
9737// WEBASSEMBLY64-NEXT:#define __UINT_LEAST64_MAX__ 18446744073709551615ULL
9738// WEBASSEMBLY64-NEXT:#define __UINT_LEAST64_TYPE__ long long unsigned int
9739// WEBASSEMBLY64-NEXT:#define __UINT_LEAST8_FMTX__ "hhX"
9740// WEBASSEMBLY64-NEXT:#define __UINT_LEAST8_FMTo__ "hho"
9741// WEBASSEMBLY64-NEXT:#define __UINT_LEAST8_FMTu__ "hhu"
9742// WEBASSEMBLY64-NEXT:#define __UINT_LEAST8_FMTx__ "hhx"
9743// WEBASSEMBLY64-NEXT:#define __UINT_LEAST8_MAX__ 255
9744// WEBASSEMBLY64-NEXT:#define __UINT_LEAST8_TYPE__ unsigned char
9745// WEBASSEMBLY64-NEXT:#define __USER_LABEL_PREFIX__
9746// WEBASSEMBLY64-NEXT:#define __VERSION__ "{{.*}}"
9747// WEBASSEMBLY64-NEXT:#define __WCHAR_MAX__ 2147483647
9748// WEBASSEMBLY64-NEXT:#define __WCHAR_TYPE__ int
Dan Gohmanc2853072015-09-03 22:51:53 +00009749// WEBASSEMBLY64-NOT:#define __WCHAR_UNSIGNED__
James Y Knightc97efa42016-02-11 16:51:29 +00009750// WEBASSEMBLY64-NEXT:#define __WCHAR_WIDTH__ 32
Ed Schouten1382a322017-12-05 09:13:18 +00009751// WEBASSEMBLY64-NEXT:#define __WINT_MAX__ 2147483647
James Y Knightc97efa42016-02-11 16:51:29 +00009752// WEBASSEMBLY64-NEXT:#define __WINT_TYPE__ int
Dan Gohmanc2853072015-09-03 22:51:53 +00009753// WEBASSEMBLY64-NOT:#define __WINT_UNSIGNED__
James Y Knightc97efa42016-02-11 16:51:29 +00009754// WEBASSEMBLY64-NEXT:#define __WINT_WIDTH__ 32
9755// WEBASSEMBLY64-NEXT:#define __clang__ 1
Tim Northover25809012016-02-11 21:31:51 +00009756// WEBASSEMBLY64-NEXT:#define __clang_major__ {{.*}}
9757// WEBASSEMBLY64-NEXT:#define __clang_minor__ {{.*}}
9758// WEBASSEMBLY64-NEXT:#define __clang_patchlevel__ {{.*}}
James Y Knightc97efa42016-02-11 16:51:29 +00009759// WEBASSEMBLY64-NEXT:#define __clang_version__ "{{.*}}"
9760// WEBASSEMBLY64-NEXT:#define __llvm__ 1
Dan Gohmanc2853072015-09-03 22:51:53 +00009761// WEBASSEMBLY64-NOT:#define __wasm_simd128__
9762// WEBASSEMBLY64-NOT:#define __wasm_simd256__
9763// WEBASSEMBLY64-NOT:#define __wasm_simd512__
Saleem Abdulrasool56027092017-02-07 19:00:06 +00009764// WEBASSEMBLY64-NOT:#define __unix
Dan Gohmanc2853072015-09-03 22:51:53 +00009765// WEBASSEMBLY64-NOT:#define __unix__
James Y Knightc97efa42016-02-11 16:51:29 +00009766// WEBASSEMBLY64-NEXT:#define __wasm 1
Dan Gohmanc2853072015-09-03 22:51:53 +00009767// WEBASSEMBLY64-NOT:#define __wasm32
9768// WEBASSEMBLY64-NOT:#define __wasm32__
James Y Knightc97efa42016-02-11 16:51:29 +00009769// WEBASSEMBLY64-NEXT:#define __wasm64 1
9770// WEBASSEMBLY64-NEXT:#define __wasm64__ 1
9771// WEBASSEMBLY64-NEXT:#define __wasm__ 1
Saleem Abdulrasool16fcf0a2016-02-26 16:34:01 +00009772
9773// RUN: %clang_cc1 -E -dM -ffreestanding -triple i686-windows-cygnus < /dev/null | FileCheck -match-full-lines -check-prefix CYGWIN-X32 %s
9774// CYGWIN-X32: #define __USER_LABEL_PREFIX__ _
9775
9776// RUN: %clang_cc1 -E -dM -ffreestanding -triple x86_64-windows-cygnus < /dev/null | FileCheck -match-full-lines -check-prefix CYGWIN-X64 %s
9777// CYGWIN-X64: #define __USER_LABEL_PREFIX__
9778
Dylan McKay924fa3a2017-01-05 05:20:27 +00009779// RUN: %clang_cc1 -E -dM -ffreestanding -triple=avr \
9780// RUN: < /dev/null \
9781// RUN: | FileCheck -match-full-lines -check-prefix=AVR %s
9782//
9783// AVR:#define __ATOMIC_ACQUIRE 2
9784// AVR:#define __ATOMIC_ACQ_REL 4
9785// AVR:#define __ATOMIC_CONSUME 1
9786// AVR:#define __ATOMIC_RELAXED 0
9787// AVR:#define __ATOMIC_RELEASE 3
9788// AVR:#define __ATOMIC_SEQ_CST 5
9789// AVR:#define __AVR__ 1
9790// AVR:#define __BIGGEST_ALIGNMENT__ 1
9791// AVR:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
9792// AVR:#define __CHAR16_TYPE__ unsigned int
9793// AVR:#define __CHAR32_TYPE__ long unsigned int
9794// AVR:#define __CHAR_BIT__ 8
9795// AVR:#define __DBL_DECIMAL_DIG__ 9
9796// AVR:#define __DBL_DENORM_MIN__ 1.40129846e-45
9797// AVR:#define __DBL_DIG__ 6
9798// AVR:#define __DBL_EPSILON__ 1.19209290e-7
9799// AVR:#define __DBL_HAS_DENORM__ 1
9800// AVR:#define __DBL_HAS_INFINITY__ 1
9801// AVR:#define __DBL_HAS_QUIET_NAN__ 1
9802// AVR:#define __DBL_MANT_DIG__ 24
9803// AVR:#define __DBL_MAX_10_EXP__ 38
9804// AVR:#define __DBL_MAX_EXP__ 128
9805// AVR:#define __DBL_MAX__ 3.40282347e+38
9806// AVR:#define __DBL_MIN_10_EXP__ (-37)
9807// AVR:#define __DBL_MIN_EXP__ (-125)
9808// AVR:#define __DBL_MIN__ 1.17549435e-38
9809// AVR:#define __FINITE_MATH_ONLY__ 0
9810// AVR:#define __FLT_DECIMAL_DIG__ 9
9811// AVR:#define __FLT_DENORM_MIN__ 1.40129846e-45F
9812// AVR:#define __FLT_DIG__ 6
9813// AVR:#define __FLT_EPSILON__ 1.19209290e-7F
9814// AVR:#define __FLT_EVAL_METHOD__ 0
9815// AVR:#define __FLT_HAS_DENORM__ 1
9816// AVR:#define __FLT_HAS_INFINITY__ 1
9817// AVR:#define __FLT_HAS_QUIET_NAN__ 1
9818// AVR:#define __FLT_MANT_DIG__ 24
9819// AVR:#define __FLT_MAX_10_EXP__ 38
9820// AVR:#define __FLT_MAX_EXP__ 128
9821// AVR:#define __FLT_MAX__ 3.40282347e+38F
9822// AVR:#define __FLT_MIN_10_EXP__ (-37)
9823// AVR:#define __FLT_MIN_EXP__ (-125)
9824// AVR:#define __FLT_MIN__ 1.17549435e-38F
9825// AVR:#define __FLT_RADIX__ 2
9826// AVR:#define __GCC_ATOMIC_BOOL_LOCK_FREE 1
9827// AVR:#define __GCC_ATOMIC_CHAR16_T_LOCK_FREE 1
9828// AVR:#define __GCC_ATOMIC_CHAR32_T_LOCK_FREE 1
9829// AVR:#define __GCC_ATOMIC_CHAR_LOCK_FREE 1
9830// AVR:#define __GCC_ATOMIC_INT_LOCK_FREE 1
9831// AVR:#define __GCC_ATOMIC_LLONG_LOCK_FREE 1
9832// AVR:#define __GCC_ATOMIC_LONG_LOCK_FREE 1
9833// AVR:#define __GCC_ATOMIC_POINTER_LOCK_FREE 1
9834// AVR:#define __GCC_ATOMIC_SHORT_LOCK_FREE 1
9835// AVR:#define __GCC_ATOMIC_TEST_AND_SET_TRUEVAL 1
9836// AVR:#define __GCC_ATOMIC_WCHAR_T_LOCK_FREE 1
9837// AVR:#define __GXX_ABI_VERSION 1002
Ali Tamurbc1cd922018-10-08 22:25:20 +00009838// AVR:#define __INT16_C_SUFFIX__
Dylan McKay924fa3a2017-01-05 05:20:27 +00009839// AVR:#define __INT16_MAX__ 32767
9840// AVR:#define __INT16_TYPE__ short
9841// AVR:#define __INT32_C_SUFFIX__ L
9842// AVR:#define __INT32_MAX__ 2147483647L
9843// AVR:#define __INT32_TYPE__ long int
9844// AVR:#define __INT64_C_SUFFIX__ LL
9845// AVR:#define __INT64_MAX__ 9223372036854775807LL
9846// AVR:#define __INT64_TYPE__ long long int
Ali Tamurbc1cd922018-10-08 22:25:20 +00009847// AVR:#define __INT8_C_SUFFIX__
Dylan McKay924fa3a2017-01-05 05:20:27 +00009848// AVR:#define __INT8_MAX__ 127
9849// AVR:#define __INT8_TYPE__ signed char
9850// AVR:#define __INTMAX_C_SUFFIX__ LL
9851// AVR:#define __INTMAX_MAX__ 9223372036854775807LL
9852// AVR:#define __INTMAX_TYPE__ long long int
9853// AVR:#define __INTPTR_MAX__ 32767
9854// AVR:#define __INTPTR_TYPE__ int
9855// AVR:#define __INT_FAST16_MAX__ 32767
9856// AVR:#define __INT_FAST16_TYPE__ int
9857// AVR:#define __INT_FAST32_MAX__ 2147483647L
9858// AVR:#define __INT_FAST32_TYPE__ long int
9859// AVR:#define __INT_FAST64_MAX__ 9223372036854775807LL
9860// AVR:#define __INT_FAST64_TYPE__ long long int
9861// AVR:#define __INT_FAST8_MAX__ 127
9862// AVR:#define __INT_FAST8_TYPE__ signed char
9863// AVR:#define __INT_LEAST16_MAX__ 32767
9864// AVR:#define __INT_LEAST16_TYPE__ int
9865// AVR:#define __INT_LEAST32_MAX__ 2147483647L
9866// AVR:#define __INT_LEAST32_TYPE__ long int
9867// AVR:#define __INT_LEAST64_MAX__ 9223372036854775807LL
9868// AVR:#define __INT_LEAST64_TYPE__ long long int
9869// AVR:#define __INT_LEAST8_MAX__ 127
9870// AVR:#define __INT_LEAST8_TYPE__ signed char
9871// AVR:#define __INT_MAX__ 32767
9872// AVR:#define __LDBL_DECIMAL_DIG__ 9
9873// AVR:#define __LDBL_DENORM_MIN__ 1.40129846e-45L
9874// AVR:#define __LDBL_DIG__ 6
9875// AVR:#define __LDBL_EPSILON__ 1.19209290e-7L
9876// AVR:#define __LDBL_HAS_DENORM__ 1
9877// AVR:#define __LDBL_HAS_INFINITY__ 1
9878// AVR:#define __LDBL_HAS_QUIET_NAN__ 1
9879// AVR:#define __LDBL_MANT_DIG__ 24
9880// AVR:#define __LDBL_MAX_10_EXP__ 38
9881// AVR:#define __LDBL_MAX_EXP__ 128
9882// AVR:#define __LDBL_MAX__ 3.40282347e+38L
9883// AVR:#define __LDBL_MIN_10_EXP__ (-37)
9884// AVR:#define __LDBL_MIN_EXP__ (-125)
9885// AVR:#define __LDBL_MIN__ 1.17549435e-38L
9886// AVR:#define __LONG_LONG_MAX__ 9223372036854775807LL
9887// AVR:#define __LONG_MAX__ 2147483647L
9888// AVR:#define __NO_INLINE__ 1
9889// AVR:#define __ORDER_BIG_ENDIAN__ 4321
9890// AVR:#define __ORDER_LITTLE_ENDIAN__ 1234
9891// AVR:#define __ORDER_PDP_ENDIAN__ 3412
9892// AVR:#define __PRAGMA_REDEFINE_EXTNAME 1
9893// AVR:#define __PTRDIFF_MAX__ 32767
9894// AVR:#define __PTRDIFF_TYPE__ int
9895// AVR:#define __SCHAR_MAX__ 127
9896// AVR:#define __SHRT_MAX__ 32767
9897// AVR:#define __SIG_ATOMIC_MAX__ 127
9898// AVR:#define __SIG_ATOMIC_WIDTH__ 8
9899// AVR:#define __SIZEOF_DOUBLE__ 4
9900// AVR:#define __SIZEOF_FLOAT__ 4
9901// AVR:#define __SIZEOF_INT__ 2
9902// AVR:#define __SIZEOF_LONG_DOUBLE__ 4
9903// AVR:#define __SIZEOF_LONG_LONG__ 8
9904// AVR:#define __SIZEOF_LONG__ 4
9905// AVR:#define __SIZEOF_POINTER__ 2
9906// AVR:#define __SIZEOF_PTRDIFF_T__ 2
9907// AVR:#define __SIZEOF_SHORT__ 2
9908// AVR:#define __SIZEOF_SIZE_T__ 2
9909// AVR:#define __SIZEOF_WCHAR_T__ 2
9910// AVR:#define __SIZEOF_WINT_T__ 2
9911// AVR:#define __SIZE_MAX__ 65535U
9912// AVR:#define __SIZE_TYPE__ unsigned int
9913// AVR:#define __STDC__ 1
9914// AVR:#define __UINT16_MAX__ 65535U
9915// AVR:#define __UINT16_TYPE__ unsigned short
9916// AVR:#define __UINT32_C_SUFFIX__ UL
9917// AVR:#define __UINT32_MAX__ 4294967295UL
9918// AVR:#define __UINT32_TYPE__ long unsigned int
9919// AVR:#define __UINT64_C_SUFFIX__ ULL
9920// AVR:#define __UINT64_MAX__ 18446744073709551615ULL
9921// AVR:#define __UINT64_TYPE__ long long unsigned int
Ali Tamurbc1cd922018-10-08 22:25:20 +00009922// AVR:#define __UINT8_C_SUFFIX__
Dylan McKay924fa3a2017-01-05 05:20:27 +00009923// AVR:#define __UINT8_MAX__ 255
9924// AVR:#define __UINT8_TYPE__ unsigned char
9925// AVR:#define __UINTMAX_C_SUFFIX__ ULL
9926// AVR:#define __UINTMAX_MAX__ 18446744073709551615ULL
9927// AVR:#define __UINTMAX_TYPE__ long long unsigned int
9928// AVR:#define __UINTPTR_MAX__ 65535U
9929// AVR:#define __UINTPTR_TYPE__ unsigned int
9930// AVR:#define __UINT_FAST16_MAX__ 65535U
9931// AVR:#define __UINT_FAST16_TYPE__ unsigned int
9932// AVR:#define __UINT_FAST32_MAX__ 4294967295UL
9933// AVR:#define __UINT_FAST32_TYPE__ long unsigned int
9934// AVR:#define __UINT_FAST64_MAX__ 18446744073709551615ULL
9935// AVR:#define __UINT_FAST64_TYPE__ long long unsigned int
9936// AVR:#define __UINT_FAST8_MAX__ 255
9937// AVR:#define __UINT_FAST8_TYPE__ unsigned char
9938// AVR:#define __UINT_LEAST16_MAX__ 65535U
9939// AVR:#define __UINT_LEAST16_TYPE__ unsigned int
9940// AVR:#define __UINT_LEAST32_MAX__ 4294967295UL
9941// AVR:#define __UINT_LEAST32_TYPE__ long unsigned int
9942// AVR:#define __UINT_LEAST64_MAX__ 18446744073709551615ULL
9943// AVR:#define __UINT_LEAST64_TYPE__ long long unsigned int
9944// AVR:#define __UINT_LEAST8_MAX__ 255
9945// AVR:#define __UINT_LEAST8_TYPE__ unsigned char
Ali Tamurbc1cd922018-10-08 22:25:20 +00009946// AVR:#define __USER_LABEL_PREFIX__
Dylan McKay924fa3a2017-01-05 05:20:27 +00009947// AVR:#define __WCHAR_MAX__ 32767
9948// AVR:#define __WCHAR_TYPE__ int
9949// AVR:#define __WINT_TYPE__ int
Eric Fiselier4b2c8f72017-04-20 22:53:57 +00009950
9951
9952// RUN: %clang_cc1 -E -dM -ffreestanding \
Reid Kleckner13a3d9e2017-11-21 01:25:56 +00009953// RUN: -triple i686-windows-msvc -fms-compatibility -x c++ < /dev/null \
Eric Fiselier4b2c8f72017-04-20 22:53:57 +00009954// RUN: | FileCheck -match-full-lines -check-prefix MSVC-X32 %s
9955
9956// RUN: %clang_cc1 -E -dM -ffreestanding \
Reid Kleckner13a3d9e2017-11-21 01:25:56 +00009957// RUN: -triple x86_64-windows-msvc -fms-compatibility -x c++ < /dev/null \
Eric Fiselier4b2c8f72017-04-20 22:53:57 +00009958// RUN: | FileCheck -match-full-lines -check-prefix MSVC-X64 %s
9959
9960// MSVC-X32:#define __CLANG_ATOMIC_BOOL_LOCK_FREE 2
9961// MSVC-X32-NEXT:#define __CLANG_ATOMIC_CHAR16_T_LOCK_FREE 2
9962// MSVC-X32-NEXT:#define __CLANG_ATOMIC_CHAR32_T_LOCK_FREE 2
9963// MSVC-X32-NEXT:#define __CLANG_ATOMIC_CHAR_LOCK_FREE 2
9964// MSVC-X32-NEXT:#define __CLANG_ATOMIC_INT_LOCK_FREE 2
9965// MSVC-X32-NEXT:#define __CLANG_ATOMIC_LLONG_LOCK_FREE 2
9966// MSVC-X32-NEXT:#define __CLANG_ATOMIC_LONG_LOCK_FREE 2
9967// MSVC-X32-NEXT:#define __CLANG_ATOMIC_POINTER_LOCK_FREE 2
9968// MSVC-X32-NEXT:#define __CLANG_ATOMIC_SHORT_LOCK_FREE 2
9969// MSVC-X32-NEXT:#define __CLANG_ATOMIC_WCHAR_T_LOCK_FREE 2
9970// MSVC-X32-NOT:#define __GCC_ATOMIC{{.*}}
Reid Kleckner13a3d9e2017-11-21 01:25:56 +00009971// MSVC-X32:#define __STDCPP_DEFAULT_NEW_ALIGNMENT__ 8U
Eric Fiselier4b2c8f72017-04-20 22:53:57 +00009972
9973// MSVC-X64:#define __CLANG_ATOMIC_BOOL_LOCK_FREE 2
9974// MSVC-X64-NEXT:#define __CLANG_ATOMIC_CHAR16_T_LOCK_FREE 2
9975// MSVC-X64-NEXT:#define __CLANG_ATOMIC_CHAR32_T_LOCK_FREE 2
9976// MSVC-X64-NEXT:#define __CLANG_ATOMIC_CHAR_LOCK_FREE 2
9977// MSVC-X64-NEXT:#define __CLANG_ATOMIC_INT_LOCK_FREE 2
9978// MSVC-X64-NEXT:#define __CLANG_ATOMIC_LLONG_LOCK_FREE 2
9979// MSVC-X64-NEXT:#define __CLANG_ATOMIC_LONG_LOCK_FREE 2
9980// MSVC-X64-NEXT:#define __CLANG_ATOMIC_POINTER_LOCK_FREE 2
9981// MSVC-X64-NEXT:#define __CLANG_ATOMIC_SHORT_LOCK_FREE 2
9982// MSVC-X64-NEXT:#define __CLANG_ATOMIC_WCHAR_T_LOCK_FREE 2
Reid Kleckner13a3d9e2017-11-21 01:25:56 +00009983// MSVC-X64-NOT:#define __GCC_ATOMIC{{.*}}
9984// MSVC-X64:#define __STDCPP_DEFAULT_NEW_ALIGNMENT__ 16ULL
Duncan P. N. Exon Smith16b1ac92017-04-27 01:47:22 +00009985
9986// RUN: %clang_cc1 -E -dM -ffreestanding \
9987// RUN: -triple=aarch64-apple-ios9 < /dev/null \
9988// RUN: | FileCheck -check-prefix=DARWIN %s
9989// RUN: %clang_cc1 -E -dM -ffreestanding \
9990// RUN: -triple=aarch64-apple-macosx10.12 < /dev/null \
9991// RUN: | FileCheck -check-prefix=DARWIN %s
9992
9993// DARWIN:#define __STDC_NO_THREADS__ 1
Saleem Abdulrasool1924b242017-10-28 06:00:43 +00009994
9995// RUN: %clang_cc1 -triple i386-apple-macosx -ffreestanding -dM -E /dev/null -o - | FileCheck -match-full-lines -check-prefix MACOS-32 %s
9996// RUN: %clang_cc1 -triple x86_64-apple-macosx -ffreestanding -dM -E /dev/null -o - | FileCheck -match-full-lines -check-prefix MACOS-64 %s
9997
9998// MACOS-32: #define __INTPTR_TYPE__ long int
9999// MACOS-32: #define __PTRDIFF_TYPE__ int
10000// MACOS-32: #define __SIZE_TYPE__ long unsigned int
10001
10002// MACOS-64: #define __INTPTR_TYPE__ long int
10003// MACOS-64: #define __PTRDIFF_TYPE__ long int
10004// MACOS-64: #define __SIZE_TYPE__ long unsigned int
10005
10006// RUN: %clang_cc1 -triple i386-apple-ios-simulator -ffreestanding -dM -E /dev/null -o - | FileCheck -match-full-lines -check-prefix IOS-32 %s
10007// RUN: %clang_cc1 -triple armv7-apple-ios -ffreestanding -dM -E /dev/null -o - | FileCheck -match-full-lines -check-prefix IOS-32 %s
10008// RUN: %clang_cc1 -triple x86_64-apple-ios-simulator -ffreestanding -dM -E /dev/null -o - | FileCheck -match-full-lines -check-prefix IOS-64 %s
10009// RUN: %clang_cc1 -triple arm64-apple-ios -ffreestanding -dM -E /dev/null -o - | FileCheck -match-full-lines -check-prefix IOS-64 %s
10010
10011// IOS-32: #define __INTPTR_TYPE__ long int
10012// IOS-32: #define __PTRDIFF_TYPE__ int
10013// IOS-32: #define __SIZE_TYPE__ long unsigned int
10014
10015// IOS-64: #define __INTPTR_TYPE__ long int
10016// IOS-64: #define __PTRDIFF_TYPE__ long int
10017// IOS-64: #define __SIZE_TYPE__ long unsigned int
10018
10019// RUN: %clang_cc1 -triple i386-apple-tvos-simulator -ffreestanding -dM -E /dev/null -o - | FileCheck -match-full-lines -check-prefix TVOS-32 %s
10020// RUN: %clang_cc1 -triple armv7-apple-tvos -ffreestanding -dM -E /dev/null -o - | FileCheck -match-full-lines -check-prefix TVOS-32 %s
10021// RUN: %clang_cc1 -triple x86_64-apple-tvos-simulator -ffreestanding -dM -E /dev/null -o - | FileCheck -match-full-lines -check-prefix TVOS-64 %s
10022// RUN: %clang_cc1 -triple arm64-apple-tvos -ffreestanding -dM -E /dev/null -o - | FileCheck -match-full-lines -check-prefix TVOS-64 %s
10023
10024// TVOS-32: #define __INTPTR_TYPE__ long int
10025// TVOS-32: #define __PTRDIFF_TYPE__ int
10026// TVOS-32: #define __SIZE_TYPE__ long unsigned int
10027
10028// TVOS-64: #define __INTPTR_TYPE__ long int
10029// TVOS-64: #define __PTRDIFF_TYPE__ long int
10030// TVOS-64: #define __SIZE_TYPE__ long unsigned int
10031
10032// RUN: %clang_cc1 -triple i386-apple-watchos-simulator -ffreestanding -dM -E /dev/null -o - | FileCheck -match-full-lines -check-prefix WATCHOS-32 %s
10033// RUN: %clang_cc1 -triple armv7k-apple-watchos -ffreestanding -dM -E /dev/null -o - | FileCheck -match-full-lines -check-prefix WATCHOS-64 %s
10034// RUN: %clang_cc1 -triple x86_64-apple-watchos-simulator -ffreestanding -dM -E /dev/null -o - | FileCheck -match-full-lines -check-prefix WATCHOS-64 %s
10035// RUN: %clang_cc1 -triple arm64-apple-watchos -ffreestanding -dM -E /dev/null -o - | FileCheck -match-full-lines -check-prefix WATCHOS-64 %s
10036
10037// WATCHOS-32: #define __INTPTR_TYPE__ long int
10038// WATCHOS-32: #define __PTRDIFF_TYPE__ int
10039// WATCHOS-32: #define __SIZE_TYPE__ long unsigned int
10040
10041// WATCHOS-64: #define __INTPTR_TYPE__ long int
10042// WATCHOS-64: #define __PTRDIFF_TYPE__ long int
10043// WATCHOS-64: #define __SIZE_TYPE__ long unsigned int
10044
10045// RUN: %clang_cc1 -triple armv7-apple-none-macho -ffreestanding -dM -E /dev/null -o - | FileCheck -match-full-lines -check-prefix ARM-DARWIN-BAREMETAL-32 %s
10046// RUN: %clang_cc1 -triple arm64-apple-none-macho -ffreestanding -dM -E /dev/null -o - | FileCheck -match-full-lines -check-prefix ARM-DARWIN-BAREMETAL-64 %s
10047
10048// ARM-DARWIN-BAREMETAL-32: #define __INTPTR_TYPE__ long int
10049// ARM-DARWIN-BAREMETAL-32: #define __PTRDIFF_TYPE__ int
10050// ARM-DARWIN-BAREMETAL-32: #define __SIZE_TYPE__ long unsigned int
10051
10052// ARM-DARWIN-BAREMETAL-64: #define __INTPTR_TYPE__ long int
10053// ARM-DARWIN-BAREMETAL-64: #define __PTRDIFF_TYPE__ long int
10054// ARM-DARWIN-BAREMETAL-64: #define __SIZE_TYPE__ long unsigned int
10055
Alex Bradbury71f45452018-01-11 13:36:56 +000010056// RUN: %clang_cc1 -E -dM -ffreestanding -triple=riscv32 < /dev/null \
10057// RUN: | FileCheck -match-full-lines -check-prefix=RISCV32 %s
Alex Bradbury3e1478f2018-02-03 11:56:11 +000010058// RUN: %clang_cc1 -E -dM -ffreestanding -triple=riscv32-unknown-linux < /dev/null \
10059// RUN: | FileCheck -match-full-lines -check-prefixes=RISCV32,RISCV32-LINUX %s
Mandeep Singh Grangac24bb52018-02-25 03:58:23 +000010060// RUN: %clang_cc1 -E -dM -ffreestanding -triple=riscv32 \
10061// RUN: -fforce-enable-int128 < /dev/null | FileCheck -match-full-lines \
10062// RUN: -check-prefixes=RISCV32,RISCV32-INT128 %s
Alex Bradbury71f45452018-01-11 13:36:56 +000010063// RISCV32: #define _ILP32 1
10064// RISCV32: #define __ATOMIC_ACQUIRE 2
10065// RISCV32: #define __ATOMIC_ACQ_REL 4
10066// RISCV32: #define __ATOMIC_CONSUME 1
10067// RISCV32: #define __ATOMIC_RELAXED 0
10068// RISCV32: #define __ATOMIC_RELEASE 3
10069// RISCV32: #define __ATOMIC_SEQ_CST 5
10070// RISCV32: #define __BIGGEST_ALIGNMENT__ 16
10071// RISCV32: #define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
10072// RISCV32: #define __CHAR16_TYPE__ unsigned short
10073// RISCV32: #define __CHAR32_TYPE__ unsigned int
10074// RISCV32: #define __CHAR_BIT__ 8
10075// RISCV32: #define __DBL_DECIMAL_DIG__ 17
10076// RISCV32: #define __DBL_DENORM_MIN__ 4.9406564584124654e-324
10077// RISCV32: #define __DBL_DIG__ 15
10078// RISCV32: #define __DBL_EPSILON__ 2.2204460492503131e-16
10079// RISCV32: #define __DBL_HAS_DENORM__ 1
10080// RISCV32: #define __DBL_HAS_INFINITY__ 1
10081// RISCV32: #define __DBL_HAS_QUIET_NAN__ 1
10082// RISCV32: #define __DBL_MANT_DIG__ 53
10083// RISCV32: #define __DBL_MAX_10_EXP__ 308
10084// RISCV32: #define __DBL_MAX_EXP__ 1024
10085// RISCV32: #define __DBL_MAX__ 1.7976931348623157e+308
10086// RISCV32: #define __DBL_MIN_10_EXP__ (-307)
10087// RISCV32: #define __DBL_MIN_EXP__ (-1021)
10088// RISCV32: #define __DBL_MIN__ 2.2250738585072014e-308
10089// RISCV32: #define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
10090// RISCV32: #define __ELF__ 1
10091// RISCV32: #define __FINITE_MATH_ONLY__ 0
10092// RISCV32: #define __FLT_DECIMAL_DIG__ 9
10093// RISCV32: #define __FLT_DENORM_MIN__ 1.40129846e-45F
10094// RISCV32: #define __FLT_DIG__ 6
10095// RISCV32: #define __FLT_EPSILON__ 1.19209290e-7F
10096// RISCV32: #define __FLT_EVAL_METHOD__ 0
10097// RISCV32: #define __FLT_HAS_DENORM__ 1
10098// RISCV32: #define __FLT_HAS_INFINITY__ 1
10099// RISCV32: #define __FLT_HAS_QUIET_NAN__ 1
10100// RISCV32: #define __FLT_MANT_DIG__ 24
10101// RISCV32: #define __FLT_MAX_10_EXP__ 38
10102// RISCV32: #define __FLT_MAX_EXP__ 128
10103// RISCV32: #define __FLT_MAX__ 3.40282347e+38F
10104// RISCV32: #define __FLT_MIN_10_EXP__ (-37)
10105// RISCV32: #define __FLT_MIN_EXP__ (-125)
10106// RISCV32: #define __FLT_MIN__ 1.17549435e-38F
10107// RISCV32: #define __FLT_RADIX__ 2
10108// RISCV32: #define __GCC_ATOMIC_BOOL_LOCK_FREE 1
10109// RISCV32: #define __GCC_ATOMIC_CHAR16_T_LOCK_FREE 1
10110// RISCV32: #define __GCC_ATOMIC_CHAR32_T_LOCK_FREE 1
10111// RISCV32: #define __GCC_ATOMIC_CHAR_LOCK_FREE 1
10112// RISCV32: #define __GCC_ATOMIC_INT_LOCK_FREE 1
10113// RISCV32: #define __GCC_ATOMIC_LLONG_LOCK_FREE 1
10114// RISCV32: #define __GCC_ATOMIC_LONG_LOCK_FREE 1
10115// RISCV32: #define __GCC_ATOMIC_POINTER_LOCK_FREE 1
10116// RISCV32: #define __GCC_ATOMIC_SHORT_LOCK_FREE 1
10117// RISCV32: #define __GCC_ATOMIC_TEST_AND_SET_TRUEVAL 1
10118// RISCV32: #define __GCC_ATOMIC_WCHAR_T_LOCK_FREE 1
10119// RISCV32: #define __GNUC_MINOR__ {{.*}}
10120// RISCV32: #define __GNUC_PATCHLEVEL__ {{.*}}
10121// RISCV32: #define __GNUC_STDC_INLINE__ 1
10122// RISCV32: #define __GNUC__ {{.*}}
10123// RISCV32: #define __GXX_ABI_VERSION {{.*}}
10124// RISCV32: #define __ILP32__ 1
10125// RISCV32: #define __INT16_C_SUFFIX__
10126// RISCV32: #define __INT16_MAX__ 32767
10127// RISCV32: #define __INT16_TYPE__ short
10128// RISCV32: #define __INT32_C_SUFFIX__
10129// RISCV32: #define __INT32_MAX__ 2147483647
10130// RISCV32: #define __INT32_TYPE__ int
10131// RISCV32: #define __INT64_C_SUFFIX__ LL
10132// RISCV32: #define __INT64_MAX__ 9223372036854775807LL
10133// RISCV32: #define __INT64_TYPE__ long long int
10134// RISCV32: #define __INT8_C_SUFFIX__
10135// RISCV32: #define __INT8_MAX__ 127
10136// RISCV32: #define __INT8_TYPE__ signed char
10137// RISCV32: #define __INTMAX_C_SUFFIX__ LL
10138// RISCV32: #define __INTMAX_MAX__ 9223372036854775807LL
10139// RISCV32: #define __INTMAX_TYPE__ long long int
10140// RISCV32: #define __INTMAX_WIDTH__ 64
10141// RISCV32: #define __INTPTR_MAX__ 2147483647
10142// RISCV32: #define __INTPTR_TYPE__ int
10143// RISCV32: #define __INTPTR_WIDTH__ 32
10144// TODO: RISC-V GCC defines INT_FAST16 as int
10145// RISCV32: #define __INT_FAST16_MAX__ 32767
10146// RISCV32: #define __INT_FAST16_TYPE__ short
10147// RISCV32: #define __INT_FAST32_MAX__ 2147483647
10148// RISCV32: #define __INT_FAST32_TYPE__ int
10149// RISCV32: #define __INT_FAST64_MAX__ 9223372036854775807LL
10150// RISCV32: #define __INT_FAST64_TYPE__ long long int
10151// TODO: RISC-V GCC defines INT_FAST8 as int
10152// RISCV32: #define __INT_FAST8_MAX__ 127
10153// RISCV32: #define __INT_FAST8_TYPE__ signed char
10154// RISCV32: #define __INT_LEAST16_MAX__ 32767
10155// RISCV32: #define __INT_LEAST16_TYPE__ short
10156// RISCV32: #define __INT_LEAST32_MAX__ 2147483647
10157// RISCV32: #define __INT_LEAST32_TYPE__ int
10158// RISCV32: #define __INT_LEAST64_MAX__ 9223372036854775807LL
10159// RISCV32: #define __INT_LEAST64_TYPE__ long long int
10160// RISCV32: #define __INT_LEAST8_MAX__ 127
10161// RISCV32: #define __INT_LEAST8_TYPE__ signed char
10162// RISCV32: #define __INT_MAX__ 2147483647
10163// RISCV32: #define __LDBL_DECIMAL_DIG__ 36
10164// RISCV32: #define __LDBL_DENORM_MIN__ 6.47517511943802511092443895822764655e-4966L
10165// RISCV32: #define __LDBL_DIG__ 33
10166// RISCV32: #define __LDBL_EPSILON__ 1.92592994438723585305597794258492732e-34L
10167// RISCV32: #define __LDBL_HAS_DENORM__ 1
10168// RISCV32: #define __LDBL_HAS_INFINITY__ 1
10169// RISCV32: #define __LDBL_HAS_QUIET_NAN__ 1
10170// RISCV32: #define __LDBL_MANT_DIG__ 113
10171// RISCV32: #define __LDBL_MAX_10_EXP__ 4932
10172// RISCV32: #define __LDBL_MAX_EXP__ 16384
10173// RISCV32: #define __LDBL_MAX__ 1.18973149535723176508575932662800702e+4932L
10174// RISCV32: #define __LDBL_MIN_10_EXP__ (-4931)
10175// RISCV32: #define __LDBL_MIN_EXP__ (-16381)
10176// RISCV32: #define __LDBL_MIN__ 3.36210314311209350626267781732175260e-4932L
10177// RISCV32: #define __LITTLE_ENDIAN__ 1
10178// RISCV32: #define __LONG_LONG_MAX__ 9223372036854775807LL
10179// RISCV32: #define __LONG_MAX__ 2147483647L
10180// RISCV32: #define __NO_INLINE__ 1
10181// RISCV32: #define __POINTER_WIDTH__ 32
10182// RISCV32: #define __PRAGMA_REDEFINE_EXTNAME 1
10183// RISCV32: #define __PTRDIFF_MAX__ 2147483647
10184// RISCV32: #define __PTRDIFF_TYPE__ int
10185// RISCV32: #define __PTRDIFF_WIDTH__ 32
10186// RISCV32: #define __SCHAR_MAX__ 127
10187// RISCV32: #define __SHRT_MAX__ 32767
10188// RISCV32: #define __SIG_ATOMIC_MAX__ 2147483647
10189// RISCV32: #define __SIG_ATOMIC_WIDTH__ 32
10190// RISCV32: #define __SIZEOF_DOUBLE__ 8
10191// RISCV32: #define __SIZEOF_FLOAT__ 4
Mandeep Singh Grangac24bb52018-02-25 03:58:23 +000010192// RISCV32-INT128: #define __SIZEOF_INT128__ 16
Alex Bradbury71f45452018-01-11 13:36:56 +000010193// RISCV32: #define __SIZEOF_INT__ 4
10194// RISCV32: #define __SIZEOF_LONG_DOUBLE__ 16
10195// RISCV32: #define __SIZEOF_LONG_LONG__ 8
10196// RISCV32: #define __SIZEOF_LONG__ 4
10197// RISCV32: #define __SIZEOF_POINTER__ 4
10198// RISCV32: #define __SIZEOF_PTRDIFF_T__ 4
10199// RISCV32: #define __SIZEOF_SHORT__ 2
10200// RISCV32: #define __SIZEOF_SIZE_T__ 4
10201// RISCV32: #define __SIZEOF_WCHAR_T__ 4
10202// RISCV32: #define __SIZEOF_WINT_T__ 4
10203// RISCV32: #define __SIZE_MAX__ 4294967295U
10204// RISCV32: #define __SIZE_TYPE__ unsigned int
10205// RISCV32: #define __SIZE_WIDTH__ 32
10206// RISCV32: #define __STDC_HOSTED__ 0
10207// RISCV32: #define __STDC_UTF_16__ 1
10208// RISCV32: #define __STDC_UTF_32__ 1
10209// RISCV32: #define __STDC_VERSION__ 201112L
10210// RISCV32: #define __STDC__ 1
10211// RISCV32: #define __UINT16_C_SUFFIX__
10212// RISCV32: #define __UINT16_MAX__ 65535
10213// RISCV32: #define __UINT16_TYPE__ unsigned short
10214// RISCV32: #define __UINT32_C_SUFFIX__ U
10215// RISCV32: #define __UINT32_MAX__ 4294967295U
10216// RISCV32: #define __UINT32_TYPE__ unsigned int
10217// RISCV32: #define __UINT64_C_SUFFIX__ ULL
10218// RISCV32: #define __UINT64_MAX__ 18446744073709551615ULL
10219// RISCV32: #define __UINT64_TYPE__ long long unsigned int
10220// RISCV32: #define __UINT8_C_SUFFIX__
10221// RISCV32: #define __UINT8_MAX__ 255
10222// RISCV32: #define __UINT8_TYPE__ unsigned char
10223// RISCV32: #define __UINTMAX_C_SUFFIX__ ULL
10224// RISCV32: #define __UINTMAX_MAX__ 18446744073709551615ULL
10225// RISCV32: #define __UINTMAX_TYPE__ long long unsigned int
10226// RISCV32: #define __UINTMAX_WIDTH__ 64
10227// RISCV32: #define __UINTPTR_MAX__ 4294967295U
10228// RISCV32: #define __UINTPTR_TYPE__ unsigned int
10229// RISCV32: #define __UINTPTR_WIDTH__ 32
10230// TODO: RISC-V GCC defines UINT_FAST16 to be unsigned int
10231// RISCV32: #define __UINT_FAST16_MAX__ 65535
10232// RISCV32: #define __UINT_FAST16_TYPE__ unsigned short
10233// RISCV32: #define __UINT_FAST32_MAX__ 4294967295U
10234// RISCV32: #define __UINT_FAST32_TYPE__ unsigned int
10235// RISCV32: #define __UINT_FAST64_MAX__ 18446744073709551615ULL
10236// RISCV32: #define __UINT_FAST64_TYPE__ long long unsigned int
10237// TODO: RISC-V GCC defines UINT_FAST8 to be unsigned int
10238// RISCV32: #define __UINT_FAST8_MAX__ 255
10239// RISCV32: #define __UINT_FAST8_TYPE__ unsigned char
10240// RISCV32: #define __UINT_LEAST16_MAX__ 65535
10241// RISCV32: #define __UINT_LEAST16_TYPE__ unsigned short
10242// RISCV32: #define __UINT_LEAST32_MAX__ 4294967295U
10243// RISCV32: #define __UINT_LEAST32_TYPE__ unsigned int
10244// RISCV32: #define __UINT_LEAST64_MAX__ 18446744073709551615ULL
10245// RISCV32: #define __UINT_LEAST64_TYPE__ long long unsigned int
10246// RISCV32: #define __UINT_LEAST8_MAX__ 255
10247// RISCV32: #define __UINT_LEAST8_TYPE__ unsigned char
10248// RISCV32: #define __USER_LABEL_PREFIX__
10249// RISCV32: #define __WCHAR_MAX__ 2147483647
10250// RISCV32: #define __WCHAR_TYPE__ int
10251// RISCV32: #define __WCHAR_WIDTH__ 32
10252// RISCV32: #define __WINT_TYPE__ unsigned int
10253// RISCV32: #define __WINT_UNSIGNED__ 1
10254// RISCV32: #define __WINT_WIDTH__ 32
Alex Bradbury3e1478f2018-02-03 11:56:11 +000010255// RISCV32-LINUX: #define __gnu_linux__ 1
10256// RISCV32-LINUX: #define __linux 1
10257// RISCV32-LINUX: #define __linux__ 1
Alex Bradbury71f45452018-01-11 13:36:56 +000010258// RISCV32: #define __riscv 1
10259// RISCV32: #define __riscv_cmodel_medlow 1
10260// RISCV32: #define __riscv_float_abi_soft 1
10261// RISCV32: #define __riscv_xlen 32
Alex Bradbury3e1478f2018-02-03 11:56:11 +000010262// RISCV32-LINUX: #define __unix 1
10263// RISCV32-LINUX: #define __unix__ 1
10264// RISCV32-LINUX: #define linux 1
10265// RISCV32-LINUX: #define unix 1
Alex Bradbury71f45452018-01-11 13:36:56 +000010266
10267// RUN: %clang_cc1 -E -dM -ffreestanding -triple=riscv64 < /dev/null \
10268// RUN: | FileCheck -match-full-lines -check-prefix=RISCV64 %s
Alex Bradbury3e1478f2018-02-03 11:56:11 +000010269// RUN: %clang_cc1 -E -dM -ffreestanding -triple=riscv64-unknown-linux < /dev/null \
10270// RUN: | FileCheck -match-full-lines -check-prefixes=RISCV64,RISCV64-LINUX %s
Alex Bradbury71f45452018-01-11 13:36:56 +000010271// RISCV64: #define _LP64 1
10272// RISCV64: #define __ATOMIC_ACQUIRE 2
10273// RISCV64: #define __ATOMIC_ACQ_REL 4
10274// RISCV64: #define __ATOMIC_CONSUME 1
10275// RISCV64: #define __ATOMIC_RELAXED 0
10276// RISCV64: #define __ATOMIC_RELEASE 3
10277// RISCV64: #define __ATOMIC_SEQ_CST 5
10278// RISCV64: #define __BIGGEST_ALIGNMENT__ 16
10279// RISCV64: #define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
10280// RISCV64: #define __CHAR16_TYPE__ unsigned short
10281// RISCV64: #define __CHAR32_TYPE__ unsigned int
10282// RISCV64: #define __CHAR_BIT__ 8
10283// RISCV64: #define __DBL_DECIMAL_DIG__ 17
10284// RISCV64: #define __DBL_DENORM_MIN__ 4.9406564584124654e-324
10285// RISCV64: #define __DBL_DIG__ 15
10286// RISCV64: #define __DBL_EPSILON__ 2.2204460492503131e-16
10287// RISCV64: #define __DBL_HAS_DENORM__ 1
10288// RISCV64: #define __DBL_HAS_INFINITY__ 1
10289// RISCV64: #define __DBL_HAS_QUIET_NAN__ 1
10290// RISCV64: #define __DBL_MANT_DIG__ 53
10291// RISCV64: #define __DBL_MAX_10_EXP__ 308
10292// RISCV64: #define __DBL_MAX_EXP__ 1024
10293// RISCV64: #define __DBL_MAX__ 1.7976931348623157e+308
10294// RISCV64: #define __DBL_MIN_10_EXP__ (-307)
10295// RISCV64: #define __DBL_MIN_EXP__ (-1021)
10296// RISCV64: #define __DBL_MIN__ 2.2250738585072014e-308
10297// RISCV64: #define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
10298// RISCV64: #define __ELF__ 1
10299// RISCV64: #define __FINITE_MATH_ONLY__ 0
10300// RISCV64: #define __FLT_DECIMAL_DIG__ 9
10301// RISCV64: #define __FLT_DENORM_MIN__ 1.40129846e-45F
10302// RISCV64: #define __FLT_DIG__ 6
10303// RISCV64: #define __FLT_EPSILON__ 1.19209290e-7F
10304// RISCV64: #define __FLT_EVAL_METHOD__ 0
10305// RISCV64: #define __FLT_HAS_DENORM__ 1
10306// RISCV64: #define __FLT_HAS_INFINITY__ 1
10307// RISCV64: #define __FLT_HAS_QUIET_NAN__ 1
10308// RISCV64: #define __FLT_MANT_DIG__ 24
10309// RISCV64: #define __FLT_MAX_10_EXP__ 38
10310// RISCV64: #define __FLT_MAX_EXP__ 128
10311// RISCV64: #define __FLT_MAX__ 3.40282347e+38F
10312// RISCV64: #define __FLT_MIN_10_EXP__ (-37)
10313// RISCV64: #define __FLT_MIN_EXP__ (-125)
10314// RISCV64: #define __FLT_MIN__ 1.17549435e-38F
10315// RISCV64: #define __FLT_RADIX__ 2
10316// RISCV64: #define __GCC_ATOMIC_BOOL_LOCK_FREE 1
10317// RISCV64: #define __GCC_ATOMIC_CHAR16_T_LOCK_FREE 1
10318// RISCV64: #define __GCC_ATOMIC_CHAR32_T_LOCK_FREE 1
10319// RISCV64: #define __GCC_ATOMIC_CHAR_LOCK_FREE 1
10320// RISCV64: #define __GCC_ATOMIC_INT_LOCK_FREE 1
10321// RISCV64: #define __GCC_ATOMIC_LLONG_LOCK_FREE 1
10322// RISCV64: #define __GCC_ATOMIC_LONG_LOCK_FREE 1
10323// RISCV64: #define __GCC_ATOMIC_POINTER_LOCK_FREE 1
10324// RISCV64: #define __GCC_ATOMIC_SHORT_LOCK_FREE 1
10325// RISCV64: #define __GCC_ATOMIC_TEST_AND_SET_TRUEVAL 1
10326// RISCV64: #define __GCC_ATOMIC_WCHAR_T_LOCK_FREE 1
10327// RISCV64: #define __GNUC_MINOR__ {{.*}}
10328// RISCV64: #define __GNUC_PATCHLEVEL__ {{.*}}
10329// RISCV64: #define __GNUC_STDC_INLINE__ 1
10330// RISCV64: #define __GNUC__ {{.*}}
10331// RISCV64: #define __GXX_ABI_VERSION {{.*}}
10332// RISCV64: #define __INT16_C_SUFFIX__
10333// RISCV64: #define __INT16_MAX__ 32767
10334// RISCV64: #define __INT16_TYPE__ short
10335// RISCV64: #define __INT32_C_SUFFIX__
10336// RISCV64: #define __INT32_MAX__ 2147483647
10337// RISCV64: #define __INT32_TYPE__ int
10338// RISCV64: #define __INT64_C_SUFFIX__ L
10339// RISCV64: #define __INT64_MAX__ 9223372036854775807L
10340// RISCV64: #define __INT64_TYPE__ long int
10341// RISCV64: #define __INT8_C_SUFFIX__
10342// RISCV64: #define __INT8_MAX__ 127
10343// RISCV64: #define __INT8_TYPE__ signed char
10344// RISCV64: #define __INTMAX_C_SUFFIX__ L
10345// RISCV64: #define __INTMAX_MAX__ 9223372036854775807L
10346// RISCV64: #define __INTMAX_TYPE__ long int
10347// RISCV64: #define __INTMAX_WIDTH__ 64
10348// RISCV64: #define __INTPTR_MAX__ 9223372036854775807L
10349// RISCV64: #define __INTPTR_TYPE__ long int
10350// RISCV64: #define __INTPTR_WIDTH__ 64
10351// TODO: RISC-V GCC defines INT_FAST16 as int
10352// RISCV64: #define __INT_FAST16_MAX__ 32767
10353// RISCV64: #define __INT_FAST16_TYPE__ short
10354// RISCV64: #define __INT_FAST32_MAX__ 2147483647
10355// RISCV64: #define __INT_FAST32_TYPE__ int
10356// RISCV64: #define __INT_FAST64_MAX__ 9223372036854775807L
10357// RISCV64: #define __INT_FAST64_TYPE__ long int
10358// TODO: RISC-V GCC defines INT_FAST8 as int
10359// RISCV64: #define __INT_FAST8_MAX__ 127
10360// RISCV64: #define __INT_FAST8_TYPE__ signed char
10361// RISCV64: #define __INT_LEAST16_MAX__ 32767
10362// RISCV64: #define __INT_LEAST16_TYPE__ short
10363// RISCV64: #define __INT_LEAST32_MAX__ 2147483647
10364// RISCV64: #define __INT_LEAST32_TYPE__ int
10365// RISCV64: #define __INT_LEAST64_MAX__ 9223372036854775807L
10366// RISCV64: #define __INT_LEAST64_TYPE__ long int
10367// RISCV64: #define __INT_LEAST8_MAX__ 127
10368// RISCV64: #define __INT_LEAST8_TYPE__ signed char
10369// RISCV64: #define __INT_MAX__ 2147483647
10370// RISCV64: #define __LDBL_DECIMAL_DIG__ 36
10371// RISCV64: #define __LDBL_DENORM_MIN__ 6.47517511943802511092443895822764655e-4966L
10372// RISCV64: #define __LDBL_DIG__ 33
10373// RISCV64: #define __LDBL_EPSILON__ 1.92592994438723585305597794258492732e-34L
10374// RISCV64: #define __LDBL_HAS_DENORM__ 1
10375// RISCV64: #define __LDBL_HAS_INFINITY__ 1
10376// RISCV64: #define __LDBL_HAS_QUIET_NAN__ 1
10377// RISCV64: #define __LDBL_MANT_DIG__ 113
10378// RISCV64: #define __LDBL_MAX_10_EXP__ 4932
10379// RISCV64: #define __LDBL_MAX_EXP__ 16384
10380// RISCV64: #define __LDBL_MAX__ 1.18973149535723176508575932662800702e+4932L
10381// RISCV64: #define __LDBL_MIN_10_EXP__ (-4931)
10382// RISCV64: #define __LDBL_MIN_EXP__ (-16381)
10383// RISCV64: #define __LDBL_MIN__ 3.36210314311209350626267781732175260e-4932L
10384// RISCV64: #define __LITTLE_ENDIAN__ 1
10385// RISCV64: #define __LONG_LONG_MAX__ 9223372036854775807LL
10386// RISCV64: #define __LONG_MAX__ 9223372036854775807L
10387// RISCV64: #define __LP64__ 1
10388// RISCV64: #define __NO_INLINE__ 1
10389// RISCV64: #define __POINTER_WIDTH__ 64
10390// RISCV64: #define __PRAGMA_REDEFINE_EXTNAME 1
10391// RISCV64: #define __PTRDIFF_MAX__ 9223372036854775807L
10392// RISCV64: #define __PTRDIFF_TYPE__ long int
10393// RISCV64: #define __PTRDIFF_WIDTH__ 64
10394// RISCV64: #define __SCHAR_MAX__ 127
10395// RISCV64: #define __SHRT_MAX__ 32767
10396// RISCV64: #define __SIG_ATOMIC_MAX__ 2147483647
10397// RISCV64: #define __SIG_ATOMIC_WIDTH__ 32
10398// RISCV64: #define __SIZEOF_DOUBLE__ 8
10399// RISCV64: #define __SIZEOF_FLOAT__ 4
10400// RISCV64: #define __SIZEOF_INT__ 4
10401// RISCV64: #define __SIZEOF_LONG_DOUBLE__ 16
10402// RISCV64: #define __SIZEOF_LONG_LONG__ 8
10403// RISCV64: #define __SIZEOF_LONG__ 8
10404// RISCV64: #define __SIZEOF_POINTER__ 8
10405// RISCV64: #define __SIZEOF_PTRDIFF_T__ 8
10406// RISCV64: #define __SIZEOF_SHORT__ 2
10407// RISCV64: #define __SIZEOF_SIZE_T__ 8
10408// RISCV64: #define __SIZEOF_WCHAR_T__ 4
10409// RISCV64: #define __SIZEOF_WINT_T__ 4
10410// RISCV64: #define __SIZE_MAX__ 18446744073709551615UL
10411// RISCV64: #define __SIZE_TYPE__ long unsigned int
10412// RISCV64: #define __SIZE_WIDTH__ 64
10413// RISCV64: #define __STDC_HOSTED__ 0
10414// RISCV64: #define __STDC_UTF_16__ 1
10415// RISCV64: #define __STDC_UTF_32__ 1
10416// RISCV64: #define __STDC_VERSION__ 201112L
10417// RISCV64: #define __STDC__ 1
10418// RISCV64: #define __UINT16_C_SUFFIX__
10419// RISCV64: #define __UINT16_MAX__ 65535
10420// RISCV64: #define __UINT16_TYPE__ unsigned short
10421// RISCV64: #define __UINT32_C_SUFFIX__ U
10422// RISCV64: #define __UINT32_MAX__ 4294967295U
10423// RISCV64: #define __UINT32_TYPE__ unsigned int
10424// RISCV64: #define __UINT64_C_SUFFIX__ UL
10425// RISCV64: #define __UINT64_MAX__ 18446744073709551615UL
10426// RISCV64: #define __UINT64_TYPE__ long unsigned int
10427// RISCV64: #define __UINT8_C_SUFFIX__
10428// RISCV64: #define __UINT8_MAX__ 255
10429// RISCV64: #define __UINT8_TYPE__ unsigned char
10430// RISCV64: #define __UINTMAX_C_SUFFIX__ UL
10431// RISCV64: #define __UINTMAX_MAX__ 18446744073709551615UL
10432// RISCV64: #define __UINTMAX_TYPE__ long unsigned int
10433// RISCV64: #define __UINTMAX_WIDTH__ 64
10434// RISCV64: #define __UINTPTR_MAX__ 18446744073709551615UL
10435// RISCV64: #define __UINTPTR_TYPE__ long unsigned int
10436// RISCV64: #define __UINTPTR_WIDTH__ 64
10437// TODO: RISC-V GCC defines UINT_FAST16 to be unsigned int
10438// RISCV64: #define __UINT_FAST16_MAX__ 65535
10439// RISCV64: #define __UINT_FAST16_TYPE__ unsigned short
10440// RISCV64: #define __UINT_FAST32_MAX__ 4294967295U
10441// RISCV64: #define __UINT_FAST32_TYPE__ unsigned int
10442// RISCV64: #define __UINT_FAST64_MAX__ 18446744073709551615UL
10443// RISCV64: #define __UINT_FAST64_TYPE__ long unsigned int
10444// TODO: RISC-V GCC defines UINT_FAST8 to be unsigned int
10445// RISCV64: #define __UINT_FAST8_MAX__ 255
10446// RISCV64: #define __UINT_FAST8_TYPE__ unsigned char
10447// RISCV64: #define __UINT_LEAST16_MAX__ 65535
10448// RISCV64: #define __UINT_LEAST16_TYPE__ unsigned short
10449// RISCV64: #define __UINT_LEAST32_MAX__ 4294967295U
10450// RISCV64: #define __UINT_LEAST32_TYPE__ unsigned int
10451// RISCV64: #define __UINT_LEAST64_MAX__ 18446744073709551615UL
10452// RISCV64: #define __UINT_LEAST64_TYPE__ long unsigned int
10453// RISCV64: #define __UINT_LEAST8_MAX__ 255
10454// RISCV64: #define __UINT_LEAST8_TYPE__ unsigned char
10455// RISCV64: #define __USER_LABEL_PREFIX__
10456// RISCV64: #define __WCHAR_MAX__ 2147483647
10457// RISCV64: #define __WCHAR_TYPE__ int
10458// RISCV64: #define __WCHAR_WIDTH__ 32
10459// RISCV64: #define __WINT_TYPE__ unsigned int
10460// RISCV64: #define __WINT_UNSIGNED__ 1
10461// RISCV64: #define __WINT_WIDTH__ 32
Alex Bradbury3e1478f2018-02-03 11:56:11 +000010462// RISCV64-LINUX: #define __gnu_linux__ 1
10463// RISCV64-LINUX: #define __linux 1
10464// RISCV64-LINUX: #define __linux__ 1
Alex Bradbury71f45452018-01-11 13:36:56 +000010465// RISCV64: #define __riscv 1
10466// RISCV64: #define __riscv_cmodel_medlow 1
10467// RISCV64: #define __riscv_float_abi_soft 1
10468// RISCV64: #define __riscv_xlen 64
Alex Bradbury3e1478f2018-02-03 11:56:11 +000010469// RISCV64-LINUX: #define __unix 1
10470// RISCV64-LINUX: #define __unix__ 1
10471// RISCV64-LINUX: #define linux 1
10472// RISCV64-LINUX: #define unix 1