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