1 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=thumbv7-windows-msvc < /dev/null | FileCheck -match-full-lines -check-prefix ARM-MSVC %s
2 //
3 // ARM-MSVC: #define _M_ARM_NT 1
4 // ARM-MSVC: #define _WIN32 1
5 // ARM-MSVC-NOT:#define __ARM_DWARF_EH__ 1
6 
7 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=arm-none-none < /dev/null | FileCheck -match-full-lines -check-prefix ARM %s
8 // RUN: %clang_cc1 -x c++ -E -dM -ffreestanding -triple=arm-none-none < /dev/null | FileCheck -match-full-lines -check-prefix ARM -check-prefix ARM-CXX %s
9 //
10 // ARM-NOT:#define _LP64
11 // ARM:#define __APCS_32__ 1
12 // ARM-NOT:#define __ARMEB__ 1
13 // ARM:#define __ARMEL__ 1
14 // ARM:#define __ARM_ARCH_4T__ 1
15 // ARM-NOT:#define __ARM_BIG_ENDIAN 1
16 // ARM:#define __BIGGEST_ALIGNMENT__ 8
17 // ARM:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
18 // ARM:#define __CHAR16_TYPE__ unsigned short
19 // ARM:#define __CHAR32_TYPE__ unsigned int
20 // ARM:#define __CHAR_BIT__ 8
21 // ARM:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
22 // ARM:#define __DBL_DIG__ 15
23 // ARM:#define __DBL_EPSILON__ 2.2204460492503131e-16
24 // ARM:#define __DBL_HAS_DENORM__ 1
25 // ARM:#define __DBL_HAS_INFINITY__ 1
26 // ARM:#define __DBL_HAS_QUIET_NAN__ 1
27 // ARM:#define __DBL_MANT_DIG__ 53
28 // ARM:#define __DBL_MAX_10_EXP__ 308
29 // ARM:#define __DBL_MAX_EXP__ 1024
30 // ARM:#define __DBL_MAX__ 1.7976931348623157e+308
31 // ARM:#define __DBL_MIN_10_EXP__ (-307)
32 // ARM:#define __DBL_MIN_EXP__ (-1021)
33 // ARM:#define __DBL_MIN__ 2.2250738585072014e-308
34 // ARM:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
35 // ARM:#define __FLT_DENORM_MIN__ 1.40129846e-45F
36 // ARM:#define __FLT_DIG__ 6
37 // ARM:#define __FLT_EPSILON__ 1.19209290e-7F
38 // ARM:#define __FLT_HAS_DENORM__ 1
39 // ARM:#define __FLT_HAS_INFINITY__ 1
40 // ARM:#define __FLT_HAS_QUIET_NAN__ 1
41 // ARM:#define __FLT_MANT_DIG__ 24
42 // ARM:#define __FLT_MAX_10_EXP__ 38
43 // ARM:#define __FLT_MAX_EXP__ 128
44 // ARM:#define __FLT_MAX__ 3.40282347e+38F
45 // ARM:#define __FLT_MIN_10_EXP__ (-37)
46 // ARM:#define __FLT_MIN_EXP__ (-125)
47 // ARM:#define __FLT_MIN__ 1.17549435e-38F
48 // ARM:#define __FLT_RADIX__ 2
49 // ARM:#define __INT16_C_SUFFIX__
50 // ARM:#define __INT16_FMTd__ "hd"
51 // ARM:#define __INT16_FMTi__ "hi"
52 // ARM:#define __INT16_MAX__ 32767
53 // ARM:#define __INT16_TYPE__ short
54 // ARM:#define __INT32_C_SUFFIX__
55 // ARM:#define __INT32_FMTd__ "d"
56 // ARM:#define __INT32_FMTi__ "i"
57 // ARM:#define __INT32_MAX__ 2147483647
58 // ARM:#define __INT32_TYPE__ int
59 // ARM:#define __INT64_C_SUFFIX__ LL
60 // ARM:#define __INT64_FMTd__ "lld"
61 // ARM:#define __INT64_FMTi__ "lli"
62 // ARM:#define __INT64_MAX__ 9223372036854775807LL
63 // ARM:#define __INT64_TYPE__ long long int
64 // ARM:#define __INT8_C_SUFFIX__
65 // ARM:#define __INT8_FMTd__ "hhd"
66 // ARM:#define __INT8_FMTi__ "hhi"
67 // ARM:#define __INT8_MAX__ 127
68 // ARM:#define __INT8_TYPE__ signed char
69 // ARM:#define __INTMAX_C_SUFFIX__ LL
70 // ARM:#define __INTMAX_FMTd__ "lld"
71 // ARM:#define __INTMAX_FMTi__ "lli"
72 // ARM:#define __INTMAX_MAX__ 9223372036854775807LL
73 // ARM:#define __INTMAX_TYPE__ long long int
74 // ARM:#define __INTMAX_WIDTH__ 64
75 // ARM:#define __INTPTR_FMTd__ "d"
76 // ARM:#define __INTPTR_FMTi__ "i"
77 // ARM:#define __INTPTR_MAX__ 2147483647
78 // ARM:#define __INTPTR_TYPE__ int
79 // ARM:#define __INTPTR_WIDTH__ 32
80 // ARM:#define __INT_FAST16_FMTd__ "hd"
81 // ARM:#define __INT_FAST16_FMTi__ "hi"
82 // ARM:#define __INT_FAST16_MAX__ 32767
83 // ARM:#define __INT_FAST16_TYPE__ short
84 // ARM:#define __INT_FAST32_FMTd__ "d"
85 // ARM:#define __INT_FAST32_FMTi__ "i"
86 // ARM:#define __INT_FAST32_MAX__ 2147483647
87 // ARM:#define __INT_FAST32_TYPE__ int
88 // ARM:#define __INT_FAST64_FMTd__ "lld"
89 // ARM:#define __INT_FAST64_FMTi__ "lli"
90 // ARM:#define __INT_FAST64_MAX__ 9223372036854775807LL
91 // ARM:#define __INT_FAST64_TYPE__ long long int
92 // ARM:#define __INT_FAST8_FMTd__ "hhd"
93 // ARM:#define __INT_FAST8_FMTi__ "hhi"
94 // ARM:#define __INT_FAST8_MAX__ 127
95 // ARM:#define __INT_FAST8_TYPE__ signed char
96 // ARM:#define __INT_LEAST16_FMTd__ "hd"
97 // ARM:#define __INT_LEAST16_FMTi__ "hi"
98 // ARM:#define __INT_LEAST16_MAX__ 32767
99 // ARM:#define __INT_LEAST16_TYPE__ short
100 // ARM:#define __INT_LEAST32_FMTd__ "d"
101 // ARM:#define __INT_LEAST32_FMTi__ "i"
102 // ARM:#define __INT_LEAST32_MAX__ 2147483647
103 // ARM:#define __INT_LEAST32_TYPE__ int
104 // ARM:#define __INT_LEAST64_FMTd__ "lld"
105 // ARM:#define __INT_LEAST64_FMTi__ "lli"
106 // ARM:#define __INT_LEAST64_MAX__ 9223372036854775807LL
107 // ARM:#define __INT_LEAST64_TYPE__ long long int
108 // ARM:#define __INT_LEAST8_FMTd__ "hhd"
109 // ARM:#define __INT_LEAST8_FMTi__ "hhi"
110 // ARM:#define __INT_LEAST8_MAX__ 127
111 // ARM:#define __INT_LEAST8_TYPE__ signed char
112 // ARM:#define __INT_MAX__ 2147483647
113 // ARM:#define __LDBL_DENORM_MIN__ 4.9406564584124654e-324L
114 // ARM:#define __LDBL_DIG__ 15
115 // ARM:#define __LDBL_EPSILON__ 2.2204460492503131e-16L
116 // ARM:#define __LDBL_HAS_DENORM__ 1
117 // ARM:#define __LDBL_HAS_INFINITY__ 1
118 // ARM:#define __LDBL_HAS_QUIET_NAN__ 1
119 // ARM:#define __LDBL_MANT_DIG__ 53
120 // ARM:#define __LDBL_MAX_10_EXP__ 308
121 // ARM:#define __LDBL_MAX_EXP__ 1024
122 // ARM:#define __LDBL_MAX__ 1.7976931348623157e+308L
123 // ARM:#define __LDBL_MIN_10_EXP__ (-307)
124 // ARM:#define __LDBL_MIN_EXP__ (-1021)
125 // ARM:#define __LDBL_MIN__ 2.2250738585072014e-308L
126 // ARM:#define __LITTLE_ENDIAN__ 1
127 // ARM:#define __LONG_LONG_MAX__ 9223372036854775807LL
128 // ARM:#define __LONG_MAX__ 2147483647L
129 // ARM-NOT:#define __LP64__
130 // ARM:#define __POINTER_WIDTH__ 32
131 // ARM:#define __PTRDIFF_TYPE__ int
132 // ARM:#define __PTRDIFF_WIDTH__ 32
133 // ARM:#define __REGISTER_PREFIX__
134 // ARM:#define __SCHAR_MAX__ 127
135 // ARM:#define __SHRT_MAX__ 32767
136 // ARM:#define __SIG_ATOMIC_MAX__ 2147483647
137 // ARM:#define __SIG_ATOMIC_WIDTH__ 32
138 // ARM:#define __SIZEOF_DOUBLE__ 8
139 // ARM:#define __SIZEOF_FLOAT__ 4
140 // ARM:#define __SIZEOF_INT__ 4
141 // ARM:#define __SIZEOF_LONG_DOUBLE__ 8
142 // ARM:#define __SIZEOF_LONG_LONG__ 8
143 // ARM:#define __SIZEOF_LONG__ 4
144 // ARM:#define __SIZEOF_POINTER__ 4
145 // ARM:#define __SIZEOF_PTRDIFF_T__ 4
146 // ARM:#define __SIZEOF_SHORT__ 2
147 // ARM:#define __SIZEOF_SIZE_T__ 4
148 // ARM:#define __SIZEOF_WCHAR_T__ 4
149 // ARM:#define __SIZEOF_WINT_T__ 4
150 // ARM:#define __SIZE_MAX__ 4294967295U
151 // ARM:#define __SIZE_TYPE__ unsigned int
152 // ARM:#define __SIZE_WIDTH__ 32
153 // ARM-CXX:#define __STDCPP_DEFAULT_NEW_ALIGNMENT__ 8U
154 // ARM:#define __UINT16_C_SUFFIX__
155 // ARM:#define __UINT16_MAX__ 65535
156 // ARM:#define __UINT16_TYPE__ unsigned short
157 // ARM:#define __UINT32_C_SUFFIX__ U
158 // ARM:#define __UINT32_MAX__ 4294967295U
159 // ARM:#define __UINT32_TYPE__ unsigned int
160 // ARM:#define __UINT64_C_SUFFIX__ ULL
161 // ARM:#define __UINT64_MAX__ 18446744073709551615ULL
162 // ARM:#define __UINT64_TYPE__ long long unsigned int
163 // ARM:#define __UINT8_C_SUFFIX__
164 // ARM:#define __UINT8_MAX__ 255
165 // ARM:#define __UINT8_TYPE__ unsigned char
166 // ARM:#define __UINTMAX_C_SUFFIX__ ULL
167 // ARM:#define __UINTMAX_MAX__ 18446744073709551615ULL
168 // ARM:#define __UINTMAX_TYPE__ long long unsigned int
169 // ARM:#define __UINTMAX_WIDTH__ 64
170 // ARM:#define __UINTPTR_MAX__ 4294967295U
171 // ARM:#define __UINTPTR_TYPE__ unsigned int
172 // ARM:#define __UINTPTR_WIDTH__ 32
173 // ARM:#define __UINT_FAST16_MAX__ 65535
174 // ARM:#define __UINT_FAST16_TYPE__ unsigned short
175 // ARM:#define __UINT_FAST32_MAX__ 4294967295U
176 // ARM:#define __UINT_FAST32_TYPE__ unsigned int
177 // ARM:#define __UINT_FAST64_MAX__ 18446744073709551615ULL
178 // ARM:#define __UINT_FAST64_TYPE__ long long unsigned int
179 // ARM:#define __UINT_FAST8_MAX__ 255
180 // ARM:#define __UINT_FAST8_TYPE__ unsigned char
181 // ARM:#define __UINT_LEAST16_MAX__ 65535
182 // ARM:#define __UINT_LEAST16_TYPE__ unsigned short
183 // ARM:#define __UINT_LEAST32_MAX__ 4294967295U
184 // ARM:#define __UINT_LEAST32_TYPE__ unsigned int
185 // ARM:#define __UINT_LEAST64_MAX__ 18446744073709551615ULL
186 // ARM:#define __UINT_LEAST64_TYPE__ long long unsigned int
187 // ARM:#define __UINT_LEAST8_MAX__ 255
188 // ARM:#define __UINT_LEAST8_TYPE__ unsigned char
189 // ARM:#define __USER_LABEL_PREFIX__
190 // ARM:#define __WCHAR_MAX__ 4294967295U
191 // ARM:#define __WCHAR_TYPE__ unsigned int
192 // ARM:#define __WCHAR_WIDTH__ 32
193 // ARM:#define __WINT_TYPE__ int
194 // ARM:#define __WINT_WIDTH__ 32
195 // ARM:#define __arm 1
196 // ARM:#define __arm__ 1
197 
198 // RUN: %clang_cc1 -E -dM -triple=armv7-apple-ios7.0 -x c++ < /dev/null | FileCheck -match-full-lines -check-prefix ARM-DARWIN-CXX %s
199 // ARM-DARWIN-CXX: #define __STDCPP_DEFAULT_NEW_ALIGNMENT__ 16UL
200 
201 // RUN: %clang_cc1 -dM -ffreestanding -triple arm-none-none -target-abi apcs-gnu -E /dev/null -o - | FileCheck -match-full-lines -check-prefix ARM-APCS-GNU %s
202 // ARM-APCS-GNU: #define __INTPTR_TYPE__ int
203 // ARM-APCS-GNU: #define __PTRDIFF_TYPE__ int
204 // ARM-APCS-GNU: #define __SIZE_TYPE__ unsigned int
205 
206 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=armeb-none-none < /dev/null | FileCheck -match-full-lines -check-prefix ARM-BE %s
207 //
208 // ARM-BE-NOT:#define _LP64
209 // ARM-BE:#define __APCS_32__ 1
210 // ARM-BE:#define __ARMEB__ 1
211 // ARM-BE-NOT:#define __ARMEL__ 1
212 // ARM-BE:#define __ARM_ARCH_4T__ 1
213 // ARM-BE:#define __ARM_BIG_ENDIAN 1
214 // ARM-BE:#define __BIGGEST_ALIGNMENT__ 8
215 // ARM-BE:#define __BIG_ENDIAN__ 1
216 // ARM-BE:#define __BYTE_ORDER__ __ORDER_BIG_ENDIAN__
217 // ARM-BE:#define __CHAR16_TYPE__ unsigned short
218 // ARM-BE:#define __CHAR32_TYPE__ unsigned int
219 // ARM-BE:#define __CHAR_BIT__ 8
220 // ARM-BE:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
221 // ARM-BE:#define __DBL_DIG__ 15
222 // ARM-BE:#define __DBL_EPSILON__ 2.2204460492503131e-16
223 // ARM-BE:#define __DBL_HAS_DENORM__ 1
224 // ARM-BE:#define __DBL_HAS_INFINITY__ 1
225 // ARM-BE:#define __DBL_HAS_QUIET_NAN__ 1
226 // ARM-BE:#define __DBL_MANT_DIG__ 53
227 // ARM-BE:#define __DBL_MAX_10_EXP__ 308
228 // ARM-BE:#define __DBL_MAX_EXP__ 1024
229 // ARM-BE:#define __DBL_MAX__ 1.7976931348623157e+308
230 // ARM-BE:#define __DBL_MIN_10_EXP__ (-307)
231 // ARM-BE:#define __DBL_MIN_EXP__ (-1021)
232 // ARM-BE:#define __DBL_MIN__ 2.2250738585072014e-308
233 // ARM-BE:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
234 // ARM-BE:#define __FLT_DENORM_MIN__ 1.40129846e-45F
235 // ARM-BE:#define __FLT_DIG__ 6
236 // ARM-BE:#define __FLT_EPSILON__ 1.19209290e-7F
237 // ARM-BE:#define __FLT_HAS_DENORM__ 1
238 // ARM-BE:#define __FLT_HAS_INFINITY__ 1
239 // ARM-BE:#define __FLT_HAS_QUIET_NAN__ 1
240 // ARM-BE:#define __FLT_MANT_DIG__ 24
241 // ARM-BE:#define __FLT_MAX_10_EXP__ 38
242 // ARM-BE:#define __FLT_MAX_EXP__ 128
243 // ARM-BE:#define __FLT_MAX__ 3.40282347e+38F
244 // ARM-BE:#define __FLT_MIN_10_EXP__ (-37)
245 // ARM-BE:#define __FLT_MIN_EXP__ (-125)
246 // ARM-BE:#define __FLT_MIN__ 1.17549435e-38F
247 // ARM-BE:#define __FLT_RADIX__ 2
248 // ARM-BE:#define __INT16_C_SUFFIX__
249 // ARM-BE:#define __INT16_FMTd__ "hd"
250 // ARM-BE:#define __INT16_FMTi__ "hi"
251 // ARM-BE:#define __INT16_MAX__ 32767
252 // ARM-BE:#define __INT16_TYPE__ short
253 // ARM-BE:#define __INT32_C_SUFFIX__
254 // ARM-BE:#define __INT32_FMTd__ "d"
255 // ARM-BE:#define __INT32_FMTi__ "i"
256 // ARM-BE:#define __INT32_MAX__ 2147483647
257 // ARM-BE:#define __INT32_TYPE__ int
258 // ARM-BE:#define __INT64_C_SUFFIX__ LL
259 // ARM-BE:#define __INT64_FMTd__ "lld"
260 // ARM-BE:#define __INT64_FMTi__ "lli"
261 // ARM-BE:#define __INT64_MAX__ 9223372036854775807LL
262 // ARM-BE:#define __INT64_TYPE__ long long int
263 // ARM-BE:#define __INT8_C_SUFFIX__
264 // ARM-BE:#define __INT8_FMTd__ "hhd"
265 // ARM-BE:#define __INT8_FMTi__ "hhi"
266 // ARM-BE:#define __INT8_MAX__ 127
267 // ARM-BE:#define __INT8_TYPE__ signed char
268 // ARM-BE:#define __INTMAX_C_SUFFIX__ LL
269 // ARM-BE:#define __INTMAX_FMTd__ "lld"
270 // ARM-BE:#define __INTMAX_FMTi__ "lli"
271 // ARM-BE:#define __INTMAX_MAX__ 9223372036854775807LL
272 // ARM-BE:#define __INTMAX_TYPE__ long long int
273 // ARM-BE:#define __INTMAX_WIDTH__ 64
274 // ARM-BE:#define __INTPTR_FMTd__ "d"
275 // ARM-BE:#define __INTPTR_FMTi__ "i"
276 // ARM-BE:#define __INTPTR_MAX__ 2147483647
277 // ARM-BE:#define __INTPTR_TYPE__ int
278 // ARM-BE:#define __INTPTR_WIDTH__ 32
279 // ARM-BE:#define __INT_FAST16_FMTd__ "hd"
280 // ARM-BE:#define __INT_FAST16_FMTi__ "hi"
281 // ARM-BE:#define __INT_FAST16_MAX__ 32767
282 // ARM-BE:#define __INT_FAST16_TYPE__ short
283 // ARM-BE:#define __INT_FAST32_FMTd__ "d"
284 // ARM-BE:#define __INT_FAST32_FMTi__ "i"
285 // ARM-BE:#define __INT_FAST32_MAX__ 2147483647
286 // ARM-BE:#define __INT_FAST32_TYPE__ int
287 // ARM-BE:#define __INT_FAST64_FMTd__ "lld"
288 // ARM-BE:#define __INT_FAST64_FMTi__ "lli"
289 // ARM-BE:#define __INT_FAST64_MAX__ 9223372036854775807LL
290 // ARM-BE:#define __INT_FAST64_TYPE__ long long int
291 // ARM-BE:#define __INT_FAST8_FMTd__ "hhd"
292 // ARM-BE:#define __INT_FAST8_FMTi__ "hhi"
293 // ARM-BE:#define __INT_FAST8_MAX__ 127
294 // ARM-BE:#define __INT_FAST8_TYPE__ signed char
295 // ARM-BE:#define __INT_LEAST16_FMTd__ "hd"
296 // ARM-BE:#define __INT_LEAST16_FMTi__ "hi"
297 // ARM-BE:#define __INT_LEAST16_MAX__ 32767
298 // ARM-BE:#define __INT_LEAST16_TYPE__ short
299 // ARM-BE:#define __INT_LEAST32_FMTd__ "d"
300 // ARM-BE:#define __INT_LEAST32_FMTi__ "i"
301 // ARM-BE:#define __INT_LEAST32_MAX__ 2147483647
302 // ARM-BE:#define __INT_LEAST32_TYPE__ int
303 // ARM-BE:#define __INT_LEAST64_FMTd__ "lld"
304 // ARM-BE:#define __INT_LEAST64_FMTi__ "lli"
305 // ARM-BE:#define __INT_LEAST64_MAX__ 9223372036854775807LL
306 // ARM-BE:#define __INT_LEAST64_TYPE__ long long int
307 // ARM-BE:#define __INT_LEAST8_FMTd__ "hhd"
308 // ARM-BE:#define __INT_LEAST8_FMTi__ "hhi"
309 // ARM-BE:#define __INT_LEAST8_MAX__ 127
310 // ARM-BE:#define __INT_LEAST8_TYPE__ signed char
311 // ARM-BE:#define __INT_MAX__ 2147483647
312 // ARM-BE:#define __LDBL_DENORM_MIN__ 4.9406564584124654e-324L
313 // ARM-BE:#define __LDBL_DIG__ 15
314 // ARM-BE:#define __LDBL_EPSILON__ 2.2204460492503131e-16L
315 // ARM-BE:#define __LDBL_HAS_DENORM__ 1
316 // ARM-BE:#define __LDBL_HAS_INFINITY__ 1
317 // ARM-BE:#define __LDBL_HAS_QUIET_NAN__ 1
318 // ARM-BE:#define __LDBL_MANT_DIG__ 53
319 // ARM-BE:#define __LDBL_MAX_10_EXP__ 308
320 // ARM-BE:#define __LDBL_MAX_EXP__ 1024
321 // ARM-BE:#define __LDBL_MAX__ 1.7976931348623157e+308L
322 // ARM-BE:#define __LDBL_MIN_10_EXP__ (-307)
323 // ARM-BE:#define __LDBL_MIN_EXP__ (-1021)
324 // ARM-BE:#define __LDBL_MIN__ 2.2250738585072014e-308L
325 // ARM-BE:#define __LONG_LONG_MAX__ 9223372036854775807LL
326 // ARM-BE:#define __LONG_MAX__ 2147483647L
327 // ARM-BE-NOT:#define __LP64__
328 // ARM-BE:#define __POINTER_WIDTH__ 32
329 // ARM-BE:#define __PTRDIFF_TYPE__ int
330 // ARM-BE:#define __PTRDIFF_WIDTH__ 32
331 // ARM-BE:#define __REGISTER_PREFIX__
332 // ARM-BE:#define __SCHAR_MAX__ 127
333 // ARM-BE:#define __SHRT_MAX__ 32767
334 // ARM-BE:#define __SIG_ATOMIC_MAX__ 2147483647
335 // ARM-BE:#define __SIG_ATOMIC_WIDTH__ 32
336 // ARM-BE:#define __SIZEOF_DOUBLE__ 8
337 // ARM-BE:#define __SIZEOF_FLOAT__ 4
338 // ARM-BE:#define __SIZEOF_INT__ 4
339 // ARM-BE:#define __SIZEOF_LONG_DOUBLE__ 8
340 // ARM-BE:#define __SIZEOF_LONG_LONG__ 8
341 // ARM-BE:#define __SIZEOF_LONG__ 4
342 // ARM-BE:#define __SIZEOF_POINTER__ 4
343 // ARM-BE:#define __SIZEOF_PTRDIFF_T__ 4
344 // ARM-BE:#define __SIZEOF_SHORT__ 2
345 // ARM-BE:#define __SIZEOF_SIZE_T__ 4
346 // ARM-BE:#define __SIZEOF_WCHAR_T__ 4
347 // ARM-BE:#define __SIZEOF_WINT_T__ 4
348 // ARM-BE:#define __SIZE_MAX__ 4294967295U
349 // ARM-BE:#define __SIZE_TYPE__ unsigned int
350 // ARM-BE:#define __SIZE_WIDTH__ 32
351 // ARM-BE:#define __UINT16_C_SUFFIX__
352 // ARM-BE:#define __UINT16_MAX__ 65535
353 // ARM-BE:#define __UINT16_TYPE__ unsigned short
354 // ARM-BE:#define __UINT32_C_SUFFIX__ U
355 // ARM-BE:#define __UINT32_MAX__ 4294967295U
356 // ARM-BE:#define __UINT32_TYPE__ unsigned int
357 // ARM-BE:#define __UINT64_C_SUFFIX__ ULL
358 // ARM-BE:#define __UINT64_MAX__ 18446744073709551615ULL
359 // ARM-BE:#define __UINT64_TYPE__ long long unsigned int
360 // ARM-BE:#define __UINT8_C_SUFFIX__
361 // ARM-BE:#define __UINT8_MAX__ 255
362 // ARM-BE:#define __UINT8_TYPE__ unsigned char
363 // ARM-BE:#define __UINTMAX_C_SUFFIX__ ULL
364 // ARM-BE:#define __UINTMAX_MAX__ 18446744073709551615ULL
365 // ARM-BE:#define __UINTMAX_TYPE__ long long unsigned int
366 // ARM-BE:#define __UINTMAX_WIDTH__ 64
367 // ARM-BE:#define __UINTPTR_MAX__ 4294967295U
368 // ARM-BE:#define __UINTPTR_TYPE__ unsigned int
369 // ARM-BE:#define __UINTPTR_WIDTH__ 32
370 // ARM-BE:#define __UINT_FAST16_MAX__ 65535
371 // ARM-BE:#define __UINT_FAST16_TYPE__ unsigned short
372 // ARM-BE:#define __UINT_FAST32_MAX__ 4294967295U
373 // ARM-BE:#define __UINT_FAST32_TYPE__ unsigned int
374 // ARM-BE:#define __UINT_FAST64_MAX__ 18446744073709551615ULL
375 // ARM-BE:#define __UINT_FAST64_TYPE__ long long unsigned int
376 // ARM-BE:#define __UINT_FAST8_MAX__ 255
377 // ARM-BE:#define __UINT_FAST8_TYPE__ unsigned char
378 // ARM-BE:#define __UINT_LEAST16_MAX__ 65535
379 // ARM-BE:#define __UINT_LEAST16_TYPE__ unsigned short
380 // ARM-BE:#define __UINT_LEAST32_MAX__ 4294967295U
381 // ARM-BE:#define __UINT_LEAST32_TYPE__ unsigned int
382 // ARM-BE:#define __UINT_LEAST64_MAX__ 18446744073709551615ULL
383 // ARM-BE:#define __UINT_LEAST64_TYPE__ long long unsigned int
384 // ARM-BE:#define __UINT_LEAST8_MAX__ 255
385 // ARM-BE:#define __UINT_LEAST8_TYPE__ unsigned char
386 // ARM-BE:#define __USER_LABEL_PREFIX__
387 // ARM-BE:#define __WCHAR_MAX__ 4294967295U
388 // ARM-BE:#define __WCHAR_TYPE__ unsigned int
389 // ARM-BE:#define __WCHAR_WIDTH__ 32
390 // ARM-BE:#define __WINT_TYPE__ int
391 // ARM-BE:#define __WINT_WIDTH__ 32
392 // ARM-BE:#define __arm 1
393 // ARM-BE:#define __arm__ 1
394 
395 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=arm-none-linux-gnueabi -target-feature +soft-float -target-feature +soft-float-abi < /dev/null | FileCheck -match-full-lines -check-prefix ARMEABISOFTFP %s
396 //
397 // ARMEABISOFTFP-NOT:#define _LP64
398 // ARMEABISOFTFP:#define __APCS_32__ 1
399 // ARMEABISOFTFP-NOT:#define __ARMEB__ 1
400 // ARMEABISOFTFP:#define __ARMEL__ 1
401 // ARMEABISOFTFP:#define __ARM_ARCH 4
402 // ARMEABISOFTFP:#define __ARM_ARCH_4T__ 1
403 // ARMEABISOFTFP-NOT:#define __ARM_BIG_ENDIAN 1
404 // ARMEABISOFTFP:#define __ARM_EABI__ 1
405 // ARMEABISOFTFP:#define __ARM_PCS 1
406 // ARMEABISOFTFP-NOT:#define __ARM_PCS_VFP 1
407 // ARMEABISOFTFP:#define __BIGGEST_ALIGNMENT__ 8
408 // ARMEABISOFTFP:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
409 // ARMEABISOFTFP:#define __CHAR16_TYPE__ unsigned short
410 // ARMEABISOFTFP:#define __CHAR32_TYPE__ unsigned int
411 // ARMEABISOFTFP:#define __CHAR_BIT__ 8
412 // ARMEABISOFTFP:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
413 // ARMEABISOFTFP:#define __DBL_DIG__ 15
414 // ARMEABISOFTFP:#define __DBL_EPSILON__ 2.2204460492503131e-16
415 // ARMEABISOFTFP:#define __DBL_HAS_DENORM__ 1
416 // ARMEABISOFTFP:#define __DBL_HAS_INFINITY__ 1
417 // ARMEABISOFTFP:#define __DBL_HAS_QUIET_NAN__ 1
418 // ARMEABISOFTFP:#define __DBL_MANT_DIG__ 53
419 // ARMEABISOFTFP:#define __DBL_MAX_10_EXP__ 308
420 // ARMEABISOFTFP:#define __DBL_MAX_EXP__ 1024
421 // ARMEABISOFTFP:#define __DBL_MAX__ 1.7976931348623157e+308
422 // ARMEABISOFTFP:#define __DBL_MIN_10_EXP__ (-307)
423 // ARMEABISOFTFP:#define __DBL_MIN_EXP__ (-1021)
424 // ARMEABISOFTFP:#define __DBL_MIN__ 2.2250738585072014e-308
425 // ARMEABISOFTFP:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
426 // ARMEABISOFTFP:#define __FLT_DENORM_MIN__ 1.40129846e-45F
427 // ARMEABISOFTFP:#define __FLT_DIG__ 6
428 // ARMEABISOFTFP:#define __FLT_EPSILON__ 1.19209290e-7F
429 // ARMEABISOFTFP:#define __FLT_HAS_DENORM__ 1
430 // ARMEABISOFTFP:#define __FLT_HAS_INFINITY__ 1
431 // ARMEABISOFTFP:#define __FLT_HAS_QUIET_NAN__ 1
432 // ARMEABISOFTFP:#define __FLT_MANT_DIG__ 24
433 // ARMEABISOFTFP:#define __FLT_MAX_10_EXP__ 38
434 // ARMEABISOFTFP:#define __FLT_MAX_EXP__ 128
435 // ARMEABISOFTFP:#define __FLT_MAX__ 3.40282347e+38F
436 // ARMEABISOFTFP:#define __FLT_MIN_10_EXP__ (-37)
437 // ARMEABISOFTFP:#define __FLT_MIN_EXP__ (-125)
438 // ARMEABISOFTFP:#define __FLT_MIN__ 1.17549435e-38F
439 // ARMEABISOFTFP:#define __FLT_RADIX__ 2
440 // ARMEABISOFTFP:#define __INT16_C_SUFFIX__
441 // ARMEABISOFTFP:#define __INT16_FMTd__ "hd"
442 // ARMEABISOFTFP:#define __INT16_FMTi__ "hi"
443 // ARMEABISOFTFP:#define __INT16_MAX__ 32767
444 // ARMEABISOFTFP:#define __INT16_TYPE__ short
445 // ARMEABISOFTFP:#define __INT32_C_SUFFIX__
446 // ARMEABISOFTFP:#define __INT32_FMTd__ "d"
447 // ARMEABISOFTFP:#define __INT32_FMTi__ "i"
448 // ARMEABISOFTFP:#define __INT32_MAX__ 2147483647
449 // ARMEABISOFTFP:#define __INT32_TYPE__ int
450 // ARMEABISOFTFP:#define __INT64_C_SUFFIX__ LL
451 // ARMEABISOFTFP:#define __INT64_FMTd__ "lld"
452 // ARMEABISOFTFP:#define __INT64_FMTi__ "lli"
453 // ARMEABISOFTFP:#define __INT64_MAX__ 9223372036854775807LL
454 // ARMEABISOFTFP:#define __INT64_TYPE__ long long int
455 // ARMEABISOFTFP:#define __INT8_C_SUFFIX__
456 // ARMEABISOFTFP:#define __INT8_FMTd__ "hhd"
457 // ARMEABISOFTFP:#define __INT8_FMTi__ "hhi"
458 // ARMEABISOFTFP:#define __INT8_MAX__ 127
459 // ARMEABISOFTFP:#define __INT8_TYPE__ signed char
460 // ARMEABISOFTFP:#define __INTMAX_C_SUFFIX__ LL
461 // ARMEABISOFTFP:#define __INTMAX_FMTd__ "lld"
462 // ARMEABISOFTFP:#define __INTMAX_FMTi__ "lli"
463 // ARMEABISOFTFP:#define __INTMAX_MAX__ 9223372036854775807LL
464 // ARMEABISOFTFP:#define __INTMAX_TYPE__ long long int
465 // ARMEABISOFTFP:#define __INTMAX_WIDTH__ 64
466 // ARMEABISOFTFP:#define __INTPTR_FMTd__ "d"
467 // ARMEABISOFTFP:#define __INTPTR_FMTi__ "i"
468 // ARMEABISOFTFP:#define __INTPTR_MAX__ 2147483647
469 // ARMEABISOFTFP:#define __INTPTR_TYPE__ int
470 // ARMEABISOFTFP:#define __INTPTR_WIDTH__ 32
471 // ARMEABISOFTFP:#define __INT_FAST16_FMTd__ "hd"
472 // ARMEABISOFTFP:#define __INT_FAST16_FMTi__ "hi"
473 // ARMEABISOFTFP:#define __INT_FAST16_MAX__ 32767
474 // ARMEABISOFTFP:#define __INT_FAST16_TYPE__ short
475 // ARMEABISOFTFP:#define __INT_FAST32_FMTd__ "d"
476 // ARMEABISOFTFP:#define __INT_FAST32_FMTi__ "i"
477 // ARMEABISOFTFP:#define __INT_FAST32_MAX__ 2147483647
478 // ARMEABISOFTFP:#define __INT_FAST32_TYPE__ int
479 // ARMEABISOFTFP:#define __INT_FAST64_FMTd__ "lld"
480 // ARMEABISOFTFP:#define __INT_FAST64_FMTi__ "lli"
481 // ARMEABISOFTFP:#define __INT_FAST64_MAX__ 9223372036854775807LL
482 // ARMEABISOFTFP:#define __INT_FAST64_TYPE__ long long int
483 // ARMEABISOFTFP:#define __INT_FAST8_FMTd__ "hhd"
484 // ARMEABISOFTFP:#define __INT_FAST8_FMTi__ "hhi"
485 // ARMEABISOFTFP:#define __INT_FAST8_MAX__ 127
486 // ARMEABISOFTFP:#define __INT_FAST8_TYPE__ signed char
487 // ARMEABISOFTFP:#define __INT_LEAST16_FMTd__ "hd"
488 // ARMEABISOFTFP:#define __INT_LEAST16_FMTi__ "hi"
489 // ARMEABISOFTFP:#define __INT_LEAST16_MAX__ 32767
490 // ARMEABISOFTFP:#define __INT_LEAST16_TYPE__ short
491 // ARMEABISOFTFP:#define __INT_LEAST32_FMTd__ "d"
492 // ARMEABISOFTFP:#define __INT_LEAST32_FMTi__ "i"
493 // ARMEABISOFTFP:#define __INT_LEAST32_MAX__ 2147483647
494 // ARMEABISOFTFP:#define __INT_LEAST32_TYPE__ int
495 // ARMEABISOFTFP:#define __INT_LEAST64_FMTd__ "lld"
496 // ARMEABISOFTFP:#define __INT_LEAST64_FMTi__ "lli"
497 // ARMEABISOFTFP:#define __INT_LEAST64_MAX__ 9223372036854775807LL
498 // ARMEABISOFTFP:#define __INT_LEAST64_TYPE__ long long int
499 // ARMEABISOFTFP:#define __INT_LEAST8_FMTd__ "hhd"
500 // ARMEABISOFTFP:#define __INT_LEAST8_FMTi__ "hhi"
501 // ARMEABISOFTFP:#define __INT_LEAST8_MAX__ 127
502 // ARMEABISOFTFP:#define __INT_LEAST8_TYPE__ signed char
503 // ARMEABISOFTFP:#define __INT_MAX__ 2147483647
504 // ARMEABISOFTFP:#define __LDBL_DENORM_MIN__ 4.9406564584124654e-324L
505 // ARMEABISOFTFP:#define __LDBL_DIG__ 15
506 // ARMEABISOFTFP:#define __LDBL_EPSILON__ 2.2204460492503131e-16L
507 // ARMEABISOFTFP:#define __LDBL_HAS_DENORM__ 1
508 // ARMEABISOFTFP:#define __LDBL_HAS_INFINITY__ 1
509 // ARMEABISOFTFP:#define __LDBL_HAS_QUIET_NAN__ 1
510 // ARMEABISOFTFP:#define __LDBL_MANT_DIG__ 53
511 // ARMEABISOFTFP:#define __LDBL_MAX_10_EXP__ 308
512 // ARMEABISOFTFP:#define __LDBL_MAX_EXP__ 1024
513 // ARMEABISOFTFP:#define __LDBL_MAX__ 1.7976931348623157e+308L
514 // ARMEABISOFTFP:#define __LDBL_MIN_10_EXP__ (-307)
515 // ARMEABISOFTFP:#define __LDBL_MIN_EXP__ (-1021)
516 // ARMEABISOFTFP:#define __LDBL_MIN__ 2.2250738585072014e-308L
517 // ARMEABISOFTFP:#define __LITTLE_ENDIAN__ 1
518 // ARMEABISOFTFP:#define __LONG_LONG_MAX__ 9223372036854775807LL
519 // ARMEABISOFTFP:#define __LONG_MAX__ 2147483647L
520 // ARMEABISOFTFP-NOT:#define __LP64__
521 // ARMEABISOFTFP:#define __POINTER_WIDTH__ 32
522 // ARMEABISOFTFP:#define __PTRDIFF_TYPE__ int
523 // ARMEABISOFTFP:#define __PTRDIFF_WIDTH__ 32
524 // ARMEABISOFTFP:#define __REGISTER_PREFIX__
525 // ARMEABISOFTFP:#define __SCHAR_MAX__ 127
526 // ARMEABISOFTFP:#define __SHRT_MAX__ 32767
527 // ARMEABISOFTFP:#define __SIG_ATOMIC_MAX__ 2147483647
528 // ARMEABISOFTFP:#define __SIG_ATOMIC_WIDTH__ 32
529 // ARMEABISOFTFP:#define __SIZEOF_DOUBLE__ 8
530 // ARMEABISOFTFP:#define __SIZEOF_FLOAT__ 4
531 // ARMEABISOFTFP:#define __SIZEOF_INT__ 4
532 // ARMEABISOFTFP:#define __SIZEOF_LONG_DOUBLE__ 8
533 // ARMEABISOFTFP:#define __SIZEOF_LONG_LONG__ 8
534 // ARMEABISOFTFP:#define __SIZEOF_LONG__ 4
535 // ARMEABISOFTFP:#define __SIZEOF_POINTER__ 4
536 // ARMEABISOFTFP:#define __SIZEOF_PTRDIFF_T__ 4
537 // ARMEABISOFTFP:#define __SIZEOF_SHORT__ 2
538 // ARMEABISOFTFP:#define __SIZEOF_SIZE_T__ 4
539 // ARMEABISOFTFP:#define __SIZEOF_WCHAR_T__ 4
540 // ARMEABISOFTFP:#define __SIZEOF_WINT_T__ 4
541 // ARMEABISOFTFP:#define __SIZE_MAX__ 4294967295U
542 // ARMEABISOFTFP:#define __SIZE_TYPE__ unsigned int
543 // ARMEABISOFTFP:#define __SIZE_WIDTH__ 32
544 // ARMEABISOFTFP:#define __SOFTFP__ 1
545 // ARMEABISOFTFP:#define __UINT16_C_SUFFIX__
546 // ARMEABISOFTFP:#define __UINT16_MAX__ 65535
547 // ARMEABISOFTFP:#define __UINT16_TYPE__ unsigned short
548 // ARMEABISOFTFP:#define __UINT32_C_SUFFIX__ U
549 // ARMEABISOFTFP:#define __UINT32_MAX__ 4294967295U
550 // ARMEABISOFTFP:#define __UINT32_TYPE__ unsigned int
551 // ARMEABISOFTFP:#define __UINT64_C_SUFFIX__ ULL
552 // ARMEABISOFTFP:#define __UINT64_MAX__ 18446744073709551615ULL
553 // ARMEABISOFTFP:#define __UINT64_TYPE__ long long unsigned int
554 // ARMEABISOFTFP:#define __UINT8_C_SUFFIX__
555 // ARMEABISOFTFP:#define __UINT8_MAX__ 255
556 // ARMEABISOFTFP:#define __UINT8_TYPE__ unsigned char
557 // ARMEABISOFTFP:#define __UINTMAX_C_SUFFIX__ ULL
558 // ARMEABISOFTFP:#define __UINTMAX_MAX__ 18446744073709551615ULL
559 // ARMEABISOFTFP:#define __UINTMAX_TYPE__ long long unsigned int
560 // ARMEABISOFTFP:#define __UINTMAX_WIDTH__ 64
561 // ARMEABISOFTFP:#define __UINTPTR_MAX__ 4294967295U
562 // ARMEABISOFTFP:#define __UINTPTR_TYPE__ unsigned int
563 // ARMEABISOFTFP:#define __UINTPTR_WIDTH__ 32
564 // ARMEABISOFTFP:#define __UINT_FAST16_MAX__ 65535
565 // ARMEABISOFTFP:#define __UINT_FAST16_TYPE__ unsigned short
566 // ARMEABISOFTFP:#define __UINT_FAST32_MAX__ 4294967295U
567 // ARMEABISOFTFP:#define __UINT_FAST32_TYPE__ unsigned int
568 // ARMEABISOFTFP:#define __UINT_FAST64_MAX__ 18446744073709551615ULL
569 // ARMEABISOFTFP:#define __UINT_FAST64_TYPE__ long long unsigned int
570 // ARMEABISOFTFP:#define __UINT_FAST8_MAX__ 255
571 // ARMEABISOFTFP:#define __UINT_FAST8_TYPE__ unsigned char
572 // ARMEABISOFTFP:#define __UINT_LEAST16_MAX__ 65535
573 // ARMEABISOFTFP:#define __UINT_LEAST16_TYPE__ unsigned short
574 // ARMEABISOFTFP:#define __UINT_LEAST32_MAX__ 4294967295U
575 // ARMEABISOFTFP:#define __UINT_LEAST32_TYPE__ unsigned int
576 // ARMEABISOFTFP:#define __UINT_LEAST64_MAX__ 18446744073709551615ULL
577 // ARMEABISOFTFP:#define __UINT_LEAST64_TYPE__ long long unsigned int
578 // ARMEABISOFTFP:#define __UINT_LEAST8_MAX__ 255
579 // ARMEABISOFTFP:#define __UINT_LEAST8_TYPE__ unsigned char
580 // ARMEABISOFTFP:#define __USER_LABEL_PREFIX__
581 // ARMEABISOFTFP:#define __WCHAR_MAX__ 4294967295U
582 // ARMEABISOFTFP:#define __WCHAR_TYPE__ unsigned int
583 // ARMEABISOFTFP:#define __WCHAR_WIDTH__ 32
584 // ARMEABISOFTFP:#define __WINT_TYPE__ unsigned int
585 // ARMEABISOFTFP:#define __WINT_WIDTH__ 32
586 // ARMEABISOFTFP:#define __arm 1
587 // ARMEABISOFTFP:#define __arm__ 1
588 
589 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=arm-none-linux-gnueabi < /dev/null | FileCheck -match-full-lines -check-prefix ARMEABIHARDFP %s
590 //
591 // ARMEABIHARDFP-NOT:#define _LP64
592 // ARMEABIHARDFP:#define __APCS_32__ 1
593 // ARMEABIHARDFP-NOT:#define __ARMEB__ 1
594 // ARMEABIHARDFP:#define __ARMEL__ 1
595 // ARMEABIHARDFP:#define __ARM_ARCH 4
596 // ARMEABIHARDFP:#define __ARM_ARCH_4T__ 1
597 // ARMEABIHARDFP-NOT:#define __ARM_BIG_ENDIAN 1
598 // ARMEABIHARDFP:#define __ARM_EABI__ 1
599 // ARMEABIHARDFP:#define __ARM_PCS 1
600 // ARMEABIHARDFP:#define __ARM_PCS_VFP 1
601 // ARMEABIHARDFP:#define __BIGGEST_ALIGNMENT__ 8
602 // ARMEABIHARDFP:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
603 // ARMEABIHARDFP:#define __CHAR16_TYPE__ unsigned short
604 // ARMEABIHARDFP:#define __CHAR32_TYPE__ unsigned int
605 // ARMEABIHARDFP:#define __CHAR_BIT__ 8
606 // ARMEABIHARDFP:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
607 // ARMEABIHARDFP:#define __DBL_DIG__ 15
608 // ARMEABIHARDFP:#define __DBL_EPSILON__ 2.2204460492503131e-16
609 // ARMEABIHARDFP:#define __DBL_HAS_DENORM__ 1
610 // ARMEABIHARDFP:#define __DBL_HAS_INFINITY__ 1
611 // ARMEABIHARDFP:#define __DBL_HAS_QUIET_NAN__ 1
612 // ARMEABIHARDFP:#define __DBL_MANT_DIG__ 53
613 // ARMEABIHARDFP:#define __DBL_MAX_10_EXP__ 308
614 // ARMEABIHARDFP:#define __DBL_MAX_EXP__ 1024
615 // ARMEABIHARDFP:#define __DBL_MAX__ 1.7976931348623157e+308
616 // ARMEABIHARDFP:#define __DBL_MIN_10_EXP__ (-307)
617 // ARMEABIHARDFP:#define __DBL_MIN_EXP__ (-1021)
618 // ARMEABIHARDFP:#define __DBL_MIN__ 2.2250738585072014e-308
619 // ARMEABIHARDFP:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
620 // ARMEABIHARDFP:#define __FLT_DENORM_MIN__ 1.40129846e-45F
621 // ARMEABIHARDFP:#define __FLT_DIG__ 6
622 // ARMEABIHARDFP:#define __FLT_EPSILON__ 1.19209290e-7F
623 // ARMEABIHARDFP:#define __FLT_HAS_DENORM__ 1
624 // ARMEABIHARDFP:#define __FLT_HAS_INFINITY__ 1
625 // ARMEABIHARDFP:#define __FLT_HAS_QUIET_NAN__ 1
626 // ARMEABIHARDFP:#define __FLT_MANT_DIG__ 24
627 // ARMEABIHARDFP:#define __FLT_MAX_10_EXP__ 38
628 // ARMEABIHARDFP:#define __FLT_MAX_EXP__ 128
629 // ARMEABIHARDFP:#define __FLT_MAX__ 3.40282347e+38F
630 // ARMEABIHARDFP:#define __FLT_MIN_10_EXP__ (-37)
631 // ARMEABIHARDFP:#define __FLT_MIN_EXP__ (-125)
632 // ARMEABIHARDFP:#define __FLT_MIN__ 1.17549435e-38F
633 // ARMEABIHARDFP:#define __FLT_RADIX__ 2
634 // ARMEABIHARDFP:#define __INT16_C_SUFFIX__
635 // ARMEABIHARDFP:#define __INT16_FMTd__ "hd"
636 // ARMEABIHARDFP:#define __INT16_FMTi__ "hi"
637 // ARMEABIHARDFP:#define __INT16_MAX__ 32767
638 // ARMEABIHARDFP:#define __INT16_TYPE__ short
639 // ARMEABIHARDFP:#define __INT32_C_SUFFIX__
640 // ARMEABIHARDFP:#define __INT32_FMTd__ "d"
641 // ARMEABIHARDFP:#define __INT32_FMTi__ "i"
642 // ARMEABIHARDFP:#define __INT32_MAX__ 2147483647
643 // ARMEABIHARDFP:#define __INT32_TYPE__ int
644 // ARMEABIHARDFP:#define __INT64_C_SUFFIX__ LL
645 // ARMEABIHARDFP:#define __INT64_FMTd__ "lld"
646 // ARMEABIHARDFP:#define __INT64_FMTi__ "lli"
647 // ARMEABIHARDFP:#define __INT64_MAX__ 9223372036854775807LL
648 // ARMEABIHARDFP:#define __INT64_TYPE__ long long int
649 // ARMEABIHARDFP:#define __INT8_C_SUFFIX__
650 // ARMEABIHARDFP:#define __INT8_FMTd__ "hhd"
651 // ARMEABIHARDFP:#define __INT8_FMTi__ "hhi"
652 // ARMEABIHARDFP:#define __INT8_MAX__ 127
653 // ARMEABIHARDFP:#define __INT8_TYPE__ signed char
654 // ARMEABIHARDFP:#define __INTMAX_C_SUFFIX__ LL
655 // ARMEABIHARDFP:#define __INTMAX_FMTd__ "lld"
656 // ARMEABIHARDFP:#define __INTMAX_FMTi__ "lli"
657 // ARMEABIHARDFP:#define __INTMAX_MAX__ 9223372036854775807LL
658 // ARMEABIHARDFP:#define __INTMAX_TYPE__ long long int
659 // ARMEABIHARDFP:#define __INTMAX_WIDTH__ 64
660 // ARMEABIHARDFP:#define __INTPTR_FMTd__ "d"
661 // ARMEABIHARDFP:#define __INTPTR_FMTi__ "i"
662 // ARMEABIHARDFP:#define __INTPTR_MAX__ 2147483647
663 // ARMEABIHARDFP:#define __INTPTR_TYPE__ int
664 // ARMEABIHARDFP:#define __INTPTR_WIDTH__ 32
665 // ARMEABIHARDFP:#define __INT_FAST16_FMTd__ "hd"
666 // ARMEABIHARDFP:#define __INT_FAST16_FMTi__ "hi"
667 // ARMEABIHARDFP:#define __INT_FAST16_MAX__ 32767
668 // ARMEABIHARDFP:#define __INT_FAST16_TYPE__ short
669 // ARMEABIHARDFP:#define __INT_FAST32_FMTd__ "d"
670 // ARMEABIHARDFP:#define __INT_FAST32_FMTi__ "i"
671 // ARMEABIHARDFP:#define __INT_FAST32_MAX__ 2147483647
672 // ARMEABIHARDFP:#define __INT_FAST32_TYPE__ int
673 // ARMEABIHARDFP:#define __INT_FAST64_FMTd__ "lld"
674 // ARMEABIHARDFP:#define __INT_FAST64_FMTi__ "lli"
675 // ARMEABIHARDFP:#define __INT_FAST64_MAX__ 9223372036854775807LL
676 // ARMEABIHARDFP:#define __INT_FAST64_TYPE__ long long int
677 // ARMEABIHARDFP:#define __INT_FAST8_FMTd__ "hhd"
678 // ARMEABIHARDFP:#define __INT_FAST8_FMTi__ "hhi"
679 // ARMEABIHARDFP:#define __INT_FAST8_MAX__ 127
680 // ARMEABIHARDFP:#define __INT_FAST8_TYPE__ signed char
681 // ARMEABIHARDFP:#define __INT_LEAST16_FMTd__ "hd"
682 // ARMEABIHARDFP:#define __INT_LEAST16_FMTi__ "hi"
683 // ARMEABIHARDFP:#define __INT_LEAST16_MAX__ 32767
684 // ARMEABIHARDFP:#define __INT_LEAST16_TYPE__ short
685 // ARMEABIHARDFP:#define __INT_LEAST32_FMTd__ "d"
686 // ARMEABIHARDFP:#define __INT_LEAST32_FMTi__ "i"
687 // ARMEABIHARDFP:#define __INT_LEAST32_MAX__ 2147483647
688 // ARMEABIHARDFP:#define __INT_LEAST32_TYPE__ int
689 // ARMEABIHARDFP:#define __INT_LEAST64_FMTd__ "lld"
690 // ARMEABIHARDFP:#define __INT_LEAST64_FMTi__ "lli"
691 // ARMEABIHARDFP:#define __INT_LEAST64_MAX__ 9223372036854775807LL
692 // ARMEABIHARDFP:#define __INT_LEAST64_TYPE__ long long int
693 // ARMEABIHARDFP:#define __INT_LEAST8_FMTd__ "hhd"
694 // ARMEABIHARDFP:#define __INT_LEAST8_FMTi__ "hhi"
695 // ARMEABIHARDFP:#define __INT_LEAST8_MAX__ 127
696 // ARMEABIHARDFP:#define __INT_LEAST8_TYPE__ signed char
697 // ARMEABIHARDFP:#define __INT_MAX__ 2147483647
698 // ARMEABIHARDFP:#define __LDBL_DENORM_MIN__ 4.9406564584124654e-324L
699 // ARMEABIHARDFP:#define __LDBL_DIG__ 15
700 // ARMEABIHARDFP:#define __LDBL_EPSILON__ 2.2204460492503131e-16L
701 // ARMEABIHARDFP:#define __LDBL_HAS_DENORM__ 1
702 // ARMEABIHARDFP:#define __LDBL_HAS_INFINITY__ 1
703 // ARMEABIHARDFP:#define __LDBL_HAS_QUIET_NAN__ 1
704 // ARMEABIHARDFP:#define __LDBL_MANT_DIG__ 53
705 // ARMEABIHARDFP:#define __LDBL_MAX_10_EXP__ 308
706 // ARMEABIHARDFP:#define __LDBL_MAX_EXP__ 1024
707 // ARMEABIHARDFP:#define __LDBL_MAX__ 1.7976931348623157e+308L
708 // ARMEABIHARDFP:#define __LDBL_MIN_10_EXP__ (-307)
709 // ARMEABIHARDFP:#define __LDBL_MIN_EXP__ (-1021)
710 // ARMEABIHARDFP:#define __LDBL_MIN__ 2.2250738585072014e-308L
711 // ARMEABIHARDFP:#define __LITTLE_ENDIAN__ 1
712 // ARMEABIHARDFP:#define __LONG_LONG_MAX__ 9223372036854775807LL
713 // ARMEABIHARDFP:#define __LONG_MAX__ 2147483647L
714 // ARMEABIHARDFP-NOT:#define __LP64__
715 // ARMEABIHARDFP:#define __POINTER_WIDTH__ 32
716 // ARMEABIHARDFP:#define __PTRDIFF_TYPE__ int
717 // ARMEABIHARDFP:#define __PTRDIFF_WIDTH__ 32
718 // ARMEABIHARDFP:#define __REGISTER_PREFIX__
719 // ARMEABIHARDFP:#define __SCHAR_MAX__ 127
720 // ARMEABIHARDFP:#define __SHRT_MAX__ 32767
721 // ARMEABIHARDFP:#define __SIG_ATOMIC_MAX__ 2147483647
722 // ARMEABIHARDFP:#define __SIG_ATOMIC_WIDTH__ 32
723 // ARMEABIHARDFP:#define __SIZEOF_DOUBLE__ 8
724 // ARMEABIHARDFP:#define __SIZEOF_FLOAT__ 4
725 // ARMEABIHARDFP:#define __SIZEOF_INT__ 4
726 // ARMEABIHARDFP:#define __SIZEOF_LONG_DOUBLE__ 8
727 // ARMEABIHARDFP:#define __SIZEOF_LONG_LONG__ 8
728 // ARMEABIHARDFP:#define __SIZEOF_LONG__ 4
729 // ARMEABIHARDFP:#define __SIZEOF_POINTER__ 4
730 // ARMEABIHARDFP:#define __SIZEOF_PTRDIFF_T__ 4
731 // ARMEABIHARDFP:#define __SIZEOF_SHORT__ 2
732 // ARMEABIHARDFP:#define __SIZEOF_SIZE_T__ 4
733 // ARMEABIHARDFP:#define __SIZEOF_WCHAR_T__ 4
734 // ARMEABIHARDFP:#define __SIZEOF_WINT_T__ 4
735 // ARMEABIHARDFP:#define __SIZE_MAX__ 4294967295U
736 // ARMEABIHARDFP:#define __SIZE_TYPE__ unsigned int
737 // ARMEABIHARDFP:#define __SIZE_WIDTH__ 32
738 // ARMEABIHARDFP-NOT:#define __SOFTFP__ 1
739 // ARMEABIHARDFP:#define __UINT16_C_SUFFIX__
740 // ARMEABIHARDFP:#define __UINT16_MAX__ 65535
741 // ARMEABIHARDFP:#define __UINT16_TYPE__ unsigned short
742 // ARMEABIHARDFP:#define __UINT32_C_SUFFIX__ U
743 // ARMEABIHARDFP:#define __UINT32_MAX__ 4294967295U
744 // ARMEABIHARDFP:#define __UINT32_TYPE__ unsigned int
745 // ARMEABIHARDFP:#define __UINT64_C_SUFFIX__ ULL
746 // ARMEABIHARDFP:#define __UINT64_MAX__ 18446744073709551615ULL
747 // ARMEABIHARDFP:#define __UINT64_TYPE__ long long unsigned int
748 // ARMEABIHARDFP:#define __UINT8_C_SUFFIX__
749 // ARMEABIHARDFP:#define __UINT8_MAX__ 255
750 // ARMEABIHARDFP:#define __UINT8_TYPE__ unsigned char
751 // ARMEABIHARDFP:#define __UINTMAX_C_SUFFIX__ ULL
752 // ARMEABIHARDFP:#define __UINTMAX_MAX__ 18446744073709551615ULL
753 // ARMEABIHARDFP:#define __UINTMAX_TYPE__ long long unsigned int
754 // ARMEABIHARDFP:#define __UINTMAX_WIDTH__ 64
755 // ARMEABIHARDFP:#define __UINTPTR_MAX__ 4294967295U
756 // ARMEABIHARDFP:#define __UINTPTR_TYPE__ unsigned int
757 // ARMEABIHARDFP:#define __UINTPTR_WIDTH__ 32
758 // ARMEABIHARDFP:#define __UINT_FAST16_MAX__ 65535
759 // ARMEABIHARDFP:#define __UINT_FAST16_TYPE__ unsigned short
760 // ARMEABIHARDFP:#define __UINT_FAST32_MAX__ 4294967295U
761 // ARMEABIHARDFP:#define __UINT_FAST32_TYPE__ unsigned int
762 // ARMEABIHARDFP:#define __UINT_FAST64_MAX__ 18446744073709551615ULL
763 // ARMEABIHARDFP:#define __UINT_FAST64_TYPE__ long long unsigned int
764 // ARMEABIHARDFP:#define __UINT_FAST8_MAX__ 255
765 // ARMEABIHARDFP:#define __UINT_FAST8_TYPE__ unsigned char
766 // ARMEABIHARDFP:#define __UINT_LEAST16_MAX__ 65535
767 // ARMEABIHARDFP:#define __UINT_LEAST16_TYPE__ unsigned short
768 // ARMEABIHARDFP:#define __UINT_LEAST32_MAX__ 4294967295U
769 // ARMEABIHARDFP:#define __UINT_LEAST32_TYPE__ unsigned int
770 // ARMEABIHARDFP:#define __UINT_LEAST64_MAX__ 18446744073709551615ULL
771 // ARMEABIHARDFP:#define __UINT_LEAST64_TYPE__ long long unsigned int
772 // ARMEABIHARDFP:#define __UINT_LEAST8_MAX__ 255
773 // ARMEABIHARDFP:#define __UINT_LEAST8_TYPE__ unsigned char
774 // ARMEABIHARDFP:#define __USER_LABEL_PREFIX__
775 // ARMEABIHARDFP:#define __WCHAR_MAX__ 4294967295U
776 // ARMEABIHARDFP:#define __WCHAR_TYPE__ unsigned int
777 // ARMEABIHARDFP:#define __WCHAR_WIDTH__ 32
778 // ARMEABIHARDFP:#define __WINT_TYPE__ unsigned int
779 // ARMEABIHARDFP:#define __WINT_WIDTH__ 32
780 // ARMEABIHARDFP:#define __arm 1
781 // ARMEABIHARDFP:#define __arm__ 1
782 
783 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=armv6-unknown-cloudabi-eabihf < /dev/null | FileCheck -match-full-lines -check-prefix ARMV6-CLOUDABI %s
784 //
785 // ARMV6-CLOUDABI:#define __CloudABI__ 1
786 // ARMV6-CLOUDABI:#define __arm__ 1
787 
788 // RUN: %clang -E -dM -ffreestanding -target arm-netbsd-eabi %s -o - | FileCheck -match-full-lines -check-prefix ARM-NETBSD %s
789 
790 // ARM-NETBSD-NOT:#define _LP64
791 // ARM-NETBSD:#define __APCS_32__ 1
792 // ARM-NETBSD-NOT:#define __ARMEB__ 1
793 // ARM-NETBSD:#define __ARMEL__ 1
794 // ARM-NETBSD:#define __ARM_ARCH_5TE__ 1
795 // ARM-NETBSD:#define __ARM_DWARF_EH__ 1
796 // ARM-NETBSD:#define __ARM_EABI__ 1
797 // ARM-NETBSD-NOT:#define __ARM_BIG_ENDIAN 1
798 // ARM-NETBSD:#define __BIGGEST_ALIGNMENT__ 8
799 // ARM-NETBSD:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
800 // ARM-NETBSD:#define __CHAR16_TYPE__ unsigned short
801 // ARM-NETBSD:#define __CHAR32_TYPE__ unsigned int
802 // ARM-NETBSD:#define __CHAR_BIT__ 8
803 // ARM-NETBSD:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
804 // ARM-NETBSD:#define __DBL_DIG__ 15
805 // ARM-NETBSD:#define __DBL_EPSILON__ 2.2204460492503131e-16
806 // ARM-NETBSD:#define __DBL_HAS_DENORM__ 1
807 // ARM-NETBSD:#define __DBL_HAS_INFINITY__ 1
808 // ARM-NETBSD:#define __DBL_HAS_QUIET_NAN__ 1
809 // ARM-NETBSD:#define __DBL_MANT_DIG__ 53
810 // ARM-NETBSD:#define __DBL_MAX_10_EXP__ 308
811 // ARM-NETBSD:#define __DBL_MAX_EXP__ 1024
812 // ARM-NETBSD:#define __DBL_MAX__ 1.7976931348623157e+308
813 // ARM-NETBSD:#define __DBL_MIN_10_EXP__ (-307)
814 // ARM-NETBSD:#define __DBL_MIN_EXP__ (-1021)
815 // ARM-NETBSD:#define __DBL_MIN__ 2.2250738585072014e-308
816 // ARM-NETBSD:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
817 // ARM-NETBSD:#define __FLT_DENORM_MIN__ 1.40129846e-45F
818 // ARM-NETBSD:#define __FLT_DIG__ 6
819 // ARM-NETBSD:#define __FLT_EPSILON__ 1.19209290e-7F
820 // ARM-NETBSD:#define __FLT_HAS_DENORM__ 1
821 // ARM-NETBSD:#define __FLT_HAS_INFINITY__ 1
822 // ARM-NETBSD:#define __FLT_HAS_QUIET_NAN__ 1
823 // ARM-NETBSD:#define __FLT_MANT_DIG__ 24
824 // ARM-NETBSD:#define __FLT_MAX_10_EXP__ 38
825 // ARM-NETBSD:#define __FLT_MAX_EXP__ 128
826 // ARM-NETBSD:#define __FLT_MAX__ 3.40282347e+38F
827 // ARM-NETBSD:#define __FLT_MIN_10_EXP__ (-37)
828 // ARM-NETBSD:#define __FLT_MIN_EXP__ (-125)
829 // ARM-NETBSD:#define __FLT_MIN__ 1.17549435e-38F
830 // ARM-NETBSD:#define __FLT_RADIX__ 2
831 // ARM-NETBSD:#define __INT16_C_SUFFIX__
832 // ARM-NETBSD:#define __INT16_FMTd__ "hd"
833 // ARM-NETBSD:#define __INT16_FMTi__ "hi"
834 // ARM-NETBSD:#define __INT16_MAX__ 32767
835 // ARM-NETBSD:#define __INT16_TYPE__ short
836 // ARM-NETBSD:#define __INT32_C_SUFFIX__
837 // ARM-NETBSD:#define __INT32_FMTd__ "d"
838 // ARM-NETBSD:#define __INT32_FMTi__ "i"
839 // ARM-NETBSD:#define __INT32_MAX__ 2147483647
840 // ARM-NETBSD:#define __INT32_TYPE__ int
841 // ARM-NETBSD:#define __INT64_C_SUFFIX__ LL
842 // ARM-NETBSD:#define __INT64_FMTd__ "lld"
843 // ARM-NETBSD:#define __INT64_FMTi__ "lli"
844 // ARM-NETBSD:#define __INT64_MAX__ 9223372036854775807LL
845 // ARM-NETBSD:#define __INT64_TYPE__ long long int
846 // ARM-NETBSD:#define __INT8_C_SUFFIX__
847 // ARM-NETBSD:#define __INT8_FMTd__ "hhd"
848 // ARM-NETBSD:#define __INT8_FMTi__ "hhi"
849 // ARM-NETBSD:#define __INT8_MAX__ 127
850 // ARM-NETBSD:#define __INT8_TYPE__ signed char
851 // ARM-NETBSD:#define __INTMAX_C_SUFFIX__ LL
852 // ARM-NETBSD:#define __INTMAX_FMTd__ "lld"
853 // ARM-NETBSD:#define __INTMAX_FMTi__ "lli"
854 // ARM-NETBSD:#define __INTMAX_MAX__ 9223372036854775807LL
855 // ARM-NETBSD:#define __INTMAX_TYPE__ long long int
856 // ARM-NETBSD:#define __INTMAX_WIDTH__ 64
857 // ARM-NETBSD:#define __INTPTR_FMTd__ "ld"
858 // ARM-NETBSD:#define __INTPTR_FMTi__ "li"
859 // ARM-NETBSD:#define __INTPTR_MAX__ 2147483647L
860 // ARM-NETBSD:#define __INTPTR_TYPE__ long int
861 // ARM-NETBSD:#define __INTPTR_WIDTH__ 32
862 // ARM-NETBSD:#define __INT_FAST16_FMTd__ "hd"
863 // ARM-NETBSD:#define __INT_FAST16_FMTi__ "hi"
864 // ARM-NETBSD:#define __INT_FAST16_MAX__ 32767
865 // ARM-NETBSD:#define __INT_FAST16_TYPE__ short
866 // ARM-NETBSD:#define __INT_FAST32_FMTd__ "d"
867 // ARM-NETBSD:#define __INT_FAST32_FMTi__ "i"
868 // ARM-NETBSD:#define __INT_FAST32_MAX__ 2147483647
869 // ARM-NETBSD:#define __INT_FAST32_TYPE__ int
870 // ARM-NETBSD:#define __INT_FAST64_FMTd__ "lld"
871 // ARM-NETBSD:#define __INT_FAST64_FMTi__ "lli"
872 // ARM-NETBSD:#define __INT_FAST64_MAX__ 9223372036854775807LL
873 // ARM-NETBSD:#define __INT_FAST64_TYPE__ long long int
874 // ARM-NETBSD:#define __INT_FAST8_FMTd__ "hhd"
875 // ARM-NETBSD:#define __INT_FAST8_FMTi__ "hhi"
876 // ARM-NETBSD:#define __INT_FAST8_MAX__ 127
877 // ARM-NETBSD:#define __INT_FAST8_TYPE__ signed char
878 // ARM-NETBSD:#define __INT_LEAST16_FMTd__ "hd"
879 // ARM-NETBSD:#define __INT_LEAST16_FMTi__ "hi"
880 // ARM-NETBSD:#define __INT_LEAST16_MAX__ 32767
881 // ARM-NETBSD:#define __INT_LEAST16_TYPE__ short
882 // ARM-NETBSD:#define __INT_LEAST32_FMTd__ "d"
883 // ARM-NETBSD:#define __INT_LEAST32_FMTi__ "i"
884 // ARM-NETBSD:#define __INT_LEAST32_MAX__ 2147483647
885 // ARM-NETBSD:#define __INT_LEAST32_TYPE__ int
886 // ARM-NETBSD:#define __INT_LEAST64_FMTd__ "lld"
887 // ARM-NETBSD:#define __INT_LEAST64_FMTi__ "lli"
888 // ARM-NETBSD:#define __INT_LEAST64_MAX__ 9223372036854775807LL
889 // ARM-NETBSD:#define __INT_LEAST64_TYPE__ long long int
890 // ARM-NETBSD:#define __INT_LEAST8_FMTd__ "hhd"
891 // ARM-NETBSD:#define __INT_LEAST8_FMTi__ "hhi"
892 // ARM-NETBSD:#define __INT_LEAST8_MAX__ 127
893 // ARM-NETBSD:#define __INT_LEAST8_TYPE__ signed char
894 // ARM-NETBSD:#define __INT_MAX__ 2147483647
895 // ARM-NETBSD:#define __LDBL_DENORM_MIN__ 4.9406564584124654e-324L
896 // ARM-NETBSD:#define __LDBL_DIG__ 15
897 // ARM-NETBSD:#define __LDBL_EPSILON__ 2.2204460492503131e-16L
898 // ARM-NETBSD:#define __LDBL_HAS_DENORM__ 1
899 // ARM-NETBSD:#define __LDBL_HAS_INFINITY__ 1
900 // ARM-NETBSD:#define __LDBL_HAS_QUIET_NAN__ 1
901 // ARM-NETBSD:#define __LDBL_MANT_DIG__ 53
902 // ARM-NETBSD:#define __LDBL_MAX_10_EXP__ 308
903 // ARM-NETBSD:#define __LDBL_MAX_EXP__ 1024
904 // ARM-NETBSD:#define __LDBL_MAX__ 1.7976931348623157e+308L
905 // ARM-NETBSD:#define __LDBL_MIN_10_EXP__ (-307)
906 // ARM-NETBSD:#define __LDBL_MIN_EXP__ (-1021)
907 // ARM-NETBSD:#define __LDBL_MIN__ 2.2250738585072014e-308L
908 // ARM-NETBSD:#define __LITTLE_ENDIAN__ 1
909 // ARM-NETBSD:#define __LONG_LONG_MAX__ 9223372036854775807LL
910 // ARM-NETBSD:#define __LONG_MAX__ 2147483647L
911 // ARM-NETBSD-NOT:#define __LP64__
912 // ARM-NETBSD:#define __POINTER_WIDTH__ 32
913 // ARM-NETBSD:#define __PTRDIFF_TYPE__ long int
914 // ARM-NETBSD:#define __PTRDIFF_WIDTH__ 32
915 // ARM-NETBSD:#define __REGISTER_PREFIX__
916 // ARM-NETBSD:#define __SCHAR_MAX__ 127
917 // ARM-NETBSD:#define __SHRT_MAX__ 32767
918 // ARM-NETBSD:#define __SIG_ATOMIC_MAX__ 2147483647
919 // ARM-NETBSD:#define __SIG_ATOMIC_WIDTH__ 32
920 // ARM-NETBSD:#define __SIZEOF_DOUBLE__ 8
921 // ARM-NETBSD:#define __SIZEOF_FLOAT__ 4
922 // ARM-NETBSD:#define __SIZEOF_INT__ 4
923 // ARM-NETBSD:#define __SIZEOF_LONG_DOUBLE__ 8
924 // ARM-NETBSD:#define __SIZEOF_LONG_LONG__ 8
925 // ARM-NETBSD:#define __SIZEOF_LONG__ 4
926 // ARM-NETBSD:#define __SIZEOF_POINTER__ 4
927 // ARM-NETBSD:#define __SIZEOF_PTRDIFF_T__ 4
928 // ARM-NETBSD:#define __SIZEOF_SHORT__ 2
929 // ARM-NETBSD:#define __SIZEOF_SIZE_T__ 4
930 // ARM-NETBSD:#define __SIZEOF_WCHAR_T__ 4
931 // ARM-NETBSD:#define __SIZEOF_WINT_T__ 4
932 // ARM-NETBSD:#define __SIZE_MAX__ 4294967295UL
933 // ARM-NETBSD:#define __SIZE_TYPE__ long unsigned int
934 // ARM-NETBSD:#define __SIZE_WIDTH__ 32
935 // ARM-NETBSD:#define __SOFTFP__ 1
936 // ARM-NETBSD:#define __UINT16_C_SUFFIX__
937 // ARM-NETBSD:#define __UINT16_MAX__ 65535
938 // ARM-NETBSD:#define __UINT16_TYPE__ unsigned short
939 // ARM-NETBSD:#define __UINT32_C_SUFFIX__ U
940 // ARM-NETBSD:#define __UINT32_MAX__ 4294967295U
941 // ARM-NETBSD:#define __UINT32_TYPE__ unsigned int
942 // ARM-NETBSD:#define __UINT64_C_SUFFIX__ ULL
943 // ARM-NETBSD:#define __UINT64_MAX__ 18446744073709551615ULL
944 // ARM-NETBSD:#define __UINT64_TYPE__ long long unsigned int
945 // ARM-NETBSD:#define __UINT8_C_SUFFIX__
946 // ARM-NETBSD:#define __UINT8_MAX__ 255
947 // ARM-NETBSD:#define __UINT8_TYPE__ unsigned char
948 // ARM-NETBSD:#define __UINTMAX_C_SUFFIX__ ULL
949 // ARM-NETBSD:#define __UINTMAX_MAX__ 18446744073709551615ULL
950 // ARM-NETBSD:#define __UINTMAX_TYPE__ long long unsigned int
951 // ARM-NETBSD:#define __UINTMAX_WIDTH__ 64
952 // ARM-NETBSD:#define __UINTPTR_MAX__ 4294967295UL
953 // ARM-NETBSD:#define __UINTPTR_TYPE__ long unsigned int
954 // ARM-NETBSD:#define __UINTPTR_WIDTH__ 32
955 // ARM-NETBSD:#define __UINT_FAST16_MAX__ 65535
956 // ARM-NETBSD:#define __UINT_FAST16_TYPE__ unsigned short
957 // ARM-NETBSD:#define __UINT_FAST32_MAX__ 4294967295U
958 // ARM-NETBSD:#define __UINT_FAST32_TYPE__ unsigned int
959 // ARM-NETBSD:#define __UINT_FAST64_MAX__ 18446744073709551615ULL
960 // ARM-NETBSD:#define __UINT_FAST64_TYPE__ long long unsigned int
961 // ARM-NETBSD:#define __UINT_FAST8_MAX__ 255
962 // ARM-NETBSD:#define __UINT_FAST8_TYPE__ unsigned char
963 // ARM-NETBSD:#define __UINT_LEAST16_MAX__ 65535
964 // ARM-NETBSD:#define __UINT_LEAST16_TYPE__ unsigned short
965 // ARM-NETBSD:#define __UINT_LEAST32_MAX__ 4294967295U
966 // ARM-NETBSD:#define __UINT_LEAST32_TYPE__ unsigned int
967 // ARM-NETBSD:#define __UINT_LEAST64_MAX__ 18446744073709551615ULL
968 // ARM-NETBSD:#define __UINT_LEAST64_TYPE__ long long unsigned int
969 // ARM-NETBSD:#define __UINT_LEAST8_MAX__ 255
970 // ARM-NETBSD:#define __UINT_LEAST8_TYPE__ unsigned char
971 // ARM-NETBSD:#define __USER_LABEL_PREFIX__
972 // ARM-NETBSD:#define __WCHAR_MAX__ 2147483647
973 // ARM-NETBSD:#define __WCHAR_TYPE__ int
974 // ARM-NETBSD:#define __WCHAR_WIDTH__ 32
975 // ARM-NETBSD:#define __WINT_TYPE__ int
976 // ARM-NETBSD:#define __WINT_WIDTH__ 32
977 // ARM-NETBSD:#define __arm 1
978 // ARM-NETBSD:#define __arm__ 1
979 
980 // RUN: %clang -E -dM -ffreestanding -target arm-netbsd-eabihf %s -o - | FileCheck -match-full-lines -check-prefix ARMHF-NETBSD %s
981 // ARMHF-NETBSD:#define __SIZE_WIDTH__ 32
982 // ARMHF-NETBSD-NOT:#define __SOFTFP__ 1
983 // ARMHF-NETBSD:#define __UINT16_C_SUFFIX__
984 
985 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=arm-none-eabi < /dev/null | FileCheck -match-full-lines -check-prefix ARM-NONE-EABI %s
986 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=arm-none-eabihf < /dev/null | FileCheck -match-full-lines -check-prefix ARM-NONE-EABI %s
987 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=aarch64-none-eabi < /dev/null | FileCheck -match-full-lines -check-prefix ARM-NONE-EABI %s
988 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=aarch64-none-eabihf < /dev/null | FileCheck -match-full-lines -check-prefix ARM-NONE-EABI %s
989 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=aarch64-none-elf < /dev/null | FileCheck -match-full-lines -check-prefix ARM-NONE-EABI %s
990 // ARM-NONE-EABI: #define __ELF__ 1
991 
992 // No MachO targets use the full EABI, even if AAPCS is used.
993 // RUN: %clang -target x86_64-apple-darwin -arch armv7s -x c -E -dM %s -o - | FileCheck -match-full-lines --check-prefix=ARM-MACHO-NO-EABI %s
994 // RUN: %clang -target x86_64-apple-darwin -arch armv6m -x c -E -dM %s -o - | FileCheck -match-full-lines --check-prefix=ARM-MACHO-NO-EABI %s
995 // RUN: %clang -target x86_64-apple-darwin -arch armv7m -x c -E -dM %s -o - | FileCheck -match-full-lines --check-prefix=ARM-MACHO-NO-EABI %s
996 // RUN: %clang -target x86_64-apple-darwin -arch armv7em -x c -E -dM %s -o - | FileCheck -match-full-lines --check-prefix=ARM-MACHO-NO-EABI %s
997 // RUN: %clang -target x86_64-apple-darwin -arch armv7 -x c -E -dM %s -o - | FileCheck -match-full-lines --check-prefix=ARM-MACHO-NO-EABI %s
998 // ARM-MACHO-NO-EABI-NOT: #define __ARM_EABI__ 1
999 
1000 // Check that -mhwdiv works properly for targets which don't have the hwdiv feature enabled by default.
1001 
1002 // RUN: %clang -target arm -mhwdiv=arm -x c -E -dM %s -o - | FileCheck -match-full-lines --check-prefix=ARMHWDIV-ARM %s
1003 // ARMHWDIV-ARM:#define __ARM_ARCH_EXT_IDIV__ 1
1004 
1005 // RUN: %clang -target arm -mthumb -mhwdiv=thumb -x c -E -dM %s -o - | FileCheck -match-full-lines --check-prefix=THUMBHWDIV-THUMB %s
1006 // THUMBHWDIV-THUMB:#define __ARM_ARCH_EXT_IDIV__ 1
1007 
1008 // RUN: %clang -target arm -x c -E -dM %s -o - | FileCheck -match-full-lines --check-prefix=ARM-FALSE %s
1009 // ARM-FALSE-NOT:#define __ARM_ARCH_EXT_IDIV__
1010 
1011 // RUN: %clang -target arm -mthumb -x c -E -dM %s -o - | FileCheck -match-full-lines --check-prefix=THUMB-FALSE %s
1012 // THUMB-FALSE-NOT:#define __ARM_ARCH_EXT_IDIV__
1013 
1014 // RUN: %clang -target arm -mhwdiv=thumb -x c -E -dM %s -o - | FileCheck -match-full-lines --check-prefix=THUMBHWDIV-ARM-FALSE %s
1015 // THUMBHWDIV-ARM-FALSE-NOT:#define __ARM_ARCH_EXT_IDIV__
1016 
1017 // RUN: %clang -target arm -mthumb -mhwdiv=arm -x c -E -dM %s -o - | FileCheck -match-full-lines --check-prefix=ARMHWDIV-THUMB-FALSE %s
1018 // ARMHWDIV-THUMB-FALSE-NOT:#define __ARM_ARCH_EXT_IDIV__
1019 
1020 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=armv8-none-none < /dev/null | FileCheck -match-full-lines -check-prefix ARMv8 %s
1021 // ARMv8: #define __THUMB_INTERWORK__ 1
1022 // ARMv8-NOT: #define __thumb2__
1023 
1024 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=armebv8-none-none < /dev/null | FileCheck -match-full-lines -check-prefix ARMebv8 %s
1025 // ARMebv8: #define __THUMB_INTERWORK__ 1
1026 // ARMebv8-NOT: #define __thumb2__
1027 
1028 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=thumbv8 < /dev/null | FileCheck -match-full-lines -check-prefix Thumbv8 %s
1029 // Thumbv8: #define __THUMB_INTERWORK__ 1
1030 // Thumbv8: #define __thumb2__ 1
1031 
1032 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=thumbebv8 < /dev/null | FileCheck -match-full-lines -check-prefix Thumbebv8 %s
1033 // Thumbebv8: #define __THUMB_INTERWORK__ 1
1034 // Thumbebv8: #define __thumb2__ 1
1035 
1036 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=thumbv5 < /dev/null | FileCheck -match-full-lines -check-prefix Thumbv5 %s
1037 // Thumbv5: #define __THUMB_INTERWORK__ 1
1038 // Thumbv5-NOT: #define __thumb2__ 1
1039 
1040 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=thumbv6t2 < /dev/null | FileCheck -match-full-lines -check-prefix Thumbv6t2 %s
1041 // Thumbv6t2: #define __THUMB_INTERWORK__ 1
1042 // Thumbv6t2: #define __thumb2__ 1
1043 
1044 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=thumbv7 < /dev/null | FileCheck -match-full-lines -check-prefix Thumbv7 %s
1045 // Thumbv7: #define __THUMB_INTERWORK__ 1
1046 // Thumbv7: #define __thumb2__ 1
1047 
1048 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=thumbebv7 < /dev/null | FileCheck -match-full-lines -check-prefix Thumbebv7 %s
1049 // Thumbebv7: #define __THUMB_INTERWORK__ 1
1050 // Thumbebv7: #define __thumb2__ 1
1051 
1052 // RUN: %clang_cc1 -E -dM -ffreestanding -triple=thumbv7-pc-windows-gnu -exception-model=dwarf %s -o - | FileCheck -match-full-lines -check-prefix THUMB-MINGW %s
1053 
1054 // THUMB-MINGW:#define __ARM_DWARF_EH__ 1
1055 
1056