xref: /llvm-project/clang/test/Preprocessor/init-mips.c (revision 33ad474c45e6d7a0de7bc75e15e27cf6cb9ff895)
1 //
2 // RUN: %clang_cc1 -E -dM -ffreestanding -fgnuc-version=4.2.1 -triple=mips-none-none < /dev/null | FileCheck -match-full-lines -check-prefix MIPS32BE -check-prefix MIPS32BE-C %s
3 // RUN: %clang_cc1 -x c++ -E -dM -ffreestanding -fgnuc-version=4.2.1 -triple=mips-none-none < /dev/null | FileCheck -match-full-lines -check-prefix MIPS32BE -check-prefix MIPS32BE-CXX %s
4 //
5 // MIPS32BE:#define MIPSEB 1
6 // MIPS32BE:#define _ABIO32 1
7 // MIPS32BE-NOT:#define _LP64
8 // MIPS32BE:#define _MIPSEB 1
9 // MIPS32BE:#define _MIPS_ARCH "mips32r2"
10 // MIPS32BE:#define _MIPS_ARCH_MIPS32R2 1
11 // MIPS32BE:#define _MIPS_FPSET 16
12 // MIPS32BE:#define _MIPS_SIM _ABIO32
13 // MIPS32BE:#define _MIPS_SPFPSET 16
14 // MIPS32BE:#define _MIPS_SZINT 32
15 // MIPS32BE:#define _MIPS_SZLONG 32
16 // MIPS32BE:#define _MIPS_SZPTR 32
17 // MIPS32BE:#define __BIGGEST_ALIGNMENT__ 8
18 // MIPS32BE:#define __BIG_ENDIAN__ 1
19 // MIPS32BE:#define __BYTE_ORDER__ __ORDER_BIG_ENDIAN__
20 // MIPS32BE:#define __CHAR16_TYPE__ unsigned short
21 // MIPS32BE:#define __CHAR32_TYPE__ unsigned int
22 // MIPS32BE:#define __CHAR_BIT__ 8
23 // MIPS32BE:#define __CONSTANT_CFSTRINGS__ 1
24 // MIPS32BE:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
25 // MIPS32BE:#define __DBL_DIG__ 15
26 // MIPS32BE:#define __DBL_EPSILON__ 2.2204460492503131e-16
27 // MIPS32BE:#define __DBL_HAS_DENORM__ 1
28 // MIPS32BE:#define __DBL_HAS_INFINITY__ 1
29 // MIPS32BE:#define __DBL_HAS_QUIET_NAN__ 1
30 // MIPS32BE:#define __DBL_MANT_DIG__ 53
31 // MIPS32BE:#define __DBL_MAX_10_EXP__ 308
32 // MIPS32BE:#define __DBL_MAX_EXP__ 1024
33 // MIPS32BE:#define __DBL_MAX__ 1.7976931348623157e+308
34 // MIPS32BE:#define __DBL_MIN_10_EXP__ (-307)
35 // MIPS32BE:#define __DBL_MIN_EXP__ (-1021)
36 // MIPS32BE:#define __DBL_MIN__ 2.2250738585072014e-308
37 // MIPS32BE:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
38 // MIPS32BE:#define __FLT_DENORM_MIN__ 1.40129846e-45F
39 // MIPS32BE:#define __FLT_DIG__ 6
40 // MIPS32BE:#define __FLT_EPSILON__ 1.19209290e-7F
41 // MIPS32BE:#define __FLT_HAS_DENORM__ 1
42 // MIPS32BE:#define __FLT_HAS_INFINITY__ 1
43 // MIPS32BE:#define __FLT_HAS_QUIET_NAN__ 1
44 // MIPS32BE:#define __FLT_MANT_DIG__ 24
45 // MIPS32BE:#define __FLT_MAX_10_EXP__ 38
46 // MIPS32BE:#define __FLT_MAX_EXP__ 128
47 // MIPS32BE:#define __FLT_MAX__ 3.40282347e+38F
48 // MIPS32BE:#define __FLT_MIN_10_EXP__ (-37)
49 // MIPS32BE:#define __FLT_MIN_EXP__ (-125)
50 // MIPS32BE:#define __FLT_MIN__ 1.17549435e-38F
51 // MIPS32BE:#define __FLT_RADIX__ 2
52 // MIPS32BE:#define __INT16_C(c) c
53 // MIPS32BE:#define __INT16_C_SUFFIX__
54 // MIPS32BE:#define __INT16_FMTd__ "hd"
55 // MIPS32BE:#define __INT16_FMTi__ "hi"
56 // MIPS32BE:#define __INT16_MAX__ 32767
57 // MIPS32BE:#define __INT16_TYPE__ short
58 // MIPS32BE:#define __INT32_C(c) c
59 // MIPS32BE:#define __INT32_C_SUFFIX__
60 // MIPS32BE:#define __INT32_FMTd__ "d"
61 // MIPS32BE:#define __INT32_FMTi__ "i"
62 // MIPS32BE:#define __INT32_MAX__ 2147483647
63 // MIPS32BE:#define __INT32_TYPE__ int
64 // MIPS32BE:#define __INT64_C(c) c##LL
65 // MIPS32BE:#define __INT64_C_SUFFIX__ LL
66 // MIPS32BE:#define __INT64_FMTd__ "lld"
67 // MIPS32BE:#define __INT64_FMTi__ "lli"
68 // MIPS32BE:#define __INT64_MAX__ 9223372036854775807LL
69 // MIPS32BE:#define __INT64_TYPE__ long long int
70 // MIPS32BE:#define __INT8_C(c) c
71 // MIPS32BE:#define __INT8_C_SUFFIX__
72 // MIPS32BE:#define __INT8_FMTd__ "hhd"
73 // MIPS32BE:#define __INT8_FMTi__ "hhi"
74 // MIPS32BE:#define __INT8_MAX__ 127
75 // MIPS32BE:#define __INT8_TYPE__ signed char
76 // MIPS32BE:#define __INTMAX_C(c) c##LL
77 // MIPS32BE:#define __INTMAX_C_SUFFIX__ LL
78 // MIPS32BE:#define __INTMAX_FMTd__ "lld"
79 // MIPS32BE:#define __INTMAX_FMTi__ "lli"
80 // MIPS32BE:#define __INTMAX_MAX__ 9223372036854775807LL
81 // MIPS32BE:#define __INTMAX_TYPE__ long long int
82 // MIPS32BE:#define __INTMAX_WIDTH__ 64
83 // MIPS32BE:#define __INTPTR_FMTd__ "ld"
84 // MIPS32BE:#define __INTPTR_FMTi__ "li"
85 // MIPS32BE:#define __INTPTR_MAX__ 2147483647L
86 // MIPS32BE:#define __INTPTR_TYPE__ long int
87 // MIPS32BE:#define __INTPTR_WIDTH__ 32
88 // MIPS32BE:#define __INT_FAST16_FMTd__ "hd"
89 // MIPS32BE:#define __INT_FAST16_FMTi__ "hi"
90 // MIPS32BE:#define __INT_FAST16_MAX__ 32767
91 // MIPS32BE:#define __INT_FAST16_TYPE__ short
92 // MIPS32BE:#define __INT_FAST32_FMTd__ "d"
93 // MIPS32BE:#define __INT_FAST32_FMTi__ "i"
94 // MIPS32BE:#define __INT_FAST32_MAX__ 2147483647
95 // MIPS32BE:#define __INT_FAST32_TYPE__ int
96 // MIPS32BE:#define __INT_FAST64_FMTd__ "lld"
97 // MIPS32BE:#define __INT_FAST64_FMTi__ "lli"
98 // MIPS32BE:#define __INT_FAST64_MAX__ 9223372036854775807LL
99 // MIPS32BE:#define __INT_FAST64_TYPE__ long long int
100 // MIPS32BE:#define __INT_FAST8_FMTd__ "hhd"
101 // MIPS32BE:#define __INT_FAST8_FMTi__ "hhi"
102 // MIPS32BE:#define __INT_FAST8_MAX__ 127
103 // MIPS32BE:#define __INT_FAST8_TYPE__ signed char
104 // MIPS32BE:#define __INT_LEAST16_FMTd__ "hd"
105 // MIPS32BE:#define __INT_LEAST16_FMTi__ "hi"
106 // MIPS32BE:#define __INT_LEAST16_MAX__ 32767
107 // MIPS32BE:#define __INT_LEAST16_TYPE__ short
108 // MIPS32BE:#define __INT_LEAST32_FMTd__ "d"
109 // MIPS32BE:#define __INT_LEAST32_FMTi__ "i"
110 // MIPS32BE:#define __INT_LEAST32_MAX__ 2147483647
111 // MIPS32BE:#define __INT_LEAST32_TYPE__ int
112 // MIPS32BE:#define __INT_LEAST64_FMTd__ "lld"
113 // MIPS32BE:#define __INT_LEAST64_FMTi__ "lli"
114 // MIPS32BE:#define __INT_LEAST64_MAX__ 9223372036854775807LL
115 // MIPS32BE:#define __INT_LEAST64_TYPE__ long long int
116 // MIPS32BE:#define __INT_LEAST8_FMTd__ "hhd"
117 // MIPS32BE:#define __INT_LEAST8_FMTi__ "hhi"
118 // MIPS32BE:#define __INT_LEAST8_MAX__ 127
119 // MIPS32BE:#define __INT_LEAST8_TYPE__ signed char
120 // MIPS32BE:#define __INT_MAX__ 2147483647
121 // MIPS32BE:#define __LDBL_DENORM_MIN__ 4.9406564584124654e-324L
122 // MIPS32BE:#define __LDBL_DIG__ 15
123 // MIPS32BE:#define __LDBL_EPSILON__ 2.2204460492503131e-16L
124 // MIPS32BE:#define __LDBL_HAS_DENORM__ 1
125 // MIPS32BE:#define __LDBL_HAS_INFINITY__ 1
126 // MIPS32BE:#define __LDBL_HAS_QUIET_NAN__ 1
127 // MIPS32BE:#define __LDBL_MANT_DIG__ 53
128 // MIPS32BE:#define __LDBL_MAX_10_EXP__ 308
129 // MIPS32BE:#define __LDBL_MAX_EXP__ 1024
130 // MIPS32BE:#define __LDBL_MAX__ 1.7976931348623157e+308L
131 // MIPS32BE:#define __LDBL_MIN_10_EXP__ (-307)
132 // MIPS32BE:#define __LDBL_MIN_EXP__ (-1021)
133 // MIPS32BE:#define __LDBL_MIN__ 2.2250738585072014e-308L
134 // MIPS32BE:#define __LONG_LONG_MAX__ 9223372036854775807LL
135 // MIPS32BE:#define __LONG_MAX__ 2147483647L
136 // MIPS32BE-NOT:#define __LP64__
137 // MIPS32BE:#define __MIPSEB 1
138 // MIPS32BE:#define __MIPSEB__ 1
139 // MIPS32BE:#define __POINTER_WIDTH__ 32
140 // MIPS32BE:#define __PRAGMA_REDEFINE_EXTNAME 1
141 // MIPS32BE:#define __PTRDIFF_TYPE__ int
142 // MIPS32BE:#define __PTRDIFF_WIDTH__ 32
143 // MIPS32BE:#define __REGISTER_PREFIX__
144 // MIPS32BE:#define __SCHAR_MAX__ 127
145 // MIPS32BE:#define __SHRT_MAX__ 32767
146 // MIPS32BE:#define __SIG_ATOMIC_MAX__ 2147483647
147 // MIPS32BE:#define __SIG_ATOMIC_WIDTH__ 32
148 // MIPS32BE:#define __SIZEOF_DOUBLE__ 8
149 // MIPS32BE:#define __SIZEOF_FLOAT__ 4
150 // MIPS32BE:#define __SIZEOF_INT__ 4
151 // MIPS32BE:#define __SIZEOF_LONG_DOUBLE__ 8
152 // MIPS32BE:#define __SIZEOF_LONG_LONG__ 8
153 // MIPS32BE:#define __SIZEOF_LONG__ 4
154 // MIPS32BE:#define __SIZEOF_POINTER__ 4
155 // MIPS32BE:#define __SIZEOF_PTRDIFF_T__ 4
156 // MIPS32BE:#define __SIZEOF_SHORT__ 2
157 // MIPS32BE:#define __SIZEOF_SIZE_T__ 4
158 // MIPS32BE:#define __SIZEOF_WCHAR_T__ 4
159 // MIPS32BE:#define __SIZEOF_WINT_T__ 4
160 // MIPS32BE:#define __SIZE_MAX__ 4294967295U
161 // MIPS32BE:#define __SIZE_TYPE__ unsigned int
162 // MIPS32BE:#define __SIZE_WIDTH__ 32
163 // MIPS32BE-CXX:#define __STDCPP_DEFAULT_NEW_ALIGNMENT__ 8U
164 // MIPS32BE:#define __STDC_HOSTED__ 0
165 // MIPS32BE-C:#define __STDC_VERSION__ 201710L
166 // MIPS32BE:#define __STDC__ 1
167 // MIPS32BE:#define __UINT16_C(c) c
168 // MIPS32BE:#define __UINT16_C_SUFFIX__
169 // MIPS32BE:#define __UINT16_MAX__ 65535
170 // MIPS32BE:#define __UINT16_TYPE__ unsigned short
171 // MIPS32BE:#define __UINT32_C(c) c##U
172 // MIPS32BE:#define __UINT32_C_SUFFIX__ U
173 // MIPS32BE:#define __UINT32_MAX__ 4294967295U
174 // MIPS32BE:#define __UINT32_TYPE__ unsigned int
175 // MIPS32BE:#define __UINT64_C(c) c##ULL
176 // MIPS32BE:#define __UINT64_C_SUFFIX__ ULL
177 // MIPS32BE:#define __UINT64_MAX__ 18446744073709551615ULL
178 // MIPS32BE:#define __UINT64_TYPE__ long long unsigned int
179 // MIPS32BE:#define __UINT8_C(c) c
180 // MIPS32BE:#define __UINT8_C_SUFFIX__
181 // MIPS32BE:#define __UINT8_MAX__ 255
182 // MIPS32BE:#define __UINT8_TYPE__ unsigned char
183 // MIPS32BE:#define __UINTMAX_C(c) c##ULL
184 // MIPS32BE:#define __UINTMAX_C_SUFFIX__ ULL
185 // MIPS32BE:#define __UINTMAX_MAX__ 18446744073709551615ULL
186 // MIPS32BE:#define __UINTMAX_TYPE__ long long unsigned int
187 // MIPS32BE:#define __UINTMAX_WIDTH__ 64
188 // MIPS32BE:#define __UINTPTR_MAX__ 4294967295UL
189 // MIPS32BE:#define __UINTPTR_TYPE__ long unsigned int
190 // MIPS32BE:#define __UINTPTR_WIDTH__ 32
191 // MIPS32BE:#define __UINT_FAST16_MAX__ 65535
192 // MIPS32BE:#define __UINT_FAST16_TYPE__ unsigned short
193 // MIPS32BE:#define __UINT_FAST32_MAX__ 4294967295U
194 // MIPS32BE:#define __UINT_FAST32_TYPE__ unsigned int
195 // MIPS32BE:#define __UINT_FAST64_MAX__ 18446744073709551615ULL
196 // MIPS32BE:#define __UINT_FAST64_TYPE__ long long unsigned int
197 // MIPS32BE:#define __UINT_FAST8_MAX__ 255
198 // MIPS32BE:#define __UINT_FAST8_TYPE__ unsigned char
199 // MIPS32BE:#define __UINT_LEAST16_MAX__ 65535
200 // MIPS32BE:#define __UINT_LEAST16_TYPE__ unsigned short
201 // MIPS32BE:#define __UINT_LEAST32_MAX__ 4294967295U
202 // MIPS32BE:#define __UINT_LEAST32_TYPE__ unsigned int
203 // MIPS32BE:#define __UINT_LEAST64_MAX__ 18446744073709551615ULL
204 // MIPS32BE:#define __UINT_LEAST64_TYPE__ long long unsigned int
205 // MIPS32BE:#define __UINT_LEAST8_MAX__ 255
206 // MIPS32BE:#define __UINT_LEAST8_TYPE__ unsigned char
207 // MIPS32BE:#define __USER_LABEL_PREFIX__
208 // MIPS32BE:#define __WCHAR_MAX__ 2147483647
209 // MIPS32BE:#define __WCHAR_TYPE__ int
210 // MIPS32BE:#define __WCHAR_WIDTH__ 32
211 // MIPS32BE:#define __WINT_TYPE__ int
212 // MIPS32BE:#define __WINT_WIDTH__ 32
213 // MIPS32BE:#define __clang__ 1
214 // MIPS32BE:#define __llvm__ 1
215 // MIPS32BE:#define __mips 32
216 // MIPS32BE:#define __mips__ 1
217 // MIPS32BE:#define __mips_abicalls 1
218 // MIPS32BE:#define __mips_fpr 0
219 // MIPS32BE:#define __mips_hard_float 1
220 // MIPS32BE:#define __mips_o32 1
221 // MIPS32BE:#define _mips 1
222 // MIPS32BE:#define mips 1
223 
224 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=mipsel-none-none < /dev/null | FileCheck -match-full-lines -check-prefix MIPS32EL %s
225 //
226 // MIPS32EL:#define MIPSEL 1
227 // MIPS32EL:#define _ABIO32 1
228 // MIPS32EL-NOT:#define _LP64
229 // MIPS32EL:#define _MIPSEL 1
230 // MIPS32EL:#define _MIPS_ARCH "mips32r2"
231 // MIPS32EL:#define _MIPS_ARCH_MIPS32R2 1
232 // MIPS32EL:#define _MIPS_FPSET 16
233 // MIPS32EL:#define _MIPS_SIM _ABIO32
234 // MIPS32EL:#define _MIPS_SPFPSET 16
235 // MIPS32EL:#define _MIPS_SZINT 32
236 // MIPS32EL:#define _MIPS_SZLONG 32
237 // MIPS32EL:#define _MIPS_SZPTR 32
238 // MIPS32EL:#define __BIGGEST_ALIGNMENT__ 8
239 // MIPS32EL:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
240 // MIPS32EL:#define __CHAR16_TYPE__ unsigned short
241 // MIPS32EL:#define __CHAR32_TYPE__ unsigned int
242 // MIPS32EL:#define __CHAR_BIT__ 8
243 // MIPS32EL:#define __CONSTANT_CFSTRINGS__ 1
244 // MIPS32EL:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
245 // MIPS32EL:#define __DBL_DIG__ 15
246 // MIPS32EL:#define __DBL_EPSILON__ 2.2204460492503131e-16
247 // MIPS32EL:#define __DBL_HAS_DENORM__ 1
248 // MIPS32EL:#define __DBL_HAS_INFINITY__ 1
249 // MIPS32EL:#define __DBL_HAS_QUIET_NAN__ 1
250 // MIPS32EL:#define __DBL_MANT_DIG__ 53
251 // MIPS32EL:#define __DBL_MAX_10_EXP__ 308
252 // MIPS32EL:#define __DBL_MAX_EXP__ 1024
253 // MIPS32EL:#define __DBL_MAX__ 1.7976931348623157e+308
254 // MIPS32EL:#define __DBL_MIN_10_EXP__ (-307)
255 // MIPS32EL:#define __DBL_MIN_EXP__ (-1021)
256 // MIPS32EL:#define __DBL_MIN__ 2.2250738585072014e-308
257 // MIPS32EL:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
258 // MIPS32EL:#define __FLT_DENORM_MIN__ 1.40129846e-45F
259 // MIPS32EL:#define __FLT_DIG__ 6
260 // MIPS32EL:#define __FLT_EPSILON__ 1.19209290e-7F
261 // MIPS32EL:#define __FLT_HAS_DENORM__ 1
262 // MIPS32EL:#define __FLT_HAS_INFINITY__ 1
263 // MIPS32EL:#define __FLT_HAS_QUIET_NAN__ 1
264 // MIPS32EL:#define __FLT_MANT_DIG__ 24
265 // MIPS32EL:#define __FLT_MAX_10_EXP__ 38
266 // MIPS32EL:#define __FLT_MAX_EXP__ 128
267 // MIPS32EL:#define __FLT_MAX__ 3.40282347e+38F
268 // MIPS32EL:#define __FLT_MIN_10_EXP__ (-37)
269 // MIPS32EL:#define __FLT_MIN_EXP__ (-125)
270 // MIPS32EL:#define __FLT_MIN__ 1.17549435e-38F
271 // MIPS32EL:#define __FLT_RADIX__ 2
272 // MIPS32EL:#define __INT16_C(c) c
273 // MIPS32EL:#define __INT16_C_SUFFIX__
274 // MIPS32EL:#define __INT16_FMTd__ "hd"
275 // MIPS32EL:#define __INT16_FMTi__ "hi"
276 // MIPS32EL:#define __INT16_MAX__ 32767
277 // MIPS32EL:#define __INT16_TYPE__ short
278 // MIPS32EL:#define __INT32_C(c) c
279 // MIPS32EL:#define __INT32_C_SUFFIX__
280 // MIPS32EL:#define __INT32_FMTd__ "d"
281 // MIPS32EL:#define __INT32_FMTi__ "i"
282 // MIPS32EL:#define __INT32_MAX__ 2147483647
283 // MIPS32EL:#define __INT32_TYPE__ int
284 // MIPS32EL:#define __INT64_C(c) c##LL
285 // MIPS32EL:#define __INT64_C_SUFFIX__ LL
286 // MIPS32EL:#define __INT64_FMTd__ "lld"
287 // MIPS32EL:#define __INT64_FMTi__ "lli"
288 // MIPS32EL:#define __INT64_MAX__ 9223372036854775807LL
289 // MIPS32EL:#define __INT64_TYPE__ long long int
290 // MIPS32EL:#define __INT8_C(c) c
291 // MIPS32EL:#define __INT8_C_SUFFIX__
292 // MIPS32EL:#define __INT8_FMTd__ "hhd"
293 // MIPS32EL:#define __INT8_FMTi__ "hhi"
294 // MIPS32EL:#define __INT8_MAX__ 127
295 // MIPS32EL:#define __INT8_TYPE__ signed char
296 // MIPS32EL:#define __INTMAX_C(c) c##LL
297 // MIPS32EL:#define __INTMAX_C_SUFFIX__ LL
298 // MIPS32EL:#define __INTMAX_FMTd__ "lld"
299 // MIPS32EL:#define __INTMAX_FMTi__ "lli"
300 // MIPS32EL:#define __INTMAX_MAX__ 9223372036854775807LL
301 // MIPS32EL:#define __INTMAX_TYPE__ long long int
302 // MIPS32EL:#define __INTMAX_WIDTH__ 64
303 // MIPS32EL:#define __INTPTR_FMTd__ "ld"
304 // MIPS32EL:#define __INTPTR_FMTi__ "li"
305 // MIPS32EL:#define __INTPTR_MAX__ 2147483647L
306 // MIPS32EL:#define __INTPTR_TYPE__ long int
307 // MIPS32EL:#define __INTPTR_WIDTH__ 32
308 // MIPS32EL:#define __INT_FAST16_FMTd__ "hd"
309 // MIPS32EL:#define __INT_FAST16_FMTi__ "hi"
310 // MIPS32EL:#define __INT_FAST16_MAX__ 32767
311 // MIPS32EL:#define __INT_FAST16_TYPE__ short
312 // MIPS32EL:#define __INT_FAST32_FMTd__ "d"
313 // MIPS32EL:#define __INT_FAST32_FMTi__ "i"
314 // MIPS32EL:#define __INT_FAST32_MAX__ 2147483647
315 // MIPS32EL:#define __INT_FAST32_TYPE__ int
316 // MIPS32EL:#define __INT_FAST64_FMTd__ "lld"
317 // MIPS32EL:#define __INT_FAST64_FMTi__ "lli"
318 // MIPS32EL:#define __INT_FAST64_MAX__ 9223372036854775807LL
319 // MIPS32EL:#define __INT_FAST64_TYPE__ long long int
320 // MIPS32EL:#define __INT_FAST8_FMTd__ "hhd"
321 // MIPS32EL:#define __INT_FAST8_FMTi__ "hhi"
322 // MIPS32EL:#define __INT_FAST8_MAX__ 127
323 // MIPS32EL:#define __INT_FAST8_TYPE__ signed char
324 // MIPS32EL:#define __INT_LEAST16_FMTd__ "hd"
325 // MIPS32EL:#define __INT_LEAST16_FMTi__ "hi"
326 // MIPS32EL:#define __INT_LEAST16_MAX__ 32767
327 // MIPS32EL:#define __INT_LEAST16_TYPE__ short
328 // MIPS32EL:#define __INT_LEAST32_FMTd__ "d"
329 // MIPS32EL:#define __INT_LEAST32_FMTi__ "i"
330 // MIPS32EL:#define __INT_LEAST32_MAX__ 2147483647
331 // MIPS32EL:#define __INT_LEAST32_TYPE__ int
332 // MIPS32EL:#define __INT_LEAST64_FMTd__ "lld"
333 // MIPS32EL:#define __INT_LEAST64_FMTi__ "lli"
334 // MIPS32EL:#define __INT_LEAST64_MAX__ 9223372036854775807LL
335 // MIPS32EL:#define __INT_LEAST64_TYPE__ long long int
336 // MIPS32EL:#define __INT_LEAST8_FMTd__ "hhd"
337 // MIPS32EL:#define __INT_LEAST8_FMTi__ "hhi"
338 // MIPS32EL:#define __INT_LEAST8_MAX__ 127
339 // MIPS32EL:#define __INT_LEAST8_TYPE__ signed char
340 // MIPS32EL:#define __INT_MAX__ 2147483647
341 // MIPS32EL:#define __LDBL_DENORM_MIN__ 4.9406564584124654e-324L
342 // MIPS32EL:#define __LDBL_DIG__ 15
343 // MIPS32EL:#define __LDBL_EPSILON__ 2.2204460492503131e-16L
344 // MIPS32EL:#define __LDBL_HAS_DENORM__ 1
345 // MIPS32EL:#define __LDBL_HAS_INFINITY__ 1
346 // MIPS32EL:#define __LDBL_HAS_QUIET_NAN__ 1
347 // MIPS32EL:#define __LDBL_MANT_DIG__ 53
348 // MIPS32EL:#define __LDBL_MAX_10_EXP__ 308
349 // MIPS32EL:#define __LDBL_MAX_EXP__ 1024
350 // MIPS32EL:#define __LDBL_MAX__ 1.7976931348623157e+308L
351 // MIPS32EL:#define __LDBL_MIN_10_EXP__ (-307)
352 // MIPS32EL:#define __LDBL_MIN_EXP__ (-1021)
353 // MIPS32EL:#define __LDBL_MIN__ 2.2250738585072014e-308L
354 // MIPS32EL:#define __LITTLE_ENDIAN__ 1
355 // MIPS32EL:#define __LONG_LONG_MAX__ 9223372036854775807LL
356 // MIPS32EL:#define __LONG_MAX__ 2147483647L
357 // MIPS32EL-NOT:#define __LP64__
358 // MIPS32EL:#define __MIPSEL 1
359 // MIPS32EL:#define __MIPSEL__ 1
360 // MIPS32EL:#define __POINTER_WIDTH__ 32
361 // MIPS32EL:#define __PRAGMA_REDEFINE_EXTNAME 1
362 // MIPS32EL:#define __PTRDIFF_TYPE__ int
363 // MIPS32EL:#define __PTRDIFF_WIDTH__ 32
364 // MIPS32EL:#define __REGISTER_PREFIX__
365 // MIPS32EL:#define __SCHAR_MAX__ 127
366 // MIPS32EL:#define __SHRT_MAX__ 32767
367 // MIPS32EL:#define __SIG_ATOMIC_MAX__ 2147483647
368 // MIPS32EL:#define __SIG_ATOMIC_WIDTH__ 32
369 // MIPS32EL:#define __SIZEOF_DOUBLE__ 8
370 // MIPS32EL:#define __SIZEOF_FLOAT__ 4
371 // MIPS32EL:#define __SIZEOF_INT__ 4
372 // MIPS32EL:#define __SIZEOF_LONG_DOUBLE__ 8
373 // MIPS32EL:#define __SIZEOF_LONG_LONG__ 8
374 // MIPS32EL:#define __SIZEOF_LONG__ 4
375 // MIPS32EL:#define __SIZEOF_POINTER__ 4
376 // MIPS32EL:#define __SIZEOF_PTRDIFF_T__ 4
377 // MIPS32EL:#define __SIZEOF_SHORT__ 2
378 // MIPS32EL:#define __SIZEOF_SIZE_T__ 4
379 // MIPS32EL:#define __SIZEOF_WCHAR_T__ 4
380 // MIPS32EL:#define __SIZEOF_WINT_T__ 4
381 // MIPS32EL:#define __SIZE_MAX__ 4294967295U
382 // MIPS32EL:#define __SIZE_TYPE__ unsigned int
383 // MIPS32EL:#define __SIZE_WIDTH__ 32
384 // MIPS32EL:#define __UINT16_C(c) c
385 // MIPS32EL:#define __UINT16_C_SUFFIX__
386 // MIPS32EL:#define __UINT16_MAX__ 65535
387 // MIPS32EL:#define __UINT16_TYPE__ unsigned short
388 // MIPS32EL:#define __UINT32_C(c) c##U
389 // MIPS32EL:#define __UINT32_C_SUFFIX__ U
390 // MIPS32EL:#define __UINT32_MAX__ 4294967295U
391 // MIPS32EL:#define __UINT32_TYPE__ unsigned int
392 // MIPS32EL:#define __UINT64_C(c) c##ULL
393 // MIPS32EL:#define __UINT64_C_SUFFIX__ ULL
394 // MIPS32EL:#define __UINT64_MAX__ 18446744073709551615ULL
395 // MIPS32EL:#define __UINT64_TYPE__ long long unsigned int
396 // MIPS32EL:#define __UINT8_C(c) c
397 // MIPS32EL:#define __UINT8_C_SUFFIX__
398 // MIPS32EL:#define __UINT8_MAX__ 255
399 // MIPS32EL:#define __UINT8_TYPE__ unsigned char
400 // MIPS32EL:#define __UINTMAX_C(c) c##ULL
401 // MIPS32EL:#define __UINTMAX_C_SUFFIX__ ULL
402 // MIPS32EL:#define __UINTMAX_MAX__ 18446744073709551615ULL
403 // MIPS32EL:#define __UINTMAX_TYPE__ long long unsigned int
404 // MIPS32EL:#define __UINTMAX_WIDTH__ 64
405 // MIPS32EL:#define __UINTPTR_MAX__ 4294967295UL
406 // MIPS32EL:#define __UINTPTR_TYPE__ long unsigned int
407 // MIPS32EL:#define __UINTPTR_WIDTH__ 32
408 // MIPS32EL:#define __UINT_FAST16_MAX__ 65535
409 // MIPS32EL:#define __UINT_FAST16_TYPE__ unsigned short
410 // MIPS32EL:#define __UINT_FAST32_MAX__ 4294967295U
411 // MIPS32EL:#define __UINT_FAST32_TYPE__ unsigned int
412 // MIPS32EL:#define __UINT_FAST64_MAX__ 18446744073709551615ULL
413 // MIPS32EL:#define __UINT_FAST64_TYPE__ long long unsigned int
414 // MIPS32EL:#define __UINT_FAST8_MAX__ 255
415 // MIPS32EL:#define __UINT_FAST8_TYPE__ unsigned char
416 // MIPS32EL:#define __UINT_LEAST16_MAX__ 65535
417 // MIPS32EL:#define __UINT_LEAST16_TYPE__ unsigned short
418 // MIPS32EL:#define __UINT_LEAST32_MAX__ 4294967295U
419 // MIPS32EL:#define __UINT_LEAST32_TYPE__ unsigned int
420 // MIPS32EL:#define __UINT_LEAST64_MAX__ 18446744073709551615ULL
421 // MIPS32EL:#define __UINT_LEAST64_TYPE__ long long unsigned int
422 // MIPS32EL:#define __UINT_LEAST8_MAX__ 255
423 // MIPS32EL:#define __UINT_LEAST8_TYPE__ unsigned char
424 // MIPS32EL:#define __USER_LABEL_PREFIX__
425 // MIPS32EL:#define __WCHAR_MAX__ 2147483647
426 // MIPS32EL:#define __WCHAR_TYPE__ int
427 // MIPS32EL:#define __WCHAR_WIDTH__ 32
428 // MIPS32EL:#define __WINT_TYPE__ int
429 // MIPS32EL:#define __WINT_WIDTH__ 32
430 // MIPS32EL:#define __clang__ 1
431 // MIPS32EL:#define __llvm__ 1
432 // MIPS32EL:#define __mips 32
433 // MIPS32EL:#define __mips__ 1
434 // MIPS32EL:#define __mips_abicalls 1
435 // MIPS32EL:#define __mips_fpr 0
436 // MIPS32EL:#define __mips_hard_float 1
437 // MIPS32EL:#define __mips_o32 1
438 // MIPS32EL:#define _mips 1
439 // MIPS32EL:#define mips 1
440 
441 // RUN: %clang_cc1 -E -dM -ffreestanding -fgnuc-version=4.2.1 \
442 // RUN:            -triple=mips64-none-none -target-abi n32 < /dev/null \
443 // RUN:   | FileCheck -match-full-lines -check-prefix MIPSN32BE -check-prefix MIPSN32BE-C %s
444 // RUN: %clang_cc1 -x c++ -E -dM -ffreestanding -fgnuc-version=4.2.1 \
445 // RUN:            -triple=mips64-none-none -target-abi n32 < /dev/null \
446 // RUN:   | FileCheck -match-full-lines -check-prefix MIPSN32BE -check-prefix MIPSN32BE-CXX %s
447 //
448 // MIPSN32BE: #define MIPSEB 1
449 // MIPSN32BE: #define _ABIN32 2
450 // MIPSN32BE: #define _ILP32 1
451 // MIPSN32BE: #define _MIPSEB 1
452 // MIPSN32BE: #define _MIPS_ARCH "mips64r2"
453 // MIPSN32BE: #define _MIPS_ARCH_MIPS64R2 1
454 // MIPSN32BE: #define _MIPS_FPSET 32
455 // MIPSN32BE: #define _MIPS_ISA _MIPS_ISA_MIPS64
456 // MIPSN32BE: #define _MIPS_SIM _ABIN32
457 // MIPSN32BE: #define _MIPS_SPFPSET 32
458 // MIPSN32BE: #define _MIPS_SZINT 32
459 // MIPSN32BE: #define _MIPS_SZLONG 32
460 // MIPSN32BE: #define _MIPS_SZPTR 32
461 // MIPSN32BE: #define __ATOMIC_ACQUIRE 2
462 // MIPSN32BE: #define __ATOMIC_ACQ_REL 4
463 // MIPSN32BE: #define __ATOMIC_CONSUME 1
464 // MIPSN32BE: #define __ATOMIC_RELAXED 0
465 // MIPSN32BE: #define __ATOMIC_RELEASE 3
466 // MIPSN32BE: #define __ATOMIC_SEQ_CST 5
467 // MIPSN32BE: #define __BIG_ENDIAN__ 1
468 // MIPSN32BE: #define __BYTE_ORDER__ __ORDER_BIG_ENDIAN__
469 // MIPSN32BE: #define __CHAR16_TYPE__ unsigned short
470 // MIPSN32BE: #define __CHAR32_TYPE__ unsigned int
471 // MIPSN32BE: #define __CHAR_BIT__ 8
472 // MIPSN32BE: #define __CONSTANT_CFSTRINGS__ 1
473 // MIPSN32BE: #define __DBL_DENORM_MIN__ 4.9406564584124654e-324
474 // MIPSN32BE: #define __DBL_DIG__ 15
475 // MIPSN32BE: #define __DBL_EPSILON__ 2.2204460492503131e-16
476 // MIPSN32BE: #define __DBL_HAS_DENORM__ 1
477 // MIPSN32BE: #define __DBL_HAS_INFINITY__ 1
478 // MIPSN32BE: #define __DBL_HAS_QUIET_NAN__ 1
479 // MIPSN32BE: #define __DBL_MANT_DIG__ 53
480 // MIPSN32BE: #define __DBL_MAX_10_EXP__ 308
481 // MIPSN32BE: #define __DBL_MAX_EXP__ 1024
482 // MIPSN32BE: #define __DBL_MAX__ 1.7976931348623157e+308
483 // MIPSN32BE: #define __DBL_MIN_10_EXP__ (-307)
484 // MIPSN32BE: #define __DBL_MIN_EXP__ (-1021)
485 // MIPSN32BE: #define __DBL_MIN__ 2.2250738585072014e-308
486 // MIPSN32BE: #define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
487 // MIPSN32BE: #define __FINITE_MATH_ONLY__ 0
488 // MIPSN32BE: #define __FLT_DENORM_MIN__ 1.40129846e-45F
489 // MIPSN32BE: #define __FLT_DIG__ 6
490 // MIPSN32BE: #define __FLT_EPSILON__ 1.19209290e-7F
491 // MIPSN32BE: #define __FLT_HAS_DENORM__ 1
492 // MIPSN32BE: #define __FLT_HAS_INFINITY__ 1
493 // MIPSN32BE: #define __FLT_HAS_QUIET_NAN__ 1
494 // MIPSN32BE: #define __FLT_MANT_DIG__ 24
495 // MIPSN32BE: #define __FLT_MAX_10_EXP__ 38
496 // MIPSN32BE: #define __FLT_MAX_EXP__ 128
497 // MIPSN32BE: #define __FLT_MAX__ 3.40282347e+38F
498 // MIPSN32BE: #define __FLT_MIN_10_EXP__ (-37)
499 // MIPSN32BE: #define __FLT_MIN_EXP__ (-125)
500 // MIPSN32BE: #define __FLT_MIN__ 1.17549435e-38F
501 // MIPSN32BE: #define __FLT_RADIX__ 2
502 // MIPSN32BE: #define __GCC_ATOMIC_BOOL_LOCK_FREE 2
503 // MIPSN32BE: #define __GCC_ATOMIC_CHAR16_T_LOCK_FREE 2
504 // MIPSN32BE: #define __GCC_ATOMIC_CHAR32_T_LOCK_FREE 2
505 // MIPSN32BE: #define __GCC_ATOMIC_CHAR_LOCK_FREE 2
506 // MIPSN32BE: #define __GCC_ATOMIC_INT_LOCK_FREE 2
507 // MIPSN32BE: #define __GCC_ATOMIC_LLONG_LOCK_FREE 2
508 // MIPSN32BE: #define __GCC_ATOMIC_LONG_LOCK_FREE 2
509 // MIPSN32BE: #define __GCC_ATOMIC_POINTER_LOCK_FREE 2
510 // MIPSN32BE: #define __GCC_ATOMIC_SHORT_LOCK_FREE 2
511 // MIPSN32BE: #define __GCC_ATOMIC_TEST_AND_SET_TRUEVAL 1
512 // MIPSN32BE: #define __GCC_ATOMIC_WCHAR_T_LOCK_FREE 2
513 // MIPSN32BE: #define __GNUC_MINOR__ 2
514 // MIPSN32BE: #define __GNUC_PATCHLEVEL__ 1
515 // MIPSN32BE-C: #define __GNUC_STDC_INLINE__ 1
516 // MIPSN32BE: #define __GNUC__ 4
517 // MIPSN32BE: #define __GXX_ABI_VERSION 1002
518 // MIPSN32BE: #define __ILP32__ 1
519 // MIPSN32BE: #define __INT16_C(c) c
520 // MIPSN32BE: #define __INT16_C_SUFFIX__
521 // MIPSN32BE: #define __INT16_FMTd__ "hd"
522 // MIPSN32BE: #define __INT16_FMTi__ "hi"
523 // MIPSN32BE: #define __INT16_MAX__ 32767
524 // MIPSN32BE: #define __INT16_TYPE__ short
525 // MIPSN32BE: #define __INT32_C(c) c
526 // MIPSN32BE: #define __INT32_C_SUFFIX__
527 // MIPSN32BE: #define __INT32_FMTd__ "d"
528 // MIPSN32BE: #define __INT32_FMTi__ "i"
529 // MIPSN32BE: #define __INT32_MAX__ 2147483647
530 // MIPSN32BE: #define __INT32_TYPE__ int
531 // MIPSN32BE: #define __INT64_C(c) c##LL
532 // MIPSN32BE: #define __INT64_C_SUFFIX__ LL
533 // MIPSN32BE: #define __INT64_FMTd__ "lld"
534 // MIPSN32BE: #define __INT64_FMTi__ "lli"
535 // MIPSN32BE: #define __INT64_MAX__ 9223372036854775807LL
536 // MIPSN32BE: #define __INT64_TYPE__ long long int
537 // MIPSN32BE: #define __INT8_C(c) c
538 // MIPSN32BE: #define __INT8_C_SUFFIX__
539 // MIPSN32BE: #define __INT8_FMTd__ "hhd"
540 // MIPSN32BE: #define __INT8_FMTi__ "hhi"
541 // MIPSN32BE: #define __INT8_MAX__ 127
542 // MIPSN32BE: #define __INT8_TYPE__ signed char
543 // MIPSN32BE: #define __INTMAX_C(c) c##LL
544 // MIPSN32BE: #define __INTMAX_C_SUFFIX__ LL
545 // MIPSN32BE: #define __INTMAX_FMTd__ "lld"
546 // MIPSN32BE: #define __INTMAX_FMTi__ "lli"
547 // MIPSN32BE: #define __INTMAX_MAX__ 9223372036854775807LL
548 // MIPSN32BE: #define __INTMAX_TYPE__ long long int
549 // MIPSN32BE: #define __INTMAX_WIDTH__ 64
550 // MIPSN32BE: #define __INTPTR_FMTd__ "ld"
551 // MIPSN32BE: #define __INTPTR_FMTi__ "li"
552 // MIPSN32BE: #define __INTPTR_MAX__ 2147483647L
553 // MIPSN32BE: #define __INTPTR_TYPE__ long int
554 // MIPSN32BE: #define __INTPTR_WIDTH__ 32
555 // MIPSN32BE: #define __INT_FAST16_FMTd__ "hd"
556 // MIPSN32BE: #define __INT_FAST16_FMTi__ "hi"
557 // MIPSN32BE: #define __INT_FAST16_MAX__ 32767
558 // MIPSN32BE: #define __INT_FAST16_TYPE__ short
559 // MIPSN32BE: #define __INT_FAST32_FMTd__ "d"
560 // MIPSN32BE: #define __INT_FAST32_FMTi__ "i"
561 // MIPSN32BE: #define __INT_FAST32_MAX__ 2147483647
562 // MIPSN32BE: #define __INT_FAST32_TYPE__ int
563 // MIPSN32BE: #define __INT_FAST64_FMTd__ "lld"
564 // MIPSN32BE: #define __INT_FAST64_FMTi__ "lli"
565 // MIPSN32BE: #define __INT_FAST64_MAX__ 9223372036854775807LL
566 // MIPSN32BE: #define __INT_FAST64_TYPE__ long long int
567 // MIPSN32BE: #define __INT_FAST8_FMTd__ "hhd"
568 // MIPSN32BE: #define __INT_FAST8_FMTi__ "hhi"
569 // MIPSN32BE: #define __INT_FAST8_MAX__ 127
570 // MIPSN32BE: #define __INT_FAST8_TYPE__ signed char
571 // MIPSN32BE: #define __INT_LEAST16_FMTd__ "hd"
572 // MIPSN32BE: #define __INT_LEAST16_FMTi__ "hi"
573 // MIPSN32BE: #define __INT_LEAST16_MAX__ 32767
574 // MIPSN32BE: #define __INT_LEAST16_TYPE__ short
575 // MIPSN32BE: #define __INT_LEAST32_FMTd__ "d"
576 // MIPSN32BE: #define __INT_LEAST32_FMTi__ "i"
577 // MIPSN32BE: #define __INT_LEAST32_MAX__ 2147483647
578 // MIPSN32BE: #define __INT_LEAST32_TYPE__ int
579 // MIPSN32BE: #define __INT_LEAST64_FMTd__ "lld"
580 // MIPSN32BE: #define __INT_LEAST64_FMTi__ "lli"
581 // MIPSN32BE: #define __INT_LEAST64_MAX__ 9223372036854775807LL
582 // MIPSN32BE: #define __INT_LEAST64_TYPE__ long long int
583 // MIPSN32BE: #define __INT_LEAST8_FMTd__ "hhd"
584 // MIPSN32BE: #define __INT_LEAST8_FMTi__ "hhi"
585 // MIPSN32BE: #define __INT_LEAST8_MAX__ 127
586 // MIPSN32BE: #define __INT_LEAST8_TYPE__ signed char
587 // MIPSN32BE: #define __INT_MAX__ 2147483647
588 // MIPSN32BE: #define __LDBL_DENORM_MIN__ 6.47517511943802511092443895822764655e-4966L
589 // MIPSN32BE: #define __LDBL_DIG__ 33
590 // MIPSN32BE: #define __LDBL_EPSILON__ 1.92592994438723585305597794258492732e-34L
591 // MIPSN32BE: #define __LDBL_HAS_DENORM__ 1
592 // MIPSN32BE: #define __LDBL_HAS_INFINITY__ 1
593 // MIPSN32BE: #define __LDBL_HAS_QUIET_NAN__ 1
594 // MIPSN32BE: #define __LDBL_MANT_DIG__ 113
595 // MIPSN32BE: #define __LDBL_MAX_10_EXP__ 4932
596 // MIPSN32BE: #define __LDBL_MAX_EXP__ 16384
597 // MIPSN32BE: #define __LDBL_MAX__ 1.18973149535723176508575932662800702e+4932L
598 // MIPSN32BE: #define __LDBL_MIN_10_EXP__ (-4931)
599 // MIPSN32BE: #define __LDBL_MIN_EXP__ (-16381)
600 // MIPSN32BE: #define __LDBL_MIN__ 3.36210314311209350626267781732175260e-4932L
601 // MIPSN32BE: #define __LONG_LONG_MAX__ 9223372036854775807LL
602 // MIPSN32BE: #define __LONG_MAX__ 2147483647L
603 // MIPSN32BE: #define __MIPSEB 1
604 // MIPSN32BE: #define __MIPSEB__ 1
605 // MIPSN32BE: #define __NO_INLINE__ 1
606 // MIPSN32BE: #define __ORDER_BIG_ENDIAN__ 4321
607 // MIPSN32BE: #define __ORDER_LITTLE_ENDIAN__ 1234
608 // MIPSN32BE: #define __ORDER_PDP_ENDIAN__ 3412
609 // MIPSN32BE: #define __POINTER_WIDTH__ 32
610 // MIPSN32BE: #define __PRAGMA_REDEFINE_EXTNAME 1
611 // MIPSN32BE: #define __PTRDIFF_FMTd__ "d"
612 // MIPSN32BE: #define __PTRDIFF_FMTi__ "i"
613 // MIPSN32BE: #define __PTRDIFF_MAX__ 2147483647
614 // MIPSN32BE: #define __PTRDIFF_TYPE__ int
615 // MIPSN32BE: #define __PTRDIFF_WIDTH__ 32
616 // MIPSN32BE: #define __REGISTER_PREFIX__
617 // MIPSN32BE: #define __SCHAR_MAX__ 127
618 // MIPSN32BE: #define __SHRT_MAX__ 32767
619 // MIPSN32BE: #define __SIG_ATOMIC_MAX__ 2147483647
620 // MIPSN32BE: #define __SIG_ATOMIC_WIDTH__ 32
621 // MIPSN32BE: #define __SIZEOF_DOUBLE__ 8
622 // MIPSN32BE: #define __SIZEOF_FLOAT__ 4
623 // MIPSN32BE: #define __SIZEOF_INT__ 4
624 // MIPSN32BE: #define __SIZEOF_LONG_DOUBLE__ 16
625 // MIPSN32BE: #define __SIZEOF_LONG_LONG__ 8
626 // MIPSN32BE: #define __SIZEOF_LONG__ 4
627 // MIPSN32BE: #define __SIZEOF_POINTER__ 4
628 // MIPSN32BE: #define __SIZEOF_PTRDIFF_T__ 4
629 // MIPSN32BE: #define __SIZEOF_SHORT__ 2
630 // MIPSN32BE: #define __SIZEOF_SIZE_T__ 4
631 // MIPSN32BE: #define __SIZEOF_WCHAR_T__ 4
632 // MIPSN32BE: #define __SIZEOF_WINT_T__ 4
633 // MIPSN32BE: #define __SIZE_FMTX__ "X"
634 // MIPSN32BE: #define __SIZE_FMTo__ "o"
635 // MIPSN32BE: #define __SIZE_FMTu__ "u"
636 // MIPSN32BE: #define __SIZE_FMTx__ "x"
637 // MIPSN32BE: #define __SIZE_MAX__ 4294967295U
638 // MIPSN32BE: #define __SIZE_TYPE__ unsigned int
639 // MIPSN32BE: #define __SIZE_WIDTH__ 32
640 // MIPSN32BE-CXX: #define __STDCPP_DEFAULT_NEW_ALIGNMENT__ 16U
641 // MIPSN32BE: #define __STDC_HOSTED__ 0
642 // MIPSN32BE: #define __STDC_UTF_16__ 1
643 // MIPSN32BE: #define __STDC_UTF_32__ 1
644 // MIPSN32BE-C: #define __STDC_VERSION__ 201710L
645 // MIPSN32BE: #define __STDC__ 1
646 // MIPSN32BE: #define __UINT16_C(c) c
647 // MIPSN32BE: #define __UINT16_C_SUFFIX__
648 // MIPSN32BE: #define __UINT16_FMTX__ "hX"
649 // MIPSN32BE: #define __UINT16_FMTo__ "ho"
650 // MIPSN32BE: #define __UINT16_FMTu__ "hu"
651 // MIPSN32BE: #define __UINT16_FMTx__ "hx"
652 // MIPSN32BE: #define __UINT16_MAX__ 65535
653 // MIPSN32BE: #define __UINT16_TYPE__ unsigned short
654 // MIPSN32BE: #define __UINT32_C(c) c##U
655 // MIPSN32BE: #define __UINT32_C_SUFFIX__ U
656 // MIPSN32BE: #define __UINT32_FMTX__ "X"
657 // MIPSN32BE: #define __UINT32_FMTo__ "o"
658 // MIPSN32BE: #define __UINT32_FMTu__ "u"
659 // MIPSN32BE: #define __UINT32_FMTx__ "x"
660 // MIPSN32BE: #define __UINT32_MAX__ 4294967295U
661 // MIPSN32BE: #define __UINT32_TYPE__ unsigned int
662 // MIPSN32BE: #define __UINT64_C(c) c##ULL
663 // MIPSN32BE: #define __UINT64_C_SUFFIX__ ULL
664 // MIPSN32BE: #define __UINT64_FMTX__ "llX"
665 // MIPSN32BE: #define __UINT64_FMTo__ "llo"
666 // MIPSN32BE: #define __UINT64_FMTu__ "llu"
667 // MIPSN32BE: #define __UINT64_FMTx__ "llx"
668 // MIPSN32BE: #define __UINT64_MAX__ 18446744073709551615ULL
669 // MIPSN32BE: #define __UINT64_TYPE__ long long unsigned int
670 // MIPSN32BE: #define __UINT8_C(c) c
671 // MIPSN32BE: #define __UINT8_C_SUFFIX__
672 // MIPSN32BE: #define __UINT8_FMTX__ "hhX"
673 // MIPSN32BE: #define __UINT8_FMTo__ "hho"
674 // MIPSN32BE: #define __UINT8_FMTu__ "hhu"
675 // MIPSN32BE: #define __UINT8_FMTx__ "hhx"
676 // MIPSN32BE: #define __UINT8_MAX__ 255
677 // MIPSN32BE: #define __UINT8_TYPE__ unsigned char
678 // MIPSN32BE: #define __UINTMAX_C(c) c##ULL
679 // MIPSN32BE: #define __UINTMAX_C_SUFFIX__ ULL
680 // MIPSN32BE: #define __UINTMAX_FMTX__ "llX"
681 // MIPSN32BE: #define __UINTMAX_FMTo__ "llo"
682 // MIPSN32BE: #define __UINTMAX_FMTu__ "llu"
683 // MIPSN32BE: #define __UINTMAX_FMTx__ "llx"
684 // MIPSN32BE: #define __UINTMAX_MAX__ 18446744073709551615ULL
685 // MIPSN32BE: #define __UINTMAX_TYPE__ long long unsigned int
686 // MIPSN32BE: #define __UINTMAX_WIDTH__ 64
687 // MIPSN32BE: #define __UINTPTR_FMTX__ "lX"
688 // MIPSN32BE: #define __UINTPTR_FMTo__ "lo"
689 // MIPSN32BE: #define __UINTPTR_FMTu__ "lu"
690 // MIPSN32BE: #define __UINTPTR_FMTx__ "lx"
691 // MIPSN32BE: #define __UINTPTR_MAX__ 4294967295UL
692 // MIPSN32BE: #define __UINTPTR_TYPE__ long unsigned int
693 // MIPSN32BE: #define __UINTPTR_WIDTH__ 32
694 // MIPSN32BE: #define __UINT_FAST16_FMTX__ "hX"
695 // MIPSN32BE: #define __UINT_FAST16_FMTo__ "ho"
696 // MIPSN32BE: #define __UINT_FAST16_FMTu__ "hu"
697 // MIPSN32BE: #define __UINT_FAST16_FMTx__ "hx"
698 // MIPSN32BE: #define __UINT_FAST16_MAX__ 65535
699 // MIPSN32BE: #define __UINT_FAST16_TYPE__ unsigned short
700 // MIPSN32BE: #define __UINT_FAST32_FMTX__ "X"
701 // MIPSN32BE: #define __UINT_FAST32_FMTo__ "o"
702 // MIPSN32BE: #define __UINT_FAST32_FMTu__ "u"
703 // MIPSN32BE: #define __UINT_FAST32_FMTx__ "x"
704 // MIPSN32BE: #define __UINT_FAST32_MAX__ 4294967295U
705 // MIPSN32BE: #define __UINT_FAST32_TYPE__ unsigned int
706 // MIPSN32BE: #define __UINT_FAST64_FMTX__ "llX"
707 // MIPSN32BE: #define __UINT_FAST64_FMTo__ "llo"
708 // MIPSN32BE: #define __UINT_FAST64_FMTu__ "llu"
709 // MIPSN32BE: #define __UINT_FAST64_FMTx__ "llx"
710 // MIPSN32BE: #define __UINT_FAST64_MAX__ 18446744073709551615ULL
711 // MIPSN32BE: #define __UINT_FAST64_TYPE__ long long unsigned int
712 // MIPSN32BE: #define __UINT_FAST8_FMTX__ "hhX"
713 // MIPSN32BE: #define __UINT_FAST8_FMTo__ "hho"
714 // MIPSN32BE: #define __UINT_FAST8_FMTu__ "hhu"
715 // MIPSN32BE: #define __UINT_FAST8_FMTx__ "hhx"
716 // MIPSN32BE: #define __UINT_FAST8_MAX__ 255
717 // MIPSN32BE: #define __UINT_FAST8_TYPE__ unsigned char
718 // MIPSN32BE: #define __UINT_LEAST16_FMTX__ "hX"
719 // MIPSN32BE: #define __UINT_LEAST16_FMTo__ "ho"
720 // MIPSN32BE: #define __UINT_LEAST16_FMTu__ "hu"
721 // MIPSN32BE: #define __UINT_LEAST16_FMTx__ "hx"
722 // MIPSN32BE: #define __UINT_LEAST16_MAX__ 65535
723 // MIPSN32BE: #define __UINT_LEAST16_TYPE__ unsigned short
724 // MIPSN32BE: #define __UINT_LEAST32_FMTX__ "X"
725 // MIPSN32BE: #define __UINT_LEAST32_FMTo__ "o"
726 // MIPSN32BE: #define __UINT_LEAST32_FMTu__ "u"
727 // MIPSN32BE: #define __UINT_LEAST32_FMTx__ "x"
728 // MIPSN32BE: #define __UINT_LEAST32_MAX__ 4294967295U
729 // MIPSN32BE: #define __UINT_LEAST32_TYPE__ unsigned int
730 // MIPSN32BE: #define __UINT_LEAST64_FMTX__ "llX"
731 // MIPSN32BE: #define __UINT_LEAST64_FMTo__ "llo"
732 // MIPSN32BE: #define __UINT_LEAST64_FMTu__ "llu"
733 // MIPSN32BE: #define __UINT_LEAST64_FMTx__ "llx"
734 // MIPSN32BE: #define __UINT_LEAST64_MAX__ 18446744073709551615ULL
735 // MIPSN32BE: #define __UINT_LEAST64_TYPE__ long long unsigned int
736 // MIPSN32BE: #define __UINT_LEAST8_FMTX__ "hhX"
737 // MIPSN32BE: #define __UINT_LEAST8_FMTo__ "hho"
738 // MIPSN32BE: #define __UINT_LEAST8_FMTu__ "hhu"
739 // MIPSN32BE: #define __UINT_LEAST8_FMTx__ "hhx"
740 // MIPSN32BE: #define __UINT_LEAST8_MAX__ 255
741 // MIPSN32BE: #define __UINT_LEAST8_TYPE__ unsigned char
742 // MIPSN32BE: #define __USER_LABEL_PREFIX__
743 // MIPSN32BE: #define __WCHAR_MAX__ 2147483647
744 // MIPSN32BE: #define __WCHAR_TYPE__ int
745 // MIPSN32BE: #define __WCHAR_WIDTH__ 32
746 // MIPSN32BE: #define __WINT_TYPE__ int
747 // MIPSN32BE: #define __WINT_WIDTH__ 32
748 // MIPSN32BE: #define __clang__ 1
749 // MIPSN32BE: #define __llvm__ 1
750 // MIPSN32BE: #define __mips 64
751 // MIPSN32BE: #define __mips64 1
752 // MIPSN32BE: #define __mips64__ 1
753 // MIPSN32BE: #define __mips__ 1
754 // MIPSN32BE: #define __mips_abicalls 1
755 // MIPSN32BE: #define __mips_fpr 64
756 // MIPSN32BE: #define __mips_hard_float 1
757 // MIPSN32BE: #define __mips_isa_rev 2
758 // MIPSN32BE: #define __mips_n32 1
759 // MIPSN32BE: #define _mips 1
760 // MIPSN32BE: #define mips 1
761 
762 // RUN: %clang_cc1 -E -dM -ffreestanding -fgnuc-version=4.2.1 \
763 // RUN:            -triple=mips64el-none-none -target-abi n32 < /dev/null \
764 // RUN:   | FileCheck -match-full-lines -check-prefix MIPSN32EL %s
765 //
766 // MIPSN32EL: #define MIPSEL 1
767 // MIPSN32EL: #define _ABIN32 2
768 // MIPSN32EL: #define _ILP32 1
769 // MIPSN32EL: #define _MIPSEL 1
770 // MIPSN32EL: #define _MIPS_ARCH "mips64r2"
771 // MIPSN32EL: #define _MIPS_ARCH_MIPS64R2 1
772 // MIPSN32EL: #define _MIPS_FPSET 32
773 // MIPSN32EL: #define _MIPS_ISA _MIPS_ISA_MIPS64
774 // MIPSN32EL: #define _MIPS_SIM _ABIN32
775 // MIPSN32EL: #define _MIPS_SPFPSET 32
776 // MIPSN32EL: #define _MIPS_SZINT 32
777 // MIPSN32EL: #define _MIPS_SZLONG 32
778 // MIPSN32EL: #define _MIPS_SZPTR 32
779 // MIPSN32EL: #define __ATOMIC_ACQUIRE 2
780 // MIPSN32EL: #define __ATOMIC_ACQ_REL 4
781 // MIPSN32EL: #define __ATOMIC_CONSUME 1
782 // MIPSN32EL: #define __ATOMIC_RELAXED 0
783 // MIPSN32EL: #define __ATOMIC_RELEASE 3
784 // MIPSN32EL: #define __ATOMIC_SEQ_CST 5
785 // MIPSN32EL: #define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
786 // MIPSN32EL: #define __CHAR16_TYPE__ unsigned short
787 // MIPSN32EL: #define __CHAR32_TYPE__ unsigned int
788 // MIPSN32EL: #define __CHAR_BIT__ 8
789 // MIPSN32EL: #define __CONSTANT_CFSTRINGS__ 1
790 // MIPSN32EL: #define __DBL_DENORM_MIN__ 4.9406564584124654e-324
791 // MIPSN32EL: #define __DBL_DIG__ 15
792 // MIPSN32EL: #define __DBL_EPSILON__ 2.2204460492503131e-16
793 // MIPSN32EL: #define __DBL_HAS_DENORM__ 1
794 // MIPSN32EL: #define __DBL_HAS_INFINITY__ 1
795 // MIPSN32EL: #define __DBL_HAS_QUIET_NAN__ 1
796 // MIPSN32EL: #define __DBL_MANT_DIG__ 53
797 // MIPSN32EL: #define __DBL_MAX_10_EXP__ 308
798 // MIPSN32EL: #define __DBL_MAX_EXP__ 1024
799 // MIPSN32EL: #define __DBL_MAX__ 1.7976931348623157e+308
800 // MIPSN32EL: #define __DBL_MIN_10_EXP__ (-307)
801 // MIPSN32EL: #define __DBL_MIN_EXP__ (-1021)
802 // MIPSN32EL: #define __DBL_MIN__ 2.2250738585072014e-308
803 // MIPSN32EL: #define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
804 // MIPSN32EL: #define __FINITE_MATH_ONLY__ 0
805 // MIPSN32EL: #define __FLT_DENORM_MIN__ 1.40129846e-45F
806 // MIPSN32EL: #define __FLT_DIG__ 6
807 // MIPSN32EL: #define __FLT_EPSILON__ 1.19209290e-7F
808 // MIPSN32EL: #define __FLT_HAS_DENORM__ 1
809 // MIPSN32EL: #define __FLT_HAS_INFINITY__ 1
810 // MIPSN32EL: #define __FLT_HAS_QUIET_NAN__ 1
811 // MIPSN32EL: #define __FLT_MANT_DIG__ 24
812 // MIPSN32EL: #define __FLT_MAX_10_EXP__ 38
813 // MIPSN32EL: #define __FLT_MAX_EXP__ 128
814 // MIPSN32EL: #define __FLT_MAX__ 3.40282347e+38F
815 // MIPSN32EL: #define __FLT_MIN_10_EXP__ (-37)
816 // MIPSN32EL: #define __FLT_MIN_EXP__ (-125)
817 // MIPSN32EL: #define __FLT_MIN__ 1.17549435e-38F
818 // MIPSN32EL: #define __FLT_RADIX__ 2
819 // MIPSN32EL: #define __GCC_ATOMIC_BOOL_LOCK_FREE 2
820 // MIPSN32EL: #define __GCC_ATOMIC_CHAR16_T_LOCK_FREE 2
821 // MIPSN32EL: #define __GCC_ATOMIC_CHAR32_T_LOCK_FREE 2
822 // MIPSN32EL: #define __GCC_ATOMIC_CHAR_LOCK_FREE 2
823 // MIPSN32EL: #define __GCC_ATOMIC_INT_LOCK_FREE 2
824 // MIPSN32EL: #define __GCC_ATOMIC_LLONG_LOCK_FREE 2
825 // MIPSN32EL: #define __GCC_ATOMIC_LONG_LOCK_FREE 2
826 // MIPSN32EL: #define __GCC_ATOMIC_POINTER_LOCK_FREE 2
827 // MIPSN32EL: #define __GCC_ATOMIC_SHORT_LOCK_FREE 2
828 // MIPSN32EL: #define __GCC_ATOMIC_TEST_AND_SET_TRUEVAL 1
829 // MIPSN32EL: #define __GCC_ATOMIC_WCHAR_T_LOCK_FREE 2
830 // MIPSN32EL: #define __GNUC_MINOR__ 2
831 // MIPSN32EL: #define __GNUC_PATCHLEVEL__ 1
832 // MIPSN32EL: #define __GNUC_STDC_INLINE__ 1
833 // MIPSN32EL: #define __GNUC__ 4
834 // MIPSN32EL: #define __GXX_ABI_VERSION 1002
835 // MIPSN32EL: #define __ILP32__ 1
836 // MIPSN32EL: #define __INT16_C(c) c
837 // MIPSN32EL: #define __INT16_C_SUFFIX__
838 // MIPSN32EL: #define __INT16_FMTd__ "hd"
839 // MIPSN32EL: #define __INT16_FMTi__ "hi"
840 // MIPSN32EL: #define __INT16_MAX__ 32767
841 // MIPSN32EL: #define __INT16_TYPE__ short
842 // MIPSN32EL: #define __INT32_C(c) c
843 // MIPSN32EL: #define __INT32_C_SUFFIX__
844 // MIPSN32EL: #define __INT32_FMTd__ "d"
845 // MIPSN32EL: #define __INT32_FMTi__ "i"
846 // MIPSN32EL: #define __INT32_MAX__ 2147483647
847 // MIPSN32EL: #define __INT32_TYPE__ int
848 // MIPSN32EL: #define __INT64_C(c) c##LL
849 // MIPSN32EL: #define __INT64_C_SUFFIX__ LL
850 // MIPSN32EL: #define __INT64_FMTd__ "lld"
851 // MIPSN32EL: #define __INT64_FMTi__ "lli"
852 // MIPSN32EL: #define __INT64_MAX__ 9223372036854775807LL
853 // MIPSN32EL: #define __INT64_TYPE__ long long int
854 // MIPSN32EL: #define __INT8_C(c) c
855 // MIPSN32EL: #define __INT8_C_SUFFIX__
856 // MIPSN32EL: #define __INT8_FMTd__ "hhd"
857 // MIPSN32EL: #define __INT8_FMTi__ "hhi"
858 // MIPSN32EL: #define __INT8_MAX__ 127
859 // MIPSN32EL: #define __INT8_TYPE__ signed char
860 // MIPSN32EL: #define __INTMAX_C(c) c##LL
861 // MIPSN32EL: #define __INTMAX_C_SUFFIX__ LL
862 // MIPSN32EL: #define __INTMAX_FMTd__ "lld"
863 // MIPSN32EL: #define __INTMAX_FMTi__ "lli"
864 // MIPSN32EL: #define __INTMAX_MAX__ 9223372036854775807LL
865 // MIPSN32EL: #define __INTMAX_TYPE__ long long int
866 // MIPSN32EL: #define __INTMAX_WIDTH__ 64
867 // MIPSN32EL: #define __INTPTR_FMTd__ "ld"
868 // MIPSN32EL: #define __INTPTR_FMTi__ "li"
869 // MIPSN32EL: #define __INTPTR_MAX__ 2147483647L
870 // MIPSN32EL: #define __INTPTR_TYPE__ long int
871 // MIPSN32EL: #define __INTPTR_WIDTH__ 32
872 // MIPSN32EL: #define __INT_FAST16_FMTd__ "hd"
873 // MIPSN32EL: #define __INT_FAST16_FMTi__ "hi"
874 // MIPSN32EL: #define __INT_FAST16_MAX__ 32767
875 // MIPSN32EL: #define __INT_FAST16_TYPE__ short
876 // MIPSN32EL: #define __INT_FAST32_FMTd__ "d"
877 // MIPSN32EL: #define __INT_FAST32_FMTi__ "i"
878 // MIPSN32EL: #define __INT_FAST32_MAX__ 2147483647
879 // MIPSN32EL: #define __INT_FAST32_TYPE__ int
880 // MIPSN32EL: #define __INT_FAST64_FMTd__ "lld"
881 // MIPSN32EL: #define __INT_FAST64_FMTi__ "lli"
882 // MIPSN32EL: #define __INT_FAST64_MAX__ 9223372036854775807LL
883 // MIPSN32EL: #define __INT_FAST64_TYPE__ long long int
884 // MIPSN32EL: #define __INT_FAST8_FMTd__ "hhd"
885 // MIPSN32EL: #define __INT_FAST8_FMTi__ "hhi"
886 // MIPSN32EL: #define __INT_FAST8_MAX__ 127
887 // MIPSN32EL: #define __INT_FAST8_TYPE__ signed char
888 // MIPSN32EL: #define __INT_LEAST16_FMTd__ "hd"
889 // MIPSN32EL: #define __INT_LEAST16_FMTi__ "hi"
890 // MIPSN32EL: #define __INT_LEAST16_MAX__ 32767
891 // MIPSN32EL: #define __INT_LEAST16_TYPE__ short
892 // MIPSN32EL: #define __INT_LEAST32_FMTd__ "d"
893 // MIPSN32EL: #define __INT_LEAST32_FMTi__ "i"
894 // MIPSN32EL: #define __INT_LEAST32_MAX__ 2147483647
895 // MIPSN32EL: #define __INT_LEAST32_TYPE__ int
896 // MIPSN32EL: #define __INT_LEAST64_FMTd__ "lld"
897 // MIPSN32EL: #define __INT_LEAST64_FMTi__ "lli"
898 // MIPSN32EL: #define __INT_LEAST64_MAX__ 9223372036854775807LL
899 // MIPSN32EL: #define __INT_LEAST64_TYPE__ long long int
900 // MIPSN32EL: #define __INT_LEAST8_FMTd__ "hhd"
901 // MIPSN32EL: #define __INT_LEAST8_FMTi__ "hhi"
902 // MIPSN32EL: #define __INT_LEAST8_MAX__ 127
903 // MIPSN32EL: #define __INT_LEAST8_TYPE__ signed char
904 // MIPSN32EL: #define __INT_MAX__ 2147483647
905 // MIPSN32EL: #define __LDBL_DENORM_MIN__ 6.47517511943802511092443895822764655e-4966L
906 // MIPSN32EL: #define __LDBL_DIG__ 33
907 // MIPSN32EL: #define __LDBL_EPSILON__ 1.92592994438723585305597794258492732e-34L
908 // MIPSN32EL: #define __LDBL_HAS_DENORM__ 1
909 // MIPSN32EL: #define __LDBL_HAS_INFINITY__ 1
910 // MIPSN32EL: #define __LDBL_HAS_QUIET_NAN__ 1
911 // MIPSN32EL: #define __LDBL_MANT_DIG__ 113
912 // MIPSN32EL: #define __LDBL_MAX_10_EXP__ 4932
913 // MIPSN32EL: #define __LDBL_MAX_EXP__ 16384
914 // MIPSN32EL: #define __LDBL_MAX__ 1.18973149535723176508575932662800702e+4932L
915 // MIPSN32EL: #define __LDBL_MIN_10_EXP__ (-4931)
916 // MIPSN32EL: #define __LDBL_MIN_EXP__ (-16381)
917 // MIPSN32EL: #define __LDBL_MIN__ 3.36210314311209350626267781732175260e-4932L
918 // MIPSN32EL: #define __LITTLE_ENDIAN__ 1
919 // MIPSN32EL: #define __LONG_LONG_MAX__ 9223372036854775807LL
920 // MIPSN32EL: #define __LONG_MAX__ 2147483647L
921 // MIPSN32EL: #define __MIPSEL 1
922 // MIPSN32EL: #define __MIPSEL__ 1
923 // MIPSN32EL: #define __NO_INLINE__ 1
924 // MIPSN32EL: #define __ORDER_BIG_ENDIAN__ 4321
925 // MIPSN32EL: #define __ORDER_LITTLE_ENDIAN__ 1234
926 // MIPSN32EL: #define __ORDER_PDP_ENDIAN__ 3412
927 // MIPSN32EL: #define __POINTER_WIDTH__ 32
928 // MIPSN32EL: #define __PRAGMA_REDEFINE_EXTNAME 1
929 // MIPSN32EL: #define __PTRDIFF_FMTd__ "d"
930 // MIPSN32EL: #define __PTRDIFF_FMTi__ "i"
931 // MIPSN32EL: #define __PTRDIFF_MAX__ 2147483647
932 // MIPSN32EL: #define __PTRDIFF_TYPE__ int
933 // MIPSN32EL: #define __PTRDIFF_WIDTH__ 32
934 // MIPSN32EL: #define __REGISTER_PREFIX__
935 // MIPSN32EL: #define __SCHAR_MAX__ 127
936 // MIPSN32EL: #define __SHRT_MAX__ 32767
937 // MIPSN32EL: #define __SIG_ATOMIC_MAX__ 2147483647
938 // MIPSN32EL: #define __SIG_ATOMIC_WIDTH__ 32
939 // MIPSN32EL: #define __SIZEOF_DOUBLE__ 8
940 // MIPSN32EL: #define __SIZEOF_FLOAT__ 4
941 // MIPSN32EL: #define __SIZEOF_INT__ 4
942 // MIPSN32EL: #define __SIZEOF_LONG_DOUBLE__ 16
943 // MIPSN32EL: #define __SIZEOF_LONG_LONG__ 8
944 // MIPSN32EL: #define __SIZEOF_LONG__ 4
945 // MIPSN32EL: #define __SIZEOF_POINTER__ 4
946 // MIPSN32EL: #define __SIZEOF_PTRDIFF_T__ 4
947 // MIPSN32EL: #define __SIZEOF_SHORT__ 2
948 // MIPSN32EL: #define __SIZEOF_SIZE_T__ 4
949 // MIPSN32EL: #define __SIZEOF_WCHAR_T__ 4
950 // MIPSN32EL: #define __SIZEOF_WINT_T__ 4
951 // MIPSN32EL: #define __SIZE_FMTX__ "X"
952 // MIPSN32EL: #define __SIZE_FMTo__ "o"
953 // MIPSN32EL: #define __SIZE_FMTu__ "u"
954 // MIPSN32EL: #define __SIZE_FMTx__ "x"
955 // MIPSN32EL: #define __SIZE_MAX__ 4294967295U
956 // MIPSN32EL: #define __SIZE_TYPE__ unsigned int
957 // MIPSN32EL: #define __SIZE_WIDTH__ 32
958 // MIPSN32EL: #define __STDC_HOSTED__ 0
959 // MIPSN32EL: #define __STDC_UTF_16__ 1
960 // MIPSN32EL: #define __STDC_UTF_32__ 1
961 // MIPSN32EL: #define __STDC_VERSION__ 201710L
962 // MIPSN32EL: #define __STDC__ 1
963 // MIPSN32EL: #define __UINT16_C(c) c
964 // MIPSN32EL: #define __UINT16_C_SUFFIX__
965 // MIPSN32EL: #define __UINT16_FMTX__ "hX"
966 // MIPSN32EL: #define __UINT16_FMTo__ "ho"
967 // MIPSN32EL: #define __UINT16_FMTu__ "hu"
968 // MIPSN32EL: #define __UINT16_FMTx__ "hx"
969 // MIPSN32EL: #define __UINT16_MAX__ 65535
970 // MIPSN32EL: #define __UINT16_TYPE__ unsigned short
971 // MIPSN32EL: #define __UINT32_C(c) c##U
972 // MIPSN32EL: #define __UINT32_C_SUFFIX__ U
973 // MIPSN32EL: #define __UINT32_FMTX__ "X"
974 // MIPSN32EL: #define __UINT32_FMTo__ "o"
975 // MIPSN32EL: #define __UINT32_FMTu__ "u"
976 // MIPSN32EL: #define __UINT32_FMTx__ "x"
977 // MIPSN32EL: #define __UINT32_MAX__ 4294967295U
978 // MIPSN32EL: #define __UINT32_TYPE__ unsigned int
979 // MIPSN32EL: #define __UINT64_C(c) c##ULL
980 // MIPSN32EL: #define __UINT64_C_SUFFIX__ ULL
981 // MIPSN32EL: #define __UINT64_FMTX__ "llX"
982 // MIPSN32EL: #define __UINT64_FMTo__ "llo"
983 // MIPSN32EL: #define __UINT64_FMTu__ "llu"
984 // MIPSN32EL: #define __UINT64_FMTx__ "llx"
985 // MIPSN32EL: #define __UINT64_MAX__ 18446744073709551615ULL
986 // MIPSN32EL: #define __UINT64_TYPE__ long long unsigned int
987 // MIPSN32EL: #define __UINT8_C(c) c
988 // MIPSN32EL: #define __UINT8_C_SUFFIX__
989 // MIPSN32EL: #define __UINT8_FMTX__ "hhX"
990 // MIPSN32EL: #define __UINT8_FMTo__ "hho"
991 // MIPSN32EL: #define __UINT8_FMTu__ "hhu"
992 // MIPSN32EL: #define __UINT8_FMTx__ "hhx"
993 // MIPSN32EL: #define __UINT8_MAX__ 255
994 // MIPSN32EL: #define __UINT8_TYPE__ unsigned char
995 // MIPSN32EL: #define __UINTMAX_C(c) c##ULL
996 // MIPSN32EL: #define __UINTMAX_C_SUFFIX__ ULL
997 // MIPSN32EL: #define __UINTMAX_FMTX__ "llX"
998 // MIPSN32EL: #define __UINTMAX_FMTo__ "llo"
999 // MIPSN32EL: #define __UINTMAX_FMTu__ "llu"
1000 // MIPSN32EL: #define __UINTMAX_FMTx__ "llx"
1001 // MIPSN32EL: #define __UINTMAX_MAX__ 18446744073709551615ULL
1002 // MIPSN32EL: #define __UINTMAX_TYPE__ long long unsigned int
1003 // MIPSN32EL: #define __UINTMAX_WIDTH__ 64
1004 // MIPSN32EL: #define __UINTPTR_FMTX__ "lX"
1005 // MIPSN32EL: #define __UINTPTR_FMTo__ "lo"
1006 // MIPSN32EL: #define __UINTPTR_FMTu__ "lu"
1007 // MIPSN32EL: #define __UINTPTR_FMTx__ "lx"
1008 // MIPSN32EL: #define __UINTPTR_MAX__ 4294967295UL
1009 // MIPSN32EL: #define __UINTPTR_TYPE__ long unsigned int
1010 // MIPSN32EL: #define __UINTPTR_WIDTH__ 32
1011 // MIPSN32EL: #define __UINT_FAST16_FMTX__ "hX"
1012 // MIPSN32EL: #define __UINT_FAST16_FMTo__ "ho"
1013 // MIPSN32EL: #define __UINT_FAST16_FMTu__ "hu"
1014 // MIPSN32EL: #define __UINT_FAST16_FMTx__ "hx"
1015 // MIPSN32EL: #define __UINT_FAST16_MAX__ 65535
1016 // MIPSN32EL: #define __UINT_FAST16_TYPE__ unsigned short
1017 // MIPSN32EL: #define __UINT_FAST32_FMTX__ "X"
1018 // MIPSN32EL: #define __UINT_FAST32_FMTo__ "o"
1019 // MIPSN32EL: #define __UINT_FAST32_FMTu__ "u"
1020 // MIPSN32EL: #define __UINT_FAST32_FMTx__ "x"
1021 // MIPSN32EL: #define __UINT_FAST32_MAX__ 4294967295U
1022 // MIPSN32EL: #define __UINT_FAST32_TYPE__ unsigned int
1023 // MIPSN32EL: #define __UINT_FAST64_FMTX__ "llX"
1024 // MIPSN32EL: #define __UINT_FAST64_FMTo__ "llo"
1025 // MIPSN32EL: #define __UINT_FAST64_FMTu__ "llu"
1026 // MIPSN32EL: #define __UINT_FAST64_FMTx__ "llx"
1027 // MIPSN32EL: #define __UINT_FAST64_MAX__ 18446744073709551615ULL
1028 // MIPSN32EL: #define __UINT_FAST64_TYPE__ long long unsigned int
1029 // MIPSN32EL: #define __UINT_FAST8_FMTX__ "hhX"
1030 // MIPSN32EL: #define __UINT_FAST8_FMTo__ "hho"
1031 // MIPSN32EL: #define __UINT_FAST8_FMTu__ "hhu"
1032 // MIPSN32EL: #define __UINT_FAST8_FMTx__ "hhx"
1033 // MIPSN32EL: #define __UINT_FAST8_MAX__ 255
1034 // MIPSN32EL: #define __UINT_FAST8_TYPE__ unsigned char
1035 // MIPSN32EL: #define __UINT_LEAST16_FMTX__ "hX"
1036 // MIPSN32EL: #define __UINT_LEAST16_FMTo__ "ho"
1037 // MIPSN32EL: #define __UINT_LEAST16_FMTu__ "hu"
1038 // MIPSN32EL: #define __UINT_LEAST16_FMTx__ "hx"
1039 // MIPSN32EL: #define __UINT_LEAST16_MAX__ 65535
1040 // MIPSN32EL: #define __UINT_LEAST16_TYPE__ unsigned short
1041 // MIPSN32EL: #define __UINT_LEAST32_FMTX__ "X"
1042 // MIPSN32EL: #define __UINT_LEAST32_FMTo__ "o"
1043 // MIPSN32EL: #define __UINT_LEAST32_FMTu__ "u"
1044 // MIPSN32EL: #define __UINT_LEAST32_FMTx__ "x"
1045 // MIPSN32EL: #define __UINT_LEAST32_MAX__ 4294967295U
1046 // MIPSN32EL: #define __UINT_LEAST32_TYPE__ unsigned int
1047 // MIPSN32EL: #define __UINT_LEAST64_FMTX__ "llX"
1048 // MIPSN32EL: #define __UINT_LEAST64_FMTo__ "llo"
1049 // MIPSN32EL: #define __UINT_LEAST64_FMTu__ "llu"
1050 // MIPSN32EL: #define __UINT_LEAST64_FMTx__ "llx"
1051 // MIPSN32EL: #define __UINT_LEAST64_MAX__ 18446744073709551615ULL
1052 // MIPSN32EL: #define __UINT_LEAST64_TYPE__ long long unsigned int
1053 // MIPSN32EL: #define __UINT_LEAST8_FMTX__ "hhX"
1054 // MIPSN32EL: #define __UINT_LEAST8_FMTo__ "hho"
1055 // MIPSN32EL: #define __UINT_LEAST8_FMTu__ "hhu"
1056 // MIPSN32EL: #define __UINT_LEAST8_FMTx__ "hhx"
1057 // MIPSN32EL: #define __UINT_LEAST8_MAX__ 255
1058 // MIPSN32EL: #define __UINT_LEAST8_TYPE__ unsigned char
1059 // MIPSN32EL: #define __USER_LABEL_PREFIX__
1060 // MIPSN32EL: #define __WCHAR_MAX__ 2147483647
1061 // MIPSN32EL: #define __WCHAR_TYPE__ int
1062 // MIPSN32EL: #define __WCHAR_WIDTH__ 32
1063 // MIPSN32EL: #define __WINT_TYPE__ int
1064 // MIPSN32EL: #define __WINT_WIDTH__ 32
1065 // MIPSN32EL: #define __clang__ 1
1066 // MIPSN32EL: #define __llvm__ 1
1067 // MIPSN32EL: #define __mips 64
1068 // MIPSN32EL: #define __mips64 1
1069 // MIPSN32EL: #define __mips64__ 1
1070 // MIPSN32EL: #define __mips__ 1
1071 // MIPSN32EL: #define __mips_abicalls 1
1072 // MIPSN32EL: #define __mips_fpr 64
1073 // MIPSN32EL: #define __mips_hard_float 1
1074 // MIPSN32EL: #define __mips_isa_rev 2
1075 // MIPSN32EL: #define __mips_n32 1
1076 // MIPSN32EL: #define _mips 1
1077 // MIPSN32EL: #define mips 1
1078 
1079 // RUN: %clang_cc1 -E -dM -ffreestanding -fgnuc-version=4.2.1 -triple=mips64-none-none < /dev/null | FileCheck -match-full-lines -check-prefix MIPS64BE %s
1080 // RUN: %clang_cc1 -x c++ -E -dM -ffreestanding -fgnuc-version=4.2.1 -triple=mips64-none-none < /dev/null | FileCheck -match-full-lines -check-prefix MIPS64BE -check-prefix MIPS64BE-CXX %s
1081 //
1082 // MIPS64BE:#define MIPSEB 1
1083 // MIPS64BE:#define _ABI64 3
1084 // MIPS64BE:#define _LP64 1
1085 // MIPS64BE:#define _MIPSEB 1
1086 // MIPS64BE:#define _MIPS_ARCH "mips64r2"
1087 // MIPS64BE:#define _MIPS_ARCH_MIPS64R2 1
1088 // MIPS64BE:#define _MIPS_FPSET 32
1089 // MIPS64BE:#define _MIPS_SIM _ABI64
1090 // MIPS64BE:#define _MIPS_SPFPSET 32
1091 // MIPS64BE:#define _MIPS_SZINT 32
1092 // MIPS64BE:#define _MIPS_SZLONG 64
1093 // MIPS64BE:#define _MIPS_SZPTR 64
1094 // MIPS64BE:#define __BIGGEST_ALIGNMENT__ 16
1095 // MIPS64BE:#define __BIG_ENDIAN__ 1
1096 // MIPS64BE:#define __BYTE_ORDER__ __ORDER_BIG_ENDIAN__
1097 // MIPS64BE:#define __CHAR16_TYPE__ unsigned short
1098 // MIPS64BE:#define __CHAR32_TYPE__ unsigned int
1099 // MIPS64BE:#define __CHAR_BIT__ 8
1100 // MIPS64BE:#define __CONSTANT_CFSTRINGS__ 1
1101 // MIPS64BE:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
1102 // MIPS64BE:#define __DBL_DIG__ 15
1103 // MIPS64BE:#define __DBL_EPSILON__ 2.2204460492503131e-16
1104 // MIPS64BE:#define __DBL_HAS_DENORM__ 1
1105 // MIPS64BE:#define __DBL_HAS_INFINITY__ 1
1106 // MIPS64BE:#define __DBL_HAS_QUIET_NAN__ 1
1107 // MIPS64BE:#define __DBL_MANT_DIG__ 53
1108 // MIPS64BE:#define __DBL_MAX_10_EXP__ 308
1109 // MIPS64BE:#define __DBL_MAX_EXP__ 1024
1110 // MIPS64BE:#define __DBL_MAX__ 1.7976931348623157e+308
1111 // MIPS64BE:#define __DBL_MIN_10_EXP__ (-307)
1112 // MIPS64BE:#define __DBL_MIN_EXP__ (-1021)
1113 // MIPS64BE:#define __DBL_MIN__ 2.2250738585072014e-308
1114 // MIPS64BE:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
1115 // MIPS64BE:#define __FLT_DENORM_MIN__ 1.40129846e-45F
1116 // MIPS64BE:#define __FLT_DIG__ 6
1117 // MIPS64BE:#define __FLT_EPSILON__ 1.19209290e-7F
1118 // MIPS64BE:#define __FLT_HAS_DENORM__ 1
1119 // MIPS64BE:#define __FLT_HAS_INFINITY__ 1
1120 // MIPS64BE:#define __FLT_HAS_QUIET_NAN__ 1
1121 // MIPS64BE:#define __FLT_MANT_DIG__ 24
1122 // MIPS64BE:#define __FLT_MAX_10_EXP__ 38
1123 // MIPS64BE:#define __FLT_MAX_EXP__ 128
1124 // MIPS64BE:#define __FLT_MAX__ 3.40282347e+38F
1125 // MIPS64BE:#define __FLT_MIN_10_EXP__ (-37)
1126 // MIPS64BE:#define __FLT_MIN_EXP__ (-125)
1127 // MIPS64BE:#define __FLT_MIN__ 1.17549435e-38F
1128 // MIPS64BE:#define __FLT_RADIX__ 2
1129 // MIPS64BE:#define __INT16_C(c) c
1130 // MIPS64BE:#define __INT16_C_SUFFIX__
1131 // MIPS64BE:#define __INT16_FMTd__ "hd"
1132 // MIPS64BE:#define __INT16_FMTi__ "hi"
1133 // MIPS64BE:#define __INT16_MAX__ 32767
1134 // MIPS64BE:#define __INT16_TYPE__ short
1135 // MIPS64BE:#define __INT32_C(c) c
1136 // MIPS64BE:#define __INT32_C_SUFFIX__
1137 // MIPS64BE:#define __INT32_FMTd__ "d"
1138 // MIPS64BE:#define __INT32_FMTi__ "i"
1139 // MIPS64BE:#define __INT32_MAX__ 2147483647
1140 // MIPS64BE:#define __INT32_TYPE__ int
1141 // MIPS64BE:#define __INT64_C(c) c##L
1142 // MIPS64BE:#define __INT64_C_SUFFIX__ L
1143 // MIPS64BE:#define __INT64_FMTd__ "ld"
1144 // MIPS64BE:#define __INT64_FMTi__ "li"
1145 // MIPS64BE:#define __INT64_MAX__ 9223372036854775807L
1146 // MIPS64BE:#define __INT64_TYPE__ long int
1147 // MIPS64BE:#define __INT8_C(c) c
1148 // MIPS64BE:#define __INT8_C_SUFFIX__
1149 // MIPS64BE:#define __INT8_FMTd__ "hhd"
1150 // MIPS64BE:#define __INT8_FMTi__ "hhi"
1151 // MIPS64BE:#define __INT8_MAX__ 127
1152 // MIPS64BE:#define __INT8_TYPE__ signed char
1153 // MIPS64BE:#define __INTMAX_C(c) c##L
1154 // MIPS64BE:#define __INTMAX_C_SUFFIX__ L
1155 // MIPS64BE:#define __INTMAX_FMTd__ "ld"
1156 // MIPS64BE:#define __INTMAX_FMTi__ "li"
1157 // MIPS64BE:#define __INTMAX_MAX__ 9223372036854775807L
1158 // MIPS64BE:#define __INTMAX_TYPE__ long int
1159 // MIPS64BE:#define __INTMAX_WIDTH__ 64
1160 // MIPS64BE:#define __INTPTR_FMTd__ "ld"
1161 // MIPS64BE:#define __INTPTR_FMTi__ "li"
1162 // MIPS64BE:#define __INTPTR_MAX__ 9223372036854775807L
1163 // MIPS64BE:#define __INTPTR_TYPE__ long int
1164 // MIPS64BE:#define __INTPTR_WIDTH__ 64
1165 // MIPS64BE:#define __INT_FAST16_FMTd__ "hd"
1166 // MIPS64BE:#define __INT_FAST16_FMTi__ "hi"
1167 // MIPS64BE:#define __INT_FAST16_MAX__ 32767
1168 // MIPS64BE:#define __INT_FAST16_TYPE__ short
1169 // MIPS64BE:#define __INT_FAST32_FMTd__ "d"
1170 // MIPS64BE:#define __INT_FAST32_FMTi__ "i"
1171 // MIPS64BE:#define __INT_FAST32_MAX__ 2147483647
1172 // MIPS64BE:#define __INT_FAST32_TYPE__ int
1173 // MIPS64BE:#define __INT_FAST64_FMTd__ "ld"
1174 // MIPS64BE:#define __INT_FAST64_FMTi__ "li"
1175 // MIPS64BE:#define __INT_FAST64_MAX__ 9223372036854775807L
1176 // MIPS64BE:#define __INT_FAST64_TYPE__ long int
1177 // MIPS64BE:#define __INT_FAST8_FMTd__ "hhd"
1178 // MIPS64BE:#define __INT_FAST8_FMTi__ "hhi"
1179 // MIPS64BE:#define __INT_FAST8_MAX__ 127
1180 // MIPS64BE:#define __INT_FAST8_TYPE__ signed char
1181 // MIPS64BE:#define __INT_LEAST16_FMTd__ "hd"
1182 // MIPS64BE:#define __INT_LEAST16_FMTi__ "hi"
1183 // MIPS64BE:#define __INT_LEAST16_MAX__ 32767
1184 // MIPS64BE:#define __INT_LEAST16_TYPE__ short
1185 // MIPS64BE:#define __INT_LEAST32_FMTd__ "d"
1186 // MIPS64BE:#define __INT_LEAST32_FMTi__ "i"
1187 // MIPS64BE:#define __INT_LEAST32_MAX__ 2147483647
1188 // MIPS64BE:#define __INT_LEAST32_TYPE__ int
1189 // MIPS64BE:#define __INT_LEAST64_FMTd__ "ld"
1190 // MIPS64BE:#define __INT_LEAST64_FMTi__ "li"
1191 // MIPS64BE:#define __INT_LEAST64_MAX__ 9223372036854775807L
1192 // MIPS64BE:#define __INT_LEAST64_TYPE__ long int
1193 // MIPS64BE:#define __INT_LEAST8_FMTd__ "hhd"
1194 // MIPS64BE:#define __INT_LEAST8_FMTi__ "hhi"
1195 // MIPS64BE:#define __INT_LEAST8_MAX__ 127
1196 // MIPS64BE:#define __INT_LEAST8_TYPE__ signed char
1197 // MIPS64BE:#define __INT_MAX__ 2147483647
1198 // MIPS64BE:#define __LDBL_DENORM_MIN__ 6.47517511943802511092443895822764655e-4966L
1199 // MIPS64BE:#define __LDBL_DIG__ 33
1200 // MIPS64BE:#define __LDBL_EPSILON__ 1.92592994438723585305597794258492732e-34L
1201 // MIPS64BE:#define __LDBL_HAS_DENORM__ 1
1202 // MIPS64BE:#define __LDBL_HAS_INFINITY__ 1
1203 // MIPS64BE:#define __LDBL_HAS_QUIET_NAN__ 1
1204 // MIPS64BE:#define __LDBL_MANT_DIG__ 113
1205 // MIPS64BE:#define __LDBL_MAX_10_EXP__ 4932
1206 // MIPS64BE:#define __LDBL_MAX_EXP__ 16384
1207 // MIPS64BE:#define __LDBL_MAX__ 1.18973149535723176508575932662800702e+4932L
1208 // MIPS64BE:#define __LDBL_MIN_10_EXP__ (-4931)
1209 // MIPS64BE:#define __LDBL_MIN_EXP__ (-16381)
1210 // MIPS64BE:#define __LDBL_MIN__ 3.36210314311209350626267781732175260e-4932L
1211 // MIPS64BE:#define __LONG_LONG_MAX__ 9223372036854775807LL
1212 // MIPS64BE:#define __LONG_MAX__ 9223372036854775807L
1213 // MIPS64BE:#define __LP64__ 1
1214 // MIPS64BE:#define __MIPSEB 1
1215 // MIPS64BE:#define __MIPSEB__ 1
1216 // MIPS64BE:#define __POINTER_WIDTH__ 64
1217 // MIPS64BE:#define __PRAGMA_REDEFINE_EXTNAME 1
1218 // MIPS64BE:#define __PTRDIFF_TYPE__ long int
1219 // MIPS64BE:#define __PTRDIFF_WIDTH__ 64
1220 // MIPS64BE:#define __REGISTER_PREFIX__
1221 // MIPS64BE:#define __SCHAR_MAX__ 127
1222 // MIPS64BE:#define __SHRT_MAX__ 32767
1223 // MIPS64BE:#define __SIG_ATOMIC_MAX__ 2147483647
1224 // MIPS64BE:#define __SIG_ATOMIC_WIDTH__ 32
1225 // MIPS64BE:#define __SIZEOF_DOUBLE__ 8
1226 // MIPS64BE:#define __SIZEOF_FLOAT__ 4
1227 // MIPS64BE:#define __SIZEOF_INT128__ 16
1228 // MIPS64BE:#define __SIZEOF_INT__ 4
1229 // MIPS64BE:#define __SIZEOF_LONG_DOUBLE__ 16
1230 // MIPS64BE:#define __SIZEOF_LONG_LONG__ 8
1231 // MIPS64BE:#define __SIZEOF_LONG__ 8
1232 // MIPS64BE:#define __SIZEOF_POINTER__ 8
1233 // MIPS64BE:#define __SIZEOF_PTRDIFF_T__ 8
1234 // MIPS64BE:#define __SIZEOF_SHORT__ 2
1235 // MIPS64BE:#define __SIZEOF_SIZE_T__ 8
1236 // MIPS64BE:#define __SIZEOF_WCHAR_T__ 4
1237 // MIPS64BE:#define __SIZEOF_WINT_T__ 4
1238 // MIPS64BE:#define __SIZE_MAX__ 18446744073709551615UL
1239 // MIPS64BE:#define __SIZE_TYPE__ long unsigned int
1240 // MIPS64BE:#define __SIZE_WIDTH__ 64
1241 // MIPS64BE-CXX:#define __STDCPP_DEFAULT_NEW_ALIGNMENT__ 16UL
1242 // MIPS64BE:#define __UINT16_C(c) c
1243 // MIPS64BE:#define __UINT16_C_SUFFIX__
1244 // MIPS64BE:#define __UINT16_MAX__ 65535
1245 // MIPS64BE:#define __UINT16_TYPE__ unsigned short
1246 // MIPS64BE:#define __UINT32_C(c) c##U
1247 // MIPS64BE:#define __UINT32_C_SUFFIX__ U
1248 // MIPS64BE:#define __UINT32_MAX__ 4294967295U
1249 // MIPS64BE:#define __UINT32_TYPE__ unsigned int
1250 // MIPS64BE:#define __UINT64_C(c) c##UL
1251 // MIPS64BE:#define __UINT64_C_SUFFIX__ UL
1252 // MIPS64BE:#define __UINT64_MAX__ 18446744073709551615UL
1253 // MIPS64BE:#define __UINT64_TYPE__ long unsigned int
1254 // MIPS64BE:#define __UINT8_C(c) c
1255 // MIPS64BE:#define __UINT8_C_SUFFIX__
1256 // MIPS64BE:#define __UINT8_MAX__ 255
1257 // MIPS64BE:#define __UINT8_TYPE__ unsigned char
1258 // MIPS64BE:#define __UINTMAX_C(c) c##UL
1259 // MIPS64BE:#define __UINTMAX_C_SUFFIX__ UL
1260 // MIPS64BE:#define __UINTMAX_MAX__ 18446744073709551615UL
1261 // MIPS64BE:#define __UINTMAX_TYPE__ long unsigned int
1262 // MIPS64BE:#define __UINTMAX_WIDTH__ 64
1263 // MIPS64BE:#define __UINTPTR_MAX__ 18446744073709551615UL
1264 // MIPS64BE:#define __UINTPTR_TYPE__ long unsigned int
1265 // MIPS64BE:#define __UINTPTR_WIDTH__ 64
1266 // MIPS64BE:#define __UINT_FAST16_MAX__ 65535
1267 // MIPS64BE:#define __UINT_FAST16_TYPE__ unsigned short
1268 // MIPS64BE:#define __UINT_FAST32_MAX__ 4294967295U
1269 // MIPS64BE:#define __UINT_FAST32_TYPE__ unsigned int
1270 // MIPS64BE:#define __UINT_FAST64_MAX__ 18446744073709551615UL
1271 // MIPS64BE:#define __UINT_FAST64_TYPE__ long unsigned int
1272 // MIPS64BE:#define __UINT_FAST8_MAX__ 255
1273 // MIPS64BE:#define __UINT_FAST8_TYPE__ unsigned char
1274 // MIPS64BE:#define __UINT_LEAST16_MAX__ 65535
1275 // MIPS64BE:#define __UINT_LEAST16_TYPE__ unsigned short
1276 // MIPS64BE:#define __UINT_LEAST32_MAX__ 4294967295U
1277 // MIPS64BE:#define __UINT_LEAST32_TYPE__ unsigned int
1278 // MIPS64BE:#define __UINT_LEAST64_MAX__ 18446744073709551615UL
1279 // MIPS64BE:#define __UINT_LEAST64_TYPE__ long unsigned int
1280 // MIPS64BE:#define __UINT_LEAST8_MAX__ 255
1281 // MIPS64BE:#define __UINT_LEAST8_TYPE__ unsigned char
1282 // MIPS64BE:#define __USER_LABEL_PREFIX__
1283 // MIPS64BE:#define __WCHAR_MAX__ 2147483647
1284 // MIPS64BE:#define __WCHAR_TYPE__ int
1285 // MIPS64BE:#define __WCHAR_WIDTH__ 32
1286 // MIPS64BE:#define __WINT_TYPE__ int
1287 // MIPS64BE:#define __WINT_WIDTH__ 32
1288 // MIPS64BE:#define __clang__ 1
1289 // MIPS64BE:#define __llvm__ 1
1290 // MIPS64BE:#define __mips 64
1291 // MIPS64BE:#define __mips64 1
1292 // MIPS64BE:#define __mips64__ 1
1293 // MIPS64BE:#define __mips__ 1
1294 // MIPS64BE:#define __mips_abicalls 1
1295 // MIPS64BE:#define __mips_fpr 64
1296 // MIPS64BE:#define __mips_hard_float 1
1297 // MIPS64BE:#define __mips_n64 1
1298 // MIPS64BE:#define _mips 1
1299 // MIPS64BE:#define mips 1
1300 
1301 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=mips64el-none-none < /dev/null | FileCheck -match-full-lines -check-prefix MIPS64EL %s
1302 //
1303 // MIPS64EL:#define MIPSEL 1
1304 // MIPS64EL:#define _ABI64 3
1305 // MIPS64EL:#define _LP64 1
1306 // MIPS64EL:#define _MIPSEL 1
1307 // MIPS64EL:#define _MIPS_ARCH "mips64r2"
1308 // MIPS64EL:#define _MIPS_ARCH_MIPS64R2 1
1309 // MIPS64EL:#define _MIPS_FPSET 32
1310 // MIPS64EL:#define _MIPS_SIM _ABI64
1311 // MIPS64EL:#define _MIPS_SPFPSET 32
1312 // MIPS64EL:#define _MIPS_SZINT 32
1313 // MIPS64EL:#define _MIPS_SZLONG 64
1314 // MIPS64EL:#define _MIPS_SZPTR 64
1315 // MIPS64EL:#define __BIGGEST_ALIGNMENT__ 16
1316 // MIPS64EL:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
1317 // MIPS64EL:#define __CHAR16_TYPE__ unsigned short
1318 // MIPS64EL:#define __CHAR32_TYPE__ unsigned int
1319 // MIPS64EL:#define __CHAR_BIT__ 8
1320 // MIPS64EL:#define __CONSTANT_CFSTRINGS__ 1
1321 // MIPS64EL:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
1322 // MIPS64EL:#define __DBL_DIG__ 15
1323 // MIPS64EL:#define __DBL_EPSILON__ 2.2204460492503131e-16
1324 // MIPS64EL:#define __DBL_HAS_DENORM__ 1
1325 // MIPS64EL:#define __DBL_HAS_INFINITY__ 1
1326 // MIPS64EL:#define __DBL_HAS_QUIET_NAN__ 1
1327 // MIPS64EL:#define __DBL_MANT_DIG__ 53
1328 // MIPS64EL:#define __DBL_MAX_10_EXP__ 308
1329 // MIPS64EL:#define __DBL_MAX_EXP__ 1024
1330 // MIPS64EL:#define __DBL_MAX__ 1.7976931348623157e+308
1331 // MIPS64EL:#define __DBL_MIN_10_EXP__ (-307)
1332 // MIPS64EL:#define __DBL_MIN_EXP__ (-1021)
1333 // MIPS64EL:#define __DBL_MIN__ 2.2250738585072014e-308
1334 // MIPS64EL:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
1335 // MIPS64EL:#define __FLT_DENORM_MIN__ 1.40129846e-45F
1336 // MIPS64EL:#define __FLT_DIG__ 6
1337 // MIPS64EL:#define __FLT_EPSILON__ 1.19209290e-7F
1338 // MIPS64EL:#define __FLT_HAS_DENORM__ 1
1339 // MIPS64EL:#define __FLT_HAS_INFINITY__ 1
1340 // MIPS64EL:#define __FLT_HAS_QUIET_NAN__ 1
1341 // MIPS64EL:#define __FLT_MANT_DIG__ 24
1342 // MIPS64EL:#define __FLT_MAX_10_EXP__ 38
1343 // MIPS64EL:#define __FLT_MAX_EXP__ 128
1344 // MIPS64EL:#define __FLT_MAX__ 3.40282347e+38F
1345 // MIPS64EL:#define __FLT_MIN_10_EXP__ (-37)
1346 // MIPS64EL:#define __FLT_MIN_EXP__ (-125)
1347 // MIPS64EL:#define __FLT_MIN__ 1.17549435e-38F
1348 // MIPS64EL:#define __FLT_RADIX__ 2
1349 // MIPS64EL:#define __INT16_C(c) c
1350 // MIPS64EL:#define __INT16_C_SUFFIX__
1351 // MIPS64EL:#define __INT16_FMTd__ "hd"
1352 // MIPS64EL:#define __INT16_FMTi__ "hi"
1353 // MIPS64EL:#define __INT16_MAX__ 32767
1354 // MIPS64EL:#define __INT16_TYPE__ short
1355 // MIPS64EL:#define __INT32_C(c) c
1356 // MIPS64EL:#define __INT32_C_SUFFIX__
1357 // MIPS64EL:#define __INT32_FMTd__ "d"
1358 // MIPS64EL:#define __INT32_FMTi__ "i"
1359 // MIPS64EL:#define __INT32_MAX__ 2147483647
1360 // MIPS64EL:#define __INT32_TYPE__ int
1361 // MIPS64EL:#define __INT64_C(c) c##L
1362 // MIPS64EL:#define __INT64_C_SUFFIX__ L
1363 // MIPS64EL:#define __INT64_FMTd__ "ld"
1364 // MIPS64EL:#define __INT64_FMTi__ "li"
1365 // MIPS64EL:#define __INT64_MAX__ 9223372036854775807L
1366 // MIPS64EL:#define __INT64_TYPE__ long int
1367 // MIPS64EL:#define __INT8_C(c) c
1368 // MIPS64EL:#define __INT8_C_SUFFIX__
1369 // MIPS64EL:#define __INT8_FMTd__ "hhd"
1370 // MIPS64EL:#define __INT8_FMTi__ "hhi"
1371 // MIPS64EL:#define __INT8_MAX__ 127
1372 // MIPS64EL:#define __INT8_TYPE__ signed char
1373 // MIPS64EL:#define __INTMAX_C(c) c##L
1374 // MIPS64EL:#define __INTMAX_C_SUFFIX__ L
1375 // MIPS64EL:#define __INTMAX_FMTd__ "ld"
1376 // MIPS64EL:#define __INTMAX_FMTi__ "li"
1377 // MIPS64EL:#define __INTMAX_MAX__ 9223372036854775807L
1378 // MIPS64EL:#define __INTMAX_TYPE__ long int
1379 // MIPS64EL:#define __INTMAX_WIDTH__ 64
1380 // MIPS64EL:#define __INTPTR_FMTd__ "ld"
1381 // MIPS64EL:#define __INTPTR_FMTi__ "li"
1382 // MIPS64EL:#define __INTPTR_MAX__ 9223372036854775807L
1383 // MIPS64EL:#define __INTPTR_TYPE__ long int
1384 // MIPS64EL:#define __INTPTR_WIDTH__ 64
1385 // MIPS64EL:#define __INT_FAST16_FMTd__ "hd"
1386 // MIPS64EL:#define __INT_FAST16_FMTi__ "hi"
1387 // MIPS64EL:#define __INT_FAST16_MAX__ 32767
1388 // MIPS64EL:#define __INT_FAST16_TYPE__ short
1389 // MIPS64EL:#define __INT_FAST32_FMTd__ "d"
1390 // MIPS64EL:#define __INT_FAST32_FMTi__ "i"
1391 // MIPS64EL:#define __INT_FAST32_MAX__ 2147483647
1392 // MIPS64EL:#define __INT_FAST32_TYPE__ int
1393 // MIPS64EL:#define __INT_FAST64_FMTd__ "ld"
1394 // MIPS64EL:#define __INT_FAST64_FMTi__ "li"
1395 // MIPS64EL:#define __INT_FAST64_MAX__ 9223372036854775807L
1396 // MIPS64EL:#define __INT_FAST64_TYPE__ long int
1397 // MIPS64EL:#define __INT_FAST8_FMTd__ "hhd"
1398 // MIPS64EL:#define __INT_FAST8_FMTi__ "hhi"
1399 // MIPS64EL:#define __INT_FAST8_MAX__ 127
1400 // MIPS64EL:#define __INT_FAST8_TYPE__ signed char
1401 // MIPS64EL:#define __INT_LEAST16_FMTd__ "hd"
1402 // MIPS64EL:#define __INT_LEAST16_FMTi__ "hi"
1403 // MIPS64EL:#define __INT_LEAST16_MAX__ 32767
1404 // MIPS64EL:#define __INT_LEAST16_TYPE__ short
1405 // MIPS64EL:#define __INT_LEAST32_FMTd__ "d"
1406 // MIPS64EL:#define __INT_LEAST32_FMTi__ "i"
1407 // MIPS64EL:#define __INT_LEAST32_MAX__ 2147483647
1408 // MIPS64EL:#define __INT_LEAST32_TYPE__ int
1409 // MIPS64EL:#define __INT_LEAST64_FMTd__ "ld"
1410 // MIPS64EL:#define __INT_LEAST64_FMTi__ "li"
1411 // MIPS64EL:#define __INT_LEAST64_MAX__ 9223372036854775807L
1412 // MIPS64EL:#define __INT_LEAST64_TYPE__ long int
1413 // MIPS64EL:#define __INT_LEAST8_FMTd__ "hhd"
1414 // MIPS64EL:#define __INT_LEAST8_FMTi__ "hhi"
1415 // MIPS64EL:#define __INT_LEAST8_MAX__ 127
1416 // MIPS64EL:#define __INT_LEAST8_TYPE__ signed char
1417 // MIPS64EL:#define __INT_MAX__ 2147483647
1418 // MIPS64EL:#define __LDBL_DENORM_MIN__ 6.47517511943802511092443895822764655e-4966L
1419 // MIPS64EL:#define __LDBL_DIG__ 33
1420 // MIPS64EL:#define __LDBL_EPSILON__ 1.92592994438723585305597794258492732e-34L
1421 // MIPS64EL:#define __LDBL_HAS_DENORM__ 1
1422 // MIPS64EL:#define __LDBL_HAS_INFINITY__ 1
1423 // MIPS64EL:#define __LDBL_HAS_QUIET_NAN__ 1
1424 // MIPS64EL:#define __LDBL_MANT_DIG__ 113
1425 // MIPS64EL:#define __LDBL_MAX_10_EXP__ 4932
1426 // MIPS64EL:#define __LDBL_MAX_EXP__ 16384
1427 // MIPS64EL:#define __LDBL_MAX__ 1.18973149535723176508575932662800702e+4932L
1428 // MIPS64EL:#define __LDBL_MIN_10_EXP__ (-4931)
1429 // MIPS64EL:#define __LDBL_MIN_EXP__ (-16381)
1430 // MIPS64EL:#define __LDBL_MIN__ 3.36210314311209350626267781732175260e-4932L
1431 // MIPS64EL:#define __LITTLE_ENDIAN__ 1
1432 // MIPS64EL:#define __LONG_LONG_MAX__ 9223372036854775807LL
1433 // MIPS64EL:#define __LONG_MAX__ 9223372036854775807L
1434 // MIPS64EL:#define __LP64__ 1
1435 // MIPS64EL:#define __MIPSEL 1
1436 // MIPS64EL:#define __MIPSEL__ 1
1437 // MIPS64EL:#define __POINTER_WIDTH__ 64
1438 // MIPS64EL:#define __PRAGMA_REDEFINE_EXTNAME 1
1439 // MIPS64EL:#define __PTRDIFF_TYPE__ long int
1440 // MIPS64EL:#define __PTRDIFF_WIDTH__ 64
1441 // MIPS64EL:#define __REGISTER_PREFIX__
1442 // MIPS64EL:#define __SCHAR_MAX__ 127
1443 // MIPS64EL:#define __SHRT_MAX__ 32767
1444 // MIPS64EL:#define __SIG_ATOMIC_MAX__ 2147483647
1445 // MIPS64EL:#define __SIG_ATOMIC_WIDTH__ 32
1446 // MIPS64EL:#define __SIZEOF_DOUBLE__ 8
1447 // MIPS64EL:#define __SIZEOF_FLOAT__ 4
1448 // MIPS64EL:#define __SIZEOF_INT128__ 16
1449 // MIPS64EL:#define __SIZEOF_INT__ 4
1450 // MIPS64EL:#define __SIZEOF_LONG_DOUBLE__ 16
1451 // MIPS64EL:#define __SIZEOF_LONG_LONG__ 8
1452 // MIPS64EL:#define __SIZEOF_LONG__ 8
1453 // MIPS64EL:#define __SIZEOF_POINTER__ 8
1454 // MIPS64EL:#define __SIZEOF_PTRDIFF_T__ 8
1455 // MIPS64EL:#define __SIZEOF_SHORT__ 2
1456 // MIPS64EL:#define __SIZEOF_SIZE_T__ 8
1457 // MIPS64EL:#define __SIZEOF_WCHAR_T__ 4
1458 // MIPS64EL:#define __SIZEOF_WINT_T__ 4
1459 // MIPS64EL:#define __SIZE_MAX__ 18446744073709551615UL
1460 // MIPS64EL:#define __SIZE_TYPE__ long unsigned int
1461 // MIPS64EL:#define __SIZE_WIDTH__ 64
1462 // MIPS64EL:#define __UINT16_C(c) c
1463 // MIPS64EL:#define __UINT16_C_SUFFIX__
1464 // MIPS64EL:#define __UINT16_MAX__ 65535
1465 // MIPS64EL:#define __UINT16_TYPE__ unsigned short
1466 // MIPS64EL:#define __UINT32_C(c) c##U
1467 // MIPS64EL:#define __UINT32_C_SUFFIX__ U
1468 // MIPS64EL:#define __UINT32_MAX__ 4294967295U
1469 // MIPS64EL:#define __UINT32_TYPE__ unsigned int
1470 // MIPS64EL:#define __UINT64_C(c) c##UL
1471 // MIPS64EL:#define __UINT64_C_SUFFIX__ UL
1472 // MIPS64EL:#define __UINT64_MAX__ 18446744073709551615UL
1473 // MIPS64EL:#define __UINT64_TYPE__ long unsigned int
1474 // MIPS64EL:#define __UINT8_C(c) c
1475 // MIPS64EL:#define __UINT8_C_SUFFIX__
1476 // MIPS64EL:#define __UINT8_MAX__ 255
1477 // MIPS64EL:#define __UINT8_TYPE__ unsigned char
1478 // MIPS64EL:#define __UINTMAX_C(c) c##UL
1479 // MIPS64EL:#define __UINTMAX_C_SUFFIX__ UL
1480 // MIPS64EL:#define __UINTMAX_MAX__ 18446744073709551615UL
1481 // MIPS64EL:#define __UINTMAX_TYPE__ long unsigned int
1482 // MIPS64EL:#define __UINTMAX_WIDTH__ 64
1483 // MIPS64EL:#define __UINTPTR_MAX__ 18446744073709551615UL
1484 // MIPS64EL:#define __UINTPTR_TYPE__ long unsigned int
1485 // MIPS64EL:#define __UINTPTR_WIDTH__ 64
1486 // MIPS64EL:#define __UINT_FAST16_MAX__ 65535
1487 // MIPS64EL:#define __UINT_FAST16_TYPE__ unsigned short
1488 // MIPS64EL:#define __UINT_FAST32_MAX__ 4294967295U
1489 // MIPS64EL:#define __UINT_FAST32_TYPE__ unsigned int
1490 // MIPS64EL:#define __UINT_FAST64_MAX__ 18446744073709551615UL
1491 // MIPS64EL:#define __UINT_FAST64_TYPE__ long unsigned int
1492 // MIPS64EL:#define __UINT_FAST8_MAX__ 255
1493 // MIPS64EL:#define __UINT_FAST8_TYPE__ unsigned char
1494 // MIPS64EL:#define __UINT_LEAST16_MAX__ 65535
1495 // MIPS64EL:#define __UINT_LEAST16_TYPE__ unsigned short
1496 // MIPS64EL:#define __UINT_LEAST32_MAX__ 4294967295U
1497 // MIPS64EL:#define __UINT_LEAST32_TYPE__ unsigned int
1498 // MIPS64EL:#define __UINT_LEAST64_MAX__ 18446744073709551615UL
1499 // MIPS64EL:#define __UINT_LEAST64_TYPE__ long unsigned int
1500 // MIPS64EL:#define __UINT_LEAST8_MAX__ 255
1501 // MIPS64EL:#define __UINT_LEAST8_TYPE__ unsigned char
1502 // MIPS64EL:#define __USER_LABEL_PREFIX__
1503 // MIPS64EL:#define __WCHAR_MAX__ 2147483647
1504 // MIPS64EL:#define __WCHAR_TYPE__ int
1505 // MIPS64EL:#define __WCHAR_WIDTH__ 32
1506 // MIPS64EL:#define __WINT_TYPE__ int
1507 // MIPS64EL:#define __WINT_WIDTH__ 32
1508 // MIPS64EL:#define __clang__ 1
1509 // MIPS64EL:#define __llvm__ 1
1510 // MIPS64EL:#define __mips 64
1511 // MIPS64EL:#define __mips64 1
1512 // MIPS64EL:#define __mips64__ 1
1513 // MIPS64EL:#define __mips__ 1
1514 // MIPS64EL:#define __mips_abicalls 1
1515 // MIPS64EL:#define __mips_fpr 64
1516 // MIPS64EL:#define __mips_hard_float 1
1517 // MIPS64EL:#define __mips_n64 1
1518 // MIPS64EL:#define _mips 1
1519 // MIPS64EL:#define mips 1
1520 
1521 // Check MIPS arch and isa macros
1522 //
1523 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=mips-none-none \
1524 // RUN:            < /dev/null \
1525 // RUN:   | FileCheck -match-full-lines -check-prefix MIPS-ARCH-DEF32 %s
1526 //
1527 // MIPS-ARCH-DEF32:#define _MIPS_ARCH "mips32r2"
1528 // MIPS-ARCH-DEF32:#define _MIPS_ARCH_MIPS32R2 1
1529 // MIPS-ARCH-DEF32:#define _MIPS_ISA _MIPS_ISA_MIPS32
1530 // MIPS-ARCH-DEF32:#define __mips_isa_rev 2
1531 
1532 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=mips-none-nones \
1533 // RUN:            -target-cpu mips32 < /dev/null \
1534 // RUN:   | FileCheck -match-full-lines -check-prefix MIPS-ARCH-32 %s
1535 //
1536 // MIPS-ARCH-32:#define _MIPS_ARCH "mips32"
1537 // MIPS-ARCH-32:#define _MIPS_ARCH_MIPS32 1
1538 // MIPS-ARCH-32:#define _MIPS_ISA _MIPS_ISA_MIPS32
1539 // MIPS-ARCH-32:#define __mips_isa_rev 1
1540 
1541 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=mips-none-none \
1542 // RUN:            -target-cpu mips32r2 < /dev/null \
1543 // RUN:   | FileCheck -match-full-lines -check-prefix MIPS-ARCH-32R2 %s
1544 //
1545 // MIPS-ARCH-32R2:#define _MIPS_ARCH "mips32r2"
1546 // MIPS-ARCH-32R2:#define _MIPS_ARCH_MIPS32R2 1
1547 // MIPS-ARCH-32R2:#define _MIPS_ISA _MIPS_ISA_MIPS32
1548 // MIPS-ARCH-32R2:#define __mips_isa_rev 2
1549 
1550 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=mips-none-none \
1551 // RUN:            -target-cpu mips32r3 < /dev/null \
1552 // RUN:   | FileCheck -match-full-lines -check-prefix MIPS-ARCH-32R3 %s
1553 //
1554 // MIPS-ARCH-32R3:#define _MIPS_ARCH "mips32r3"
1555 // MIPS-ARCH-32R3:#define _MIPS_ARCH_MIPS32R3 1
1556 // MIPS-ARCH-32R3:#define _MIPS_ISA _MIPS_ISA_MIPS32
1557 // MIPS-ARCH-32R3:#define __mips_isa_rev 3
1558 
1559 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=mips-none-none \
1560 // RUN:            -target-cpu mips32r5 < /dev/null \
1561 // RUN:   | FileCheck -match-full-lines -check-prefix MIPS-ARCH-32R5 %s
1562 //
1563 // MIPS-ARCH-32R5:#define _MIPS_ARCH "mips32r5"
1564 // MIPS-ARCH-32R5:#define _MIPS_ARCH_MIPS32R5 1
1565 // MIPS-ARCH-32R5:#define _MIPS_ISA _MIPS_ISA_MIPS32
1566 // MIPS-ARCH-32R5:#define __mips_isa_rev 5
1567 
1568 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=mips-none-none \
1569 // RUN:            -target-cpu mips32r6 < /dev/null \
1570 // RUN:   | FileCheck -match-full-lines -check-prefix MIPS-ARCH-32R6 %s
1571 //
1572 // MIPS-ARCH-32R6:#define _MIPS_ARCH "mips32r6"
1573 // MIPS-ARCH-32R6:#define _MIPS_ARCH_MIPS32R6 1
1574 // MIPS-ARCH-32R6:#define _MIPS_ISA _MIPS_ISA_MIPS32
1575 // MIPS-ARCH-32R6:#define __mips_fpr 64
1576 // MIPS-ARCH-32R6:#define __mips_isa_rev 6
1577 
1578 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=mips64-none-none \
1579 // RUN:            < /dev/null \
1580 // RUN:   | FileCheck -match-full-lines -check-prefix MIPS-ARCH-DEF64 %s
1581 //
1582 // MIPS-ARCH-DEF64:#define _MIPS_ARCH "mips64r2"
1583 // MIPS-ARCH-DEF64:#define _MIPS_ARCH_MIPS64R2 1
1584 // MIPS-ARCH-DEF64:#define _MIPS_ISA _MIPS_ISA_MIPS64
1585 // MIPS-ARCH-DEF64:#define __mips_isa_rev 2
1586 
1587 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=mips64-none-none \
1588 // RUN:            -target-cpu mips64 < /dev/null \
1589 // RUN:   | FileCheck -match-full-lines -check-prefix MIPS-ARCH-64 %s
1590 //
1591 // MIPS-ARCH-64:#define _MIPS_ARCH "mips64"
1592 // MIPS-ARCH-64:#define _MIPS_ARCH_MIPS64 1
1593 // MIPS-ARCH-64:#define _MIPS_ISA _MIPS_ISA_MIPS64
1594 // MIPS-ARCH-64:#define __mips_isa_rev 1
1595 
1596 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=mips64-none-none \
1597 // RUN:            -target-cpu mips64r2 < /dev/null \
1598 // RUN:   | FileCheck -match-full-lines -check-prefix MIPS-ARCH-64R2 %s
1599 //
1600 // MIPS-ARCH-64R2:#define _MIPS_ARCH "mips64r2"
1601 // MIPS-ARCH-64R2:#define _MIPS_ARCH_MIPS64R2 1
1602 // MIPS-ARCH-64R2:#define _MIPS_ISA _MIPS_ISA_MIPS64
1603 // MIPS-ARCH-64R2:#define __mips_isa_rev 2
1604 
1605 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=mips64-none-none \
1606 // RUN:            -target-cpu mips64r3 < /dev/null \
1607 // RUN:   | FileCheck -match-full-lines -check-prefix MIPS-ARCH-64R3 %s
1608 //
1609 // MIPS-ARCH-64R3:#define _MIPS_ARCH "mips64r3"
1610 // MIPS-ARCH-64R3:#define _MIPS_ARCH_MIPS64R3 1
1611 // MIPS-ARCH-64R3:#define _MIPS_ISA _MIPS_ISA_MIPS64
1612 // MIPS-ARCH-64R3:#define __mips_isa_rev 3
1613 
1614 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=mips64-none-none \
1615 // RUN:            -target-cpu mips64r5 < /dev/null \
1616 // RUN:   | FileCheck -match-full-lines -check-prefix MIPS-ARCH-64R5 %s
1617 //
1618 // MIPS-ARCH-64R5:#define _MIPS_ARCH "mips64r5"
1619 // MIPS-ARCH-64R5:#define _MIPS_ARCH_MIPS64R5 1
1620 // MIPS-ARCH-64R5:#define _MIPS_ISA _MIPS_ISA_MIPS64
1621 // MIPS-ARCH-64R5:#define __mips_isa_rev 5
1622 
1623 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=mips64-none-none \
1624 // RUN:            -target-cpu mips64r6 < /dev/null \
1625 // RUN:   | FileCheck -match-full-lines -check-prefix MIPS-ARCH-64R6 %s
1626 //
1627 // MIPS-ARCH-64R6:#define _MIPS_ARCH "mips64r6"
1628 // MIPS-ARCH-64R6:#define _MIPS_ARCH_MIPS64R6 1
1629 // MIPS-ARCH-64R6:#define _MIPS_ISA _MIPS_ISA_MIPS64
1630 // MIPS-ARCH-64R6:#define __mips_isa_rev 6
1631 
1632 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=mips64-none-none \
1633 // RUN:            -target-cpu octeon < /dev/null \
1634 // RUN:   | FileCheck -match-full-lines -check-prefix MIPS-ARCH-OCTEON %s
1635 //
1636 // MIPS-ARCH-OCTEON:#define _MIPS_ARCH "octeon"
1637 // MIPS-ARCH-OCTEON:#define _MIPS_ARCH_OCTEON 1
1638 // MIPS-ARCH-OCTEON:#define _MIPS_ISA _MIPS_ISA_MIPS64
1639 // MIPS-ARCH-OCTEON:#define __OCTEON__ 1
1640 // MIPS-ARCH-OCTEON:#define __mips_isa_rev 2
1641 
1642 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=mips64-none-none \
1643 // RUN:            -target-cpu octeon+ < /dev/null \
1644 // RUN:   | FileCheck -match-full-lines -check-prefix MIPS-ARCH-OCTEONP %s
1645 //
1646 // MIPS-ARCH-OCTEONP:#define _MIPS_ARCH "octeon+"
1647 // MIPS-ARCH-OCTEONP:#define _MIPS_ARCH_OCTEONP 1
1648 // MIPS-ARCH-OCTEONP:#define _MIPS_ISA _MIPS_ISA_MIPS64
1649 // MIPS-ARCH-OCTEONP:#define __OCTEON__ 1
1650 // MIPS-ARCH-OCTEONP:#define __mips_isa_rev 2
1651 
1652 // Check MIPS float ABI macros
1653 //
1654 // RUN: %clang_cc1 -E -dM -ffreestanding \
1655 // RUN:   -triple=mips-none-none < /dev/null \
1656 // RUN:   | FileCheck -match-full-lines -check-prefix MIPS-FABI-HARD %s
1657 // MIPS-FABI-HARD:#define __mips_hard_float 1
1658 
1659 // RUN: %clang_cc1 -target-feature +soft-float -E -dM -ffreestanding \
1660 // RUN:   -triple=mips-none-none < /dev/null \
1661 // RUN:   | FileCheck -match-full-lines -check-prefix MIPS-FABI-SOFT %s
1662 // MIPS-FABI-SOFT:#define __mips_soft_float 1
1663 
1664 // RUN: %clang_cc1 -target-feature +single-float -E -dM -ffreestanding \
1665 // RUN:   -triple=mips-none-none < /dev/null \
1666 // RUN:   | FileCheck -match-full-lines -check-prefix MIPS-FABI-SINGLE %s
1667 // MIPS-FABI-SINGLE:#define __mips_hard_float 1
1668 // MIPS-FABI-SINGLE:#define __mips_single_float 1
1669 
1670 // RUN: %clang_cc1 -target-feature +soft-float -target-feature +single-float \
1671 // RUN:   -E -dM -ffreestanding -triple=mips-none-none < /dev/null \
1672 // RUN:   | FileCheck -match-full-lines -check-prefix MIPS-FABI-SINGLE-SOFT %s
1673 // MIPS-FABI-SINGLE-SOFT:#define __mips_single_float 1
1674 // MIPS-FABI-SINGLE-SOFT:#define __mips_soft_float 1
1675 
1676 // Check MIPS features macros
1677 //
1678 // RUN: %clang_cc1 -target-feature +mips16 \
1679 // RUN:   -E -dM -triple=mips-none-none < /dev/null \
1680 // RUN:   | FileCheck -match-full-lines -check-prefix MIPS16 %s
1681 // MIPS16:#define __mips16 1
1682 
1683 // RUN: %clang_cc1 -target-feature -mips16 \
1684 // RUN:   -E -dM -triple=mips-none-none < /dev/null \
1685 // RUN:   | FileCheck -match-full-lines -check-prefix NOMIPS16 %s
1686 // NOMIPS16-NOT:#define __mips16 1
1687 
1688 // RUN: %clang_cc1 -target-feature +micromips \
1689 // RUN:   -E -dM -triple=mips-none-none < /dev/null \
1690 // RUN:   | FileCheck -match-full-lines -check-prefix MICROMIPS %s
1691 // MICROMIPS:#define __mips_micromips 1
1692 
1693 // RUN: %clang_cc1 -target-feature -micromips \
1694 // RUN:   -E -dM -triple=mips-none-none < /dev/null \
1695 // RUN:   | FileCheck -match-full-lines -check-prefix NOMICROMIPS %s
1696 // NOMICROMIPS-NOT:#define __mips_micromips 1
1697 
1698 // RUN: %clang_cc1 -target-feature +dsp \
1699 // RUN:   -E -dM -triple=mips-none-none < /dev/null \
1700 // RUN:   | FileCheck -match-full-lines -check-prefix MIPS-DSP %s
1701 // MIPS-DSP:#define __mips_dsp 1
1702 // MIPS-DSP:#define __mips_dsp_rev 1
1703 // MIPS-DSP-NOT:#define __mips_dspr2 1
1704 
1705 // RUN: %clang_cc1 -target-feature +dspr2 \
1706 // RUN:   -E -dM -triple=mips-none-none < /dev/null \
1707 // RUN:   | FileCheck -match-full-lines -check-prefix MIPS-DSPR2 %s
1708 // MIPS-DSPR2:#define __mips_dsp 1
1709 // MIPS-DSPR2:#define __mips_dsp_rev 2
1710 // MIPS-DSPR2:#define __mips_dspr2 1
1711 
1712 // RUN: %clang_cc1 -target-feature +msa \
1713 // RUN:   -E -dM -triple=mips-none-none < /dev/null \
1714 // RUN:   | FileCheck -match-full-lines -check-prefix MIPS-MSA %s
1715 // MIPS-MSA:#define __mips_msa 1
1716 
1717 // RUN: %clang_cc1 -target-feature +nomadd4 \
1718 // RUN:   -E -dM -triple=mips-none-none < /dev/null \
1719 // RUN:   | FileCheck -match-full-lines -check-prefix MIPS-NOMADD4 %s
1720 // MIPS-NOMADD4:#define __mips_no_madd4 1
1721 
1722 // RUN: %clang_cc1 \
1723 // RUN:   -E -dM -triple=mips-none-none < /dev/null \
1724 // RUN:   | FileCheck -match-full-lines -check-prefix MIPS-MADD4 %s
1725 // MIPS-MADD4-NOT:#define __mips_no_madd4 1
1726 
1727 // RUN: %clang_cc1 -target-cpu mips32r3 -target-feature +nan2008 \
1728 // RUN:   -E -dM -triple=mips-none-none < /dev/null \
1729 // RUN:   | FileCheck -match-full-lines -check-prefix MIPS-NAN2008 %s
1730 // MIPS-NAN2008:#define __mips_nan2008 1
1731 
1732 // RUN: %clang_cc1 -target-cpu mips32r3 -target-feature -nan2008 \
1733 // RUN:   -E -dM -triple=mips-none-none < /dev/null \
1734 // RUN:   | FileCheck -match-full-lines -check-prefix NOMIPS-NAN2008 %s
1735 // NOMIPS-NAN2008-NOT:#define __mips_nan2008 1
1736 
1737 // RUN: %clang_cc1 -target-cpu mips32r3 -target-feature +abs2008 \
1738 // RUN:   -E -dM -triple=mips-none-none < /dev/null \
1739 // RUN:   | FileCheck -match-full-lines -check-prefix MIPS-ABS2008 %s
1740 // MIPS-ABS2008:#define __mips_abs2008 1
1741 
1742 // RUN: %clang_cc1 -target-cpu mips32r3 -target-feature -abs2008 \
1743 // RUN:   -E -dM -triple=mips-none-none < /dev/null \
1744 // RUN:   | FileCheck -match-full-lines -check-prefix NOMIPS-ABS2008 %s
1745 // NOMIPS-ABS2008-NOT:#define __mips_abs2008 1
1746 
1747 // RUN: %clang_cc1  \
1748 // RUN:   -E -dM -triple=mips-none-none < /dev/null \
1749 // RUN:   | FileCheck -match-full-lines -check-prefix MIPS32-NOFP %s
1750 // MIPS32-NOFP:#define __mips_fpr 0
1751 
1752 // RUN: %clang_cc1  -target-feature -nooddspreg \
1753 // RUN:   -E -dM -triple=mips-none-none < /dev/null \
1754 // RUN:   | FileCheck -match-full-lines -check-prefix MIPS32-NOFP-ODD %s
1755 // MIPS32-NOFP-ODD:#define _MIPS_SPFPSET 32
1756 // MIPS32-NOFP-ODD:#define __mips_fpr 0
1757 
1758 // RUN: %clang_cc1  -target-feature +nooddspreg -target-feature -fp64 \
1759 // RUN:   -E -dM -triple=mips-none-none < /dev/null \
1760 // RUN:   | FileCheck -match-full-lines -check-prefix MIPS32-FP64-NOODD %s
1761 // MIPS32-FP64-NOODD:#define _MIPS_SPFPSET 16
1762 // MIPS32-FP64-NOODD:#define __mips_fpr 32
1763 
1764 // RUN: %clang_cc1 -target-feature +fpxx \
1765 // RUN:   -E -dM -triple=mips-none-none < /dev/null \
1766 // RUN:   | FileCheck -match-full-lines -check-prefix MIPS32-MFPXX %s
1767 // MIPS32-MFPXX:#define _MIPS_SPFPSET 16
1768 // MIPS32-MFPXX:#define __mips_fpr 0
1769 
1770 // RUN: %clang_cc1 -target-cpu mips32r6 -target-feature +fpxx \
1771 // RUN:   -E -dM -triple=mips-none-none < /dev/null \
1772 // RUN:   | FileCheck -match-full-lines -check-prefix MIPS32R6-MFPXX %s
1773 // MIPS32R6-MFPXX:#define _MIPS_SPFPSET 16
1774 // MIPS32R6-MFPXX:#define __mips_fpr 0
1775 
1776 // RUN: %clang_cc1  \
1777 // RUN:   -E -dM -triple=mips64-none-none < /dev/null \
1778 // RUN:   | FileCheck -match-full-lines -check-prefix MIPS64-NOFP %s
1779 // MIPS64-NOFP:#define __mips_fpr 64
1780 
1781 // RUN: not %clang_cc1 -target-feature -fp64 \
1782 // RUN:   -E -dM -triple=mips64-none-none < /dev/null 2>&1 \
1783 // RUN:   | FileCheck -match-full-lines -check-prefix MIPS64-MFP32 %s
1784 // MIPS64-MFP32:error: option '-mfpxx' cannot be specified with 'mips64r2'
1785 
1786 // RUN: not %clang_cc1 -target-feature +fpxx \
1787 // RUN:   -E -dM -triple=mips64-none-none < /dev/null 2>&1 \
1788 // RUN:   | FileCheck -match-full-lines -check-prefix MIPS64-MFPXX %s
1789 // MIPS64-MFPXX:error: '-mfpxx' can only be used with the 'o32' ABI
1790 
1791 // RUN: not %clang_cc1 -target-cpu mips64r6 -target-feature +fpxx \
1792 // RUN:   -E -dM -triple=mips64-none-none < /dev/null 2>&1 \
1793 // RUN:   | FileCheck -match-full-lines -check-prefix MIPS64R6-MFPXX %s
1794 // MIPS64R6-MFPXX:error: '-mfpxx' can only be used with the 'o32' ABI
1795 
1796 // RUN: %clang_cc1 -target-feature -fp64 \
1797 // RUN:   -E -dM -triple=mips-none-none < /dev/null \
1798 // RUN:   | FileCheck -match-full-lines -check-prefix MIPS32-MFP32 %s
1799 // MIPS32-MFP32:#define _MIPS_FPSET 16
1800 // MIPS32-MFP32:#define _MIPS_SPFPSET 32
1801 // MIPS32-MFP32:#define __mips_fpr 32
1802 
1803 // RUN: %clang_cc1 -target-feature +fp64 \
1804 // RUN:   -E -dM -triple=mips-none-none < /dev/null \
1805 // RUN:   | FileCheck -match-full-lines -check-prefix MIPS32-MFP64 %s
1806 // MIPS32-MFP64:#define _MIPS_FPSET 32
1807 // MIPS32-MFP64:#define _MIPS_SPFPSET 32
1808 // MIPS32-MFP64:#define __mips_fpr 64
1809 //
1810 // RUN: %clang_cc1 -target-feature +single-float \
1811 // RUN:   -E -dM -triple=mips-none-none < /dev/null \
1812 // RUN:   | FileCheck -match-full-lines -check-prefix MIPS32-MFP32SF %s
1813 // MIPS32-MFP32SF:#define _MIPS_FPSET 32
1814 // MIPS32-MFP32SF:#define _MIPS_SPFPSET 16
1815 // MIPS32-MFP32SF:#define __mips_fpr 0
1816 
1817 // RUN: %clang_cc1 -target-feature +fp64 \
1818 // RUN:   -E -dM -triple=mips64-none-none < /dev/null \
1819 // RUN:   | FileCheck -match-full-lines -check-prefix MIPS64-MFP64 %s
1820 // MIPS64-MFP64:#define _MIPS_FPSET 32
1821 // MIPS64-MFP64:#define _MIPS_SPFPSET 32
1822 // MIPS64-MFP64:#define __mips_fpr 64
1823 
1824 // RUN: %clang_cc1 -target-feature -fp64 -target-feature +single-float \
1825 // RUN:   -E -dM -triple=mips64-none-none < /dev/null \
1826 // RUN:   | FileCheck -match-full-lines -check-prefix MIPS64-NOMFP64 %s
1827 // MIPS64-NOMFP64:#define _MIPS_FPSET 32
1828 // MIPS64-NOMFP64:#define _MIPS_SPFPSET 32
1829 // MIPS64-NOMFP64:#define __mips_fpr 32
1830 
1831 // RUN: %clang_cc1 -target-cpu mips32r6 \
1832 // RUN:   -E -dM -triple=mips-none-none < /dev/null \
1833 // RUN:   | FileCheck -match-full-lines -check-prefix MIPS-XXR6 %s
1834 // RUN: %clang_cc1 -target-cpu mips64r6 \
1835 // RUN:   -E -dM -triple=mips64-none-none < /dev/null \
1836 // RUN:   | FileCheck -match-full-lines -check-prefix MIPS-XXR6 %s
1837 // MIPS-XXR6:#define _MIPS_FPSET 32
1838 // MIPS-XXR6:#define _MIPS_SPFPSET 32
1839 // MIPS-XXR6:#define __mips_fpr 64
1840 // MIPS-XXR6:#define __mips_nan2008 1
1841 
1842 // RUN: %clang_cc1 -target-cpu mips32 \
1843 // RUN:   -E -dM -triple=mips-unknown-netbsd -mrelocation-model pic < /dev/null \
1844 // RUN:   | FileCheck -match-full-lines -check-prefix MIPS-ABICALLS-NETBSD %s
1845 // MIPS-ABICALLS-NETBSD-NOT: #define __ABICALLS__ 1
1846 // MIPS-ABICALLS-NETBSD: #define __mips_abicalls 1
1847 
1848 // RUN: %clang_cc1 -target-cpu mips64 \
1849 // RUN:   -E -dM -triple=mips64-unknown-netbsd -mrelocation-model pic < \
1850 // RUN:   /dev/null | FileCheck -match-full-lines \
1851 // RUN:   -check-prefix MIPS-ABICALLS-NETBSD64 %s
1852 // MIPS-ABICALLS-NETBSD64-NOT: #define __ABICALLS__ 1
1853 // MIPS-ABICALLS-NETBSD64: #define __mips_abicalls 1
1854 
1855 // RUN: %clang_cc1 -target-cpu mips32 \
1856 // RUN:   -E -dM -triple=mips-unknown-freebsd -mrelocation-model pic < /dev/null \
1857 // RUN:   | FileCheck -match-full-lines -check-prefix MIPS-ABICALLS-FREEBSD %s
1858 // MIPS-ABICALLS-FREEBSD: #define __ABICALLS__ 1
1859 // MIPS-ABICALLS-FREEBSD: #define __mips_abicalls 1
1860 
1861 // RUN: %clang_cc1 -target-cpu mips64 \
1862 // RUN:   -E -dM -triple=mips64-unknown-freebsd -mrelocation-model pic < \
1863 // RUN:   /dev/null | FileCheck -match-full-lines \
1864 // RUN:   -check-prefix MIPS-ABICALLS-FREEBSD64 %s
1865 // MIPS-ABICALLS-FREEBSD64: #define __ABICALLS__ 1
1866 // MIPS-ABICALLS-FREEBSD64: #define __mips_abicalls 1
1867 
1868 // RUN: %clang_cc1 -target-cpu mips32 \
1869 // RUN:   -E -dM -triple=mips-unknown-openbsd -mrelocation-model pic < /dev/null \
1870 // RUN:   | FileCheck -match-full-lines -check-prefix MIPS-ABICALLS-OPENBSD %s
1871 // MIPS-ABICALLS-OPENBSD: #define __ABICALLS__ 1
1872 // MIPS-ABICALLS-OPENBSD: #define __mips_abicalls 1
1873 
1874 // RUN: %clang_cc1 -target-cpu mips64 \
1875 // RUN:   -E -dM -triple=mips64-unknown-openbsd -mrelocation-model pic < \
1876 // RUN:   /dev/null | FileCheck -match-full-lines \
1877 // RUN:   -check-prefix MIPS-ABICALLS-OPENBSD64 %s
1878 // MIPS-ABICALLS-OPENBSD64: #define __ABICALLS__ 1
1879 // MIPS-ABICALLS-OPENBSD64: #define __mips_abicalls 1
1880