]> git.ipfire.org Git - thirdparty/gcc.git/blame - gcc/testsuite/gcc.dg/compat/scalar-by-value-y.h
filter2_x.C: Declare abort.
[thirdparty/gcc.git] / gcc / testsuite / gcc.dg / compat / scalar-by-value-y.h
CommitLineData
fccd5f95
AM
1extern void abort (void);
2
6efbd94a
DJ
3#ifdef __GNUC__
4#define va_list __builtin_va_list
5#define va_start __builtin_va_start
6#define va_arg __builtin_va_arg
7#define va_end __builtin_va_end
8#else
9#include <stdarg.h>
10#endif
11
fccd5f95
AM
12#if USE_MEMCMP
13/* For comparing vectors. */
14#define TEST_FUNCS(NAME, TYPE, PADT, VAL, VAL2) \
15void NAME##_f0 (TYPE a, PADT b) \
16{ \
17 if (memcmp (&a, &VAL, sizeof (a)) != 0 || b != VAL2) \
18 abort (); \
19} \
20 \
21void NAME##_f1 (PADT z0, TYPE a, PADT b) \
22{ \
23 if (z0 != (PADT) 0 \
24 || memcmp (&a, &VAL, sizeof (a)) != 0 || b != VAL2) \
25 abort (); \
26} \
27 \
28void NAME##_f2 (PADT z0, PADT z1, TYPE a, PADT b) \
29{ \
30 if (z0 != (PADT) 0 \
31 || z1 != (PADT) 0 \
32 || memcmp (&a, &VAL, sizeof (a)) != 0 || b != VAL2) \
33 abort (); \
34} \
35 \
36void NAME##_f3 (PADT z0, PADT z1, PADT z2, TYPE a, PADT b) \
37{ \
38 if (z0 != (PADT) 0 \
39 || z1 != (PADT) 0 \
40 || z2 != (PADT) 0 \
41 || memcmp (&a, &VAL, sizeof (a)) != 0 || b != VAL2) \
42 abort (); \
43} \
44 \
45void NAME##_f4 (PADT z0, PADT z1, PADT z2, PADT z3, TYPE a, PADT b) \
46{ \
47 if (z0 != (PADT) 0 \
48 || z1 != (PADT) 0 \
49 || z2 != (PADT) 0 \
50 || z3 != (PADT) 0 \
51 || memcmp (&a, &VAL, sizeof (a)) != 0 || b != VAL2) \
52 abort (); \
53} \
54 \
55void NAME##_f5 (PADT z0, PADT z1, PADT z2, PADT z3, PADT z4, TYPE a, \
56 PADT b) \
57{ \
58 if (z0 != (PADT) 0 \
59 || z1 != (PADT) 0 \
60 || z2 != (PADT) 0 \
61 || z3 != (PADT) 0 \
62 || z4 != (PADT) 0 \
63 || memcmp (&a, &VAL, sizeof (a)) != 0 || b != VAL2) \
64 abort (); \
65} \
66 \
67void NAME##_f6 (PADT z0, PADT z1, PADT z2, PADT z3, PADT z4, PADT z5, \
68 TYPE a, PADT b) \
69{ \
70 if (z0 != (PADT) 0 \
71 || z1 != (PADT) 0 \
72 || z2 != (PADT) 0 \
73 || z3 != (PADT) 0 \
74 || z4 != (PADT) 0 \
75 || z5 != (PADT) 0 \
76 || memcmp (&a, &VAL, sizeof (a)) != 0 || b != VAL2) \
77 abort (); \
78} \
79 \
80void NAME##_f7 (PADT z0, PADT z1, PADT z2, PADT z3, PADT z4, PADT z5, \
81 PADT z6, TYPE a, PADT b) \
82{ \
83 if (z0 != (PADT) 0 \
84 || z1 != (PADT) 0 \
85 || z2 != (PADT) 0 \
86 || z3 != (PADT) 0 \
87 || z4 != (PADT) 0 \
88 || z5 != (PADT) 0 \
89 || z6 != (PADT) 0 \
90 || memcmp (&a, &VAL, sizeof (a)) != 0 || b != VAL2) \
91 abort (); \
92} \
93 \
94void NAME##_f8 (PADT z0, PADT z1, PADT z2, PADT z3, PADT z4, PADT z5, \
95 PADT z6, PADT z7, TYPE a, PADT b) \
96{ \
97 if (z0 != (PADT) 0 \
98 || z1 != (PADT) 0 \
99 || z2 != (PADT) 0 \
100 || z3 != (PADT) 0 \
101 || z4 != (PADT) 0 \
102 || z5 != (PADT) 0 \
103 || z6 != (PADT) 0 \
104 || z7 != (PADT) 0 \
105 || memcmp (&a, &VAL, sizeof (a)) != 0 || b != VAL2) \
106 abort (); \
107} \
108 \
109void NAME##_f9 (PADT z0, PADT z1, PADT z2, PADT z3, PADT z4, PADT z5, \
110 PADT z6, PADT z7, PADT z8, TYPE a, PADT b) \
111{ \
112 if (z0 != (PADT) 0 \
113 || z1 != (PADT) 0 \
114 || z2 != (PADT) 0 \
115 || z3 != (PADT) 0 \
116 || z4 != (PADT) 0 \
117 || z5 != (PADT) 0 \
118 || z6 != (PADT) 0 \
119 || z7 != (PADT) 0 \
120 || z8 != (PADT) 0 \
121 || memcmp (&a, &VAL, sizeof (a)) != 0 || b != VAL2) \
122 abort (); \
123} \
124 \
125void NAME##_fv (int n, ...) \
126{ \
6efbd94a 127 va_list ap; \
fccd5f95 128 TYPE x; \
6efbd94a 129 va_start (ap, n); \
fccd5f95
AM
130 \
131 while (n-- != 0) \
6efbd94a 132 if (va_arg (ap, PADT) != (PADT) 0) \
fccd5f95
AM
133 abort (); \
134 \
6efbd94a 135 x = va_arg (ap, TYPE); \
fccd5f95
AM
136 if (memcmp (&x, &VAL, sizeof (x)) != 0 ) \
137 abort (); \
138 \
6efbd94a 139 if (va_arg (ap, PADT) != VAL2) \
fccd5f95
AM
140 abort (); \
141 \
6efbd94a 142 va_end (ap); \
fccd5f95
AM
143}
144
145#else
146
147#define TEST_FUNCS(NAME, TYPE, PADT, VAL, VAL2) \
148void NAME##_f0 (TYPE a, PADT b) \
149{ \
150 if (a != VAL || b != VAL2) \
151 abort (); \
152} \
153 \
154void NAME##_f1 (PADT z0, TYPE a, PADT b) \
155{ \
156 if (z0 != (PADT) 0 \
157 || a != VAL || b != VAL2) \
158 abort (); \
159} \
160 \
161void NAME##_f2 (PADT z0, PADT z1, TYPE a, PADT b) \
162{ \
163 if (z0 != (PADT) 0 \
164 || z1 != (PADT) 0 \
165 || a != VAL || b != VAL2) \
166 abort (); \
167} \
168 \
169void NAME##_f3 (PADT z0, PADT z1, PADT z2, TYPE a, PADT b) \
170{ \
171 if (z0 != (PADT) 0 \
172 || z1 != (PADT) 0 \
173 || z2 != (PADT) 0 \
174 || a != VAL || b != VAL2) \
175 abort (); \
176} \
177 \
178void NAME##_f4 (PADT z0, PADT z1, PADT z2, PADT z3, TYPE a, PADT b) \
179{ \
180 if (z0 != (PADT) 0 \
181 || z1 != (PADT) 0 \
182 || z2 != (PADT) 0 \
183 || z3 != (PADT) 0 \
184 || a != VAL || b != VAL2) \
185 abort (); \
186} \
187 \
188void NAME##_f5 (PADT z0, PADT z1, PADT z2, PADT z3, PADT z4, TYPE a, \
189 PADT b) \
190{ \
191 if (z0 != (PADT) 0 \
192 || z1 != (PADT) 0 \
193 || z2 != (PADT) 0 \
194 || z3 != (PADT) 0 \
195 || z4 != (PADT) 0 \
196 || a != VAL || b != VAL2) \
197 abort (); \
198} \
199 \
200void NAME##_f6 (PADT z0, PADT z1, PADT z2, PADT z3, PADT z4, PADT z5, \
201 TYPE a, PADT b) \
202{ \
203 if (z0 != (PADT) 0 \
204 || z1 != (PADT) 0 \
205 || z2 != (PADT) 0 \
206 || z3 != (PADT) 0 \
207 || z4 != (PADT) 0 \
208 || z5 != (PADT) 0 \
209 || a != VAL || b != VAL2) \
210 abort (); \
211} \
212 \
213void NAME##_f7 (PADT z0, PADT z1, PADT z2, PADT z3, PADT z4, PADT z5, \
214 PADT z6, TYPE a, PADT b) \
215{ \
216 if (z0 != (PADT) 0 \
217 || z1 != (PADT) 0 \
218 || z2 != (PADT) 0 \
219 || z3 != (PADT) 0 \
220 || z4 != (PADT) 0 \
221 || z5 != (PADT) 0 \
222 || z6 != (PADT) 0 \
223 || a != VAL || b != VAL2) \
224 abort (); \
225} \
226 \
227void NAME##_f8 (PADT z0, PADT z1, PADT z2, PADT z3, PADT z4, PADT z5, \
228 PADT z6, PADT z7, TYPE a, PADT b) \
229{ \
230 if (z0 != (PADT) 0 \
231 || z1 != (PADT) 0 \
232 || z2 != (PADT) 0 \
233 || z3 != (PADT) 0 \
234 || z4 != (PADT) 0 \
235 || z5 != (PADT) 0 \
236 || z6 != (PADT) 0 \
237 || z7 != (PADT) 0 \
238 || a != VAL || b != VAL2) \
239 abort (); \
240} \
241 \
242void NAME##_f9 (PADT z0, PADT z1, PADT z2, PADT z3, PADT z4, PADT z5, \
243 PADT z6, PADT z7, PADT z8, TYPE a, PADT b) \
244{ \
245 if (z0 != (PADT) 0 \
246 || z1 != (PADT) 0 \
247 || z2 != (PADT) 0 \
248 || z3 != (PADT) 0 \
249 || z4 != (PADT) 0 \
250 || z5 != (PADT) 0 \
251 || z6 != (PADT) 0 \
252 || z7 != (PADT) 0 \
253 || z8 != (PADT) 0 \
254 || a != VAL || b != VAL2) \
255 abort (); \
256} \
257 \
258void NAME##_fv (int n, ...) \
259{ \
6efbd94a 260 va_list ap; \
fccd5f95 261 \
6efbd94a 262 va_start (ap, n); \
fccd5f95
AM
263 \
264 while (n-- != 0) \
6efbd94a 265 if (va_arg (ap, PADT) != (PADT) 0) \
fccd5f95
AM
266 abort (); \
267 \
6efbd94a 268 if (va_arg (ap, TYPE) != VAL) \
fccd5f95
AM
269 abort (); \
270 \
6efbd94a 271 if (va_arg (ap, PADT) != VAL2) \
fccd5f95
AM
272 abort (); \
273 \
6efbd94a 274 va_end (ap); \
fccd5f95
AM
275}
276
277#endif