1 // RUN: %clang_cc1 -E -ffreestanding -triple=arm-none-none %s | FileCheck -check-prefix ARM %s
2 //
3 // ARM:typedef long long int int64_t;
4 // ARM:typedef long long unsigned int uint64_t;
5 // ARM:typedef int64_t int_least64_t;
6 // ARM:typedef uint64_t uint_least64_t;
7 // ARM:typedef int64_t int_fast64_t;
8 // ARM:typedef uint64_t uint_fast64_t;
9 //
10 // ARM:typedef int int32_t;
11 // ARM:typedef unsigned int uint32_t;
12 // ARM:typedef int32_t int_least32_t;
13 // ARM:typedef uint32_t uint_least32_t;
14 // ARM:typedef int32_t int_fast32_t;
15 // ARM:typedef uint32_t uint_fast32_t;
16 //
17 // ARM:typedef short int16_t;
18 // ARM:typedef unsigned short uint16_t;
19 // ARM:typedef int16_t int_least16_t;
20 // ARM:typedef uint16_t uint_least16_t;
21 // ARM:typedef int16_t int_fast16_t;
22 // ARM:typedef uint16_t uint_fast16_t;
23 //
24 // ARM:typedef signed char int8_t;
25 // ARM:typedef unsigned char uint8_t;
26 // ARM:typedef int8_t int_least8_t;
27 // ARM:typedef uint8_t uint_least8_t;
28 // ARM:typedef int8_t int_fast8_t;
29 // ARM:typedef uint8_t uint_fast8_t;
30 //
31 // ARM:typedef int32_t intptr_t;
32 // ARM:typedef uint32_t uintptr_t;
33 //
34 // ARM:typedef long long int intmax_t;
35 // ARM:typedef long long unsigned int uintmax_t;
36 //
37 // ARM:INT8_MAX_ 127
38 // ARM:INT8_MIN_ (-127 -1)
39 // ARM:UINT8_MAX_ 255
40 // ARM:INT_LEAST8_MIN_ (-127 -1)
41 // ARM:INT_LEAST8_MAX_ 127
42 // ARM:UINT_LEAST8_MAX_ 255
43 // ARM:INT_FAST8_MIN_ (-127 -1)
44 // ARM:INT_FAST8_MAX_ 127
45 // ARM:UINT_FAST8_MAX_ 255
46 //
47 // ARM:INT16_MAX_ 32767
48 // ARM:INT16_MIN_ (-32767 -1)
49 // ARM:UINT16_MAX_ 65535
50 // ARM:INT_LEAST16_MIN_ (-32767 -1)
51 // ARM:INT_LEAST16_MAX_ 32767
52 // ARM:UINT_LEAST16_MAX_ 65535
53 // ARM:INT_FAST16_MIN_ (-32767 -1)
54 // ARM:INT_FAST16_MAX_ 32767
55 // ARM:UINT_FAST16_MAX_ 65535
56 //
57 // ARM:INT32_MAX_ 2147483647
58 // ARM:INT32_MIN_ (-2147483647 -1)
59 // ARM:UINT32_MAX_ 4294967295U
60 // ARM:INT_LEAST32_MIN_ (-2147483647 -1)
61 // ARM:INT_LEAST32_MAX_ 2147483647
62 // ARM:UINT_LEAST32_MAX_ 4294967295U
63 // ARM:INT_FAST32_MIN_ (-2147483647 -1)
64 // ARM:INT_FAST32_MAX_ 2147483647
65 // ARM:UINT_FAST32_MAX_ 4294967295U
66 //
67 // ARM:INT64_MAX_ 9223372036854775807LL
68 // ARM:INT64_MIN_ (-9223372036854775807LL -1)
69 // ARM:UINT64_MAX_ 18446744073709551615ULL
70 // ARM:INT_LEAST64_MIN_ (-9223372036854775807LL -1)
71 // ARM:INT_LEAST64_MAX_ 9223372036854775807LL
72 // ARM:UINT_LEAST64_MAX_ 18446744073709551615ULL
73 // ARM:INT_FAST64_MIN_ (-9223372036854775807LL -1)
74 // ARM:INT_FAST64_MAX_ 9223372036854775807LL
75 // ARM:UINT_FAST64_MAX_ 18446744073709551615ULL
76 //
77 // ARM:INTPTR_MIN_ (-2147483647 -1)
78 // ARM:INTPTR_MAX_ 2147483647
79 // ARM:UINTPTR_MAX_ 4294967295U
80 // ARM:PTRDIFF_MIN_ (-2147483647 -1)
81 // ARM:PTRDIFF_MAX_ 2147483647
82 // ARM:SIZE_MAX_ 4294967295U
83 //
84 // ARM:INTMAX_MIN_ (-9223372036854775807LL -1)
85 // ARM:INTMAX_MAX_ 9223372036854775807LL
86 // ARM:UINTMAX_MAX_ 18446744073709551615ULL
87 //
88 // ARM:SIG_ATOMIC_MIN_ (-2147483647 -1)
89 // ARM:SIG_ATOMIC_MAX_ 2147483647
90 // ARM:WINT_MIN_ (-2147483647 -1)
91 // ARM:WINT_MAX_ 2147483647
92 //
93 // ARM:WCHAR_MAX_ 4294967295U
94 // ARM:WCHAR_MIN_ 0U
95 //
96 // ARM:INT8_C_(0) 0
97 // ARM:UINT8_C_(0) 0U
98 // ARM:INT16_C_(0) 0
99 // ARM:UINT16_C_(0) 0U
100 // ARM:INT32_C_(0) 0
101 // ARM:UINT32_C_(0) 0U
102 // ARM:INT64_C_(0) 0LL
103 // ARM:UINT64_C_(0) 0ULL
104 //
105 // ARM:INTMAX_C_(0) 0LL
106 // ARM:UINTMAX_C_(0) 0ULL
107 //
108 //
109 // RUN: %clang_cc1 -E -ffreestanding -triple=i386-none-none %s | FileCheck -check-prefix I386 %s
110 //
111 // I386:typedef long long int int64_t;
112 // I386:typedef long long unsigned int uint64_t;
113 // I386:typedef int64_t int_least64_t;
114 // I386:typedef uint64_t uint_least64_t;
115 // I386:typedef int64_t int_fast64_t;
116 // I386:typedef uint64_t uint_fast64_t;
117 //
118 // I386:typedef int int32_t;
119 // I386:typedef unsigned int uint32_t;
120 // I386:typedef int32_t int_least32_t;
121 // I386:typedef uint32_t uint_least32_t;
122 // I386:typedef int32_t int_fast32_t;
123 // I386:typedef uint32_t uint_fast32_t;
124 //
125 // I386:typedef short int16_t;
126 // I386:typedef unsigned short uint16_t;
127 // I386:typedef int16_t int_least16_t;
128 // I386:typedef uint16_t uint_least16_t;
129 // I386:typedef int16_t int_fast16_t;
130 // I386:typedef uint16_t uint_fast16_t;
131 //
132 // I386:typedef signed char int8_t;
133 // I386:typedef unsigned char uint8_t;
134 // I386:typedef int8_t int_least8_t;
135 // I386:typedef uint8_t uint_least8_t;
136 // I386:typedef int8_t int_fast8_t;
137 // I386:typedef uint8_t uint_fast8_t;
138 //
139 // I386:typedef int32_t intptr_t;
140 // I386:typedef uint32_t uintptr_t;
141 //
142 // I386:typedef long long int intmax_t;
143 // I386:typedef long long unsigned int uintmax_t;
144 //
145 // I386:INT8_MAX_ 127
146 // I386:INT8_MIN_ (-127 -1)
147 // I386:UINT8_MAX_ 255
148 // I386:INT_LEAST8_MIN_ (-127 -1)
149 // I386:INT_LEAST8_MAX_ 127
150 // I386:UINT_LEAST8_MAX_ 255
151 // I386:INT_FAST8_MIN_ (-127 -1)
152 // I386:INT_FAST8_MAX_ 127
153 // I386:UINT_FAST8_MAX_ 255
154 //
155 // I386:INT16_MAX_ 32767
156 // I386:INT16_MIN_ (-32767 -1)
157 // I386:UINT16_MAX_ 65535
158 // I386:INT_LEAST16_MIN_ (-32767 -1)
159 // I386:INT_LEAST16_MAX_ 32767
160 // I386:UINT_LEAST16_MAX_ 65535
161 // I386:INT_FAST16_MIN_ (-32767 -1)
162 // I386:INT_FAST16_MAX_ 32767
163 // I386:UINT_FAST16_MAX_ 65535
164 //
165 // I386:INT32_MAX_ 2147483647
166 // I386:INT32_MIN_ (-2147483647 -1)
167 // I386:UINT32_MAX_ 4294967295U
168 // I386:INT_LEAST32_MIN_ (-2147483647 -1)
169 // I386:INT_LEAST32_MAX_ 2147483647
170 // I386:UINT_LEAST32_MAX_ 4294967295U
171 // I386:INT_FAST32_MIN_ (-2147483647 -1)
172 // I386:INT_FAST32_MAX_ 2147483647
173 // I386:UINT_FAST32_MAX_ 4294967295U
174 //
175 // I386:INT64_MAX_ 9223372036854775807LL
176 // I386:INT64_MIN_ (-9223372036854775807LL -1)
177 // I386:UINT64_MAX_ 18446744073709551615ULL
178 // I386:INT_LEAST64_MIN_ (-9223372036854775807LL -1)
179 // I386:INT_LEAST64_MAX_ 9223372036854775807LL
180 // I386:UINT_LEAST64_MAX_ 18446744073709551615ULL
181 // I386:INT_FAST64_MIN_ (-9223372036854775807LL -1)
182 // I386:INT_FAST64_MAX_ 9223372036854775807LL
183 // I386:UINT_FAST64_MAX_ 18446744073709551615ULL
184 //
185 // I386:INTPTR_MIN_ (-2147483647 -1)
186 // I386:INTPTR_MAX_ 2147483647
187 // I386:UINTPTR_MAX_ 4294967295U
188 // I386:PTRDIFF_MIN_ (-2147483647 -1)
189 // I386:PTRDIFF_MAX_ 2147483647
190 // I386:SIZE_MAX_ 4294967295U
191 //
192 // I386:INTMAX_MIN_ (-9223372036854775807LL -1)
193 // I386:INTMAX_MAX_ 9223372036854775807LL
194 // I386:UINTMAX_MAX_ 18446744073709551615ULL
195 //
196 // I386:SIG_ATOMIC_MIN_ (-2147483647 -1)
197 // I386:SIG_ATOMIC_MAX_ 2147483647
198 // I386:WINT_MIN_ (-2147483647 -1)
199 // I386:WINT_MAX_ 2147483647
200 //
201 // I386:WCHAR_MAX_ 2147483647
202 // I386:WCHAR_MIN_ (-2147483647 -1)
203 //
204 // I386:INT8_C_(0) 0
205 // I386:UINT8_C_(0) 0U
206 // I386:INT16_C_(0) 0
207 // I386:UINT16_C_(0) 0U
208 // I386:INT32_C_(0) 0
209 // I386:UINT32_C_(0) 0U
210 // I386:INT64_C_(0) 0LL
211 // I386:UINT64_C_(0) 0ULL
212 //
213 // I386:INTMAX_C_(0) 0LL
214 // I386:UINTMAX_C_(0) 0ULL
215 //
216 // RUN: %clang_cc1 -E -ffreestanding -triple=mips-none-none %s | FileCheck -check-prefix MIPS %s
217 //
218 // MIPS:typedef long long int int64_t;
219 // MIPS:typedef long long unsigned int uint64_t;
220 // MIPS:typedef int64_t int_least64_t;
221 // MIPS:typedef uint64_t uint_least64_t;
222 // MIPS:typedef int64_t int_fast64_t;
223 // MIPS:typedef uint64_t uint_fast64_t;
224 //
225 // MIPS:typedef int int32_t;
226 // MIPS:typedef unsigned int uint32_t;
227 // MIPS:typedef int32_t int_least32_t;
228 // MIPS:typedef uint32_t uint_least32_t;
229 // MIPS:typedef int32_t int_fast32_t;
230 // MIPS:typedef uint32_t uint_fast32_t;
231 //
232 // MIPS:typedef short int16_t;
233 // MIPS:typedef unsigned short uint16_t;
234 // MIPS:typedef int16_t int_least16_t;
235 // MIPS:typedef uint16_t uint_least16_t;
236 // MIPS:typedef int16_t int_fast16_t;
237 // MIPS:typedef uint16_t uint_fast16_t;
238 //
239 // MIPS:typedef signed char int8_t;
240 // MIPS:typedef unsigned char uint8_t;
241 // MIPS:typedef int8_t int_least8_t;
242 // MIPS:typedef uint8_t uint_least8_t;
243 // MIPS:typedef int8_t int_fast8_t;
244 // MIPS:typedef uint8_t uint_fast8_t;
245 //
246 // MIPS:typedef int32_t intptr_t;
247 // MIPS:typedef uint32_t uintptr_t;
248 //
249 // MIPS:typedef long long int intmax_t;
250 // MIPS:typedef long long unsigned int uintmax_t;
251 //
252 // MIPS:INT8_MAX_ 127
253 // MIPS:INT8_MIN_ (-127 -1)
254 // MIPS:UINT8_MAX_ 255
255 // MIPS:INT_LEAST8_MIN_ (-127 -1)
256 // MIPS:INT_LEAST8_MAX_ 127
257 // MIPS:UINT_LEAST8_MAX_ 255
258 // MIPS:INT_FAST8_MIN_ (-127 -1)
259 // MIPS:INT_FAST8_MAX_ 127
260 // MIPS:UINT_FAST8_MAX_ 255
261 //
262 // MIPS:INT16_MAX_ 32767
263 // MIPS:INT16_MIN_ (-32767 -1)
264 // MIPS:UINT16_MAX_ 65535
265 // MIPS:INT_LEAST16_MIN_ (-32767 -1)
266 // MIPS:INT_LEAST16_MAX_ 32767
267 // MIPS:UINT_LEAST16_MAX_ 65535
268 // MIPS:INT_FAST16_MIN_ (-32767 -1)
269 // MIPS:INT_FAST16_MAX_ 32767
270 // MIPS:UINT_FAST16_MAX_ 65535
271 //
272 // MIPS:INT32_MAX_ 2147483647
273 // MIPS:INT32_MIN_ (-2147483647 -1)
274 // MIPS:UINT32_MAX_ 4294967295U
275 // MIPS:INT_LEAST32_MIN_ (-2147483647 -1)
276 // MIPS:INT_LEAST32_MAX_ 2147483647
277 // MIPS:UINT_LEAST32_MAX_ 4294967295U
278 // MIPS:INT_FAST32_MIN_ (-2147483647 -1)
279 // MIPS:INT_FAST32_MAX_ 2147483647
280 // MIPS:UINT_FAST32_MAX_ 4294967295U
281 //
282 // MIPS:INT64_MAX_ 9223372036854775807LL
283 // MIPS:INT64_MIN_ (-9223372036854775807LL -1)
284 // MIPS:UINT64_MAX_ 18446744073709551615ULL
285 // MIPS:INT_LEAST64_MIN_ (-9223372036854775807LL -1)
286 // MIPS:INT_LEAST64_MAX_ 9223372036854775807LL
287 // MIPS:UINT_LEAST64_MAX_ 18446744073709551615ULL
288 // MIPS:INT_FAST64_MIN_ (-9223372036854775807LL -1)
289 // MIPS:INT_FAST64_MAX_ 9223372036854775807LL
290 // MIPS:UINT_FAST64_MAX_ 18446744073709551615ULL
291 //
292 // MIPS:INTPTR_MIN_ (-2147483647 -1)
293 // MIPS:INTPTR_MAX_ 2147483647
294 // MIPS:UINTPTR_MAX_ 4294967295U
295 // MIPS:PTRDIFF_MIN_ (-2147483647 -1)
296 // MIPS:PTRDIFF_MAX_ 2147483647
297 // MIPS:SIZE_MAX_ 4294967295U
298 //
299 // MIPS:INTMAX_MIN_ (-9223372036854775807LL -1)
300 // MIPS:INTMAX_MAX_ 9223372036854775807LL
301 // MIPS:UINTMAX_MAX_ 18446744073709551615ULL
302 //
303 // MIPS:SIG_ATOMIC_MIN_ (-2147483647 -1)
304 // MIPS:SIG_ATOMIC_MAX_ 2147483647
305 // MIPS:WINT_MIN_ (-2147483647 -1)
306 // MIPS:WINT_MAX_ 2147483647
307 //
308 // MIPS:WCHAR_MAX_ 2147483647
309 // MIPS:WCHAR_MIN_ (-2147483647 -1)
310 //
311 // MIPS:INT8_C_(0) 0
312 // MIPS:UINT8_C_(0) 0U
313 // MIPS:INT16_C_(0) 0
314 // MIPS:UINT16_C_(0) 0U
315 // MIPS:INT32_C_(0) 0
316 // MIPS:UINT32_C_(0) 0U
317 // MIPS:INT64_C_(0) 0LL
318 // MIPS:UINT64_C_(0) 0ULL
319 //
320 // MIPS:INTMAX_C_(0) 0LL
321 // MIPS:UINTMAX_C_(0) 0ULL
322 //
323 // RUN: %clang_cc1 -E -ffreestanding -triple=mips64-none-none %s | FileCheck -check-prefix MIPS64 %s
324 //
325 // MIPS64:typedef long int int64_t;
326 // MIPS64:typedef long unsigned int uint64_t;
327 // MIPS64:typedef int64_t int_least64_t;
328 // MIPS64:typedef uint64_t uint_least64_t;
329 // MIPS64:typedef int64_t int_fast64_t;
330 // MIPS64:typedef uint64_t uint_fast64_t;
331 //
332 // MIPS64:typedef int int32_t;
333 // MIPS64:typedef unsigned int uint32_t;
334 // MIPS64:typedef int32_t int_least32_t;
335 // MIPS64:typedef uint32_t uint_least32_t;
336 // MIPS64:typedef int32_t int_fast32_t;
337 // MIPS64:typedef uint32_t uint_fast32_t;
338 //
339 // MIPS64:typedef short int16_t;
340 // MIPS64:typedef unsigned short uint16_t;
341 // MIPS64:typedef int16_t int_least16_t;
342 // MIPS64:typedef uint16_t uint_least16_t;
343 // MIPS64:typedef int16_t int_fast16_t;
344 // MIPS64:typedef uint16_t uint_fast16_t;
345 //
346 // MIPS64:typedef signed char int8_t;
347 // MIPS64:typedef unsigned char uint8_t;
348 // MIPS64:typedef int8_t int_least8_t;
349 // MIPS64:typedef uint8_t uint_least8_t;
350 // MIPS64:typedef int8_t int_fast8_t;
351 // MIPS64:typedef uint8_t uint_fast8_t;
352 //
353 // MIPS64:typedef int64_t intptr_t;
354 // MIPS64:typedef uint64_t uintptr_t;
355 //
356 // MIPS64:typedef long int intmax_t;
357 // MIPS64:typedef long unsigned int uintmax_t;
358 //
359 // MIPS64:INT8_MAX_ 127
360 // MIPS64:INT8_MIN_ (-127 -1)
361 // MIPS64:UINT8_MAX_ 255
362 // MIPS64:INT_LEAST8_MIN_ (-127 -1)
363 // MIPS64:INT_LEAST8_MAX_ 127
364 // MIPS64:UINT_LEAST8_MAX_ 255
365 // MIPS64:INT_FAST8_MIN_ (-127 -1)
366 // MIPS64:INT_FAST8_MAX_ 127
367 // MIPS64:UINT_FAST8_MAX_ 255
368 //
369 // MIPS64:INT16_MAX_ 32767
370 // MIPS64:INT16_MIN_ (-32767 -1)
371 // MIPS64:UINT16_MAX_ 65535
372 // MIPS64:INT_LEAST16_MIN_ (-32767 -1)
373 // MIPS64:INT_LEAST16_MAX_ 32767
374 // MIPS64:UINT_LEAST16_MAX_ 65535
375 // MIPS64:INT_FAST16_MIN_ (-32767 -1)
376 // MIPS64:INT_FAST16_MAX_ 32767
377 // MIPS64:UINT_FAST16_MAX_ 65535
378 //
379 // MIPS64:INT32_MAX_ 2147483647
380 // MIPS64:INT32_MIN_ (-2147483647 -1)
381 // MIPS64:UINT32_MAX_ 4294967295U
382 // MIPS64:INT_LEAST32_MIN_ (-2147483647 -1)
383 // MIPS64:INT_LEAST32_MAX_ 2147483647
384 // MIPS64:UINT_LEAST32_MAX_ 4294967295U
385 // MIPS64:INT_FAST32_MIN_ (-2147483647 -1)
386 // MIPS64:INT_FAST32_MAX_ 2147483647
387 // MIPS64:UINT_FAST32_MAX_ 4294967295U
388 //
389 // MIPS64:INT64_MAX_ 9223372036854775807L
390 // MIPS64:INT64_MIN_ (-9223372036854775807L -1)
391 // MIPS64:UINT64_MAX_ 18446744073709551615UL
392 // MIPS64:INT_LEAST64_MIN_ (-9223372036854775807L -1)
393 // MIPS64:INT_LEAST64_MAX_ 9223372036854775807L
394 // MIPS64:UINT_LEAST64_MAX_ 18446744073709551615UL
395 // MIPS64:INT_FAST64_MIN_ (-9223372036854775807L -1)
396 // MIPS64:INT_FAST64_MAX_ 9223372036854775807L
397 // MIPS64:UINT_FAST64_MAX_ 18446744073709551615UL
398 //
399 // MIPS64:INTPTR_MIN_ (-9223372036854775807L -1)
400 // MIPS64:INTPTR_MAX_ 9223372036854775807L
401 // MIPS64:UINTPTR_MAX_ 18446744073709551615UL
402 // MIPS64:PTRDIFF_MIN_ (-9223372036854775807L -1)
403 // MIPS64:PTRDIFF_MAX_ 9223372036854775807L
404 // MIPS64:SIZE_MAX_ 18446744073709551615UL
405 //
406 // MIPS64:INTMAX_MIN_ (-9223372036854775807L -1)
407 // MIPS64:INTMAX_MAX_ 9223372036854775807L
408 // MIPS64:UINTMAX_MAX_ 18446744073709551615UL
409 //
410 // MIPS64:SIG_ATOMIC_MIN_ (-2147483647 -1)
411 // MIPS64:SIG_ATOMIC_MAX_ 2147483647
412 // MIPS64:WINT_MIN_ (-2147483647 -1)
413 // MIPS64:WINT_MAX_ 2147483647
414 //
415 // MIPS64:WCHAR_MAX_ 2147483647
416 // MIPS64:WCHAR_MIN_ (-2147483647 -1)
417 //
418 // MIPS64:INT8_C_(0) 0
419 // MIPS64:UINT8_C_(0) 0U
420 // MIPS64:INT16_C_(0) 0
421 // MIPS64:UINT16_C_(0) 0U
422 // MIPS64:INT32_C_(0) 0
423 // MIPS64:UINT32_C_(0) 0U
424 // MIPS64:INT64_C_(0) 0L
425 // MIPS64:UINT64_C_(0) 0UL
426 //
427 // MIPS64:INTMAX_C_(0) 0L
428 // MIPS64:UINTMAX_C_(0) 0UL
429 //
430 // RUN: %clang_cc1 -E -ffreestanding -triple=msp430-none-none %s | FileCheck -check-prefix MSP430 %s
431 //
432 // MSP430:typedef long int int32_t;
433 // MSP430:typedef long unsigned int uint32_t;
434 // MSP430:typedef int32_t int_least32_t;
435 // MSP430:typedef uint32_t uint_least32_t;
436 // MSP430:typedef int32_t int_fast32_t;
437 // MSP430:typedef uint32_t uint_fast32_t;
438 //
439 // MSP430:typedef short int16_t;
440 // MSP430:typedef unsigned short uint16_t;
441 // MSP430:typedef int16_t int_least16_t;
442 // MSP430:typedef uint16_t uint_least16_t;
443 // MSP430:typedef int16_t int_fast16_t;
444 // MSP430:typedef uint16_t uint_fast16_t;
445 //
446 // MSP430:typedef signed char int8_t;
447 // MSP430:typedef unsigned char uint8_t;
448 // MSP430:typedef int8_t int_least8_t;
449 // MSP430:typedef uint8_t uint_least8_t;
450 // MSP430:typedef int8_t int_fast8_t;
451 // MSP430:typedef uint8_t uint_fast8_t;
452 //
453 // MSP430:typedef int16_t intptr_t;
454 // MSP430:typedef uint16_t uintptr_t;
455 //
456 // MSP430:typedef long long int intmax_t;
457 // MSP430:typedef long long unsigned int uintmax_t;
458 //
459 // MSP430:INT8_MAX_ 127
460 // MSP430:INT8_MIN_ (-127 -1)
461 // MSP430:UINT8_MAX_ 255
462 // MSP430:INT_LEAST8_MIN_ (-127 -1)
463 // MSP430:INT_LEAST8_MAX_ 127
464 // MSP430:UINT_LEAST8_MAX_ 255
465 // MSP430:INT_FAST8_MIN_ (-127 -1)
466 // MSP430:INT_FAST8_MAX_ 127
467 // MSP430:UINT_FAST8_MAX_ 255
468 //
469 // MSP430:INT16_MAX_ 32767
470 // MSP430:INT16_MIN_ (-32767 -1)
471 // MSP430:UINT16_MAX_ 65535
472 // MSP430:INT_LEAST16_MIN_ (-32767 -1)
473 // MSP430:INT_LEAST16_MAX_ 32767
474 // MSP430:UINT_LEAST16_MAX_ 65535
475 // MSP430:INT_FAST16_MIN_ (-32767 -1)
476 // MSP430:INT_FAST16_MAX_ 32767
477 // MSP430:UINT_FAST16_MAX_ 65535
478 //
479 // MSP430:INT32_MAX_ 2147483647L
480 // MSP430:INT32_MIN_ (-2147483647L -1)
481 // MSP430:UINT32_MAX_ 4294967295UL
482 // MSP430:INT_LEAST32_MIN_ (-2147483647L -1)
483 // MSP430:INT_LEAST32_MAX_ 2147483647L
484 // MSP430:UINT_LEAST32_MAX_ 4294967295UL
485 // MSP430:INT_FAST32_MIN_ (-2147483647L -1)
486 // MSP430:INT_FAST32_MAX_ 2147483647L
487 // MSP430:UINT_FAST32_MAX_ 4294967295UL
488 //
489 // MSP430:INT64_MAX_ 9223372036854775807LL
490 // MSP430:INT64_MIN_ (-9223372036854775807LL -1)
491 // MSP430:UINT64_MAX_ 18446744073709551615ULL
492 // MSP430:INT_LEAST64_MIN_ (-9223372036854775807LL -1)
493 // MSP430:INT_LEAST64_MAX_ 9223372036854775807LL
494 // MSP430:UINT_LEAST64_MAX_ 18446744073709551615ULL
495 // MSP430:INT_FAST64_MIN_ (-9223372036854775807LL -1)
496 // MSP430:INT_FAST64_MAX_ 9223372036854775807LL
497 // MSP430:UINT_FAST64_MAX_ 18446744073709551615ULL
498 //
499 // MSP430:INTPTR_MIN_ (-32767 -1)
500 // MSP430:INTPTR_MAX_ 32767
501 // MSP430:UINTPTR_MAX_ 65535
502 // MSP430:PTRDIFF_MIN_ (-32767 -1)
503 // MSP430:PTRDIFF_MAX_ 32767
504 // MSP430:SIZE_MAX_ 65535
505 //
506 // MSP430:INTMAX_MIN_ (-9223372036854775807LL -1)
507 // MSP430:INTMAX_MAX_ 9223372036854775807LL
508 // MSP430:UINTMAX_MAX_ 18446744073709551615ULL
509 //
510 // MSP430:SIG_ATOMIC_MIN_ (-2147483647L -1)
511 // MSP430:SIG_ATOMIC_MAX_ 2147483647L
512 // MSP430:WINT_MIN_ (-32767 -1)
513 // MSP430:WINT_MAX_ 32767
514 //
515 // MSP430:WCHAR_MAX_ 32767
516 // MSP430:WCHAR_MIN_ (-32767 -1)
517 //
518 // MSP430:INT8_C_(0) 0
519 // MSP430:UINT8_C_(0) 0U
520 // MSP430:INT16_C_(0) 0
521 // MSP430:UINT16_C_(0) 0U
522 // MSP430:INT32_C_(0) 0L
523 // MSP430:UINT32_C_(0) 0UL
524 // MSP430:INT64_C_(0) 0LL
525 // MSP430:UINT64_C_(0) 0ULL
526 //
527 // MSP430:INTMAX_C_(0) 0L
528 // MSP430:UINTMAX_C_(0) 0UL
529 //
530 // RUN: %clang_cc1 -E -ffreestanding -triple=powerpc64-none-none %s | FileCheck -check-prefix PPC64 %s
531 //
532 // PPC64:typedef long int int64_t;
533 // PPC64:typedef long unsigned int uint64_t;
534 // PPC64:typedef int64_t int_least64_t;
535 // PPC64:typedef uint64_t uint_least64_t;
536 // PPC64:typedef int64_t int_fast64_t;
537 // PPC64:typedef uint64_t uint_fast64_t;
538 //
539 // PPC64:typedef int int32_t;
540 // PPC64:typedef unsigned int uint32_t;
541 // PPC64:typedef int32_t int_least32_t;
542 // PPC64:typedef uint32_t uint_least32_t;
543 // PPC64:typedef int32_t int_fast32_t;
544 // PPC64:typedef uint32_t uint_fast32_t;
545 //
546 // PPC64:typedef short int16_t;
547 // PPC64:typedef unsigned short uint16_t;
548 // PPC64:typedef int16_t int_least16_t;
549 // PPC64:typedef uint16_t uint_least16_t;
550 // PPC64:typedef int16_t int_fast16_t;
551 // PPC64:typedef uint16_t uint_fast16_t;
552 //
553 // PPC64:typedef signed char int8_t;
554 // PPC64:typedef unsigned char uint8_t;
555 // PPC64:typedef int8_t int_least8_t;
556 // PPC64:typedef uint8_t uint_least8_t;
557 // PPC64:typedef int8_t int_fast8_t;
558 // PPC64:typedef uint8_t uint_fast8_t;
559 //
560 // PPC64:typedef int64_t intptr_t;
561 // PPC64:typedef uint64_t uintptr_t;
562 //
563 // PPC64:typedef long int intmax_t;
564 // PPC64:typedef long unsigned int uintmax_t;
565 //
566 // PPC64:INT8_MAX_ 127
567 // PPC64:INT8_MIN_ (-127 -1)
568 // PPC64:UINT8_MAX_ 255
569 // PPC64:INT_LEAST8_MIN_ (-127 -1)
570 // PPC64:INT_LEAST8_MAX_ 127
571 // PPC64:UINT_LEAST8_MAX_ 255
572 // PPC64:INT_FAST8_MIN_ (-127 -1)
573 // PPC64:INT_FAST8_MAX_ 127
574 // PPC64:UINT_FAST8_MAX_ 255
575 //
576 // PPC64:INT16_MAX_ 32767
577 // PPC64:INT16_MIN_ (-32767 -1)
578 // PPC64:UINT16_MAX_ 65535
579 // PPC64:INT_LEAST16_MIN_ (-32767 -1)
580 // PPC64:INT_LEAST16_MAX_ 32767
581 // PPC64:UINT_LEAST16_MAX_ 65535
582 // PPC64:INT_FAST16_MIN_ (-32767 -1)
583 // PPC64:INT_FAST16_MAX_ 32767
584 // PPC64:UINT_FAST16_MAX_ 65535
585 //
586 // PPC64:INT32_MAX_ 2147483647
587 // PPC64:INT32_MIN_ (-2147483647 -1)
588 // PPC64:UINT32_MAX_ 4294967295U
589 // PPC64:INT_LEAST32_MIN_ (-2147483647 -1)
590 // PPC64:INT_LEAST32_MAX_ 2147483647
591 // PPC64:UINT_LEAST32_MAX_ 4294967295U
592 // PPC64:INT_FAST32_MIN_ (-2147483647 -1)
593 // PPC64:INT_FAST32_MAX_ 2147483647
594 // PPC64:UINT_FAST32_MAX_ 4294967295U
595 //
596 // PPC64:INT64_MAX_ 9223372036854775807L
597 // PPC64:INT64_MIN_ (-9223372036854775807L -1)
598 // PPC64:UINT64_MAX_ 18446744073709551615UL
599 // PPC64:INT_LEAST64_MIN_ (-9223372036854775807L -1)
600 // PPC64:INT_LEAST64_MAX_ 9223372036854775807L
601 // PPC64:UINT_LEAST64_MAX_ 18446744073709551615UL
602 // PPC64:INT_FAST64_MIN_ (-9223372036854775807L -1)
603 // PPC64:INT_FAST64_MAX_ 9223372036854775807L
604 // PPC64:UINT_FAST64_MAX_ 18446744073709551615UL
605 //
606 // PPC64:INTPTR_MIN_ (-9223372036854775807L -1)
607 // PPC64:INTPTR_MAX_ 9223372036854775807L
608 // PPC64:UINTPTR_MAX_ 18446744073709551615UL
609 // PPC64:PTRDIFF_MIN_ (-9223372036854775807L -1)
610 // PPC64:PTRDIFF_MAX_ 9223372036854775807L
611 // PPC64:SIZE_MAX_ 18446744073709551615UL
612 //
613 // PPC64:INTMAX_MIN_ (-9223372036854775807L -1)
614 // PPC64:INTMAX_MAX_ 9223372036854775807L
615 // PPC64:UINTMAX_MAX_ 18446744073709551615UL
616 //
617 // PPC64:SIG_ATOMIC_MIN_ (-2147483647 -1)
618 // PPC64:SIG_ATOMIC_MAX_ 2147483647
619 // PPC64:WINT_MIN_ (-2147483647 -1)
620 // PPC64:WINT_MAX_ 2147483647
621 //
622 // PPC64:WCHAR_MAX_ 2147483647
623 // PPC64:WCHAR_MIN_ (-2147483647 -1)
624 //
625 // PPC64:INT8_C_(0) 0
626 // PPC64:UINT8_C_(0) 0U
627 // PPC64:INT16_C_(0) 0
628 // PPC64:UINT16_C_(0) 0U
629 // PPC64:INT32_C_(0) 0
630 // PPC64:UINT32_C_(0) 0U
631 // PPC64:INT64_C_(0) 0L
632 // PPC64:UINT64_C_(0) 0UL
633 //
634 // PPC64:INTMAX_C_(0) 0L
635 // PPC64:UINTMAX_C_(0) 0UL
636 //
637 // RUN: %clang_cc1 -E -ffreestanding -triple=powerpc64-none-netbsd %s | FileCheck -check-prefix PPC64-NETBSD %s
638 //
639 // PPC64-NETBSD:typedef long long int int64_t;
640 // PPC64-NETBSD:typedef long long unsigned int uint64_t;
641 // PPC64-NETBSD:typedef int64_t int_least64_t;
642 // PPC64-NETBSD:typedef uint64_t uint_least64_t;
643 // PPC64-NETBSD:typedef int64_t int_fast64_t;
644 // PPC64-NETBSD:typedef uint64_t uint_fast64_t;
645 //
646 // PPC64-NETBSD:typedef int int32_t;
647 // PPC64-NETBSD:typedef unsigned int uint32_t;
648 // PPC64-NETBSD:typedef int32_t int_least32_t;
649 // PPC64-NETBSD:typedef uint32_t uint_least32_t;
650 // PPC64-NETBSD:typedef int32_t int_fast32_t;
651 // PPC64-NETBSD:typedef uint32_t uint_fast32_t;
652 //
653 // PPC64-NETBSD:typedef short int16_t;
654 // PPC64-NETBSD:typedef unsigned short uint16_t;
655 // PPC64-NETBSD:typedef int16_t int_least16_t;
656 // PPC64-NETBSD:typedef uint16_t uint_least16_t;
657 // PPC64-NETBSD:typedef int16_t int_fast16_t;
658 // PPC64-NETBSD:typedef uint16_t uint_fast16_t;
659 //
660 // PPC64-NETBSD:typedef signed char int8_t;
661 // PPC64-NETBSD:typedef unsigned char uint8_t;
662 // PPC64-NETBSD:typedef int8_t int_least8_t;
663 // PPC64-NETBSD:typedef uint8_t uint_least8_t;
664 // PPC64-NETBSD:typedef int8_t int_fast8_t;
665 // PPC64-NETBSD:typedef uint8_t uint_fast8_t;
666 //
667 // PPC64-NETBSD:typedef int64_t intptr_t;
668 // PPC64-NETBSD:typedef uint64_t uintptr_t;
669 //
670 // PPC64-NETBSD:typedef long long int intmax_t;
671 // PPC64-NETBSD:typedef long long unsigned int uintmax_t;
672 //
673 // PPC64-NETBSD:INT8_MAX_ 127
674 // PPC64-NETBSD:INT8_MIN_ (-127 -1)
675 // PPC64-NETBSD:UINT8_MAX_ 255
676 // PPC64-NETBSD:INT_LEAST8_MIN_ (-127 -1)
677 // PPC64-NETBSD:INT_LEAST8_MAX_ 127
678 // PPC64-NETBSD:UINT_LEAST8_MAX_ 255
679 // PPC64-NETBSD:INT_FAST8_MIN_ (-127 -1)
680 // PPC64-NETBSD:INT_FAST8_MAX_ 127
681 // PPC64-NETBSD:UINT_FAST8_MAX_ 255
682 //
683 // PPC64-NETBSD:INT16_MAX_ 32767
684 // PPC64-NETBSD:INT16_MIN_ (-32767 -1)
685 // PPC64-NETBSD:UINT16_MAX_ 65535
686 // PPC64-NETBSD:INT_LEAST16_MIN_ (-32767 -1)
687 // PPC64-NETBSD:INT_LEAST16_MAX_ 32767
688 // PPC64-NETBSD:UINT_LEAST16_MAX_ 65535
689 // PPC64-NETBSD:INT_FAST16_MIN_ (-32767 -1)
690 // PPC64-NETBSD:INT_FAST16_MAX_ 32767
691 // PPC64-NETBSD:UINT_FAST16_MAX_ 65535
692 //
693 // PPC64-NETBSD:INT32_MAX_ 2147483647
694 // PPC64-NETBSD:INT32_MIN_ (-2147483647 -1)
695 // PPC64-NETBSD:UINT32_MAX_ 4294967295U
696 // PPC64-NETBSD:INT_LEAST32_MIN_ (-2147483647 -1)
697 // PPC64-NETBSD:INT_LEAST32_MAX_ 2147483647
698 // PPC64-NETBSD:UINT_LEAST32_MAX_ 4294967295U
699 // PPC64-NETBSD:INT_FAST32_MIN_ (-2147483647 -1)
700 // PPC64-NETBSD:INT_FAST32_MAX_ 2147483647
701 // PPC64-NETBSD:UINT_FAST32_MAX_ 4294967295U
702 //
703 // PPC64-NETBSD:INT64_MAX_ 9223372036854775807LL
704 // PPC64-NETBSD:INT64_MIN_ (-9223372036854775807LL -1)
705 // PPC64-NETBSD:UINT64_MAX_ 18446744073709551615ULL
706 // PPC64-NETBSD:INT_LEAST64_MIN_ (-9223372036854775807LL -1)
707 // PPC64-NETBSD:INT_LEAST64_MAX_ 9223372036854775807LL
708 // PPC64-NETBSD:UINT_LEAST64_MAX_ 18446744073709551615ULL
709 // PPC64-NETBSD:INT_FAST64_MIN_ (-9223372036854775807LL -1)
710 // PPC64-NETBSD:INT_FAST64_MAX_ 9223372036854775807LL
711 // PPC64-NETBSD:UINT_FAST64_MAX_ 18446744073709551615ULL
712 //
713 // PPC64-NETBSD:INTPTR_MIN_ (-9223372036854775807LL -1)
714 // PPC64-NETBSD:INTPTR_MAX_ 9223372036854775807LL
715 // PPC64-NETBSD:UINTPTR_MAX_ 18446744073709551615ULL
716 // PPC64-NETBSD:PTRDIFF_MIN_ (-9223372036854775807LL -1)
717 // PPC64-NETBSD:PTRDIFF_MAX_ 9223372036854775807LL
718 // PPC64-NETBSD:SIZE_MAX_ 18446744073709551615ULL
719 //
720 // PPC64-NETBSD:INTMAX_MIN_ (-9223372036854775807LL -1)
721 // PPC64-NETBSD:INTMAX_MAX_ 9223372036854775807LL
722 // PPC64-NETBSD:UINTMAX_MAX_ 18446744073709551615ULL
723 //
724 // PPC64-NETBSD:SIG_ATOMIC_MIN_ (-2147483647 -1)
725 // PPC64-NETBSD:SIG_ATOMIC_MAX_ 2147483647
726 // PPC64-NETBSD:WINT_MIN_ (-2147483647 -1)
727 // PPC64-NETBSD:WINT_MAX_ 2147483647
728 //
729 // PPC64-NETBSD:WCHAR_MAX_ 2147483647
730 // PPC64-NETBSD:WCHAR_MIN_ (-2147483647 -1)
731 //
732 // PPC64-NETBSD:INT8_C_(0) 0
733 // PPC64-NETBSD:UINT8_C_(0) 0U
734 // PPC64-NETBSD:INT16_C_(0) 0
735 // PPC64-NETBSD:UINT16_C_(0) 0U
736 // PPC64-NETBSD:INT32_C_(0) 0
737 // PPC64-NETBSD:UINT32_C_(0) 0U
738 // PPC64-NETBSD:INT64_C_(0) 0LL
739 // PPC64-NETBSD:UINT64_C_(0) 0ULL
740 //
741 // PPC64-NETBSD:INTMAX_C_(0) 0LL
742 // PPC64-NETBSD:UINTMAX_C_(0) 0ULL
743 //
744 // RUN: %clang_cc1 -E -ffreestanding -triple=powerpc-none-none %s | FileCheck -check-prefix PPC %s
745 //
746 //
747 // PPC:typedef long long int int64_t;
748 // PPC:typedef long long unsigned int uint64_t;
749 // PPC:typedef int64_t int_least64_t;
750 // PPC:typedef uint64_t uint_least64_t;
751 // PPC:typedef int64_t int_fast64_t;
752 // PPC:typedef uint64_t uint_fast64_t;
753 //
754 // PPC:typedef int int32_t;
755 // PPC:typedef unsigned int uint32_t;
756 // PPC:typedef int32_t int_least32_t;
757 // PPC:typedef uint32_t uint_least32_t;
758 // PPC:typedef int32_t int_fast32_t;
759 // PPC:typedef uint32_t uint_fast32_t;
760 //
761 // PPC:typedef short int16_t;
762 // PPC:typedef unsigned short uint16_t;
763 // PPC:typedef int16_t int_least16_t;
764 // PPC:typedef uint16_t uint_least16_t;
765 // PPC:typedef int16_t int_fast16_t;
766 // PPC:typedef uint16_t uint_fast16_t;
767 //
768 // PPC:typedef signed char int8_t;
769 // PPC:typedef unsigned char uint8_t;
770 // PPC:typedef int8_t int_least8_t;
771 // PPC:typedef uint8_t uint_least8_t;
772 // PPC:typedef int8_t int_fast8_t;
773 // PPC:typedef uint8_t uint_fast8_t;
774 //
775 // PPC:typedef int32_t intptr_t;
776 // PPC:typedef uint32_t uintptr_t;
777 //
778 // PPC:typedef long long int intmax_t;
779 // PPC:typedef long long unsigned int uintmax_t;
780 //
781 // PPC:INT8_MAX_ 127
782 // PPC:INT8_MIN_ (-127 -1)
783 // PPC:UINT8_MAX_ 255
784 // PPC:INT_LEAST8_MIN_ (-127 -1)
785 // PPC:INT_LEAST8_MAX_ 127
786 // PPC:UINT_LEAST8_MAX_ 255
787 // PPC:INT_FAST8_MIN_ (-127 -1)
788 // PPC:INT_FAST8_MAX_ 127
789 // PPC:UINT_FAST8_MAX_ 255
790 //
791 // PPC:INT16_MAX_ 32767
792 // PPC:INT16_MIN_ (-32767 -1)
793 // PPC:UINT16_MAX_ 65535
794 // PPC:INT_LEAST16_MIN_ (-32767 -1)
795 // PPC:INT_LEAST16_MAX_ 32767
796 // PPC:UINT_LEAST16_MAX_ 65535
797 // PPC:INT_FAST16_MIN_ (-32767 -1)
798 // PPC:INT_FAST16_MAX_ 32767
799 // PPC:UINT_FAST16_MAX_ 65535
800 //
801 // PPC:INT32_MAX_ 2147483647
802 // PPC:INT32_MIN_ (-2147483647 -1)
803 // PPC:UINT32_MAX_ 4294967295U
804 // PPC:INT_LEAST32_MIN_ (-2147483647 -1)
805 // PPC:INT_LEAST32_MAX_ 2147483647
806 // PPC:UINT_LEAST32_MAX_ 4294967295U
807 // PPC:INT_FAST32_MIN_ (-2147483647 -1)
808 // PPC:INT_FAST32_MAX_ 2147483647
809 // PPC:UINT_FAST32_MAX_ 4294967295U
810 //
811 // PPC:INT64_MAX_ 9223372036854775807LL
812 // PPC:INT64_MIN_ (-9223372036854775807LL -1)
813 // PPC:UINT64_MAX_ 18446744073709551615ULL
814 // PPC:INT_LEAST64_MIN_ (-9223372036854775807LL -1)
815 // PPC:INT_LEAST64_MAX_ 9223372036854775807LL
816 // PPC:UINT_LEAST64_MAX_ 18446744073709551615ULL
817 // PPC:INT_FAST64_MIN_ (-9223372036854775807LL -1)
818 // PPC:INT_FAST64_MAX_ 9223372036854775807LL
819 // PPC:UINT_FAST64_MAX_ 18446744073709551615ULL
820 //
821 // PPC:INTPTR_MIN_ (-2147483647 -1)
822 // PPC:INTPTR_MAX_ 2147483647
823 // PPC:UINTPTR_MAX_ 4294967295U
824 // PPC:PTRDIFF_MIN_ (-2147483647 -1)
825 // PPC:PTRDIFF_MAX_ 2147483647
826 // PPC:SIZE_MAX_ 4294967295U
827 //
828 // PPC:INTMAX_MIN_ (-9223372036854775807LL -1)
829 // PPC:INTMAX_MAX_ 9223372036854775807LL
830 // PPC:UINTMAX_MAX_ 18446744073709551615ULL
831 //
832 // PPC:SIG_ATOMIC_MIN_ (-2147483647 -1)
833 // PPC:SIG_ATOMIC_MAX_ 2147483647
834 // PPC:WINT_MIN_ (-2147483647 -1)
835 // PPC:WINT_MAX_ 2147483647
836 //
837 // PPC:WCHAR_MAX_ 2147483647
838 // PPC:WCHAR_MIN_ (-2147483647 -1)
839 //
840 // PPC:INT8_C_(0) 0
841 // PPC:UINT8_C_(0) 0U
842 // PPC:INT16_C_(0) 0
843 // PPC:UINT16_C_(0) 0U
844 // PPC:INT32_C_(0) 0
845 // PPC:UINT32_C_(0) 0U
846 // PPC:INT64_C_(0) 0LL
847 // PPC:UINT64_C_(0) 0ULL
848 //
849 // PPC:INTMAX_C_(0) 0LL
850 // PPC:UINTMAX_C_(0) 0ULL
851 //
852 // RUN: %clang_cc1 -E -ffreestanding -triple=s390x-none-none %s | FileCheck -check-prefix S390X %s
853 //
854 // S390X:typedef long long int int64_t;
855 // S390X:typedef long long unsigned int uint64_t;
856 // S390X:typedef int64_t int_least64_t;
857 // S390X:typedef uint64_t uint_least64_t;
858 // S390X:typedef int64_t int_fast64_t;
859 // S390X:typedef uint64_t uint_fast64_t;
860 //
861 // S390X:typedef int int32_t;
862 // S390X:typedef unsigned int uint32_t;
863 // S390X:typedef int32_t int_least32_t;
864 // S390X:typedef uint32_t uint_least32_t;
865 // S390X:typedef int32_t int_fast32_t;
866 // S390X:typedef uint32_t uint_fast32_t;
867 //
868 // S390X:typedef short int16_t;
869 // S390X:typedef unsigned short uint16_t;
870 // S390X:typedef int16_t int_least16_t;
871 // S390X:typedef uint16_t uint_least16_t;
872 // S390X:typedef int16_t int_fast16_t;
873 // S390X:typedef uint16_t uint_fast16_t;
874 //
875 // S390X:typedef signed char int8_t;
876 // S390X:typedef unsigned char uint8_t;
877 // S390X:typedef int8_t int_least8_t;
878 // S390X:typedef uint8_t uint_least8_t;
879 // S390X:typedef int8_t int_fast8_t;
880 // S390X:typedef uint8_t uint_fast8_t;
881 //
882 // S390X:typedef int64_t intptr_t;
883 // S390X:typedef uint64_t uintptr_t;
884 //
885 // S390X:typedef long long int intmax_t;
886 // S390X:typedef long long unsigned int uintmax_t;
887 //
888 // S390X:INT8_MAX_ 127
889 // S390X:INT8_MIN_ (-127 -1)
890 // S390X:UINT8_MAX_ 255
891 // S390X:INT_LEAST8_MIN_ (-127 -1)
892 // S390X:INT_LEAST8_MAX_ 127
893 // S390X:UINT_LEAST8_MAX_ 255
894 // S390X:INT_FAST8_MIN_ (-127 -1)
895 // S390X:INT_FAST8_MAX_ 127
896 // S390X:UINT_FAST8_MAX_ 255
897 //
898 // S390X:INT16_MAX_ 32767
899 // S390X:INT16_MIN_ (-32767 -1)
900 // S390X:UINT16_MAX_ 65535
901 // S390X:INT_LEAST16_MIN_ (-32767 -1)
902 // S390X:INT_LEAST16_MAX_ 32767
903 // S390X:UINT_LEAST16_MAX_ 65535
904 // S390X:INT_FAST16_MIN_ (-32767 -1)
905 // S390X:INT_FAST16_MAX_ 32767
906 // S390X:UINT_FAST16_MAX_ 65535
907 //
908 // S390X:INT32_MAX_ 2147483647
909 // S390X:INT32_MIN_ (-2147483647 -1)
910 // S390X:UINT32_MAX_ 4294967295U
911 // S390X:INT_LEAST32_MIN_ (-2147483647 -1)
912 // S390X:INT_LEAST32_MAX_ 2147483647
913 // S390X:UINT_LEAST32_MAX_ 4294967295U
914 // S390X:INT_FAST32_MIN_ (-2147483647 -1)
915 // S390X:INT_FAST32_MAX_ 2147483647
916 // S390X:UINT_FAST32_MAX_ 4294967295U
917 //
918 // S390X:INT64_MAX_ 9223372036854775807L
919 // S390X:INT64_MIN_ (-9223372036854775807LL -1)
920 // S390X:UINT64_MAX_ 18446744073709551615UL
921 // S390X:INT_LEAST64_MIN_ (-9223372036854775807LL -1)
922 // S390X:INT_LEAST64_MAX_ 9223372036854775807L
923 // S390X:UINT_LEAST64_MAX_ 18446744073709551615UL
924 // S390X:INT_FAST64_MIN_ (-9223372036854775807LL -1)
925 // S390X:INT_FAST64_MAX_ 9223372036854775807L
926 // S390X:UINT_FAST64_MAX_ 18446744073709551615UL
927 //
928 // S390X:INTPTR_MIN_ (-9223372036854775807LL -1)
929 // S390X:INTPTR_MAX_ 9223372036854775807L
930 // S390X:UINTPTR_MAX_ 18446744073709551615UL
931 // S390X:PTRDIFF_MIN_ (-9223372036854775807LL -1)
932 // S390X:PTRDIFF_MAX_ 9223372036854775807L
933 // S390X:SIZE_MAX_ 18446744073709551615UL
934 //
935 // S390X:INTMAX_MIN_ (-9223372036854775807LL -1)
936 // S390X:INTMAX_MAX_ 9223372036854775807L
937 // S390X:UINTMAX_MAX_ 18446744073709551615UL
938 //
939 // S390X:SIG_ATOMIC_MIN_ (-2147483647 -1)
940 // S390X:SIG_ATOMIC_MAX_ 2147483647
941 // S390X:WINT_MIN_ (-2147483647 -1)
942 // S390X:WINT_MAX_ 2147483647
943 //
944 // S390X:WCHAR_MAX_ 2147483647
945 // S390X:WCHAR_MIN_ (-2147483647 -1)
946 //
947 // S390X:INT8_C_(0) 0
948 // S390X:UINT8_C_(0) 0U
949 // S390X:INT16_C_(0) 0
950 // S390X:UINT16_C_(0) 0U
951 // S390X:INT32_C_(0) 0
952 // S390X:UINT32_C_(0) 0U
953 // S390X:INT64_C_(0) 0L
954 // S390X:UINT64_C_(0) 0UL
955 //
956 // S390X:INTMAX_C_(0) 0L
957 // S390X:UINTMAX_C_(0) 0UL
958 //
959 // RUN: %clang_cc1 -E -ffreestanding -triple=sparc-none-none %s | FileCheck -check-prefix SPARC %s
960 //
961 // SPARC:typedef long long int int64_t;
962 // SPARC:typedef long long unsigned int uint64_t;
963 // SPARC:typedef int64_t int_least64_t;
964 // SPARC:typedef uint64_t uint_least64_t;
965 // SPARC:typedef int64_t int_fast64_t;
966 // SPARC:typedef uint64_t uint_fast64_t;
967 //
968 // SPARC:typedef int int32_t;
969 // SPARC:typedef unsigned int uint32_t;
970 // SPARC:typedef int32_t int_least32_t;
971 // SPARC:typedef uint32_t uint_least32_t;
972 // SPARC:typedef int32_t int_fast32_t;
973 // SPARC:typedef uint32_t uint_fast32_t;
974 //
975 // SPARC:typedef short int16_t;
976 // SPARC:typedef unsigned short uint16_t;
977 // SPARC:typedef int16_t int_least16_t;
978 // SPARC:typedef uint16_t uint_least16_t;
979 // SPARC:typedef int16_t int_fast16_t;
980 // SPARC:typedef uint16_t uint_fast16_t;
981 //
982 // SPARC:typedef signed char int8_t;
983 // SPARC:typedef unsigned char uint8_t;
984 // SPARC:typedef int8_t int_least8_t;
985 // SPARC:typedef uint8_t uint_least8_t;
986 // SPARC:typedef int8_t int_fast8_t;
987 // SPARC:typedef uint8_t uint_fast8_t;
988 //
989 // SPARC:typedef int32_t intptr_t;
990 // SPARC:typedef uint32_t uintptr_t;
991 //
992 // SPARC:typedef long long int intmax_t;
993 // SPARC:typedef long long unsigned int uintmax_t;
994 //
995 // SPARC:INT8_MAX_ 127
996 // SPARC:INT8_MIN_ (-127 -1)
997 // SPARC:UINT8_MAX_ 255
998 // SPARC:INT_LEAST8_MIN_ (-127 -1)
999 // SPARC:INT_LEAST8_MAX_ 127
1000 // SPARC:UINT_LEAST8_MAX_ 255
1001 // SPARC:INT_FAST8_MIN_ (-127 -1)
1002 // SPARC:INT_FAST8_MAX_ 127
1003 // SPARC:UINT_FAST8_MAX_ 255
1004 //
1005 // SPARC:INT16_MAX_ 32767
1006 // SPARC:INT16_MIN_ (-32767 -1)
1007 // SPARC:UINT16_MAX_ 65535
1008 // SPARC:INT_LEAST16_MIN_ (-32767 -1)
1009 // SPARC:INT_LEAST16_MAX_ 32767
1010 // SPARC:UINT_LEAST16_MAX_ 65535
1011 // SPARC:INT_FAST16_MIN_ (-32767 -1)
1012 // SPARC:INT_FAST16_MAX_ 32767
1013 // SPARC:UINT_FAST16_MAX_ 65535
1014 //
1015 // SPARC:INT32_MAX_ 2147483647
1016 // SPARC:INT32_MIN_ (-2147483647 -1)
1017 // SPARC:UINT32_MAX_ 4294967295U
1018 // SPARC:INT_LEAST32_MIN_ (-2147483647 -1)
1019 // SPARC:INT_LEAST32_MAX_ 2147483647
1020 // SPARC:UINT_LEAST32_MAX_ 4294967295U
1021 // SPARC:INT_FAST32_MIN_ (-2147483647 -1)
1022 // SPARC:INT_FAST32_MAX_ 2147483647
1023 // SPARC:UINT_FAST32_MAX_ 4294967295U
1024 //
1025 // SPARC:INT64_MAX_ 9223372036854775807LL
1026 // SPARC:INT64_MIN_ (-9223372036854775807LL -1)
1027 // SPARC:UINT64_MAX_ 18446744073709551615ULL
1028 // SPARC:INT_LEAST64_MIN_ (-9223372036854775807LL -1)
1029 // SPARC:INT_LEAST64_MAX_ 9223372036854775807LL
1030 // SPARC:UINT_LEAST64_MAX_ 18446744073709551615ULL
1031 // SPARC:INT_FAST64_MIN_ (-9223372036854775807LL -1)
1032 // SPARC:INT_FAST64_MAX_ 9223372036854775807LL
1033 // SPARC:UINT_FAST64_MAX_ 18446744073709551615ULL
1034 //
1035 // SPARC:INTPTR_MIN_ (-2147483647 -1)
1036 // SPARC:INTPTR_MAX_ 2147483647
1037 // SPARC:UINTPTR_MAX_ 4294967295U
1038 // SPARC:PTRDIFF_MIN_ (-2147483647 -1)
1039 // SPARC:PTRDIFF_MAX_ 2147483647
1040 // SPARC:SIZE_MAX_ 4294967295U
1041 //
1042 // SPARC:INTMAX_MIN_ (-9223372036854775807LL -1)
1043 // SPARC:INTMAX_MAX_ 9223372036854775807LL
1044 // SPARC:UINTMAX_MAX_ 18446744073709551615ULL
1045 //
1046 // SPARC:SIG_ATOMIC_MIN_ (-2147483647 -1)
1047 // SPARC:SIG_ATOMIC_MAX_ 2147483647
1048 // SPARC:WINT_MIN_ (-2147483647 -1)
1049 // SPARC:WINT_MAX_ 2147483647
1050 //
1051 // SPARC:WCHAR_MAX_ 2147483647
1052 // SPARC:WCHAR_MIN_ (-2147483647 -1)
1053 //
1054 // SPARC:INT8_C_(0) 0
1055 // SPARC:UINT8_C_(0) 0U
1056 // SPARC:INT16_C_(0) 0
1057 // SPARC:UINT16_C_(0) 0U
1058 // SPARC:INT32_C_(0) 0
1059 // SPARC:UINT32_C_(0) 0U
1060 // SPARC:INT64_C_(0) 0LL
1061 // SPARC:UINT64_C_(0) 0ULL
1062 //
1063 // SPARC:INTMAX_C_(0) 0LL
1064 // SPARC:UINTMAX_C_(0) 0ULL
1065 //
1066 // RUN: %clang_cc1 -E -ffreestanding -triple=tce-none-none %s | FileCheck -check-prefix TCE %s
1067 //
1068 // TCE:typedef int int32_t;
1069 // TCE:typedef unsigned int uint32_t;
1070 // TCE:typedef int32_t int_least32_t;
1071 // TCE:typedef uint32_t uint_least32_t;
1072 // TCE:typedef int32_t int_fast32_t;
1073 // TCE:typedef uint32_t uint_fast32_t;
1074 //
1075 // TCE:typedef short int16_t;
1076 // TCE:typedef unsigned short uint16_t;
1077 // TCE:typedef int16_t int_least16_t;
1078 // TCE:typedef uint16_t uint_least16_t;
1079 // TCE:typedef int16_t int_fast16_t;
1080 // TCE:typedef uint16_t uint_fast16_t;
1081 //
1082 // TCE:typedef signed char int8_t;
1083 // TCE:typedef unsigned char uint8_t;
1084 // TCE:typedef int8_t int_least8_t;
1085 // TCE:typedef uint8_t uint_least8_t;
1086 // TCE:typedef int8_t int_fast8_t;
1087 // TCE:typedef uint8_t uint_fast8_t;
1088 //
1089 // TCE:typedef int32_t intptr_t;
1090 // TCE:typedef uint32_t uintptr_t;
1091 //
1092 // TCE:typedef long int intmax_t;
1093 // TCE:typedef long unsigned int uintmax_t;
1094 //
1095 // TCE:INT8_MAX_ 127
1096 // TCE:INT8_MIN_ (-127 -1)
1097 // TCE:UINT8_MAX_ 255
1098 // TCE:INT_LEAST8_MIN_ (-127 -1)
1099 // TCE:INT_LEAST8_MAX_ 127
1100 // TCE:UINT_LEAST8_MAX_ 255
1101 // TCE:INT_FAST8_MIN_ (-127 -1)
1102 // TCE:INT_FAST8_MAX_ 127
1103 // TCE:UINT_FAST8_MAX_ 255
1104 //
1105 // TCE:INT16_MAX_ 32767
1106 // TCE:INT16_MIN_ (-32767 -1)
1107 // TCE:UINT16_MAX_ 65535
1108 // TCE:INT_LEAST16_MIN_ (-32767 -1)
1109 // TCE:INT_LEAST16_MAX_ 32767
1110 // TCE:UINT_LEAST16_MAX_ 65535
1111 // TCE:INT_FAST16_MIN_ (-32767 -1)
1112 // TCE:INT_FAST16_MAX_ 32767
1113 // TCE:UINT_FAST16_MAX_ 65535
1114 //
1115 // TCE:INT32_MAX_ 2147483647
1116 // TCE:INT32_MIN_ (-2147483647 -1)
1117 // TCE:UINT32_MAX_ 4294967295U
1118 // TCE:INT_LEAST32_MIN_ (-2147483647 -1)
1119 // TCE:INT_LEAST32_MAX_ 2147483647
1120 // TCE:UINT_LEAST32_MAX_ 4294967295U
1121 // TCE:INT_FAST32_MIN_ (-2147483647 -1)
1122 // TCE:INT_FAST32_MAX_ 2147483647
1123 // TCE:UINT_FAST32_MAX_ 4294967295U
1124 //
1125 // TCE:INT64_MAX_ INT64_MAX
1126 // TCE:INT64_MIN_ INT64_MIN
1127 // TCE:UINT64_MAX_ UINT64_MAX
1128 // TCE:INT_LEAST64_MIN_ INT_LEAST64_MIN
1129 // TCE:INT_LEAST64_MAX_ INT_LEAST64_MAX
1130 // TCE:UINT_LEAST64_MAX_ UINT_LEAST64_MAX
1131 // TCE:INT_FAST64_MIN_ INT_FAST64_MIN
1132 // TCE:INT_FAST64_MAX_ INT_FAST64_MAX
1133 // TCE:UINT_FAST64_MAX_ UINT_FAST64_MAX
1134 //
1135 // TCE:INTPTR_MIN_ (-2147483647 -1)
1136 // TCE:INTPTR_MAX_ 2147483647
1137 // TCE:UINTPTR_MAX_ 4294967295U
1138 // TCE:PTRDIFF_MIN_ (-2147483647 -1)
1139 // TCE:PTRDIFF_MAX_ 2147483647
1140 // TCE:SIZE_MAX_ 4294967295U
1141 //
1142 // TCE:INTMAX_MIN_ (-2147483647 -1)
1143 // TCE:INTMAX_MAX_ 2147483647
1144 // TCE:UINTMAX_MAX_ 4294967295U
1145 //
1146 // TCE:SIG_ATOMIC_MIN_ (-2147483647 -1)
1147 // TCE:SIG_ATOMIC_MAX_ 2147483647
1148 // TCE:WINT_MIN_ (-2147483647 -1)
1149 // TCE:WINT_MAX_ 2147483647
1150 //
1151 // TCE:WCHAR_MAX_ 2147483647
1152 // TCE:WCHAR_MIN_ (-2147483647 -1)
1153 //
1154 // TCE:INT8_C_(0) 0
1155 // TCE:UINT8_C_(0) 0U
1156 // TCE:INT16_C_(0) 0
1157 // TCE:UINT16_C_(0) 0U
1158 // TCE:INT32_C_(0) 0
1159 // TCE:UINT32_C_(0) 0U
1160 // TCE:INT64_C_(0) INT64_C(0)
1161 // TCE:UINT64_C_(0) UINT64_C(0)
1162 //
1163 // TCE:INTMAX_C_(0) 0
1164 // TCE:UINTMAX_C_(0) 0U
1165 //
1166 // RUN: %clang_cc1 -E -ffreestanding -triple=x86_64-none-none %s | FileCheck -check-prefix X86_64 %s
1167 //
1168 //
1169 // X86_64:typedef long int int64_t;
1170 // X86_64:typedef long unsigned int uint64_t;
1171 // X86_64:typedef int64_t int_least64_t;
1172 // X86_64:typedef uint64_t uint_least64_t;
1173 // X86_64:typedef int64_t int_fast64_t;
1174 // X86_64:typedef uint64_t uint_fast64_t;
1175 //
1176 // X86_64:typedef int int32_t;
1177 // X86_64:typedef unsigned int uint32_t;
1178 // X86_64:typedef int32_t int_least32_t;
1179 // X86_64:typedef uint32_t uint_least32_t;
1180 // X86_64:typedef int32_t int_fast32_t;
1181 // X86_64:typedef uint32_t uint_fast32_t;
1182 //
1183 // X86_64:typedef short int16_t;
1184 // X86_64:typedef unsigned short uint16_t;
1185 // X86_64:typedef int16_t int_least16_t;
1186 // X86_64:typedef uint16_t uint_least16_t;
1187 // X86_64:typedef int16_t int_fast16_t;
1188 // X86_64:typedef uint16_t uint_fast16_t;
1189 //
1190 // X86_64:typedef signed char int8_t;
1191 // X86_64:typedef unsigned char uint8_t;
1192 // X86_64:typedef int8_t int_least8_t;
1193 // X86_64:typedef uint8_t uint_least8_t;
1194 // X86_64:typedef int8_t int_fast8_t;
1195 // X86_64:typedef uint8_t uint_fast8_t;
1196 //
1197 // X86_64:typedef int64_t intptr_t;
1198 // X86_64:typedef uint64_t uintptr_t;
1199 //
1200 // X86_64:typedef long int intmax_t;
1201 // X86_64:typedef long unsigned int uintmax_t;
1202 //
1203 // X86_64:INT8_MAX_ 127
1204 // X86_64:INT8_MIN_ (-127 -1)
1205 // X86_64:UINT8_MAX_ 255
1206 // X86_64:INT_LEAST8_MIN_ (-127 -1)
1207 // X86_64:INT_LEAST8_MAX_ 127
1208 // X86_64:UINT_LEAST8_MAX_ 255
1209 // X86_64:INT_FAST8_MIN_ (-127 -1)
1210 // X86_64:INT_FAST8_MAX_ 127
1211 // X86_64:UINT_FAST8_MAX_ 255
1212 //
1213 // X86_64:INT16_MAX_ 32767
1214 // X86_64:INT16_MIN_ (-32767 -1)
1215 // X86_64:UINT16_MAX_ 65535
1216 // X86_64:INT_LEAST16_MIN_ (-32767 -1)
1217 // X86_64:INT_LEAST16_MAX_ 32767
1218 // X86_64:UINT_LEAST16_MAX_ 65535
1219 // X86_64:INT_FAST16_MIN_ (-32767 -1)
1220 // X86_64:INT_FAST16_MAX_ 32767
1221 // X86_64:UINT_FAST16_MAX_ 65535
1222 //
1223 // X86_64:INT32_MAX_ 2147483647
1224 // X86_64:INT32_MIN_ (-2147483647 -1)
1225 // X86_64:UINT32_MAX_ 4294967295U
1226 // X86_64:INT_LEAST32_MIN_ (-2147483647 -1)
1227 // X86_64:INT_LEAST32_MAX_ 2147483647
1228 // X86_64:UINT_LEAST32_MAX_ 4294967295U
1229 // X86_64:INT_FAST32_MIN_ (-2147483647 -1)
1230 // X86_64:INT_FAST32_MAX_ 2147483647
1231 // X86_64:UINT_FAST32_MAX_ 4294967295U
1232 //
1233 // X86_64:INT64_MAX_ 9223372036854775807L
1234 // X86_64:INT64_MIN_ (-9223372036854775807L -1)
1235 // X86_64:UINT64_MAX_ 18446744073709551615UL
1236 // X86_64:INT_LEAST64_MIN_ (-9223372036854775807L -1)
1237 // X86_64:INT_LEAST64_MAX_ 9223372036854775807L
1238 // X86_64:UINT_LEAST64_MAX_ 18446744073709551615UL
1239 // X86_64:INT_FAST64_MIN_ (-9223372036854775807L -1)
1240 // X86_64:INT_FAST64_MAX_ 9223372036854775807L
1241 // X86_64:UINT_FAST64_MAX_ 18446744073709551615UL
1242 //
1243 // X86_64:INTPTR_MIN_ (-9223372036854775807L -1)
1244 // X86_64:INTPTR_MAX_ 9223372036854775807L
1245 // X86_64:UINTPTR_MAX_ 18446744073709551615UL
1246 // X86_64:PTRDIFF_MIN_ (-9223372036854775807L -1)
1247 // X86_64:PTRDIFF_MAX_ 9223372036854775807L
1248 // X86_64:SIZE_MAX_ 18446744073709551615UL
1249 //
1250 // X86_64:INTMAX_MIN_ (-9223372036854775807L -1)
1251 // X86_64:INTMAX_MAX_ 9223372036854775807L
1252 // X86_64:UINTMAX_MAX_ 18446744073709551615UL
1253 //
1254 // X86_64:SIG_ATOMIC_MIN_ (-2147483647 -1)
1255 // X86_64:SIG_ATOMIC_MAX_ 2147483647
1256 // X86_64:WINT_MIN_ (-2147483647 -1)
1257 // X86_64:WINT_MAX_ 2147483647
1258 //
1259 // X86_64:WCHAR_MAX_ 2147483647
1260 // X86_64:WCHAR_MIN_ (-2147483647 -1)
1261 //
1262 // X86_64:INT8_C_(0) 0
1263 // X86_64:UINT8_C_(0) 0U
1264 // X86_64:INT16_C_(0) 0
1265 // X86_64:UINT16_C_(0) 0U
1266 // X86_64:INT32_C_(0) 0
1267 // X86_64:UINT32_C_(0) 0U
1268 // X86_64:INT64_C_(0) 0L
1269 // X86_64:UINT64_C_(0) 0UL
1270 //
1271 // X86_64:INTMAX_C_(0) 0L
1272 // X86_64:UINTMAX_C_(0) 0UL
1273 //
1274 //
1275 // RUN: %clang_cc1 -E -ffreestanding -triple=x86_64-pc-linux-gnu %s | FileCheck -check-prefix X86_64_LINUX %s
1276 //
1277 // X86_64_LINUX:WINT_MIN_ 0U
1278 // X86_64_LINUX:WINT_MAX_ 4294967295U
1279 //
1280 //
1281 // RUN: %clang_cc1 -E -ffreestanding -triple=i386-mingw32 %s | FileCheck -check-prefix I386_MINGW32 %s
1282 //
1283 // I386_MINGW32:WCHAR_MAX_ 65535
1284 // I386_MINGW32:WCHAR_MIN_ 0
1285 //
1286 //
1287 // RUN: %clang_cc1 -E -ffreestanding -triple=xcore-none-none %s | FileCheck -check-prefix XCORE %s
1288 //
1289 // XCORE:typedef long long int int64_t;
1290 // XCORE:typedef long long unsigned int uint64_t;
1291 // XCORE:typedef int64_t int_least64_t;
1292 // XCORE:typedef uint64_t uint_least64_t;
1293 // XCORE:typedef int64_t int_fast64_t;
1294 // XCORE:typedef uint64_t uint_fast64_t;
1295 //
1296 // XCORE:typedef int int32_t;
1297 // XCORE:typedef unsigned int uint32_t;
1298 // XCORE:typedef int32_t int_least32_t;
1299 // XCORE:typedef uint32_t uint_least32_t;
1300 // XCORE:typedef int32_t int_fast32_t;
1301 // XCORE:typedef uint32_t uint_fast32_t;
1302 //
1303 // XCORE:typedef short int16_t;
1304 // XCORE:typedef unsigned short uint16_t;
1305 // XCORE:typedef int16_t int_least16_t;
1306 // XCORE:typedef uint16_t uint_least16_t;
1307 // XCORE:typedef int16_t int_fast16_t;
1308 // XCORE:typedef uint16_t uint_fast16_t;
1309 //
1310 // XCORE:typedef signed char int8_t;
1311 // XCORE:typedef unsigned char uint8_t;
1312 // XCORE:typedef int8_t int_least8_t;
1313 // XCORE:typedef uint8_t uint_least8_t;
1314 // XCORE:typedef int8_t int_fast8_t;
1315 // XCORE:typedef uint8_t uint_fast8_t;
1316 //
1317 // XCORE:typedef int32_t intptr_t;
1318 // XCORE:typedef uint32_t uintptr_t;
1319 //
1320 // XCORE:typedef long long int intmax_t;
1321 // XCORE:typedef long long unsigned int uintmax_t;
1322 //
1323 // XCORE:INT8_MAX_ 127
1324 // XCORE:INT8_MIN_ (-127 -1)
1325 // XCORE:UINT8_MAX_ 255
1326 // XCORE:INT_LEAST8_MIN_ (-127 -1)
1327 // XCORE:INT_LEAST8_MAX_ 127
1328 // XCORE:UINT_LEAST8_MAX_ 255
1329 // XCORE:INT_FAST8_MIN_ (-127 -1)
1330 // XCORE:INT_FAST8_MAX_ 127
1331 // XCORE:UINT_FAST8_MAX_ 255
1332 //
1333 // XCORE:INT16_MAX_ 32767
1334 // XCORE:INT16_MIN_ (-32767 -1)
1335 // XCORE:UINT16_MAX_ 65535
1336 // XCORE:INT_LEAST16_MIN_ (-32767 -1)
1337 // XCORE:INT_LEAST16_MAX_ 32767
1338 // XCORE:UINT_LEAST16_MAX_ 65535
1339 // XCORE:INT_FAST16_MIN_ (-32767 -1)
1340 // XCORE:INT_FAST16_MAX_ 32767
1341 // XCORE:UINT_FAST16_MAX_ 65535
1342 //
1343 // XCORE:INT32_MAX_ 2147483647
1344 // XCORE:INT32_MIN_ (-2147483647 -1)
1345 // XCORE:UINT32_MAX_ 4294967295U
1346 // XCORE:INT_LEAST32_MIN_ (-2147483647 -1)
1347 // XCORE:INT_LEAST32_MAX_ 2147483647
1348 // XCORE:UINT_LEAST32_MAX_ 4294967295U
1349 // XCORE:INT_FAST32_MIN_ (-2147483647 -1)
1350 // XCORE:INT_FAST32_MAX_ 2147483647
1351 // XCORE:UINT_FAST32_MAX_ 4294967295U
1352 //
1353 // XCORE:INT64_MAX_ 9223372036854775807LL
1354 // XCORE:INT64_MIN_ (-9223372036854775807LL -1)
1355 // XCORE:UINT64_MAX_ 18446744073709551615ULL
1356 // XCORE:INT_LEAST64_MIN_ (-9223372036854775807LL -1)
1357 // XCORE:INT_LEAST64_MAX_ 9223372036854775807LL
1358 // XCORE:UINT_LEAST64_MAX_ 18446744073709551615ULL
1359 // XCORE:INT_FAST64_MIN_ (-9223372036854775807LL -1)
1360 // XCORE:INT_FAST64_MAX_ 9223372036854775807LL
1361 // XCORE:UINT_FAST64_MAX_ 18446744073709551615ULL
1362 //
1363 // XCORE:INTPTR_MIN_ (-2147483647 -1)
1364 // XCORE:INTPTR_MAX_ 2147483647
1365 // XCORE:UINTPTR_MAX_ 4294967295U
1366 // XCORE:PTRDIFF_MIN_ (-2147483647 -1)
1367 // XCORE:PTRDIFF_MAX_ 2147483647
1368 // XCORE:SIZE_MAX_ 4294967295U
1369 //
1370 // XCORE:INTMAX_MIN_ (-9223372036854775807LL -1)
1371 // XCORE:INTMAX_MAX_ 9223372036854775807LL
1372 // XCORE:UINTMAX_MAX_ 18446744073709551615ULL
1373 //
1374 // XCORE:SIG_ATOMIC_MIN_ (-2147483647 -1)
1375 // XCORE:SIG_ATOMIC_MAX_ 2147483647
1376 // XCORE:WINT_MIN_ 0U
1377 // XCORE:WINT_MAX_ 4294967295U
1378 //
1379 // XCORE:WCHAR_MAX_ 255
1380 // XCORE:WCHAR_MIN_ 0
1381 //
1382 // XCORE:INT8_C_(0) 0
1383 // XCORE:UINT8_C_(0) 0U
1384 // XCORE:INT16_C_(0) 0
1385 // XCORE:UINT16_C_(0) 0U
1386 // XCORE:INT32_C_(0) 0
1387 // XCORE:UINT32_C_(0) 0U
1388 // XCORE:INT64_C_(0) 0LL
1389 // XCORE:UINT64_C_(0) 0ULL
1390 //
1391 // XCORE:INTMAX_C_(0) 0LL
1392 // XCORE:UINTMAX_C_(0) 0ULL
1393 //
1394 //
1395 // stdint.h forms several macro definitions by pasting together identifiers
1396 // to form names (eg. int32_t is formed from int ## 32 ## _t). The following
1397 // case tests that these joining operations are performed correctly even if
1398 // the identifiers used in the operations (int, uint, _t, INT, UINT, _MIN,
1399 // _MAX, and _C(v)) are themselves macros.
1400 //
1401 // RUN: %clang_cc1 -E -ffreestanding -U__UINTMAX_TYPE__ -U__INTMAX_TYPE__ -Dint=a -Duint=b -D_t=c -DINT=d -DUINT=e -D_MIN=f -D_MAX=g '-D_C(v)=h' -triple=i386-none-none %s | FileCheck -check-prefix JOIN %s
1402 // JOIN:typedef int32_t intptr_t;
1403 // JOIN:typedef uint32_t uintptr_t;
1404 // JOIN:typedef __INTMAX_TYPE__ intmax_t;
1405 // JOIN:typedef __UINTMAX_TYPE__ uintmax_t;
1406 // JOIN:INTPTR_MIN_ (-2147483647 -1)
1407 // JOIN:INTPTR_MAX_ 2147483647
1408 // JOIN:UINTPTR_MAX_ 4294967295U
1409 // JOIN:PTRDIFF_MIN_ (-2147483647 -1)
1410 // JOIN:PTRDIFF_MAX_ 2147483647
1411 // JOIN:SIZE_MAX_ 4294967295U
1412 // JOIN:INTMAX_MIN_ (-9223372036854775807LL -1)
1413 // JOIN:INTMAX_MAX_ 9223372036854775807LL
1414 // JOIN:UINTMAX_MAX_ 18446744073709551615ULL
1415 // JOIN:SIG_ATOMIC_MIN_ (-2147483647 -1)
1416 // JOIN:SIG_ATOMIC_MAX_ 2147483647
1417 // JOIN:WINT_MIN_ (-2147483647 -1)
1418 // JOIN:WINT_MAX_ 2147483647
1419 // JOIN:WCHAR_MAX_ 2147483647
1420 // JOIN:WCHAR_MIN_ (-2147483647 -1)
1421 // JOIN:INTMAX_C_(0) 0LL
1422 // JOIN:UINTMAX_C_(0) 0ULL
1423 
1424 #include <stdint.h>
1425 
1426 INT8_MAX_ INT8_MAX
1427 INT8_MIN_ INT8_MIN
1428 UINT8_MAX_ UINT8_MAX
1429 INT_LEAST8_MIN_ INT_LEAST8_MIN
1430 INT_LEAST8_MAX_ INT_LEAST8_MAX
1431 UINT_LEAST8_MAX_ UINT_LEAST8_MAX
1432 INT_FAST8_MIN_ INT_FAST8_MIN
1433 INT_FAST8_MAX_ INT_FAST8_MAX
1434 UINT_FAST8_MAX_ UINT_FAST8_MAX
1435 
1436 INT16_MAX_ INT16_MAX
1437 INT16_MIN_ INT16_MIN
1438 UINT16_MAX_ UINT16_MAX
1439 INT_LEAST16_MIN_ INT_LEAST16_MIN
1440 INT_LEAST16_MAX_ INT_LEAST16_MAX
1441 UINT_LEAST16_MAX_ UINT_LEAST16_MAX
1442 INT_FAST16_MIN_ INT_FAST16_MIN
1443 INT_FAST16_MAX_ INT_FAST16_MAX
1444 UINT_FAST16_MAX_ UINT_FAST16_MAX
1445 
1446 INT32_MAX_ INT32_MAX
1447 INT32_MIN_ INT32_MIN
1448 UINT32_MAX_ UINT32_MAX
1449 INT_LEAST32_MIN_ INT_LEAST32_MIN
1450 INT_LEAST32_MAX_ INT_LEAST32_MAX
1451 UINT_LEAST32_MAX_ UINT_LEAST32_MAX
1452 INT_FAST32_MIN_ INT_FAST32_MIN
1453 INT_FAST32_MAX_ INT_FAST32_MAX
1454 UINT_FAST32_MAX_ UINT_FAST32_MAX
1455 
1456 INT64_MAX_ INT64_MAX
1457 INT64_MIN_ INT64_MIN
1458 UINT64_MAX_ UINT64_MAX
1459 INT_LEAST64_MIN_ INT_LEAST64_MIN
1460 INT_LEAST64_MAX_ INT_LEAST64_MAX
1461 UINT_LEAST64_MAX_ UINT_LEAST64_MAX
1462 INT_FAST64_MIN_ INT_FAST64_MIN
1463 INT_FAST64_MAX_ INT_FAST64_MAX
1464 UINT_FAST64_MAX_ UINT_FAST64_MAX
1465 
1466 INTPTR_MIN_ INTPTR_MIN
1467 INTPTR_MAX_ INTPTR_MAX
1468 UINTPTR_MAX_ UINTPTR_MAX
1469 PTRDIFF_MIN_ PTRDIFF_MIN
1470 PTRDIFF_MAX_ PTRDIFF_MAX
1471 SIZE_MAX_ SIZE_MAX
1472 
1473 INTMAX_MIN_ INTMAX_MIN
1474 INTMAX_MAX_ INTMAX_MAX
1475 UINTMAX_MAX_ UINTMAX_MAX
1476 
1477 SIG_ATOMIC_MIN_ SIG_ATOMIC_MIN
1478 SIG_ATOMIC_MAX_ SIG_ATOMIC_MAX
1479 WINT_MIN_ WINT_MIN
1480 WINT_MAX_ WINT_MAX
1481 
1482 WCHAR_MAX_ WCHAR_MAX
1483 WCHAR_MIN_ WCHAR_MIN
1484 
1485 INT8_C_(0) INT8_C(0)
1486 UINT8_C_(0) UINT8_C(0)
1487 INT16_C_(0) INT16_C(0)
1488 UINT16_C_(0) UINT16_C(0)
1489 INT32_C_(0) INT32_C(0)
1490 UINT32_C_(0) UINT32_C(0)
1491 INT64_C_(0) INT64_C(0)
1492 UINT64_C_(0) UINT64_C(0)
1493 
1494 INTMAX_C_(0) INTMAX_C(0)
1495 UINTMAX_C_(0) UINTMAX_C(0)
1496