xref: /llvm-project/clang/test/Preprocessor/init-ve.c (revision 33ad474c45e6d7a0de7bc75e15e27cf6cb9ff895)
1 /// Check predefinitions for NEC Aurora VE
2 /// REQUIRES: ve-registered-target
3 
4 // RUN: %clang_cc1 -E -dM -triple=ve < /dev/null | \
5 // RUN:     FileCheck -match-full-lines -check-prefixes=VE,VE-HOSTED %s
6 // RUN: %clang_cc1 -E -dM -triple=ve -ffreestanding < /dev/null | \
7 // RUN:     FileCheck -match-full-lines -check-prefixes=VE,VE-FREESTANDING %s
8 // RUN: %clang_cc1 -x c++ -E -dM -triple=ve < /dev/null | \
9 // RUN:     FileCheck -match-full-lines -check-prefixes=VE,VE-HOSTED,VE-CXX %s
10 //
11 // VE:#define _LP64 1
12 // VE:#define __BIGGEST_ALIGNMENT__ 8
13 // VE:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
14 // VE:#define __CHAR16_TYPE__ unsigned short
15 // VE:#define __CHAR32_TYPE__ unsigned int
16 // VE:#define __CHAR_BIT__ 8
17 // VE:#define __DBL_DECIMAL_DIG__ 17
18 // VE:#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
19 // VE:#define __DBL_DIG__ 15
20 // VE:#define __DBL_EPSILON__ 2.2204460492503131e-16
21 // VE:#define __DBL_HAS_DENORM__ 1
22 // VE:#define __DBL_HAS_INFINITY__ 1
23 // VE:#define __DBL_HAS_QUIET_NAN__ 1
24 // VE:#define __DBL_MANT_DIG__ 53
25 // VE:#define __DBL_MAX_10_EXP__ 308
26 // VE:#define __DBL_MAX_EXP__ 1024
27 // VE:#define __DBL_MAX__ 1.7976931348623157e+308
28 // VE:#define __DBL_MIN_10_EXP__ (-307)
29 // VE:#define __DBL_MIN_EXP__ (-1021)
30 // VE:#define __DBL_MIN__ 2.2250738585072014e-308
31 // VE:#define __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__
32 // VE-NOT:#define __FAST_MATH__ 1
33 // VE:#define __FLT_DECIMAL_DIG__ 9
34 // VE:#define __FLT_DENORM_MIN__ 1.40129846e-45F
35 // VE:#define __FLT_DIG__ 6
36 // VE:#define __FLT_EPSILON__ 1.19209290e-7F
37 // VE:#define __FLT_HAS_DENORM__ 1
38 // VE:#define __FLT_HAS_INFINITY__ 1
39 // VE:#define __FLT_HAS_QUIET_NAN__ 1
40 // VE:#define __FLT_MANT_DIG__ 24
41 // VE:#define __FLT_MAX_10_EXP__ 38
42 // VE:#define __FLT_MAX_EXP__ 128
43 // VE:#define __FLT_MAX__ 3.40282347e+38F
44 // VE:#define __FLT_MIN_10_EXP__ (-37)
45 // VE:#define __FLT_MIN_EXP__ (-125)
46 // VE:#define __FLT_MIN__ 1.17549435e-38F
47 // VE:#define __FLT_RADIX__ 2
48 // VE:#define __INT16_C(c) c
49 // VE:#define __INT16_C_SUFFIX__
50 // VE:#define __INT16_FMTd__ "hd"
51 // VE:#define __INT16_FMTi__ "hi"
52 // VE:#define __INT16_MAX__ 32767
53 // VE:#define __INT16_TYPE__ short
54 // VE:#define __INT32_C(c) c
55 // VE:#define __INT32_C_SUFFIX__
56 // VE:#define __INT32_FMTd__ "d"
57 // VE:#define __INT32_FMTi__ "i"
58 // VE:#define __INT32_MAX__ 2147483647
59 // VE:#define __INT32_TYPE__ int
60 // VE:#define __INT64_C(c) c##L
61 // VE:#define __INT64_C_SUFFIX__ L
62 // VE:#define __INT64_FMTd__ "ld"
63 // VE:#define __INT64_FMTi__ "li"
64 // VE:#define __INT64_MAX__ 9223372036854775807L
65 // VE:#define __INT64_TYPE__ long int
66 // VE:#define __INT8_C(c) c
67 // VE:#define __INT8_C_SUFFIX__
68 // VE:#define __INT8_FMTd__ "hhd"
69 // VE:#define __INT8_FMTi__ "hhi"
70 // VE:#define __INT8_MAX__ 127
71 // VE:#define __INT8_TYPE__ signed char
72 // VE:#define __INTMAX_C(c) c##L
73 // VE:#define __INTMAX_C_SUFFIX__ L
74 // VE:#define __INTMAX_FMTd__ "ld"
75 // VE:#define __INTMAX_FMTi__ "li"
76 // VE:#define __INTMAX_MAX__ 9223372036854775807L
77 // VE:#define __INTMAX_TYPE__ long int
78 // VE:#define __INTMAX_WIDTH__ 64
79 // VE:#define __INTPTR_FMTd__ "ld"
80 // VE:#define __INTPTR_FMTi__ "li"
81 // VE:#define __INTPTR_MAX__ 9223372036854775807L
82 // VE:#define __INTPTR_TYPE__ long int
83 // VE:#define __INTPTR_WIDTH__ 64
84 // VE:#define __INT_FAST16_FMTd__ "hd"
85 // VE:#define __INT_FAST16_FMTi__ "hi"
86 // VE:#define __INT_FAST16_MAX__ 32767
87 // VE:#define __INT_FAST16_TYPE__ short
88 // VE:#define __INT_FAST32_FMTd__ "d"
89 // VE:#define __INT_FAST32_FMTi__ "i"
90 // VE:#define __INT_FAST32_MAX__ 2147483647
91 // VE:#define __INT_FAST32_TYPE__ int
92 // VE:#define __INT_FAST64_FMTd__ "ld"
93 // VE:#define __INT_FAST64_FMTi__ "li"
94 // VE:#define __INT_FAST64_MAX__ 9223372036854775807L
95 // VE:#define __INT_FAST64_TYPE__ long int
96 // VE:#define __INT_FAST8_FMTd__ "hhd"
97 // VE:#define __INT_FAST8_FMTi__ "hhi"
98 // VE:#define __INT_FAST8_MAX__ 127
99 // VE:#define __INT_FAST8_TYPE__ signed char
100 // VE:#define __INT_LEAST16_FMTd__ "hd"
101 // VE:#define __INT_LEAST16_FMTi__ "hi"
102 // VE:#define __INT_LEAST16_MAX__ 32767
103 // VE:#define __INT_LEAST16_TYPE__ short
104 // VE:#define __INT_LEAST32_FMTd__ "d"
105 // VE:#define __INT_LEAST32_FMTi__ "i"
106 // VE:#define __INT_LEAST32_MAX__ 2147483647
107 // VE:#define __INT_LEAST32_TYPE__ int
108 // VE:#define __INT_LEAST64_FMTd__ "ld"
109 // VE:#define __INT_LEAST64_FMTi__ "li"
110 // VE:#define __INT_LEAST64_MAX__ 9223372036854775807L
111 // VE:#define __INT_LEAST64_TYPE__ long int
112 // VE:#define __INT_LEAST8_FMTd__ "hhd"
113 // VE:#define __INT_LEAST8_FMTi__ "hhi"
114 // VE:#define __INT_LEAST8_MAX__ 127
115 // VE:#define __INT_LEAST8_TYPE__ signed char
116 // VE:#define __INT_MAX__ 2147483647
117 // VE:#define __LDBL_DECIMAL_DIG__ 36
118 // VE:#define __LDBL_DENORM_MIN__ 6.47517511943802511092443895822764655e-4966L
119 // VE:#define __LDBL_DIG__ 33
120 // VE:#define __LDBL_EPSILON__ 1.92592994438723585305597794258492732e-34L
121 // VE:#define __LDBL_HAS_DENORM__ 1
122 // VE:#define __LDBL_HAS_INFINITY__ 1
123 // VE:#define __LDBL_HAS_QUIET_NAN__ 1
124 // VE:#define __LDBL_MANT_DIG__ 113
125 // VE:#define __LDBL_MAX_10_EXP__ 4932
126 // VE:#define __LDBL_MAX_EXP__ 16384
127 // VE:#define __LDBL_MAX__ 1.18973149535723176508575932662800702e+4932L
128 // VE:#define __LDBL_MIN_10_EXP__ (-4931)
129 // VE:#define __LDBL_MIN_EXP__ (-16381)
130 // VE:#define __LDBL_MIN__ 3.36210314311209350626267781732175260e-4932L
131 // VE:#define __LITTLE_ENDIAN__ 1
132 // VE-NOT:#define __LONGDOUBLE128 1
133 // VE-NOT:#define __LONG_DOUBLE_128__ 1
134 // VE:#define __LONG_LONG_MAX__ 9223372036854775807LL
135 // VE:#define __LONG_MAX__ 9223372036854775807L
136 // VE:#define __LP64__ 1
137 // VE:#define __NEC__ 1
138 // VE-NOT:#define __OPTIMIZE__
139 // VE:#define __POINTER_WIDTH__ 64
140 // VE:#define __PTRDIFF_FMTd__ "ld"
141 // VE:#define __PTRDIFF_FMTi__ "li"
142 // VE:#define __PTRDIFF_MAX__ 9223372036854775807L
143 // VE:#define __PTRDIFF_TYPE__ long int
144 // VE:#define __PTRDIFF_WIDTH__ 64
145 // VE:#define __SCHAR_MAX__ 127
146 // VE:#define __SHRT_MAX__ 32767
147 // VE:#define __SIG_ATOMIC_MAX__ 2147483647
148 // VE:#define __SIG_ATOMIC_WIDTH__ 32
149 // VE:#define __SIZEOF_DOUBLE__ 8
150 // VE:#define __SIZEOF_FLOAT__ 4
151 // VE:#define __SIZEOF_INT128__ 16
152 // VE:#define __SIZEOF_INT__ 4
153 // VE:#define __SIZEOF_LONG_DOUBLE__ 16
154 // VE:#define __SIZEOF_LONG_LONG__ 8
155 // VE:#define __SIZEOF_LONG__ 8
156 // VE:#define __SIZEOF_POINTER__ 8
157 // VE:#define __SIZEOF_PTRDIFF_T__ 8
158 // VE:#define __SIZEOF_SHORT__ 2
159 // VE:#define __SIZEOF_SIZE_T__ 8
160 // VE:#define __SIZEOF_WCHAR_T__ 4
161 // VE:#define __SIZEOF_WINT_T__ 4
162 // VE:#define __SIZE_FMTX__ "lX"
163 // VE:#define __SIZE_FMTo__ "lo"
164 // VE:#define __SIZE_FMTu__ "lu"
165 // VE:#define __SIZE_FMTx__ "lx"
166 // VE:#define __SIZE_MAX__ 18446744073709551615UL
167 // VE:#define __SIZE_TYPE__ long unsigned int
168 // VE:#define __SIZE_WIDTH__ 64
169 // VE-CXX:#define __STDCPP_DEFAULT_NEW_ALIGNMENT__ 16UL
170 // VE-HOSTED:#define __STDC_HOSTED__ 1
171 // VE-FREESTANDING:#define __STDC_HOSTED__ 0
172 // VE:#define __UINT16_C(c) c
173 // VE:#define __UINT16_C_SUFFIX__
174 // VE:#define __UINT16_FMTX__ "hX"
175 // VE:#define __UINT16_FMTo__ "ho"
176 // VE:#define __UINT16_FMTu__ "hu"
177 // VE:#define __UINT16_FMTx__ "hx"
178 // VE:#define __UINT16_MAX__ 65535
179 // VE:#define __UINT16_TYPE__ unsigned short
180 // VE:#define __UINT32_C(c) c##U
181 // VE:#define __UINT32_C_SUFFIX__ U
182 // VE:#define __UINT32_FMTX__ "X"
183 // VE:#define __UINT32_FMTo__ "o"
184 // VE:#define __UINT32_FMTu__ "u"
185 // VE:#define __UINT32_FMTx__ "x"
186 // VE:#define __UINT32_MAX__ 4294967295U
187 // VE:#define __UINT32_TYPE__ unsigned int
188 // VE:#define __UINT64_C(c) c##UL
189 // VE:#define __UINT64_C_SUFFIX__ UL
190 // VE:#define __UINT64_FMTX__ "lX"
191 // VE:#define __UINT64_FMTo__ "lo"
192 // VE:#define __UINT64_FMTu__ "lu"
193 // VE:#define __UINT64_FMTx__ "lx"
194 // VE:#define __UINT64_MAX__ 18446744073709551615UL
195 // VE:#define __UINT64_TYPE__ long unsigned int
196 // VE:#define __UINT8_C(c) c
197 // VE:#define __UINT8_C_SUFFIX__
198 // VE:#define __UINT8_FMTX__ "hhX"
199 // VE:#define __UINT8_FMTo__ "hho"
200 // VE:#define __UINT8_FMTu__ "hhu"
201 // VE:#define __UINT8_FMTx__ "hhx"
202 // VE:#define __UINT8_MAX__ 255
203 // VE:#define __UINT8_TYPE__ unsigned char
204 // VE:#define __UINTMAX_C(c) c##UL
205 // VE:#define __UINTMAX_C_SUFFIX__ UL
206 // VE:#define __UINTMAX_FMTX__ "lX"
207 // VE:#define __UINTMAX_FMTo__ "lo"
208 // VE:#define __UINTMAX_FMTu__ "lu"
209 // VE:#define __UINTMAX_FMTx__ "lx"
210 // VE:#define __UINTMAX_MAX__ 18446744073709551615UL
211 // VE:#define __UINTMAX_TYPE__ long unsigned int
212 // VE:#define __UINTMAX_WIDTH__ 64
213 // VE:#define __UINTPTR_FMTX__ "lX"
214 // VE:#define __UINTPTR_FMTo__ "lo"
215 // VE:#define __UINTPTR_FMTu__ "lu"
216 // VE:#define __UINTPTR_FMTx__ "lx"
217 // VE:#define __UINTPTR_MAX__ 18446744073709551615UL
218 // VE:#define __UINTPTR_TYPE__ long unsigned int
219 // VE:#define __UINTPTR_WIDTH__ 64
220 // VE:#define __UINT_FAST16_FMTX__ "hX"
221 // VE:#define __UINT_FAST16_FMTo__ "ho"
222 // VE:#define __UINT_FAST16_FMTu__ "hu"
223 // VE:#define __UINT_FAST16_FMTx__ "hx"
224 // VE:#define __UINT_FAST16_MAX__ 65535
225 // VE:#define __UINT_FAST16_TYPE__ unsigned short
226 // VE:#define __UINT_FAST32_FMTX__ "X"
227 // VE:#define __UINT_FAST32_FMTo__ "o"
228 // VE:#define __UINT_FAST32_FMTu__ "u"
229 // VE:#define __UINT_FAST32_FMTx__ "x"
230 // VE:#define __UINT_FAST32_MAX__ 4294967295U
231 // VE:#define __UINT_FAST32_TYPE__ unsigned int
232 // VE:#define __UINT_FAST64_FMTX__ "lX"
233 // VE:#define __UINT_FAST64_FMTo__ "lo"
234 // VE:#define __UINT_FAST64_FMTu__ "lu"
235 // VE:#define __UINT_FAST64_FMTx__ "lx"
236 // VE:#define __UINT_FAST64_MAX__ 18446744073709551615UL
237 // VE:#define __UINT_FAST64_TYPE__ long unsigned int
238 // VE:#define __UINT_FAST8_FMTX__ "hhX"
239 // VE:#define __UINT_FAST8_FMTo__ "hho"
240 // VE:#define __UINT_FAST8_FMTu__ "hhu"
241 // VE:#define __UINT_FAST8_FMTx__ "hhx"
242 // VE:#define __UINT_FAST8_MAX__ 255
243 // VE:#define __UINT_FAST8_TYPE__ unsigned char
244 // VE:#define __UINT_LEAST16_FMTX__ "hX"
245 // VE:#define __UINT_LEAST16_FMTo__ "ho"
246 // VE:#define __UINT_LEAST16_FMTu__ "hu"
247 // VE:#define __UINT_LEAST16_FMTx__ "hx"
248 // VE:#define __UINT_LEAST16_MAX__ 65535
249 // VE:#define __UINT_LEAST16_TYPE__ unsigned short
250 // VE:#define __UINT_LEAST32_FMTX__ "X"
251 // VE:#define __UINT_LEAST32_FMTo__ "o"
252 // VE:#define __UINT_LEAST32_FMTu__ "u"
253 // VE:#define __UINT_LEAST32_FMTx__ "x"
254 // VE:#define __UINT_LEAST32_MAX__ 4294967295U
255 // VE:#define __UINT_LEAST32_TYPE__ unsigned int
256 // VE:#define __UINT_LEAST64_FMTX__ "lX"
257 // VE:#define __UINT_LEAST64_FMTo__ "lo"
258 // VE:#define __UINT_LEAST64_FMTu__ "lu"
259 // VE:#define __UINT_LEAST64_FMTx__ "lx"
260 // VE:#define __UINT_LEAST64_MAX__ 18446744073709551615UL
261 // VE:#define __UINT_LEAST64_TYPE__ long unsigned int
262 // VE:#define __UINT_LEAST8_FMTX__ "hhX"
263 // VE:#define __UINT_LEAST8_FMTo__ "hho"
264 // VE:#define __UINT_LEAST8_FMTu__ "hhu"
265 // VE:#define __UINT_LEAST8_FMTx__ "hhx"
266 // VE:#define __UINT_LEAST8_MAX__ 255
267 // VE:#define __UINT_LEAST8_TYPE__ unsigned char
268 // VE:#define __USER_LABEL_PREFIX__
269 // VE-NOT:#define __VECTOR__
270 // VE:#define __WCHAR_MAX__ 4294967295U
271 // VE:#define __WCHAR_TYPE__ unsigned int
272 // VE:#define __WCHAR_UNSIGNED__ 1
273 // VE:#define __WCHAR_WIDTH__ 32
274 // VE:#define __WINT_MAX__ 4294967295U
275 // VE:#define __WINT_TYPE__ unsigned int
276 // VE:#define __WINT_UNSIGNED__ 1
277 // VE:#define __WINT_WIDTH__ 32
278 // VE:#define __linux 1
279 // VE:#define __linux__ 1
280 // VE:#define __llvm__ 1
281 // VE:#define __unix 1
282 // VE:#define __unix__ 1
283 // VE:#define __ve 1
284 // VE:#define __ve__ 1
285 // VE:#define linux 1
286 // VE:#define unix 1
287