PR tree-optimization/85826 - ICE in gimple-ssa-warn-restruct on
[official-gcc.git] / gcc / testsuite / gcc.dg / tree-ssa / vrp66.c
blob6a6ab3463fed24f52d5a504fa3747ac844a7005f
1 /* PR tree-optimization/52267 */
2 /* { dg-do run { target { ! int16 } } } */
3 /* { dg-options "-O2" } */
5 extern void abort (void);
7 #define BITSM1 (sizeof (int) * __CHAR_BIT__ - 1)
8 #define BITSH ((sizeof (int) - sizeof (short)) * __CHAR_BIT__)
10 void
11 f1 (unsigned int s)
13 if ((s & (7U << (BITSM1 - 2))) != 0)
15 if (s == (0xc000U << BITSH) - 1 || s == (0xf000U << BITSH) - 1
16 || s == (0x9000U << BITSH) - 1 || s == (0xa031U << BITSH) - 1
17 || s == (0xbfbfU << BITSH) || s == (0xc000U << BITSH)
18 || s == (0xf000U << BITSH) || s == (0x9000U << BITSH)
19 || s == (0xc000U << BITSH) + 1 || s == -1U || s == -15U
20 || s == -15550U || s == -15552U || s == (0x7000 << BITSH) - 1
21 || s == (0x7000 << BITSH) || s == (1 << (BITSM1 - 2))
22 || s == 1U + __INT_MAX__ || s == -32U
23 || s == (3 << (BITSM1 - 2)) + 2 || s == -5U || s == -63U
24 || s == -64U || s == -65U || s == 6U + __INT_MAX__ || s == -8189U
25 || s == -8191U || s == -8192U || s == -8193U || s == -8250U
26 || s == -8255U || s == -8256U || s == -8257U || s == __INT_MAX__
27 || s == __INT_MAX__ + 9U)
28 return;
30 else
32 if (s == 0 || s == 0x1cbf || s == 0x1cc0 || s == 0x1fff || s == 0x2000
33 || s == 0x20 || s == 0x3cbf || s == 0x3cc0 || s == 0x3f || s == 1
34 || s == (1 << (BITSM1 - 2)) - 1 || s == 2 || s == 24 || s == 5)
35 return;
37 abort ();
40 void
41 f2 (int s)
43 if ((s & (7U << (BITSM1 - 2))) == 0)
45 if (s == 0 || s == 0x1cbf || s == 0x1cc0 || s == 0x1fff || s == 0x2000
46 || s == 0x20 || s == 0x3cbf || s == 0x3cc0 || s == 0x3f || s == 1
47 || s == (1 << (BITSM1 - 2)) - 1 || s == 2 || s == 24 || s == 5)
48 return;
50 else
52 if (s == (-0x4000 << BITSH) - 1 || s == (-0x1000 << BITSH) - 1
53 || s == (-0x7000 << BITSH) - 1 || s == (-0x5fcf << BITSH) - 1
54 || s == (-0x4041 << BITSH) || s == (-0x4000 << BITSH)
55 || s == (-0x1000 << BITSH) || s == (-0x7000 << BITSH)
56 || s == (-0x4000 << BITSH) + 1 || s == -1 || s == -15 || s == -15550
57 || s == -15552 || s == (0x7000 << BITSH) - 1
58 || s == (0x7000 << BITSH) || s == (1 << (BITSM1 - 2))
59 || s == -__INT_MAX__ - 1 || s == -32 || s == (3 << (BITSM1 - 2)) + 2
60 || s == -5 || s == -63 || s == -64 || s == -65
61 || s == -__INT_MAX__ + 4 || s == -8189 || s == -8191 || s == -8192
62 || s == -8193 || s == -8250 || s == -8255 || s == -8256
63 || s == -8257 || s == __INT_MAX__ || s == -__INT_MAX__ + 7)
64 return;
66 abort ();
69 void
70 f3 (unsigned int s)
72 if ((s & 0x3cc0) == 0)
74 if (s == 0 || s == 0x20 || s == 0x3f || s == (0xbfbfU << BITSH)
75 || s == (0xc000U << BITSH) || s == (0xf000U << BITSH)
76 || s == (0x9000U << BITSH) || s == (0xc000U << BITSH) + 1 || s == 1
77 || s == (0x7000 << BITSH) || s == (1 << (BITSM1 - 2))
78 || s == 1U + __INT_MAX__ || s == 2 || s == 24
79 || s == (3 << (BITSM1 - 2)) + 2 || s == 5 || s == 6U + __INT_MAX__
80 || s == __INT_MAX__ + 9U)
81 return;
83 else
85 if (s == 0x1cbf || s == 0x1cc0 || s == 0x1fff || s == 0x2000
86 || s == 0x3cbf || s == 0x3cc0 || s == (0xc000U << BITSH) - 1
87 || s == (0xf000U << BITSH) - 1 || s == (0x9000U << BITSH) - 1
88 || s == (0xa031U << BITSH) - 1 || s == -1U || s == -15U
89 || s == -15550U || s == -15552U || s == (0x7000 << BITSH) - 1
90 || s == (1 << (BITSM1 - 2)) - 1 || s == -32U || s == -5U
91 || s == -63U || s == -64U || s == -65U || s == -8189U || s == -8191U
92 || s == -8192U || s == -8193U || s == -8250U || s == -8255U
93 || s == -8256U || s == -8257U || s == __INT_MAX__)
94 return;
96 abort ();
99 void
100 f4 (int s)
102 if ((s & 0x3cc0) == 0)
104 if (s == 0 || s == 0x20 || s == 0x3f || s == (-0x4041 << BITSH)
105 || s == (-0x4000 << BITSH) || s == (-0x1000 << BITSH)
106 || s == (-0x7000 << BITSH) || s == (-0x4000 << BITSH) + 1 || s == 1
107 || s == (0x7000 << BITSH) || s == (1 << (BITSM1 - 2))
108 || s == -__INT_MAX__ - 1 || s == 2 || s == 24
109 || s == (3 << (BITSM1 - 2)) + 2 || s == 5 || s == -__INT_MAX__ + 4
110 || s == -__INT_MAX__ + 7)
111 return;
113 else
115 if (s == 0x1cbf || s == 0x1cc0 || s == 0x1fff || s == 0x2000
116 || s == 0x3cbf || s == 0x3cc0 || s == (-0x4000 << BITSH) - 1
117 || s == (-0x1000 << BITSH) - 1 || s == (-0x7000 << BITSH) - 1
118 || s == (-0x5fcf << BITSH) - 1 || s == -1 || s == -15 || s == -15550
119 || s == -15552 || s == (0x7000 << BITSH) - 1
120 || s == (1 << (BITSM1 - 2)) - 1 || s == -32 || s == -5 || s == -63
121 || s == -64 || s == -65 || s == -8189 || s == -8191 || s == -8192
122 || s == -8193 || s == -8250 || s == -8255 || s == -8256
123 || s == -8257 || s == __INT_MAX__)
124 return;
126 abort ();
129 void
130 f5 (int s)
132 if ((s & 0x3cc0U) == 0)
134 if (s == 0 || s == 0x20 || s == 0x3f || s == (-0x4041 << BITSH)
135 || s == (-0x4000 << BITSH) || s == (-0x1000 << BITSH)
136 || s == (-0x7000 << BITSH) || s == (-0x4000 << BITSH) + 1 || s == 1
137 || s == (0x7000 << BITSH) || s == (1 << (BITSM1 - 2))
138 || s == -__INT_MAX__ - 1 || s == 2 || s == 24
139 || s == (3 << (BITSM1 - 2)) + 2 || s == 5 || s == -__INT_MAX__ + 4
140 || s == -__INT_MAX__ + 7)
141 return;
143 else
145 if (s == 0x1cbf || s == 0x1cc0 || s == 0x1fff || s == 0x2000
146 || s == 0x3cbf || s == 0x3cc0 || s == (-0x4000 << BITSH) - 1
147 || s == (-0x1000 << BITSH) - 1 || s == (-0x7000 << BITSH) - 1
148 || s == (-0x5fcf << BITSH) - 1 || s == -1 || s == -15 || s == -15550
149 || s == -15552 || s == (0x7000 << BITSH) - 1
150 || s == (1 << (BITSM1 - 2)) - 1 || s == -32 || s == -5 || s == -63
151 || s == -64 || s == -65 || s == -8189 || s == -8191 || s == -8192
152 || s == -8193 || s == -8250 || s == -8255 || s == -8256
153 || s == -8257 || s == __INT_MAX__)
154 return;
156 abort ();
159 void
160 f6 (unsigned int s)
162 if ((s & 0x3cc0) == 0x3cc0)
164 if (s == 0x3cc0 || s == (0xc000U << BITSH) - 1
165 || s == (0xf000U << BITSH) - 1 || s == (0x9000U << BITSH) - 1
166 || s == (0xa031U << BITSH) - 1 || s == -1U || s == -15U
167 || s == (0x7000 << BITSH) - 1 || s == (1 << (BITSM1 - 2)) - 1
168 || s == -32U || s == -5U || s == -63U || s == -64U
169 || s == __INT_MAX__)
170 return;
172 else
174 if (s == 0 || s == 0x1cbf || s == 0x1cc0 || s == 0x1fff || s == 0x2000
175 || s == 0x20 || s == 0x3cbf || s == 0x3f || s == (0xbfbfU << BITSH)
176 || s == (0xc000U << BITSH) || s == (0xf000U << BITSH)
177 || s == (0x9000U << BITSH) || s == (0xc000U << BITSH) + 1 || s == 1
178 || s == -15550U || s == -15552U || s == (0x7000 << BITSH)
179 || s == (1 << (BITSM1 - 2)) || s == 1U + __INT_MAX__ || s == 2
180 || s == 24 || s == (3 << (BITSM1 - 2)) + 2 || s == 5 || s == -65U
181 || s == 6U + __INT_MAX__ || s == -8189U || s == -8191U
182 || s == -8192U || s == -8193U || s == -8250U || s == -8255U
183 || s == -8256U || s == -8257U || s == __INT_MAX__ + 9U)
184 return;
186 abort ();
189 void
190 f7 (int s)
192 if ((s & 0x3cc0) == 0x3cc0)
194 if (s == 0x3cc0 || s == (-0x4000 << BITSH) - 1
195 || s == (-0x1000 << BITSH) - 1 || s == (-0x7000 << BITSH) - 1
196 || s == (-0x5fcf << BITSH) - 1 || s == -1 || s == -15
197 || s == (0x7000 << BITSH) - 1 || s == (1 << (BITSM1 - 2)) - 1
198 || s == -32 || s == -5 || s == -63 || s == -64 || s == __INT_MAX__)
199 return;
201 else
203 if (s == 0 || s == 0x1cbf || s == 0x1cc0 || s == 0x1fff || s == 0x2000
204 || s == 0x20 || s == 0x3cbf || s == 0x3f || s == (-0x4041 << BITSH)
205 || s == (-0x4000 << BITSH) || s == (-0x1000 << BITSH)
206 || s == (-0x7000 << BITSH) || s == (-0x4000 << BITSH) + 1 || s == 1
207 || s == -15550 || s == -15552 || s == (0x7000 << BITSH)
208 || s == (1 << (BITSM1 - 2)) || s == -__INT_MAX__ - 1 || s == 2
209 || s == 24 || s == (3 << (BITSM1 - 2)) + 2 || s == 5 || s == -65
210 || s == -__INT_MAX__ + 4 || s == -8189 || s == -8191 || s == -8192
211 || s == -8193 || s == -8250 || s == -8255 || s == -8256
212 || s == -8257 || s == -__INT_MAX__ + 7)
213 return;
215 abort ();
218 void
219 f8 (int s)
221 if ((s & 0x3cc0U) == 0x3cc0)
223 if (s == 0x3cc0 || s == (-0x4000 << BITSH) - 1
224 || s == (-0x1000 << BITSH) - 1 || s == (-0x7000 << BITSH) - 1
225 || s == (-0x5fcf << BITSH) - 1 || s == -1 || s == -15
226 || s == (0x7000 << BITSH) - 1 || s == (1 << (BITSM1 - 2)) - 1
227 || s == -32 || s == -5 || s == -63 || s == -64 || s == __INT_MAX__)
228 return;
230 else
232 if (s == 0 || s == 0x1cbf || s == 0x1cc0 || s == 0x1fff || s == 0x2000
233 || s == 0x20 || s == 0x3cbf || s == 0x3f || s == (-0x4041 << BITSH)
234 || s == (-0x4000 << BITSH) || s == (-0x1000 << BITSH)
235 || s == (-0x7000 << BITSH) || s == (-0x4000 << BITSH) + 1 || s == 1
236 || s == -15550 || s == -15552 || s == (0x7000 << BITSH)
237 || s == (1 << (BITSM1 - 2)) || s == -__INT_MAX__ - 1 || s == 2
238 || s == 24 || s == (3 << (BITSM1 - 2)) + 2 || s == 5 || s == -65
239 || s == -__INT_MAX__ + 4 || s == -8189 || s == -8191 || s == -8192
240 || s == -8193 || s == -8250 || s == -8255 || s == -8256
241 || s == -8257 || s == -__INT_MAX__ + 7)
242 return;
244 abort ();
247 void
248 f9 (unsigned int s)
250 if ((s & 0x3cc0) >= 0x1cc0)
252 if (s == 0x1cc0 || s == 0x1fff || s == 0x2000 || s == 0x3cbf
253 || s == 0x3cc0 || s == (0xc000U << BITSH) - 1
254 || s == (0xf000U << BITSH) - 1 || s == (0x9000U << BITSH) - 1
255 || s == (0xa031U << BITSH) - 1 || s == -1U || s == -15U
256 || s == (0x7000 << BITSH) - 1 || s == (1 << (BITSM1 - 2)) - 1
257 || s == -32U || s == -5U || s == -63U || s == -64U || s == -65U
258 || s == -8189U || s == -8191U || s == -8192U || s == -8193U
259 || s == -8250U || s == -8255U || s == -8256U || s == __INT_MAX__)
260 return;
262 else
264 if (s == 0 || s == 0x1cbf || s == 0x20 || s == 0x3f
265 || s == (0xbfbfU << BITSH) || s == (0xc000U << BITSH)
266 || s == (0xf000U << BITSH) || s == (0x9000U << BITSH)
267 || s == (0xc000U << BITSH) + 1 || s == 1 || s == -15550U
268 || s == -15552U || s == (0x7000 << BITSH)
269 || s == (1 << (BITSM1 - 2)) || s == 1U + __INT_MAX__ || s == 2
270 || s == 24 || s == (3 << (BITSM1 - 2)) + 2 || s == 5
271 || s == 6U + __INT_MAX__ || s == -8257U || s == __INT_MAX__ + 9U)
272 return;
274 abort ();
277 void
278 f10 (unsigned int s)
280 if ((s & 0x3cc0) > 0x1cc0)
282 if (s == 0x2000 || s == 0x3cbf || s == 0x3cc0
283 || s == (0xc000U << BITSH) - 1 || s == (0xf000U << BITSH) - 1
284 || s == (0x9000U << BITSH) - 1 || s == (0xa031U << BITSH) - 1
285 || s == -1U || s == -15U || s == (0x7000 << BITSH) - 1
286 || s == (1 << (BITSM1 - 2)) - 1 || s == -32U || s == -5U
287 || s == -63U || s == -64U || s == -65U || s == -8189U || s == -8191U
288 || s == -8192U || s == __INT_MAX__)
289 return;
291 else
293 if (s == 0 || s == 0x1cbf || s == 0x1cc0 || s == 0x1fff || s == 0x20
294 || s == 0x3f || s == (0xbfbfU << BITSH) || s == (0xc000U << BITSH)
295 || s == (0xf000U << BITSH) || s == (0x9000U << BITSH)
296 || s == (0xc000U << BITSH) + 1 || s == 1 || s == -15550U
297 || s == -15552U || s == (0x7000 << BITSH)
298 || s == (1 << (BITSM1 - 2)) || s == 1U + __INT_MAX__ || s == 2
299 || s == 24 || s == (3 << (BITSM1 - 2)) + 2 || s == 5
300 || s == 6U + __INT_MAX__ || s == -8193U || s == -8250U
301 || s == -8255U || s == -8256U || s == -8257U
302 || s == __INT_MAX__ + 9U)
303 return;
305 abort ();
308 void
309 f11 (int s)
311 if ((s & 0x3cc0) >= 0x1cc0)
313 if (s == 0x1cc0 || s == 0x1fff || s == 0x2000 || s == 0x3cbf
314 || s == 0x3cc0 || s == (-0x4000 << BITSH) - 1
315 || s == (-0x1000 << BITSH) - 1 || s == (-0x7000 << BITSH) - 1
316 || s == (-0x5fcf << BITSH) - 1 || s == -1 || s == -15
317 || s == (0x7000 << BITSH) - 1 || s == (1 << (BITSM1 - 2)) - 1
318 || s == -32 || s == -5 || s == -63 || s == -64 || s == -65
319 || s == -8189 || s == -8191 || s == -8192 || s == -8193
320 || s == -8250 || s == -8255 || s == -8256 || s == __INT_MAX__)
321 return;
323 else
325 if (s == 0 || s == 0x1cbf || s == 0x20 || s == 0x3f
326 || s == (-0x4041 << BITSH) || s == (-0x4000 << BITSH)
327 || s == (-0x1000 << BITSH) || s == (-0x7000 << BITSH)
328 || s == (-0x4000 << BITSH) + 1 || s == 1 || s == -15550
329 || s == -15552 || s == (0x7000 << BITSH) || s == (1 << (BITSM1 - 2))
330 || s == -__INT_MAX__ - 1 || s == 2 || s == 24
331 || s == (3 << (BITSM1 - 2)) + 2 || s == 5 || s == -__INT_MAX__ + 4
332 || s == -8257 || s == -__INT_MAX__ + 7)
333 return;
335 abort ();
338 void
339 f12 (int s)
341 if ((s & 0x3cc0) > 0x1cc0)
343 if (s == 0x2000 || s == 0x3cbf || s == 0x3cc0
344 || s == (-0x4000 << BITSH) - 1 || s == (-0x1000 << BITSH) - 1
345 || s == (-0x7000 << BITSH) - 1 || s == (-0x5fcf << BITSH) - 1
346 || s == -1 || s == -15 || s == (0x7000 << BITSH) - 1
347 || s == (1 << (BITSM1 - 2)) - 1 || s == -32 || s == -5 || s == -63
348 || s == -64 || s == -65 || s == -8189 || s == -8191 || s == -8192
349 || s == __INT_MAX__)
350 return;
352 else
354 if (s == 0 || s == 0x1cbf || s == 0x1cc0 || s == 0x1fff || s == 0x20
355 || s == 0x3f || s == (-0x4041 << BITSH) || s == (-0x4000 << BITSH)
356 || s == (-0x1000 << BITSH) || s == (-0x7000 << BITSH)
357 || s == (-0x4000 << BITSH) + 1 || s == 1 || s == -15550
358 || s == -15552 || s == (0x7000 << BITSH) || s == (1 << (BITSM1 - 2))
359 || s == -__INT_MAX__ - 1 || s == 2 || s == 24
360 || s == (3 << (BITSM1 - 2)) + 2 || s == 5 || s == -__INT_MAX__ + 4
361 || s == -8193 || s == -8250 || s == -8255 || s == -8256
362 || s == -8257 || s == -__INT_MAX__ + 7)
363 return;
365 abort ();
368 void
369 f13 (unsigned int s)
371 if ((s & (0xe071U << BITSH)) > (0xb030U << BITSH))
373 if (s == (0xf000U << BITSH) - 1 || s == (0xc000U << BITSH)
374 || s == (0xf000U << BITSH) || s == (0xc000U << BITSH) + 1
375 || s == -1U || s == -15U || s == -15550U || s == -15552U
376 || s == -32U || s == -5U || s == -63U || s == -64U || s == -65U
377 || s == -8189U || s == -8191U || s == -8192U || s == -8193U
378 || s == -8250U || s == -8255U || s == -8256U || s == -8257U)
379 return;
381 else
383 if (s == 0 || s == 0x1cbf || s == 0x1cc0 || s == 0x1fff || s == 0x2000
384 || s == 0x20 || s == 0x3cbf || s == 0x3cc0 || s == 0x3f
385 || s == (0xc000U << BITSH) - 1 || s == (0x9000U << BITSH) - 1
386 || s == (0xa031U << BITSH) - 1 || s == (0xbfbfU << BITSH)
387 || s == (0x9000U << BITSH) || s == 1 || s == (0x7000 << BITSH) - 1
388 || s == (0x7000 << BITSH) || s == (1 << (BITSM1 - 2))
389 || s == (1 << (BITSM1 - 2)) - 1 || s == 1U + __INT_MAX__ || s == 2
390 || s == 24 || s == (3 << (BITSM1 - 2)) + 2 || s == 5
391 || s == 6U + __INT_MAX__ || s == __INT_MAX__
392 || s == __INT_MAX__ + 9U)
393 return;
395 abort ();
398 void
399 f14 (unsigned int s)
401 if ((s & (0xe071U << BITSH)) > (0xa030U << BITSH))
403 if (s == (0xc000U << BITSH) - 1 || s == (0xf000U << BITSH) - 1
404 || s == (0xbfbfU << BITSH) || s == (0xc000U << BITSH)
405 || s == (0xf000U << BITSH) || s == (0xc000U << BITSH) + 1
406 || s == -1U || s == -15U || s == -15550U || s == -15552U
407 || s == -32U || s == -5U || s == -63U || s == -64U || s == -65U
408 || s == -8189U || s == -8191U || s == -8192U || s == -8193U
409 || s == -8250U || s == -8255U || s == -8256U || s == -8257U)
410 return;
412 else
414 if (s == 0 || s == 0x1cbf || s == 0x1cc0 || s == 0x1fff || s == 0x2000
415 || s == 0x20 || s == 0x3cbf || s == 0x3cc0 || s == 0x3f
416 || s == (0x9000U << BITSH) - 1 || s == (0xa031U << BITSH) - 1
417 || s == (0x9000U << BITSH) || s == 1 || s == (0x7000 << BITSH) - 1
418 || s == (0x7000 << BITSH) || s == (1 << (BITSM1 - 2))
419 || s == (1 << (BITSM1 - 2)) - 1 || s == 1U + __INT_MAX__ || s == 2
420 || s == 24 || s == (3 << (BITSM1 - 2)) + 2 || s == 5
421 || s == 6U + __INT_MAX__ || s == __INT_MAX__
422 || s == __INT_MAX__ + 9U)
423 return;
425 abort ();
428 void
429 f15 (int s)
431 if ((s & ((-0x1f8f) << BITSH)) > ((-0x4fd0) << BITSH))
433 if (s == 0 || s == 0x1cbf || s == 0x1cc0 || s == 0x1fff || s == 0x2000
434 || s == 0x20 || s == 0x3cbf || s == 0x3cc0 || s == 0x3f
435 || s == (-0x1000 << BITSH) - 1 || s == (-0x4000 << BITSH)
436 || s == (-0x1000 << BITSH) || s == (-0x4000 << BITSH) + 1 || s == 1
437 || s == -1 || s == -15 || s == -15550 || s == -15552
438 || s == (0x7000 << BITSH) - 1 || s == (0x7000 << BITSH)
439 || s == (1 << (BITSM1 - 2)) || s == (1 << (BITSM1 - 2)) - 1
440 || s == 2 || s == 24 || s == -32 || s == (3 << (BITSM1 - 2)) + 2
441 || s == 5 || s == -5 || s == -63 || s == -64 || s == -65
442 || s == -8189 || s == -8191 || s == -8192 || s == -8193
443 || s == -8250 || s == -8255 || s == -8256 || s == -8257
444 || s == __INT_MAX__)
445 return;
447 else
449 if (s == (-0x4000 << BITSH) - 1 || s == (-0x7000 << BITSH) - 1
450 || s == (-0x5fcf << BITSH) - 1 || s == (-0x4041 << BITSH)
451 || s == (-0x7000 << BITSH) || s == -__INT_MAX__ - 1
452 || s == -__INT_MAX__ + 4 || s == -__INT_MAX__ + 7)
453 return;
455 abort ();
458 void
459 f16 (int s)
461 if ((s & ((-0x1f8f) << BITSH)) >= ((-0x4fd0) << BITSH))
463 if (s == 0 || s == 0x1cbf || s == 0x1cc0 || s == 0x1fff || s == 0x2000
464 || s == 0x20 || s == 0x3cbf || s == 0x3cc0 || s == 0x3f
465 || s == (-0x1000 << BITSH) - 1 || s == (-0x4000 << BITSH)
466 || s == (-0x1000 << BITSH) || s == (-0x4000 << BITSH) + 1 || s == 1
467 || s == -1 || s == -15 || s == -15550 || s == -15552
468 || s == (0x7000 << BITSH) - 1 || s == (0x7000 << BITSH)
469 || s == (1 << (BITSM1 - 2)) || s == (1 << (BITSM1 - 2)) - 1
470 || s == 2 || s == 24 || s == -32 || s == (3 << (BITSM1 - 2)) + 2
471 || s == 5 || s == -5 || s == -63 || s == -64 || s == -65
472 || s == -8189 || s == -8191 || s == -8192 || s == -8193
473 || s == -8250 || s == -8255 || s == -8256 || s == -8257
474 || s == __INT_MAX__)
475 return;
477 else
479 if (s == (-0x4000 << BITSH) - 1 || s == (-0x7000 << BITSH) - 1
480 || s == (-0x5fcf << BITSH) - 1 || s == (-0x4041 << BITSH)
481 || s == (-0x7000 << BITSH) || s == -__INT_MAX__ - 1
482 || s == -__INT_MAX__ + 4 || s == -__INT_MAX__ + 7)
483 return;
485 abort ();
488 void
489 f17 (int s)
491 if ((s & ((-0x4000 << BITSH) | 1)) != -__INT_MAX__ - 1)
493 if (s == 0 || s == 0x1cbf || s == 0x1cc0 || s == 0x1fff || s == 0x2000
494 || s == 0x20 || s == 0x3cbf || s == 0x3cc0 || s == 0x3f
495 || s == (-0x4000 << BITSH) - 1 || s == (-0x1000 << BITSH) - 1
496 || s == (-0x7000 << BITSH) - 1 || s == (-0x5fcf << BITSH) - 1
497 || s == (-0x4000 << BITSH) || s == (-0x1000 << BITSH)
498 || s == (-0x4000 << BITSH) + 1 || s == 1 || s == -1 || s == -15
499 || s == -15550 || s == -15552 || s == (0x7000 << BITSH) - 1
500 || s == (0x7000 << BITSH) || s == (1 << (BITSM1 - 2))
501 || s == (1 << (BITSM1 - 2)) - 1 || s == 2 || s == 24 || s == -32
502 || s == (3 << (BITSM1 - 2)) + 2 || s == 5 || s == -5 || s == -63
503 || s == -64 || s == -65 || s == -__INT_MAX__ + 4 || s == -8189
504 || s == -8191 || s == -8192 || s == -8193 || s == -8250
505 || s == -8255 || s == -8256 || s == -8257 || s == __INT_MAX__)
506 return;
508 else
510 if (s == (-0x4041 << BITSH) || s == (-0x7000 << BITSH)
511 || s == -__INT_MAX__ - 1 || s == -__INT_MAX__ + 7)
512 return;
514 abort ();
517 void
518 f18 (int s)
520 if ((s & ((-0x4000 << BITSH) | 1)) != ((-0x4000 << BITSH) | 1))
522 if (s == 0 || s == 0x1cbf || s == 0x1cc0 || s == 0x1fff || s == 0x2000
523 || s == 0x20 || s == 0x3cbf || s == 0x3cc0 || s == 0x3f
524 || s == (-0x4000 << BITSH) - 1 || s == (-0x7000 << BITSH) - 1
525 || s == (-0x5fcf << BITSH) - 1 || s == (-0x4041 << BITSH)
526 || s == (-0x4000 << BITSH) || s == (-0x1000 << BITSH)
527 || s == (-0x7000 << BITSH) || s == 1 || s == -15550 || s == -15552
528 || s == (0x7000 << BITSH) - 1 || s == (0x7000 << BITSH)
529 || s == (1 << (BITSM1 - 2)) || s == (1 << (BITSM1 - 2)) - 1
530 || s == -__INT_MAX__ - 1 || s == 2 || s == 24 || s == -32
531 || s == (3 << (BITSM1 - 2)) + 2 || s == 5 || s == -64
532 || s == -__INT_MAX__ + 4 || s == -8192 || s == -8250 || s == -8256
533 || s == __INT_MAX__ || s == -__INT_MAX__ + 7)
534 return;
536 else
538 if (s == (-0x1000 << BITSH) - 1 || s == (-0x4000 << BITSH) + 1
539 || s == -1 || s == -15 || s == -5 || s == -63 || s == -65
540 || s == -8189 || s == -8191 || s == -8193 || s == -8255
541 || s == -8257)
542 return;
544 abort ();
547 void
548 f19 (int s)
550 if ((s & ((-0x4000 << BITSH) | 1)) != ((0x4000 << BITSH) | 1))
552 if (s == 0 || s == 0x1cbf || s == 0x1cc0 || s == 0x1fff || s == 0x2000
553 || s == 0x20 || s == 0x3cbf || s == 0x3cc0 || s == 0x3f
554 || s == (-0x4000 << BITSH) - 1 || s == (-0x1000 << BITSH) - 1
555 || s == (-0x7000 << BITSH) - 1 || s == (-0x5fcf << BITSH) - 1
556 || s == (-0x4041 << BITSH) || s == (-0x4000 << BITSH)
557 || s == (-0x1000 << BITSH) || s == (-0x7000 << BITSH)
558 || s == (-0x4000 << BITSH) + 1 || s == 1 || s == -1 || s == -15
559 || s == -15550 || s == -15552 || s == (0x7000 << BITSH)
560 || s == (1 << (BITSM1 - 2)) || s == (1 << (BITSM1 - 2)) - 1
561 || s == -__INT_MAX__ - 1 || s == 2 || s == 24 || s == -32
562 || s == (3 << (BITSM1 - 2)) + 2 || s == 5 || s == -5 || s == -63
563 || s == -64 || s == -65 || s == -__INT_MAX__ + 4 || s == -8189
564 || s == -8191 || s == -8192 || s == -8193 || s == -8250
565 || s == -8255 || s == -8256 || s == -8257 || s == -__INT_MAX__ + 7)
566 return;
568 else
570 if (s == (0x7000 << BITSH) - 1 || s == __INT_MAX__)
571 return;
573 abort ();
576 void
577 f20 (int s)
579 if ((s & (-0x1000 << BITSH)) != -__INT_MAX__ - 1)
581 if (s == 0 || s == 0x1cbf || s == 0x1cc0 || s == 0x1fff || s == 0x2000
582 || s == 0x20 || s == 0x3cbf || s == 0x3cc0 || s == 0x3f
583 || s == (-0x4000 << BITSH) - 1 || s == (-0x1000 << BITSH) - 1
584 || s == (-0x5fcf << BITSH) - 1 || s == (-0x4041 << BITSH)
585 || s == (-0x4000 << BITSH) || s == (-0x1000 << BITSH)
586 || s == (-0x7000 << BITSH) || s == (-0x4000 << BITSH) + 1 || s == 1
587 || s == -1 || s == -15 || s == -15550 || s == -15552
588 || s == (0x7000 << BITSH) - 1 || s == (0x7000 << BITSH)
589 || s == (1 << (BITSM1 - 2)) || s == (1 << (BITSM1 - 2)) - 1
590 || s == 2 || s == 24 || s == -32 || s == (3 << (BITSM1 - 2)) + 2
591 || s == 5 || s == -5 || s == -63 || s == -64 || s == -65
592 || s == -8189 || s == -8191 || s == -8192 || s == -8193
593 || s == -8250 || s == -8255 || s == -8256 || s == -8257
594 || s == __INT_MAX__)
595 return;
597 else
599 if (s == (-0x7000 << BITSH) - 1 || s == -__INT_MAX__ - 1
600 || s == -__INT_MAX__ + 4 || s == -__INT_MAX__ + 7)
601 return;
603 abort ();
606 void
607 f21 (int s)
609 if ((s & (-0x1000 << BITSH)) != (-0x1000 << BITSH))
611 if (s == 0 || s == 0x1cbf || s == 0x1cc0 || s == 0x1fff || s == 0x2000
612 || s == 0x20 || s == 0x3cbf || s == 0x3cc0 || s == 0x3f
613 || s == (-0x4000 << BITSH) - 1 || s == (-0x1000 << BITSH) - 1
614 || s == (-0x7000 << BITSH) - 1 || s == (-0x5fcf << BITSH) - 1
615 || s == (-0x4041 << BITSH) || s == (-0x4000 << BITSH)
616 || s == (-0x7000 << BITSH) || s == (-0x4000 << BITSH) + 1 || s == 1
617 || s == (0x7000 << BITSH) - 1 || s == (0x7000 << BITSH)
618 || s == (1 << (BITSM1 - 2)) || s == (1 << (BITSM1 - 2)) - 1
619 || s == -__INT_MAX__ - 1 || s == 2 || s == 24
620 || s == (3 << (BITSM1 - 2)) + 2 || s == 5 || s == -__INT_MAX__ + 4
621 || s == __INT_MAX__ || s == -__INT_MAX__ + 7)
622 return;
624 else
626 if (s == (-0x1000 << BITSH) || s == -1 || s == -15 || s == -15550
627 || s == -15552 || s == -32 || s == -5 || s == -63 || s == -64
628 || s == -65 || s == -8189 || s == -8191 || s == -8192 || s == -8193
629 || s == -8250 || s == -8255 || s == -8256 || s == -8257)
630 return;
632 abort ();
635 void
636 f22 (int s)
638 if ((s & (-0x1000 << BITSH)) != (0x7000 << BITSH))
640 if (s == 0 || s == 0x1cbf || s == 0x1cc0 || s == 0x1fff || s == 0x2000
641 || s == 0x20 || s == 0x3cbf || s == 0x3cc0 || s == 0x3f
642 || s == (-0x4000 << BITSH) - 1 || s == (-0x1000 << BITSH) - 1
643 || s == (-0x7000 << BITSH) - 1 || s == (-0x5fcf << BITSH) - 1
644 || s == (-0x4041 << BITSH) || s == (-0x4000 << BITSH)
645 || s == (-0x1000 << BITSH) || s == (-0x7000 << BITSH)
646 || s == (-0x4000 << BITSH) + 1 || s == 1 || s == -1 || s == -15
647 || s == -15550 || s == -15552 || s == (0x7000 << BITSH) - 1
648 || s == (1 << (BITSM1 - 2)) || s == (1 << (BITSM1 - 2)) - 1
649 || s == -__INT_MAX__ - 1 || s == 2 || s == 24 || s == -32
650 || s == (3 << (BITSM1 - 2)) + 2 || s == 5 || s == -5 || s == -63
651 || s == -64 || s == -65 || s == -__INT_MAX__ + 4 || s == -8189
652 || s == -8191 || s == -8192 || s == -8193 || s == -8250
653 || s == -8255 || s == -8256 || s == -8257 || s == -__INT_MAX__ + 7)
654 return;
656 else
658 if (s == (0x7000 << BITSH) || s == __INT_MAX__)
659 return;
661 abort ();
664 void
665 f23 (unsigned int s)
667 if ((s & (0xf000U << BITSH)) != (0x7000 << BITSH))
669 if (s == 0 || s == 0x1cbf || s == 0x1cc0 || s == 0x1fff || s == 0x2000
670 || s == 0x20 || s == 0x3cbf || s == 0x3cc0 || s == 0x3f
671 || s == (0xc000U << BITSH) - 1 || s == (0xf000U << BITSH) - 1
672 || s == (0x9000U << BITSH) - 1 || s == (0xa031U << BITSH) - 1
673 || s == (0xbfbfU << BITSH) || s == (0xc000U << BITSH)
674 || s == (0xf000U << BITSH) || s == (0x9000U << BITSH)
675 || s == (0xc000U << BITSH) + 1 || s == 1 || s == -1U || s == -15U
676 || s == -15550U || s == -15552U || s == (0x7000 << BITSH) - 1
677 || s == (1 << (BITSM1 - 2)) || s == (1 << (BITSM1 - 2)) - 1
678 || s == 1U + __INT_MAX__ || s == 2 || s == 24 || s == -32U
679 || s == (3 << (BITSM1 - 2)) + 2 || s == 5 || s == -5U || s == -63U
680 || s == -64U || s == -65U || s == 6U + __INT_MAX__ || s == -8189U
681 || s == -8191U || s == -8192U || s == -8193U || s == -8250U
682 || s == -8255U || s == -8256U || s == -8257U
683 || s == __INT_MAX__ + 9U)
684 return;
686 else
688 if (s == (0x7000 << BITSH) || s == __INT_MAX__)
689 return;
691 abort ();
694 void
695 f24 (unsigned int s)
697 if ((s & (0xf000U << BITSH)) != (0x8000U << BITSH))
699 if (s == 0 || s == 0x1cbf || s == 0x1cc0 || s == 0x1fff || s == 0x2000
700 || s == 0x20 || s == 0x3cbf || s == 0x3cc0 || s == 0x3f
701 || s == (0xc000U << BITSH) - 1 || s == (0xf000U << BITSH) - 1
702 || s == (0xa031U << BITSH) - 1 || s == (0xbfbfU << BITSH)
703 || s == (0xc000U << BITSH) || s == (0xf000U << BITSH)
704 || s == (0x9000U << BITSH) || s == (0xc000U << BITSH) + 1 || s == 1
705 || s == -1U || s == -15U || s == -15550U || s == -15552U
706 || s == (0x7000 << BITSH) - 1 || s == (0x7000 << BITSH)
707 || s == (1 << (BITSM1 - 2)) || s == (1 << (BITSM1 - 2)) - 1
708 || s == 2 || s == 24 || s == -32U || s == (3 << (BITSM1 - 2)) + 2
709 || s == 5 || s == -5U || s == -63U || s == -64U || s == -65U
710 || s == -8189U || s == -8191U || s == -8192U || s == -8193U
711 || s == -8250U || s == -8255U || s == -8256U || s == -8257U
712 || s == __INT_MAX__)
713 return;
715 else
717 if (s == (0x9000U << BITSH) - 1 || s == 1U + __INT_MAX__
718 || s == 6U + __INT_MAX__ || s == __INT_MAX__ + 9U)
719 return;
721 abort ();
724 int svals[] = {
726 0x1cbf,
727 0x1cc0,
728 0x1fff,
729 0x2000,
730 0x20,
731 0x3cbf,
732 0x3cc0,
733 0x3f,
734 (-0x4000 << BITSH) - 1,
735 (-0x1000 << BITSH) - 1,
736 (-0x7000 << BITSH) - 1,
737 (-0x5fcf << BITSH) - 1,
738 (-0x4041 << BITSH),
739 (-0x4000 << BITSH),
740 (-0x1000 << BITSH),
741 (-0x7000 << BITSH),
742 (-0x4000 << BITSH) + 1,
745 -15,
746 -15550,
747 -15552,
748 (0x7000 << BITSH) - 1,
749 (0x7000 << BITSH),
750 (1 << (BITSM1 - 2)),
751 (1 << (BITSM1 - 2)) - 1,
752 -__INT_MAX__ - 1,
755 -32,
756 (3 << (BITSM1 - 2)) + 2,
759 -63,
760 -64,
761 -65,
762 -__INT_MAX__ + 4,
763 -8189,
764 -8191,
765 -8192,
766 -8193,
767 -8250,
768 -8255,
769 -8256,
770 -8257,
771 __INT_MAX__,
772 -__INT_MAX__ + 7,
775 unsigned int uvals[] = {
777 0x1cbf,
778 0x1cc0,
779 0x1fff,
780 0x2000,
781 0x20,
782 0x3cbf,
783 0x3cc0,
784 0x3f,
785 (0xc000U << BITSH) - 1,
786 (0xf000U << BITSH) - 1,
787 (0x9000U << BITSH) - 1,
788 (0xa031U << BITSH) - 1,
789 (0xbfbfU << BITSH),
790 (0xc000U << BITSH),
791 (0xf000U << BITSH),
792 (0x9000U << BITSH),
793 (0xc000U << BITSH) + 1,
795 -1U,
796 -15U,
797 -15550U,
798 -15552U,
799 (0x7000 << BITSH) - 1,
800 (0x7000 << BITSH),
801 (1 << (BITSM1 - 2)),
802 (1 << (BITSM1 - 2)) - 1,
803 1U + __INT_MAX__,
806 -32U,
807 (3 << (BITSM1 - 2)) + 2,
809 -5U,
810 -63U,
811 -64U,
812 -65U,
813 6U + __INT_MAX__,
814 -8189U,
815 -8191U,
816 -8192U,
817 -8193U,
818 -8250U,
819 -8255U,
820 -8256U,
821 -8257U,
822 __INT_MAX__,
823 __INT_MAX__ + 9U,
827 main ()
829 int i;
830 for (i = 0; i < sizeof (svals) / sizeof (svals[0]); i++)
832 f2 (svals[i]);
833 f4 (svals[i]);
834 f5 (svals[i]);
835 f7 (svals[i]);
836 f8 (svals[i]);
837 f11 (svals[i]);
838 f12 (svals[i]);
839 f15 (svals[i]);
840 f16 (svals[i]);
841 f17 (svals[i]);
842 f18 (svals[i]);
843 f19 (svals[i]);
844 f20 (svals[i]);
845 f21 (svals[i]);
846 f22 (svals[i]);
848 for (i = 0; i < sizeof (uvals) / sizeof (uvals[0]); i++)
850 f1 (uvals[i]);
851 f3 (uvals[i]);
852 f6 (uvals[i]);
853 f9 (uvals[i]);
854 f10 (uvals[i]);
855 f13 (uvals[i]);
856 f14 (uvals[i]);
857 f23 (uvals[i]);
858 f24 (uvals[i]);
860 return 0;