Branch data Line data Source code
1 : : /* Generated automatically by the program `genmatch' from
2 : : a IL pattern matching and simplification description. */
3 : : #pragma GCC diagnostic push
4 : : #pragma GCC diagnostic ignored "-Wunused-variable"
5 : : #pragma GCC diagnostic ignored "-Wunused-function"
6 : :
7 : : #include "generic-match-auto.h"
8 : :
9 : : bool
10 : 125862964 : tree_negate_expr_p (tree t)
11 : : {
12 : 125862964 : const tree type = TREE_TYPE (t);
13 : 125862964 : const bool debug_dump = dump_file && (dump_flags & TDF_FOLDING);
14 : 125862964 : if (TREE_SIDE_EFFECTS (t)) return false;
15 : 121027483 : switch (TREE_CODE (t))
16 : : {
17 : 7257722 : case INTEGER_CST:
18 : 7257722 : {
19 : 7257722 : {
20 : 7257722 : if ((INTEGRAL_TYPE_P (type)
21 : 7257722 : && TYPE_UNSIGNED (type))
22 : 9390914 : || (!TYPE_OVERFLOW_SANITIZED (type)
23 : 2130487 : && may_negate_without_overflow_p (t))
24 : : )
25 : : {
26 : 7241965 : {
27 : 7241965 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 14, __FILE__, __LINE__, false);
28 : 7241965 : return true;
29 : : }
30 : : }
31 : : }
32 : : break;
33 : : }
34 : 0 : case FIXED_CST:
35 : 0 : {
36 : 0 : {
37 : 0 : {
38 : 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 15, __FILE__, __LINE__, false);
39 : : return true;
40 : : }
41 : : }
42 : 489172 : break;
43 : : }
44 : 489172 : case NEGATE_EXPR:
45 : 489172 : {
46 : 489172 : tree _p0 = TREE_OPERAND (t, 0);
47 : 489172 : {
48 : 489172 : tree captures[1] ATTRIBUTE_UNUSED = { _p0 };
49 : 489172 : if (!TYPE_OVERFLOW_SANITIZED (type)
50 : : )
51 : : {
52 : 489152 : {
53 : 489152 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 16, __FILE__, __LINE__, false);
54 : 489152 : return true;
55 : : }
56 : : }
57 : : }
58 : : break;
59 : : }
60 : 769973 : case REAL_CST:
61 : 769973 : {
62 : 769973 : {
63 : 769973 : if (REAL_VALUE_NEGATIVE (TREE_REAL_CST (t))
64 : : )
65 : : {
66 : 638 : {
67 : 638 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 17, __FILE__, __LINE__, false);
68 : 638 : return true;
69 : : }
70 : : }
71 : : }
72 : : break;
73 : : }
74 : 418 : case VECTOR_CST:
75 : 418 : {
76 : 418 : {
77 : 418 : if (FLOAT_TYPE_P (TREE_TYPE (type)) || TYPE_OVERFLOW_WRAPS (type)
78 : : )
79 : : {
80 : 320 : {
81 : 320 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 18, __FILE__, __LINE__, false);
82 : 320 : return true;
83 : : }
84 : : }
85 : : }
86 : : break;
87 : : }
88 : 1173147 : case MINUS_EXPR:
89 : 1173147 : {
90 : 1173147 : tree _p0 = TREE_OPERAND (t, 0);
91 : 1173147 : tree _p1 = TREE_OPERAND (t, 1);
92 : 1173147 : {
93 : 1173147 : tree captures[2] ATTRIBUTE_UNUSED = { _p0, _p1 };
94 : 1173147 : if ((ANY_INTEGRAL_TYPE_P (type) && TYPE_OVERFLOW_WRAPS (type))
95 : 2048905 : || (FLOAT_TYPE_P (type)
96 : 618704 : && !HONOR_SIGN_DEPENDENT_ROUNDING (type)
97 : 618704 : && !HONOR_SIGNED_ZEROS (type))
98 : : )
99 : : {
100 : 297944 : {
101 : 297944 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 19, __FILE__, __LINE__, false);
102 : 297944 : return true;
103 : : }
104 : : }
105 : : }
106 : 875203 : break;
107 : : }
108 : : default:;
109 : : }
110 : : return false;
111 : : }
112 : :
113 : : bool
114 : 0 : tree_unsigned_integer_sat_add (tree t, tree *res_ops)
115 : : {
116 : 0 : const tree type = TREE_TYPE (t);
117 : 0 : const bool debug_dump = dump_file && (dump_flags & TDF_FOLDING);
118 : 0 : if (TREE_SIDE_EFFECTS (t)) return false;
119 : 0 : switch (TREE_CODE (t))
120 : : {
121 : 0 : case BIT_IOR_EXPR:
122 : 0 : {
123 : 0 : tree _p0 = TREE_OPERAND (t, 0);
124 : 0 : tree _p1 = TREE_OPERAND (t, 1);
125 : 0 : switch (TREE_CODE (_p0))
126 : : {
127 : 0 : case PLUS_EXPR:
128 : 0 : {
129 : 0 : tree _q20 = TREE_OPERAND (_p0, 0);
130 : 0 : tree _q21 = TREE_OPERAND (_p0, 1);
131 : 0 : {
132 : 0 : tree _p1_pops[2];
133 : 0 : if (tree_usadd_overflow_mask (_p1, _p1_pops))
134 : : {
135 : 0 : tree _q50 = _p1_pops[0];
136 : 0 : tree _q51 = _p1_pops[1];
137 : 0 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
138 : : {
139 : 0 : if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
140 : : {
141 : 0 : {
142 : 0 : tree captures[2] ATTRIBUTE_UNUSED = { _q20, _q21 };
143 : 0 : if (INTEGRAL_TYPE_P (type) && TYPE_UNSIGNED (type)
144 : : )
145 : : {
146 : 0 : if (types_match (type, captures[0], captures[1])
147 : : )
148 : : {
149 : 0 : {
150 : 0 : res_ops[0] = captures[0];
151 : 0 : res_ops[1] = captures[1];
152 : 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 45, __FILE__, __LINE__, false);
153 : 0 : return true;
154 : : }
155 : : }
156 : : }
157 : : }
158 : : }
159 : : }
160 : 0 : if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
161 : : {
162 : 0 : if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
163 : : {
164 : 0 : {
165 : 0 : tree captures[2] ATTRIBUTE_UNUSED = { _q21, _q20 };
166 : 0 : if (INTEGRAL_TYPE_P (type) && TYPE_UNSIGNED (type)
167 : : )
168 : : {
169 : 0 : if (types_match (type, captures[0], captures[1])
170 : : )
171 : : {
172 : 0 : {
173 : 0 : res_ops[0] = captures[0];
174 : 0 : res_ops[1] = captures[1];
175 : 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 45, __FILE__, __LINE__, false);
176 : 0 : return true;
177 : : }
178 : : }
179 : : }
180 : : }
181 : : }
182 : : }
183 : : }
184 : : }
185 : 0 : break;
186 : : }
187 : 0 : case REALPART_EXPR:
188 : 0 : {
189 : 0 : tree _q20 = TREE_OPERAND (_p0, 0);
190 : 0 : switch (TREE_CODE (_q20))
191 : : {
192 : 0 : case CALL_EXPR:
193 : 0 : switch (get_call_combined_fn (_q20))
194 : : {
195 : 0 : case CFN_ADD_OVERFLOW:
196 : 0 : if (call_expr_nargs (_q20) == 2)
197 : : {
198 : 0 : tree _q30 = CALL_EXPR_ARG (_q20, 0);
199 : 0 : tree _q31 = CALL_EXPR_ARG (_q20, 1);
200 : 0 : switch (TREE_CODE (_p1))
201 : : {
202 : 0 : case NEGATE_EXPR:
203 : 0 : {
204 : 0 : tree _q60 = TREE_OPERAND (_p1, 0);
205 : 0 : switch (TREE_CODE (_q60))
206 : : {
207 : 0 : case IMAGPART_EXPR:
208 : 0 : {
209 : 0 : tree _q70 = TREE_OPERAND (_q60, 0);
210 : 0 : if ((_q70 == _q20 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q20, 0) && types_match (_q70, _q20)))
211 : : {
212 : 0 : {
213 : 0 : tree captures[3] ATTRIBUTE_UNUSED = { _q30, _q31, _q20 };
214 : 0 : if (INTEGRAL_TYPE_P (type) && TYPE_UNSIGNED (type)
215 : : )
216 : : {
217 : 0 : if (types_match (type, captures[0], captures[1])
218 : : )
219 : : {
220 : 0 : {
221 : 0 : res_ops[0] = captures[0];
222 : 0 : res_ops[1] = captures[1];
223 : 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 46, __FILE__, __LINE__, false);
224 : 0 : return true;
225 : : }
226 : : }
227 : : }
228 : : }
229 : : }
230 : : break;
231 : : }
232 : 0 : CASE_CONVERT:
233 : 0 : {
234 : 0 : tree _q70 = TREE_OPERAND (_q60, 0);
235 : 0 : switch (TREE_CODE (_q70))
236 : : {
237 : 0 : case NE_EXPR:
238 : 0 : {
239 : 0 : tree _q80 = TREE_OPERAND (_q70, 0);
240 : 0 : tree _q81 = TREE_OPERAND (_q70, 1);
241 : 0 : switch (TREE_CODE (_q80))
242 : : {
243 : 0 : case IMAGPART_EXPR:
244 : 0 : {
245 : 0 : tree _q90 = TREE_OPERAND (_q80, 0);
246 : 0 : if ((_q90 == _q20 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q20, 0) && types_match (_q90, _q20)))
247 : : {
248 : 0 : if (integer_zerop (_q81))
249 : : {
250 : 0 : {
251 : 0 : tree captures[3] ATTRIBUTE_UNUSED = { _q30, _q31, _q20 };
252 : 0 : if (INTEGRAL_TYPE_P (type) && TYPE_UNSIGNED (type)
253 : : )
254 : : {
255 : 0 : if (types_match (type, captures[0], captures[1])
256 : : )
257 : : {
258 : 0 : {
259 : 0 : res_ops[0] = captures[0];
260 : 0 : res_ops[1] = captures[1];
261 : 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 47, __FILE__, __LINE__, false);
262 : 0 : return true;
263 : : }
264 : : }
265 : : }
266 : : }
267 : : }
268 : : }
269 : : break;
270 : : }
271 : : default:;
272 : : }
273 : : break;
274 : : }
275 : : default:;
276 : : }
277 : : break;
278 : : }
279 : : default:;
280 : : }
281 : : break;
282 : : }
283 : : default:;
284 : : }
285 : : }
286 : : break;
287 : : default:;
288 : : }
289 : : break;
290 : : default:;
291 : : }
292 : : break;
293 : : }
294 : 0 : case NEGATE_EXPR:
295 : 0 : {
296 : 0 : tree _q20 = TREE_OPERAND (_p0, 0);
297 : 0 : switch (TREE_CODE (_q20))
298 : : {
299 : 0 : case IMAGPART_EXPR:
300 : 0 : {
301 : 0 : tree _q30 = TREE_OPERAND (_q20, 0);
302 : 0 : switch (TREE_CODE (_p1))
303 : : {
304 : 0 : case REALPART_EXPR:
305 : 0 : {
306 : 0 : tree _q50 = TREE_OPERAND (_p1, 0);
307 : 0 : if ((_q50 == _q30 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q30, 0) && types_match (_q50, _q30)))
308 : : {
309 : 0 : switch (TREE_CODE (_q50))
310 : : {
311 : 0 : case CALL_EXPR:
312 : 0 : switch (get_call_combined_fn (_q50))
313 : : {
314 : 0 : case CFN_ADD_OVERFLOW:
315 : 0 : if (call_expr_nargs (_q50) == 2)
316 : : {
317 : 0 : tree _q70 = CALL_EXPR_ARG (_q50, 0);
318 : 0 : tree _q71 = CALL_EXPR_ARG (_q50, 1);
319 : 0 : {
320 : 0 : tree captures[3] ATTRIBUTE_UNUSED = { _q70, _q71, _q30 };
321 : 0 : if (INTEGRAL_TYPE_P (type) && TYPE_UNSIGNED (type)
322 : : )
323 : : {
324 : 0 : if (types_match (type, captures[0], captures[1])
325 : : )
326 : : {
327 : 0 : {
328 : 0 : res_ops[0] = captures[0];
329 : 0 : res_ops[1] = captures[1];
330 : 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 46, __FILE__, __LINE__, false);
331 : 0 : return true;
332 : : }
333 : : }
334 : : }
335 : : }
336 : : }
337 : : break;
338 : : default:;
339 : : }
340 : : break;
341 : : default:;
342 : : }
343 : : }
344 : : break;
345 : : }
346 : : default:;
347 : : }
348 : : break;
349 : : }
350 : 0 : CASE_CONVERT:
351 : 0 : {
352 : 0 : tree _q30 = TREE_OPERAND (_q20, 0);
353 : 0 : switch (TREE_CODE (_q30))
354 : : {
355 : 0 : case NE_EXPR:
356 : 0 : {
357 : 0 : tree _q40 = TREE_OPERAND (_q30, 0);
358 : 0 : tree _q41 = TREE_OPERAND (_q30, 1);
359 : 0 : switch (TREE_CODE (_q40))
360 : : {
361 : 0 : case IMAGPART_EXPR:
362 : 0 : {
363 : 0 : tree _q50 = TREE_OPERAND (_q40, 0);
364 : 0 : if (integer_zerop (_q41))
365 : : {
366 : 0 : switch (TREE_CODE (_p1))
367 : : {
368 : 0 : case REALPART_EXPR:
369 : 0 : {
370 : 0 : tree _q80 = TREE_OPERAND (_p1, 0);
371 : 0 : if ((_q80 == _q50 && ! TREE_SIDE_EFFECTS (_q80)) || (operand_equal_p (_q80, _q50, 0) && types_match (_q80, _q50)))
372 : : {
373 : 0 : switch (TREE_CODE (_q80))
374 : : {
375 : 0 : case CALL_EXPR:
376 : 0 : switch (get_call_combined_fn (_q80))
377 : : {
378 : 0 : case CFN_ADD_OVERFLOW:
379 : 0 : if (call_expr_nargs (_q80) == 2)
380 : : {
381 : 0 : tree _q100 = CALL_EXPR_ARG (_q80, 0);
382 : 0 : tree _q101 = CALL_EXPR_ARG (_q80, 1);
383 : 0 : {
384 : 0 : tree captures[3] ATTRIBUTE_UNUSED = { _q100, _q101, _q50 };
385 : 0 : if (INTEGRAL_TYPE_P (type) && TYPE_UNSIGNED (type)
386 : : )
387 : : {
388 : 0 : if (types_match (type, captures[0], captures[1])
389 : : )
390 : : {
391 : 0 : {
392 : 0 : res_ops[0] = captures[0];
393 : 0 : res_ops[1] = captures[1];
394 : 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 47, __FILE__, __LINE__, false);
395 : 0 : return true;
396 : : }
397 : : }
398 : : }
399 : : }
400 : : }
401 : : break;
402 : : default:;
403 : : }
404 : : break;
405 : : default:;
406 : : }
407 : : }
408 : : break;
409 : : }
410 : : default:;
411 : : }
412 : : }
413 : : break;
414 : : }
415 : : default:;
416 : : }
417 : : break;
418 : : }
419 : : default:;
420 : : }
421 : : break;
422 : : }
423 : : default:;
424 : : }
425 : : break;
426 : : }
427 : 0 : default:;
428 : : }
429 : 0 : {
430 : 0 : tree _p0_pops[2];
431 : 0 : if (tree_usadd_overflow_mask (_p0, _p0_pops))
432 : : {
433 : 0 : tree _q20 = _p0_pops[0];
434 : 0 : tree _q21 = _p0_pops[1];
435 : 0 : switch (TREE_CODE (_p1))
436 : : {
437 : 0 : case PLUS_EXPR:
438 : 0 : {
439 : 0 : tree _q50 = TREE_OPERAND (_p1, 0);
440 : 0 : tree _q51 = TREE_OPERAND (_p1, 1);
441 : 0 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
442 : : {
443 : 0 : if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
444 : : {
445 : 0 : {
446 : 0 : tree captures[2] ATTRIBUTE_UNUSED = { _q20, _q21 };
447 : 0 : if (INTEGRAL_TYPE_P (type) && TYPE_UNSIGNED (type)
448 : : )
449 : : {
450 : 0 : if (types_match (type, captures[0], captures[1])
451 : : )
452 : : {
453 : 0 : {
454 : 0 : res_ops[0] = captures[0];
455 : 0 : res_ops[1] = captures[1];
456 : 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 45, __FILE__, __LINE__, false);
457 : 0 : return true;
458 : : }
459 : : }
460 : : }
461 : : }
462 : : }
463 : : }
464 : 0 : if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
465 : : {
466 : 0 : if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
467 : : {
468 : 0 : {
469 : 0 : tree captures[2] ATTRIBUTE_UNUSED = { _q20, _q21 };
470 : 0 : if (INTEGRAL_TYPE_P (type) && TYPE_UNSIGNED (type)
471 : : )
472 : : {
473 : 0 : if (types_match (type, captures[0], captures[1])
474 : : )
475 : : {
476 : 0 : {
477 : 0 : res_ops[0] = captures[0];
478 : 0 : res_ops[1] = captures[1];
479 : 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 45, __FILE__, __LINE__, false);
480 : 0 : return true;
481 : : }
482 : : }
483 : : }
484 : : }
485 : : }
486 : : }
487 : : break;
488 : : }
489 : : default:;
490 : : }
491 : : }
492 : : }
493 : 0 : break;
494 : : }
495 : 0 : case COND_EXPR:
496 : 0 : {
497 : 0 : tree _p0 = TREE_OPERAND (t, 0);
498 : 0 : tree _p1 = TREE_OPERAND (t, 1);
499 : 0 : tree _p2 = TREE_OPERAND (t, 2);
500 : 0 : switch (TREE_CODE (_p0))
501 : : {
502 : 0 : case GE_EXPR:
503 : 0 : {
504 : 0 : tree _q20 = TREE_OPERAND (_p0, 0);
505 : 0 : tree _q21 = TREE_OPERAND (_p0, 1);
506 : 0 : switch (TREE_CODE (_q20))
507 : : {
508 : 0 : case PLUS_EXPR:
509 : 0 : {
510 : 0 : tree _q30 = TREE_OPERAND (_q20, 0);
511 : 0 : tree _q31 = TREE_OPERAND (_q20, 1);
512 : 0 : if ((_q21 == _q30 && ! TREE_SIDE_EFFECTS (_q21)) || (operand_equal_p (_q21, _q30, 0) && types_match (_q21, _q30)))
513 : : {
514 : 0 : if ((_p1 == _q20 && ! TREE_SIDE_EFFECTS (_p1)) || (operand_equal_p (_p1, _q20, 0) && types_match (_p1, _q20)))
515 : : {
516 : 0 : if (integer_minus_onep (_p2))
517 : : {
518 : 0 : {
519 : 0 : tree captures[3] ATTRIBUTE_UNUSED = { _q30, _q31, _q20 };
520 : 0 : if (INTEGRAL_TYPE_P (type) && TYPE_UNSIGNED (type)
521 : : )
522 : : {
523 : 0 : if (types_match (type, captures[0], captures[1])
524 : : )
525 : : {
526 : 0 : {
527 : 0 : res_ops[0] = captures[0];
528 : 0 : res_ops[1] = captures[1];
529 : 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 48, __FILE__, __LINE__, false);
530 : 0 : return true;
531 : : }
532 : : }
533 : : }
534 : : }
535 : : }
536 : : }
537 : : }
538 : 0 : if ((_q21 == _q31 && ! TREE_SIDE_EFFECTS (_q21)) || (operand_equal_p (_q21, _q31, 0) && types_match (_q21, _q31)))
539 : : {
540 : 0 : if ((_p1 == _q20 && ! TREE_SIDE_EFFECTS (_p1)) || (operand_equal_p (_p1, _q20, 0) && types_match (_p1, _q20)))
541 : : {
542 : 0 : if (integer_minus_onep (_p2))
543 : : {
544 : 0 : {
545 : 0 : tree captures[3] ATTRIBUTE_UNUSED = { _q31, _q30, _q20 };
546 : 0 : if (INTEGRAL_TYPE_P (type) && TYPE_UNSIGNED (type)
547 : : )
548 : : {
549 : 0 : if (types_match (type, captures[0], captures[1])
550 : : )
551 : : {
552 : 0 : {
553 : 0 : res_ops[0] = captures[0];
554 : 0 : res_ops[1] = captures[1];
555 : 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 48, __FILE__, __LINE__, false);
556 : 0 : return true;
557 : : }
558 : : }
559 : : }
560 : : }
561 : : }
562 : : }
563 : : }
564 : : break;
565 : : }
566 : : default:;
567 : : }
568 : : break;
569 : : }
570 : 0 : case LT_EXPR:
571 : 0 : {
572 : 0 : tree _q20 = TREE_OPERAND (_p0, 0);
573 : 0 : tree _q21 = TREE_OPERAND (_p0, 1);
574 : 0 : switch (TREE_CODE (_q20))
575 : : {
576 : 0 : case PLUS_EXPR:
577 : 0 : {
578 : 0 : tree _q30 = TREE_OPERAND (_q20, 0);
579 : 0 : tree _q31 = TREE_OPERAND (_q20, 1);
580 : 0 : if ((_q21 == _q30 && ! TREE_SIDE_EFFECTS (_q21)) || (operand_equal_p (_q21, _q30, 0) && types_match (_q21, _q30)))
581 : : {
582 : 0 : if (integer_minus_onep (_p1))
583 : : {
584 : 0 : if ((_p2 == _q20 && ! TREE_SIDE_EFFECTS (_p2)) || (operand_equal_p (_p2, _q20, 0) && types_match (_p2, _q20)))
585 : : {
586 : 0 : {
587 : 0 : tree captures[3] ATTRIBUTE_UNUSED = { _q30, _q31, _q20 };
588 : 0 : if (INTEGRAL_TYPE_P (type) && TYPE_UNSIGNED (type)
589 : : )
590 : : {
591 : 0 : if (types_match (type, captures[0], captures[1])
592 : : )
593 : : {
594 : 0 : {
595 : 0 : res_ops[0] = captures[0];
596 : 0 : res_ops[1] = captures[1];
597 : 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 49, __FILE__, __LINE__, false);
598 : 0 : return true;
599 : : }
600 : : }
601 : : }
602 : : }
603 : : }
604 : : }
605 : : }
606 : 0 : if ((_q21 == _q31 && ! TREE_SIDE_EFFECTS (_q21)) || (operand_equal_p (_q21, _q31, 0) && types_match (_q21, _q31)))
607 : : {
608 : 0 : if (integer_minus_onep (_p1))
609 : : {
610 : 0 : if ((_p2 == _q20 && ! TREE_SIDE_EFFECTS (_p2)) || (operand_equal_p (_p2, _q20, 0) && types_match (_p2, _q20)))
611 : : {
612 : 0 : {
613 : 0 : tree captures[3] ATTRIBUTE_UNUSED = { _q31, _q30, _q20 };
614 : 0 : if (INTEGRAL_TYPE_P (type) && TYPE_UNSIGNED (type)
615 : : )
616 : : {
617 : 0 : if (types_match (type, captures[0], captures[1])
618 : : )
619 : : {
620 : 0 : {
621 : 0 : res_ops[0] = captures[0];
622 : 0 : res_ops[1] = captures[1];
623 : 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 49, __FILE__, __LINE__, false);
624 : 0 : return true;
625 : : }
626 : : }
627 : : }
628 : : }
629 : : }
630 : : }
631 : : }
632 : : break;
633 : : }
634 : : default:;
635 : : }
636 : : break;
637 : : }
638 : 0 : case LE_EXPR:
639 : 0 : {
640 : 0 : tree _q20 = TREE_OPERAND (_p0, 0);
641 : 0 : tree _q21 = TREE_OPERAND (_p0, 1);
642 : 0 : switch (TREE_CODE (_q21))
643 : : {
644 : 0 : case PLUS_EXPR:
645 : 0 : {
646 : 0 : tree _q40 = TREE_OPERAND (_q21, 0);
647 : 0 : tree _q41 = TREE_OPERAND (_q21, 1);
648 : 0 : if ((_q40 == _q20 && ! TREE_SIDE_EFFECTS (_q40)) || (operand_equal_p (_q40, _q20, 0) && types_match (_q40, _q20)))
649 : : {
650 : 0 : if ((_p1 == _q21 && ! TREE_SIDE_EFFECTS (_p1)) || (operand_equal_p (_p1, _q21, 0) && types_match (_p1, _q21)))
651 : : {
652 : 0 : if (integer_minus_onep (_p2))
653 : : {
654 : 0 : {
655 : 0 : tree captures[3] ATTRIBUTE_UNUSED = { _q20, _q41, _q21 };
656 : 0 : if (INTEGRAL_TYPE_P (type) && TYPE_UNSIGNED (type)
657 : : )
658 : : {
659 : 0 : if (types_match (type, captures[0], captures[1])
660 : : )
661 : : {
662 : 0 : {
663 : 0 : res_ops[0] = captures[0];
664 : 0 : res_ops[1] = captures[1];
665 : 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 50, __FILE__, __LINE__, false);
666 : 0 : return true;
667 : : }
668 : : }
669 : : }
670 : : }
671 : : }
672 : : }
673 : : }
674 : 0 : if ((_q41 == _q20 && ! TREE_SIDE_EFFECTS (_q41)) || (operand_equal_p (_q41, _q20, 0) && types_match (_q41, _q20)))
675 : : {
676 : 0 : if ((_p1 == _q21 && ! TREE_SIDE_EFFECTS (_p1)) || (operand_equal_p (_p1, _q21, 0) && types_match (_p1, _q21)))
677 : : {
678 : 0 : if (integer_minus_onep (_p2))
679 : : {
680 : 0 : {
681 : 0 : tree captures[3] ATTRIBUTE_UNUSED = { _q20, _q40, _q21 };
682 : 0 : if (INTEGRAL_TYPE_P (type) && TYPE_UNSIGNED (type)
683 : : )
684 : : {
685 : 0 : if (types_match (type, captures[0], captures[1])
686 : : )
687 : : {
688 : 0 : {
689 : 0 : res_ops[0] = captures[0];
690 : 0 : res_ops[1] = captures[1];
691 : 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 50, __FILE__, __LINE__, false);
692 : 0 : return true;
693 : : }
694 : : }
695 : : }
696 : : }
697 : : }
698 : : }
699 : : }
700 : : break;
701 : : }
702 : 0 : default:;
703 : : }
704 : 0 : switch (TREE_CODE (_q20))
705 : : {
706 : 0 : case PLUS_EXPR:
707 : 0 : {
708 : 0 : tree _q30 = TREE_OPERAND (_q20, 0);
709 : 0 : tree _q31 = TREE_OPERAND (_q20, 1);
710 : 0 : switch (TREE_CODE (_q30))
711 : : {
712 : 0 : CASE_CONVERT:
713 : 0 : {
714 : 0 : tree _q40 = TREE_OPERAND (_q30, 0);
715 : 0 : switch (TREE_CODE (_q31))
716 : : {
717 : 0 : CASE_CONVERT:
718 : 0 : {
719 : 0 : tree _q60 = TREE_OPERAND (_q31, 0);
720 : 0 : switch (TREE_CODE (_q21))
721 : : {
722 : 0 : case INTEGER_CST:
723 : 0 : {
724 : 0 : switch (TREE_CODE (_p1))
725 : : {
726 : 0 : case PLUS_EXPR:
727 : 0 : {
728 : 0 : tree _q90 = TREE_OPERAND (_p1, 0);
729 : 0 : tree _q91 = TREE_OPERAND (_p1, 1);
730 : 0 : if ((_q90 == _q40 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q40, 0) && types_match (_q90, _q40)))
731 : : {
732 : 0 : if ((_q91 == _q60 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q60, 0) && types_match (_q91, _q60)))
733 : : {
734 : 0 : if (integer_minus_onep (_p2))
735 : : {
736 : 0 : {
737 : 0 : tree captures[5] ATTRIBUTE_UNUSED = { _q40, _q60, _q30, _q31, _q21 };
738 : 0 : if (INTEGRAL_TYPE_P (type) && TYPE_UNSIGNED (type)
739 : : )
740 : : {
741 : 0 : if (types_match (type, captures[0], captures[1]) && types_match (captures[2], captures[3])
742 : : )
743 : : {
744 : 0 : {
745 : 0 : unsigned precision = TYPE_PRECISION (type);
746 : 0 : unsigned widen_precision = TYPE_PRECISION (TREE_TYPE (captures[2]));
747 : 0 : wide_int max = wi::mask (precision, false, widen_precision);
748 : 0 : wide_int c4 = wi::to_wide (captures[4]);
749 : 0 : if (wi::eq_p (c4, max) && widen_precision > precision
750 : : )
751 : : {
752 : 0 : {
753 : 0 : res_ops[0] = captures[0];
754 : 0 : res_ops[1] = captures[1];
755 : 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 51, __FILE__, __LINE__, false);
756 : 0 : return true;
757 : : }
758 : : }
759 : 0 : }
760 : : }
761 : : }
762 : : }
763 : : }
764 : : }
765 : : }
766 : 0 : if ((_q90 == _q60 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q60, 0) && types_match (_q90, _q60)))
767 : : {
768 : 0 : if ((_q91 == _q40 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q40, 0) && types_match (_q91, _q40)))
769 : : {
770 : 0 : if (integer_minus_onep (_p2))
771 : : {
772 : 0 : {
773 : 0 : tree captures[5] ATTRIBUTE_UNUSED = { _q40, _q60, _q30, _q31, _q21 };
774 : 0 : if (INTEGRAL_TYPE_P (type) && TYPE_UNSIGNED (type)
775 : : )
776 : : {
777 : 0 : if (types_match (type, captures[0], captures[1]) && types_match (captures[2], captures[3])
778 : : )
779 : : {
780 : 0 : {
781 : 0 : unsigned precision = TYPE_PRECISION (type);
782 : 0 : unsigned widen_precision = TYPE_PRECISION (TREE_TYPE (captures[2]));
783 : 0 : wide_int max = wi::mask (precision, false, widen_precision);
784 : 0 : wide_int c4 = wi::to_wide (captures[4]);
785 : 0 : if (wi::eq_p (c4, max) && widen_precision > precision
786 : : )
787 : : {
788 : 0 : {
789 : 0 : res_ops[0] = captures[0];
790 : 0 : res_ops[1] = captures[1];
791 : 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 51, __FILE__, __LINE__, false);
792 : 0 : return true;
793 : : }
794 : : }
795 : 0 : }
796 : : }
797 : : }
798 : : }
799 : : }
800 : : }
801 : : }
802 : : break;
803 : : }
804 : : default:;
805 : : }
806 : : break;
807 : : }
808 : : default:;
809 : : }
810 : : break;
811 : : }
812 : : default:;
813 : : }
814 : : break;
815 : : }
816 : : default:;
817 : : }
818 : : break;
819 : : }
820 : : default:;
821 : : }
822 : : break;
823 : : }
824 : 0 : case GT_EXPR:
825 : 0 : {
826 : 0 : tree _q20 = TREE_OPERAND (_p0, 0);
827 : 0 : tree _q21 = TREE_OPERAND (_p0, 1);
828 : 0 : switch (TREE_CODE (_q21))
829 : : {
830 : 0 : case PLUS_EXPR:
831 : 0 : {
832 : 0 : tree _q40 = TREE_OPERAND (_q21, 0);
833 : 0 : tree _q41 = TREE_OPERAND (_q21, 1);
834 : 0 : if ((_q40 == _q20 && ! TREE_SIDE_EFFECTS (_q40)) || (operand_equal_p (_q40, _q20, 0) && types_match (_q40, _q20)))
835 : : {
836 : 0 : if (integer_minus_onep (_p1))
837 : : {
838 : 0 : if ((_p2 == _q21 && ! TREE_SIDE_EFFECTS (_p2)) || (operand_equal_p (_p2, _q21, 0) && types_match (_p2, _q21)))
839 : : {
840 : 0 : {
841 : 0 : tree captures[3] ATTRIBUTE_UNUSED = { _q20, _q41, _q21 };
842 : 0 : if (INTEGRAL_TYPE_P (type) && TYPE_UNSIGNED (type)
843 : : )
844 : : {
845 : 0 : if (types_match (type, captures[0], captures[1])
846 : : )
847 : : {
848 : 0 : {
849 : 0 : res_ops[0] = captures[0];
850 : 0 : res_ops[1] = captures[1];
851 : 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 52, __FILE__, __LINE__, false);
852 : 0 : return true;
853 : : }
854 : : }
855 : : }
856 : : }
857 : : }
858 : : }
859 : : }
860 : 0 : if ((_q41 == _q20 && ! TREE_SIDE_EFFECTS (_q41)) || (operand_equal_p (_q41, _q20, 0) && types_match (_q41, _q20)))
861 : : {
862 : 0 : if (integer_minus_onep (_p1))
863 : : {
864 : 0 : if ((_p2 == _q21 && ! TREE_SIDE_EFFECTS (_p2)) || (operand_equal_p (_p2, _q21, 0) && types_match (_p2, _q21)))
865 : : {
866 : 0 : {
867 : 0 : tree captures[3] ATTRIBUTE_UNUSED = { _q20, _q40, _q21 };
868 : 0 : if (INTEGRAL_TYPE_P (type) && TYPE_UNSIGNED (type)
869 : : )
870 : : {
871 : 0 : if (types_match (type, captures[0], captures[1])
872 : : )
873 : : {
874 : 0 : {
875 : 0 : res_ops[0] = captures[0];
876 : 0 : res_ops[1] = captures[1];
877 : 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 52, __FILE__, __LINE__, false);
878 : 0 : return true;
879 : : }
880 : : }
881 : : }
882 : : }
883 : : }
884 : : }
885 : : }
886 : : break;
887 : : }
888 : : default:;
889 : : }
890 : : break;
891 : : }
892 : 0 : case EQ_EXPR:
893 : 0 : {
894 : 0 : tree _q20 = TREE_OPERAND (_p0, 0);
895 : 0 : tree _q21 = TREE_OPERAND (_p0, 1);
896 : 0 : switch (TREE_CODE (_q20))
897 : : {
898 : 0 : case IMAGPART_EXPR:
899 : 0 : {
900 : 0 : tree _q30 = TREE_OPERAND (_q20, 0);
901 : 0 : switch (TREE_CODE (_q30))
902 : : {
903 : 0 : case CALL_EXPR:
904 : 0 : switch (get_call_combined_fn (_q30))
905 : : {
906 : 0 : case CFN_ADD_OVERFLOW:
907 : 0 : if (call_expr_nargs (_q30) == 2)
908 : : {
909 : 0 : tree _q40 = CALL_EXPR_ARG (_q30, 0);
910 : 0 : tree _q41 = CALL_EXPR_ARG (_q30, 1);
911 : 0 : if (integer_zerop (_q21))
912 : : {
913 : 0 : switch (TREE_CODE (_p1))
914 : : {
915 : 0 : case REALPART_EXPR:
916 : 0 : {
917 : 0 : tree _q80 = TREE_OPERAND (_p1, 0);
918 : 0 : if ((_q80 == _q30 && ! TREE_SIDE_EFFECTS (_q80)) || (operand_equal_p (_q80, _q30, 0) && types_match (_q80, _q30)))
919 : : {
920 : 0 : if (integer_minus_onep (_p2))
921 : : {
922 : 0 : {
923 : 0 : tree captures[3] ATTRIBUTE_UNUSED = { _q40, _q41, _q30 };
924 : 0 : if (INTEGRAL_TYPE_P (type) && TYPE_UNSIGNED (type)
925 : : )
926 : : {
927 : 0 : if (types_match (type, captures[0], captures[1])
928 : : )
929 : : {
930 : 0 : {
931 : 0 : res_ops[0] = captures[0];
932 : 0 : res_ops[1] = captures[1];
933 : 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 53, __FILE__, __LINE__, false);
934 : 0 : return true;
935 : : }
936 : : }
937 : : }
938 : : }
939 : : }
940 : : }
941 : : break;
942 : : }
943 : : default:;
944 : : }
945 : : }
946 : : }
947 : : break;
948 : : default:;
949 : : }
950 : : break;
951 : : default:;
952 : : }
953 : : break;
954 : : }
955 : : default:;
956 : : }
957 : : break;
958 : : }
959 : 0 : case NE_EXPR:
960 : 0 : {
961 : 0 : tree _q20 = TREE_OPERAND (_p0, 0);
962 : 0 : tree _q21 = TREE_OPERAND (_p0, 1);
963 : 0 : switch (TREE_CODE (_q20))
964 : : {
965 : 0 : case IMAGPART_EXPR:
966 : 0 : {
967 : 0 : tree _q30 = TREE_OPERAND (_q20, 0);
968 : 0 : switch (TREE_CODE (_q30))
969 : : {
970 : 0 : case CALL_EXPR:
971 : 0 : switch (get_call_combined_fn (_q30))
972 : : {
973 : 0 : case CFN_ADD_OVERFLOW:
974 : 0 : if (call_expr_nargs (_q30) == 2)
975 : : {
976 : 0 : tree _q40 = CALL_EXPR_ARG (_q30, 0);
977 : 0 : tree _q41 = CALL_EXPR_ARG (_q30, 1);
978 : 0 : if (integer_zerop (_q21))
979 : : {
980 : 0 : if (integer_minus_onep (_p1))
981 : : {
982 : 0 : switch (TREE_CODE (_p2))
983 : : {
984 : 0 : case REALPART_EXPR:
985 : 0 : {
986 : 0 : tree _q90 = TREE_OPERAND (_p2, 0);
987 : 0 : if ((_q90 == _q30 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q30, 0) && types_match (_q90, _q30)))
988 : : {
989 : 0 : {
990 : 0 : tree captures[3] ATTRIBUTE_UNUSED = { _q40, _q41, _q30 };
991 : 0 : if (INTEGRAL_TYPE_P (type) && TYPE_UNSIGNED (type)
992 : : )
993 : : {
994 : 0 : if (types_match (type, captures[0], captures[1])
995 : : )
996 : : {
997 : 0 : {
998 : 0 : res_ops[0] = captures[0];
999 : 0 : res_ops[1] = captures[1];
1000 : 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 54, __FILE__, __LINE__, false);
1001 : 0 : return true;
1002 : : }
1003 : : }
1004 : : }
1005 : : }
1006 : : }
1007 : : break;
1008 : : }
1009 : : default:;
1010 : : }
1011 : : }
1012 : : }
1013 : 0 : switch (TREE_CODE (_q41))
1014 : : {
1015 : 0 : case INTEGER_CST:
1016 : 0 : {
1017 : 0 : if (integer_zerop (_q21))
1018 : : {
1019 : 0 : if (integer_minus_onep (_p1))
1020 : : {
1021 : 0 : switch (TREE_CODE (_p2))
1022 : : {
1023 : 0 : case REALPART_EXPR:
1024 : 0 : {
1025 : 0 : tree _q90 = TREE_OPERAND (_p2, 0);
1026 : 0 : if ((_q90 == _q30 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q30, 0) && types_match (_q90, _q30)))
1027 : : {
1028 : 0 : {
1029 : 0 : tree captures[3] ATTRIBUTE_UNUSED = { _q40, _q41, _q30 };
1030 : 0 : if (INTEGRAL_TYPE_P (type) && TYPE_UNSIGNED (type)
1031 : : )
1032 : : {
1033 : 0 : if (types_match (type, captures[0]) && int_fits_type_p (captures[1], type)
1034 : : )
1035 : : {
1036 : 0 : {
1037 : 0 : res_ops[0] = captures[0];
1038 : 0 : res_ops[1] = captures[1];
1039 : 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 55, __FILE__, __LINE__, false);
1040 : 0 : return true;
1041 : : }
1042 : : }
1043 : : }
1044 : : }
1045 : : }
1046 : : break;
1047 : : }
1048 : : default:;
1049 : : }
1050 : : }
1051 : : }
1052 : : break;
1053 : : }
1054 : : default:;
1055 : : }
1056 : : }
1057 : : break;
1058 : : default:;
1059 : : }
1060 : : break;
1061 : : default:;
1062 : : }
1063 : : break;
1064 : : }
1065 : : default:;
1066 : : }
1067 : : break;
1068 : : }
1069 : : default:;
1070 : : }
1071 : : break;
1072 : : }
1073 : 0 : case PLUS_EXPR:
1074 : 0 : {
1075 : 0 : tree _p0 = TREE_OPERAND (t, 0);
1076 : 0 : tree _p1 = TREE_OPERAND (t, 1);
1077 : 0 : switch (TREE_CODE (_p0))
1078 : : {
1079 : 0 : case MIN_EXPR:
1080 : 0 : {
1081 : 0 : tree _q20 = TREE_OPERAND (_p0, 0);
1082 : 0 : tree _q21 = TREE_OPERAND (_p0, 1);
1083 : 0 : switch (TREE_CODE (_q21))
1084 : : {
1085 : 0 : case INTEGER_CST:
1086 : 0 : {
1087 : 0 : switch (TREE_CODE (_p1))
1088 : : {
1089 : 0 : case INTEGER_CST:
1090 : 0 : {
1091 : 0 : {
1092 : 0 : tree captures[3] ATTRIBUTE_UNUSED = { _q20, _p1, _q21 };
1093 : 0 : if (INTEGRAL_TYPE_P (type) && TYPE_UNSIGNED (type)
1094 : : )
1095 : : {
1096 : 0 : if (types_match (type, captures[0], captures[1])
1097 : : )
1098 : : {
1099 : 0 : {
1100 : 0 : unsigned precision = TYPE_PRECISION (type);
1101 : 0 : wide_int cst_1 = wi::to_wide (captures[1]);
1102 : 0 : wide_int cst_2 = wi::to_wide (captures[2]);
1103 : 0 : wide_int max = wi::mask (precision, false, precision);
1104 : 0 : wide_int sum = wi::add (cst_1, cst_2);
1105 : 0 : if (wi::eq_p (max, sum)
1106 : : )
1107 : : {
1108 : 0 : {
1109 : 0 : res_ops[0] = captures[0];
1110 : 0 : res_ops[1] = captures[1];
1111 : 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 56, __FILE__, __LINE__, false);
1112 : 0 : return true;
1113 : : }
1114 : : }
1115 : 0 : }
1116 : : }
1117 : : }
1118 : : }
1119 : 0 : break;
1120 : : }
1121 : : default:;
1122 : : }
1123 : : break;
1124 : : }
1125 : : default:;
1126 : : }
1127 : : break;
1128 : : }
1129 : : default:;
1130 : : }
1131 : : break;
1132 : : }
1133 : : default:;
1134 : : }
1135 : : return false;
1136 : : }
1137 : :
1138 : : tree
1139 : 9884 : generic_simplify_56 (location_t ARG_UNUSED (loc), const tree ARG_UNUSED (type),
1140 : : tree ARG_UNUSED (_p0), tree ARG_UNUSED (_p1), tree *ARG_UNUSED (captures))
1141 : : {
1142 : 9884 : const bool debug_dump = dump_file && (dump_flags & TDF_FOLDING);
1143 : 9884 : if (!TYPE_SATURATING (type)
1144 : : )
1145 : : {
1146 : 9884 : if ((!FLOAT_TYPE_P (type) || flag_associative_math)
1147 : 19768 : && !FIXED_POINT_TYPE_P (type)
1148 : : )
1149 : : {
1150 : 9884 : if (INTEGRAL_TYPE_P (type)
1151 : 9884 : && TYPE_OVERFLOW_UNDEFINED (type)
1152 : 2905 : && TREE_CODE (captures[1]) != INTEGER_CST
1153 : 10913 : && element_precision (type) <= element_precision (TREE_TYPE (captures[1]))
1154 : : )
1155 : : {
1156 : 1029 : {
1157 : 1029 : tree utype = unsigned_type_for (type);
1158 : 1029 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail297;
1159 : 1029 : {
1160 : 1029 : tree res_op0;
1161 : 1029 : {
1162 : 1029 : tree _o1[1], _r1;
1163 : 1029 : {
1164 : 1029 : tree _o2[1], _r2;
1165 : 1029 : _o2[0] = captures[1];
1166 : 1029 : if (TREE_TYPE (_o2[0]) != utype)
1167 : : {
1168 : 1029 : _r2 = fold_build1_loc (loc, NOP_EXPR, utype, _o2[0]);
1169 : : }
1170 : : else
1171 : : _r2 = _o2[0];
1172 : 1029 : _o1[0] = _r2;
1173 : : }
1174 : 1029 : _r1 = fold_build1_loc (loc, NEGATE_EXPR, TREE_TYPE (_o1[0]), _o1[0]);
1175 : 1029 : res_op0 = _r1;
1176 : : }
1177 : 1029 : tree _r;
1178 : 1029 : _r = fold_build1_loc (loc, NOP_EXPR, type, res_op0);
1179 : 1029 : if (TREE_SIDE_EFFECTS (captures[2]))
1180 : 0 : _r = build2_loc (loc, COMPOUND_EXPR, type, fold_ignored_result (captures[2]), _r);
1181 : 1029 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 172, __FILE__, __LINE__, true);
1182 : 1029 : return _r;
1183 : : }
1184 : 0 : next_after_fail297:;
1185 : : }
1186 : : }
1187 : : else
1188 : : {
1189 : 8855 : if (element_precision (type) <= element_precision (TREE_TYPE (captures[1]))
1190 : 8855 : || (INTEGRAL_TYPE_P (TREE_TYPE (captures[1]))
1191 : 2117 : && TYPE_OVERFLOW_UNDEFINED (TREE_TYPE (captures[1])))
1192 : : )
1193 : : {
1194 : 8612 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail298;
1195 : 8612 : {
1196 : 8612 : tree res_op0;
1197 : 8612 : {
1198 : 8612 : tree _o1[1], _r1;
1199 : 8612 : _o1[0] = captures[1];
1200 : 8612 : if (TREE_TYPE (_o1[0]) != type)
1201 : : {
1202 : 8612 : _r1 = fold_build1_loc (loc, NOP_EXPR, type, _o1[0]);
1203 : : }
1204 : : else
1205 : : _r1 = _o1[0];
1206 : 8612 : res_op0 = _r1;
1207 : : }
1208 : 8612 : tree _r;
1209 : 8612 : _r = fold_build1_loc (loc, NEGATE_EXPR, type, res_op0);
1210 : 8612 : if (TREE_SIDE_EFFECTS (captures[2]))
1211 : 0 : _r = build2_loc (loc, COMPOUND_EXPR, type, fold_ignored_result (captures[2]), _r);
1212 : 8612 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 173, __FILE__, __LINE__, true);
1213 : 8612 : return _r;
1214 : : }
1215 : 0 : next_after_fail298:;
1216 : : }
1217 : : }
1218 : : }
1219 : : }
1220 : : return NULL_TREE;
1221 : : }
1222 : :
1223 : : tree
1224 : 0 : generic_simplify_68 (location_t ARG_UNUSED (loc), const tree ARG_UNUSED (type),
1225 : : tree ARG_UNUSED (_p0), tree ARG_UNUSED (_p1), tree *ARG_UNUSED (captures))
1226 : : {
1227 : 0 : const bool debug_dump = dump_file && (dump_flags & TDF_FOLDING);
1228 : 0 : if (TREE_SIDE_EFFECTS (_p0)) goto next_after_fail311;
1229 : 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail311;
1230 : 0 : {
1231 : 0 : tree _r;
1232 : 0 : _r = captures[2];
1233 : 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 186, __FILE__, __LINE__, true);
1234 : : return _r;
1235 : : }
1236 : : next_after_fail311:;
1237 : : return NULL_TREE;
1238 : : }
1239 : :
1240 : : tree
1241 : 16 : generic_simplify_72 (location_t ARG_UNUSED (loc), const tree ARG_UNUSED (type),
1242 : : tree ARG_UNUSED (_p0), tree ARG_UNUSED (_p1), tree *ARG_UNUSED (captures))
1243 : : {
1244 : 16 : const bool debug_dump = dump_file && (dump_flags & TDF_FOLDING);
1245 : 32 : if (INTEGRAL_TYPE_P (TREE_TYPE (captures[0]))
1246 : 32 : && TYPE_PRECISION (TREE_TYPE (captures[0])) == 1
1247 : : )
1248 : : {
1249 : 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail315;
1250 : 0 : {
1251 : 0 : tree res_op0;
1252 : 0 : res_op0 = captures[0];
1253 : 0 : tree res_op1;
1254 : 0 : {
1255 : 0 : tree _o1[2], _r1;
1256 : 0 : _o1[0] = captures[1];
1257 : 0 : _o1[1] = build_one_cst (type);
1258 : 0 : _r1 = fold_build2_loc (loc, BIT_XOR_EXPR, TREE_TYPE (_o1[0]), _o1[0], _o1[1]);
1259 : 0 : res_op1 = _r1;
1260 : : }
1261 : 0 : tree _r;
1262 : 0 : _r = fold_build2_loc (loc, BIT_IOR_EXPR, type, res_op0, res_op1);
1263 : 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 189, __FILE__, __LINE__, true);
1264 : 0 : return _r;
1265 : : }
1266 : 0 : next_after_fail315:;
1267 : : }
1268 : : return NULL_TREE;
1269 : : }
1270 : :
1271 : : tree
1272 : 2 : generic_simplify_82 (location_t ARG_UNUSED (loc), const tree ARG_UNUSED (type),
1273 : : tree ARG_UNUSED (_p0), tree ARG_UNUSED (_p1), tree *ARG_UNUSED (captures))
1274 : : {
1275 : 2 : const bool debug_dump = dump_file && (dump_flags & TDF_FOLDING);
1276 : 2 : if (TREE_SIDE_EFFECTS (_p0)) goto next_after_fail329;
1277 : 2 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail329;
1278 : 2 : {
1279 : 2 : tree res_op0;
1280 : 2 : res_op0 = captures[0];
1281 : 2 : tree res_op1;
1282 : 2 : res_op1 = captures[3];
1283 : 2 : tree _r;
1284 : 2 : _r = fold_build2_loc (loc, BIT_IOR_EXPR, type, res_op0, res_op1);
1285 : 2 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 198, __FILE__, __LINE__, true);
1286 : : return _r;
1287 : : }
1288 : : next_after_fail329:;
1289 : : return NULL_TREE;
1290 : : }
1291 : :
1292 : : tree
1293 : 93 : generic_simplify_92 (location_t ARG_UNUSED (loc), const tree ARG_UNUSED (type),
1294 : : tree ARG_UNUSED (_p0), tree ARG_UNUSED (_p1), tree *ARG_UNUSED (captures),
1295 : : const enum tree_code ARG_UNUSED (op),
1296 : : const enum tree_code ARG_UNUSED (rop))
1297 : : {
1298 : 93 : const bool debug_dump = dump_file && (dump_flags & TDF_FOLDING);
1299 : 93 : if (element_precision (type) <= element_precision (TREE_TYPE (captures[0]))
1300 : 93 : && element_precision (type) <= element_precision (TREE_TYPE (captures[1]))
1301 : : )
1302 : : {
1303 : 61 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail339;
1304 : 61 : {
1305 : 61 : tree res_op0;
1306 : 61 : {
1307 : 61 : tree _o1[2], _r1;
1308 : 61 : {
1309 : 61 : tree _o2[1], _r2;
1310 : 61 : _o2[0] = captures[0];
1311 : 61 : if (TREE_TYPE (_o2[0]) != type)
1312 : : {
1313 : 1 : _r2 = fold_build1_loc (loc, NOP_EXPR, type, _o2[0]);
1314 : : }
1315 : : else
1316 : : _r2 = _o2[0];
1317 : 61 : _o1[0] = _r2;
1318 : : }
1319 : 61 : {
1320 : 61 : tree _o2[1], _r2;
1321 : 61 : _o2[0] = captures[1];
1322 : 61 : if (TREE_TYPE (_o2[0]) != type)
1323 : : {
1324 : 0 : _r2 = fold_build1_loc (loc, NOP_EXPR, type, _o2[0]);
1325 : : }
1326 : : else
1327 : : _r2 = _o2[0];
1328 : 61 : _o1[1] = _r2;
1329 : : }
1330 : 61 : _r1 = fold_build2_loc (loc, rop, TREE_TYPE (_o1[0]), _o1[0], _o1[1]);
1331 : 61 : res_op0 = _r1;
1332 : : }
1333 : 61 : tree _r;
1334 : 61 : _r = fold_build1_loc (loc, BIT_NOT_EXPR, type, res_op0);
1335 : 61 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 205, __FILE__, __LINE__, true);
1336 : 61 : return _r;
1337 : : }
1338 : 0 : next_after_fail339:;
1339 : : }
1340 : : return NULL_TREE;
1341 : : }
1342 : :
1343 : : tree
1344 : 367257 : generic_simplify_104 (location_t ARG_UNUSED (loc), const tree ARG_UNUSED (type),
1345 : : tree ARG_UNUSED (_p0), tree ARG_UNUSED (_p1), tree *ARG_UNUSED (captures),
1346 : : const enum tree_code ARG_UNUSED (bitop),
1347 : : const enum tree_code ARG_UNUSED (rbitop))
1348 : : {
1349 : 367257 : const bool debug_dump = dump_file && (dump_flags & TDF_FOLDING);
1350 : 367257 : {
1351 : 367257 : bool wascmp;
1352 : 367257 : if (bitwise_inverted_equal_p (captures[2], captures[0], wascmp)
1353 : 367257 : && (!wascmp || element_precision (type) == 1)
1354 : : )
1355 : : {
1356 : 12 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail355;
1357 : 12 : {
1358 : 12 : tree res_op0;
1359 : 12 : res_op0 = captures[2];
1360 : 12 : tree res_op1;
1361 : 12 : res_op1 = captures[1];
1362 : 12 : tree _r;
1363 : 12 : _r = fold_build2_loc (loc, bitop, type, res_op0, res_op1);
1364 : 12 : if (TREE_SIDE_EFFECTS (captures[0]))
1365 : 0 : _r = build2_loc (loc, COMPOUND_EXPR, type, fold_ignored_result (captures[0]), _r);
1366 : 12 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 212, __FILE__, __LINE__, true);
1367 : 12 : return _r;
1368 : : }
1369 : 0 : next_after_fail355:;
1370 : : }
1371 : : }
1372 : 367245 : return NULL_TREE;
1373 : : }
1374 : :
1375 : : tree
1376 : 700 : generic_simplify_108 (location_t ARG_UNUSED (loc), const tree ARG_UNUSED (type),
1377 : : tree ARG_UNUSED (_p0), tree ARG_UNUSED (_p1), tree *ARG_UNUSED (captures),
1378 : : const enum tree_code ARG_UNUSED (op))
1379 : : {
1380 : 700 : const bool debug_dump = dump_file && (dump_flags & TDF_FOLDING);
1381 : 700 : if (bitwise_equal_p (captures[4], captures[7])
1382 : : )
1383 : : {
1384 : 40 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail359;
1385 : 40 : {
1386 : 40 : tree res_op0;
1387 : 40 : {
1388 : 40 : tree _o1[2], _r1;
1389 : 40 : {
1390 : 40 : tree _o2[2], _r2;
1391 : 40 : _o2[0] = captures[5];
1392 : 40 : {
1393 : 40 : tree _o3[1], _r3;
1394 : 40 : _o3[0] = captures[6];
1395 : 40 : if (TREE_TYPE (_o3[0]) != TREE_TYPE (_o2[0]))
1396 : : {
1397 : 0 : _r3 = fold_build1_loc (loc, NOP_EXPR, TREE_TYPE (_o2[0]), _o3[0]);
1398 : : }
1399 : : else
1400 : : _r3 = _o3[0];
1401 : 40 : _o2[1] = _r3;
1402 : : }
1403 : 40 : _r2 = fold_build2_loc (loc, BIT_AND_EXPR, TREE_TYPE (_o2[0]), _o2[0], _o2[1]);
1404 : 40 : _o1[0] = _r2;
1405 : : }
1406 : 40 : {
1407 : 40 : tree _o2[1], _r2;
1408 : 40 : _o2[0] = captures[4];
1409 : 40 : if (TREE_TYPE (_o2[0]) != TREE_TYPE (_o1[0]))
1410 : : {
1411 : 0 : _r2 = fold_build1_loc (loc, NOP_EXPR, TREE_TYPE (_o1[0]), _o2[0]);
1412 : : }
1413 : : else
1414 : : _r2 = _o2[0];
1415 : 40 : _o1[1] = _r2;
1416 : : }
1417 : 40 : _r1 = fold_build2_loc (loc, BIT_IOR_EXPR, TREE_TYPE (_o1[0]), _o1[0], _o1[1]);
1418 : 40 : res_op0 = _r1;
1419 : : }
1420 : 40 : tree _r;
1421 : 40 : _r = fold_build1_loc (loc, NOP_EXPR, type, res_op0);
1422 : 40 : if (TREE_SIDE_EFFECTS (captures[7]))
1423 : 0 : _r = build2_loc (loc, COMPOUND_EXPR, type, fold_ignored_result (captures[7]), _r);
1424 : 40 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 215, __FILE__, __LINE__, true);
1425 : 40 : return _r;
1426 : : }
1427 : 0 : next_after_fail359:;
1428 : : }
1429 : : return NULL_TREE;
1430 : : }
1431 : :
1432 : : tree
1433 : 0 : generic_simplify_119 (location_t ARG_UNUSED (loc), const tree ARG_UNUSED (type),
1434 : : tree ARG_UNUSED (_p0), tree ARG_UNUSED (_p1), tree *ARG_UNUSED (captures),
1435 : : const enum tree_code ARG_UNUSED (cmp),
1436 : : const enum tree_code ARG_UNUSED (icmp))
1437 : : {
1438 : 0 : const bool debug_dump = dump_file && (dump_flags & TDF_FOLDING);
1439 : 0 : if (INTEGRAL_TYPE_P (type)
1440 : 0 : && invert_tree_comparison (cmp, HONOR_NANS (captures[1])) == icmp
1441 : 0 : && canonicalize_math_after_vectorization_p ()
1442 : : )
1443 : : {
1444 : : if (TREE_SIDE_EFFECTS (_p0)) goto next_after_fail373;
1445 : : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail373;
1446 : : {
1447 : : tree res_op0;
1448 : : {
1449 : : tree _o1[3], _r1;
1450 : : _o1[0] = captures[0];
1451 : : _o1[1] = captures[3];
1452 : : _o1[2] = captures[5];
1453 : : _r1 = fold_build3_loc (loc, COND_EXPR, TREE_TYPE (_o1[1]), _o1[0], _o1[1], _o1[2]);
1454 : : res_op0 = _r1;
1455 : : }
1456 : : tree res_op1;
1457 : : res_op1 = build_one_cst (type);
1458 : : tree _r;
1459 : : _r = fold_build2_loc (loc, BIT_AND_EXPR, type, res_op0, res_op1);
1460 : : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 225, __FILE__, __LINE__, true);
1461 : : return _r;
1462 : : }
1463 : 0 : next_after_fail373:;
1464 : : }
1465 : 0 : return NULL_TREE;
1466 : : }
1467 : :
1468 : : tree
1469 : 0 : generic_simplify_129 (location_t ARG_UNUSED (loc), const tree ARG_UNUSED (type),
1470 : : tree ARG_UNUSED (_p0), tree ARG_UNUSED (_p1), tree *ARG_UNUSED (captures),
1471 : : const enum tree_code ARG_UNUSED (cmp))
1472 : : {
1473 : 0 : const bool debug_dump = dump_file && (dump_flags & TDF_FOLDING);
1474 : 0 : if (TREE_SIDE_EFFECTS (_p1)) goto next_after_fail405;
1475 : 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail405;
1476 : 0 : {
1477 : 0 : tree res_op0;
1478 : 0 : {
1479 : 0 : tree _o1[2], _r1;
1480 : 0 : _o1[0] = build_zero_cst (TREE_TYPE (captures[0]));
1481 : 0 : _o1[1] = captures[3];
1482 : 0 : _r1 = fold_build2_loc (loc, cmp, type, _o1[0], _o1[1]);
1483 : 0 : res_op0 = _r1;
1484 : : }
1485 : 0 : tree res_op1;
1486 : 0 : res_op1 = captures[4];
1487 : 0 : tree _r;
1488 : 0 : _r = fold_build2_loc (loc, BIT_IOR_EXPR, type, res_op0, res_op1);
1489 : 0 : if (TREE_SIDE_EFFECTS (captures[2]))
1490 : 0 : _r = build2_loc (loc, COMPOUND_EXPR, type, fold_ignored_result (captures[2]), _r);
1491 : 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 250, __FILE__, __LINE__, true);
1492 : : return _r;
1493 : : }
1494 : : next_after_fail405:;
1495 : : return NULL_TREE;
1496 : : }
1497 : :
1498 : : tree
1499 : 0 : generic_simplify_134 (location_t ARG_UNUSED (loc), const tree ARG_UNUSED (type),
1500 : : tree ARG_UNUSED (_p0), tree ARG_UNUSED (_p1), tree *ARG_UNUSED (captures),
1501 : : const enum tree_code ARG_UNUSED (eqne))
1502 : : {
1503 : 0 : const bool debug_dump = dump_file && (dump_flags & TDF_FOLDING);
1504 : 0 : if (eqne == EQ_EXPR
1505 : : )
1506 : : {
1507 : 0 : if (TREE_SIDE_EFFECTS (_p0)) goto next_after_fail410;
1508 : 0 : if (TREE_SIDE_EFFECTS (_p1)) goto next_after_fail410;
1509 : 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail410;
1510 : 0 : {
1511 : 0 : tree _r;
1512 : 0 : _r = captures[0];
1513 : 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 253, __FILE__, __LINE__, true);
1514 : 0 : return _r;
1515 : : }
1516 : : next_after_fail410:;
1517 : : }
1518 : : else
1519 : : {
1520 : 0 : if (eqne == NE_EXPR
1521 : : )
1522 : : {
1523 : 0 : if (TREE_SIDE_EFFECTS (_p0)) goto next_after_fail411;
1524 : 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail411;
1525 : 0 : {
1526 : 0 : tree _r;
1527 : 0 : _r = constant_boolean_node (true, type);
1528 : 0 : if (TREE_SIDE_EFFECTS (captures[2]))
1529 : 0 : _r = build2_loc (loc, COMPOUND_EXPR, type, fold_ignored_result (captures[2]), _r);
1530 : 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 254, __FILE__, __LINE__, true);
1531 : 0 : return _r;
1532 : : }
1533 : : next_after_fail411:;
1534 : : }
1535 : : }
1536 : : return NULL_TREE;
1537 : : }
1538 : :
1539 : : tree
1540 : 19 : generic_simplify_141 (location_t ARG_UNUSED (loc), const tree ARG_UNUSED (type),
1541 : : tree ARG_UNUSED (_p0), tree ARG_UNUSED (_p1), tree *ARG_UNUSED (captures),
1542 : : const enum tree_code ARG_UNUSED (op))
1543 : : {
1544 : 19 : const bool debug_dump = dump_file && (dump_flags & TDF_FOLDING);
1545 : 38 : if (INTEGRAL_TYPE_P (type)
1546 : 19 : && operand_equal_p (captures[2], captures[6], 0)
1547 : 38 : && (tree_nonzero_bits (captures[0]) & tree_nonzero_bits (captures[4])) == 0
1548 : : )
1549 : : {
1550 : 0 : {
1551 : 0 : tree t = type;
1552 : 0 : if (!TYPE_OVERFLOW_WRAPS (t))
1553 : 0 : t = unsigned_type_for (t);
1554 : 0 : wide_int c = wi::add (wi::to_wide (captures[3]), wi::to_wide (captures[7]));
1555 : 0 : if (TREE_SIDE_EFFECTS (captures[3])) goto next_after_fail431;
1556 : 0 : if (TREE_SIDE_EFFECTS (captures[7])) goto next_after_fail431;
1557 : 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail431;
1558 : 0 : {
1559 : 0 : tree res_op0;
1560 : 0 : {
1561 : 0 : tree _o1[2], _r1;
1562 : 0 : {
1563 : 0 : tree _o2[1], _r2;
1564 : 0 : _o2[0] = captures[2];
1565 : 0 : if (TREE_TYPE (_o2[0]) != t)
1566 : : {
1567 : 0 : _r2 = fold_build1_loc (loc, NOP_EXPR, t, _o2[0]);
1568 : : }
1569 : : else
1570 : : _r2 = _o2[0];
1571 : 0 : _o1[0] = _r2;
1572 : : }
1573 : 0 : _o1[1] = wide_int_to_tree (t, c);
1574 : 0 : _r1 = fold_build2_loc (loc, MULT_EXPR, t, _o1[0], _o1[1]);
1575 : 0 : res_op0 = _r1;
1576 : : }
1577 : 0 : tree _r;
1578 : 0 : _r = fold_build1_loc (loc, NOP_EXPR, type, res_op0);
1579 : 0 : if (TREE_SIDE_EFFECTS (captures[6]))
1580 : 0 : _r = build2_loc (loc, COMPOUND_EXPR, type, fold_ignored_result (captures[6]), _r);
1581 : 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 218, __FILE__, __LINE__, true);
1582 : 0 : return _r;
1583 : : }
1584 : 0 : next_after_fail431:;
1585 : 0 : }
1586 : : }
1587 : : return NULL_TREE;
1588 : : }
1589 : :
1590 : : tree
1591 : 495 : generic_simplify_145 (location_t ARG_UNUSED (loc), const tree ARG_UNUSED (type),
1592 : : tree ARG_UNUSED (_p0), tree ARG_UNUSED (_p1), tree *ARG_UNUSED (captures),
1593 : : const enum tree_code ARG_UNUSED (op))
1594 : : {
1595 : 495 : const bool debug_dump = dump_file && (dump_flags & TDF_FOLDING);
1596 : 990 : if (INTEGRAL_TYPE_P (type)
1597 : 493 : && tree_int_cst_sgn (captures[2]) > 0
1598 : 1976 : && (tree_nonzero_bits (captures[0]) & tree_nonzero_bits (captures[1])) == 0
1599 : : )
1600 : : {
1601 : 6 : {
1602 : 6 : tree t = type;
1603 : 6 : if (!TYPE_OVERFLOW_WRAPS (t))
1604 : 6 : t = unsigned_type_for (t);
1605 : 6 : wide_int wone = wi::one (TYPE_PRECISION (t));
1606 : 6 : wide_int c = wi::add (wi::lshift (wone, wi::to_wide (captures[2])), wone);
1607 : 6 : if (TREE_SIDE_EFFECTS (captures[2])) goto next_after_fail435;
1608 : 6 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail435;
1609 : 6 : {
1610 : 6 : tree res_op0;
1611 : 6 : {
1612 : 6 : tree _o1[2], _r1;
1613 : 6 : {
1614 : 6 : tree _o2[1], _r2;
1615 : 6 : _o2[0] = captures[1];
1616 : 6 : if (TREE_TYPE (_o2[0]) != t)
1617 : : {
1618 : 6 : _r2 = fold_build1_loc (loc, NOP_EXPR, t, _o2[0]);
1619 : : }
1620 : : else
1621 : : _r2 = _o2[0];
1622 : 6 : _o1[0] = _r2;
1623 : : }
1624 : 6 : _o1[1] = wide_int_to_tree (t, c);
1625 : 6 : _r1 = fold_build2_loc (loc, MULT_EXPR, t, _o1[0], _o1[1]);
1626 : 6 : res_op0 = _r1;
1627 : : }
1628 : 6 : tree _r;
1629 : 6 : _r = fold_build1_loc (loc, NOP_EXPR, type, res_op0);
1630 : 6 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 257, __FILE__, __LINE__, true);
1631 : 6 : return _r;
1632 : : }
1633 : 0 : next_after_fail435:;
1634 : 6 : }
1635 : : }
1636 : : return NULL_TREE;
1637 : : }
1638 : :
1639 : : tree
1640 : 196 : generic_simplify_152 (location_t ARG_UNUSED (loc), const tree ARG_UNUSED (type),
1641 : : tree ARG_UNUSED (_p0), tree ARG_UNUSED (_p1), tree *ARG_UNUSED (captures))
1642 : : {
1643 : 196 : const bool debug_dump = dump_file && (dump_flags & TDF_FOLDING);
1644 : 196 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail442;
1645 : 196 : {
1646 : 196 : if (! tree_invariant_p (captures[3])) goto next_after_fail442;
1647 : 15 : tree res_op0;
1648 : 15 : {
1649 : 15 : tree _o1[2], _r1;
1650 : 15 : _o1[0] = captures[2];
1651 : 15 : _o1[1] = unshare_expr (captures[3]);
1652 : 15 : _r1 = fold_build2_loc (loc, BIT_AND_EXPR, TREE_TYPE (_o1[0]), _o1[0], _o1[1]);
1653 : 15 : res_op0 = _r1;
1654 : : }
1655 : 15 : tree res_op1;
1656 : 15 : {
1657 : 15 : tree _o1[2], _r1;
1658 : 15 : _o1[0] = captures[4];
1659 : 15 : _o1[1] = captures[3];
1660 : 15 : _r1 = fold_build2_loc (loc, BIT_XOR_EXPR, TREE_TYPE (_o1[0]), _o1[0], _o1[1]);
1661 : 15 : if (EXPR_P (_r1))
1662 : 14 : goto next_after_fail442;
1663 : 1 : res_op1 = _r1;
1664 : : }
1665 : 1 : tree _r;
1666 : 1 : _r = fold_build2_loc (loc, BIT_XOR_EXPR, type, res_op0, res_op1);
1667 : 1 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 263, __FILE__, __LINE__, true);
1668 : : return _r;
1669 : : }
1670 : : next_after_fail442:;
1671 : : return NULL_TREE;
1672 : : }
1673 : :
1674 : : tree
1675 : 10 : generic_simplify_161 (location_t ARG_UNUSED (loc), const tree ARG_UNUSED (type),
1676 : : tree ARG_UNUSED (_p0), tree ARG_UNUSED (_p1), tree *ARG_UNUSED (captures))
1677 : : {
1678 : 10 : const bool debug_dump = dump_file && (dump_flags & TDF_FOLDING);
1679 : 10 : if (element_precision (type) <= element_precision (TREE_TYPE (captures[0]))
1680 : 10 : && element_precision (type) <= element_precision (TREE_TYPE (captures[1]))
1681 : : )
1682 : : {
1683 : 10 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail451;
1684 : 10 : {
1685 : 10 : tree res_op0;
1686 : 10 : {
1687 : 10 : tree _o1[1], _r1;
1688 : 10 : _o1[0] = captures[0];
1689 : 10 : if (TREE_TYPE (_o1[0]) != type)
1690 : : {
1691 : 0 : _r1 = fold_build1_loc (loc, NOP_EXPR, type, _o1[0]);
1692 : : }
1693 : : else
1694 : : _r1 = _o1[0];
1695 : 10 : res_op0 = _r1;
1696 : : }
1697 : 10 : tree res_op1;
1698 : 10 : {
1699 : 10 : tree _o1[1], _r1;
1700 : 10 : _o1[0] = captures[1];
1701 : 10 : if (TREE_TYPE (_o1[0]) != type)
1702 : : {
1703 : 0 : _r1 = fold_build1_loc (loc, NOP_EXPR, type, _o1[0]);
1704 : : }
1705 : : else
1706 : : _r1 = _o1[0];
1707 : 10 : res_op1 = _r1;
1708 : : }
1709 : 10 : tree _r;
1710 : 10 : _r = fold_build2_loc (loc, BIT_XOR_EXPR, type, res_op0, res_op1);
1711 : 10 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 272, __FILE__, __LINE__, true);
1712 : 10 : return _r;
1713 : : }
1714 : 0 : next_after_fail451:;
1715 : : }
1716 : : return NULL_TREE;
1717 : : }
1718 : :
1719 : : tree
1720 : 64 : generic_simplify_168 (location_t ARG_UNUSED (loc), const tree ARG_UNUSED (type),
1721 : : tree ARG_UNUSED (_p0), tree ARG_UNUSED (_p1), tree *ARG_UNUSED (captures),
1722 : : const enum tree_code ARG_UNUSED (cmp),
1723 : : const enum tree_code ARG_UNUSED (icmp),
1724 : : const enum tree_code ARG_UNUSED (ncmp))
1725 : : {
1726 : 64 : const bool debug_dump = dump_file && (dump_flags & TDF_FOLDING);
1727 : 64 : {
1728 : 64 : enum tree_code ic = invert_tree_comparison
1729 : 64 : (cmp, HONOR_NANS (captures[0]));
1730 : 64 : if (ic == icmp
1731 : : )
1732 : : {
1733 : 64 : if (TREE_SIDE_EFFECTS (_p1)) goto next_after_fail458;
1734 : 64 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail458;
1735 : 64 : {
1736 : 64 : tree res_op0;
1737 : 64 : res_op0 = captures[0];
1738 : 64 : tree res_op1;
1739 : 64 : res_op1 = captures[1];
1740 : 64 : tree _r;
1741 : 64 : _r = fold_build2_loc (loc, icmp, type, res_op0, res_op1);
1742 : 64 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 278, __FILE__, __LINE__, true);
1743 : 64 : return _r;
1744 : : }
1745 : : next_after_fail458:;
1746 : : }
1747 : : else
1748 : : {
1749 : 0 : if (ic == ncmp
1750 : : )
1751 : : {
1752 : 0 : if (TREE_SIDE_EFFECTS (_p1)) goto next_after_fail459;
1753 : 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail459;
1754 : 0 : {
1755 : 0 : tree res_op0;
1756 : 0 : res_op0 = captures[0];
1757 : 0 : tree res_op1;
1758 : 0 : res_op1 = captures[1];
1759 : 0 : tree _r;
1760 : 0 : _r = fold_build2_loc (loc, ncmp, type, res_op0, res_op1);
1761 : 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 279, __FILE__, __LINE__, true);
1762 : 0 : return _r;
1763 : : }
1764 : : next_after_fail459:;
1765 : : }
1766 : : }
1767 : : }
1768 : : return NULL_TREE;
1769 : : }
1770 : :
1771 : : tree
1772 : 6 : generic_simplify_181 (location_t ARG_UNUSED (loc), const tree ARG_UNUSED (type),
1773 : : tree ARG_UNUSED (_p0), tree ARG_UNUSED (_p1), tree *ARG_UNUSED (captures))
1774 : : {
1775 : 6 : const bool debug_dump = dump_file && (dump_flags & TDF_FOLDING);
1776 : 6 : if (INTEGRAL_TYPE_P (type)
1777 : 6 : && INTEGRAL_TYPE_P (TREE_TYPE (captures[0]))
1778 : 12 : && !TYPE_UNSIGNED (TREE_TYPE (captures[0]))
1779 : : )
1780 : : {
1781 : 6 : if (TYPE_UNSIGNED (type)
1782 : : )
1783 : : {
1784 : 5 : if (TREE_SIDE_EFFECTS (_p0)) goto next_after_fail473;
1785 : 5 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail473;
1786 : 5 : {
1787 : 5 : tree res_op0;
1788 : 5 : res_op0 = captures[0];
1789 : 5 : tree _r;
1790 : 5 : _r = fold_build1_loc (loc, ABSU_EXPR, type, res_op0);
1791 : 5 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 290, __FILE__, __LINE__, true);
1792 : 5 : return _r;
1793 : : }
1794 : : next_after_fail473:;
1795 : : }
1796 : : else
1797 : : {
1798 : 1 : if (TREE_SIDE_EFFECTS (_p0)) goto next_after_fail474;
1799 : 1 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail474;
1800 : 1 : {
1801 : 1 : tree res_op0;
1802 : 1 : res_op0 = captures[0];
1803 : 1 : tree _r;
1804 : 1 : _r = fold_build1_loc (loc, ABS_EXPR, type, res_op0);
1805 : 1 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 291, __FILE__, __LINE__, true);
1806 : 1 : return _r;
1807 : : }
1808 : : next_after_fail474:;
1809 : : }
1810 : : }
1811 : : return NULL_TREE;
1812 : : }
1813 : :
1814 : : tree
1815 : 2 : generic_simplify_191 (location_t ARG_UNUSED (loc), const tree ARG_UNUSED (type),
1816 : : tree ARG_UNUSED (_p0), tree ARG_UNUSED (_p1), tree *ARG_UNUSED (captures),
1817 : : const combined_fn ARG_UNUSED (SQRT_ALL))
1818 : : {
1819 : 2 : const bool debug_dump = dump_file && (dump_flags & TDF_FOLDING);
1820 : 2 : if (flag_unsafe_math_optimizations
1821 : : )
1822 : : {
1823 : 2 : if (!tree_expr_maybe_signaling_nan_p (captures[1])
1824 : : )
1825 : : {
1826 : 2 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail486;
1827 : 2 : {
1828 : 2 : tree _r;
1829 : 2 : _r = captures[1];
1830 : 2 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 300, __FILE__, __LINE__, true);
1831 : 2 : return _r;
1832 : : }
1833 : 0 : next_after_fail486:;
1834 : : }
1835 : : }
1836 : : return NULL_TREE;
1837 : : }
1838 : :
1839 : : tree
1840 : 38 : generic_simplify_196 (location_t ARG_UNUSED (loc), const tree ARG_UNUSED (type),
1841 : : tree ARG_UNUSED (_p0), tree ARG_UNUSED (_p1), tree *ARG_UNUSED (captures),
1842 : : const combined_fn ARG_UNUSED (POW))
1843 : : {
1844 : 38 : const bool debug_dump = dump_file && (dump_flags & TDF_FOLDING);
1845 : 38 : if (flag_unsafe_math_optimizations && canonicalize_math_p ()
1846 : : )
1847 : : {
1848 : 38 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail491;
1849 : 38 : {
1850 : 38 : tree res_op0;
1851 : 38 : res_op0 = captures[1];
1852 : 38 : tree res_op1;
1853 : 38 : {
1854 : 38 : tree _o1[2], _r1;
1855 : 38 : _o1[0] = captures[2];
1856 : 38 : _o1[1] = captures[4];
1857 : 38 : _r1 = fold_build2_loc (loc, PLUS_EXPR, TREE_TYPE (_o1[0]), _o1[0], _o1[1]);
1858 : 38 : res_op1 = _r1;
1859 : : }
1860 : 38 : tree _r;
1861 : 38 : _r = maybe_build_call_expr_loc (loc, POW, type, 2, res_op0, res_op1);
1862 : 38 : if (!_r)
1863 : 0 : goto next_after_fail491;
1864 : 38 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 305, __FILE__, __LINE__, true);
1865 : 38 : return _r;
1866 : : }
1867 : : next_after_fail491:;
1868 : : }
1869 : : return NULL_TREE;
1870 : : }
1871 : :
1872 : : tree
1873 : 12 : generic_simplify_204 (location_t ARG_UNUSED (loc), const tree ARG_UNUSED (type),
1874 : : tree ARG_UNUSED (_p0), tree ARG_UNUSED (_p1), tree *ARG_UNUSED (captures),
1875 : : const enum tree_code ARG_UNUSED (cmp))
1876 : : {
1877 : 12 : const bool debug_dump = dump_file && (dump_flags & TDF_FOLDING);
1878 : 12 : if (element_precision (captures[0]) >= element_precision (captures[1])
1879 : 12 : && types_match (captures[1], captures[3])
1880 : : )
1881 : : {
1882 : 12 : if (wi::lt_p (wi::to_wide (captures[2]), 0, TYPE_SIGN (TREE_TYPE (captures[2])))
1883 : : )
1884 : : {
1885 : 0 : if (!TYPE_UNSIGNED (TREE_TYPE (captures[0]))
1886 : : )
1887 : : {
1888 : 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail499;
1889 : 0 : {
1890 : 0 : tree res_op0;
1891 : 0 : res_op0 = captures[3];
1892 : 0 : tree res_op1;
1893 : 0 : res_op1 = captures[1];
1894 : 0 : tree _r;
1895 : 0 : _r = fold_build2_loc (loc, cmp, type, res_op0, res_op1);
1896 : 0 : if (TREE_SIDE_EFFECTS (captures[2]))
1897 : 0 : _r = build2_loc (loc, COMPOUND_EXPR, type, fold_ignored_result (captures[2]), _r);
1898 : 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 313, __FILE__, __LINE__, true);
1899 : 0 : return _r;
1900 : : }
1901 : 0 : next_after_fail499:;
1902 : : }
1903 : : else
1904 : : {
1905 : 0 : if (tree_expr_nonzero_p (captures[1]) && tree_expr_nonzero_p (captures[3])
1906 : : )
1907 : : {
1908 : 0 : {
1909 : 0 : tree utype = unsigned_type_for (TREE_TYPE (captures[1]));
1910 : 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail500;
1911 : 0 : {
1912 : 0 : tree res_op0;
1913 : 0 : {
1914 : 0 : tree _o1[1], _r1;
1915 : 0 : _o1[0] = captures[3];
1916 : 0 : if (TREE_TYPE (_o1[0]) != utype)
1917 : : {
1918 : 0 : _r1 = fold_build1_loc (loc, NOP_EXPR, utype, _o1[0]);
1919 : : }
1920 : : else
1921 : : _r1 = _o1[0];
1922 : 0 : res_op0 = _r1;
1923 : : }
1924 : 0 : tree res_op1;
1925 : 0 : {
1926 : 0 : tree _o1[1], _r1;
1927 : 0 : _o1[0] = captures[1];
1928 : 0 : if (TREE_TYPE (_o1[0]) != utype)
1929 : : {
1930 : 0 : _r1 = fold_build1_loc (loc, NOP_EXPR, utype, _o1[0]);
1931 : : }
1932 : : else
1933 : : _r1 = _o1[0];
1934 : 0 : res_op1 = _r1;
1935 : : }
1936 : 0 : tree _r;
1937 : 0 : _r = fold_build2_loc (loc, cmp, type, res_op0, res_op1);
1938 : 0 : if (TREE_SIDE_EFFECTS (captures[2]))
1939 : 0 : _r = build2_loc (loc, COMPOUND_EXPR, type, fold_ignored_result (captures[2]), _r);
1940 : 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 314, __FILE__, __LINE__, true);
1941 : 0 : return _r;
1942 : : }
1943 : 0 : next_after_fail500:;
1944 : : }
1945 : : }
1946 : : }
1947 : : }
1948 : : else
1949 : : {
1950 : 12 : if (wi::gt_p (wi::to_wide (captures[2]), 1, TYPE_SIGN (TREE_TYPE (captures[2])))
1951 : : )
1952 : : {
1953 : 12 : if (TYPE_UNSIGNED (TREE_TYPE (captures[1])) || !TYPE_UNSIGNED (TREE_TYPE (captures[0]))
1954 : : )
1955 : : {
1956 : 12 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail501;
1957 : 12 : {
1958 : 12 : tree res_op0;
1959 : 12 : res_op0 = captures[1];
1960 : 12 : tree res_op1;
1961 : 12 : res_op1 = captures[3];
1962 : 12 : tree _r;
1963 : 12 : _r = fold_build2_loc (loc, cmp, type, res_op0, res_op1);
1964 : 12 : if (TREE_SIDE_EFFECTS (captures[2]))
1965 : 0 : _r = build2_loc (loc, COMPOUND_EXPR, type, fold_ignored_result (captures[2]), _r);
1966 : 12 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 315, __FILE__, __LINE__, true);
1967 : 12 : return _r;
1968 : : }
1969 : 0 : next_after_fail501:;
1970 : : }
1971 : : else
1972 : : {
1973 : 0 : {
1974 : 0 : tree utype = unsigned_type_for (TREE_TYPE (captures[1]));
1975 : 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail502;
1976 : 0 : {
1977 : 0 : tree res_op0;
1978 : 0 : {
1979 : 0 : tree _o1[1], _r1;
1980 : 0 : _o1[0] = captures[1];
1981 : 0 : if (TREE_TYPE (_o1[0]) != utype)
1982 : : {
1983 : 0 : _r1 = fold_build1_loc (loc, NOP_EXPR, utype, _o1[0]);
1984 : : }
1985 : : else
1986 : : _r1 = _o1[0];
1987 : 0 : res_op0 = _r1;
1988 : : }
1989 : 0 : tree res_op1;
1990 : 0 : {
1991 : 0 : tree _o1[1], _r1;
1992 : 0 : _o1[0] = captures[3];
1993 : 0 : if (TREE_TYPE (_o1[0]) != utype)
1994 : : {
1995 : 0 : _r1 = fold_build1_loc (loc, NOP_EXPR, utype, _o1[0]);
1996 : : }
1997 : : else
1998 : : _r1 = _o1[0];
1999 : 0 : res_op1 = _r1;
2000 : : }
2001 : 0 : tree _r;
2002 : 0 : _r = fold_build2_loc (loc, cmp, type, res_op0, res_op1);
2003 : 0 : if (TREE_SIDE_EFFECTS (captures[2]))
2004 : 0 : _r = build2_loc (loc, COMPOUND_EXPR, type, fold_ignored_result (captures[2]), _r);
2005 : 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 316, __FILE__, __LINE__, true);
2006 : 0 : return _r;
2007 : : }
2008 : 0 : next_after_fail502:;
2009 : : }
2010 : : }
2011 : : }
2012 : : }
2013 : : }
2014 : : return NULL_TREE;
2015 : : }
2016 : :
2017 : : tree
2018 : 181 : generic_simplify_229 (location_t ARG_UNUSED (loc), const tree ARG_UNUSED (type),
2019 : : tree ARG_UNUSED (_p0), tree ARG_UNUSED (_p1), tree *ARG_UNUSED (captures),
2020 : : const enum tree_code ARG_UNUSED (cmp))
2021 : : {
2022 : 181 : const bool debug_dump = dump_file && (dump_flags & TDF_FOLDING);
2023 : 181 : {
2024 : 181 : int cand = wi::ctz (wi::to_wide (captures[2])) - wi::ctz (wi::to_wide (captures[0]));
2025 : 362 : if (cand < 0
2026 : 181 : || (!integer_zerop (captures[2])
2027 : 248 : && wi::lshift (wi::to_wide (captures[0]), cand) != wi::to_wide (captures[2]))
2028 : : )
2029 : : {
2030 : 35 : if (TREE_SIDE_EFFECTS (captures[0])) goto next_after_fail551;
2031 : 35 : if (TREE_SIDE_EFFECTS (captures[2])) goto next_after_fail551;
2032 : 35 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail551;
2033 : 35 : {
2034 : 35 : tree _r;
2035 : 35 : _r = constant_boolean_node (cmp == NE_EXPR, type);
2036 : 35 : if (TREE_SIDE_EFFECTS (captures[1]))
2037 : 0 : _r = build2_loc (loc, COMPOUND_EXPR, type, fold_ignored_result (captures[1]), _r);
2038 : 35 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 363, __FILE__, __LINE__, true);
2039 : 88 : return _r;
2040 : : }
2041 : 93 : next_after_fail551:;
2042 : : }
2043 : : else
2044 : : {
2045 : 146 : if (!integer_zerop (captures[2])
2046 : 146 : && wi::lshift (wi::to_wide (captures[0]), cand) == wi::to_wide (captures[2])
2047 : : )
2048 : : {
2049 : 53 : if (TREE_SIDE_EFFECTS (captures[0])) goto next_after_fail552;
2050 : 53 : if (TREE_SIDE_EFFECTS (captures[2])) goto next_after_fail552;
2051 : 53 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail552;
2052 : 53 : {
2053 : 53 : tree res_op0;
2054 : 53 : res_op0 = captures[1];
2055 : 53 : tree res_op1;
2056 : 53 : res_op1 = build_int_cst (TREE_TYPE (captures[1]), cand);
2057 : 53 : tree _r;
2058 : 53 : _r = fold_build2_loc (loc, cmp, type, res_op0, res_op1);
2059 : 53 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 364, __FILE__, __LINE__, true);
2060 : 53 : return _r;
2061 : : }
2062 : 93 : next_after_fail552:;
2063 : : }
2064 : : }
2065 : : }
2066 : 93 : return NULL_TREE;
2067 : : }
2068 : :
2069 : : tree
2070 : 33586 : generic_simplify_240 (location_t ARG_UNUSED (loc), const tree ARG_UNUSED (type),
2071 : : tree ARG_UNUSED (_p0), tree ARG_UNUSED (_p1), tree *ARG_UNUSED (captures),
2072 : : const enum tree_code ARG_UNUSED (cmp),
2073 : : const enum tree_code ARG_UNUSED (scmp))
2074 : : {
2075 : 33586 : const bool debug_dump = dump_file && (dump_flags & TDF_FOLDING);
2076 : 33586 : if (integer_zerop (captures[2])
2077 : : )
2078 : : {
2079 : 7 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail564;
2080 : 7 : {
2081 : 7 : tree res_op0;
2082 : 7 : res_op0 = captures[2];
2083 : 7 : tree res_op1;
2084 : 7 : res_op1 = captures[3];
2085 : 7 : tree _r;
2086 : 7 : _r = fold_build2_loc (loc, cmp, type, res_op0, res_op1);
2087 : 7 : if (TREE_SIDE_EFFECTS (captures[1]))
2088 : 0 : _r = build2_loc (loc, COMPOUND_EXPR, type, fold_ignored_result (captures[1]), _r);
2089 : 7 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 375, __FILE__, __LINE__, true);
2090 : 7 : return _r;
2091 : : }
2092 : 0 : next_after_fail564:;
2093 : : }
2094 : : else
2095 : : {
2096 : 67158 : if (ANY_INTEGRAL_TYPE_P (TREE_TYPE (captures[1]))
2097 : 67158 : && TYPE_OVERFLOW_UNDEFINED (TREE_TYPE (captures[1]))
2098 : 67158 : && single_use (captures[0])
2099 : : )
2100 : : {
2101 : 5907 : if (tree_int_cst_sgn (captures[2]) < 0
2102 : : )
2103 : : {
2104 : 15 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail565;
2105 : 15 : {
2106 : 15 : tree res_op0;
2107 : 15 : res_op0 = captures[1];
2108 : 15 : tree res_op1;
2109 : 15 : res_op1 = captures[3];
2110 : 15 : tree _r;
2111 : 15 : _r = fold_build2_loc (loc, scmp, type, res_op0, res_op1);
2112 : 15 : if (TREE_SIDE_EFFECTS (captures[2]))
2113 : 0 : _r = build2_loc (loc, COMPOUND_EXPR, type, fold_ignored_result (captures[2]), _r);
2114 : 15 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 376, __FILE__, __LINE__, true);
2115 : 15 : return _r;
2116 : : }
2117 : 0 : next_after_fail565:;
2118 : : }
2119 : : else
2120 : : {
2121 : 5892 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail566;
2122 : 5892 : {
2123 : 5892 : tree res_op0;
2124 : 5892 : res_op0 = captures[1];
2125 : 5892 : tree res_op1;
2126 : 5892 : res_op1 = captures[3];
2127 : 5892 : tree _r;
2128 : 5892 : _r = fold_build2_loc (loc, cmp, type, res_op0, res_op1);
2129 : 5892 : if (TREE_SIDE_EFFECTS (captures[2]))
2130 : 0 : _r = build2_loc (loc, COMPOUND_EXPR, type, fold_ignored_result (captures[2]), _r);
2131 : 5892 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 377, __FILE__, __LINE__, true);
2132 : 5892 : return _r;
2133 : : }
2134 : 0 : next_after_fail566:;
2135 : : }
2136 : : }
2137 : : }
2138 : : return NULL_TREE;
2139 : : }
2140 : :
2141 : : tree
2142 : 6 : generic_simplify_251 (location_t ARG_UNUSED (loc), const tree ARG_UNUSED (type),
2143 : : tree ARG_UNUSED (_p0), tree ARG_UNUSED (_p1), tree *ARG_UNUSED (captures),
2144 : : const combined_fn ARG_UNUSED (sq),
2145 : : const enum tree_code ARG_UNUSED (cmp))
2146 : : {
2147 : 6 : const bool debug_dump = dump_file && (dump_flags & TDF_FOLDING);
2148 : 6 : if (flag_unsafe_math_optimizations && ! flag_errno_math
2149 : : )
2150 : : {
2151 : 0 : if (! HONOR_NANS (captures[0])
2152 : : )
2153 : : {
2154 : 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail612;
2155 : 0 : {
2156 : 0 : tree res_op0;
2157 : 0 : res_op0 = captures[0];
2158 : 0 : tree res_op1;
2159 : 0 : res_op1 = captures[1];
2160 : 0 : tree _r;
2161 : 0 : _r = fold_build2_loc (loc, cmp, type, res_op0, res_op1);
2162 : 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 422, __FILE__, __LINE__, true);
2163 : 0 : return _r;
2164 : : }
2165 : 0 : next_after_fail612:;
2166 : : }
2167 : : }
2168 : : return NULL_TREE;
2169 : : }
2170 : :
2171 : : tree
2172 : 59 : generic_simplify_255 (location_t ARG_UNUSED (loc), const tree ARG_UNUSED (type),
2173 : : tree ARG_UNUSED (_p0), tree ARG_UNUSED (_p1), tree *ARG_UNUSED (captures),
2174 : : const enum tree_code ARG_UNUSED (cmp),
2175 : : const enum tree_code ARG_UNUSED (scmp))
2176 : : {
2177 : 59 : const bool debug_dump = dump_file && (dump_flags & TDF_FOLDING);
2178 : 96 : if (FLOAT_TYPE_P (TREE_TYPE (captures[0]))
2179 : 96 : || (ANY_INTEGRAL_TYPE_P (TREE_TYPE (captures[0]))
2180 : 37 : && (cmp == EQ_EXPR
2181 : 37 : || cmp == NE_EXPR
2182 : 36 : || TYPE_OVERFLOW_UNDEFINED (TREE_TYPE (captures[0]))))
2183 : : )
2184 : : {
2185 : 23 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail625;
2186 : 23 : {
2187 : 23 : tree res_op0;
2188 : 23 : res_op0 = captures[0];
2189 : 23 : tree res_op1;
2190 : 23 : res_op1 = captures[1];
2191 : 23 : tree _r;
2192 : 23 : _r = fold_build2_loc (loc, scmp, type, res_op0, res_op1);
2193 : 23 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 435, __FILE__, __LINE__, true);
2194 : 23 : return _r;
2195 : : }
2196 : 0 : next_after_fail625:;
2197 : : }
2198 : : return NULL_TREE;
2199 : : }
2200 : :
2201 : : tree
2202 : 3719079 : generic_simplify_257 (location_t ARG_UNUSED (loc), const tree ARG_UNUSED (type),
2203 : : tree ARG_UNUSED (_p0), tree ARG_UNUSED (_p1), tree *ARG_UNUSED (captures),
2204 : : const enum tree_code ARG_UNUSED (cmp))
2205 : : {
2206 : 3719079 : const bool debug_dump = dump_file && (dump_flags & TDF_FOLDING);
2207 : 7438132 : if (INTEGRAL_TYPE_P (TREE_TYPE (captures[0]))
2208 : 2238308 : && !(targetm.have_canonicalize_funcptr_for_compare ()
2209 : 0 : && ((POINTER_TYPE_P (TREE_TYPE (captures[1]))
2210 : 0 : && FUNC_OR_METHOD_TYPE_P (TREE_TYPE (TREE_TYPE (captures[1]))))
2211 : 0 : || (POINTER_TYPE_P (TREE_TYPE (captures[3]))
2212 : 0 : && FUNC_OR_METHOD_TYPE_P (TREE_TYPE (TREE_TYPE (captures[3]))))))
2213 : 3719079 : && single_use (captures[0])
2214 : : )
2215 : : {
2216 : 2238308 : if (TYPE_PRECISION (TREE_TYPE (captures[1])) == TYPE_PRECISION (TREE_TYPE (captures[0]))
2217 : 1622161 : && (TREE_CODE (captures[3]) == INTEGER_CST
2218 : 1622161 : || captures[2] != captures[3])
2219 : 1622161 : && (TYPE_UNSIGNED (TREE_TYPE (captures[1])) == TYPE_UNSIGNED (TREE_TYPE (captures[0]))
2220 : : || cmp == NE_EXPR
2221 : 996991 : || cmp == EQ_EXPR)
2222 : 664085 : && !POINTER_TYPE_P (TREE_TYPE (captures[1]))
2223 : 2797636 : && (TREE_CODE (TREE_TYPE (captures[1])) != BOOLEAN_TYPE
2224 : 390 : || TREE_CODE (TREE_TYPE (captures[3])) == BOOLEAN_TYPE)
2225 : : )
2226 : : {
2227 : 559328 : if (TREE_CODE (captures[2]) == INTEGER_CST
2228 : : )
2229 : : {
2230 : 0 : if (TREE_SIDE_EFFECTS (captures[2])) goto next_after_fail627;
2231 : 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail627;
2232 : 0 : {
2233 : 0 : tree res_op0;
2234 : 0 : res_op0 = captures[1];
2235 : 0 : tree res_op1;
2236 : 0 : res_op1 = force_fit_type (TREE_TYPE (captures[1]),
2237 : 0 : wide_int::from (wi::to_wide (captures[2]),
2238 : 0 : MAX (TYPE_PRECISION (TREE_TYPE (captures[2])),
2239 : : TYPE_PRECISION (TREE_TYPE (captures[1]))),
2240 : 0 : TYPE_SIGN (TREE_TYPE (captures[2]))),
2241 : 0 : 0, TREE_OVERFLOW (captures[2]));
2242 : 0 : tree _r;
2243 : 0 : _r = fold_build2_loc (loc, cmp, type, res_op0, res_op1);
2244 : 0 : if (TREE_SIDE_EFFECTS (captures[3]))
2245 : 0 : _r = build2_loc (loc, COMPOUND_EXPR, type, fold_ignored_result (captures[3]), _r);
2246 : 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 437, __FILE__, __LINE__, true);
2247 : 0 : return _r;
2248 : : }
2249 : : next_after_fail627:;
2250 : : }
2251 : : else
2252 : : {
2253 : 559328 : if (TREE_SIDE_EFFECTS (_p1)) goto next_after_fail628;
2254 : 539670 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail628;
2255 : 539670 : {
2256 : 539670 : tree res_op0;
2257 : 539670 : res_op0 = captures[1];
2258 : 539670 : tree res_op1;
2259 : 539670 : {
2260 : 539670 : tree _o1[1], _r1;
2261 : 539670 : _o1[0] = captures[2];
2262 : 539670 : if (TREE_TYPE (_o1[0]) != TREE_TYPE (res_op0))
2263 : : {
2264 : 539550 : _r1 = fold_build1_loc (loc, NOP_EXPR, TREE_TYPE (res_op0), _o1[0]);
2265 : : }
2266 : : else
2267 : : _r1 = _o1[0];
2268 : 539670 : res_op1 = _r1;
2269 : : }
2270 : 539670 : tree _r;
2271 : 539670 : _r = fold_build2_loc (loc, cmp, type, res_op0, res_op1);
2272 : 539670 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 438, __FILE__, __LINE__, true);
2273 : 539670 : return _r;
2274 : : }
2275 : : next_after_fail628:;
2276 : : }
2277 : : }
2278 : : else
2279 : : {
2280 : 1678980 : if (TYPE_PRECISION (TREE_TYPE (captures[0])) > TYPE_PRECISION (TREE_TYPE (captures[1]))
2281 : : )
2282 : : {
2283 : 556479 : if ((cmp == EQ_EXPR || cmp == NE_EXPR
2284 : 172063 : || TYPE_UNSIGNED (TREE_TYPE (captures[0])) == TYPE_UNSIGNED (TREE_TYPE (captures[1]))
2285 : 87196 : || (!TYPE_UNSIGNED (TREE_TYPE (captures[0]))
2286 : 86014 : && TYPE_UNSIGNED (TREE_TYPE (captures[1]))))
2287 : 727360 : && (types_match (TREE_TYPE (captures[3]), TREE_TYPE (captures[1]))
2288 : 114529 : || ((TYPE_PRECISION (TREE_TYPE (captures[1]))
2289 : 114529 : >= TYPE_PRECISION (TREE_TYPE (captures[3])))
2290 : 48891 : && (TYPE_UNSIGNED (TREE_TYPE (captures[1]))
2291 : 48891 : == TYPE_UNSIGNED (TREE_TYPE (captures[3]))))
2292 : 77512 : || (TREE_CODE (captures[2]) == INTEGER_CST
2293 : 0 : && INTEGRAL_TYPE_P (TREE_TYPE (captures[1]))
2294 : 0 : && int_fits_type_p (captures[2], TREE_TYPE (captures[1]))))
2295 : : )
2296 : : {
2297 : 477785 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail629;
2298 : 477785 : {
2299 : 477785 : tree res_op0;
2300 : 477785 : res_op0 = captures[1];
2301 : 477785 : tree res_op1;
2302 : 477785 : {
2303 : 477785 : tree _o1[1], _r1;
2304 : 477785 : _o1[0] = captures[3];
2305 : 477785 : if (TREE_TYPE (_o1[0]) != TREE_TYPE (res_op0))
2306 : : {
2307 : 119754 : _r1 = fold_build1_loc (loc, NOP_EXPR, TREE_TYPE (res_op0), _o1[0]);
2308 : : }
2309 : : else
2310 : : _r1 = _o1[0];
2311 : 477785 : res_op1 = _r1;
2312 : : }
2313 : 477785 : tree _r;
2314 : 477785 : _r = fold_build2_loc (loc, cmp, type, res_op0, res_op1);
2315 : 477785 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 439, __FILE__, __LINE__, true);
2316 : 477785 : return _r;
2317 : : }
2318 : 0 : next_after_fail629:;
2319 : : }
2320 : : else
2321 : : {
2322 : 78694 : if (TREE_CODE (captures[2]) == INTEGER_CST
2323 : 0 : && INTEGRAL_TYPE_P (TREE_TYPE (captures[1]))
2324 : 78694 : && !int_fits_type_p (captures[2], TREE_TYPE (captures[1]))
2325 : : )
2326 : : {
2327 : 0 : {
2328 : 0 : tree min = lower_bound_in_type (TREE_TYPE (captures[3]), TREE_TYPE (captures[1]));
2329 : 0 : tree max = upper_bound_in_type (TREE_TYPE (captures[3]), TREE_TYPE (captures[1]));
2330 : 0 : bool above = integer_nonzerop (const_binop (LT_EXPR, type, max, captures[2]));
2331 : 0 : bool below = integer_nonzerop (const_binop (LT_EXPR, type, captures[2], min));
2332 : 0 : if (above || below
2333 : : )
2334 : : {
2335 : 0 : if (cmp == EQ_EXPR || cmp == NE_EXPR
2336 : : )
2337 : : {
2338 : 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail630;
2339 : 0 : {
2340 : 0 : tree _r;
2341 : 0 : _r = constant_boolean_node (cmp == EQ_EXPR ? false : true, type);
2342 : 0 : if (TREE_SIDE_EFFECTS (captures[1]))
2343 : 0 : _r = build2_loc (loc, COMPOUND_EXPR, type, fold_ignored_result (captures[1]), _r);
2344 : 0 : if (TREE_SIDE_EFFECTS (captures[3]))
2345 : 0 : _r = build2_loc (loc, COMPOUND_EXPR, type, fold_ignored_result (captures[3]), _r);
2346 : 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 440, __FILE__, __LINE__, true);
2347 : 0 : return _r;
2348 : : }
2349 : 0 : next_after_fail630:;
2350 : : }
2351 : : else
2352 : : {
2353 : 0 : if (cmp == LT_EXPR || cmp == LE_EXPR
2354 : : )
2355 : : {
2356 : 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail631;
2357 : 0 : {
2358 : 0 : tree _r;
2359 : 0 : _r = constant_boolean_node (above ? true : false, type);
2360 : 0 : if (TREE_SIDE_EFFECTS (captures[1]))
2361 : 0 : _r = build2_loc (loc, COMPOUND_EXPR, type, fold_ignored_result (captures[1]), _r);
2362 : 0 : if (TREE_SIDE_EFFECTS (captures[3]))
2363 : 0 : _r = build2_loc (loc, COMPOUND_EXPR, type, fold_ignored_result (captures[3]), _r);
2364 : 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 441, __FILE__, __LINE__, true);
2365 : 0 : return _r;
2366 : : }
2367 : 0 : next_after_fail631:;
2368 : : }
2369 : : else
2370 : : {
2371 : 0 : if (cmp == GT_EXPR || cmp == GE_EXPR
2372 : : )
2373 : : {
2374 : 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail632;
2375 : 0 : {
2376 : 0 : tree _r;
2377 : 0 : _r = constant_boolean_node (above ? false : true, type);
2378 : 0 : if (TREE_SIDE_EFFECTS (captures[1]))
2379 : 0 : _r = build2_loc (loc, COMPOUND_EXPR, type, fold_ignored_result (captures[1]), _r);
2380 : 0 : if (TREE_SIDE_EFFECTS (captures[3]))
2381 : 0 : _r = build2_loc (loc, COMPOUND_EXPR, type, fold_ignored_result (captures[3]), _r);
2382 : 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 442, __FILE__, __LINE__, true);
2383 : 0 : return _r;
2384 : : }
2385 : 0 : next_after_fail632:;
2386 : : }
2387 : : }
2388 : : }
2389 : : }
2390 : : }
2391 : : }
2392 : : }
2393 : : }
2394 : : }
2395 : : }
2396 : : else
2397 : : {
2398 : 2916569 : if (FLOAT_TYPE_P (TREE_TYPE (captures[1]))
2399 : 89968 : && (DECIMAL_FLOAT_TYPE_P (TREE_TYPE (captures[0]))
2400 : 44984 : == DECIMAL_FLOAT_TYPE_P (TREE_TYPE (captures[1])))
2401 : 1570731 : && (DECIMAL_FLOAT_TYPE_P (TREE_TYPE (captures[0]))
2402 : 44980 : == DECIMAL_FLOAT_TYPE_P (TREE_TYPE (captures[3])))
2403 : : )
2404 : : {
2405 : 44976 : {
2406 : 44976 : tree type1 = TREE_TYPE (captures[3]);
2407 : 44976 : if (TREE_CODE (captures[3]) == REAL_CST && !DECIMAL_FLOAT_TYPE_P (type1))
2408 : : {
2409 : 0 : REAL_VALUE_TYPE orig = TREE_REAL_CST (captures[3]);
2410 : 0 : if (TYPE_PRECISION (type1) > TYPE_PRECISION (float_type_node)
2411 : 0 : && exact_real_truncate (TYPE_MODE (float_type_node), &orig))
2412 : 0 : type1 = float_type_node;
2413 : 0 : if (TYPE_PRECISION (type1) > TYPE_PRECISION (double_type_node)
2414 : 0 : && exact_real_truncate (TYPE_MODE (double_type_node), &orig))
2415 : 0 : type1 = double_type_node;
2416 : : }
2417 : 44976 : tree newtype
2418 : 44976 : = (element_precision (TREE_TYPE (captures[1])) > element_precision (type1)
2419 : 44976 : ? TREE_TYPE (captures[1]) : type1);
2420 : 44976 : if (element_precision (TREE_TYPE (captures[0])) > element_precision (newtype)
2421 : 44976 : && (!VECTOR_TYPE_P (type) || is_truth_type_for (newtype, type))
2422 : : )
2423 : : {
2424 : 1527 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail633;
2425 : 1527 : {
2426 : 1527 : tree res_op0;
2427 : 1527 : {
2428 : 1527 : tree _o1[1], _r1;
2429 : 1527 : _o1[0] = captures[1];
2430 : 1527 : if (TREE_TYPE (_o1[0]) != newtype)
2431 : : {
2432 : 9 : _r1 = fold_build1_loc (loc, NOP_EXPR, newtype, _o1[0]);
2433 : : }
2434 : : else
2435 : : _r1 = _o1[0];
2436 : 1527 : res_op0 = _r1;
2437 : : }
2438 : 1527 : tree res_op1;
2439 : 1527 : {
2440 : 1527 : tree _o1[1], _r1;
2441 : 1527 : _o1[0] = captures[3];
2442 : 1527 : if (TREE_TYPE (_o1[0]) != newtype)
2443 : : {
2444 : 0 : _r1 = fold_build1_loc (loc, NOP_EXPR, newtype, _o1[0]);
2445 : : }
2446 : : else
2447 : : _r1 = _o1[0];
2448 : 1527 : res_op1 = _r1;
2449 : : }
2450 : 1527 : tree _r;
2451 : 1527 : _r = fold_build2_loc (loc, cmp, type, res_op0, res_op1);
2452 : 1527 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 443, __FILE__, __LINE__, true);
2453 : 1527 : return _r;
2454 : : }
2455 : 0 : next_after_fail633:;
2456 : : }
2457 : : }
2458 : : }
2459 : : }
2460 : : return NULL_TREE;
2461 : : }
2462 : :
2463 : : tree
2464 : 366 : generic_simplify_283 (location_t ARG_UNUSED (loc), const tree ARG_UNUSED (type),
2465 : : tree ARG_UNUSED (_p0), tree ARG_UNUSED (_p1), tree *ARG_UNUSED (captures),
2466 : : const enum tree_code ARG_UNUSED (op),
2467 : : const enum tree_code ARG_UNUSED (cmp),
2468 : : const combined_fn ARG_UNUSED (clz))
2469 : : {
2470 : 366 : const bool debug_dump = dump_file && (dump_flags & TDF_FOLDING);
2471 : 366 : if (!sanitize_flags_p (SANITIZE_BUILTIN)
2472 : 366 : || (cfun && (cfun->curr_properties & PROP_ssa) != 0)
2473 : : )
2474 : : {
2475 : 302 : if (integer_zerop (captures[2]) && single_use (captures[0])
2476 : : )
2477 : : {
2478 : 59 : {
2479 : 59 : tree stype = signed_type_for (TREE_TYPE (captures[1]));
2480 : 59 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail695;
2481 : 59 : {
2482 : 59 : tree res_op0;
2483 : 59 : {
2484 : 59 : tree _o1[1], _r1;
2485 : 59 : _o1[0] = captures[1];
2486 : 59 : if (TREE_TYPE (_o1[0]) != stype)
2487 : : {
2488 : 59 : _r1 = fold_build1_loc (loc, NOP_EXPR, stype, _o1[0]);
2489 : : }
2490 : : else
2491 : : _r1 = _o1[0];
2492 : 59 : res_op0 = _r1;
2493 : : }
2494 : 59 : tree res_op1;
2495 : 59 : res_op1 = build_zero_cst (stype);
2496 : 59 : tree _r;
2497 : 59 : _r = fold_build2_loc (loc, cmp, type, res_op0, res_op1);
2498 : 59 : if (TREE_SIDE_EFFECTS (captures[2]))
2499 : 0 : _r = build2_loc (loc, COMPOUND_EXPR, type, fold_ignored_result (captures[2]), _r);
2500 : 59 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 488, __FILE__, __LINE__, true);
2501 : 59 : return _r;
2502 : : }
2503 : 0 : next_after_fail695:;
2504 : : }
2505 : : }
2506 : : else
2507 : : {
2508 : 243 : if (wi::to_wide (captures[2]) == TYPE_PRECISION (TREE_TYPE (captures[1])) - 1
2509 : : )
2510 : : {
2511 : 79 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail696;
2512 : 79 : {
2513 : 79 : tree res_op0;
2514 : 79 : res_op0 = captures[1];
2515 : 79 : tree res_op1;
2516 : 79 : res_op1 = build_one_cst (TREE_TYPE (captures[1]));
2517 : 79 : tree _r;
2518 : 79 : _r = fold_build2_loc (loc, op, type, res_op0, res_op1);
2519 : 79 : if (TREE_SIDE_EFFECTS (captures[2]))
2520 : 0 : _r = build2_loc (loc, COMPOUND_EXPR, type, fold_ignored_result (captures[2]), _r);
2521 : 79 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 489, __FILE__, __LINE__, true);
2522 : 79 : return _r;
2523 : : }
2524 : 0 : next_after_fail696:;
2525 : : }
2526 : : }
2527 : : }
2528 : : return NULL_TREE;
2529 : : }
2530 : :
2531 : : tree
2532 : 300245 : generic_simplify_290 (location_t ARG_UNUSED (loc), const tree ARG_UNUSED (type),
2533 : : tree ARG_UNUSED (_p0), tree ARG_UNUSED (_p1), tree *ARG_UNUSED (captures),
2534 : : const enum tree_code ARG_UNUSED (cmp),
2535 : : const enum tree_code ARG_UNUSED (icmp),
2536 : : const enum tree_code ARG_UNUSED (ncmp))
2537 : : {
2538 : 300245 : const bool debug_dump = dump_file && (dump_flags & TDF_FOLDING);
2539 : 300245 : if (types_match (type, TREE_TYPE (captures[0]))
2540 : : )
2541 : : {
2542 : 45029 : if (TREE_SIDE_EFFECTS (_p1)) goto next_after_fail708;
2543 : 45029 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail708;
2544 : 45029 : {
2545 : 45029 : tree res_op0;
2546 : 45029 : res_op0 = captures[1];
2547 : 45029 : tree res_op1;
2548 : 45029 : res_op1 = captures[2];
2549 : 45029 : tree _r;
2550 : 45029 : _r = fold_build2_loc (loc, cmp, type, res_op0, res_op1);
2551 : 45029 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 501, __FILE__, __LINE__, true);
2552 : 45029 : return _r;
2553 : : }
2554 : : next_after_fail708:;
2555 : : }
2556 : : return NULL_TREE;
2557 : : }
2558 : :
2559 : : tree
2560 : 0 : generic_simplify_296 (location_t ARG_UNUSED (loc), const tree ARG_UNUSED (type),
2561 : : tree ARG_UNUSED (_p0), tree ARG_UNUSED (_p1), tree *ARG_UNUSED (captures),
2562 : : const combined_fn ARG_UNUSED (COPYSIGN_ALL))
2563 : : {
2564 : 0 : const bool debug_dump = dump_file && (dump_flags & TDF_FOLDING);
2565 : 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail715;
2566 : 0 : {
2567 : 0 : tree _r;
2568 : 0 : _r = captures[0];
2569 : 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 508, __FILE__, __LINE__, true);
2570 : : return _r;
2571 : : }
2572 : 0 : next_after_fail715:;
2573 : 0 : return NULL_TREE;
2574 : : }
2575 : :
2576 : : tree
2577 : 0 : generic_simplify_298 (location_t ARG_UNUSED (loc), const tree ARG_UNUSED (type),
2578 : : tree ARG_UNUSED (_p0), tree ARG_UNUSED (_p1), tree *ARG_UNUSED (captures),
2579 : : const combined_fn ARG_UNUSED (COPYSIGN_ALL))
2580 : : {
2581 : 0 : const bool debug_dump = dump_file && (dump_flags & TDF_FOLDING);
2582 : 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail717;
2583 : 0 : {
2584 : 0 : tree res_op0;
2585 : 0 : res_op0 = captures[0];
2586 : 0 : tree _r;
2587 : 0 : _r = fold_build1_loc (loc, ABS_EXPR, type, res_op0);
2588 : 0 : if (TREE_SIDE_EFFECTS (captures[1]))
2589 : 0 : _r = build2_loc (loc, COMPOUND_EXPR, type, fold_ignored_result (captures[1]), _r);
2590 : 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 510, __FILE__, __LINE__, true);
2591 : : return _r;
2592 : : }
2593 : 0 : next_after_fail717:;
2594 : 0 : return NULL_TREE;
2595 : : }
2596 : :
2597 : : tree
2598 : 1 : generic_simplify_305 (location_t ARG_UNUSED (loc), const tree ARG_UNUSED (type),
2599 : : tree ARG_UNUSED (_p0), tree ARG_UNUSED (_p1), tree *ARG_UNUSED (captures),
2600 : : const enum tree_code ARG_UNUSED (div))
2601 : : {
2602 : 1 : const bool debug_dump = dump_file && (dump_flags & TDF_FOLDING);
2603 : 1 : if (INTEGRAL_TYPE_P (type)
2604 : 1 : && TYPE_OVERFLOW_UNDEFINED (type)
2605 : 1 : && !integer_zerop (captures[0])
2606 : 2 : && (!flag_non_call_exceptions || tree_expr_nonzero_p (captures[0]))
2607 : : )
2608 : : {
2609 : 1 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail726;
2610 : 1 : {
2611 : 1 : tree res_op0;
2612 : 1 : {
2613 : 1 : tree _o1[2], _r1;
2614 : 1 : _o1[0] = captures[0];
2615 : 1 : _o1[1] = build_zero_cst (type);
2616 : 1 : _r1 = fold_build2_loc (loc, LT_EXPR, boolean_type_node, _o1[0], _o1[1]);
2617 : 1 : res_op0 = _r1;
2618 : : }
2619 : 1 : tree res_op1;
2620 : 1 : res_op1 = build_minus_one_cst (type);
2621 : 1 : tree res_op2;
2622 : 1 : res_op2 = build_one_cst (type);
2623 : 1 : tree _r;
2624 : 1 : _r = fold_build3_loc (loc, COND_EXPR, type, res_op0, res_op1, res_op2);
2625 : 1 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 517, __FILE__, __LINE__, true);
2626 : 1 : return _r;
2627 : : }
2628 : 0 : next_after_fail726:;
2629 : : }
2630 : : return NULL_TREE;
2631 : : }
2632 : :
2633 : : tree
2634 : 2352654 : generic_simplify_312 (location_t ARG_UNUSED (loc), const tree ARG_UNUSED (type),
2635 : : tree ARG_UNUSED (_p0), tree ARG_UNUSED (_p1), tree *ARG_UNUSED (captures),
2636 : : const enum tree_code ARG_UNUSED (floor_divmod),
2637 : : const enum tree_code ARG_UNUSED (trunc_divmod))
2638 : : {
2639 : 2352654 : const bool debug_dump = dump_file && (dump_flags & TDF_FOLDING);
2640 : 0 : if ((INTEGRAL_TYPE_P (type) || VECTOR_INTEGER_TYPE_P (type))
2641 : 2352654 : && TYPE_UNSIGNED (type)
2642 : : )
2643 : : {
2644 : 2344620 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail734;
2645 : 2344620 : {
2646 : 2344620 : tree res_op0;
2647 : 2344620 : res_op0 = captures[0];
2648 : 2344620 : tree res_op1;
2649 : 2344620 : res_op1 = captures[1];
2650 : 2344620 : tree _r;
2651 : 2344620 : _r = fold_build2_loc (loc, trunc_divmod, type, res_op0, res_op1);
2652 : 2344620 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 525, __FILE__, __LINE__, true);
2653 : 2344620 : return _r;
2654 : : }
2655 : 0 : next_after_fail734:;
2656 : : }
2657 : : return NULL_TREE;
2658 : : }
2659 : :
2660 : : tree
2661 : 8772 : generic_simplify_318 (location_t ARG_UNUSED (loc), const tree ARG_UNUSED (type),
2662 : : tree ARG_UNUSED (_p0), tree ARG_UNUSED (_p1), tree *ARG_UNUSED (captures),
2663 : : const enum tree_code ARG_UNUSED (mod))
2664 : : {
2665 : 8772 : const bool debug_dump = dump_file && (dump_flags & TDF_FOLDING);
2666 : 0 : if (ANY_INTEGRAL_TYPE_P (type)
2667 : 8772 : && TYPE_OVERFLOW_UNDEFINED (type)
2668 : 17544 : && wi::multiple_of_p (wi::to_wide (captures[1]), wi::to_wide (captures[2]),
2669 : 193 : TYPE_SIGN (type))
2670 : : )
2671 : : {
2672 : 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail740;
2673 : 0 : {
2674 : 0 : tree _r;
2675 : 0 : _r = build_zero_cst (type);
2676 : 0 : if (TREE_SIDE_EFFECTS (captures[0]))
2677 : 0 : _r = build2_loc (loc, COMPOUND_EXPR, type, fold_ignored_result (captures[0]), _r);
2678 : 0 : if (TREE_SIDE_EFFECTS (captures[1]))
2679 : 0 : _r = build2_loc (loc, COMPOUND_EXPR, type, fold_ignored_result (captures[1]), _r);
2680 : 0 : if (TREE_SIDE_EFFECTS (captures[2]))
2681 : 0 : _r = build2_loc (loc, COMPOUND_EXPR, type, fold_ignored_result (captures[2]), _r);
2682 : 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 531, __FILE__, __LINE__, true);
2683 : 0 : return _r;
2684 : : }
2685 : 0 : next_after_fail740:;
2686 : : }
2687 : : return NULL_TREE;
2688 : : }
2689 : :
2690 : : tree
2691 : 6 : generic_simplify_327 (location_t ARG_UNUSED (loc), const tree ARG_UNUSED (type),
2692 : : tree ARG_UNUSED (_p0), tree ARG_UNUSED (_p1), tree *ARG_UNUSED (captures),
2693 : : const combined_fn ARG_UNUSED (COS),
2694 : : const combined_fn ARG_UNUSED (SIN),
2695 : : const combined_fn ARG_UNUSED (TAN))
2696 : : {
2697 : 6 : const bool debug_dump = dump_file && (dump_flags & TDF_FOLDING);
2698 : 6 : if (flag_unsafe_math_optimizations && canonicalize_math_p ()
2699 : : )
2700 : : {
2701 : 6 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail751;
2702 : 6 : {
2703 : 6 : tree res_op0;
2704 : 6 : res_op0 = build_one_cst (type);
2705 : 6 : tree res_op1;
2706 : 6 : {
2707 : 6 : tree _o1[1], _r1;
2708 : 6 : _o1[0] = captures[1];
2709 : 6 : _r1 = maybe_build_call_expr_loc (loc, TAN, TREE_TYPE (_o1[0]), 1, _o1[0]);
2710 : 6 : if (!_r1)
2711 : 0 : goto next_after_fail751;
2712 : 6 : res_op1 = _r1;
2713 : : }
2714 : 6 : tree _r;
2715 : 6 : _r = fold_build2_loc (loc, RDIV_EXPR, type, res_op0, res_op1);
2716 : 6 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 542, __FILE__, __LINE__, true);
2717 : 6 : return _r;
2718 : : }
2719 : : next_after_fail751:;
2720 : : }
2721 : : return NULL_TREE;
2722 : : }
2723 : :
2724 : : tree
2725 : 80672 : generic_simplify_335 (location_t ARG_UNUSED (loc), const tree ARG_UNUSED (type),
2726 : : tree ARG_UNUSED (_p0), tree ARG_UNUSED (_p1), tree *ARG_UNUSED (captures),
2727 : : const enum tree_code ARG_UNUSED (op))
2728 : : {
2729 : 80672 : const bool debug_dump = dump_file && (dump_flags & TDF_FOLDING);
2730 : 161344 : if (INTEGRAL_TYPE_P (TREE_TYPE (captures[1]))
2731 : 80672 : && TYPE_UNSIGNED (TREE_TYPE (captures[1]))
2732 : 161344 : && wi::only_sign_bit_p (wi::to_wide (captures[1]))
2733 : : )
2734 : : {
2735 : 5 : {
2736 : 5 : tree stype = signed_type_for (TREE_TYPE (captures[1]));
2737 : 5 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail761;
2738 : 5 : {
2739 : 5 : tree res_op0;
2740 : 5 : {
2741 : 5 : tree _o1[1], _r1;
2742 : 5 : _o1[0] = captures[0];
2743 : 5 : if (TREE_TYPE (_o1[0]) != stype)
2744 : : {
2745 : 5 : _r1 = fold_build1_loc (loc, NOP_EXPR, stype, _o1[0]);
2746 : : }
2747 : : else
2748 : : _r1 = _o1[0];
2749 : 5 : res_op0 = _r1;
2750 : : }
2751 : 5 : tree res_op1;
2752 : 5 : {
2753 : 5 : tree _o1[1], _r1;
2754 : 5 : _o1[0] = captures[2];
2755 : 5 : if (TREE_TYPE (_o1[0]) != stype)
2756 : : {
2757 : 5 : _r1 = fold_build1_loc (loc, NOP_EXPR, stype, _o1[0]);
2758 : : }
2759 : : else
2760 : : _r1 = _o1[0];
2761 : 5 : res_op1 = _r1;
2762 : : }
2763 : 5 : tree _r;
2764 : 5 : _r = fold_build2_loc (loc, op, type, res_op0, res_op1);
2765 : 5 : if (TREE_SIDE_EFFECTS (captures[1]))
2766 : 0 : _r = build2_loc (loc, COMPOUND_EXPR, type, fold_ignored_result (captures[1]), _r);
2767 : 5 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 552, __FILE__, __LINE__, true);
2768 : 5 : return _r;
2769 : : }
2770 : 0 : next_after_fail761:;
2771 : : }
2772 : : }
2773 : : return NULL_TREE;
2774 : : }
2775 : :
2776 : : tree
2777 : 19901426 : generic_simplify_347 (location_t ARG_UNUSED (loc), const tree ARG_UNUSED (type),
2778 : : tree ARG_UNUSED (_p0), tree ARG_UNUSED (_p1), tree *ARG_UNUSED (captures),
2779 : : const enum tree_code ARG_UNUSED (cmp))
2780 : : {
2781 : 19901426 : const bool debug_dump = dump_file && (dump_flags & TDF_FOLDING);
2782 : 39797303 : if ((INTEGRAL_TYPE_P (TREE_TYPE (captures[2]))
2783 : 11191 : || POINTER_TYPE_P (TREE_TYPE (captures[2]))
2784 : 1649 : || VECTOR_INTEGER_TYPE_P (TREE_TYPE (captures[2])))
2785 : 39797303 : && tree_nop_conversion_p (TREE_TYPE (captures[0]), TREE_TYPE (captures[1]))
2786 : : )
2787 : : {
2788 : 19901426 : {
2789 : 19901426 : tree cst = uniform_integer_cst_p (captures[2]);
2790 : 19901426 : tree arg1_type = TREE_TYPE (cst);
2791 : 19901426 : unsigned int prec = TYPE_PRECISION (arg1_type);
2792 : 19901426 : wide_int max = wi::max_value (arg1_type);
2793 : 19901426 : wide_int signed_max = wi::max_value (prec, SIGNED);
2794 : 19901426 : wide_int min = wi::min_value (arg1_type);
2795 : 19901426 : if (wi::to_wide (cst) == max
2796 : : )
2797 : : {
2798 : 154302 : if (cmp == GT_EXPR
2799 : : )
2800 : : {
2801 : 98693 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail791;
2802 : 98693 : {
2803 : 98693 : tree _r;
2804 : 98693 : _r = constant_boolean_node (false, type);
2805 : 98693 : if (TREE_SIDE_EFFECTS (captures[0]))
2806 : 19 : _r = build2_loc (loc, COMPOUND_EXPR, type, fold_ignored_result (captures[0]), _r);
2807 : 98693 : if (TREE_SIDE_EFFECTS (captures[2]))
2808 : 0 : _r = build2_loc (loc, COMPOUND_EXPR, type, fold_ignored_result (captures[2]), _r);
2809 : 98693 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 566, __FILE__, __LINE__, true);
2810 : 98693 : return _r;
2811 : : }
2812 : 0 : next_after_fail791:;
2813 : : }
2814 : : else
2815 : : {
2816 : 55609 : if (cmp == GE_EXPR
2817 : : )
2818 : : {
2819 : 13 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail792;
2820 : 13 : {
2821 : 13 : tree res_op0;
2822 : 13 : res_op0 = captures[0];
2823 : 13 : tree res_op1;
2824 : 13 : res_op1 = captures[2];
2825 : 13 : tree _r;
2826 : 13 : _r = fold_build2_loc (loc, EQ_EXPR, type, res_op0, res_op1);
2827 : 13 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 567, __FILE__, __LINE__, true);
2828 : 13 : return _r;
2829 : : }
2830 : 0 : next_after_fail792:;
2831 : : }
2832 : : else
2833 : : {
2834 : 55596 : if (cmp == LE_EXPR
2835 : : )
2836 : : {
2837 : 55586 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail793;
2838 : 55586 : {
2839 : 55586 : tree _r;
2840 : 55586 : _r = constant_boolean_node (true, type);
2841 : 55586 : if (TREE_SIDE_EFFECTS (captures[0]))
2842 : 23 : _r = build2_loc (loc, COMPOUND_EXPR, type, fold_ignored_result (captures[0]), _r);
2843 : 55586 : if (TREE_SIDE_EFFECTS (captures[2]))
2844 : 0 : _r = build2_loc (loc, COMPOUND_EXPR, type, fold_ignored_result (captures[2]), _r);
2845 : 55586 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 568, __FILE__, __LINE__, true);
2846 : 55586 : return _r;
2847 : : }
2848 : 0 : next_after_fail793:;
2849 : : }
2850 : : else
2851 : : {
2852 : 10 : if (cmp == LT_EXPR
2853 : : )
2854 : : {
2855 : 10 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail794;
2856 : 10 : {
2857 : 10 : tree res_op0;
2858 : 10 : res_op0 = captures[0];
2859 : 10 : tree res_op1;
2860 : 10 : res_op1 = captures[2];
2861 : 10 : tree _r;
2862 : 10 : _r = fold_build2_loc (loc, NE_EXPR, type, res_op0, res_op1);
2863 : 10 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 569, __FILE__, __LINE__, true);
2864 : 10 : return _r;
2865 : : }
2866 : 0 : next_after_fail794:;
2867 : : }
2868 : : }
2869 : : }
2870 : : }
2871 : : }
2872 : : else
2873 : : {
2874 : 19747124 : if (wi::to_wide (cst) == min
2875 : : )
2876 : : {
2877 : 1149719 : if (cmp == LT_EXPR
2878 : : )
2879 : : {
2880 : 396334 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail795;
2881 : 396334 : {
2882 : 396334 : tree _r;
2883 : 396334 : _r = constant_boolean_node (false, type);
2884 : 396334 : if (TREE_SIDE_EFFECTS (captures[0]))
2885 : 41 : _r = build2_loc (loc, COMPOUND_EXPR, type, fold_ignored_result (captures[0]), _r);
2886 : 396334 : if (TREE_SIDE_EFFECTS (captures[2]))
2887 : 0 : _r = build2_loc (loc, COMPOUND_EXPR, type, fold_ignored_result (captures[2]), _r);
2888 : 396334 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 570, __FILE__, __LINE__, true);
2889 : 396334 : return _r;
2890 : : }
2891 : 0 : next_after_fail795:;
2892 : : }
2893 : : else
2894 : : {
2895 : 753385 : if (cmp == LE_EXPR
2896 : : )
2897 : : {
2898 : 87879 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail796;
2899 : 87879 : {
2900 : 87879 : tree res_op0;
2901 : 87879 : res_op0 = captures[0];
2902 : 87879 : tree res_op1;
2903 : 87879 : res_op1 = captures[2];
2904 : 87879 : tree _r;
2905 : 87879 : _r = fold_build2_loc (loc, EQ_EXPR, type, res_op0, res_op1);
2906 : 87879 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 571, __FILE__, __LINE__, true);
2907 : 87879 : return _r;
2908 : : }
2909 : 0 : next_after_fail796:;
2910 : : }
2911 : : else
2912 : : {
2913 : 665506 : if (cmp == GE_EXPR
2914 : : )
2915 : : {
2916 : 250895 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail797;
2917 : 250895 : {
2918 : 250895 : tree _r;
2919 : 250895 : _r = constant_boolean_node (true, type);
2920 : 250895 : if (TREE_SIDE_EFFECTS (captures[0]))
2921 : 9 : _r = build2_loc (loc, COMPOUND_EXPR, type, fold_ignored_result (captures[0]), _r);
2922 : 250895 : if (TREE_SIDE_EFFECTS (captures[2]))
2923 : 0 : _r = build2_loc (loc, COMPOUND_EXPR, type, fold_ignored_result (captures[2]), _r);
2924 : 250895 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 572, __FILE__, __LINE__, true);
2925 : 250895 : return _r;
2926 : : }
2927 : 0 : next_after_fail797:;
2928 : : }
2929 : : else
2930 : : {
2931 : 414611 : if (cmp == GT_EXPR
2932 : : )
2933 : : {
2934 : 414611 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail798;
2935 : 414611 : {
2936 : 414611 : tree res_op0;
2937 : 414611 : res_op0 = captures[0];
2938 : 414611 : tree res_op1;
2939 : 414611 : res_op1 = captures[2];
2940 : 414611 : tree _r;
2941 : 414611 : _r = fold_build2_loc (loc, NE_EXPR, type, res_op0, res_op1);
2942 : 414611 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 573, __FILE__, __LINE__, true);
2943 : 414611 : return _r;
2944 : : }
2945 : 0 : next_after_fail798:;
2946 : : }
2947 : : }
2948 : : }
2949 : : }
2950 : : }
2951 : : else
2952 : : {
2953 : 18597408 : if (wi::to_wide (cst) == max - 1
2954 : : )
2955 : : {
2956 : 367608 : if (cmp == GT_EXPR
2957 : : )
2958 : : {
2959 : 126762 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail799;
2960 : 126762 : {
2961 : 126762 : tree res_op0;
2962 : 126762 : res_op0 = captures[0];
2963 : 126762 : tree res_op1;
2964 : 126762 : res_op1 = build_uniform_cst (TREE_TYPE (captures[2]),
2965 : 126762 : wide_int_to_tree (TREE_TYPE (cst),
2966 : 126762 : wi::to_wide (cst)
2967 : 253524 : + 1));
2968 : 126762 : tree _r;
2969 : 126762 : _r = fold_build2_loc (loc, EQ_EXPR, type, res_op0, res_op1);
2970 : 126762 : if (TREE_SIDE_EFFECTS (captures[2]))
2971 : 0 : _r = build2_loc (loc, COMPOUND_EXPR, type, fold_ignored_result (captures[2]), _r);
2972 : 126762 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 574, __FILE__, __LINE__, true);
2973 : 126762 : return _r;
2974 : : }
2975 : 0 : next_after_fail799:;
2976 : : }
2977 : : else
2978 : : {
2979 : 240846 : if (cmp == LE_EXPR
2980 : : )
2981 : : {
2982 : 240846 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail800;
2983 : 240846 : {
2984 : 240846 : tree res_op0;
2985 : 240846 : res_op0 = captures[0];
2986 : 240846 : tree res_op1;
2987 : 240846 : res_op1 = build_uniform_cst (TREE_TYPE (captures[2]),
2988 : 240846 : wide_int_to_tree (TREE_TYPE (cst),
2989 : 240846 : wi::to_wide (cst)
2990 : 481692 : + 1));
2991 : 240846 : tree _r;
2992 : 240846 : _r = fold_build2_loc (loc, NE_EXPR, type, res_op0, res_op1);
2993 : 240846 : if (TREE_SIDE_EFFECTS (captures[2]))
2994 : 0 : _r = build2_loc (loc, COMPOUND_EXPR, type, fold_ignored_result (captures[2]), _r);
2995 : 240846 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 575, __FILE__, __LINE__, true);
2996 : 240846 : return _r;
2997 : : }
2998 : 0 : next_after_fail800:;
2999 : : }
3000 : : }
3001 : : }
3002 : : else
3003 : : {
3004 : 18229800 : if (wi::to_wide (cst) == min + 1
3005 : : )
3006 : : {
3007 : 673562 : if (cmp == GE_EXPR
3008 : : )
3009 : : {
3010 : 46396 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail801;
3011 : 46396 : {
3012 : 46396 : tree res_op0;
3013 : 46396 : res_op0 = captures[0];
3014 : 46396 : tree res_op1;
3015 : 46396 : res_op1 = build_uniform_cst (TREE_TYPE (captures[2]),
3016 : 46396 : wide_int_to_tree (TREE_TYPE (cst),
3017 : 46396 : wi::to_wide (cst)
3018 : 92792 : - 1));
3019 : 46396 : tree _r;
3020 : 46396 : _r = fold_build2_loc (loc, NE_EXPR, type, res_op0, res_op1);
3021 : 46396 : if (TREE_SIDE_EFFECTS (captures[2]))
3022 : 0 : _r = build2_loc (loc, COMPOUND_EXPR, type, fold_ignored_result (captures[2]), _r);
3023 : 46396 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 576, __FILE__, __LINE__, true);
3024 : 46396 : return _r;
3025 : : }
3026 : 0 : next_after_fail801:;
3027 : : }
3028 : : else
3029 : : {
3030 : 627166 : if (cmp == LT_EXPR
3031 : : )
3032 : : {
3033 : 27845 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail802;
3034 : 27845 : {
3035 : 27845 : tree res_op0;
3036 : 27845 : res_op0 = captures[0];
3037 : 27845 : tree res_op1;
3038 : 27845 : res_op1 = build_uniform_cst (TREE_TYPE (captures[2]),
3039 : 27845 : wide_int_to_tree (TREE_TYPE (cst),
3040 : 27845 : wi::to_wide (cst)
3041 : 55690 : - 1));
3042 : 27845 : tree _r;
3043 : 27845 : _r = fold_build2_loc (loc, EQ_EXPR, type, res_op0, res_op1);
3044 : 27845 : if (TREE_SIDE_EFFECTS (captures[2]))
3045 : 0 : _r = build2_loc (loc, COMPOUND_EXPR, type, fold_ignored_result (captures[2]), _r);
3046 : 27845 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 577, __FILE__, __LINE__, true);
3047 : 27845 : return _r;
3048 : : }
3049 : 0 : next_after_fail802:;
3050 : : }
3051 : : }
3052 : : }
3053 : : else
3054 : : {
3055 : 17556235 : if (wi::to_wide (cst) == signed_max
3056 : 88802 : && TYPE_UNSIGNED (arg1_type)
3057 : 88802 : && TYPE_MODE (arg1_type) != BLKmode
3058 : 17556242 : && prec == GET_MODE_PRECISION (SCALAR_INT_TYPE_MODE (arg1_type))
3059 : 17644749 : && INTEGRAL_TYPE_P (arg1_type)
3060 : : )
3061 : : {
3062 : 88507 : if (cmp == LE_EXPR || cmp == GT_EXPR
3063 : : )
3064 : : {
3065 : 88507 : {
3066 : 88507 : tree st = signed_type_for (TREE_TYPE (captures[2]));
3067 : 88507 : if (cst == captures[2] && cmp == LE_EXPR
3068 : : )
3069 : : {
3070 : 39667 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail803;
3071 : 39667 : {
3072 : 39667 : tree res_op0;
3073 : 39667 : {
3074 : 39667 : tree _o1[1], _r1;
3075 : 39667 : _o1[0] = captures[1];
3076 : 39667 : if (TREE_TYPE (_o1[0]) != st)
3077 : : {
3078 : 39667 : _r1 = fold_build1_loc (loc, NOP_EXPR, st, _o1[0]);
3079 : : }
3080 : : else
3081 : : _r1 = _o1[0];
3082 : 39667 : res_op0 = _r1;
3083 : : }
3084 : 39667 : tree res_op1;
3085 : 39667 : res_op1 = build_zero_cst (st);
3086 : 39667 : tree _r;
3087 : 39667 : _r = fold_build2_loc (loc, GE_EXPR, type, res_op0, res_op1);
3088 : 39667 : if (TREE_SIDE_EFFECTS (captures[2]))
3089 : 0 : _r = build2_loc (loc, COMPOUND_EXPR, type, fold_ignored_result (captures[2]), _r);
3090 : 39667 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 578, __FILE__, __LINE__, true);
3091 : 39667 : return _r;
3092 : : }
3093 : 0 : next_after_fail803:;
3094 : 0 : }
3095 : : else
3096 : : {
3097 : 48840 : if (cst == captures[2] && cmp == GT_EXPR
3098 : : )
3099 : : {
3100 : 48754 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail804;
3101 : 48754 : {
3102 : 48754 : tree res_op0;
3103 : 48754 : {
3104 : 48754 : tree _o1[1], _r1;
3105 : 48754 : _o1[0] = captures[1];
3106 : 48754 : if (TREE_TYPE (_o1[0]) != st)
3107 : : {
3108 : 48754 : _r1 = fold_build1_loc (loc, NOP_EXPR, st, _o1[0]);
3109 : : }
3110 : : else
3111 : : _r1 = _o1[0];
3112 : 48754 : res_op0 = _r1;
3113 : : }
3114 : 48754 : tree res_op1;
3115 : 48754 : res_op1 = build_zero_cst (st);
3116 : 48754 : tree _r;
3117 : 48754 : _r = fold_build2_loc (loc, LT_EXPR, type, res_op0, res_op1);
3118 : 48754 : if (TREE_SIDE_EFFECTS (captures[2]))
3119 : 0 : _r = build2_loc (loc, COMPOUND_EXPR, type, fold_ignored_result (captures[2]), _r);
3120 : 48754 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 579, __FILE__, __LINE__, true);
3121 : 48754 : return _r;
3122 : : }
3123 : 0 : next_after_fail804:;
3124 : 0 : }
3125 : : else
3126 : : {
3127 : 86 : if (cmp == LE_EXPR
3128 : : )
3129 : : {
3130 : 30 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail805;
3131 : 30 : {
3132 : 30 : tree res_op0;
3133 : 30 : {
3134 : 30 : tree _o1[1], _r1;
3135 : 30 : _o1[0] = captures[1];
3136 : 30 : if (TREE_TYPE (_o1[0]) != st)
3137 : : {
3138 : 30 : _r1 = fold_build1_loc (loc, VIEW_CONVERT_EXPR, st, _o1[0]);
3139 : : }
3140 : : else
3141 : : _r1 = _o1[0];
3142 : 30 : res_op0 = _r1;
3143 : : }
3144 : 30 : tree res_op1;
3145 : 30 : res_op1 = build_zero_cst (st);
3146 : 30 : tree _r;
3147 : 30 : _r = fold_build2_loc (loc, GE_EXPR, type, res_op0, res_op1);
3148 : 30 : if (TREE_SIDE_EFFECTS (captures[2]))
3149 : 0 : _r = build2_loc (loc, COMPOUND_EXPR, type, fold_ignored_result (captures[2]), _r);
3150 : 30 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 580, __FILE__, __LINE__, true);
3151 : 30 : return _r;
3152 : : }
3153 : 0 : next_after_fail805:;
3154 : : }
3155 : : else
3156 : : {
3157 : 56 : if (cmp == GT_EXPR
3158 : : )
3159 : : {
3160 : 56 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail806;
3161 : 56 : {
3162 : 56 : tree res_op0;
3163 : 56 : {
3164 : 56 : tree _o1[1], _r1;
3165 : 56 : _o1[0] = captures[1];
3166 : 56 : if (TREE_TYPE (_o1[0]) != st)
3167 : : {
3168 : 56 : _r1 = fold_build1_loc (loc, VIEW_CONVERT_EXPR, st, _o1[0]);
3169 : : }
3170 : : else
3171 : : _r1 = _o1[0];
3172 : 56 : res_op0 = _r1;
3173 : : }
3174 : 56 : tree res_op1;
3175 : 56 : res_op1 = build_zero_cst (st);
3176 : 56 : tree _r;
3177 : 56 : _r = fold_build2_loc (loc, LT_EXPR, type, res_op0, res_op1);
3178 : 56 : if (TREE_SIDE_EFFECTS (captures[2]))
3179 : 0 : _r = build2_loc (loc, COMPOUND_EXPR, type, fold_ignored_result (captures[2]), _r);
3180 : 56 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 581, __FILE__, __LINE__, true);
3181 : 56 : return _r;
3182 : : }
3183 : 0 : next_after_fail806:;
3184 : : }
3185 : : }
3186 : : }
3187 : : }
3188 : : }
3189 : : }
3190 : : }
3191 : : }
3192 : : }
3193 : : }
3194 : : }
3195 : 19901432 : }
3196 : : }
3197 : : return NULL_TREE;
3198 : : }
3199 : :
3200 : : tree
3201 : 0 : generic_simplify_396 (location_t ARG_UNUSED (loc), const tree ARG_UNUSED (type),
3202 : : tree ARG_UNUSED (_p0), tree ARG_UNUSED (_p1), tree *ARG_UNUSED (captures))
3203 : : {
3204 : 0 : const bool debug_dump = dump_file && (dump_flags & TDF_FOLDING);
3205 : 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail886;
3206 : 0 : {
3207 : 0 : tree _r;
3208 : 0 : _r = captures[0];
3209 : 0 : if (TREE_SIDE_EFFECTS (captures[1]))
3210 : 0 : _r = build2_loc (loc, COMPOUND_EXPR, type, fold_ignored_result (captures[1]), _r);
3211 : 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 642, __FILE__, __LINE__, true);
3212 : : return _r;
3213 : : }
3214 : 0 : next_after_fail886:;
3215 : 0 : return NULL_TREE;
3216 : : }
3217 : :
3218 : : tree
3219 : 0 : generic_simplify_398 (location_t ARG_UNUSED (loc), const tree ARG_UNUSED (type),
3220 : : tree ARG_UNUSED (_p0), tree ARG_UNUSED (_p1), tree *ARG_UNUSED (captures),
3221 : : const combined_fn ARG_UNUSED (copysigns),
3222 : : const combined_fn ARG_UNUSED (hypots))
3223 : : {
3224 : 0 : const bool debug_dump = dump_file && (dump_flags & TDF_FOLDING);
3225 : 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail888;
3226 : 0 : {
3227 : 0 : tree res_op0;
3228 : 0 : res_op0 = captures[0];
3229 : 0 : tree res_op1;
3230 : 0 : res_op1 = captures[1];
3231 : 0 : tree _r;
3232 : 0 : _r = maybe_build_call_expr_loc (loc, hypots, type, 2, res_op0, res_op1);
3233 : 0 : if (!_r)
3234 : 0 : goto next_after_fail888;
3235 : 0 : if (TREE_SIDE_EFFECTS (captures[2]))
3236 : 0 : _r = build2_loc (loc, COMPOUND_EXPR, type, fold_ignored_result (captures[2]), _r);
3237 : 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 644, __FILE__, __LINE__, true);
3238 : : return _r;
3239 : : }
3240 : : next_after_fail888:;
3241 : : return NULL_TREE;
3242 : : }
3243 : :
3244 : : tree
3245 : 0 : generic_simplify_404 (location_t ARG_UNUSED (loc), const tree ARG_UNUSED (type),
3246 : : tree ARG_UNUSED (_p0), tree ARG_UNUSED (_p1), tree *ARG_UNUSED (captures))
3247 : : {
3248 : 0 : const bool debug_dump = dump_file && (dump_flags & TDF_FOLDING);
3249 : 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail894;
3250 : 0 : {
3251 : 0 : tree res_op0;
3252 : 0 : res_op0 = captures[0];
3253 : 0 : tree res_op1;
3254 : 0 : res_op1 = captures[1];
3255 : 0 : tree _r;
3256 : 0 : _r = fold_build2_loc (loc, BIT_AND_EXPR, type, res_op0, res_op1);
3257 : 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 650, __FILE__, __LINE__, true);
3258 : : return _r;
3259 : : }
3260 : 0 : next_after_fail894:;
3261 : 0 : return NULL_TREE;
3262 : : }
3263 : :
3264 : : tree
3265 : 319 : generic_simplify_410 (location_t ARG_UNUSED (loc), const tree ARG_UNUSED (type),
3266 : : tree ARG_UNUSED (_p0), tree ARG_UNUSED (_p1), tree *ARG_UNUSED (captures),
3267 : : const enum tree_code ARG_UNUSED (bitop),
3268 : : const enum tree_code ARG_UNUSED (op))
3269 : : {
3270 : 319 : const bool debug_dump = dump_file && (dump_flags & TDF_FOLDING);
3271 : 319 : {
3272 : 319 : tree pmop[2];
3273 : 319 : tree utype = fold_bit_and_mask (TREE_TYPE (captures[1]), captures[5], op, captures[1], ERROR_MARK,
3274 : : NULL_TREE, NULL_TREE, captures[2], bitop, captures[3],
3275 : : captures[4], pmop);
3276 : 319 : if (utype
3277 : : )
3278 : : {
3279 : 318 : if (TREE_SIDE_EFFECTS (captures[1])) goto next_after_fail900;
3280 : 318 : if (TREE_SIDE_EFFECTS (captures[2])) goto next_after_fail900;
3281 : 318 : if (TREE_SIDE_EFFECTS (captures[3])) goto next_after_fail900;
3282 : 318 : if (TREE_SIDE_EFFECTS (captures[4])) goto next_after_fail900;
3283 : 318 : if (TREE_SIDE_EFFECTS (captures[5])) goto next_after_fail900;
3284 : 318 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail900;
3285 : 318 : {
3286 : 318 : tree res_op0;
3287 : 318 : {
3288 : 318 : tree _o1[2], _r1;
3289 : 318 : {
3290 : 318 : tree _o2[2], _r2;
3291 : 318 : {
3292 : 318 : tree _o3[1], _r3;
3293 : 318 : _o3[0] = pmop[0];
3294 : 318 : if (TREE_TYPE (_o3[0]) != utype)
3295 : : {
3296 : 14 : _r3 = fold_build1_loc (loc, NOP_EXPR, utype, _o3[0]);
3297 : : }
3298 : : else
3299 : : _r3 = _o3[0];
3300 : 318 : _o2[0] = _r3;
3301 : : }
3302 : 318 : {
3303 : 318 : tree _o3[1], _r3;
3304 : 318 : _o3[0] = pmop[1];
3305 : 318 : if (TREE_TYPE (_o3[0]) != utype)
3306 : : {
3307 : 74 : _r3 = fold_build1_loc (loc, NOP_EXPR, utype, _o3[0]);
3308 : : }
3309 : : else
3310 : : _r3 = _o3[0];
3311 : 318 : _o2[1] = _r3;
3312 : : }
3313 : 318 : _r2 = fold_build2_loc (loc, op, TREE_TYPE (_o2[0]), _o2[0], _o2[1]);
3314 : 318 : _o1[0] = _r2;
3315 : : }
3316 : 318 : {
3317 : 318 : tree _o2[1], _r2;
3318 : 318 : _o2[0] = captures[5];
3319 : 318 : if (TREE_TYPE (_o2[0]) != utype)
3320 : : {
3321 : 14 : _r2 = fold_build1_loc (loc, NOP_EXPR, utype, _o2[0]);
3322 : : }
3323 : : else
3324 : : _r2 = _o2[0];
3325 : 318 : _o1[1] = _r2;
3326 : : }
3327 : 318 : _r1 = fold_build2_loc (loc, BIT_AND_EXPR, TREE_TYPE (_o1[0]), _o1[0], _o1[1]);
3328 : 318 : res_op0 = _r1;
3329 : : }
3330 : 318 : tree _r;
3331 : 318 : _r = fold_build1_loc (loc, NOP_EXPR, type, res_op0);
3332 : 318 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 655, __FILE__, __LINE__, true);
3333 : 318 : return _r;
3334 : : }
3335 : 1 : next_after_fail900:;
3336 : : }
3337 : : }
3338 : 1 : return NULL_TREE;
3339 : : }
3340 : :
3341 : : tree
3342 : 8 : generic_simplify_426 (location_t ARG_UNUSED (loc), const tree ARG_UNUSED (type),
3343 : : tree ARG_UNUSED (_p0), tree ARG_UNUSED (_p1), tree *ARG_UNUSED (captures),
3344 : : const enum tree_code ARG_UNUSED (eqne))
3345 : : {
3346 : 8 : const bool debug_dump = dump_file && (dump_flags & TDF_FOLDING);
3347 : 8 : if (eqne == EQ_EXPR
3348 : : )
3349 : : {
3350 : 4 : if (TREE_SIDE_EFFECTS (_p1)) goto next_after_fail921;
3351 : 4 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail921;
3352 : 4 : {
3353 : 4 : tree _r;
3354 : 4 : _r = constant_boolean_node (false, type);
3355 : 4 : if (TREE_SIDE_EFFECTS (captures[2]))
3356 : 0 : _r = build2_loc (loc, COMPOUND_EXPR, type, fold_ignored_result (captures[2]), _r);
3357 : 4 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 672, __FILE__, __LINE__, true);
3358 : 4 : return _r;
3359 : : }
3360 : : next_after_fail921:;
3361 : : }
3362 : : else
3363 : : {
3364 : 4 : if (eqne == NE_EXPR
3365 : : )
3366 : : {
3367 : 4 : if (TREE_SIDE_EFFECTS (_p0)) goto next_after_fail922;
3368 : 4 : if (TREE_SIDE_EFFECTS (_p1)) goto next_after_fail922;
3369 : 4 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail922;
3370 : 4 : {
3371 : 4 : tree _r;
3372 : 4 : _r = captures[0];
3373 : 4 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 673, __FILE__, __LINE__, true);
3374 : 4 : return _r;
3375 : : }
3376 : : next_after_fail922:;
3377 : : }
3378 : : }
3379 : : return NULL_TREE;
3380 : : }
3381 : :
3382 : : tree
3383 : 0 : generic_simplify_431 (location_t ARG_UNUSED (loc), const tree ARG_UNUSED (type),
3384 : : tree ARG_UNUSED (_p0), tree ARG_UNUSED (_p1), tree *ARG_UNUSED (captures),
3385 : : const enum tree_code ARG_UNUSED (eqne))
3386 : : {
3387 : 0 : const bool debug_dump = dump_file && (dump_flags & TDF_FOLDING);
3388 : 0 : if (eqne == EQ_EXPR
3389 : : )
3390 : : {
3391 : 0 : if (TREE_SIDE_EFFECTS (_p0)) goto next_after_fail946;
3392 : 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail946;
3393 : 0 : {
3394 : 0 : tree _r;
3395 : 0 : _r = constant_boolean_node (false, type);
3396 : 0 : if (TREE_SIDE_EFFECTS (captures[2]))
3397 : 0 : _r = build2_loc (loc, COMPOUND_EXPR, type, fold_ignored_result (captures[2]), _r);
3398 : 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 672, __FILE__, __LINE__, true);
3399 : 0 : return _r;
3400 : : }
3401 : : next_after_fail946:;
3402 : : }
3403 : : else
3404 : : {
3405 : 0 : if (eqne == NE_EXPR
3406 : : )
3407 : : {
3408 : 0 : if (TREE_SIDE_EFFECTS (_p0)) goto next_after_fail947;
3409 : 0 : if (TREE_SIDE_EFFECTS (_p1)) goto next_after_fail947;
3410 : 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail947;
3411 : 0 : {
3412 : 0 : tree _r;
3413 : 0 : _r = captures[0];
3414 : 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 673, __FILE__, __LINE__, true);
3415 : 0 : return _r;
3416 : : }
3417 : : next_after_fail947:;
3418 : : }
3419 : : }
3420 : : return NULL_TREE;
3421 : : }
3422 : :
3423 : : tree
3424 : 0 : generic_simplify_435 (location_t ARG_UNUSED (loc), const tree ARG_UNUSED (type),
3425 : : tree ARG_UNUSED (_p0), tree ARG_UNUSED (_p1), tree *ARG_UNUSED (captures),
3426 : : const enum tree_code ARG_UNUSED (code2),
3427 : : const enum tree_code ARG_UNUSED (code1))
3428 : : {
3429 : 0 : const bool debug_dump = dump_file && (dump_flags & TDF_FOLDING);
3430 : 0 : if ((TREE_CODE (captures[2]) == INTEGER_CST
3431 : 0 : && TREE_CODE (captures[5]) == INTEGER_CST)
3432 : 0 : || ((INTEGRAL_TYPE_P (TREE_TYPE (captures[2]))
3433 : 0 : || (VECTOR_TYPE_P (TREE_TYPE (captures[2]))
3434 : 0 : && expand_vec_cmp_expr_p (TREE_TYPE (captures[2]), type, code2))
3435 : 0 : || POINTER_TYPE_P (TREE_TYPE (captures[2])))
3436 : 0 : && bitwise_equal_p (captures[2], captures[5]))
3437 : : )
3438 : : {
3439 : 0 : {
3440 : 0 : bool one_before = false;
3441 : 0 : bool one_after = false;
3442 : 0 : int cmp = 0;
3443 : 0 : bool allbits = true;
3444 : 0 : if (TREE_CODE (captures[2]) == INTEGER_CST
3445 : 0 : && TREE_CODE (captures[5]) == INTEGER_CST)
3446 : : {
3447 : 0 : allbits = TYPE_PRECISION (TREE_TYPE (captures[2])) <= TYPE_PRECISION (TREE_TYPE (captures[5]));
3448 : 0 : auto t1 = wi::to_wide (fold_convert (TREE_TYPE (captures[5]), captures[2]));
3449 : 0 : auto t2 = wi::to_wide (captures[5]);
3450 : 0 : cmp = wi::cmp (t1, t2, TYPE_SIGN (TREE_TYPE (captures[5])));
3451 : 0 : if (cmp < 0
3452 : 0 : && t1 == t2 - 1)
3453 : : one_before = true;
3454 : 0 : if (cmp > 0
3455 : 0 : && t1 == t2 + 1)
3456 : : one_after = true;
3457 : : }
3458 : 0 : bool val;
3459 : 0 : switch (code2)
3460 : : {
3461 : 0 : case EQ_EXPR: val = (cmp == 0); break;
3462 : 0 : case NE_EXPR: val = (cmp != 0); break;
3463 : 0 : case LT_EXPR: val = (cmp < 0); break;
3464 : 0 : case GT_EXPR: val = (cmp > 0); break;
3465 : 0 : case LE_EXPR: val = (cmp <= 0); break;
3466 : 0 : case GE_EXPR: val = (cmp >= 0); break;
3467 : 0 : default: gcc_unreachable ();
3468 : : }
3469 : 0 : if (code1 == EQ_EXPR && val
3470 : : )
3471 : : {
3472 : 0 : if (TREE_SIDE_EFFECTS (_p0)) goto next_after_fail952;
3473 : 0 : if (TREE_SIDE_EFFECTS (captures[5])) goto next_after_fail952;
3474 : 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail952;
3475 : 0 : {
3476 : 0 : tree _r;
3477 : 0 : _r = captures[0];
3478 : 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 676, __FILE__, __LINE__, true);
3479 : 0 : return _r;
3480 : : }
3481 : : next_after_fail952:;
3482 : : }
3483 : : else
3484 : : {
3485 : 0 : if (code1 == EQ_EXPR && !val
3486 : : )
3487 : : {
3488 : 0 : if (TREE_SIDE_EFFECTS (captures[2])) goto next_after_fail953;
3489 : 0 : if (TREE_SIDE_EFFECTS (captures[5])) goto next_after_fail953;
3490 : 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail953;
3491 : 0 : {
3492 : 0 : tree _r;
3493 : 0 : _r = constant_boolean_node (false, type);
3494 : 0 : if (TREE_SIDE_EFFECTS (captures[1]))
3495 : 0 : _r = build2_loc (loc, COMPOUND_EXPR, type, fold_ignored_result (captures[1]), _r);
3496 : 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 677, __FILE__, __LINE__, true);
3497 : 0 : return _r;
3498 : : }
3499 : : next_after_fail953:;
3500 : : }
3501 : : else
3502 : : {
3503 : 0 : if (code1 == NE_EXPR && !val && allbits
3504 : : )
3505 : : {
3506 : 0 : if (TREE_SIDE_EFFECTS (_p1)) goto next_after_fail954;
3507 : 0 : if (TREE_SIDE_EFFECTS (captures[2])) goto next_after_fail954;
3508 : 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail954;
3509 : 0 : {
3510 : 0 : tree _r;
3511 : 0 : _r = captures[3];
3512 : 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 678, __FILE__, __LINE__, true);
3513 : 0 : return _r;
3514 : : }
3515 : : next_after_fail954:;
3516 : : }
3517 : : else
3518 : : {
3519 : 0 : if ((code1 == NE_EXPR
3520 : 0 : && code2 == GE_EXPR
3521 : 0 : && cmp == 0
3522 : 0 : && allbits)
3523 : 0 : && ((VECTOR_BOOLEAN_TYPE_P (type)
3524 : 0 : && expand_vec_cmp_expr_p (TREE_TYPE (captures[2]), type, GT_EXPR))
3525 : 0 : || !VECTOR_TYPE_P (TREE_TYPE (captures[2])))
3526 : : )
3527 : : {
3528 : 0 : if (TREE_SIDE_EFFECTS (_p1)) goto next_after_fail955;
3529 : 0 : if (TREE_SIDE_EFFECTS (captures[2])) goto next_after_fail955;
3530 : 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail955;
3531 : 0 : {
3532 : 0 : tree res_op0;
3533 : 0 : res_op0 = captures[4];
3534 : 0 : tree res_op1;
3535 : 0 : {
3536 : 0 : tree _o1[1], _r1;
3537 : 0 : _o1[0] = captures[2];
3538 : 0 : if (TREE_TYPE (_o1[0]) != TREE_TYPE (res_op0))
3539 : : {
3540 : 0 : _r1 = fold_build1_loc (loc, NOP_EXPR, TREE_TYPE (res_op0), _o1[0]);
3541 : : }
3542 : : else
3543 : : _r1 = _o1[0];
3544 : 0 : res_op1 = _r1;
3545 : : }
3546 : 0 : tree _r;
3547 : 0 : _r = fold_build2_loc (loc, GT_EXPR, type, res_op0, res_op1);
3548 : 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 679, __FILE__, __LINE__, true);
3549 : 0 : return _r;
3550 : : }
3551 : : next_after_fail955:;
3552 : : }
3553 : : else
3554 : : {
3555 : 0 : if ((code1 == NE_EXPR
3556 : 0 : && code2 == LE_EXPR
3557 : 0 : && cmp == 0
3558 : 0 : && allbits)
3559 : 0 : && ((VECTOR_BOOLEAN_TYPE_P (type)
3560 : 0 : && expand_vec_cmp_expr_p (TREE_TYPE (captures[2]), type, LT_EXPR))
3561 : 0 : || !VECTOR_TYPE_P (TREE_TYPE (captures[2])))
3562 : : )
3563 : : {
3564 : 0 : if (TREE_SIDE_EFFECTS (_p1)) goto next_after_fail956;
3565 : 0 : if (TREE_SIDE_EFFECTS (captures[2])) goto next_after_fail956;
3566 : 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail956;
3567 : 0 : {
3568 : 0 : tree res_op0;
3569 : 0 : res_op0 = captures[4];
3570 : 0 : tree res_op1;
3571 : 0 : {
3572 : 0 : tree _o1[1], _r1;
3573 : 0 : _o1[0] = captures[2];
3574 : 0 : if (TREE_TYPE (_o1[0]) != TREE_TYPE (res_op0))
3575 : : {
3576 : 0 : _r1 = fold_build1_loc (loc, NOP_EXPR, TREE_TYPE (res_op0), _o1[0]);
3577 : : }
3578 : : else
3579 : : _r1 = _o1[0];
3580 : 0 : res_op1 = _r1;
3581 : : }
3582 : 0 : tree _r;
3583 : 0 : _r = fold_build2_loc (loc, LT_EXPR, type, res_op0, res_op1);
3584 : 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 680, __FILE__, __LINE__, true);
3585 : 0 : return _r;
3586 : : }
3587 : : next_after_fail956:;
3588 : : }
3589 : : else
3590 : : {
3591 : 0 : if ((code1 == NE_EXPR
3592 : 0 : && code2 == GT_EXPR
3593 : : && one_after
3594 : 0 : && allbits)
3595 : 0 : && ((VECTOR_BOOLEAN_TYPE_P (type)
3596 : 0 : && expand_vec_cmp_expr_p (TREE_TYPE (captures[2]), type, GT_EXPR))
3597 : 0 : || !VECTOR_TYPE_P (TREE_TYPE (captures[2])))
3598 : : )
3599 : : {
3600 : 0 : if (TREE_SIDE_EFFECTS (_p1)) goto next_after_fail957;
3601 : 0 : if (TREE_SIDE_EFFECTS (captures[2])) goto next_after_fail957;
3602 : 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail957;
3603 : 0 : {
3604 : 0 : tree res_op0;
3605 : 0 : res_op0 = captures[4];
3606 : 0 : tree res_op1;
3607 : 0 : {
3608 : 0 : tree _o1[1], _r1;
3609 : 0 : _o1[0] = captures[2];
3610 : 0 : if (TREE_TYPE (_o1[0]) != TREE_TYPE (res_op0))
3611 : : {
3612 : 0 : _r1 = fold_build1_loc (loc, NOP_EXPR, TREE_TYPE (res_op0), _o1[0]);
3613 : : }
3614 : : else
3615 : : _r1 = _o1[0];
3616 : 0 : res_op1 = _r1;
3617 : : }
3618 : 0 : tree _r;
3619 : 0 : _r = fold_build2_loc (loc, GT_EXPR, type, res_op0, res_op1);
3620 : 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 681, __FILE__, __LINE__, true);
3621 : 0 : return _r;
3622 : : }
3623 : : next_after_fail957:;
3624 : : }
3625 : : else
3626 : : {
3627 : 0 : if ((code1 == NE_EXPR
3628 : 0 : && code2 == LT_EXPR
3629 : : && one_before
3630 : 0 : && allbits)
3631 : 0 : && ((VECTOR_BOOLEAN_TYPE_P (type)
3632 : 0 : && expand_vec_cmp_expr_p (TREE_TYPE (captures[2]), type, LT_EXPR))
3633 : 0 : || !VECTOR_TYPE_P (TREE_TYPE (captures[2])))
3634 : : )
3635 : : {
3636 : 0 : if (TREE_SIDE_EFFECTS (_p1)) goto next_after_fail958;
3637 : 0 : if (TREE_SIDE_EFFECTS (captures[2])) goto next_after_fail958;
3638 : 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail958;
3639 : 0 : {
3640 : 0 : tree res_op0;
3641 : 0 : res_op0 = captures[4];
3642 : 0 : tree res_op1;
3643 : 0 : {
3644 : 0 : tree _o1[1], _r1;
3645 : 0 : _o1[0] = captures[2];
3646 : 0 : if (TREE_TYPE (_o1[0]) != TREE_TYPE (res_op0))
3647 : : {
3648 : 0 : _r1 = fold_build1_loc (loc, NOP_EXPR, TREE_TYPE (res_op0), _o1[0]);
3649 : : }
3650 : : else
3651 : : _r1 = _o1[0];
3652 : 0 : res_op1 = _r1;
3653 : : }
3654 : 0 : tree _r;
3655 : 0 : _r = fold_build2_loc (loc, LT_EXPR, type, res_op0, res_op1);
3656 : 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 682, __FILE__, __LINE__, true);
3657 : 0 : return _r;
3658 : : }
3659 : : next_after_fail958:;
3660 : : }
3661 : : }
3662 : : }
3663 : : }
3664 : : }
3665 : : }
3666 : : }
3667 : : }
3668 : : }
3669 : : return NULL_TREE;
3670 : : }
3671 : :
3672 : : tree
3673 : 3806 : generic_simplify_466 (location_t ARG_UNUSED (loc), const tree ARG_UNUSED (type),
3674 : : tree ARG_UNUSED (_p0), tree *ARG_UNUSED (captures))
3675 : : {
3676 : 3806 : const bool debug_dump = dump_file && (dump_flags & TDF_FOLDING);
3677 : 3806 : if (!TYPE_SATURATING (type)
3678 : : )
3679 : : {
3680 : 3771 : if (!TYPE_OVERFLOW_SANITIZED (type)
3681 : 7564 : && !TYPE_OVERFLOW_SANITIZED (TREE_TYPE (captures[0]))
3682 : : )
3683 : : {
3684 : 3793 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1002;
3685 : 3793 : {
3686 : 3793 : tree res_op0;
3687 : 3793 : {
3688 : 3793 : tree _o1[1], _r1;
3689 : 3793 : _o1[0] = captures[0];
3690 : 3793 : if (TREE_TYPE (_o1[0]) != type)
3691 : : {
3692 : 0 : _r1 = fold_build1_loc (loc, VIEW_CONVERT_EXPR, type, _o1[0]);
3693 : : }
3694 : : else
3695 : : _r1 = _o1[0];
3696 : 3793 : res_op0 = _r1;
3697 : : }
3698 : 3793 : tree _r;
3699 : 3793 : _r = non_lvalue_loc (loc, res_op0);
3700 : 3793 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 716, __FILE__, __LINE__, true);
3701 : 3793 : return _r;
3702 : : }
3703 : 0 : next_after_fail1002:;
3704 : : }
3705 : : }
3706 : : return NULL_TREE;
3707 : : }
3708 : :
3709 : : tree
3710 : 0 : generic_simplify_474 (location_t ARG_UNUSED (loc), const tree ARG_UNUSED (type),
3711 : : tree ARG_UNUSED (_p0), tree ARG_UNUSED (_p1), tree ARG_UNUSED (_p2), tree *ARG_UNUSED (captures))
3712 : : {
3713 : 0 : const bool debug_dump = dump_file && (dump_flags & TDF_FOLDING);
3714 : 0 : if (TREE_SIDE_EFFECTS (_p1)) goto next_after_fail1012;
3715 : 0 : if (TREE_SIDE_EFFECTS (_p2)) goto next_after_fail1012;
3716 : 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1012;
3717 : 0 : {
3718 : 0 : tree _r;
3719 : 0 : _r = captures[2];
3720 : 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 725, __FILE__, __LINE__, true);
3721 : : return _r;
3722 : : }
3723 : : next_after_fail1012:;
3724 : : return NULL_TREE;
3725 : : }
3726 : :
3727 : : tree
3728 : 0 : generic_simplify_480 (location_t ARG_UNUSED (loc), const tree ARG_UNUSED (type),
3729 : : tree ARG_UNUSED (_p0), tree ARG_UNUSED (_p1), tree ARG_UNUSED (_p2), tree *ARG_UNUSED (captures),
3730 : : const enum tree_code ARG_UNUSED (cmp))
3731 : : {
3732 : 0 : const bool debug_dump = dump_file && (dump_flags & TDF_FOLDING);
3733 : 0 : if (INTEGRAL_TYPE_P (type)
3734 : : )
3735 : : {
3736 : 0 : if (TREE_SIDE_EFFECTS (_p2)) goto next_after_fail1021;
3737 : 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1021;
3738 : 0 : {
3739 : 0 : tree _r;
3740 : 0 : _r = captures[2];
3741 : 0 : if (TREE_SIDE_EFFECTS (captures[1]))
3742 : 0 : _r = build2_loc (loc, COMPOUND_EXPR, type, fold_ignored_result (captures[1]), _r);
3743 : 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 734, __FILE__, __LINE__, true);
3744 : 0 : return _r;
3745 : : }
3746 : : next_after_fail1021:;
3747 : : }
3748 : : return NULL_TREE;
3749 : : }
3750 : :
3751 : : tree
3752 : 0 : generic_simplify_485 (location_t ARG_UNUSED (loc), const tree ARG_UNUSED (type),
3753 : : tree ARG_UNUSED (_p0), tree ARG_UNUSED (_p1), tree ARG_UNUSED (_p2), tree *ARG_UNUSED (captures),
3754 : : const enum tree_code ARG_UNUSED (op))
3755 : : {
3756 : 0 : const bool debug_dump = dump_file && (dump_flags & TDF_FOLDING);
3757 : 0 : if (TREE_SIDE_EFFECTS (_p0)) goto next_after_fail1026;
3758 : 0 : if (TREE_SIDE_EFFECTS (_p2)) goto next_after_fail1026;
3759 : 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1026;
3760 : 0 : {
3761 : 0 : tree _r;
3762 : 0 : _r = captures[2];
3763 : 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 739, __FILE__, __LINE__, true);
3764 : : return _r;
3765 : : }
3766 : : next_after_fail1026:;
3767 : : return NULL_TREE;
3768 : : }
3769 : :
3770 : : tree
3771 : 0 : generic_simplify_490 (location_t ARG_UNUSED (loc), const tree ARG_UNUSED (type),
3772 : : tree ARG_UNUSED (_p0), tree ARG_UNUSED (_p1), tree ARG_UNUSED (_p2), tree *ARG_UNUSED (captures),
3773 : : const enum tree_code ARG_UNUSED (cmp))
3774 : : {
3775 : 0 : const bool debug_dump = dump_file && (dump_flags & TDF_FOLDING);
3776 : 0 : if (TREE_SIDE_EFFECTS (_p0)) goto next_after_fail1032;
3777 : 0 : if (TREE_SIDE_EFFECTS (_p1)) goto next_after_fail1032;
3778 : 0 : if (TREE_SIDE_EFFECTS (_p2)) goto next_after_fail1032;
3779 : 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1032;
3780 : 0 : {
3781 : 0 : tree _r;
3782 : 0 : _r = captures[0];
3783 : 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 745, __FILE__, __LINE__, true);
3784 : : return _r;
3785 : : }
3786 : : next_after_fail1032:;
3787 : : return NULL_TREE;
3788 : : }
3789 : :
3790 : : tree
3791 : 0 : generic_simplify_496 (location_t ARG_UNUSED (loc), const tree ARG_UNUSED (type),
3792 : : tree ARG_UNUSED (_p0), tree ARG_UNUSED (_p1), tree *ARG_UNUSED (captures),
3793 : : const enum tree_code ARG_UNUSED (minmax))
3794 : : {
3795 : 0 : const bool debug_dump = dump_file && (dump_flags & TDF_FOLDING);
3796 : 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1040;
3797 : 0 : {
3798 : 0 : tree _r;
3799 : 0 : _r = captures[0];
3800 : 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 752, __FILE__, __LINE__, true);
3801 : : return _r;
3802 : : }
3803 : 0 : next_after_fail1040:;
3804 : 0 : return NULL_TREE;
3805 : : }
3806 : :
3807 : : tree
3808 : 2 : generic_simplify_501 (location_t ARG_UNUSED (loc), const tree ARG_UNUSED (type),
3809 : : tree ARG_UNUSED (_p0), tree ARG_UNUSED (_p1), tree *ARG_UNUSED (captures),
3810 : : const enum tree_code ARG_UNUSED (minmax),
3811 : : const enum tree_code ARG_UNUSED (cmp))
3812 : : {
3813 : 2 : const bool debug_dump = dump_file && (dump_flags & TDF_FOLDING);
3814 : 2 : {
3815 : 2 : poly_int64 off0, off1;
3816 : 2 : tree base0, base1;
3817 : 2 : int equal = address_compare (cmp, TREE_TYPE (captures[0]), captures[1], captures[3], base0, base1,
3818 : : off0, off1,
3819 : : 1
3820 : : );
3821 : 2 : if (equal == 1
3822 : : )
3823 : : {
3824 : 0 : if (minmax == MIN_EXPR
3825 : : )
3826 : : {
3827 : 0 : if (known_le (off0, off1)
3828 : : )
3829 : : {
3830 : 0 : if (TREE_SIDE_EFFECTS (_p0)) goto next_after_fail1045;
3831 : 0 : if (TREE_SIDE_EFFECTS (captures[3])) goto next_after_fail1045;
3832 : 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1045;
3833 : 0 : {
3834 : 0 : tree _r;
3835 : 0 : _r = captures[0];
3836 : 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 756, __FILE__, __LINE__, true);
3837 : 0 : return _r;
3838 : : }
3839 : 2 : next_after_fail1045:;
3840 : : }
3841 : : else
3842 : : {
3843 : 0 : if (known_gt (off0, off1)
3844 : : )
3845 : : {
3846 : 0 : if (TREE_SIDE_EFFECTS (_p1)) goto next_after_fail1046;
3847 : 0 : if (TREE_SIDE_EFFECTS (captures[1])) goto next_after_fail1046;
3848 : 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1046;
3849 : 0 : {
3850 : 0 : tree _r;
3851 : 0 : _r = captures[2];
3852 : 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 757, __FILE__, __LINE__, true);
3853 : 0 : return _r;
3854 : : }
3855 : 2 : next_after_fail1046:;
3856 : : }
3857 : : }
3858 : : }
3859 : : else
3860 : : {
3861 : 0 : if (known_ge (off0, off1)
3862 : : )
3863 : : {
3864 : 0 : if (TREE_SIDE_EFFECTS (_p0)) goto next_after_fail1047;
3865 : 0 : if (TREE_SIDE_EFFECTS (captures[3])) goto next_after_fail1047;
3866 : 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1047;
3867 : 0 : {
3868 : 0 : tree _r;
3869 : 0 : _r = captures[0];
3870 : 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 758, __FILE__, __LINE__, true);
3871 : 0 : return _r;
3872 : : }
3873 : 2 : next_after_fail1047:;
3874 : : }
3875 : : else
3876 : : {
3877 : 0 : if (known_lt (off0, off1)
3878 : : )
3879 : : {
3880 : 0 : if (TREE_SIDE_EFFECTS (_p1)) goto next_after_fail1048;
3881 : 0 : if (TREE_SIDE_EFFECTS (captures[1])) goto next_after_fail1048;
3882 : 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1048;
3883 : 0 : {
3884 : 0 : tree _r;
3885 : 0 : _r = captures[2];
3886 : 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 759, __FILE__, __LINE__, true);
3887 : 0 : return _r;
3888 : : }
3889 : 2 : next_after_fail1048:;
3890 : : }
3891 : : }
3892 : : }
3893 : : }
3894 : : }
3895 : 2 : return NULL_TREE;
3896 : : }
3897 : :
3898 : : tree
3899 : 5779 : generic_simplify_515 (location_t ARG_UNUSED (loc), const tree ARG_UNUSED (type),
3900 : : tree ARG_UNUSED (_p0), tree *ARG_UNUSED (captures))
3901 : : {
3902 : 5779 : const bool debug_dump = dump_file && (dump_flags & TDF_FOLDING);
3903 : 11558 : if (INTEGRAL_TYPE_P (TREE_TYPE (captures[1]))
3904 : 5779 : && TYPE_MAX_VALUE (TREE_TYPE (captures[1]))
3905 : 5779 : && types_match (TREE_TYPE (captures[1]), TREE_TYPE (TREE_TYPE (captures[0])))
3906 : 8068 : && int_fits_type_p (captures[2], TREE_TYPE (captures[1]))
3907 : : )
3908 : : {
3909 : 1897 : if (TYPE_UNSIGNED (TREE_TYPE (captures[1]))
3910 : : )
3911 : : {
3912 : 929 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1072;
3913 : 929 : {
3914 : 929 : tree res_op0;
3915 : 929 : {
3916 : 929 : tree _o1[2], _r1;
3917 : 929 : _o1[0] = captures[1];
3918 : 929 : {
3919 : 929 : tree _o2[2], _r2;
3920 : 929 : _o2[0] = TYPE_MAX_VALUE (TREE_TYPE (captures[1]));
3921 : 929 : _o2[1] = captures[2];
3922 : 929 : _r2 = fold_build2_loc (loc, TRUNC_DIV_EXPR, TREE_TYPE (_o2[0]), _o2[0], _o2[1]);
3923 : 929 : if (EXPR_P (_r2))
3924 : 0 : goto next_after_fail1072;
3925 : 929 : _o1[1] = _r2;
3926 : : }
3927 : 929 : _r1 = fold_build2_loc (loc, GT_EXPR, boolean_type_node, _o1[0], _o1[1]);
3928 : 929 : res_op0 = _r1;
3929 : : }
3930 : 929 : tree _r;
3931 : 929 : _r = fold_build1_loc (loc, NOP_EXPR, type, res_op0);
3932 : 929 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 771, __FILE__, __LINE__, true);
3933 : 929 : return _r;
3934 : : }
3935 : : next_after_fail1072:;
3936 : : }
3937 : : else
3938 : : {
3939 : 968 : if (TYPE_MIN_VALUE (TREE_TYPE (captures[1]))
3940 : : )
3941 : : {
3942 : 968 : if (integer_minus_onep (captures[2])
3943 : : )
3944 : : {
3945 : 56 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1073;
3946 : 56 : {
3947 : 56 : tree res_op0;
3948 : 56 : {
3949 : 56 : tree _o1[2], _r1;
3950 : 56 : _o1[0] = captures[1];
3951 : 56 : _o1[1] = TYPE_MIN_VALUE (TREE_TYPE (captures[1]));
3952 : 56 : _r1 = fold_build2_loc (loc, EQ_EXPR, boolean_type_node, _o1[0], _o1[1]);
3953 : 56 : res_op0 = _r1;
3954 : : }
3955 : 56 : tree _r;
3956 : 56 : _r = fold_build1_loc (loc, NOP_EXPR, type, res_op0);
3957 : 56 : if (TREE_SIDE_EFFECTS (captures[2]))
3958 : 0 : _r = build2_loc (loc, COMPOUND_EXPR, type, fold_ignored_result (captures[2]), _r);
3959 : 56 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 772, __FILE__, __LINE__, true);
3960 : 56 : return _r;
3961 : : }
3962 : 0 : next_after_fail1073:;
3963 : : }
3964 : : else
3965 : : {
3966 : 912 : {
3967 : 912 : tree div = fold_convert (TREE_TYPE (captures[1]), captures[2]);
3968 : 1824 : tree lo = int_const_binop (TRUNC_DIV_EXPR,
3969 : 912 : TYPE_MIN_VALUE (TREE_TYPE (captures[1])), div);
3970 : 1824 : tree hi = int_const_binop (TRUNC_DIV_EXPR,
3971 : 912 : TYPE_MAX_VALUE (TREE_TYPE (captures[1])), div);
3972 : 912 : tree etype = range_check_type (TREE_TYPE (captures[1]));
3973 : 912 : if (etype)
3974 : : {
3975 : 912 : if (wi::neg_p (wi::to_wide (div)))
3976 : 88 : std::swap (lo, hi);
3977 : 912 : lo = fold_convert (etype, lo);
3978 : 912 : hi = fold_convert (etype, hi);
3979 : 912 : hi = int_const_binop (MINUS_EXPR, hi, lo);
3980 : : }
3981 : 912 : if (etype
3982 : : )
3983 : : {
3984 : 912 : if (TREE_SIDE_EFFECTS (captures[2])) goto next_after_fail1074;
3985 : 912 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1074;
3986 : 912 : {
3987 : 912 : tree res_op0;
3988 : 912 : {
3989 : 912 : tree _o1[2], _r1;
3990 : 912 : {
3991 : 912 : tree _o2[2], _r2;
3992 : 912 : {
3993 : 912 : tree _o3[1], _r3;
3994 : 912 : _o3[0] = captures[1];
3995 : 912 : if (TREE_TYPE (_o3[0]) != etype)
3996 : : {
3997 : 912 : _r3 = fold_build1_loc (loc, NOP_EXPR, etype, _o3[0]);
3998 : : }
3999 : : else
4000 : : _r3 = _o3[0];
4001 : 912 : _o2[0] = _r3;
4002 : : }
4003 : 912 : _o2[1] = lo;
4004 : 912 : _r2 = fold_build2_loc (loc, MINUS_EXPR, TREE_TYPE (_o2[0]), _o2[0], _o2[1]);
4005 : 912 : _o1[0] = _r2;
4006 : : }
4007 : 912 : _o1[1] = hi;
4008 : 912 : _r1 = fold_build2_loc (loc, GT_EXPR, boolean_type_node, _o1[0], _o1[1]);
4009 : 912 : res_op0 = _r1;
4010 : : }
4011 : 912 : tree _r;
4012 : 912 : _r = fold_build1_loc (loc, NOP_EXPR, type, res_op0);
4013 : 912 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 773, __FILE__, __LINE__, true);
4014 : 912 : return _r;
4015 : : }
4016 : : next_after_fail1074:;
4017 : : }
4018 : : }
4019 : : }
4020 : : }
4021 : : }
4022 : : }
4023 : : return NULL_TREE;
4024 : : }
4025 : :
4026 : : tree
4027 : 0 : generic_simplify_544 (location_t ARG_UNUSED (loc), const tree ARG_UNUSED (type),
4028 : : tree ARG_UNUSED (_p0), tree *ARG_UNUSED (captures),
4029 : : const combined_fn ARG_UNUSED (sins),
4030 : : const combined_fn ARG_UNUSED (atans),
4031 : : const combined_fn ARG_UNUSED (sqrts),
4032 : : const combined_fn ARG_UNUSED (copysigns))
4033 : : {
4034 : 0 : const bool debug_dump = dump_file && (dump_flags & TDF_FOLDING);
4035 : 0 : {
4036 : 0 : REAL_VALUE_TYPE r_cst;
4037 : 0 : build_sinatan_real (&r_cst, type);
4038 : 0 : tree t_cst = build_real (type, r_cst);
4039 : 0 : tree t_one = build_one_cst (type);
4040 : 0 : if (SCALAR_FLOAT_TYPE_P (type)
4041 : : )
4042 : : {
4043 : 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1103;
4044 : 0 : {
4045 : 0 : if (! tree_invariant_p (captures[1])) goto next_after_fail1103;
4046 : 0 : tree res_op0;
4047 : 0 : {
4048 : 0 : tree _o1[2], _r1;
4049 : 0 : {
4050 : 0 : tree _o2[1], _r2;
4051 : 0 : _o2[0] = unshare_expr (captures[1]);
4052 : 0 : _r2 = fold_build1_loc (loc, ABS_EXPR, TREE_TYPE (_o2[0]), _o2[0]);
4053 : 0 : _o1[0] = _r2;
4054 : : }
4055 : 0 : _o1[1] = t_cst;
4056 : 0 : _r1 = fold_build2_loc (loc, LT_EXPR, boolean_type_node, _o1[0], _o1[1]);
4057 : 0 : res_op0 = _r1;
4058 : : }
4059 : 0 : tree res_op1;
4060 : 0 : {
4061 : 0 : tree _o1[2], _r1;
4062 : 0 : _o1[0] = unshare_expr (captures[1]);
4063 : 0 : {
4064 : 0 : tree _o2[1], _r2;
4065 : 0 : {
4066 : 0 : tree _o3[2], _r3;
4067 : 0 : {
4068 : 0 : tree _o4[2], _r4;
4069 : 0 : _o4[0] = unshare_expr (captures[1]);
4070 : 0 : _o4[1] = unshare_expr (captures[1]);
4071 : 0 : _r4 = fold_build2_loc (loc, MULT_EXPR, TREE_TYPE (_o4[0]), _o4[0], _o4[1]);
4072 : 0 : _o3[0] = _r4;
4073 : : }
4074 : 0 : _o3[1] = t_one;
4075 : 0 : _r3 = fold_build2_loc (loc, PLUS_EXPR, TREE_TYPE (_o3[0]), _o3[0], _o3[1]);
4076 : 0 : _o2[0] = _r3;
4077 : : }
4078 : 0 : _r2 = maybe_build_call_expr_loc (loc, sqrts, TREE_TYPE (_o2[0]), 1, _o2[0]);
4079 : 0 : if (!_r2)
4080 : 0 : goto next_after_fail1103;
4081 : 0 : _o1[1] = _r2;
4082 : : }
4083 : 0 : _r1 = fold_build2_loc (loc, RDIV_EXPR, TREE_TYPE (_o1[0]), _o1[0], _o1[1]);
4084 : 0 : res_op1 = _r1;
4085 : : }
4086 : 0 : tree res_op2;
4087 : 0 : {
4088 : 0 : tree _o1[2], _r1;
4089 : 0 : _o1[0] = t_one;
4090 : 0 : _o1[1] = captures[1];
4091 : 0 : _r1 = maybe_build_call_expr_loc (loc, copysigns, TREE_TYPE (_o1[0]), 2, _o1[0], _o1[1]);
4092 : 0 : if (!_r1)
4093 : 0 : goto next_after_fail1103;
4094 : 0 : res_op2 = _r1;
4095 : : }
4096 : 0 : tree _r;
4097 : 0 : _r = fold_build3_loc (loc, COND_EXPR, type, res_op0, res_op1, res_op2);
4098 : 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 797, __FILE__, __LINE__, true);
4099 : 0 : return _r;
4100 : : }
4101 : 0 : next_after_fail1103:;
4102 : : }
4103 : : }
4104 : 0 : return NULL_TREE;
4105 : : }
4106 : :
4107 : : tree
4108 : 0 : generic_simplify_570 (location_t ARG_UNUSED (loc), const tree ARG_UNUSED (type),
4109 : : tree ARG_UNUSED (_p0), tree ARG_UNUSED (_p1), tree ARG_UNUSED (_p2), tree *ARG_UNUSED (captures))
4110 : : {
4111 : 0 : const bool debug_dump = dump_file && (dump_flags & TDF_FOLDING);
4112 : 0 : if (canonicalize_math_after_vectorization_p ()
4113 : : )
4114 : : {
4115 : : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1129;
4116 : : {
4117 : : tree res_op0;
4118 : : res_op0 = captures[0];
4119 : : tree res_op1;
4120 : : res_op1 = captures[1];
4121 : : tree res_op2;
4122 : : res_op2 = captures[2];
4123 : : tree _r;
4124 : : _r = maybe_build_call_expr_loc (loc, CFN_FMA, type, 3, res_op0, res_op1, res_op2);
4125 : : if (!_r)
4126 : : goto next_after_fail1129;
4127 : : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 823, __FILE__, __LINE__, true);
4128 : : return _r;
4129 : : }
4130 : 0 : next_after_fail1129:;
4131 : : }
4132 : 0 : return NULL_TREE;
4133 : : }
4134 : :
4135 : : tree
4136 : 0 : generic_simplify_580 (location_t ARG_UNUSED (loc), const tree ARG_UNUSED (type),
4137 : : tree ARG_UNUSED (_p0), tree *ARG_UNUSED (captures),
4138 : : const combined_fn ARG_UNUSED (PARITY))
4139 : : {
4140 : 0 : const bool debug_dump = dump_file && (dump_flags & TDF_FOLDING);
4141 : 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1140;
4142 : 0 : {
4143 : 0 : tree res_op0;
4144 : 0 : res_op0 = captures[0];
4145 : 0 : tree _r;
4146 : 0 : _r = maybe_build_call_expr_loc (loc, PARITY, type, 1, res_op0);
4147 : 0 : if (!_r)
4148 : 0 : goto next_after_fail1140;
4149 : 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 829, __FILE__, __LINE__, true);
4150 : : return _r;
4151 : : }
4152 : : next_after_fail1140:;
4153 : : return NULL_TREE;
4154 : : }
4155 : :
4156 : : tree
4157 : 0 : generic_simplify_585 (location_t ARG_UNUSED (loc), const tree ARG_UNUSED (type),
4158 : : tree ARG_UNUSED (_p0), tree *ARG_UNUSED (captures),
4159 : : const combined_fn ARG_UNUSED (reduc))
4160 : : {
4161 : 0 : const bool debug_dump = dump_file && (dump_flags & TDF_FOLDING);
4162 : 0 : {
4163 : 0 : int i = single_nonzero_element (captures[1]);
4164 : 0 : if (i >= 0
4165 : : )
4166 : : {
4167 : 0 : {
4168 : 0 : tree elt = vector_cst_elt (captures[1], i);
4169 : 0 : tree elt_type = TREE_TYPE (elt);
4170 : 0 : unsigned int elt_bits = tree_to_uhwi (TYPE_SIZE (elt_type));
4171 : 0 : tree size = bitsize_int (elt_bits);
4172 : 0 : tree pos = bitsize_int (elt_bits * i);
4173 : 0 : if (TREE_SIDE_EFFECTS (captures[1])) goto next_after_fail1145;
4174 : 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1145;
4175 : 0 : {
4176 : 0 : tree res_op0;
4177 : 0 : {
4178 : 0 : tree _o1[2], _r1;
4179 : 0 : {
4180 : 0 : tree _o2[3], _r2;
4181 : 0 : _o2[0] = captures[0];
4182 : 0 : _o2[1] = size;
4183 : 0 : _o2[2] = pos;
4184 : 0 : _r2 = fold_build3_loc (loc, BIT_FIELD_REF, elt_type, _o2[0], _o2[1], _o2[2]);
4185 : 0 : _o1[0] = _r2;
4186 : : }
4187 : 0 : _o1[1] = elt;
4188 : 0 : _r1 = fold_build2_loc (loc, BIT_AND_EXPR, elt_type, _o1[0], _o1[1]);
4189 : 0 : res_op0 = _r1;
4190 : : }
4191 : 0 : tree _r;
4192 : 0 : _r = fold_build1_loc (loc, VIEW_CONVERT_EXPR, type, res_op0);
4193 : 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 832, __FILE__, __LINE__, true);
4194 : 0 : return _r;
4195 : : }
4196 : : next_after_fail1145:;
4197 : : }
4198 : : }
4199 : : }
4200 : : return NULL_TREE;
4201 : : }
4202 : :
4203 : : tree
4204 : 6769788 : generic_simplify_FLOAT_EXPR (location_t ARG_UNUSED (loc), enum tree_code ARG_UNUSED (code), const tree ARG_UNUSED (type), tree _p0)
4205 : : {
4206 : 6769788 : const bool debug_dump = dump_file && (dump_flags & TDF_FOLDING);
4207 : 6769788 : {
4208 : 6769788 : tree captures[1] ATTRIBUTE_UNUSED = { _p0 };
4209 : 13539576 : if ((
4210 : :
4211 : : && useless_type_conversion_p (type, TREE_TYPE (captures[0])))
4212 : : || (
4213 : : 1
4214 : 6769788 : && type == TREE_TYPE (captures[0]))
4215 : : )
4216 : : {
4217 : 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1208;
4218 : 0 : {
4219 : 0 : tree _r;
4220 : 0 : _r = captures[0];
4221 : 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 846, __FILE__, __LINE__, true);
4222 : 0 : return _r;
4223 : : }
4224 : 0 : next_after_fail1208:;
4225 : : }
4226 : : }
4227 : 6769788 : switch (TREE_CODE (_p0))
4228 : : {
4229 : 578916 : CASE_CONVERT:
4230 : 578916 : {
4231 : 578916 : tree _q20 = TREE_OPERAND (_p0, 0);
4232 : 578916 : {
4233 : 578916 : tree captures[2] ATTRIBUTE_UNUSED = { _p0, _q20 };
4234 : 578916 : {
4235 : 578916 : tree inside_type = TREE_TYPE (captures[1]);
4236 : 578916 : tree inter_type = TREE_TYPE (captures[0]);
4237 : 578916 : int inside_int = INTEGRAL_TYPE_P (inside_type);
4238 : 578916 : int inside_ptr = POINTER_TYPE_P (inside_type);
4239 : 578916 : int inside_float = FLOAT_TYPE_P (inside_type);
4240 : 578916 : int inside_vec = VECTOR_TYPE_P (inside_type);
4241 : 578916 : unsigned int inside_prec = element_precision (inside_type);
4242 : 578916 : int inside_unsignedp = TYPE_UNSIGNED (inside_type);
4243 : 578916 : int inter_int = INTEGRAL_TYPE_P (inter_type);
4244 : 578916 : int inter_ptr = POINTER_TYPE_P (inter_type);
4245 : 578916 : int inter_float = FLOAT_TYPE_P (inter_type);
4246 : 578916 : int inter_vec = VECTOR_TYPE_P (inter_type);
4247 : 578916 : unsigned int inter_prec = element_precision (inter_type);
4248 : 578916 : int inter_unsignedp = TYPE_UNSIGNED (inter_type);
4249 : 578916 : int final_int = INTEGRAL_TYPE_P (type);
4250 : 578916 : int final_ptr = POINTER_TYPE_P (type);
4251 : 578916 : int final_float = FLOAT_TYPE_P (type);
4252 : 578916 : int final_vec = VECTOR_TYPE_P (type);
4253 : 578916 : unsigned int final_prec = element_precision (type);
4254 : 578916 : int final_unsignedp = TYPE_UNSIGNED (type);
4255 : 578916 : if (((
4256 : :
4257 : : && useless_type_conversion_p (type, inside_type))
4258 : : || (
4259 : : 1
4260 : 578916 : && TYPE_MAIN_VARIANT (type) == TYPE_MAIN_VARIANT (inside_type)))
4261 : 0 : && (((inter_int || inter_ptr) && final_int)
4262 : 0 : || (inter_float && final_float))
4263 : 578916 : && inter_prec >= final_prec
4264 : : )
4265 : : {
4266 : 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1209;
4267 : 0 : {
4268 : 0 : tree res_op0;
4269 : 0 : res_op0 = captures[1];
4270 : 0 : tree _r;
4271 : 0 : _r = fold_build1_loc (loc, FLOAT_EXPR, type, res_op0);
4272 : 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 847, __FILE__, __LINE__, true);
4273 : 0 : return _r;
4274 : : }
4275 : 0 : next_after_fail1209:;
4276 : : }
4277 : : else
4278 : : {
4279 : 578916 : if (((inter_int && inside_int) || (inter_float && inside_float))
4280 : 578910 : && (final_int || final_float)
4281 : 578910 : && inter_prec >= inside_prec
4282 : 577923 : && (inter_float || inter_unsignedp == inside_unsignedp)
4283 : : )
4284 : : {
4285 : 575554 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1210;
4286 : 575554 : {
4287 : 575554 : tree res_op0;
4288 : 575554 : res_op0 = captures[1];
4289 : 575554 : tree _r;
4290 : 575554 : _r = fold_build1_loc (loc, FLOAT_EXPR, type, res_op0);
4291 : 575554 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 848, __FILE__, __LINE__, true);
4292 : 575554 : return _r;
4293 : : }
4294 : 0 : next_after_fail1210:;
4295 : 0 : }
4296 : : else
4297 : : {
4298 : 3362 : if (inside_int && inter_int && final_int
4299 : 0 : && ((inside_prec < inter_prec && inter_prec < final_prec
4300 : 0 : && inside_unsignedp && !inter_unsignedp)
4301 : 0 : || final_prec == inter_prec
4302 : 0 : || (inside_prec < inter_prec && inter_prec > final_prec
4303 : 0 : && !inside_unsignedp && inter_unsignedp))
4304 : : )
4305 : : {
4306 : 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1211;
4307 : 0 : {
4308 : 0 : tree res_op0;
4309 : 0 : res_op0 = captures[1];
4310 : 0 : tree _r;
4311 : 0 : _r = fold_build1_loc (loc, FLOAT_EXPR, type, res_op0);
4312 : 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 849, __FILE__, __LINE__, true);
4313 : 0 : return _r;
4314 : : }
4315 : 0 : next_after_fail1211:;
4316 : 0 : }
4317 : : else
4318 : : {
4319 : 3362 : if (! inside_float && ! inter_float && ! final_float
4320 : : && ! inside_vec && ! inter_vec && ! final_vec
4321 : 0 : && (inter_prec >= inside_prec || inter_prec >= final_prec)
4322 : 0 : && ! (inside_int && inter_int
4323 : 0 : && inter_unsignedp != inside_unsignedp
4324 : 0 : && inter_prec < final_prec)
4325 : 0 : && ((inter_unsignedp && inter_prec > inside_prec)
4326 : 0 : == (final_unsignedp && final_prec > inter_prec))
4327 : 0 : && ! (inside_ptr && inter_prec != final_prec)
4328 : 0 : && ! (final_ptr && inside_prec != inter_prec)
4329 : : )
4330 : : {
4331 : 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1212;
4332 : 0 : {
4333 : 0 : tree res_op0;
4334 : 0 : res_op0 = captures[1];
4335 : 0 : tree _r;
4336 : 0 : _r = fold_build1_loc (loc, FLOAT_EXPR, type, res_op0);
4337 : 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 850, __FILE__, __LINE__, true);
4338 : 0 : return _r;
4339 : : }
4340 : 0 : next_after_fail1212:;
4341 : 0 : }
4342 : : else
4343 : : {
4344 : 3362 : if (inside_int && inter_int && final_int
4345 : 3356 : && final_prec <= inside_prec
4346 : 0 : && inter_prec >= inside_prec
4347 : : )
4348 : : {
4349 : 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1213;
4350 : 0 : {
4351 : 0 : tree res_op0;
4352 : 0 : res_op0 = captures[1];
4353 : 0 : tree _r;
4354 : 0 : _r = fold_build1_loc (loc, NOP_EXPR, type, res_op0);
4355 : 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 851, __FILE__, __LINE__, true);
4356 : 0 : return _r;
4357 : : }
4358 : 0 : next_after_fail1213:;
4359 : 0 : }
4360 : : else
4361 : : {
4362 : : if (0
4363 : : && final_int && inter_int && inside_int
4364 : : && final_prec >= inside_prec
4365 : : && inside_prec > inter_prec
4366 : : && inter_unsignedp
4367 : : )
4368 : : {
4369 : : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1214;
4370 : : {
4371 : : tree res_op0;
4372 : : {
4373 : : tree _o1[2], _r1;
4374 : : _o1[0] = captures[1];
4375 : : _o1[1] = wide_int_to_tree
4376 : : (inside_type,
4377 : : wi::mask (inter_prec, false,
4378 : : TYPE_PRECISION (inside_type)));
4379 : : _r1 = fold_build2_loc (loc, BIT_AND_EXPR, TREE_TYPE (_o1[0]), _o1[0], _o1[1]);
4380 : : res_op0 = _r1;
4381 : : }
4382 : : tree _r;
4383 : : _r = fold_build1_loc (loc, NOP_EXPR, type, res_op0);
4384 : : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 852, __FILE__, __LINE__, true);
4385 : : return _r;
4386 : : }
4387 : : next_after_fail1214:;
4388 : : }
4389 : : else
4390 : : {
4391 : : if (0
4392 : : && inside_int && inter_float && final_int &&
4393 : : (unsigned) significand_size (TYPE_MODE (inter_type))
4394 : : >= inside_prec - !inside_unsignedp
4395 : : )
4396 : : {
4397 : : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1215;
4398 : : {
4399 : : tree res_op0;
4400 : : res_op0 = captures[1];
4401 : : tree _r;
4402 : : _r = fold_build1_loc (loc, NOP_EXPR, type, res_op0);
4403 : : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 853, __FILE__, __LINE__, true);
4404 : : return _r;
4405 : : }
4406 : : next_after_fail1215:;
4407 : : }
4408 : : }
4409 : : }
4410 : : }
4411 : : }
4412 : : }
4413 : : }
4414 : : }
4415 : : }
4416 : 3362 : break;
4417 : : }
4418 : 0 : case FLOAT_EXPR:
4419 : 0 : {
4420 : 0 : tree _q20 = TREE_OPERAND (_p0, 0);
4421 : 0 : {
4422 : 0 : tree captures[2] ATTRIBUTE_UNUSED = { _p0, _q20 };
4423 : 0 : {
4424 : 0 : tree inside_type = TREE_TYPE (captures[1]);
4425 : 0 : tree inter_type = TREE_TYPE (captures[0]);
4426 : 0 : int inside_int = INTEGRAL_TYPE_P (inside_type);
4427 : 0 : int inside_ptr = POINTER_TYPE_P (inside_type);
4428 : 0 : int inside_float = FLOAT_TYPE_P (inside_type);
4429 : 0 : int inside_vec = VECTOR_TYPE_P (inside_type);
4430 : 0 : unsigned int inside_prec = element_precision (inside_type);
4431 : 0 : int inside_unsignedp = TYPE_UNSIGNED (inside_type);
4432 : 0 : int inter_int = INTEGRAL_TYPE_P (inter_type);
4433 : 0 : int inter_ptr = POINTER_TYPE_P (inter_type);
4434 : 0 : int inter_float = FLOAT_TYPE_P (inter_type);
4435 : 0 : int inter_vec = VECTOR_TYPE_P (inter_type);
4436 : 0 : unsigned int inter_prec = element_precision (inter_type);
4437 : 0 : int inter_unsignedp = TYPE_UNSIGNED (inter_type);
4438 : 0 : int final_int = INTEGRAL_TYPE_P (type);
4439 : 0 : int final_ptr = POINTER_TYPE_P (type);
4440 : 0 : int final_float = FLOAT_TYPE_P (type);
4441 : 0 : int final_vec = VECTOR_TYPE_P (type);
4442 : 0 : unsigned int final_prec = element_precision (type);
4443 : 0 : int final_unsignedp = TYPE_UNSIGNED (type);
4444 : 0 : if (((
4445 : :
4446 : : && useless_type_conversion_p (type, inside_type))
4447 : : || (
4448 : : 1
4449 : 0 : && TYPE_MAIN_VARIANT (type) == TYPE_MAIN_VARIANT (inside_type)))
4450 : 0 : && (((inter_int || inter_ptr) && final_int)
4451 : 0 : || (inter_float && final_float))
4452 : 0 : && inter_prec >= final_prec
4453 : : )
4454 : : {
4455 : 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1216;
4456 : 0 : {
4457 : 0 : tree res_op0;
4458 : 0 : res_op0 = captures[1];
4459 : 0 : tree _r;
4460 : 0 : _r = fold_build1_loc (loc, FLOAT_EXPR, type, res_op0);
4461 : 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 847, __FILE__, __LINE__, true);
4462 : 0 : return _r;
4463 : : }
4464 : 0 : next_after_fail1216:;
4465 : : }
4466 : : else
4467 : : {
4468 : 0 : if (((inter_int && inside_int) || (inter_float && inside_float))
4469 : 0 : && (final_int || final_float)
4470 : 0 : && inter_prec >= inside_prec
4471 : 0 : && (inter_float || inter_unsignedp == inside_unsignedp)
4472 : : )
4473 : : {
4474 : 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1217;
4475 : 0 : {
4476 : 0 : tree res_op0;
4477 : 0 : res_op0 = captures[1];
4478 : 0 : tree _r;
4479 : 0 : _r = fold_build1_loc (loc, FLOAT_EXPR, type, res_op0);
4480 : 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 848, __FILE__, __LINE__, true);
4481 : 0 : return _r;
4482 : : }
4483 : 0 : next_after_fail1217:;
4484 : 0 : }
4485 : : else
4486 : : {
4487 : 0 : if (inside_int && inter_int && final_int
4488 : 0 : && ((inside_prec < inter_prec && inter_prec < final_prec
4489 : 0 : && inside_unsignedp && !inter_unsignedp)
4490 : 0 : || final_prec == inter_prec
4491 : 0 : || (inside_prec < inter_prec && inter_prec > final_prec
4492 : 0 : && !inside_unsignedp && inter_unsignedp))
4493 : : )
4494 : : {
4495 : 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1218;
4496 : 0 : {
4497 : 0 : tree res_op0;
4498 : 0 : res_op0 = captures[1];
4499 : 0 : tree _r;
4500 : 0 : _r = fold_build1_loc (loc, FLOAT_EXPR, type, res_op0);
4501 : 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 849, __FILE__, __LINE__, true);
4502 : 0 : return _r;
4503 : : }
4504 : 0 : next_after_fail1218:;
4505 : 0 : }
4506 : : else
4507 : : {
4508 : 0 : if (! inside_float && ! inter_float && ! final_float
4509 : : && ! inside_vec && ! inter_vec && ! final_vec
4510 : 0 : && (inter_prec >= inside_prec || inter_prec >= final_prec)
4511 : 0 : && ! (inside_int && inter_int
4512 : 0 : && inter_unsignedp != inside_unsignedp
4513 : 0 : && inter_prec < final_prec)
4514 : 0 : && ((inter_unsignedp && inter_prec > inside_prec)
4515 : 0 : == (final_unsignedp && final_prec > inter_prec))
4516 : 0 : && ! (inside_ptr && inter_prec != final_prec)
4517 : 0 : && ! (final_ptr && inside_prec != inter_prec)
4518 : : )
4519 : : {
4520 : 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1219;
4521 : 0 : {
4522 : 0 : tree res_op0;
4523 : 0 : res_op0 = captures[1];
4524 : 0 : tree _r;
4525 : 0 : _r = fold_build1_loc (loc, FLOAT_EXPR, type, res_op0);
4526 : 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 850, __FILE__, __LINE__, true);
4527 : 0 : return _r;
4528 : : }
4529 : 0 : next_after_fail1219:;
4530 : 0 : }
4531 : : else
4532 : : {
4533 : 0 : if (inside_int && inter_int && final_int
4534 : 0 : && final_prec <= inside_prec
4535 : 0 : && inter_prec >= inside_prec
4536 : : )
4537 : : {
4538 : 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1220;
4539 : 0 : {
4540 : 0 : tree res_op0;
4541 : 0 : res_op0 = captures[1];
4542 : 0 : tree _r;
4543 : 0 : _r = fold_build1_loc (loc, NOP_EXPR, type, res_op0);
4544 : 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 851, __FILE__, __LINE__, true);
4545 : 0 : return _r;
4546 : : }
4547 : 0 : next_after_fail1220:;
4548 : 0 : }
4549 : : else
4550 : : {
4551 : : if (0
4552 : : && final_int && inter_int && inside_int
4553 : : && final_prec >= inside_prec
4554 : : && inside_prec > inter_prec
4555 : : && inter_unsignedp
4556 : : )
4557 : : {
4558 : : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1221;
4559 : : {
4560 : : tree res_op0;
4561 : : {
4562 : : tree _o1[2], _r1;
4563 : : _o1[0] = captures[1];
4564 : : _o1[1] = wide_int_to_tree
4565 : : (inside_type,
4566 : : wi::mask (inter_prec, false,
4567 : : TYPE_PRECISION (inside_type)));
4568 : : _r1 = fold_build2_loc (loc, BIT_AND_EXPR, TREE_TYPE (_o1[0]), _o1[0], _o1[1]);
4569 : : res_op0 = _r1;
4570 : : }
4571 : : tree _r;
4572 : : _r = fold_build1_loc (loc, NOP_EXPR, type, res_op0);
4573 : : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 852, __FILE__, __LINE__, true);
4574 : : return _r;
4575 : : }
4576 : : next_after_fail1221:;
4577 : : }
4578 : : else
4579 : : {
4580 : : if (0
4581 : : && inside_int && inter_float && final_int &&
4582 : : (unsigned) significand_size (TYPE_MODE (inter_type))
4583 : : >= inside_prec - !inside_unsignedp
4584 : : )
4585 : : {
4586 : : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1222;
4587 : : {
4588 : : tree res_op0;
4589 : : res_op0 = captures[1];
4590 : : tree _r;
4591 : : _r = fold_build1_loc (loc, NOP_EXPR, type, res_op0);
4592 : : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 853, __FILE__, __LINE__, true);
4593 : : return _r;
4594 : : }
4595 : : next_after_fail1222:;
4596 : : }
4597 : : }
4598 : : }
4599 : : }
4600 : : }
4601 : : }
4602 : : }
4603 : : }
4604 : : }
4605 : 0 : break;
4606 : : }
4607 : : default:;
4608 : : }
4609 : : return NULL_TREE;
4610 : : }
4611 : :
4612 : : tree
4613 : 1794834 : generic_simplify_BIT_IOR_EXPR (location_t ARG_UNUSED (loc), enum tree_code ARG_UNUSED (code), const tree ARG_UNUSED (type), tree _p0, tree _p1)
4614 : : {
4615 : 1794834 : const bool debug_dump = dump_file && (dump_flags & TDF_FOLDING);
4616 : 1794834 : if (integer_zerop (_p1))
4617 : : {
4618 : 2701 : {
4619 : 2701 : tree captures[1] ATTRIBUTE_UNUSED = { _p0 };
4620 : 2701 : if (TREE_SIDE_EFFECTS (_p1)) goto next_after_fail1334;
4621 : 2701 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1334;
4622 : 2701 : {
4623 : 2701 : tree res_op0;
4624 : 2701 : res_op0 = captures[0];
4625 : 2701 : tree _r;
4626 : 2701 : _r = non_lvalue_loc (loc, res_op0);
4627 : 2701 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 893, __FILE__, __LINE__, true);
4628 : 2701 : return _r;
4629 : : }
4630 : : next_after_fail1334:;
4631 : : }
4632 : : }
4633 : 1792133 : switch (TREE_CODE (_p0))
4634 : : {
4635 : 375133 : case LSHIFT_EXPR:
4636 : 375133 : {
4637 : 375133 : tree _q20 = TREE_OPERAND (_p0, 0);
4638 : 375133 : tree _q21 = TREE_OPERAND (_p0, 1);
4639 : 375133 : switch (TREE_CODE (_p1))
4640 : : {
4641 : 1119 : case LSHIFT_EXPR:
4642 : 1119 : {
4643 : 1119 : tree _q50 = TREE_OPERAND (_p1, 0);
4644 : 1119 : tree _q51 = TREE_OPERAND (_p1, 1);
4645 : 1119 : if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
4646 : : {
4647 : 1 : {
4648 : 1 : tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q50 };
4649 : 1 : tree res = generic_simplify_63 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR);
4650 : 1 : if (res) return res;
4651 : : }
4652 : : }
4653 : : break;
4654 : : }
4655 : : default:;
4656 : : }
4657 : : break;
4658 : : }
4659 : 24984 : case RSHIFT_EXPR:
4660 : 24984 : {
4661 : 24984 : tree _q20 = TREE_OPERAND (_p0, 0);
4662 : 24984 : tree _q21 = TREE_OPERAND (_p0, 1);
4663 : 24984 : switch (TREE_CODE (_p1))
4664 : : {
4665 : 4 : case RSHIFT_EXPR:
4666 : 4 : {
4667 : 4 : tree _q50 = TREE_OPERAND (_p1, 0);
4668 : 4 : tree _q51 = TREE_OPERAND (_p1, 1);
4669 : 4 : if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
4670 : : {
4671 : 3 : {
4672 : 3 : tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q50 };
4673 : 3 : tree res = generic_simplify_64 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR);
4674 : 3 : if (res) return res;
4675 : : }
4676 : : }
4677 : : break;
4678 : : }
4679 : : default:;
4680 : : }
4681 : : break;
4682 : : }
4683 : 272 : case NE_EXPR:
4684 : 272 : {
4685 : 272 : tree _q20 = TREE_OPERAND (_p0, 0);
4686 : 272 : tree _q21 = TREE_OPERAND (_p0, 1);
4687 : 272 : if (integer_zerop (_q21))
4688 : : {
4689 : 93 : switch (TREE_CODE (_p1))
4690 : : {
4691 : 8 : case NE_EXPR:
4692 : 8 : {
4693 : 8 : tree _q50 = TREE_OPERAND (_p1, 0);
4694 : 8 : tree _q51 = TREE_OPERAND (_p1, 1);
4695 : 8 : if (integer_zerop (_q51))
4696 : : {
4697 : 7 : {
4698 : 7 : tree captures[3] ATTRIBUTE_UNUSED = { _q20, _q21, _q50 };
4699 : 7 : tree res = generic_simplify_65 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR, NE_EXPR);
4700 : 7 : if (res) return res;
4701 : : }
4702 : : }
4703 : : break;
4704 : : }
4705 : : default:;
4706 : : }
4707 : : }
4708 : 265 : if (integer_all_onesp (_q21))
4709 : : {
4710 : 0 : switch (TREE_CODE (_p1))
4711 : : {
4712 : 0 : case NE_EXPR:
4713 : 0 : {
4714 : 0 : tree _q50 = TREE_OPERAND (_p1, 0);
4715 : 0 : tree _q51 = TREE_OPERAND (_p1, 1);
4716 : 0 : if (integer_all_onesp (_q51))
4717 : : {
4718 : 0 : {
4719 : 0 : tree captures[3] ATTRIBUTE_UNUSED = { _q20, _q21, _q50 };
4720 : 0 : tree res = generic_simplify_66 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR, NE_EXPR);
4721 : 0 : if (res) return res;
4722 : : }
4723 : : }
4724 : : break;
4725 : : }
4726 : : default:;
4727 : : }
4728 : : }
4729 : : break;
4730 : : }
4731 : 128584 : case BIT_AND_EXPR:
4732 : 128584 : {
4733 : 128584 : tree _q20 = TREE_OPERAND (_p0, 0);
4734 : 128584 : tree _q21 = TREE_OPERAND (_p0, 1);
4735 : 128584 : switch (TREE_CODE (_p1))
4736 : : {
4737 : 16615 : case BIT_AND_EXPR:
4738 : 16615 : {
4739 : 16615 : tree _q50 = TREE_OPERAND (_p1, 0);
4740 : 16615 : tree _q51 = TREE_OPERAND (_p1, 1);
4741 : 16615 : {
4742 : 16615 : tree captures[4] ATTRIBUTE_UNUSED = { _q20, _q21, _q50, _q51 };
4743 : 16615 : tree res = generic_simplify_6 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR);
4744 : 16615 : if (res) return res;
4745 : : }
4746 : 16615 : {
4747 : 16615 : tree captures[4] ATTRIBUTE_UNUSED = { _q20, _q21, _q51, _q50 };
4748 : 16615 : tree res = generic_simplify_6 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR);
4749 : 16615 : if (res) return res;
4750 : : }
4751 : 16611 : {
4752 : 16611 : tree captures[4] ATTRIBUTE_UNUSED = { _q21, _q20, _q50, _q51 };
4753 : 16611 : tree res = generic_simplify_6 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR);
4754 : 16611 : if (res) return res;
4755 : : }
4756 : 16611 : {
4757 : 16611 : tree captures[4] ATTRIBUTE_UNUSED = { _q21, _q20, _q51, _q50 };
4758 : 16611 : tree res = generic_simplify_6 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR);
4759 : 16611 : if (res) return res;
4760 : : }
4761 : 16611 : break;
4762 : : }
4763 : : default:;
4764 : : }
4765 : : break;
4766 : : }
4767 : 2932 : case BIT_XOR_EXPR:
4768 : 2932 : {
4769 : 2932 : tree _q20 = TREE_OPERAND (_p0, 0);
4770 : 2932 : tree _q21 = TREE_OPERAND (_p0, 1);
4771 : 2932 : if ((_p1 == _q20 && ! TREE_SIDE_EFFECTS (_p1)) || (operand_equal_p (_p1, _q20, 0) && types_match (_p1, _q20)))
4772 : : {
4773 : 1 : {
4774 : 1 : tree captures[2] ATTRIBUTE_UNUSED = { _q20, _q21 };
4775 : 1 : tree res = generic_simplify_67 (loc, type, _p0, _p1, captures);
4776 : 1 : if (res) return res;
4777 : : }
4778 : : }
4779 : 2931 : if ((_p1 == _q21 && ! TREE_SIDE_EFFECTS (_p1)) || (operand_equal_p (_p1, _q21, 0) && types_match (_p1, _q21)))
4780 : : {
4781 : 0 : {
4782 : 0 : tree captures[2] ATTRIBUTE_UNUSED = { _q21, _q20 };
4783 : 0 : tree res = generic_simplify_67 (loc, type, _p0, _p1, captures);
4784 : 0 : if (res) return res;
4785 : : }
4786 : : }
4787 : 2931 : switch (TREE_CODE (_p1))
4788 : : {
4789 : 102 : case BIT_AND_EXPR:
4790 : 102 : {
4791 : 102 : tree _q50 = TREE_OPERAND (_p1, 0);
4792 : 102 : tree _q51 = TREE_OPERAND (_p1, 1);
4793 : 102 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
4794 : : {
4795 : 30 : switch (TREE_CODE (_q51))
4796 : : {
4797 : 0 : case BIT_NOT_EXPR:
4798 : 0 : {
4799 : 0 : tree _q70 = TREE_OPERAND (_q51, 0);
4800 : 0 : if ((_q70 == _q21 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q21, 0) && types_match (_q70, _q21)))
4801 : : {
4802 : 0 : {
4803 : 0 : tree captures[3] ATTRIBUTE_UNUSED = { _q20, _q21, _p0 };
4804 : 0 : tree res = generic_simplify_68 (loc, type, _p0, _p1, captures);
4805 : 0 : if (res) return res;
4806 : : }
4807 : : }
4808 : : break;
4809 : : }
4810 : : default:;
4811 : : }
4812 : : }
4813 : 102 : if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
4814 : : {
4815 : 9 : switch (TREE_CODE (_q51))
4816 : : {
4817 : 0 : case BIT_NOT_EXPR:
4818 : 0 : {
4819 : 0 : tree _q70 = TREE_OPERAND (_q51, 0);
4820 : 0 : if ((_q70 == _q20 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q20, 0) && types_match (_q70, _q20)))
4821 : : {
4822 : 0 : {
4823 : 0 : tree captures[3] ATTRIBUTE_UNUSED = { _q21, _q20, _p0 };
4824 : 0 : tree res = generic_simplify_68 (loc, type, _p0, _p1, captures);
4825 : 0 : if (res) return res;
4826 : : }
4827 : : }
4828 : : break;
4829 : : }
4830 : : default:;
4831 : : }
4832 : : }
4833 : 102 : switch (TREE_CODE (_q50))
4834 : : {
4835 : 16 : case BIT_NOT_EXPR:
4836 : 16 : {
4837 : 16 : tree _q60 = TREE_OPERAND (_q50, 0);
4838 : 16 : if ((_q60 == _q21 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q21, 0) && types_match (_q60, _q21)))
4839 : : {
4840 : 0 : if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
4841 : : {
4842 : 0 : {
4843 : 0 : tree captures[3] ATTRIBUTE_UNUSED = { _q20, _q21, _p0 };
4844 : 0 : tree res = generic_simplify_68 (loc, type, _p0, _p1, captures);
4845 : 0 : if (res) return res;
4846 : : }
4847 : : }
4848 : : }
4849 : 16 : if ((_q60 == _q20 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q20, 0) && types_match (_q60, _q20)))
4850 : : {
4851 : 0 : if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
4852 : : {
4853 : 0 : {
4854 : 0 : tree captures[3] ATTRIBUTE_UNUSED = { _q21, _q20, _p0 };
4855 : 0 : tree res = generic_simplify_68 (loc, type, _p0, _p1, captures);
4856 : 0 : if (res) return res;
4857 : : }
4858 : : }
4859 : : }
4860 : : break;
4861 : : }
4862 : : default:;
4863 : : }
4864 : : break;
4865 : : }
4866 : 2931 : default:;
4867 : : }
4868 : 2931 : {
4869 : 2931 : tree captures[4] ATTRIBUTE_UNUSED = { _p1, _p0, _q20, _q21 };
4870 : 2931 : tree res = generic_simplify_69 (loc, type, _p0, _p1, captures);
4871 : 2931 : if (res) return res;
4872 : : }
4873 : 2931 : {
4874 : 2931 : tree captures[4] ATTRIBUTE_UNUSED = { _p1, _p0, _q21, _q20 };
4875 : 2931 : tree res = generic_simplify_69 (loc, type, _p0, _p1, captures);
4876 : 2931 : if (res) return res;
4877 : : }
4878 : 2931 : break;
4879 : : }
4880 : 1792117 : default:;
4881 : : }
4882 : 1792117 : switch (TREE_CODE (_p1))
4883 : : {
4884 : 220 : case BIT_XOR_EXPR:
4885 : 220 : {
4886 : 220 : tree _q30 = TREE_OPERAND (_p1, 0);
4887 : 220 : tree _q31 = TREE_OPERAND (_p1, 1);
4888 : 220 : if ((_q30 == _p0 && ! TREE_SIDE_EFFECTS (_q30)) || (operand_equal_p (_q30, _p0, 0) && types_match (_q30, _p0)))
4889 : : {
4890 : 15 : {
4891 : 15 : tree captures[2] ATTRIBUTE_UNUSED = { _p0, _q31 };
4892 : 15 : tree res = generic_simplify_67 (loc, type, _p0, _p1, captures);
4893 : 15 : if (res) return res;
4894 : : }
4895 : : }
4896 : 205 : if ((_q31 == _p0 && ! TREE_SIDE_EFFECTS (_q31)) || (operand_equal_p (_q31, _p0, 0) && types_match (_q31, _p0)))
4897 : : {
4898 : 0 : {
4899 : 0 : tree captures[2] ATTRIBUTE_UNUSED = { _p0, _q30 };
4900 : 0 : tree res = generic_simplify_67 (loc, type, _p0, _p1, captures);
4901 : 0 : if (res) return res;
4902 : : }
4903 : : }
4904 : : break;
4905 : : }
4906 : 1792102 : default:;
4907 : : }
4908 : 1792102 : switch (TREE_CODE (_p0))
4909 : : {
4910 : 128580 : case BIT_AND_EXPR:
4911 : 128580 : {
4912 : 128580 : tree _q20 = TREE_OPERAND (_p0, 0);
4913 : 128580 : tree _q21 = TREE_OPERAND (_p0, 1);
4914 : 128580 : switch (TREE_CODE (_q21))
4915 : : {
4916 : 74 : case BIT_NOT_EXPR:
4917 : 74 : {
4918 : 74 : tree _q40 = TREE_OPERAND (_q21, 0);
4919 : 74 : switch (TREE_CODE (_p1))
4920 : : {
4921 : 0 : case BIT_XOR_EXPR:
4922 : 0 : {
4923 : 0 : tree _q60 = TREE_OPERAND (_p1, 0);
4924 : 0 : tree _q61 = TREE_OPERAND (_p1, 1);
4925 : 0 : if ((_q60 == _q20 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q20, 0) && types_match (_q60, _q20)))
4926 : : {
4927 : 0 : if ((_q61 == _q40 && ! TREE_SIDE_EFFECTS (_q61)) || (operand_equal_p (_q61, _q40, 0) && types_match (_q61, _q40)))
4928 : : {
4929 : 0 : {
4930 : 0 : tree captures[3] ATTRIBUTE_UNUSED = { _q20, _q40, _p1 };
4931 : 0 : tree res = generic_simplify_70 (loc, type, _p0, _p1, captures);
4932 : 0 : if (res) return res;
4933 : : }
4934 : : }
4935 : : }
4936 : 0 : if ((_q60 == _q40 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q40, 0) && types_match (_q60, _q40)))
4937 : : {
4938 : 0 : if ((_q61 == _q20 && ! TREE_SIDE_EFFECTS (_q61)) || (operand_equal_p (_q61, _q20, 0) && types_match (_q61, _q20)))
4939 : : {
4940 : 0 : {
4941 : 0 : tree captures[3] ATTRIBUTE_UNUSED = { _q20, _q40, _p1 };
4942 : 0 : tree res = generic_simplify_70 (loc, type, _p0, _p1, captures);
4943 : 0 : if (res) return res;
4944 : : }
4945 : : }
4946 : : }
4947 : : break;
4948 : : }
4949 : : default:;
4950 : : }
4951 : : break;
4952 : : }
4953 : 128580 : default:;
4954 : : }
4955 : 128580 : switch (TREE_CODE (_q20))
4956 : : {
4957 : 348 : case BIT_NOT_EXPR:
4958 : 348 : {
4959 : 348 : tree _q30 = TREE_OPERAND (_q20, 0);
4960 : 348 : switch (TREE_CODE (_p1))
4961 : : {
4962 : 54 : case BIT_XOR_EXPR:
4963 : 54 : {
4964 : 54 : tree _q60 = TREE_OPERAND (_p1, 0);
4965 : 54 : tree _q61 = TREE_OPERAND (_p1, 1);
4966 : 54 : if ((_q60 == _q21 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q21, 0) && types_match (_q60, _q21)))
4967 : : {
4968 : 18 : if ((_q61 == _q30 && ! TREE_SIDE_EFFECTS (_q61)) || (operand_equal_p (_q61, _q30, 0) && types_match (_q61, _q30)))
4969 : : {
4970 : 0 : {
4971 : 0 : tree captures[3] ATTRIBUTE_UNUSED = { _q21, _q30, _p1 };
4972 : 0 : tree res = generic_simplify_70 (loc, type, _p0, _p1, captures);
4973 : 0 : if (res) return res;
4974 : : }
4975 : : }
4976 : : }
4977 : 54 : if ((_q60 == _q30 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q30, 0) && types_match (_q60, _q30)))
4978 : : {
4979 : 9 : if ((_q61 == _q21 && ! TREE_SIDE_EFFECTS (_q61)) || (operand_equal_p (_q61, _q21, 0) && types_match (_q61, _q21)))
4980 : : {
4981 : 0 : {
4982 : 0 : tree captures[3] ATTRIBUTE_UNUSED = { _q21, _q30, _p1 };
4983 : 0 : tree res = generic_simplify_70 (loc, type, _p0, _p1, captures);
4984 : 0 : if (res) return res;
4985 : : }
4986 : : }
4987 : : }
4988 : : break;
4989 : : }
4990 : : default:;
4991 : : }
4992 : : break;
4993 : : }
4994 : : default:;
4995 : : }
4996 : : break;
4997 : : }
4998 : 1792102 : default:;
4999 : : }
5000 : 1792102 : switch (TREE_CODE (_p1))
5001 : : {
5002 : 416 : case BIT_NOT_EXPR:
5003 : 416 : {
5004 : 416 : tree _q30 = TREE_OPERAND (_p1, 0);
5005 : 416 : switch (TREE_CODE (_q30))
5006 : : {
5007 : 40 : case BIT_XOR_EXPR:
5008 : 40 : {
5009 : 40 : tree _q40 = TREE_OPERAND (_q30, 0);
5010 : 40 : tree _q41 = TREE_OPERAND (_q30, 1);
5011 : 40 : if ((_q40 == _p0 && ! TREE_SIDE_EFFECTS (_q40)) || (operand_equal_p (_q40, _p0, 0) && types_match (_q40, _p0)))
5012 : : {
5013 : 0 : {
5014 : 0 : tree captures[3] ATTRIBUTE_UNUSED = { _p0, _p1, _q41 };
5015 : 0 : tree res = generic_simplify_71 (loc, type, _p0, _p1, captures);
5016 : 0 : if (res) return res;
5017 : : }
5018 : : }
5019 : 40 : if ((_q41 == _p0 && ! TREE_SIDE_EFFECTS (_q41)) || (operand_equal_p (_q41, _p0, 0) && types_match (_q41, _p0)))
5020 : : {
5021 : 0 : {
5022 : 0 : tree captures[3] ATTRIBUTE_UNUSED = { _p0, _p1, _q40 };
5023 : 0 : tree res = generic_simplify_71 (loc, type, _p0, _p1, captures);
5024 : 0 : if (res) return res;
5025 : : }
5026 : : }
5027 : : break;
5028 : : }
5029 : : default:;
5030 : : }
5031 : : break;
5032 : : }
5033 : 1792102 : default:;
5034 : : }
5035 : 1792102 : switch (TREE_CODE (_p0))
5036 : : {
5037 : 21162 : case BIT_NOT_EXPR:
5038 : 21162 : {
5039 : 21162 : tree _q20 = TREE_OPERAND (_p0, 0);
5040 : 21162 : switch (TREE_CODE (_q20))
5041 : : {
5042 : 123 : case BIT_XOR_EXPR:
5043 : 123 : {
5044 : 123 : tree _q30 = TREE_OPERAND (_q20, 0);
5045 : 123 : tree _q31 = TREE_OPERAND (_q20, 1);
5046 : 123 : if ((_p1 == _q30 && ! TREE_SIDE_EFFECTS (_p1)) || (operand_equal_p (_p1, _q30, 0) && types_match (_p1, _q30)))
5047 : : {
5048 : 0 : {
5049 : 0 : tree captures[3] ATTRIBUTE_UNUSED = { _q30, _p0, _q31 };
5050 : 0 : tree res = generic_simplify_71 (loc, type, _p0, _p1, captures);
5051 : 0 : if (res) return res;
5052 : : }
5053 : : }
5054 : 123 : if ((_p1 == _q31 && ! TREE_SIDE_EFFECTS (_p1)) || (operand_equal_p (_p1, _q31, 0) && types_match (_p1, _q31)))
5055 : : {
5056 : 0 : {
5057 : 0 : tree captures[3] ATTRIBUTE_UNUSED = { _q31, _p0, _q30 };
5058 : 0 : tree res = generic_simplify_71 (loc, type, _p0, _p1, captures);
5059 : 0 : if (res) return res;
5060 : : }
5061 : : }
5062 : : break;
5063 : : }
5064 : : default:;
5065 : : }
5066 : : break;
5067 : : }
5068 : 1792102 : default:;
5069 : : }
5070 : 1792102 : {
5071 : 1792102 : tree _p1_pops[1];
5072 : 1792102 : if (tree_nop_convert (_p1, _p1_pops))
5073 : : {
5074 : 868593 : tree _q30 = _p1_pops[0];
5075 : 868593 : switch (TREE_CODE (_q30))
5076 : : {
5077 : 0 : case EQ_EXPR:
5078 : 0 : {
5079 : 0 : tree _q40 = TREE_OPERAND (_q30, 0);
5080 : 0 : tree _q41 = TREE_OPERAND (_q30, 1);
5081 : 0 : if ((_q40 == _p0 && ! TREE_SIDE_EFFECTS (_q40)) || (operand_equal_p (_q40, _p0, 0) && types_match (_q40, _p0)))
5082 : : {
5083 : 0 : {
5084 : 0 : tree captures[2] ATTRIBUTE_UNUSED = { _p0, _q41 };
5085 : 0 : tree res = generic_simplify_72 (loc, type, _p0, _p1, captures);
5086 : 0 : if (res) return res;
5087 : : }
5088 : : }
5089 : 0 : if ((_q41 == _p0 && ! TREE_SIDE_EFFECTS (_q41)) || (operand_equal_p (_q41, _p0, 0) && types_match (_q41, _p0)))
5090 : : {
5091 : 0 : {
5092 : 0 : tree captures[2] ATTRIBUTE_UNUSED = { _p0, _q40 };
5093 : 0 : tree res = generic_simplify_72 (loc, type, _p0, _p1, captures);
5094 : 0 : if (res) return res;
5095 : : }
5096 : : }
5097 : : break;
5098 : : }
5099 : : default:;
5100 : : }
5101 : : }
5102 : : }
5103 : 1792102 : {
5104 : 1792102 : tree _p0_pops[1];
5105 : 1792102 : if (tree_nop_convert (_p0, _p0_pops))
5106 : : {
5107 : 526206 : tree _q20 = _p0_pops[0];
5108 : 526206 : switch (TREE_CODE (_q20))
5109 : : {
5110 : 0 : case EQ_EXPR:
5111 : 0 : {
5112 : 0 : tree _q30 = TREE_OPERAND (_q20, 0);
5113 : 0 : tree _q31 = TREE_OPERAND (_q20, 1);
5114 : 0 : if ((_p1 == _q30 && ! TREE_SIDE_EFFECTS (_p1)) || (operand_equal_p (_p1, _q30, 0) && types_match (_p1, _q30)))
5115 : : {
5116 : 0 : {
5117 : 0 : tree captures[2] ATTRIBUTE_UNUSED = { _q30, _q31 };
5118 : 0 : tree res = generic_simplify_72 (loc, type, _p0, _p1, captures);
5119 : 0 : if (res) return res;
5120 : : }
5121 : : }
5122 : 0 : if ((_p1 == _q31 && ! TREE_SIDE_EFFECTS (_p1)) || (operand_equal_p (_p1, _q31, 0) && types_match (_p1, _q31)))
5123 : : {
5124 : 0 : {
5125 : 0 : tree captures[2] ATTRIBUTE_UNUSED = { _q31, _q30 };
5126 : 0 : tree res = generic_simplify_72 (loc, type, _p0, _p1, captures);
5127 : 0 : if (res) return res;
5128 : : }
5129 : : }
5130 : : break;
5131 : : }
5132 : : default:;
5133 : : }
5134 : : }
5135 : : }
5136 : 1792102 : switch (TREE_CODE (_p1))
5137 : : {
5138 : 554 : case EQ_EXPR:
5139 : 554 : {
5140 : 554 : tree _q30 = TREE_OPERAND (_p1, 0);
5141 : 554 : tree _q31 = TREE_OPERAND (_p1, 1);
5142 : 554 : if ((_q30 == _p0 && ! TREE_SIDE_EFFECTS (_q30)) || (operand_equal_p (_q30, _p0, 0) && types_match (_q30, _p0)))
5143 : : {
5144 : 0 : {
5145 : 0 : tree captures[2] ATTRIBUTE_UNUSED = { _p0, _q31 };
5146 : 0 : tree res = generic_simplify_72 (loc, type, _p0, _p1, captures);
5147 : 0 : if (res) return res;
5148 : : }
5149 : : }
5150 : 554 : if ((_q31 == _p0 && ! TREE_SIDE_EFFECTS (_q31)) || (operand_equal_p (_q31, _p0, 0) && types_match (_q31, _p0)))
5151 : : {
5152 : 8 : {
5153 : 8 : tree captures[2] ATTRIBUTE_UNUSED = { _p0, _q30 };
5154 : 8 : tree res = generic_simplify_72 (loc, type, _p0, _p1, captures);
5155 : 8 : if (res) return res;
5156 : : }
5157 : : }
5158 : : break;
5159 : : }
5160 : 1792102 : default:;
5161 : : }
5162 : 1792102 : switch (TREE_CODE (_p0))
5163 : : {
5164 : 475 : case EQ_EXPR:
5165 : 475 : {
5166 : 475 : tree _q20 = TREE_OPERAND (_p0, 0);
5167 : 475 : tree _q21 = TREE_OPERAND (_p0, 1);
5168 : 475 : if ((_p1 == _q20 && ! TREE_SIDE_EFFECTS (_p1)) || (operand_equal_p (_p1, _q20, 0) && types_match (_p1, _q20)))
5169 : : {
5170 : 8 : {
5171 : 8 : tree captures[2] ATTRIBUTE_UNUSED = { _q20, _q21 };
5172 : 8 : tree res = generic_simplify_72 (loc, type, _p0, _p1, captures);
5173 : 8 : if (res) return res;
5174 : : }
5175 : : }
5176 : 475 : if ((_p1 == _q21 && ! TREE_SIDE_EFFECTS (_p1)) || (operand_equal_p (_p1, _q21, 0) && types_match (_p1, _q21)))
5177 : : {
5178 : 0 : {
5179 : 0 : tree captures[2] ATTRIBUTE_UNUSED = { _q21, _q20 };
5180 : 0 : tree res = generic_simplify_72 (loc, type, _p0, _p1, captures);
5181 : 0 : if (res) return res;
5182 : : }
5183 : : }
5184 : : break;
5185 : : }
5186 : 1792102 : default:;
5187 : : }
5188 : 1792102 : switch (TREE_CODE (_p1))
5189 : : {
5190 : 205 : case BIT_XOR_EXPR:
5191 : 205 : {
5192 : 205 : tree _q30 = TREE_OPERAND (_p1, 0);
5193 : 205 : tree _q31 = TREE_OPERAND (_p1, 1);
5194 : 205 : {
5195 : 205 : tree captures[4] ATTRIBUTE_UNUSED = { _p0, _p1, _q30, _q31 };
5196 : 205 : tree res = generic_simplify_69 (loc, type, _p0, _p1, captures);
5197 : 205 : if (res) return res;
5198 : : }
5199 : 204 : {
5200 : 204 : tree captures[4] ATTRIBUTE_UNUSED = { _p0, _p1, _q31, _q30 };
5201 : 204 : tree res = generic_simplify_69 (loc, type, _p0, _p1, captures);
5202 : 204 : if (res) return res;
5203 : : }
5204 : 204 : break;
5205 : : }
5206 : 1792101 : default:;
5207 : : }
5208 : 1792101 : switch (TREE_CODE (_p0))
5209 : : {
5210 : 21266 : case PLUS_EXPR:
5211 : 21266 : {
5212 : 21266 : tree _q20 = TREE_OPERAND (_p0, 0);
5213 : 21266 : tree _q21 = TREE_OPERAND (_p0, 1);
5214 : 21266 : if (integer_minus_onep (_q21))
5215 : : {
5216 : 10186 : switch (TREE_CODE (_p1))
5217 : : {
5218 : 9 : case NEGATE_EXPR:
5219 : 9 : {
5220 : 9 : tree _q50 = TREE_OPERAND (_p1, 0);
5221 : 9 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
5222 : : {
5223 : 9 : {
5224 : 9 : tree captures[1] ATTRIBUTE_UNUSED = { _q20 };
5225 : 9 : tree res = generic_simplify_73 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR);
5226 : 9 : if (res) return res;
5227 : : }
5228 : : }
5229 : : break;
5230 : : }
5231 : : default:;
5232 : : }
5233 : : }
5234 : : break;
5235 : : }
5236 : 204 : case NEGATE_EXPR:
5237 : 204 : {
5238 : 204 : tree _q20 = TREE_OPERAND (_p0, 0);
5239 : 204 : switch (TREE_CODE (_p1))
5240 : : {
5241 : 8 : case PLUS_EXPR:
5242 : 8 : {
5243 : 8 : tree _q40 = TREE_OPERAND (_p1, 0);
5244 : 8 : tree _q41 = TREE_OPERAND (_p1, 1);
5245 : 8 : if ((_q40 == _q20 && ! TREE_SIDE_EFFECTS (_q40)) || (operand_equal_p (_q40, _q20, 0) && types_match (_q40, _q20)))
5246 : : {
5247 : 0 : if (integer_minus_onep (_q41))
5248 : : {
5249 : 0 : {
5250 : 0 : tree captures[1] ATTRIBUTE_UNUSED = { _q20 };
5251 : 0 : tree res = generic_simplify_74 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR);
5252 : 0 : if (res) return res;
5253 : : }
5254 : : }
5255 : : }
5256 : : break;
5257 : : }
5258 : 0 : case MINUS_EXPR:
5259 : 0 : {
5260 : 0 : tree _q40 = TREE_OPERAND (_p1, 0);
5261 : 0 : tree _q41 = TREE_OPERAND (_p1, 1);
5262 : 0 : if ((_q40 == _q20 && ! TREE_SIDE_EFFECTS (_q40)) || (operand_equal_p (_q40, _q20, 0) && types_match (_q40, _q20)))
5263 : : {
5264 : 0 : if (integer_onep (_q41))
5265 : : {
5266 : 0 : {
5267 : 0 : tree captures[1] ATTRIBUTE_UNUSED = { _q20 };
5268 : 0 : tree res = generic_simplify_75 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR);
5269 : 0 : if (res) return res;
5270 : : }
5271 : : }
5272 : : }
5273 : : break;
5274 : : }
5275 : : default:;
5276 : : }
5277 : : break;
5278 : : }
5279 : 10131 : case MINUS_EXPR:
5280 : 10131 : {
5281 : 10131 : tree _q20 = TREE_OPERAND (_p0, 0);
5282 : 10131 : tree _q21 = TREE_OPERAND (_p0, 1);
5283 : 10131 : if (integer_onep (_q21))
5284 : : {
5285 : 0 : switch (TREE_CODE (_p1))
5286 : : {
5287 : 0 : case NEGATE_EXPR:
5288 : 0 : {
5289 : 0 : tree _q50 = TREE_OPERAND (_p1, 0);
5290 : 0 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
5291 : : {
5292 : 0 : {
5293 : 0 : tree captures[1] ATTRIBUTE_UNUSED = { _q20 };
5294 : 0 : tree res = generic_simplify_76 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR);
5295 : 0 : if (res) return res;
5296 : : }
5297 : : }
5298 : : break;
5299 : : }
5300 : : default:;
5301 : : }
5302 : : }
5303 : : break;
5304 : : }
5305 : 17154 : case BIT_IOR_EXPR:
5306 : 17154 : {
5307 : 17154 : tree _q20 = TREE_OPERAND (_p0, 0);
5308 : 17154 : tree _q21 = TREE_OPERAND (_p0, 1);
5309 : 17154 : switch (TREE_CODE (_p1))
5310 : : {
5311 : 5115 : case BIT_AND_EXPR:
5312 : 5115 : {
5313 : 5115 : tree _q50 = TREE_OPERAND (_p1, 0);
5314 : 5115 : tree _q51 = TREE_OPERAND (_p1, 1);
5315 : 5115 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
5316 : : {
5317 : 0 : if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
5318 : : {
5319 : 0 : {
5320 : 0 : tree captures[3] ATTRIBUTE_UNUSED = { _p0, _q20, _q21 };
5321 : 0 : tree res = generic_simplify_77 (loc, type, _p0, _p1, captures, BIT_AND_EXPR);
5322 : 0 : if (res) return res;
5323 : : }
5324 : : }
5325 : : }
5326 : 5115 : if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
5327 : : {
5328 : 0 : if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
5329 : : {
5330 : 0 : {
5331 : 0 : tree captures[3] ATTRIBUTE_UNUSED = { _p0, _q20, _q21 };
5332 : 0 : tree res = generic_simplify_77 (loc, type, _p0, _p1, captures, BIT_AND_EXPR);
5333 : 0 : if (res) return res;
5334 : : }
5335 : : }
5336 : : }
5337 : : break;
5338 : : }
5339 : 2 : case BIT_XOR_EXPR:
5340 : 2 : {
5341 : 2 : tree _q50 = TREE_OPERAND (_p1, 0);
5342 : 2 : tree _q51 = TREE_OPERAND (_p1, 1);
5343 : 2 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
5344 : : {
5345 : 0 : if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
5346 : : {
5347 : 0 : {
5348 : 0 : tree captures[3] ATTRIBUTE_UNUSED = { _p0, _q20, _q21 };
5349 : 0 : tree res = generic_simplify_77 (loc, type, _p0, _p1, captures, BIT_XOR_EXPR);
5350 : 0 : if (res) return res;
5351 : : }
5352 : : }
5353 : : }
5354 : 2 : if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
5355 : : {
5356 : 0 : if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
5357 : : {
5358 : 0 : {
5359 : 0 : tree captures[3] ATTRIBUTE_UNUSED = { _p0, _q20, _q21 };
5360 : 0 : tree res = generic_simplify_77 (loc, type, _p0, _p1, captures, BIT_XOR_EXPR);
5361 : 0 : if (res) return res;
5362 : : }
5363 : : }
5364 : : }
5365 : : break;
5366 : : }
5367 : 1891 : CASE_CONVERT:
5368 : 1891 : {
5369 : 1891 : tree _q50 = TREE_OPERAND (_p1, 0);
5370 : 1891 : if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || operand_equal_p (_q50, _q21, 0))
5371 : : {
5372 : 0 : {
5373 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _q21 };
5374 : 0 : tree res = generic_simplify_78 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR);
5375 : 0 : if (res) return res;
5376 : : }
5377 : : }
5378 : 1891 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || operand_equal_p (_q50, _q20, 0))
5379 : : {
5380 : 0 : {
5381 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _q20 };
5382 : 0 : tree res = generic_simplify_78 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR);
5383 : 0 : if (res) return res;
5384 : : }
5385 : : }
5386 : : break;
5387 : : }
5388 : 17154 : default:;
5389 : : }
5390 : 17154 : if ((_p1 == _q21 && ! TREE_SIDE_EFFECTS (_p1)) || operand_equal_p (_p1, _q21, 0))
5391 : : {
5392 : 0 : {
5393 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _q21 };
5394 : 0 : tree res = generic_simplify_78 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR);
5395 : 0 : if (res) return res;
5396 : : }
5397 : : }
5398 : 17154 : if ((_p1 == _q20 && ! TREE_SIDE_EFFECTS (_p1)) || operand_equal_p (_p1, _q20, 0))
5399 : : {
5400 : 0 : {
5401 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _q20 };
5402 : 0 : tree res = generic_simplify_78 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR);
5403 : 0 : if (res) return res;
5404 : : }
5405 : : }
5406 : : break;
5407 : : }
5408 : 128580 : case BIT_AND_EXPR:
5409 : 128580 : {
5410 : 128580 : tree _q20 = TREE_OPERAND (_p0, 0);
5411 : 128580 : tree _q21 = TREE_OPERAND (_p0, 1);
5412 : 128580 : switch (TREE_CODE (_p1))
5413 : : {
5414 : 1 : case BIT_IOR_EXPR:
5415 : 1 : {
5416 : 1 : tree _q50 = TREE_OPERAND (_p1, 0);
5417 : 1 : tree _q51 = TREE_OPERAND (_p1, 1);
5418 : 1 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
5419 : : {
5420 : 1 : if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
5421 : : {
5422 : 0 : {
5423 : 0 : tree captures[3] ATTRIBUTE_UNUSED = { _p1, _q20, _q21 };
5424 : 0 : tree res = generic_simplify_79 (loc, type, _p0, _p1, captures, BIT_AND_EXPR);
5425 : 0 : if (res) return res;
5426 : : }
5427 : : }
5428 : : }
5429 : 1 : if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
5430 : : {
5431 : 0 : if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
5432 : : {
5433 : 0 : {
5434 : 0 : tree captures[3] ATTRIBUTE_UNUSED = { _p1, _q21, _q20 };
5435 : 0 : tree res = generic_simplify_79 (loc, type, _p0, _p1, captures, BIT_AND_EXPR);
5436 : 0 : if (res) return res;
5437 : : }
5438 : : }
5439 : : }
5440 : : break;
5441 : : }
5442 : 73 : case BIT_NOT_EXPR:
5443 : 73 : {
5444 : 73 : tree _q50 = TREE_OPERAND (_p1, 0);
5445 : 73 : switch (TREE_CODE (_q50))
5446 : : {
5447 : 0 : case BIT_XOR_EXPR:
5448 : 0 : {
5449 : 0 : tree _q60 = TREE_OPERAND (_q50, 0);
5450 : 0 : tree _q61 = TREE_OPERAND (_q50, 1);
5451 : 0 : if ((_q60 == _q20 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q20, 0) && types_match (_q60, _q20)))
5452 : : {
5453 : 0 : if ((_q61 == _q21 && ! TREE_SIDE_EFFECTS (_q61)) || (operand_equal_p (_q61, _q21, 0) && types_match (_q61, _q21)))
5454 : : {
5455 : 0 : {
5456 : 0 : tree captures[3] ATTRIBUTE_UNUSED = { _q20, _q21, _p1 };
5457 : 0 : tree res = generic_simplify_80 (loc, type, _p0, _p1, captures);
5458 : 0 : if (res) return res;
5459 : : }
5460 : : }
5461 : : }
5462 : 0 : if ((_q60 == _q21 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q21, 0) && types_match (_q60, _q21)))
5463 : : {
5464 : 0 : if ((_q61 == _q20 && ! TREE_SIDE_EFFECTS (_q61)) || (operand_equal_p (_q61, _q20, 0) && types_match (_q61, _q20)))
5465 : : {
5466 : 0 : {
5467 : 0 : tree captures[3] ATTRIBUTE_UNUSED = { _q21, _q20, _p1 };
5468 : 0 : tree res = generic_simplify_80 (loc, type, _p0, _p1, captures);
5469 : 0 : if (res) return res;
5470 : : }
5471 : : }
5472 : : }
5473 : : break;
5474 : : }
5475 : : default:;
5476 : : }
5477 : : break;
5478 : : }
5479 : 24 : case EQ_EXPR:
5480 : 24 : {
5481 : 24 : tree _q50 = TREE_OPERAND (_p1, 0);
5482 : 24 : tree _q51 = TREE_OPERAND (_p1, 1);
5483 : 24 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
5484 : : {
5485 : 8 : if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
5486 : : {
5487 : 8 : {
5488 : 8 : tree captures[3] ATTRIBUTE_UNUSED = { _q20, _q21, _p1 };
5489 : 8 : tree res = generic_simplify_81 (loc, type, _p0, _p1, captures);
5490 : 8 : if (res) return res;
5491 : : }
5492 : : }
5493 : : }
5494 : 24 : if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
5495 : : {
5496 : 0 : if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
5497 : : {
5498 : 0 : {
5499 : 0 : tree captures[3] ATTRIBUTE_UNUSED = { _q21, _q20, _p1 };
5500 : 0 : tree res = generic_simplify_81 (loc, type, _p0, _p1, captures);
5501 : 0 : if (res) return res;
5502 : : }
5503 : : }
5504 : : }
5505 : : break;
5506 : : }
5507 : 128580 : default:;
5508 : : }
5509 : 128580 : {
5510 : 128580 : tree _p1_pops[1];
5511 : 128580 : if (tree_nop_convert (_p1, _p1_pops))
5512 : : {
5513 : 261 : tree _q50 = _p1_pops[0];
5514 : 261 : switch (TREE_CODE (_q50))
5515 : : {
5516 : 0 : case EQ_EXPR:
5517 : 0 : {
5518 : 0 : tree _q60 = TREE_OPERAND (_q50, 0);
5519 : 0 : tree _q61 = TREE_OPERAND (_q50, 1);
5520 : 0 : if ((_q60 == _q20 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q20, 0) && types_match (_q60, _q20)))
5521 : : {
5522 : 0 : if ((_q61 == _q21 && ! TREE_SIDE_EFFECTS (_q61)) || (operand_equal_p (_q61, _q21, 0) && types_match (_q61, _q21)))
5523 : : {
5524 : 0 : {
5525 : 0 : tree captures[3] ATTRIBUTE_UNUSED = { _q20, _q21, _p1 };
5526 : 0 : tree res = generic_simplify_81 (loc, type, _p0, _p1, captures);
5527 : 0 : if (res) return res;
5528 : : }
5529 : : }
5530 : : }
5531 : 0 : if ((_q60 == _q21 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q21, 0) && types_match (_q60, _q21)))
5532 : : {
5533 : 0 : if ((_q61 == _q20 && ! TREE_SIDE_EFFECTS (_q61)) || (operand_equal_p (_q61, _q20, 0) && types_match (_q61, _q20)))
5534 : : {
5535 : 0 : {
5536 : 0 : tree captures[3] ATTRIBUTE_UNUSED = { _q21, _q20, _p1 };
5537 : 0 : tree res = generic_simplify_81 (loc, type, _p0, _p1, captures);
5538 : 0 : if (res) return res;
5539 : : }
5540 : : }
5541 : : }
5542 : : break;
5543 : : }
5544 : : default:;
5545 : : }
5546 : : }
5547 : : }
5548 : 128580 : break;
5549 : : }
5550 : 2930 : case BIT_XOR_EXPR:
5551 : 2930 : {
5552 : 2930 : tree _q20 = TREE_OPERAND (_p0, 0);
5553 : 2930 : tree _q21 = TREE_OPERAND (_p0, 1);
5554 : 2930 : switch (TREE_CODE (_p1))
5555 : : {
5556 : 0 : case BIT_IOR_EXPR:
5557 : 0 : {
5558 : 0 : tree _q50 = TREE_OPERAND (_p1, 0);
5559 : 0 : tree _q51 = TREE_OPERAND (_p1, 1);
5560 : 0 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
5561 : : {
5562 : 0 : if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
5563 : : {
5564 : 0 : {
5565 : 0 : tree captures[3] ATTRIBUTE_UNUSED = { _p1, _q20, _q21 };
5566 : 0 : tree res = generic_simplify_79 (loc, type, _p0, _p1, captures, BIT_XOR_EXPR);
5567 : 0 : if (res) return res;
5568 : : }
5569 : : }
5570 : : }
5571 : 0 : if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
5572 : : {
5573 : 0 : if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
5574 : : {
5575 : 0 : {
5576 : 0 : tree captures[3] ATTRIBUTE_UNUSED = { _p1, _q21, _q20 };
5577 : 0 : tree res = generic_simplify_79 (loc, type, _p0, _p1, captures, BIT_XOR_EXPR);
5578 : 0 : if (res) return res;
5579 : : }
5580 : : }
5581 : : }
5582 : : break;
5583 : : }
5584 : 41 : case BIT_XOR_EXPR:
5585 : 41 : {
5586 : 41 : tree _q50 = TREE_OPERAND (_p1, 0);
5587 : 41 : tree _q51 = TREE_OPERAND (_p1, 1);
5588 : 41 : switch (TREE_CODE (_q50))
5589 : : {
5590 : 2 : case BIT_XOR_EXPR:
5591 : 2 : {
5592 : 2 : tree _q60 = TREE_OPERAND (_q50, 0);
5593 : 2 : tree _q61 = TREE_OPERAND (_q50, 1);
5594 : 2 : if ((_q60 == _q21 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q21, 0) && types_match (_q60, _q21)))
5595 : : {
5596 : 1 : if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
5597 : : {
5598 : 1 : {
5599 : 1 : tree captures[4] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _q61 };
5600 : 1 : tree res = generic_simplify_82 (loc, type, _p0, _p1, captures);
5601 : 1 : if (res) return res;
5602 : : }
5603 : : }
5604 : : }
5605 : 1 : if ((_q61 == _q21 && ! TREE_SIDE_EFFECTS (_q61)) || (operand_equal_p (_q61, _q21, 0) && types_match (_q61, _q21)))
5606 : : {
5607 : 0 : if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
5608 : : {
5609 : 0 : {
5610 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _q60 };
5611 : 0 : tree res = generic_simplify_82 (loc, type, _p0, _p1, captures);
5612 : 0 : if (res) return res;
5613 : : }
5614 : : }
5615 : : }
5616 : 1 : if ((_q60 == _q20 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q20, 0) && types_match (_q60, _q20)))
5617 : : {
5618 : 1 : if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
5619 : : {
5620 : 1 : {
5621 : 1 : tree captures[4] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _q61 };
5622 : 1 : tree res = generic_simplify_82 (loc, type, _p0, _p1, captures);
5623 : 1 : if (res) return res;
5624 : : }
5625 : : }
5626 : : }
5627 : 0 : if ((_q61 == _q20 && ! TREE_SIDE_EFFECTS (_q61)) || (operand_equal_p (_q61, _q20, 0) && types_match (_q61, _q20)))
5628 : : {
5629 : 0 : if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
5630 : : {
5631 : 0 : {
5632 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _q60 };
5633 : 0 : tree res = generic_simplify_82 (loc, type, _p0, _p1, captures);
5634 : 0 : if (res) return res;
5635 : : }
5636 : : }
5637 : : }
5638 : : break;
5639 : : }
5640 : 39 : default:;
5641 : : }
5642 : 39 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
5643 : : {
5644 : 3 : switch (TREE_CODE (_q51))
5645 : : {
5646 : 0 : case BIT_XOR_EXPR:
5647 : 0 : {
5648 : 0 : tree _q70 = TREE_OPERAND (_q51, 0);
5649 : 0 : tree _q71 = TREE_OPERAND (_q51, 1);
5650 : 0 : if ((_q70 == _q21 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q21, 0) && types_match (_q70, _q21)))
5651 : : {
5652 : 0 : {
5653 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _q71 };
5654 : 0 : tree res = generic_simplify_82 (loc, type, _p0, _p1, captures);
5655 : 0 : if (res) return res;
5656 : : }
5657 : : }
5658 : 0 : if ((_q71 == _q21 && ! TREE_SIDE_EFFECTS (_q71)) || (operand_equal_p (_q71, _q21, 0) && types_match (_q71, _q21)))
5659 : : {
5660 : 0 : {
5661 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _q70 };
5662 : 0 : tree res = generic_simplify_82 (loc, type, _p0, _p1, captures);
5663 : 0 : if (res) return res;
5664 : : }
5665 : : }
5666 : : break;
5667 : : }
5668 : : default:;
5669 : : }
5670 : : }
5671 : 39 : if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
5672 : : {
5673 : 0 : switch (TREE_CODE (_q51))
5674 : : {
5675 : 0 : case BIT_XOR_EXPR:
5676 : 0 : {
5677 : 0 : tree _q70 = TREE_OPERAND (_q51, 0);
5678 : 0 : tree _q71 = TREE_OPERAND (_q51, 1);
5679 : 0 : if ((_q70 == _q20 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q20, 0) && types_match (_q70, _q20)))
5680 : : {
5681 : 0 : {
5682 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _q71 };
5683 : 0 : tree res = generic_simplify_82 (loc, type, _p0, _p1, captures);
5684 : 0 : if (res) return res;
5685 : : }
5686 : : }
5687 : 0 : if ((_q71 == _q20 && ! TREE_SIDE_EFFECTS (_q71)) || (operand_equal_p (_q71, _q20, 0) && types_match (_q71, _q20)))
5688 : : {
5689 : 0 : {
5690 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _q70 };
5691 : 0 : tree res = generic_simplify_82 (loc, type, _p0, _p1, captures);
5692 : 0 : if (res) return res;
5693 : : }
5694 : : }
5695 : : break;
5696 : : }
5697 : : default:;
5698 : : }
5699 : : }
5700 : : break;
5701 : : }
5702 : 2928 : default:;
5703 : : }
5704 : 2928 : switch (TREE_CODE (_q20))
5705 : : {
5706 : 18 : case BIT_XOR_EXPR:
5707 : 18 : {
5708 : 18 : tree _q30 = TREE_OPERAND (_q20, 0);
5709 : 18 : tree _q31 = TREE_OPERAND (_q20, 1);
5710 : 18 : switch (TREE_CODE (_p1))
5711 : : {
5712 : 0 : case BIT_XOR_EXPR:
5713 : 0 : {
5714 : 0 : tree _q70 = TREE_OPERAND (_p1, 0);
5715 : 0 : tree _q71 = TREE_OPERAND (_p1, 1);
5716 : 0 : if ((_q70 == _q21 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q21, 0) && types_match (_q70, _q21)))
5717 : : {
5718 : 0 : if ((_q71 == _q30 && ! TREE_SIDE_EFFECTS (_q71)) || (operand_equal_p (_q71, _q30, 0) && types_match (_q71, _q30)))
5719 : : {
5720 : 0 : {
5721 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _p1, _q21, _q30, _q31 };
5722 : 0 : tree res = generic_simplify_83 (loc, type, _p0, _p1, captures);
5723 : 0 : if (res) return res;
5724 : : }
5725 : : }
5726 : 0 : if ((_q71 == _q31 && ! TREE_SIDE_EFFECTS (_q71)) || (operand_equal_p (_q71, _q31, 0) && types_match (_q71, _q31)))
5727 : : {
5728 : 0 : {
5729 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _p1, _q21, _q31, _q30 };
5730 : 0 : tree res = generic_simplify_83 (loc, type, _p0, _p1, captures);
5731 : 0 : if (res) return res;
5732 : : }
5733 : : }
5734 : : }
5735 : 0 : if ((_q70 == _q30 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q30, 0) && types_match (_q70, _q30)))
5736 : : {
5737 : 0 : if ((_q71 == _q21 && ! TREE_SIDE_EFFECTS (_q71)) || (operand_equal_p (_q71, _q21, 0) && types_match (_q71, _q21)))
5738 : : {
5739 : 0 : {
5740 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _p1, _q21, _q30, _q31 };
5741 : 0 : tree res = generic_simplify_83 (loc, type, _p0, _p1, captures);
5742 : 0 : if (res) return res;
5743 : : }
5744 : : }
5745 : : }
5746 : 0 : if ((_q70 == _q31 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q31, 0) && types_match (_q70, _q31)))
5747 : : {
5748 : 0 : if ((_q71 == _q21 && ! TREE_SIDE_EFFECTS (_q71)) || (operand_equal_p (_q71, _q21, 0) && types_match (_q71, _q21)))
5749 : : {
5750 : 0 : {
5751 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _p1, _q21, _q31, _q30 };
5752 : 0 : tree res = generic_simplify_83 (loc, type, _p0, _p1, captures);
5753 : 0 : if (res) return res;
5754 : : }
5755 : : }
5756 : : }
5757 : : break;
5758 : : }
5759 : : default:;
5760 : : }
5761 : : break;
5762 : : }
5763 : 2928 : default:;
5764 : : }
5765 : 2928 : switch (TREE_CODE (_q21))
5766 : : {
5767 : 0 : case BIT_XOR_EXPR:
5768 : 0 : {
5769 : 0 : tree _q40 = TREE_OPERAND (_q21, 0);
5770 : 0 : tree _q41 = TREE_OPERAND (_q21, 1);
5771 : 0 : switch (TREE_CODE (_p1))
5772 : : {
5773 : 0 : case BIT_XOR_EXPR:
5774 : 0 : {
5775 : 0 : tree _q70 = TREE_OPERAND (_p1, 0);
5776 : 0 : tree _q71 = TREE_OPERAND (_p1, 1);
5777 : 0 : if ((_q70 == _q20 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q20, 0) && types_match (_q70, _q20)))
5778 : : {
5779 : 0 : if ((_q71 == _q40 && ! TREE_SIDE_EFFECTS (_q71)) || (operand_equal_p (_q71, _q40, 0) && types_match (_q71, _q40)))
5780 : : {
5781 : 0 : {
5782 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _p1, _q20, _q40, _q41 };
5783 : 0 : tree res = generic_simplify_83 (loc, type, _p0, _p1, captures);
5784 : 0 : if (res) return res;
5785 : : }
5786 : : }
5787 : 0 : if ((_q71 == _q41 && ! TREE_SIDE_EFFECTS (_q71)) || (operand_equal_p (_q71, _q41, 0) && types_match (_q71, _q41)))
5788 : : {
5789 : 0 : {
5790 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _p1, _q20, _q41, _q40 };
5791 : 0 : tree res = generic_simplify_83 (loc, type, _p0, _p1, captures);
5792 : 0 : if (res) return res;
5793 : : }
5794 : : }
5795 : : }
5796 : 0 : if ((_q70 == _q40 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q40, 0) && types_match (_q70, _q40)))
5797 : : {
5798 : 0 : if ((_q71 == _q20 && ! TREE_SIDE_EFFECTS (_q71)) || (operand_equal_p (_q71, _q20, 0) && types_match (_q71, _q20)))
5799 : : {
5800 : 0 : {
5801 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _p1, _q20, _q40, _q41 };
5802 : 0 : tree res = generic_simplify_83 (loc, type, _p0, _p1, captures);
5803 : 0 : if (res) return res;
5804 : : }
5805 : : }
5806 : : }
5807 : 0 : if ((_q70 == _q41 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q41, 0) && types_match (_q70, _q41)))
5808 : : {
5809 : 0 : if ((_q71 == _q20 && ! TREE_SIDE_EFFECTS (_q71)) || (operand_equal_p (_q71, _q20, 0) && types_match (_q71, _q20)))
5810 : : {
5811 : 0 : {
5812 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _p1, _q20, _q41, _q40 };
5813 : 0 : tree res = generic_simplify_83 (loc, type, _p0, _p1, captures);
5814 : 0 : if (res) return res;
5815 : : }
5816 : : }
5817 : : }
5818 : : break;
5819 : : }
5820 : : default:;
5821 : : }
5822 : : break;
5823 : : }
5824 : : default:;
5825 : : }
5826 : : break;
5827 : : }
5828 : 21161 : case BIT_NOT_EXPR:
5829 : 21161 : {
5830 : 21161 : tree _q20 = TREE_OPERAND (_p0, 0);
5831 : 21161 : switch (TREE_CODE (_q20))
5832 : : {
5833 : 123 : case BIT_XOR_EXPR:
5834 : 123 : {
5835 : 123 : tree _q30 = TREE_OPERAND (_q20, 0);
5836 : 123 : tree _q31 = TREE_OPERAND (_q20, 1);
5837 : 123 : switch (TREE_CODE (_p1))
5838 : : {
5839 : 44 : case BIT_AND_EXPR:
5840 : 44 : {
5841 : 44 : tree _q60 = TREE_OPERAND (_p1, 0);
5842 : 44 : tree _q61 = TREE_OPERAND (_p1, 1);
5843 : 44 : if ((_q60 == _q30 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q30, 0) && types_match (_q60, _q30)))
5844 : : {
5845 : 6 : if ((_q61 == _q31 && ! TREE_SIDE_EFFECTS (_q61)) || (operand_equal_p (_q61, _q31, 0) && types_match (_q61, _q31)))
5846 : : {
5847 : 0 : {
5848 : 0 : tree captures[3] ATTRIBUTE_UNUSED = { _q30, _q31, _p0 };
5849 : 0 : tree res = generic_simplify_84 (loc, type, _p0, _p1, captures);
5850 : 0 : if (res) return res;
5851 : : }
5852 : : }
5853 : : }
5854 : 44 : if ((_q60 == _q31 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q31, 0) && types_match (_q60, _q31)))
5855 : : {
5856 : 9 : if ((_q61 == _q30 && ! TREE_SIDE_EFFECTS (_q61)) || (operand_equal_p (_q61, _q30, 0) && types_match (_q61, _q30)))
5857 : : {
5858 : 0 : {
5859 : 0 : tree captures[3] ATTRIBUTE_UNUSED = { _q30, _q31, _p0 };
5860 : 0 : tree res = generic_simplify_84 (loc, type, _p0, _p1, captures);
5861 : 0 : if (res) return res;
5862 : : }
5863 : : }
5864 : : }
5865 : : break;
5866 : : }
5867 : : default:;
5868 : : }
5869 : : break;
5870 : : }
5871 : : default:;
5872 : : }
5873 : : break;
5874 : : }
5875 : 475 : case EQ_EXPR:
5876 : 475 : {
5877 : 475 : tree _q20 = TREE_OPERAND (_p0, 0);
5878 : 475 : tree _q21 = TREE_OPERAND (_p0, 1);
5879 : 475 : switch (TREE_CODE (_p1))
5880 : : {
5881 : 8 : case BIT_AND_EXPR:
5882 : 8 : {
5883 : 8 : tree _q50 = TREE_OPERAND (_p1, 0);
5884 : 8 : tree _q51 = TREE_OPERAND (_p1, 1);
5885 : 8 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
5886 : : {
5887 : 0 : if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
5888 : : {
5889 : 0 : {
5890 : 0 : tree captures[3] ATTRIBUTE_UNUSED = { _q20, _q21, _p0 };
5891 : 0 : tree res = generic_simplify_85 (loc, type, _p0, _p1, captures);
5892 : 0 : if (res) return res;
5893 : : }
5894 : : }
5895 : : }
5896 : 8 : if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
5897 : : {
5898 : 0 : if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
5899 : : {
5900 : 0 : {
5901 : 0 : tree captures[3] ATTRIBUTE_UNUSED = { _q20, _q21, _p0 };
5902 : 0 : tree res = generic_simplify_85 (loc, type, _p0, _p1, captures);
5903 : 0 : if (res) return res;
5904 : : }
5905 : : }
5906 : : }
5907 : : break;
5908 : : }
5909 : : default:;
5910 : : }
5911 : : break;
5912 : : }
5913 : 1792090 : default:;
5914 : : }
5915 : 1792090 : {
5916 : 1792090 : tree _p0_pops[1];
5917 : 1792090 : if (tree_nop_convert (_p0, _p0_pops))
5918 : : {
5919 : 526206 : tree _q20 = _p0_pops[0];
5920 : 526206 : switch (TREE_CODE (_q20))
5921 : : {
5922 : 0 : case EQ_EXPR:
5923 : 0 : {
5924 : 0 : tree _q30 = TREE_OPERAND (_q20, 0);
5925 : 0 : tree _q31 = TREE_OPERAND (_q20, 1);
5926 : 0 : switch (TREE_CODE (_p1))
5927 : : {
5928 : 0 : case BIT_AND_EXPR:
5929 : 0 : {
5930 : 0 : tree _q60 = TREE_OPERAND (_p1, 0);
5931 : 0 : tree _q61 = TREE_OPERAND (_p1, 1);
5932 : 0 : if ((_q60 == _q30 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q30, 0) && types_match (_q60, _q30)))
5933 : : {
5934 : 0 : if ((_q61 == _q31 && ! TREE_SIDE_EFFECTS (_q61)) || (operand_equal_p (_q61, _q31, 0) && types_match (_q61, _q31)))
5935 : : {
5936 : 0 : {
5937 : 0 : tree captures[3] ATTRIBUTE_UNUSED = { _q30, _q31, _p0 };
5938 : 0 : tree res = generic_simplify_85 (loc, type, _p0, _p1, captures);
5939 : 0 : if (res) return res;
5940 : : }
5941 : : }
5942 : : }
5943 : 0 : if ((_q60 == _q31 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q31, 0) && types_match (_q60, _q31)))
5944 : : {
5945 : 0 : if ((_q61 == _q30 && ! TREE_SIDE_EFFECTS (_q61)) || (operand_equal_p (_q61, _q30, 0) && types_match (_q61, _q30)))
5946 : : {
5947 : 0 : {
5948 : 0 : tree captures[3] ATTRIBUTE_UNUSED = { _q30, _q31, _p0 };
5949 : 0 : tree res = generic_simplify_85 (loc, type, _p0, _p1, captures);
5950 : 0 : if (res) return res;
5951 : : }
5952 : : }
5953 : : }
5954 : : break;
5955 : : }
5956 : : default:;
5957 : : }
5958 : : break;
5959 : : }
5960 : : default:;
5961 : : }
5962 : : }
5963 : : }
5964 : 1792090 : if (integer_all_onesp (_p1))
5965 : : {
5966 : 91 : {
5967 : 91 : tree captures[2] ATTRIBUTE_UNUSED = { _p0, _p1 };
5968 : 91 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1335;
5969 : 91 : {
5970 : 91 : tree _r;
5971 : 91 : _r = captures[1];
5972 : 91 : if (TREE_SIDE_EFFECTS (captures[0]))
5973 : 0 : _r = build2_loc (loc, COMPOUND_EXPR, type, fold_ignored_result (captures[0]), _r);
5974 : 91 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 942, __FILE__, __LINE__, true);
5975 : 91 : return _r;
5976 : : }
5977 : 0 : next_after_fail1335:;
5978 : : }
5979 : : }
5980 : 1791999 : if (integer_zerop (_p1))
5981 : : {
5982 : 0 : {
5983 : 0 : tree captures[1] ATTRIBUTE_UNUSED = { _p0 };
5984 : 0 : if (TREE_SIDE_EFFECTS (_p1)) goto next_after_fail1336;
5985 : 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1336;
5986 : 0 : {
5987 : 0 : tree _r;
5988 : 0 : _r = captures[0];
5989 : 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 943, __FILE__, __LINE__, true);
5990 : 0 : return _r;
5991 : : }
5992 : : next_after_fail1336:;
5993 : : }
5994 : : }
5995 : 1791999 : switch (TREE_CODE (_p0))
5996 : : {
5997 : 528948 : CASE_CONVERT:
5998 : 528948 : {
5999 : 528948 : tree _q20 = TREE_OPERAND (_p0, 0);
6000 : 528948 : switch (TREE_CODE (_p1))
6001 : : {
6002 : 504920 : CASE_CONVERT:
6003 : 504920 : {
6004 : 504920 : tree _q40 = TREE_OPERAND (_p1, 0);
6005 : 504920 : {
6006 : 504920 : tree _q40_pops[1];
6007 : 504920 : if (tree_maybe_bit_not (_q40, _q40_pops))
6008 : : {
6009 : 9 : tree _q50 = _q40_pops[0];
6010 : 9 : {
6011 : 9 : tree captures[2] ATTRIBUTE_UNUSED = { _q20, _q50 };
6012 : 9 : tree res = generic_simplify_86 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR);
6013 : 9 : if (res) return res;
6014 : : }
6015 : : }
6016 : : }
6017 : 504920 : break;
6018 : : }
6019 : 528948 : default:;
6020 : : }
6021 : 528948 : {
6022 : 528948 : tree _q20_pops[1];
6023 : 528948 : if (tree_maybe_bit_not (_q20, _q20_pops))
6024 : : {
6025 : 91 : tree _q30 = _q20_pops[0];
6026 : 91 : switch (TREE_CODE (_p1))
6027 : : {
6028 : 19 : CASE_CONVERT:
6029 : 19 : {
6030 : 19 : tree _q50 = TREE_OPERAND (_p1, 0);
6031 : 19 : {
6032 : 19 : tree captures[2] ATTRIBUTE_UNUSED = { _q50, _q30 };
6033 : 19 : tree res = generic_simplify_86 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR);
6034 : 19 : if (res) return res;
6035 : : }
6036 : 16 : break;
6037 : : }
6038 : : default:;
6039 : : }
6040 : : }
6041 : : }
6042 : 528945 : break;
6043 : : }
6044 : 1791996 : default:;
6045 : : }
6046 : 1791996 : {
6047 : 1791996 : tree _p1_pops[1];
6048 : 1791996 : if (tree_maybe_bit_not (_p1, _p1_pops))
6049 : : {
6050 : 162936 : tree _q30 = _p1_pops[0];
6051 : 162936 : {
6052 : 162936 : tree captures[2] ATTRIBUTE_UNUSED = { _p0, _q30 };
6053 : 162936 : tree res = generic_simplify_86 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR);
6054 : 162936 : if (res) return res;
6055 : : }
6056 : : }
6057 : : }
6058 : 1791984 : {
6059 : 1791984 : tree _p0_pops[1];
6060 : 1791984 : if (tree_maybe_bit_not (_p0, _p0_pops))
6061 : : {
6062 : 22487 : tree _q20 = _p0_pops[0];
6063 : 22487 : {
6064 : 22487 : tree captures[2] ATTRIBUTE_UNUSED = { _p1, _q20 };
6065 : 22487 : tree res = generic_simplify_86 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR);
6066 : 22487 : if (res) return res;
6067 : : }
6068 : : }
6069 : : }
6070 : 1791973 : if ((_p1 == _p0 && ! TREE_SIDE_EFFECTS (_p1)) || (operand_equal_p (_p1, _p0, 0) && types_match (_p1, _p0)))
6071 : : {
6072 : 122 : {
6073 : 122 : tree captures[1] ATTRIBUTE_UNUSED = { _p0 };
6074 : 122 : tree res = generic_simplify_87 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR);
6075 : 122 : if (res) return res;
6076 : : }
6077 : : }
6078 : 1791851 : switch (TREE_CODE (_p1))
6079 : : {
6080 : 411 : case BIT_NOT_EXPR:
6081 : 411 : {
6082 : 411 : tree _q30 = TREE_OPERAND (_p1, 0);
6083 : 411 : switch (TREE_CODE (_q30))
6084 : : {
6085 : 60 : case BIT_IOR_EXPR:
6086 : 60 : {
6087 : 60 : tree _q40 = TREE_OPERAND (_q30, 0);
6088 : 60 : tree _q41 = TREE_OPERAND (_q30, 1);
6089 : 60 : if ((_q40 == _p0 && ! TREE_SIDE_EFFECTS (_q40)) || (operand_equal_p (_q40, _p0, 0) && types_match (_q40, _p0)))
6090 : : {
6091 : 0 : {
6092 : 0 : tree captures[3] ATTRIBUTE_UNUSED = { _p0, _q30, _q41 };
6093 : 0 : tree res = generic_simplify_88 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR);
6094 : 0 : if (res) return res;
6095 : : }
6096 : : }
6097 : 60 : if ((_q41 == _p0 && ! TREE_SIDE_EFFECTS (_q41)) || (operand_equal_p (_q41, _p0, 0) && types_match (_q41, _p0)))
6098 : : {
6099 : 0 : {
6100 : 0 : tree captures[3] ATTRIBUTE_UNUSED = { _p0, _q30, _q40 };
6101 : 0 : tree res = generic_simplify_88 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR);
6102 : 0 : if (res) return res;
6103 : : }
6104 : : }
6105 : : break;
6106 : : }
6107 : : default:;
6108 : : }
6109 : : break;
6110 : : }
6111 : 1791851 : default:;
6112 : : }
6113 : 1791851 : switch (TREE_CODE (_p0))
6114 : : {
6115 : 21150 : case BIT_NOT_EXPR:
6116 : 21150 : {
6117 : 21150 : tree _q20 = TREE_OPERAND (_p0, 0);
6118 : 21150 : switch (TREE_CODE (_q20))
6119 : : {
6120 : 101 : case BIT_IOR_EXPR:
6121 : 101 : {
6122 : 101 : tree _q30 = TREE_OPERAND (_q20, 0);
6123 : 101 : tree _q31 = TREE_OPERAND (_q20, 1);
6124 : 101 : if ((_p1 == _q30 && ! TREE_SIDE_EFFECTS (_p1)) || (operand_equal_p (_p1, _q30, 0) && types_match (_p1, _q30)))
6125 : : {
6126 : 5 : {
6127 : 5 : tree captures[3] ATTRIBUTE_UNUSED = { _q30, _q20, _q31 };
6128 : 5 : tree res = generic_simplify_88 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR);
6129 : 5 : if (res) return res;
6130 : : }
6131 : : }
6132 : 96 : if ((_p1 == _q31 && ! TREE_SIDE_EFFECTS (_p1)) || (operand_equal_p (_p1, _q31, 0) && types_match (_p1, _q31)))
6133 : : {
6134 : 3 : {
6135 : 3 : tree captures[3] ATTRIBUTE_UNUSED = { _q31, _q20, _q30 };
6136 : 3 : tree res = generic_simplify_88 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR);
6137 : 3 : if (res) return res;
6138 : : }
6139 : : }
6140 : 93 : switch (TREE_CODE (_p1))
6141 : : {
6142 : 20 : case BIT_AND_EXPR:
6143 : 20 : {
6144 : 20 : tree _q60 = TREE_OPERAND (_p1, 0);
6145 : 20 : tree _q61 = TREE_OPERAND (_p1, 1);
6146 : 20 : switch (TREE_CODE (_q60))
6147 : : {
6148 : 1 : case BIT_NOT_EXPR:
6149 : 1 : {
6150 : 1 : tree _q70 = TREE_OPERAND (_q60, 0);
6151 : 1 : if ((_q70 == _q30 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q30, 0) && types_match (_q70, _q30)))
6152 : : {
6153 : 1 : if ((_q61 == _q31 && ! TREE_SIDE_EFFECTS (_q61)) || (operand_equal_p (_q61, _q31, 0) && types_match (_q61, _q31)))
6154 : : {
6155 : 1 : {
6156 : 1 : tree captures[3] ATTRIBUTE_UNUSED = { _q60, _q30, _q31 };
6157 : 1 : tree res = generic_simplify_89 (loc, type, _p0, _p1, captures);
6158 : 1 : if (res) return res;
6159 : : }
6160 : : }
6161 : : }
6162 : 0 : if ((_q70 == _q31 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q31, 0) && types_match (_q70, _q31)))
6163 : : {
6164 : 0 : if ((_q61 == _q30 && ! TREE_SIDE_EFFECTS (_q61)) || (operand_equal_p (_q61, _q30, 0) && types_match (_q61, _q30)))
6165 : : {
6166 : 0 : {
6167 : 0 : tree captures[3] ATTRIBUTE_UNUSED = { _q60, _q31, _q30 };
6168 : 0 : tree res = generic_simplify_89 (loc, type, _p0, _p1, captures);
6169 : 0 : if (res) return res;
6170 : : }
6171 : : }
6172 : : }
6173 : : break;
6174 : : }
6175 : 19 : default:;
6176 : : }
6177 : 19 : if ((_q60 == _q31 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q31, 0) && types_match (_q60, _q31)))
6178 : : {
6179 : 3 : switch (TREE_CODE (_q61))
6180 : : {
6181 : 0 : case BIT_NOT_EXPR:
6182 : 0 : {
6183 : 0 : tree _q80 = TREE_OPERAND (_q61, 0);
6184 : 0 : if ((_q80 == _q30 && ! TREE_SIDE_EFFECTS (_q80)) || (operand_equal_p (_q80, _q30, 0) && types_match (_q80, _q30)))
6185 : : {
6186 : 0 : {
6187 : 0 : tree captures[3] ATTRIBUTE_UNUSED = { _q61, _q30, _q31 };
6188 : 0 : tree res = generic_simplify_89 (loc, type, _p0, _p1, captures);
6189 : 0 : if (res) return res;
6190 : : }
6191 : : }
6192 : : break;
6193 : : }
6194 : : default:;
6195 : : }
6196 : : }
6197 : 19 : if ((_q60 == _q30 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q30, 0) && types_match (_q60, _q30)))
6198 : : {
6199 : 7 : switch (TREE_CODE (_q61))
6200 : : {
6201 : 0 : case BIT_NOT_EXPR:
6202 : 0 : {
6203 : 0 : tree _q80 = TREE_OPERAND (_q61, 0);
6204 : 0 : if ((_q80 == _q31 && ! TREE_SIDE_EFFECTS (_q80)) || (operand_equal_p (_q80, _q31, 0) && types_match (_q80, _q31)))
6205 : : {
6206 : 0 : {
6207 : 0 : tree captures[3] ATTRIBUTE_UNUSED = { _q61, _q31, _q30 };
6208 : 0 : tree res = generic_simplify_89 (loc, type, _p0, _p1, captures);
6209 : 0 : if (res) return res;
6210 : : }
6211 : : }
6212 : : break;
6213 : : }
6214 : 7 : default:;
6215 : : }
6216 : 7 : if ((_q61 == _q31 && ! TREE_SIDE_EFFECTS (_q61)) || (operand_equal_p (_q61, _q31, 0) && types_match (_q61, _q31)))
6217 : : {
6218 : 1 : {
6219 : 1 : tree captures[5] ATTRIBUTE_UNUSED = { _p1, _q30, _q31, _p0, _q20 };
6220 : 1 : tree res = generic_simplify_90 (loc, type, _p0, _p1, captures);
6221 : 1 : if (res) return res;
6222 : : }
6223 : : }
6224 : : }
6225 : : break;
6226 : : }
6227 : 27 : case BIT_XOR_EXPR:
6228 : 27 : {
6229 : 27 : tree _q60 = TREE_OPERAND (_p1, 0);
6230 : 27 : tree _q61 = TREE_OPERAND (_p1, 1);
6231 : 27 : if ((_q60 == _q30 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q30, 0) && types_match (_q60, _q30)))
6232 : : {
6233 : 6 : if ((_q61 == _q31 && ! TREE_SIDE_EFFECTS (_q61)) || (operand_equal_p (_q61, _q31, 0) && types_match (_q61, _q31)))
6234 : : {
6235 : 0 : {
6236 : 0 : tree captures[5] ATTRIBUTE_UNUSED = { _p1, _q30, _q31, _p0, _q20 };
6237 : 0 : tree res = generic_simplify_91 (loc, type, _p0, _p1, captures);
6238 : 0 : if (res) return res;
6239 : : }
6240 : : }
6241 : : }
6242 : : break;
6243 : : }
6244 : : default:;
6245 : : }
6246 : : break;
6247 : : }
6248 : 21140 : default:;
6249 : : }
6250 : 21140 : switch (TREE_CODE (_p1))
6251 : : {
6252 : 84 : CASE_CONVERT:
6253 : 84 : {
6254 : 84 : tree _q40 = TREE_OPERAND (_p1, 0);
6255 : 84 : switch (TREE_CODE (_q40))
6256 : : {
6257 : 0 : case BIT_NOT_EXPR:
6258 : 0 : {
6259 : 0 : tree _q50 = TREE_OPERAND (_q40, 0);
6260 : 0 : {
6261 : 0 : tree captures[2] ATTRIBUTE_UNUSED = { _q20, _q50 };
6262 : 0 : tree res = generic_simplify_92 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR, BIT_AND_EXPR);
6263 : 0 : if (res) return res;
6264 : : }
6265 : 0 : break;
6266 : : }
6267 : : default:;
6268 : : }
6269 : : break;
6270 : : }
6271 : 16 : case BIT_NOT_EXPR:
6272 : 16 : {
6273 : 16 : tree _q40 = TREE_OPERAND (_p1, 0);
6274 : 16 : {
6275 : 16 : tree captures[2] ATTRIBUTE_UNUSED = { _q20, _q40 };
6276 : 16 : tree res = generic_simplify_92 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR, BIT_AND_EXPR);
6277 : 16 : if (res) return res;
6278 : : }
6279 : 0 : break;
6280 : : }
6281 : : default:;
6282 : : }
6283 : : break;
6284 : : }
6285 : 128580 : case BIT_AND_EXPR:
6286 : 128580 : {
6287 : 128580 : tree _q20 = TREE_OPERAND (_p0, 0);
6288 : 128580 : tree _q21 = TREE_OPERAND (_p0, 1);
6289 : 128580 : switch (TREE_CODE (_q20))
6290 : : {
6291 : 348 : case BIT_NOT_EXPR:
6292 : 348 : {
6293 : 348 : tree _q30 = TREE_OPERAND (_q20, 0);
6294 : 348 : switch (TREE_CODE (_p1))
6295 : : {
6296 : 18 : case BIT_NOT_EXPR:
6297 : 18 : {
6298 : 18 : tree _q60 = TREE_OPERAND (_p1, 0);
6299 : 18 : switch (TREE_CODE (_q60))
6300 : : {
6301 : 0 : case BIT_IOR_EXPR:
6302 : 0 : {
6303 : 0 : tree _q70 = TREE_OPERAND (_q60, 0);
6304 : 0 : tree _q71 = TREE_OPERAND (_q60, 1);
6305 : 0 : if ((_q70 == _q30 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q30, 0) && types_match (_q70, _q30)))
6306 : : {
6307 : 0 : if ((_q71 == _q21 && ! TREE_SIDE_EFFECTS (_q71)) || (operand_equal_p (_q71, _q21, 0) && types_match (_q71, _q21)))
6308 : : {
6309 : 0 : {
6310 : 0 : tree captures[3] ATTRIBUTE_UNUSED = { _q20, _q30, _q21 };
6311 : 0 : tree res = generic_simplify_93 (loc, type, _p0, _p1, captures);
6312 : 0 : if (res) return res;
6313 : : }
6314 : : }
6315 : : }
6316 : 0 : if ((_q70 == _q21 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q21, 0) && types_match (_q70, _q21)))
6317 : : {
6318 : 0 : if ((_q71 == _q30 && ! TREE_SIDE_EFFECTS (_q71)) || (operand_equal_p (_q71, _q30, 0) && types_match (_q71, _q30)))
6319 : : {
6320 : 0 : {
6321 : 0 : tree captures[3] ATTRIBUTE_UNUSED = { _q20, _q30, _q21 };
6322 : 0 : tree res = generic_simplify_93 (loc, type, _p0, _p1, captures);
6323 : 0 : if (res) return res;
6324 : : }
6325 : : }
6326 : : }
6327 : : break;
6328 : : }
6329 : : default:;
6330 : : }
6331 : : break;
6332 : : }
6333 : : default:;
6334 : : }
6335 : : break;
6336 : : }
6337 : 128580 : default:;
6338 : : }
6339 : 128580 : switch (TREE_CODE (_q21))
6340 : : {
6341 : 74 : case BIT_NOT_EXPR:
6342 : 74 : {
6343 : 74 : tree _q40 = TREE_OPERAND (_q21, 0);
6344 : 74 : switch (TREE_CODE (_p1))
6345 : : {
6346 : 0 : case BIT_NOT_EXPR:
6347 : 0 : {
6348 : 0 : tree _q60 = TREE_OPERAND (_p1, 0);
6349 : 0 : switch (TREE_CODE (_q60))
6350 : : {
6351 : 0 : case BIT_IOR_EXPR:
6352 : 0 : {
6353 : 0 : tree _q70 = TREE_OPERAND (_q60, 0);
6354 : 0 : tree _q71 = TREE_OPERAND (_q60, 1);
6355 : 0 : if ((_q70 == _q40 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q40, 0) && types_match (_q70, _q40)))
6356 : : {
6357 : 0 : if ((_q71 == _q20 && ! TREE_SIDE_EFFECTS (_q71)) || (operand_equal_p (_q71, _q20, 0) && types_match (_q71, _q20)))
6358 : : {
6359 : 0 : {
6360 : 0 : tree captures[3] ATTRIBUTE_UNUSED = { _q21, _q40, _q20 };
6361 : 0 : tree res = generic_simplify_93 (loc, type, _p0, _p1, captures);
6362 : 0 : if (res) return res;
6363 : : }
6364 : : }
6365 : : }
6366 : 0 : if ((_q70 == _q20 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q20, 0) && types_match (_q70, _q20)))
6367 : : {
6368 : 0 : if ((_q71 == _q40 && ! TREE_SIDE_EFFECTS (_q71)) || (operand_equal_p (_q71, _q40, 0) && types_match (_q71, _q40)))
6369 : : {
6370 : 0 : {
6371 : 0 : tree captures[3] ATTRIBUTE_UNUSED = { _q21, _q40, _q20 };
6372 : 0 : tree res = generic_simplify_93 (loc, type, _p0, _p1, captures);
6373 : 0 : if (res) return res;
6374 : : }
6375 : : }
6376 : : }
6377 : : break;
6378 : : }
6379 : : default:;
6380 : : }
6381 : : break;
6382 : : }
6383 : : default:;
6384 : : }
6385 : : break;
6386 : : }
6387 : 128580 : default:;
6388 : : }
6389 : 128580 : switch (TREE_CODE (_p1))
6390 : : {
6391 : 73 : case BIT_NOT_EXPR:
6392 : 73 : {
6393 : 73 : tree _q50 = TREE_OPERAND (_p1, 0);
6394 : 73 : switch (TREE_CODE (_q50))
6395 : : {
6396 : 9 : case BIT_IOR_EXPR:
6397 : 9 : {
6398 : 9 : tree _q60 = TREE_OPERAND (_q50, 0);
6399 : 9 : tree _q61 = TREE_OPERAND (_q50, 1);
6400 : 9 : if ((_q60 == _q20 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q20, 0) && types_match (_q60, _q20)))
6401 : : {
6402 : 0 : if ((_q61 == _q21 && ! TREE_SIDE_EFFECTS (_q61)) || (operand_equal_p (_q61, _q21, 0) && types_match (_q61, _q21)))
6403 : : {
6404 : 0 : {
6405 : 0 : tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q50 };
6406 : 0 : tree res = generic_simplify_90 (loc, type, _p0, _p1, captures);
6407 : 0 : if (res) return res;
6408 : : }
6409 : : }
6410 : : }
6411 : : break;
6412 : : }
6413 : : default:;
6414 : : }
6415 : : break;
6416 : : }
6417 : 62 : case BIT_XOR_EXPR:
6418 : 62 : {
6419 : 62 : tree _q50 = TREE_OPERAND (_p1, 0);
6420 : 62 : tree _q51 = TREE_OPERAND (_p1, 1);
6421 : 62 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
6422 : : {
6423 : 8 : if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
6424 : : {
6425 : 0 : {
6426 : 0 : tree captures[2] ATTRIBUTE_UNUSED = { _q20, _q21 };
6427 : 0 : tree res = generic_simplify_8 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR);
6428 : 0 : if (res) return res;
6429 : : }
6430 : : }
6431 : : }
6432 : : break;
6433 : : }
6434 : 16611 : case BIT_AND_EXPR:
6435 : 16611 : {
6436 : 16611 : tree _q50 = TREE_OPERAND (_p1, 0);
6437 : 16611 : tree _q51 = TREE_OPERAND (_p1, 1);
6438 : 16611 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || operand_equal_p (_q50, _q20, 0))
6439 : : {
6440 : 159 : {
6441 : 159 : tree captures[4] ATTRIBUTE_UNUSED = { _q20, _q21, _q51, _q20 };
6442 : 159 : tree res = generic_simplify_94 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR, BIT_AND_EXPR);
6443 : 159 : if (res) return res;
6444 : : }
6445 : : }
6446 : 16452 : if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || operand_equal_p (_q51, _q20, 0))
6447 : : {
6448 : 0 : {
6449 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q20, _q21, _q50, _q20 };
6450 : 0 : tree res = generic_simplify_94 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR, BIT_AND_EXPR);
6451 : 0 : if (res) return res;
6452 : : }
6453 : : }
6454 : 16452 : if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || operand_equal_p (_q50, _q21, 0))
6455 : : {
6456 : 0 : {
6457 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q21, _q20, _q51, _q21 };
6458 : 0 : tree res = generic_simplify_94 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR, BIT_AND_EXPR);
6459 : 0 : if (res) return res;
6460 : : }
6461 : : }
6462 : 16452 : if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || operand_equal_p (_q51, _q21, 0))
6463 : : {
6464 : 9 : {
6465 : 9 : tree captures[4] ATTRIBUTE_UNUSED = { _q21, _q20, _q50, _q21 };
6466 : 9 : tree res = generic_simplify_94 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR, BIT_AND_EXPR);
6467 : 9 : if (res) return res;
6468 : : }
6469 : : }
6470 : : break;
6471 : : }
6472 : : default:;
6473 : : }
6474 : : break;
6475 : : }
6476 : 2928 : case BIT_XOR_EXPR:
6477 : 2928 : {
6478 : 2928 : tree _q20 = TREE_OPERAND (_p0, 0);
6479 : 2928 : tree _q21 = TREE_OPERAND (_p0, 1);
6480 : 2928 : switch (TREE_CODE (_p1))
6481 : : {
6482 : 54 : case BIT_NOT_EXPR:
6483 : 54 : {
6484 : 54 : tree _q50 = TREE_OPERAND (_p1, 0);
6485 : 54 : switch (TREE_CODE (_q50))
6486 : : {
6487 : 19 : case BIT_IOR_EXPR:
6488 : 19 : {
6489 : 19 : tree _q60 = TREE_OPERAND (_q50, 0);
6490 : 19 : tree _q61 = TREE_OPERAND (_q50, 1);
6491 : 19 : if ((_q60 == _q20 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q20, 0) && types_match (_q60, _q20)))
6492 : : {
6493 : 1 : if ((_q61 == _q21 && ! TREE_SIDE_EFFECTS (_q61)) || (operand_equal_p (_q61, _q21, 0) && types_match (_q61, _q21)))
6494 : : {
6495 : 1 : {
6496 : 1 : tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q50 };
6497 : 1 : tree res = generic_simplify_91 (loc, type, _p0, _p1, captures);
6498 : 1 : if (res) return res;
6499 : : }
6500 : : }
6501 : : }
6502 : : break;
6503 : : }
6504 : : default:;
6505 : : }
6506 : : break;
6507 : : }
6508 : 102 : case BIT_AND_EXPR:
6509 : 102 : {
6510 : 102 : tree _q50 = TREE_OPERAND (_p1, 0);
6511 : 102 : tree _q51 = TREE_OPERAND (_p1, 1);
6512 : 102 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
6513 : : {
6514 : 30 : if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
6515 : : {
6516 : 0 : {
6517 : 0 : tree captures[2] ATTRIBUTE_UNUSED = { _q20, _q21 };
6518 : 0 : tree res = generic_simplify_8 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR);
6519 : 0 : if (res) return res;
6520 : : }
6521 : : }
6522 : : }
6523 : : break;
6524 : : }
6525 : : default:;
6526 : : }
6527 : : break;
6528 : : }
6529 : 528939 : CASE_CONVERT:
6530 : 528939 : {
6531 : 528939 : tree _q20 = TREE_OPERAND (_p0, 0);
6532 : 528939 : switch (TREE_CODE (_q20))
6533 : : {
6534 : 72 : case BIT_NOT_EXPR:
6535 : 72 : {
6536 : 72 : tree _q30 = TREE_OPERAND (_q20, 0);
6537 : 72 : switch (TREE_CODE (_p1))
6538 : : {
6539 : 8 : CASE_CONVERT:
6540 : 8 : {
6541 : 8 : tree _q50 = TREE_OPERAND (_p1, 0);
6542 : 8 : switch (TREE_CODE (_q50))
6543 : : {
6544 : 0 : case BIT_NOT_EXPR:
6545 : 0 : {
6546 : 0 : tree _q60 = TREE_OPERAND (_q50, 0);
6547 : 0 : {
6548 : 0 : tree captures[2] ATTRIBUTE_UNUSED = { _q30, _q60 };
6549 : 0 : tree res = generic_simplify_92 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR, BIT_AND_EXPR);
6550 : 0 : if (res) return res;
6551 : : }
6552 : 0 : break;
6553 : : }
6554 : : default:;
6555 : : }
6556 : : break;
6557 : : }
6558 : 32 : case BIT_NOT_EXPR:
6559 : 32 : {
6560 : 32 : tree _q50 = TREE_OPERAND (_p1, 0);
6561 : 32 : {
6562 : 32 : tree captures[2] ATTRIBUTE_UNUSED = { _q30, _q50 };
6563 : 32 : tree res = generic_simplify_92 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR, BIT_AND_EXPR);
6564 : 32 : if (res) return res;
6565 : : }
6566 : 32 : break;
6567 : : }
6568 : : default:;
6569 : : }
6570 : : break;
6571 : : }
6572 : 124 : case BIT_AND_EXPR:
6573 : 124 : {
6574 : 124 : tree _q30 = TREE_OPERAND (_q20, 0);
6575 : 124 : tree _q31 = TREE_OPERAND (_q20, 1);
6576 : 124 : switch (TREE_CODE (_p1))
6577 : : {
6578 : 6 : CASE_CONVERT:
6579 : 6 : {
6580 : 6 : tree _q60 = TREE_OPERAND (_p1, 0);
6581 : 6 : switch (TREE_CODE (_q60))
6582 : : {
6583 : 0 : case BIT_AND_EXPR:
6584 : 0 : {
6585 : 0 : tree _q70 = TREE_OPERAND (_q60, 0);
6586 : 0 : tree _q71 = TREE_OPERAND (_q60, 1);
6587 : 0 : if ((_q70 == _q30 && ! TREE_SIDE_EFFECTS (_q70)) || operand_equal_p (_q70, _q30, 0))
6588 : : {
6589 : 0 : {
6590 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q30, _q31, _q71, _q30 };
6591 : 0 : tree res = generic_simplify_94 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR, BIT_AND_EXPR);
6592 : 0 : if (res) return res;
6593 : : }
6594 : : }
6595 : 0 : if ((_q71 == _q30 && ! TREE_SIDE_EFFECTS (_q71)) || operand_equal_p (_q71, _q30, 0))
6596 : : {
6597 : 0 : {
6598 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q30, _q31, _q70, _q30 };
6599 : 0 : tree res = generic_simplify_94 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR, BIT_AND_EXPR);
6600 : 0 : if (res) return res;
6601 : : }
6602 : : }
6603 : 0 : if ((_q70 == _q31 && ! TREE_SIDE_EFFECTS (_q70)) || operand_equal_p (_q70, _q31, 0))
6604 : : {
6605 : 0 : {
6606 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q31, _q30, _q71, _q31 };
6607 : 0 : tree res = generic_simplify_94 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR, BIT_AND_EXPR);
6608 : 0 : if (res) return res;
6609 : : }
6610 : : }
6611 : 0 : if ((_q71 == _q31 && ! TREE_SIDE_EFFECTS (_q71)) || operand_equal_p (_q71, _q31, 0))
6612 : : {
6613 : 0 : {
6614 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q31, _q30, _q70, _q31 };
6615 : 0 : tree res = generic_simplify_94 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR, BIT_AND_EXPR);
6616 : 0 : if (res) return res;
6617 : : }
6618 : : }
6619 : : break;
6620 : : }
6621 : : default:;
6622 : : }
6623 : : break;
6624 : : }
6625 : : default:;
6626 : : }
6627 : : break;
6628 : : }
6629 : 98 : case BIT_IOR_EXPR:
6630 : 98 : {
6631 : 98 : tree _q30 = TREE_OPERAND (_q20, 0);
6632 : 98 : tree _q31 = TREE_OPERAND (_q20, 1);
6633 : 98 : switch (TREE_CODE (_p1))
6634 : : {
6635 : 4 : CASE_CONVERT:
6636 : 4 : {
6637 : 4 : tree _q60 = TREE_OPERAND (_p1, 0);
6638 : 4 : if ((_q60 == _q31 && ! TREE_SIDE_EFFECTS (_q60)) || operand_equal_p (_q60, _q31, 0))
6639 : : {
6640 : 0 : {
6641 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _p0, _q30, _q31, _q31 };
6642 : 0 : tree res = generic_simplify_78 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR);
6643 : 0 : if (res) return res;
6644 : : }
6645 : : }
6646 : 4 : if ((_q60 == _q30 && ! TREE_SIDE_EFFECTS (_q60)) || operand_equal_p (_q60, _q30, 0))
6647 : : {
6648 : 0 : {
6649 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _p0, _q31, _q30, _q30 };
6650 : 0 : tree res = generic_simplify_78 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR);
6651 : 0 : if (res) return res;
6652 : : }
6653 : : }
6654 : : break;
6655 : : }
6656 : 98 : default:;
6657 : : }
6658 : 98 : if ((_p1 == _q31 && ! TREE_SIDE_EFFECTS (_p1)) || operand_equal_p (_p1, _q31, 0))
6659 : : {
6660 : 0 : {
6661 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _p0, _q30, _q31, _q31 };
6662 : 0 : tree res = generic_simplify_78 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR);
6663 : 0 : if (res) return res;
6664 : : }
6665 : : }
6666 : 98 : if ((_p1 == _q30 && ! TREE_SIDE_EFFECTS (_p1)) || operand_equal_p (_p1, _q30, 0))
6667 : : {
6668 : 0 : {
6669 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _p0, _q31, _q30, _q30 };
6670 : 0 : tree res = generic_simplify_78 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR);
6671 : 0 : if (res) return res;
6672 : : }
6673 : : }
6674 : : break;
6675 : : }
6676 : 528939 : default:;
6677 : : }
6678 : 528939 : switch (TREE_CODE (_p1))
6679 : : {
6680 : 504916 : CASE_CONVERT:
6681 : 504916 : {
6682 : 504916 : tree _q40 = TREE_OPERAND (_p1, 0);
6683 : 504916 : switch (TREE_CODE (_q40))
6684 : : {
6685 : 0 : case BIT_IOR_EXPR:
6686 : 0 : {
6687 : 0 : tree _q50 = TREE_OPERAND (_q40, 0);
6688 : 0 : tree _q51 = TREE_OPERAND (_q40, 1);
6689 : 0 : if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || operand_equal_p (_q51, _q20, 0))
6690 : : {
6691 : 0 : {
6692 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _p1, _q50, _q51, _q20 };
6693 : 0 : tree res = generic_simplify_95 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR);
6694 : 0 : if (res) return res;
6695 : : }
6696 : : }
6697 : 0 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || operand_equal_p (_q50, _q20, 0))
6698 : : {
6699 : 0 : {
6700 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _p1, _q51, _q50, _q20 };
6701 : 0 : tree res = generic_simplify_95 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR);
6702 : 0 : if (res) return res;
6703 : : }
6704 : : }
6705 : : break;
6706 : : }
6707 : : default:;
6708 : : }
6709 : : break;
6710 : : }
6711 : 8 : case BIT_IOR_EXPR:
6712 : 8 : {
6713 : 8 : tree _q40 = TREE_OPERAND (_p1, 0);
6714 : 8 : tree _q41 = TREE_OPERAND (_p1, 1);
6715 : 8 : if ((_q41 == _q20 && ! TREE_SIDE_EFFECTS (_q41)) || operand_equal_p (_q41, _q20, 0))
6716 : : {
6717 : 0 : {
6718 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _p1, _q40, _q41, _q20 };
6719 : 0 : tree res = generic_simplify_95 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR);
6720 : 0 : if (res) return res;
6721 : : }
6722 : : }
6723 : 8 : if ((_q40 == _q20 && ! TREE_SIDE_EFFECTS (_q40)) || operand_equal_p (_q40, _q20, 0))
6724 : : {
6725 : 0 : {
6726 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _p1, _q41, _q40, _q20 };
6727 : 0 : tree res = generic_simplify_95 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR);
6728 : 0 : if (res) return res;
6729 : : }
6730 : : }
6731 : : break;
6732 : : }
6733 : : default:;
6734 : : }
6735 : : break;
6736 : : }
6737 : 1791656 : default:;
6738 : : }
6739 : 1791656 : switch (TREE_CODE (_p1))
6740 : : {
6741 : 852008 : CASE_CONVERT:
6742 : 852008 : {
6743 : 852008 : tree _q30 = TREE_OPERAND (_p1, 0);
6744 : 852008 : switch (TREE_CODE (_q30))
6745 : : {
6746 : 28 : case BIT_IOR_EXPR:
6747 : 28 : {
6748 : 28 : tree _q40 = TREE_OPERAND (_q30, 0);
6749 : 28 : tree _q41 = TREE_OPERAND (_q30, 1);
6750 : 28 : if ((_q41 == _p0 && ! TREE_SIDE_EFFECTS (_q41)) || operand_equal_p (_q41, _p0, 0))
6751 : : {
6752 : 0 : {
6753 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _p1, _q40, _q41, _p0 };
6754 : 0 : tree res = generic_simplify_95 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR);
6755 : 0 : if (res) return res;
6756 : : }
6757 : : }
6758 : 28 : if ((_q40 == _p0 && ! TREE_SIDE_EFFECTS (_q40)) || operand_equal_p (_q40, _p0, 0))
6759 : : {
6760 : 0 : {
6761 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _p1, _q41, _q40, _p0 };
6762 : 0 : tree res = generic_simplify_95 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR);
6763 : 0 : if (res) return res;
6764 : : }
6765 : : }
6766 : : break;
6767 : : }
6768 : : default:;
6769 : : }
6770 : : break;
6771 : : }
6772 : 485 : case BIT_IOR_EXPR:
6773 : 485 : {
6774 : 485 : tree _q30 = TREE_OPERAND (_p1, 0);
6775 : 485 : tree _q31 = TREE_OPERAND (_p1, 1);
6776 : 485 : if ((_q31 == _p0 && ! TREE_SIDE_EFFECTS (_q31)) || operand_equal_p (_q31, _p0, 0))
6777 : : {
6778 : 0 : {
6779 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _p1, _q30, _q31, _p0 };
6780 : 0 : tree res = generic_simplify_95 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR);
6781 : 0 : if (res) return res;
6782 : : }
6783 : : }
6784 : 485 : if ((_q30 == _p0 && ! TREE_SIDE_EFFECTS (_q30)) || operand_equal_p (_q30, _p0, 0))
6785 : : {
6786 : 0 : {
6787 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _p1, _q31, _q30, _p0 };
6788 : 0 : tree res = generic_simplify_95 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR);
6789 : 0 : if (res) return res;
6790 : : }
6791 : : }
6792 : : break;
6793 : : }
6794 : 1791656 : default:;
6795 : : }
6796 : 1791656 : switch (TREE_CODE (_p0))
6797 : : {
6798 : 17154 : case BIT_IOR_EXPR:
6799 : 17154 : {
6800 : 17154 : tree _q20 = TREE_OPERAND (_p0, 0);
6801 : 17154 : tree _q21 = TREE_OPERAND (_p0, 1);
6802 : 17154 : {
6803 : 17154 : tree captures[3] ATTRIBUTE_UNUSED = { _q20, _q21, _p1 };
6804 : 17154 : tree res = generic_simplify_96 (loc, type, _p0, _p1, captures);
6805 : 17154 : if (res) return res;
6806 : : }
6807 : 17154 : switch (TREE_CODE (_p1))
6808 : : {
6809 : 1891 : CASE_CONVERT:
6810 : 1891 : {
6811 : 1891 : tree _q50 = TREE_OPERAND (_p1, 0);
6812 : 1891 : switch (TREE_CODE (_q50))
6813 : : {
6814 : 0 : case BIT_IOR_EXPR:
6815 : 0 : {
6816 : 0 : tree _q60 = TREE_OPERAND (_q50, 0);
6817 : 0 : tree _q61 = TREE_OPERAND (_q50, 1);
6818 : 0 : if ((_q60 == _q20 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q20, 0) && types_match (_q60, _q20)))
6819 : : {
6820 : 0 : {
6821 : 0 : tree captures[7] ATTRIBUTE_UNUSED = { _p0, _p0, _q20, _q21, _p1, _q50, _q61 };
6822 : 0 : tree res = generic_simplify_97 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR);
6823 : 0 : if (res) return res;
6824 : : }
6825 : : }
6826 : 0 : if ((_q61 == _q20 && ! TREE_SIDE_EFFECTS (_q61)) || (operand_equal_p (_q61, _q20, 0) && types_match (_q61, _q20)))
6827 : : {
6828 : 0 : {
6829 : 0 : tree captures[7] ATTRIBUTE_UNUSED = { _p0, _p0, _q20, _q21, _p1, _q50, _q60 };
6830 : 0 : tree res = generic_simplify_97 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR);
6831 : 0 : if (res) return res;
6832 : : }
6833 : : }
6834 : 0 : if ((_q60 == _q21 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q21, 0) && types_match (_q60, _q21)))
6835 : : {
6836 : 0 : {
6837 : 0 : tree captures[7] ATTRIBUTE_UNUSED = { _p0, _p0, _q21, _q20, _p1, _q50, _q61 };
6838 : 0 : tree res = generic_simplify_97 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR);
6839 : 0 : if (res) return res;
6840 : : }
6841 : : }
6842 : 0 : if ((_q61 == _q21 && ! TREE_SIDE_EFFECTS (_q61)) || (operand_equal_p (_q61, _q21, 0) && types_match (_q61, _q21)))
6843 : : {
6844 : 0 : {
6845 : 0 : tree captures[7] ATTRIBUTE_UNUSED = { _p0, _p0, _q21, _q20, _p1, _q50, _q60 };
6846 : 0 : tree res = generic_simplify_97 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR);
6847 : 0 : if (res) return res;
6848 : : }
6849 : : }
6850 : : break;
6851 : : }
6852 : : default:;
6853 : : }
6854 : : break;
6855 : : }
6856 : 1 : case BIT_IOR_EXPR:
6857 : 1 : {
6858 : 1 : tree _q50 = TREE_OPERAND (_p1, 0);
6859 : 1 : tree _q51 = TREE_OPERAND (_p1, 1);
6860 : 1 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
6861 : : {
6862 : 0 : {
6863 : 0 : tree captures[7] ATTRIBUTE_UNUSED = { _p0, _p0, _q20, _q21, _p1, _p1, _q51 };
6864 : 0 : tree res = generic_simplify_98 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR);
6865 : 0 : if (res) return res;
6866 : : }
6867 : : }
6868 : 1 : if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
6869 : : {
6870 : 0 : {
6871 : 0 : tree captures[7] ATTRIBUTE_UNUSED = { _p0, _p0, _q20, _q21, _p1, _p1, _q50 };
6872 : 0 : tree res = generic_simplify_98 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR);
6873 : 0 : if (res) return res;
6874 : : }
6875 : : }
6876 : 1 : if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
6877 : : {
6878 : 0 : {
6879 : 0 : tree captures[7] ATTRIBUTE_UNUSED = { _p0, _p0, _q21, _q20, _p1, _p1, _q51 };
6880 : 0 : tree res = generic_simplify_98 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR);
6881 : 0 : if (res) return res;
6882 : : }
6883 : : }
6884 : 1 : if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
6885 : : {
6886 : 0 : {
6887 : 0 : tree captures[7] ATTRIBUTE_UNUSED = { _p0, _p0, _q21, _q20, _p1, _p1, _q50 };
6888 : 0 : tree res = generic_simplify_98 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR);
6889 : 0 : if (res) return res;
6890 : : }
6891 : : }
6892 : : break;
6893 : : }
6894 : : default:;
6895 : : }
6896 : : break;
6897 : : }
6898 : 1791656 : default:;
6899 : : }
6900 : 1791656 : switch (TREE_CODE (_p1))
6901 : : {
6902 : 485 : case BIT_IOR_EXPR:
6903 : 485 : {
6904 : 485 : tree _q30 = TREE_OPERAND (_p1, 0);
6905 : 485 : tree _q31 = TREE_OPERAND (_p1, 1);
6906 : 485 : {
6907 : 485 : tree captures[3] ATTRIBUTE_UNUSED = { _q30, _q31, _p0 };
6908 : 485 : tree res = generic_simplify_96 (loc, type, _p0, _p1, captures);
6909 : 485 : if (res) return res;
6910 : : }
6911 : 485 : break;
6912 : : }
6913 : 1791656 : default:;
6914 : : }
6915 : 1791656 : switch (TREE_CODE (_p0))
6916 : : {
6917 : 528939 : CASE_CONVERT:
6918 : 528939 : {
6919 : 528939 : tree _q20 = TREE_OPERAND (_p0, 0);
6920 : 528939 : switch (TREE_CODE (_q20))
6921 : : {
6922 : 98 : case BIT_IOR_EXPR:
6923 : 98 : {
6924 : 98 : tree _q30 = TREE_OPERAND (_q20, 0);
6925 : 98 : tree _q31 = TREE_OPERAND (_q20, 1);
6926 : 98 : switch (TREE_CODE (_p1))
6927 : : {
6928 : 4 : CASE_CONVERT:
6929 : 4 : {
6930 : 4 : tree _q60 = TREE_OPERAND (_p1, 0);
6931 : 4 : switch (TREE_CODE (_q60))
6932 : : {
6933 : 0 : case BIT_IOR_EXPR:
6934 : 0 : {
6935 : 0 : tree _q70 = TREE_OPERAND (_q60, 0);
6936 : 0 : tree _q71 = TREE_OPERAND (_q60, 1);
6937 : 0 : if ((_q70 == _q30 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q30, 0) && types_match (_q70, _q30)))
6938 : : {
6939 : 0 : {
6940 : 0 : tree captures[7] ATTRIBUTE_UNUSED = { _p0, _q20, _q30, _q31, _p1, _q60, _q71 };
6941 : 0 : tree res = generic_simplify_99 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR);
6942 : 0 : if (res) return res;
6943 : : }
6944 : : }
6945 : 0 : if ((_q71 == _q30 && ! TREE_SIDE_EFFECTS (_q71)) || (operand_equal_p (_q71, _q30, 0) && types_match (_q71, _q30)))
6946 : : {
6947 : 0 : {
6948 : 0 : tree captures[7] ATTRIBUTE_UNUSED = { _p0, _q20, _q30, _q31, _p1, _q60, _q70 };
6949 : 0 : tree res = generic_simplify_99 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR);
6950 : 0 : if (res) return res;
6951 : : }
6952 : : }
6953 : 0 : if ((_q70 == _q31 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q31, 0) && types_match (_q70, _q31)))
6954 : : {
6955 : 0 : {
6956 : 0 : tree captures[7] ATTRIBUTE_UNUSED = { _p0, _q20, _q31, _q30, _p1, _q60, _q71 };
6957 : 0 : tree res = generic_simplify_99 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR);
6958 : 0 : if (res) return res;
6959 : : }
6960 : : }
6961 : 0 : if ((_q71 == _q31 && ! TREE_SIDE_EFFECTS (_q71)) || (operand_equal_p (_q71, _q31, 0) && types_match (_q71, _q31)))
6962 : : {
6963 : 0 : {
6964 : 0 : tree captures[7] ATTRIBUTE_UNUSED = { _p0, _q20, _q31, _q30, _p1, _q60, _q70 };
6965 : 0 : tree res = generic_simplify_99 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR);
6966 : 0 : if (res) return res;
6967 : : }
6968 : : }
6969 : : break;
6970 : : }
6971 : : default:;
6972 : : }
6973 : : break;
6974 : : }
6975 : 0 : case BIT_IOR_EXPR:
6976 : 0 : {
6977 : 0 : tree _q60 = TREE_OPERAND (_p1, 0);
6978 : 0 : tree _q61 = TREE_OPERAND (_p1, 1);
6979 : 0 : if ((_q60 == _q30 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q30, 0) && types_match (_q60, _q30)))
6980 : : {
6981 : 0 : {
6982 : 0 : tree captures[7] ATTRIBUTE_UNUSED = { _p0, _q20, _q30, _q31, _p1, _p1, _q61 };
6983 : 0 : tree res = generic_simplify_100 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR);
6984 : 0 : if (res) return res;
6985 : : }
6986 : : }
6987 : 0 : if ((_q61 == _q30 && ! TREE_SIDE_EFFECTS (_q61)) || (operand_equal_p (_q61, _q30, 0) && types_match (_q61, _q30)))
6988 : : {
6989 : 0 : {
6990 : 0 : tree captures[7] ATTRIBUTE_UNUSED = { _p0, _q20, _q30, _q31, _p1, _p1, _q60 };
6991 : 0 : tree res = generic_simplify_100 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR);
6992 : 0 : if (res) return res;
6993 : : }
6994 : : }
6995 : 0 : if ((_q60 == _q31 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q31, 0) && types_match (_q60, _q31)))
6996 : : {
6997 : 0 : {
6998 : 0 : tree captures[7] ATTRIBUTE_UNUSED = { _p0, _q20, _q31, _q30, _p1, _p1, _q61 };
6999 : 0 : tree res = generic_simplify_100 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR);
7000 : 0 : if (res) return res;
7001 : : }
7002 : : }
7003 : 0 : if ((_q61 == _q31 && ! TREE_SIDE_EFFECTS (_q61)) || (operand_equal_p (_q61, _q31, 0) && types_match (_q61, _q31)))
7004 : : {
7005 : 0 : {
7006 : 0 : tree captures[7] ATTRIBUTE_UNUSED = { _p0, _q20, _q31, _q30, _p1, _p1, _q60 };
7007 : 0 : tree res = generic_simplify_100 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR);
7008 : 0 : if (res) return res;
7009 : : }
7010 : : }
7011 : : break;
7012 : : }
7013 : : default:;
7014 : : }
7015 : : break;
7016 : : }
7017 : 528939 : default:;
7018 : : }
7019 : 528939 : switch (TREE_CODE (_p1))
7020 : : {
7021 : 504916 : CASE_CONVERT:
7022 : 504916 : {
7023 : 504916 : tree _q40 = TREE_OPERAND (_p1, 0);
7024 : 504916 : {
7025 : 504916 : tree captures[4] ATTRIBUTE_UNUSED = { _p0, _q20, _p1, _q40 };
7026 : 504916 : tree res = generic_simplify_101 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR);
7027 : 504916 : if (res) return res;
7028 : : }
7029 : 503949 : break;
7030 : : }
7031 : 527972 : default:;
7032 : : }
7033 : 527972 : {
7034 : 527972 : tree captures[4] ATTRIBUTE_UNUSED = { _p0, _q20, _p1, _p1 };
7035 : 527972 : tree res = generic_simplify_102 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR);
7036 : 527972 : if (res) return res;
7037 : : }
7038 : 527718 : break;
7039 : : }
7040 : 128412 : case BIT_AND_EXPR:
7041 : 128412 : {
7042 : 128412 : tree _q20 = TREE_OPERAND (_p0, 0);
7043 : 128412 : tree _q21 = TREE_OPERAND (_p0, 1);
7044 : 128412 : if ((_p1 == _q20 && ! TREE_SIDE_EFFECTS (_p1)) || (operand_equal_p (_p1, _q20, 0) && types_match (_p1, _q20)))
7045 : : {
7046 : 2 : {
7047 : 2 : tree captures[2] ATTRIBUTE_UNUSED = { _q20, _q21 };
7048 : 2 : tree res = generic_simplify_103 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR, BIT_AND_EXPR);
7049 : 2 : if (res) return res;
7050 : : }
7051 : : }
7052 : 128410 : if ((_p1 == _q21 && ! TREE_SIDE_EFFECTS (_p1)) || (operand_equal_p (_p1, _q21, 0) && types_match (_p1, _q21)))
7053 : : {
7054 : 13 : {
7055 : 13 : tree captures[2] ATTRIBUTE_UNUSED = { _q21, _q20 };
7056 : 13 : tree res = generic_simplify_103 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR, BIT_AND_EXPR);
7057 : 13 : if (res) return res;
7058 : : }
7059 : : }
7060 : 128397 : {
7061 : 128397 : tree captures[3] ATTRIBUTE_UNUSED = { _q20, _q21, _p1 };
7062 : 128397 : tree res = generic_simplify_104 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR, BIT_AND_EXPR);
7063 : 128397 : if (res) return res;
7064 : : }
7065 : 128393 : {
7066 : 128393 : tree captures[3] ATTRIBUTE_UNUSED = { _q21, _q20, _p1 };
7067 : 128393 : tree res = generic_simplify_104 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR, BIT_AND_EXPR);
7068 : 128393 : if (res) return res;
7069 : : }
7070 : 128391 : switch (TREE_CODE (_p1))
7071 : : {
7072 : 1 : case BIT_IOR_EXPR:
7073 : 1 : {
7074 : 1 : tree _q50 = TREE_OPERAND (_p1, 0);
7075 : 1 : tree _q51 = TREE_OPERAND (_p1, 1);
7076 : 1 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
7077 : : {
7078 : 1 : {
7079 : 1 : tree captures[4] ATTRIBUTE_UNUSED = { _q20, _q21, _p1, _q51 };
7080 : 1 : tree res = generic_simplify_105 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR, BIT_AND_EXPR);
7081 : 1 : if (res) return res;
7082 : : }
7083 : : }
7084 : 0 : if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
7085 : : {
7086 : 0 : {
7087 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q20, _q21, _p1, _q50 };
7088 : 0 : tree res = generic_simplify_105 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR, BIT_AND_EXPR);
7089 : 0 : if (res) return res;
7090 : : }
7091 : : }
7092 : 0 : if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
7093 : : {
7094 : 0 : {
7095 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q21, _q20, _p1, _q51 };
7096 : 0 : tree res = generic_simplify_105 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR, BIT_AND_EXPR);
7097 : 0 : if (res) return res;
7098 : : }
7099 : : }
7100 : 0 : if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
7101 : : {
7102 : 0 : {
7103 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q21, _q20, _p1, _q50 };
7104 : 0 : tree res = generic_simplify_105 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR, BIT_AND_EXPR);
7105 : 0 : if (res) return res;
7106 : : }
7107 : : }
7108 : : break;
7109 : : }
7110 : 73 : case BIT_NOT_EXPR:
7111 : 73 : {
7112 : 73 : tree _q50 = TREE_OPERAND (_p1, 0);
7113 : 73 : switch (TREE_CODE (_q50))
7114 : : {
7115 : 1 : case BIT_AND_EXPR:
7116 : 1 : {
7117 : 1 : tree _q60 = TREE_OPERAND (_q50, 0);
7118 : 1 : tree _q61 = TREE_OPERAND (_q50, 1);
7119 : 1 : if ((_q60 == _q21 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q21, 0) && types_match (_q60, _q21)))
7120 : : {
7121 : 0 : {
7122 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q20, _q21, _p1, _q61 };
7123 : 0 : tree res = generic_simplify_106 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR, BIT_AND_EXPR);
7124 : 0 : if (res) return res;
7125 : : }
7126 : : }
7127 : 1 : if ((_q61 == _q21 && ! TREE_SIDE_EFFECTS (_q61)) || (operand_equal_p (_q61, _q21, 0) && types_match (_q61, _q21)))
7128 : : {
7129 : 1 : {
7130 : 1 : tree captures[4] ATTRIBUTE_UNUSED = { _q20, _q21, _p1, _q60 };
7131 : 1 : tree res = generic_simplify_106 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR, BIT_AND_EXPR);
7132 : 1 : if (res) return res;
7133 : : }
7134 : : }
7135 : 0 : if ((_q60 == _q20 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q20, 0) && types_match (_q60, _q20)))
7136 : : {
7137 : 0 : {
7138 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q21, _q20, _p1, _q61 };
7139 : 0 : tree res = generic_simplify_106 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR, BIT_AND_EXPR);
7140 : 0 : if (res) return res;
7141 : : }
7142 : : }
7143 : 0 : if ((_q61 == _q20 && ! TREE_SIDE_EFFECTS (_q61)) || (operand_equal_p (_q61, _q20, 0) && types_match (_q61, _q20)))
7144 : : {
7145 : 0 : {
7146 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q21, _q20, _p1, _q60 };
7147 : 0 : tree res = generic_simplify_106 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR, BIT_AND_EXPR);
7148 : 0 : if (res) return res;
7149 : : }
7150 : : }
7151 : : break;
7152 : : }
7153 : : default:;
7154 : : }
7155 : : break;
7156 : : }
7157 : 128389 : default:;
7158 : : }
7159 : 128389 : {
7160 : 128389 : tree _q20_pops[1];
7161 : 128389 : if (tree_nop_convert (_q20, _q20_pops))
7162 : : {
7163 : 15761 : tree _q30 = _q20_pops[0];
7164 : 15761 : switch (TREE_CODE (_q30))
7165 : : {
7166 : 0 : case BIT_IOR_EXPR:
7167 : 0 : {
7168 : 0 : tree _q40 = TREE_OPERAND (_q30, 0);
7169 : 0 : tree _q41 = TREE_OPERAND (_q30, 1);
7170 : 0 : {
7171 : 0 : tree captures[8] ATTRIBUTE_UNUSED = { _p0, _p0, _q20, _q30, _q40, _q41, _q21, _p1 };
7172 : 0 : tree res = generic_simplify_107 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR);
7173 : 0 : if (res) return res;
7174 : : }
7175 : 0 : {
7176 : 0 : tree captures[8] ATTRIBUTE_UNUSED = { _p0, _p0, _q20, _q30, _q41, _q40, _q21, _p1 };
7177 : 0 : tree res = generic_simplify_107 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR);
7178 : 0 : if (res) return res;
7179 : : }
7180 : 0 : break;
7181 : : }
7182 : 48 : case BIT_XOR_EXPR:
7183 : 48 : {
7184 : 48 : tree _q40 = TREE_OPERAND (_q30, 0);
7185 : 48 : tree _q41 = TREE_OPERAND (_q30, 1);
7186 : 48 : {
7187 : 48 : tree captures[8] ATTRIBUTE_UNUSED = { _p0, _p0, _q20, _q30, _q40, _q41, _q21, _p1 };
7188 : 48 : tree res = generic_simplify_107 (loc, type, _p0, _p1, captures, BIT_XOR_EXPR);
7189 : 48 : if (res) return res;
7190 : : }
7191 : 32 : {
7192 : 32 : tree captures[8] ATTRIBUTE_UNUSED = { _p0, _p0, _q20, _q30, _q41, _q40, _q21, _p1 };
7193 : 32 : tree res = generic_simplify_107 (loc, type, _p0, _p1, captures, BIT_XOR_EXPR);
7194 : 32 : if (res) return res;
7195 : : }
7196 : 32 : break;
7197 : : }
7198 : : default:;
7199 : : }
7200 : : }
7201 : : }
7202 : 128373 : {
7203 : 128373 : tree _q21_pops[1];
7204 : 128373 : if (tree_nop_convert (_q21, _q21_pops))
7205 : : {
7206 : 139 : tree _q40 = _q21_pops[0];
7207 : 139 : switch (TREE_CODE (_q40))
7208 : : {
7209 : 0 : case BIT_IOR_EXPR:
7210 : 0 : {
7211 : 0 : tree _q50 = TREE_OPERAND (_q40, 0);
7212 : 0 : tree _q51 = TREE_OPERAND (_q40, 1);
7213 : 0 : {
7214 : 0 : tree captures[8] ATTRIBUTE_UNUSED = { _p0, _p0, _q21, _q40, _q50, _q51, _q20, _p1 };
7215 : 0 : tree res = generic_simplify_107 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR);
7216 : 0 : if (res) return res;
7217 : : }
7218 : 0 : {
7219 : 0 : tree captures[8] ATTRIBUTE_UNUSED = { _p0, _p0, _q21, _q40, _q51, _q50, _q20, _p1 };
7220 : 0 : tree res = generic_simplify_107 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR);
7221 : 0 : if (res) return res;
7222 : : }
7223 : 0 : break;
7224 : : }
7225 : 0 : case BIT_XOR_EXPR:
7226 : 0 : {
7227 : 0 : tree _q50 = TREE_OPERAND (_q40, 0);
7228 : 0 : tree _q51 = TREE_OPERAND (_q40, 1);
7229 : 0 : {
7230 : 0 : tree captures[8] ATTRIBUTE_UNUSED = { _p0, _p0, _q21, _q40, _q50, _q51, _q20, _p1 };
7231 : 0 : tree res = generic_simplify_107 (loc, type, _p0, _p1, captures, BIT_XOR_EXPR);
7232 : 0 : if (res) return res;
7233 : : }
7234 : 0 : {
7235 : 0 : tree captures[8] ATTRIBUTE_UNUSED = { _p0, _p0, _q21, _q40, _q51, _q50, _q20, _p1 };
7236 : 0 : tree res = generic_simplify_107 (loc, type, _p0, _p1, captures, BIT_XOR_EXPR);
7237 : 0 : if (res) return res;
7238 : : }
7239 : 0 : break;
7240 : : }
7241 : : default:;
7242 : : }
7243 : : }
7244 : : }
7245 : 128373 : switch (TREE_CODE (_q20))
7246 : : {
7247 : 38 : case BIT_IOR_EXPR:
7248 : 38 : {
7249 : 38 : tree _q30 = TREE_OPERAND (_q20, 0);
7250 : 38 : tree _q31 = TREE_OPERAND (_q20, 1);
7251 : 38 : {
7252 : 38 : tree captures[8] ATTRIBUTE_UNUSED = { _p0, _p0, _q20, _q20, _q30, _q31, _q21, _p1 };
7253 : 38 : tree res = generic_simplify_108 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR);
7254 : 38 : if (res) return res;
7255 : : }
7256 : 38 : {
7257 : 38 : tree captures[8] ATTRIBUTE_UNUSED = { _p0, _p0, _q20, _q20, _q31, _q30, _q21, _p1 };
7258 : 38 : tree res = generic_simplify_108 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR);
7259 : 38 : if (res) return res;
7260 : : }
7261 : 38 : break;
7262 : : }
7263 : 58 : case BIT_XOR_EXPR:
7264 : 58 : {
7265 : 58 : tree _q30 = TREE_OPERAND (_q20, 0);
7266 : 58 : tree _q31 = TREE_OPERAND (_q20, 1);
7267 : 58 : {
7268 : 58 : tree captures[8] ATTRIBUTE_UNUSED = { _p0, _p0, _q20, _q20, _q30, _q31, _q21, _p1 };
7269 : 58 : tree res = generic_simplify_108 (loc, type, _p0, _p1, captures, BIT_XOR_EXPR);
7270 : 58 : if (res) return res;
7271 : : }
7272 : 18 : {
7273 : 18 : tree captures[8] ATTRIBUTE_UNUSED = { _p0, _p0, _q20, _q20, _q31, _q30, _q21, _p1 };
7274 : 18 : tree res = generic_simplify_108 (loc, type, _p0, _p1, captures, BIT_XOR_EXPR);
7275 : 18 : if (res) return res;
7276 : : }
7277 : 18 : break;
7278 : : }
7279 : 128333 : default:;
7280 : : }
7281 : 128333 : switch (TREE_CODE (_q21))
7282 : : {
7283 : 0 : case BIT_IOR_EXPR:
7284 : 0 : {
7285 : 0 : tree _q40 = TREE_OPERAND (_q21, 0);
7286 : 0 : tree _q41 = TREE_OPERAND (_q21, 1);
7287 : 0 : {
7288 : 0 : tree captures[8] ATTRIBUTE_UNUSED = { _p0, _p0, _q21, _q21, _q40, _q41, _q20, _p1 };
7289 : 0 : tree res = generic_simplify_108 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR);
7290 : 0 : if (res) return res;
7291 : : }
7292 : 0 : {
7293 : 0 : tree captures[8] ATTRIBUTE_UNUSED = { _p0, _p0, _q21, _q21, _q41, _q40, _q20, _p1 };
7294 : 0 : tree res = generic_simplify_108 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR);
7295 : 0 : if (res) return res;
7296 : : }
7297 : 0 : break;
7298 : : }
7299 : 0 : case BIT_XOR_EXPR:
7300 : 0 : {
7301 : 0 : tree _q40 = TREE_OPERAND (_q21, 0);
7302 : 0 : tree _q41 = TREE_OPERAND (_q21, 1);
7303 : 0 : {
7304 : 0 : tree captures[8] ATTRIBUTE_UNUSED = { _p0, _p0, _q21, _q21, _q40, _q41, _q20, _p1 };
7305 : 0 : tree res = generic_simplify_108 (loc, type, _p0, _p1, captures, BIT_XOR_EXPR);
7306 : 0 : if (res) return res;
7307 : : }
7308 : 0 : {
7309 : 0 : tree captures[8] ATTRIBUTE_UNUSED = { _p0, _p0, _q21, _q21, _q41, _q40, _q20, _p1 };
7310 : 0 : tree res = generic_simplify_108 (loc, type, _p0, _p1, captures, BIT_XOR_EXPR);
7311 : 0 : if (res) return res;
7312 : : }
7313 : 0 : break;
7314 : : }
7315 : : default:;
7316 : : }
7317 : : break;
7318 : : }
7319 : 1790356 : default:;
7320 : : }
7321 : 1790356 : switch (TREE_CODE (_p1))
7322 : : {
7323 : 53202 : case BIT_AND_EXPR:
7324 : 53202 : {
7325 : 53202 : tree _q30 = TREE_OPERAND (_p1, 0);
7326 : 53202 : tree _q31 = TREE_OPERAND (_p1, 1);
7327 : 53202 : if ((_q30 == _p0 && ! TREE_SIDE_EFFECTS (_q30)) || (operand_equal_p (_q30, _p0, 0) && types_match (_q30, _p0)))
7328 : : {
7329 : 0 : {
7330 : 0 : tree captures[2] ATTRIBUTE_UNUSED = { _p0, _q31 };
7331 : 0 : tree res = generic_simplify_103 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR, BIT_AND_EXPR);
7332 : 0 : if (res) return res;
7333 : : }
7334 : : }
7335 : 53202 : if ((_q31 == _p0 && ! TREE_SIDE_EFFECTS (_q31)) || (operand_equal_p (_q31, _p0, 0) && types_match (_q31, _p0)))
7336 : : {
7337 : 0 : {
7338 : 0 : tree captures[2] ATTRIBUTE_UNUSED = { _p0, _q30 };
7339 : 0 : tree res = generic_simplify_103 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR, BIT_AND_EXPR);
7340 : 0 : if (res) return res;
7341 : : }
7342 : : }
7343 : 53202 : {
7344 : 53202 : tree captures[3] ATTRIBUTE_UNUSED = { _q30, _q31, _p0 };
7345 : 53202 : tree res = generic_simplify_104 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR, BIT_AND_EXPR);
7346 : 53202 : if (res) return res;
7347 : : }
7348 : 53202 : {
7349 : 53202 : tree captures[3] ATTRIBUTE_UNUSED = { _q31, _q30, _p0 };
7350 : 53202 : tree res = generic_simplify_104 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR, BIT_AND_EXPR);
7351 : 53202 : if (res) return res;
7352 : : }
7353 : 53202 : break;
7354 : : }
7355 : 1790356 : default:;
7356 : : }
7357 : 1790356 : switch (TREE_CODE (_p0))
7358 : : {
7359 : 17154 : case BIT_IOR_EXPR:
7360 : 17154 : {
7361 : 17154 : tree _q20 = TREE_OPERAND (_p0, 0);
7362 : 17154 : tree _q21 = TREE_OPERAND (_p0, 1);
7363 : 17154 : switch (TREE_CODE (_p1))
7364 : : {
7365 : 5115 : case BIT_AND_EXPR:
7366 : 5115 : {
7367 : 5115 : tree _q50 = TREE_OPERAND (_p1, 0);
7368 : 5115 : tree _q51 = TREE_OPERAND (_p1, 1);
7369 : 5115 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
7370 : : {
7371 : 0 : {
7372 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q20, _q51, _p0, _q21 };
7373 : 0 : tree res = generic_simplify_109 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR, BIT_AND_EXPR);
7374 : 0 : if (res) return res;
7375 : : }
7376 : : }
7377 : 5115 : if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
7378 : : {
7379 : 0 : {
7380 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q21, _q51, _p0, _q20 };
7381 : 0 : tree res = generic_simplify_109 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR, BIT_AND_EXPR);
7382 : 0 : if (res) return res;
7383 : : }
7384 : : }
7385 : 5115 : if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
7386 : : {
7387 : 0 : {
7388 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q20, _q50, _p0, _q21 };
7389 : 0 : tree res = generic_simplify_109 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR, BIT_AND_EXPR);
7390 : 0 : if (res) return res;
7391 : : }
7392 : : }
7393 : 5115 : if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
7394 : : {
7395 : 0 : {
7396 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q21, _q50, _p0, _q20 };
7397 : 0 : tree res = generic_simplify_109 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR, BIT_AND_EXPR);
7398 : 0 : if (res) return res;
7399 : : }
7400 : : }
7401 : : break;
7402 : : }
7403 : : default:;
7404 : : }
7405 : : break;
7406 : : }
7407 : 21124 : case BIT_NOT_EXPR:
7408 : 21124 : {
7409 : 21124 : tree _q20 = TREE_OPERAND (_p0, 0);
7410 : 21124 : switch (TREE_CODE (_q20))
7411 : : {
7412 : 12 : case BIT_AND_EXPR:
7413 : 12 : {
7414 : 12 : tree _q30 = TREE_OPERAND (_q20, 0);
7415 : 12 : tree _q31 = TREE_OPERAND (_q20, 1);
7416 : 12 : switch (TREE_CODE (_p1))
7417 : : {
7418 : 1 : case BIT_AND_EXPR:
7419 : 1 : {
7420 : 1 : tree _q60 = TREE_OPERAND (_p1, 0);
7421 : 1 : tree _q61 = TREE_OPERAND (_p1, 1);
7422 : 1 : if ((_q61 == _q30 && ! TREE_SIDE_EFFECTS (_q61)) || (operand_equal_p (_q61, _q30, 0) && types_match (_q61, _q30)))
7423 : : {
7424 : 0 : {
7425 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q60, _q30, _p0, _q31 };
7426 : 0 : tree res = generic_simplify_110 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR, BIT_AND_EXPR);
7427 : 0 : if (res) return res;
7428 : : }
7429 : : }
7430 : 1 : if ((_q61 == _q31 && ! TREE_SIDE_EFFECTS (_q61)) || (operand_equal_p (_q61, _q31, 0) && types_match (_q61, _q31)))
7431 : : {
7432 : 0 : {
7433 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q60, _q31, _p0, _q30 };
7434 : 0 : tree res = generic_simplify_110 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR, BIT_AND_EXPR);
7435 : 0 : if (res) return res;
7436 : : }
7437 : : }
7438 : 1 : if ((_q60 == _q30 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q30, 0) && types_match (_q60, _q30)))
7439 : : {
7440 : 0 : {
7441 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q61, _q30, _p0, _q31 };
7442 : 0 : tree res = generic_simplify_110 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR, BIT_AND_EXPR);
7443 : 0 : if (res) return res;
7444 : : }
7445 : : }
7446 : 1 : if ((_q60 == _q31 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q31, 0) && types_match (_q60, _q31)))
7447 : : {
7448 : 0 : {
7449 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q61, _q31, _p0, _q30 };
7450 : 0 : tree res = generic_simplify_110 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR, BIT_AND_EXPR);
7451 : 0 : if (res) return res;
7452 : : }
7453 : : }
7454 : : break;
7455 : : }
7456 : 12 : default:;
7457 : : }
7458 : 12 : if ((_p1 == _q30 && ! TREE_SIDE_EFFECTS (_p1)) || (operand_equal_p (_p1, _q30, 0) && types_match (_p1, _q30)))
7459 : : {
7460 : 0 : {
7461 : 0 : tree captures[2] ATTRIBUTE_UNUSED = { _q30, _q31 };
7462 : 0 : tree res = generic_simplify_111 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR, BIT_AND_EXPR);
7463 : 0 : if (res) return res;
7464 : : }
7465 : : }
7466 : 12 : if ((_p1 == _q31 && ! TREE_SIDE_EFFECTS (_p1)) || (operand_equal_p (_p1, _q31, 0) && types_match (_p1, _q31)))
7467 : : {
7468 : 1 : {
7469 : 1 : tree captures[2] ATTRIBUTE_UNUSED = { _q31, _q30 };
7470 : 1 : tree res = generic_simplify_111 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR, BIT_AND_EXPR);
7471 : 1 : if (res) return res;
7472 : : }
7473 : : }
7474 : : break;
7475 : : }
7476 : : default:;
7477 : : }
7478 : : break;
7479 : : }
7480 : 1790355 : default:;
7481 : : }
7482 : 1790355 : switch (TREE_CODE (_p1))
7483 : : {
7484 : 393 : case BIT_NOT_EXPR:
7485 : 393 : {
7486 : 393 : tree _q30 = TREE_OPERAND (_p1, 0);
7487 : 393 : switch (TREE_CODE (_q30))
7488 : : {
7489 : 0 : case BIT_AND_EXPR:
7490 : 0 : {
7491 : 0 : tree _q40 = TREE_OPERAND (_q30, 0);
7492 : 0 : tree _q41 = TREE_OPERAND (_q30, 1);
7493 : 0 : if ((_q40 == _p0 && ! TREE_SIDE_EFFECTS (_q40)) || (operand_equal_p (_q40, _p0, 0) && types_match (_q40, _p0)))
7494 : : {
7495 : 0 : {
7496 : 0 : tree captures[2] ATTRIBUTE_UNUSED = { _p0, _q41 };
7497 : 0 : tree res = generic_simplify_111 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR, BIT_AND_EXPR);
7498 : 0 : if (res) return res;
7499 : : }
7500 : : }
7501 : 0 : if ((_q41 == _p0 && ! TREE_SIDE_EFFECTS (_q41)) || (operand_equal_p (_q41, _p0, 0) && types_match (_q41, _p0)))
7502 : : {
7503 : 0 : {
7504 : 0 : tree captures[2] ATTRIBUTE_UNUSED = { _p0, _q40 };
7505 : 0 : tree res = generic_simplify_111 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR, BIT_AND_EXPR);
7506 : 0 : if (res) return res;
7507 : : }
7508 : : }
7509 : : break;
7510 : : }
7511 : : default:;
7512 : : }
7513 : : break;
7514 : : }
7515 : 1790355 : default:;
7516 : : }
7517 : 1790355 : {
7518 : 1790355 : tree _p0_pops[1];
7519 : 1790355 : if (tree_nop_convert (_p0, _p0_pops))
7520 : : {
7521 : 526200 : tree _q20 = _p0_pops[0];
7522 : 526200 : switch (TREE_CODE (_q20))
7523 : : {
7524 : 98 : case BIT_AND_EXPR:
7525 : 98 : {
7526 : 98 : tree _q30 = TREE_OPERAND (_q20, 0);
7527 : 98 : tree _q31 = TREE_OPERAND (_q20, 1);
7528 : 98 : {
7529 : 98 : tree _q30_pops[1];
7530 : 98 : if (tree_nop_convert (_q30, _q30_pops))
7531 : : {
7532 : 16 : tree _q40 = _q30_pops[0];
7533 : 16 : switch (TREE_CODE (_q40))
7534 : : {
7535 : 0 : case BIT_IOR_EXPR:
7536 : 0 : {
7537 : 0 : tree _q50 = TREE_OPERAND (_q40, 0);
7538 : 0 : tree _q51 = TREE_OPERAND (_q40, 1);
7539 : 0 : {
7540 : 0 : tree captures[8] ATTRIBUTE_UNUSED = { _p0, _q20, _q30, _q40, _q50, _q51, _q31, _p1 };
7541 : 0 : tree res = generic_simplify_112 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR);
7542 : 0 : if (res) return res;
7543 : : }
7544 : 0 : {
7545 : 0 : tree captures[8] ATTRIBUTE_UNUSED = { _p0, _q20, _q30, _q40, _q51, _q50, _q31, _p1 };
7546 : 0 : tree res = generic_simplify_112 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR);
7547 : 0 : if (res) return res;
7548 : : }
7549 : 0 : break;
7550 : : }
7551 : 0 : case BIT_XOR_EXPR:
7552 : 0 : {
7553 : 0 : tree _q50 = TREE_OPERAND (_q40, 0);
7554 : 0 : tree _q51 = TREE_OPERAND (_q40, 1);
7555 : 0 : {
7556 : 0 : tree captures[8] ATTRIBUTE_UNUSED = { _p0, _q20, _q30, _q40, _q50, _q51, _q31, _p1 };
7557 : 0 : tree res = generic_simplify_112 (loc, type, _p0, _p1, captures, BIT_XOR_EXPR);
7558 : 0 : if (res) return res;
7559 : : }
7560 : 0 : {
7561 : 0 : tree captures[8] ATTRIBUTE_UNUSED = { _p0, _q20, _q30, _q40, _q51, _q50, _q31, _p1 };
7562 : 0 : tree res = generic_simplify_112 (loc, type, _p0, _p1, captures, BIT_XOR_EXPR);
7563 : 0 : if (res) return res;
7564 : : }
7565 : 0 : break;
7566 : : }
7567 : : default:;
7568 : : }
7569 : : }
7570 : : }
7571 : 98 : {
7572 : 98 : tree _q31_pops[1];
7573 : 98 : if (tree_nop_convert (_q31, _q31_pops))
7574 : : {
7575 : 74 : tree _q50 = _q31_pops[0];
7576 : 74 : switch (TREE_CODE (_q50))
7577 : : {
7578 : 0 : case BIT_IOR_EXPR:
7579 : 0 : {
7580 : 0 : tree _q60 = TREE_OPERAND (_q50, 0);
7581 : 0 : tree _q61 = TREE_OPERAND (_q50, 1);
7582 : 0 : {
7583 : 0 : tree captures[8] ATTRIBUTE_UNUSED = { _p0, _q20, _q31, _q50, _q60, _q61, _q30, _p1 };
7584 : 0 : tree res = generic_simplify_112 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR);
7585 : 0 : if (res) return res;
7586 : : }
7587 : 0 : {
7588 : 0 : tree captures[8] ATTRIBUTE_UNUSED = { _p0, _q20, _q31, _q50, _q61, _q60, _q30, _p1 };
7589 : 0 : tree res = generic_simplify_112 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR);
7590 : 0 : if (res) return res;
7591 : : }
7592 : 0 : break;
7593 : : }
7594 : 0 : case BIT_XOR_EXPR:
7595 : 0 : {
7596 : 0 : tree _q60 = TREE_OPERAND (_q50, 0);
7597 : 0 : tree _q61 = TREE_OPERAND (_q50, 1);
7598 : 0 : {
7599 : 0 : tree captures[8] ATTRIBUTE_UNUSED = { _p0, _q20, _q31, _q50, _q60, _q61, _q30, _p1 };
7600 : 0 : tree res = generic_simplify_112 (loc, type, _p0, _p1, captures, BIT_XOR_EXPR);
7601 : 0 : if (res) return res;
7602 : : }
7603 : 0 : {
7604 : 0 : tree captures[8] ATTRIBUTE_UNUSED = { _p0, _q20, _q31, _q50, _q61, _q60, _q30, _p1 };
7605 : 0 : tree res = generic_simplify_112 (loc, type, _p0, _p1, captures, BIT_XOR_EXPR);
7606 : 0 : if (res) return res;
7607 : : }
7608 : 0 : break;
7609 : : }
7610 : : default:;
7611 : : }
7612 : : }
7613 : : }
7614 : 98 : switch (TREE_CODE (_q30))
7615 : : {
7616 : 0 : case BIT_IOR_EXPR:
7617 : 0 : {
7618 : 0 : tree _q40 = TREE_OPERAND (_q30, 0);
7619 : 0 : tree _q41 = TREE_OPERAND (_q30, 1);
7620 : 0 : {
7621 : 0 : tree captures[8] ATTRIBUTE_UNUSED = { _p0, _q20, _q30, _q30, _q40, _q41, _q31, _p1 };
7622 : 0 : tree res = generic_simplify_113 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR);
7623 : 0 : if (res) return res;
7624 : : }
7625 : 0 : {
7626 : 0 : tree captures[8] ATTRIBUTE_UNUSED = { _p0, _q20, _q30, _q30, _q41, _q40, _q31, _p1 };
7627 : 0 : tree res = generic_simplify_113 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR);
7628 : 0 : if (res) return res;
7629 : : }
7630 : 0 : break;
7631 : : }
7632 : 0 : case BIT_XOR_EXPR:
7633 : 0 : {
7634 : 0 : tree _q40 = TREE_OPERAND (_q30, 0);
7635 : 0 : tree _q41 = TREE_OPERAND (_q30, 1);
7636 : 0 : {
7637 : 0 : tree captures[8] ATTRIBUTE_UNUSED = { _p0, _q20, _q30, _q30, _q40, _q41, _q31, _p1 };
7638 : 0 : tree res = generic_simplify_113 (loc, type, _p0, _p1, captures, BIT_XOR_EXPR);
7639 : 0 : if (res) return res;
7640 : : }
7641 : 0 : {
7642 : 0 : tree captures[8] ATTRIBUTE_UNUSED = { _p0, _q20, _q30, _q30, _q41, _q40, _q31, _p1 };
7643 : 0 : tree res = generic_simplify_113 (loc, type, _p0, _p1, captures, BIT_XOR_EXPR);
7644 : 0 : if (res) return res;
7645 : : }
7646 : 0 : break;
7647 : : }
7648 : 98 : default:;
7649 : : }
7650 : 98 : switch (TREE_CODE (_q31))
7651 : : {
7652 : 0 : case BIT_IOR_EXPR:
7653 : 0 : {
7654 : 0 : tree _q50 = TREE_OPERAND (_q31, 0);
7655 : 0 : tree _q51 = TREE_OPERAND (_q31, 1);
7656 : 0 : {
7657 : 0 : tree captures[8] ATTRIBUTE_UNUSED = { _p0, _q20, _q31, _q31, _q50, _q51, _q30, _p1 };
7658 : 0 : tree res = generic_simplify_113 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR);
7659 : 0 : if (res) return res;
7660 : : }
7661 : 0 : {
7662 : 0 : tree captures[8] ATTRIBUTE_UNUSED = { _p0, _q20, _q31, _q31, _q51, _q50, _q30, _p1 };
7663 : 0 : tree res = generic_simplify_113 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR);
7664 : 0 : if (res) return res;
7665 : : }
7666 : 0 : break;
7667 : : }
7668 : 0 : case BIT_XOR_EXPR:
7669 : 0 : {
7670 : 0 : tree _q50 = TREE_OPERAND (_q31, 0);
7671 : 0 : tree _q51 = TREE_OPERAND (_q31, 1);
7672 : 0 : {
7673 : 0 : tree captures[8] ATTRIBUTE_UNUSED = { _p0, _q20, _q31, _q31, _q50, _q51, _q30, _p1 };
7674 : 0 : tree res = generic_simplify_113 (loc, type, _p0, _p1, captures, BIT_XOR_EXPR);
7675 : 0 : if (res) return res;
7676 : : }
7677 : 0 : {
7678 : 0 : tree captures[8] ATTRIBUTE_UNUSED = { _p0, _q20, _q31, _q31, _q51, _q50, _q30, _p1 };
7679 : 0 : tree res = generic_simplify_113 (loc, type, _p0, _p1, captures, BIT_XOR_EXPR);
7680 : 0 : if (res) return res;
7681 : : }
7682 : 0 : break;
7683 : : }
7684 : : default:;
7685 : : }
7686 : : break;
7687 : : }
7688 : 14 : case MULT_EXPR:
7689 : 14 : {
7690 : 14 : tree _q30 = TREE_OPERAND (_q20, 0);
7691 : 14 : tree _q31 = TREE_OPERAND (_q20, 1);
7692 : 14 : {
7693 : 14 : tree _q30_pops[1];
7694 : 14 : if (tree_nop_convert (_q30, _q30_pops))
7695 : : {
7696 : 0 : tree _q40 = _q30_pops[0];
7697 : 0 : switch (TREE_CODE (_q31))
7698 : : {
7699 : 0 : case INTEGER_CST:
7700 : 0 : {
7701 : 0 : switch (TREE_CODE (_p1))
7702 : : {
7703 : 0 : case LSHIFT_EXPR:
7704 : 0 : {
7705 : 0 : tree _q70 = TREE_OPERAND (_p1, 0);
7706 : 0 : tree _q71 = TREE_OPERAND (_p1, 1);
7707 : 0 : if ((_q70 == _q40 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q40, 0) && types_match (_q70, _q40)))
7708 : : {
7709 : 0 : switch (TREE_CODE (_q71))
7710 : : {
7711 : 0 : case INTEGER_CST:
7712 : 0 : {
7713 : 0 : {
7714 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q40, _q31, _p1, _q71 };
7715 : 0 : tree res = generic_simplify_115 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR);
7716 : 0 : if (res) return res;
7717 : : }
7718 : 0 : break;
7719 : : }
7720 : : default:;
7721 : : }
7722 : : }
7723 : : break;
7724 : : }
7725 : 0 : default:;
7726 : : }
7727 : 0 : {
7728 : 0 : tree _p1_pops[1];
7729 : 0 : if (tree_nop_convert (_p1, _p1_pops))
7730 : : {
7731 : 0 : tree _q70 = _p1_pops[0];
7732 : 0 : switch (TREE_CODE (_q70))
7733 : : {
7734 : 0 : case MULT_EXPR:
7735 : 0 : {
7736 : 0 : tree _q80 = TREE_OPERAND (_q70, 0);
7737 : 0 : tree _q81 = TREE_OPERAND (_q70, 1);
7738 : 0 : {
7739 : 0 : tree _q80_pops[1];
7740 : 0 : if (tree_nop_convert (_q80, _q80_pops))
7741 : : {
7742 : 0 : tree _q90 = _q80_pops[0];
7743 : 0 : switch (TREE_CODE (_q81))
7744 : : {
7745 : 0 : case INTEGER_CST:
7746 : 0 : {
7747 : 0 : {
7748 : 0 : tree captures[8] ATTRIBUTE_UNUSED = { _p0, _q20, _q40, _q31, _p1, _q70, _q90, _q81 };
7749 : 0 : tree res = generic_simplify_114 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR);
7750 : 0 : if (res) return res;
7751 : : }
7752 : 0 : break;
7753 : : }
7754 : : default:;
7755 : : }
7756 : : }
7757 : : }
7758 : 0 : break;
7759 : : }
7760 : : default:;
7761 : : }
7762 : : }
7763 : : }
7764 : 0 : if ((_p1 == _q40 && ! TREE_SIDE_EFFECTS (_p1)) || (operand_equal_p (_p1, _q40, 0) && types_match (_p1, _q40)))
7765 : : {
7766 : 0 : {
7767 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _p0, _q20, _q40, _q31 };
7768 : 0 : tree res = generic_simplify_116 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR);
7769 : 0 : if (res) return res;
7770 : : }
7771 : : }
7772 : : break;
7773 : : }
7774 : : default:;
7775 : : }
7776 : : }
7777 : : }
7778 : 14 : break;
7779 : : }
7780 : : default:;
7781 : : }
7782 : : }
7783 : : }
7784 : 1790355 : switch (TREE_CODE (_p1))
7785 : : {
7786 : 53202 : case BIT_AND_EXPR:
7787 : 53202 : {
7788 : 53202 : tree _q30 = TREE_OPERAND (_p1, 0);
7789 : 53202 : tree _q31 = TREE_OPERAND (_p1, 1);
7790 : 53202 : {
7791 : 53202 : tree _q30_pops[1];
7792 : 53202 : if (tree_nop_convert (_q30, _q30_pops))
7793 : : {
7794 : 146 : tree _q40 = _q30_pops[0];
7795 : 146 : switch (TREE_CODE (_q40))
7796 : : {
7797 : 0 : case BIT_IOR_EXPR:
7798 : 0 : {
7799 : 0 : tree _q50 = TREE_OPERAND (_q40, 0);
7800 : 0 : tree _q51 = TREE_OPERAND (_q40, 1);
7801 : 0 : {
7802 : 0 : tree captures[8] ATTRIBUTE_UNUSED = { _p1, _p1, _q30, _q40, _q50, _q51, _q31, _p0 };
7803 : 0 : tree res = generic_simplify_107 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR);
7804 : 0 : if (res) return res;
7805 : : }
7806 : 0 : {
7807 : 0 : tree captures[8] ATTRIBUTE_UNUSED = { _p1, _p1, _q30, _q40, _q51, _q50, _q31, _p0 };
7808 : 0 : tree res = generic_simplify_107 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR);
7809 : 0 : if (res) return res;
7810 : : }
7811 : 0 : break;
7812 : : }
7813 : 0 : case BIT_XOR_EXPR:
7814 : 0 : {
7815 : 0 : tree _q50 = TREE_OPERAND (_q40, 0);
7816 : 0 : tree _q51 = TREE_OPERAND (_q40, 1);
7817 : 0 : {
7818 : 0 : tree captures[8] ATTRIBUTE_UNUSED = { _p1, _p1, _q30, _q40, _q50, _q51, _q31, _p0 };
7819 : 0 : tree res = generic_simplify_107 (loc, type, _p0, _p1, captures, BIT_XOR_EXPR);
7820 : 0 : if (res) return res;
7821 : : }
7822 : 0 : {
7823 : 0 : tree captures[8] ATTRIBUTE_UNUSED = { _p1, _p1, _q30, _q40, _q51, _q50, _q31, _p0 };
7824 : 0 : tree res = generic_simplify_107 (loc, type, _p0, _p1, captures, BIT_XOR_EXPR);
7825 : 0 : if (res) return res;
7826 : : }
7827 : 0 : break;
7828 : : }
7829 : : default:;
7830 : : }
7831 : : }
7832 : : }
7833 : 53202 : {
7834 : 53202 : tree _q31_pops[1];
7835 : 53202 : if (tree_nop_convert (_q31, _q31_pops))
7836 : : {
7837 : 113 : tree _q50 = _q31_pops[0];
7838 : 113 : switch (TREE_CODE (_q50))
7839 : : {
7840 : 0 : case BIT_IOR_EXPR:
7841 : 0 : {
7842 : 0 : tree _q60 = TREE_OPERAND (_q50, 0);
7843 : 0 : tree _q61 = TREE_OPERAND (_q50, 1);
7844 : 0 : {
7845 : 0 : tree captures[8] ATTRIBUTE_UNUSED = { _p1, _p1, _q31, _q50, _q60, _q61, _q30, _p0 };
7846 : 0 : tree res = generic_simplify_107 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR);
7847 : 0 : if (res) return res;
7848 : : }
7849 : 0 : {
7850 : 0 : tree captures[8] ATTRIBUTE_UNUSED = { _p1, _p1, _q31, _q50, _q61, _q60, _q30, _p0 };
7851 : 0 : tree res = generic_simplify_107 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR);
7852 : 0 : if (res) return res;
7853 : : }
7854 : 0 : break;
7855 : : }
7856 : 1 : case BIT_XOR_EXPR:
7857 : 1 : {
7858 : 1 : tree _q60 = TREE_OPERAND (_q50, 0);
7859 : 1 : tree _q61 = TREE_OPERAND (_q50, 1);
7860 : 1 : {
7861 : 1 : tree captures[8] ATTRIBUTE_UNUSED = { _p1, _p1, _q31, _q50, _q60, _q61, _q30, _p0 };
7862 : 1 : tree res = generic_simplify_107 (loc, type, _p0, _p1, captures, BIT_XOR_EXPR);
7863 : 1 : if (res) return res;
7864 : : }
7865 : 1 : {
7866 : 1 : tree captures[8] ATTRIBUTE_UNUSED = { _p1, _p1, _q31, _q50, _q61, _q60, _q30, _p0 };
7867 : 1 : tree res = generic_simplify_107 (loc, type, _p0, _p1, captures, BIT_XOR_EXPR);
7868 : 1 : if (res) return res;
7869 : : }
7870 : 1 : break;
7871 : : }
7872 : : default:;
7873 : : }
7874 : : }
7875 : : }
7876 : 53202 : switch (TREE_CODE (_q30))
7877 : : {
7878 : 274 : case BIT_IOR_EXPR:
7879 : 274 : {
7880 : 274 : tree _q40 = TREE_OPERAND (_q30, 0);
7881 : 274 : tree _q41 = TREE_OPERAND (_q30, 1);
7882 : 274 : {
7883 : 274 : tree captures[8] ATTRIBUTE_UNUSED = { _p1, _p1, _q30, _q30, _q40, _q41, _q31, _p0 };
7884 : 274 : tree res = generic_simplify_108 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR);
7885 : 274 : if (res) return res;
7886 : : }
7887 : 274 : {
7888 : 274 : tree captures[8] ATTRIBUTE_UNUSED = { _p1, _p1, _q30, _q30, _q41, _q40, _q31, _p0 };
7889 : 274 : tree res = generic_simplify_108 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR);
7890 : 274 : if (res) return res;
7891 : : }
7892 : 274 : break;
7893 : : }
7894 : 0 : case BIT_XOR_EXPR:
7895 : 0 : {
7896 : 0 : tree _q40 = TREE_OPERAND (_q30, 0);
7897 : 0 : tree _q41 = TREE_OPERAND (_q30, 1);
7898 : 0 : {
7899 : 0 : tree captures[8] ATTRIBUTE_UNUSED = { _p1, _p1, _q30, _q30, _q40, _q41, _q31, _p0 };
7900 : 0 : tree res = generic_simplify_108 (loc, type, _p0, _p1, captures, BIT_XOR_EXPR);
7901 : 0 : if (res) return res;
7902 : : }
7903 : 0 : {
7904 : 0 : tree captures[8] ATTRIBUTE_UNUSED = { _p1, _p1, _q30, _q30, _q41, _q40, _q31, _p0 };
7905 : 0 : tree res = generic_simplify_108 (loc, type, _p0, _p1, captures, BIT_XOR_EXPR);
7906 : 0 : if (res) return res;
7907 : : }
7908 : 0 : break;
7909 : : }
7910 : 53202 : default:;
7911 : : }
7912 : 53202 : switch (TREE_CODE (_q31))
7913 : : {
7914 : 0 : case BIT_IOR_EXPR:
7915 : 0 : {
7916 : 0 : tree _q50 = TREE_OPERAND (_q31, 0);
7917 : 0 : tree _q51 = TREE_OPERAND (_q31, 1);
7918 : 0 : {
7919 : 0 : tree captures[8] ATTRIBUTE_UNUSED = { _p1, _p1, _q31, _q31, _q50, _q51, _q30, _p0 };
7920 : 0 : tree res = generic_simplify_108 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR);
7921 : 0 : if (res) return res;
7922 : : }
7923 : 0 : {
7924 : 0 : tree captures[8] ATTRIBUTE_UNUSED = { _p1, _p1, _q31, _q31, _q51, _q50, _q30, _p0 };
7925 : 0 : tree res = generic_simplify_108 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR);
7926 : 0 : if (res) return res;
7927 : : }
7928 : 0 : break;
7929 : : }
7930 : 0 : case BIT_XOR_EXPR:
7931 : 0 : {
7932 : 0 : tree _q50 = TREE_OPERAND (_q31, 0);
7933 : 0 : tree _q51 = TREE_OPERAND (_q31, 1);
7934 : 0 : {
7935 : 0 : tree captures[8] ATTRIBUTE_UNUSED = { _p1, _p1, _q31, _q31, _q50, _q51, _q30, _p0 };
7936 : 0 : tree res = generic_simplify_108 (loc, type, _p0, _p1, captures, BIT_XOR_EXPR);
7937 : 0 : if (res) return res;
7938 : : }
7939 : 0 : {
7940 : 0 : tree captures[8] ATTRIBUTE_UNUSED = { _p1, _p1, _q31, _q31, _q51, _q50, _q30, _p0 };
7941 : 0 : tree res = generic_simplify_108 (loc, type, _p0, _p1, captures, BIT_XOR_EXPR);
7942 : 0 : if (res) return res;
7943 : : }
7944 : 0 : break;
7945 : : }
7946 : : default:;
7947 : : }
7948 : : break;
7949 : : }
7950 : 1790355 : default:;
7951 : : }
7952 : 1790355 : {
7953 : 1790355 : tree _p1_pops[1];
7954 : 1790355 : if (tree_nop_convert (_p1, _p1_pops))
7955 : : {
7956 : 868565 : tree _q30 = _p1_pops[0];
7957 : 868565 : switch (TREE_CODE (_q30))
7958 : : {
7959 : 36 : case BIT_AND_EXPR:
7960 : 36 : {
7961 : 36 : tree _q40 = TREE_OPERAND (_q30, 0);
7962 : 36 : tree _q41 = TREE_OPERAND (_q30, 1);
7963 : 36 : {
7964 : 36 : tree _q40_pops[1];
7965 : 36 : if (tree_nop_convert (_q40, _q40_pops))
7966 : : {
7967 : 0 : tree _q50 = _q40_pops[0];
7968 : 0 : switch (TREE_CODE (_q50))
7969 : : {
7970 : 0 : case BIT_IOR_EXPR:
7971 : 0 : {
7972 : 0 : tree _q60 = TREE_OPERAND (_q50, 0);
7973 : 0 : tree _q61 = TREE_OPERAND (_q50, 1);
7974 : 0 : {
7975 : 0 : tree captures[8] ATTRIBUTE_UNUSED = { _p1, _q30, _q40, _q50, _q60, _q61, _q41, _p0 };
7976 : 0 : tree res = generic_simplify_112 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR);
7977 : 0 : if (res) return res;
7978 : : }
7979 : 0 : {
7980 : 0 : tree captures[8] ATTRIBUTE_UNUSED = { _p1, _q30, _q40, _q50, _q61, _q60, _q41, _p0 };
7981 : 0 : tree res = generic_simplify_112 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR);
7982 : 0 : if (res) return res;
7983 : : }
7984 : 0 : break;
7985 : : }
7986 : 0 : case BIT_XOR_EXPR:
7987 : 0 : {
7988 : 0 : tree _q60 = TREE_OPERAND (_q50, 0);
7989 : 0 : tree _q61 = TREE_OPERAND (_q50, 1);
7990 : 0 : {
7991 : 0 : tree captures[8] ATTRIBUTE_UNUSED = { _p1, _q30, _q40, _q50, _q60, _q61, _q41, _p0 };
7992 : 0 : tree res = generic_simplify_112 (loc, type, _p0, _p1, captures, BIT_XOR_EXPR);
7993 : 0 : if (res) return res;
7994 : : }
7995 : 0 : {
7996 : 0 : tree captures[8] ATTRIBUTE_UNUSED = { _p1, _q30, _q40, _q50, _q61, _q60, _q41, _p0 };
7997 : 0 : tree res = generic_simplify_112 (loc, type, _p0, _p1, captures, BIT_XOR_EXPR);
7998 : 0 : if (res) return res;
7999 : : }
8000 : 0 : break;
8001 : : }
8002 : : default:;
8003 : : }
8004 : : }
8005 : : }
8006 : 36 : {
8007 : 36 : tree _q41_pops[1];
8008 : 36 : if (tree_nop_convert (_q41, _q41_pops))
8009 : : {
8010 : 0 : tree _q60 = _q41_pops[0];
8011 : 0 : switch (TREE_CODE (_q60))
8012 : : {
8013 : 0 : case BIT_IOR_EXPR:
8014 : 0 : {
8015 : 0 : tree _q70 = TREE_OPERAND (_q60, 0);
8016 : 0 : tree _q71 = TREE_OPERAND (_q60, 1);
8017 : 0 : {
8018 : 0 : tree captures[8] ATTRIBUTE_UNUSED = { _p1, _q30, _q41, _q60, _q70, _q71, _q40, _p0 };
8019 : 0 : tree res = generic_simplify_112 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR);
8020 : 0 : if (res) return res;
8021 : : }
8022 : 0 : {
8023 : 0 : tree captures[8] ATTRIBUTE_UNUSED = { _p1, _q30, _q41, _q60, _q71, _q70, _q40, _p0 };
8024 : 0 : tree res = generic_simplify_112 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR);
8025 : 0 : if (res) return res;
8026 : : }
8027 : 0 : break;
8028 : : }
8029 : 0 : case BIT_XOR_EXPR:
8030 : 0 : {
8031 : 0 : tree _q70 = TREE_OPERAND (_q60, 0);
8032 : 0 : tree _q71 = TREE_OPERAND (_q60, 1);
8033 : 0 : {
8034 : 0 : tree captures[8] ATTRIBUTE_UNUSED = { _p1, _q30, _q41, _q60, _q70, _q71, _q40, _p0 };
8035 : 0 : tree res = generic_simplify_112 (loc, type, _p0, _p1, captures, BIT_XOR_EXPR);
8036 : 0 : if (res) return res;
8037 : : }
8038 : 0 : {
8039 : 0 : tree captures[8] ATTRIBUTE_UNUSED = { _p1, _q30, _q41, _q60, _q71, _q70, _q40, _p0 };
8040 : 0 : tree res = generic_simplify_112 (loc, type, _p0, _p1, captures, BIT_XOR_EXPR);
8041 : 0 : if (res) return res;
8042 : : }
8043 : 0 : break;
8044 : : }
8045 : : default:;
8046 : : }
8047 : : }
8048 : : }
8049 : 36 : switch (TREE_CODE (_q40))
8050 : : {
8051 : 0 : case BIT_IOR_EXPR:
8052 : 0 : {
8053 : 0 : tree _q50 = TREE_OPERAND (_q40, 0);
8054 : 0 : tree _q51 = TREE_OPERAND (_q40, 1);
8055 : 0 : {
8056 : 0 : tree captures[8] ATTRIBUTE_UNUSED = { _p1, _q30, _q40, _q40, _q50, _q51, _q41, _p0 };
8057 : 0 : tree res = generic_simplify_113 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR);
8058 : 0 : if (res) return res;
8059 : : }
8060 : 0 : {
8061 : 0 : tree captures[8] ATTRIBUTE_UNUSED = { _p1, _q30, _q40, _q40, _q51, _q50, _q41, _p0 };
8062 : 0 : tree res = generic_simplify_113 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR);
8063 : 0 : if (res) return res;
8064 : : }
8065 : 0 : break;
8066 : : }
8067 : 0 : case BIT_XOR_EXPR:
8068 : 0 : {
8069 : 0 : tree _q50 = TREE_OPERAND (_q40, 0);
8070 : 0 : tree _q51 = TREE_OPERAND (_q40, 1);
8071 : 0 : {
8072 : 0 : tree captures[8] ATTRIBUTE_UNUSED = { _p1, _q30, _q40, _q40, _q50, _q51, _q41, _p0 };
8073 : 0 : tree res = generic_simplify_113 (loc, type, _p0, _p1, captures, BIT_XOR_EXPR);
8074 : 0 : if (res) return res;
8075 : : }
8076 : 0 : {
8077 : 0 : tree captures[8] ATTRIBUTE_UNUSED = { _p1, _q30, _q40, _q40, _q51, _q50, _q41, _p0 };
8078 : 0 : tree res = generic_simplify_113 (loc, type, _p0, _p1, captures, BIT_XOR_EXPR);
8079 : 0 : if (res) return res;
8080 : : }
8081 : 0 : break;
8082 : : }
8083 : 36 : default:;
8084 : : }
8085 : 36 : switch (TREE_CODE (_q41))
8086 : : {
8087 : 0 : case BIT_IOR_EXPR:
8088 : 0 : {
8089 : 0 : tree _q60 = TREE_OPERAND (_q41, 0);
8090 : 0 : tree _q61 = TREE_OPERAND (_q41, 1);
8091 : 0 : {
8092 : 0 : tree captures[8] ATTRIBUTE_UNUSED = { _p1, _q30, _q41, _q41, _q60, _q61, _q40, _p0 };
8093 : 0 : tree res = generic_simplify_113 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR);
8094 : 0 : if (res) return res;
8095 : : }
8096 : 0 : {
8097 : 0 : tree captures[8] ATTRIBUTE_UNUSED = { _p1, _q30, _q41, _q41, _q61, _q60, _q40, _p0 };
8098 : 0 : tree res = generic_simplify_113 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR);
8099 : 0 : if (res) return res;
8100 : : }
8101 : 0 : break;
8102 : : }
8103 : 0 : case BIT_XOR_EXPR:
8104 : 0 : {
8105 : 0 : tree _q60 = TREE_OPERAND (_q41, 0);
8106 : 0 : tree _q61 = TREE_OPERAND (_q41, 1);
8107 : 0 : {
8108 : 0 : tree captures[8] ATTRIBUTE_UNUSED = { _p1, _q30, _q41, _q41, _q60, _q61, _q40, _p0 };
8109 : 0 : tree res = generic_simplify_113 (loc, type, _p0, _p1, captures, BIT_XOR_EXPR);
8110 : 0 : if (res) return res;
8111 : : }
8112 : 0 : {
8113 : 0 : tree captures[8] ATTRIBUTE_UNUSED = { _p1, _q30, _q41, _q41, _q61, _q60, _q40, _p0 };
8114 : 0 : tree res = generic_simplify_113 (loc, type, _p0, _p1, captures, BIT_XOR_EXPR);
8115 : 0 : if (res) return res;
8116 : : }
8117 : 0 : break;
8118 : : }
8119 : : default:;
8120 : : }
8121 : : break;
8122 : : }
8123 : : default:;
8124 : : }
8125 : : }
8126 : : }
8127 : 1790355 : switch (TREE_CODE (_p0))
8128 : : {
8129 : 17154 : case BIT_IOR_EXPR:
8130 : 17154 : {
8131 : 17154 : tree _q20 = TREE_OPERAND (_p0, 0);
8132 : 17154 : tree _q21 = TREE_OPERAND (_p0, 1);
8133 : 17154 : if (CONSTANT_CLASS_P (_q21))
8134 : : {
8135 : 818 : if (CONSTANT_CLASS_P (_p1))
8136 : : {
8137 : 128 : {
8138 : 128 : tree captures[3] ATTRIBUTE_UNUSED = { _q20, _q21, _p1 };
8139 : 128 : tree res = generic_simplify_117 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR);
8140 : 128 : if (res) return res;
8141 : : }
8142 : : }
8143 : : }
8144 : : break;
8145 : : }
8146 : 1635 : case COND_EXPR:
8147 : 1635 : {
8148 : 1635 : tree _q20 = TREE_OPERAND (_p0, 0);
8149 : 1635 : tree _q21 = TREE_OPERAND (_p0, 1);
8150 : 1635 : tree _q22 = TREE_OPERAND (_p0, 2);
8151 : 1635 : if (integer_zerop (_q22))
8152 : : {
8153 : 1551 : switch (TREE_CODE (_p1))
8154 : : {
8155 : 612 : case COND_EXPR:
8156 : 612 : {
8157 : 612 : tree _q60 = TREE_OPERAND (_p1, 0);
8158 : 612 : tree _q61 = TREE_OPERAND (_p1, 1);
8159 : 612 : tree _q62 = TREE_OPERAND (_p1, 2);
8160 : 612 : if ((_q60 == _q20 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q20, 0) && types_match (_q60, _q20)))
8161 : : {
8162 : 0 : if (integer_zerop (_q61))
8163 : : {
8164 : 0 : {
8165 : 0 : tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q62 };
8166 : 0 : const enum tree_code op = BIT_IOR_EXPR;
8167 : 0 : if (TREE_SIDE_EFFECTS (_p0)) goto next_after_fail1337;
8168 : 0 : if (TREE_SIDE_EFFECTS (_p1)) goto next_after_fail1337;
8169 : 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1337;
8170 : 0 : {
8171 : 0 : tree res_op0;
8172 : 0 : res_op0 = captures[1];
8173 : 0 : tree res_op1;
8174 : 0 : res_op1 = captures[2];
8175 : 0 : tree res_op2;
8176 : 0 : res_op2 = captures[4];
8177 : 0 : tree _r;
8178 : 0 : _r = fold_build3_loc (loc, COND_EXPR, type, res_op0, res_op1, res_op2);
8179 : 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 895, __FILE__, __LINE__, true);
8180 : 0 : return _r;
8181 : : }
8182 : 0 : next_after_fail1337:;
8183 : : }
8184 : : }
8185 : : }
8186 : : break;
8187 : : }
8188 : : default:;
8189 : : }
8190 : : }
8191 : 1635 : if (integer_zerop (_q21))
8192 : : {
8193 : 10 : switch (TREE_CODE (_p1))
8194 : : {
8195 : 0 : case COND_EXPR:
8196 : 0 : {
8197 : 0 : tree _q60 = TREE_OPERAND (_p1, 0);
8198 : 0 : tree _q61 = TREE_OPERAND (_p1, 1);
8199 : 0 : tree _q62 = TREE_OPERAND (_p1, 2);
8200 : 0 : if ((_q60 == _q20 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q20, 0) && types_match (_q60, _q20)))
8201 : : {
8202 : 0 : if (integer_zerop (_q62))
8203 : : {
8204 : 0 : {
8205 : 0 : tree captures[5] ATTRIBUTE_UNUSED = { _p1, _q20, _q61, _p0, _q22 };
8206 : 0 : const enum tree_code op = BIT_IOR_EXPR;
8207 : 0 : if (TREE_SIDE_EFFECTS (_p0)) goto next_after_fail1338;
8208 : 0 : if (TREE_SIDE_EFFECTS (_p1)) goto next_after_fail1338;
8209 : 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1338;
8210 : 0 : {
8211 : 0 : tree res_op0;
8212 : 0 : res_op0 = captures[1];
8213 : 0 : tree res_op1;
8214 : 0 : res_op1 = captures[2];
8215 : 0 : tree res_op2;
8216 : 0 : res_op2 = captures[4];
8217 : 0 : tree _r;
8218 : 0 : _r = fold_build3_loc (loc, COND_EXPR, type, res_op0, res_op1, res_op2);
8219 : 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 895, __FILE__, __LINE__, true);
8220 : 0 : return _r;
8221 : : }
8222 : 0 : next_after_fail1338:;
8223 : : }
8224 : : }
8225 : : }
8226 : : break;
8227 : : }
8228 : : default:;
8229 : : }
8230 : : }
8231 : 1635 : switch (TREE_CODE (_q20))
8232 : : {
8233 : 39 : case LT_EXPR:
8234 : 39 : {
8235 : 39 : tree _q30 = TREE_OPERAND (_q20, 0);
8236 : 39 : tree _q31 = TREE_OPERAND (_q20, 1);
8237 : 39 : if (zerop (_q22))
8238 : : {
8239 : 2 : switch (TREE_CODE (_p1))
8240 : : {
8241 : 0 : case COND_EXPR:
8242 : 0 : {
8243 : 0 : tree _q80 = TREE_OPERAND (_p1, 0);
8244 : 0 : tree _q81 = TREE_OPERAND (_p1, 1);
8245 : 0 : tree _q82 = TREE_OPERAND (_p1, 2);
8246 : 0 : switch (TREE_CODE (_q80))
8247 : : {
8248 : 0 : case GE_EXPR:
8249 : 0 : {
8250 : 0 : tree _q90 = TREE_OPERAND (_q80, 0);
8251 : 0 : tree _q91 = TREE_OPERAND (_q80, 1);
8252 : 0 : if ((_q90 == _q30 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q30, 0) && types_match (_q90, _q30)))
8253 : : {
8254 : 0 : if ((_q91 == _q31 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q31, 0) && types_match (_q91, _q31)))
8255 : : {
8256 : 0 : if (zerop (_q82))
8257 : : {
8258 : 0 : {
8259 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q20, _q30, _q31, _q21, _q80, _q81 };
8260 : 0 : tree res = generic_simplify_14 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR, LT_EXPR, GE_EXPR);
8261 : 0 : if (res) return res;
8262 : : }
8263 : : }
8264 : : }
8265 : : }
8266 : : break;
8267 : : }
8268 : : default:;
8269 : : }
8270 : : break;
8271 : : }
8272 : : default:;
8273 : : }
8274 : : }
8275 : : break;
8276 : : }
8277 : 1227 : case LE_EXPR:
8278 : 1227 : {
8279 : 1227 : tree _q30 = TREE_OPERAND (_q20, 0);
8280 : 1227 : tree _q31 = TREE_OPERAND (_q20, 1);
8281 : 1227 : if (zerop (_q22))
8282 : : {
8283 : 1211 : switch (TREE_CODE (_p1))
8284 : : {
8285 : 442 : case COND_EXPR:
8286 : 442 : {
8287 : 442 : tree _q80 = TREE_OPERAND (_p1, 0);
8288 : 442 : tree _q81 = TREE_OPERAND (_p1, 1);
8289 : 442 : tree _q82 = TREE_OPERAND (_p1, 2);
8290 : 442 : switch (TREE_CODE (_q80))
8291 : : {
8292 : 0 : case GT_EXPR:
8293 : 0 : {
8294 : 0 : tree _q90 = TREE_OPERAND (_q80, 0);
8295 : 0 : tree _q91 = TREE_OPERAND (_q80, 1);
8296 : 0 : if ((_q90 == _q30 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q30, 0) && types_match (_q90, _q30)))
8297 : : {
8298 : 0 : if ((_q91 == _q31 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q31, 0) && types_match (_q91, _q31)))
8299 : : {
8300 : 0 : if (zerop (_q82))
8301 : : {
8302 : 0 : {
8303 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q20, _q30, _q31, _q21, _q80, _q81 };
8304 : 0 : tree res = generic_simplify_14 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR, LE_EXPR, GT_EXPR);
8305 : 0 : if (res) return res;
8306 : : }
8307 : : }
8308 : : }
8309 : : }
8310 : : break;
8311 : : }
8312 : : default:;
8313 : : }
8314 : : break;
8315 : : }
8316 : : default:;
8317 : : }
8318 : : }
8319 : : break;
8320 : : }
8321 : 9 : case EQ_EXPR:
8322 : 9 : {
8323 : 9 : tree _q30 = TREE_OPERAND (_q20, 0);
8324 : 9 : tree _q31 = TREE_OPERAND (_q20, 1);
8325 : 9 : if (zerop (_q22))
8326 : : {
8327 : 4 : switch (TREE_CODE (_p1))
8328 : : {
8329 : 0 : case COND_EXPR:
8330 : 0 : {
8331 : 0 : tree _q80 = TREE_OPERAND (_p1, 0);
8332 : 0 : tree _q81 = TREE_OPERAND (_p1, 1);
8333 : 0 : tree _q82 = TREE_OPERAND (_p1, 2);
8334 : 0 : switch (TREE_CODE (_q80))
8335 : : {
8336 : 0 : case NE_EXPR:
8337 : 0 : {
8338 : 0 : tree _q90 = TREE_OPERAND (_q80, 0);
8339 : 0 : tree _q91 = TREE_OPERAND (_q80, 1);
8340 : 0 : if ((_q90 == _q30 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q30, 0) && types_match (_q90, _q30)))
8341 : : {
8342 : 0 : if ((_q91 == _q31 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q31, 0) && types_match (_q91, _q31)))
8343 : : {
8344 : 0 : if (zerop (_q82))
8345 : : {
8346 : 0 : {
8347 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q20, _q30, _q31, _q21, _q80, _q81 };
8348 : 0 : tree res = generic_simplify_14 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR, EQ_EXPR, NE_EXPR);
8349 : 0 : if (res) return res;
8350 : : }
8351 : : }
8352 : : }
8353 : : }
8354 : : break;
8355 : : }
8356 : : default:;
8357 : : }
8358 : : break;
8359 : : }
8360 : : default:;
8361 : : }
8362 : : }
8363 : : break;
8364 : : }
8365 : 232 : case NE_EXPR:
8366 : 232 : {
8367 : 232 : tree _q30 = TREE_OPERAND (_q20, 0);
8368 : 232 : tree _q31 = TREE_OPERAND (_q20, 1);
8369 : 232 : if (zerop (_q22))
8370 : : {
8371 : 216 : switch (TREE_CODE (_p1))
8372 : : {
8373 : 62 : case COND_EXPR:
8374 : 62 : {
8375 : 62 : tree _q80 = TREE_OPERAND (_p1, 0);
8376 : 62 : tree _q81 = TREE_OPERAND (_p1, 1);
8377 : 62 : tree _q82 = TREE_OPERAND (_p1, 2);
8378 : 62 : switch (TREE_CODE (_q80))
8379 : : {
8380 : 1 : case EQ_EXPR:
8381 : 1 : {
8382 : 1 : tree _q90 = TREE_OPERAND (_q80, 0);
8383 : 1 : tree _q91 = TREE_OPERAND (_q80, 1);
8384 : 1 : if ((_q90 == _q30 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q30, 0) && types_match (_q90, _q30)))
8385 : : {
8386 : 0 : if ((_q91 == _q31 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q31, 0) && types_match (_q91, _q31)))
8387 : : {
8388 : 0 : if (zerop (_q82))
8389 : : {
8390 : 0 : {
8391 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q20, _q30, _q31, _q21, _q80, _q81 };
8392 : 0 : tree res = generic_simplify_14 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR, NE_EXPR, EQ_EXPR);
8393 : 0 : if (res) return res;
8394 : : }
8395 : : }
8396 : : }
8397 : : }
8398 : : break;
8399 : : }
8400 : : default:;
8401 : : }
8402 : : break;
8403 : : }
8404 : : default:;
8405 : : }
8406 : : }
8407 : : break;
8408 : : }
8409 : 0 : case GE_EXPR:
8410 : 0 : {
8411 : 0 : tree _q30 = TREE_OPERAND (_q20, 0);
8412 : 0 : tree _q31 = TREE_OPERAND (_q20, 1);
8413 : 0 : if (zerop (_q22))
8414 : : {
8415 : 0 : switch (TREE_CODE (_p1))
8416 : : {
8417 : 0 : case COND_EXPR:
8418 : 0 : {
8419 : 0 : tree _q80 = TREE_OPERAND (_p1, 0);
8420 : 0 : tree _q81 = TREE_OPERAND (_p1, 1);
8421 : 0 : tree _q82 = TREE_OPERAND (_p1, 2);
8422 : 0 : switch (TREE_CODE (_q80))
8423 : : {
8424 : 0 : case LT_EXPR:
8425 : 0 : {
8426 : 0 : tree _q90 = TREE_OPERAND (_q80, 0);
8427 : 0 : tree _q91 = TREE_OPERAND (_q80, 1);
8428 : 0 : if ((_q90 == _q30 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q30, 0) && types_match (_q90, _q30)))
8429 : : {
8430 : 0 : if ((_q91 == _q31 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q31, 0) && types_match (_q91, _q31)))
8431 : : {
8432 : 0 : if (zerop (_q82))
8433 : : {
8434 : 0 : {
8435 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q20, _q30, _q31, _q21, _q80, _q81 };
8436 : 0 : tree res = generic_simplify_14 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR, GE_EXPR, LT_EXPR);
8437 : 0 : if (res) return res;
8438 : : }
8439 : : }
8440 : : }
8441 : : }
8442 : : break;
8443 : : }
8444 : : default:;
8445 : : }
8446 : : break;
8447 : : }
8448 : : default:;
8449 : : }
8450 : : }
8451 : : break;
8452 : : }
8453 : 0 : case GT_EXPR:
8454 : 0 : {
8455 : 0 : tree _q30 = TREE_OPERAND (_q20, 0);
8456 : 0 : tree _q31 = TREE_OPERAND (_q20, 1);
8457 : 0 : if (zerop (_q22))
8458 : : {
8459 : 0 : switch (TREE_CODE (_p1))
8460 : : {
8461 : 0 : case COND_EXPR:
8462 : 0 : {
8463 : 0 : tree _q80 = TREE_OPERAND (_p1, 0);
8464 : 0 : tree _q81 = TREE_OPERAND (_p1, 1);
8465 : 0 : tree _q82 = TREE_OPERAND (_p1, 2);
8466 : 0 : switch (TREE_CODE (_q80))
8467 : : {
8468 : 0 : case LE_EXPR:
8469 : 0 : {
8470 : 0 : tree _q90 = TREE_OPERAND (_q80, 0);
8471 : 0 : tree _q91 = TREE_OPERAND (_q80, 1);
8472 : 0 : if ((_q90 == _q30 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q30, 0) && types_match (_q90, _q30)))
8473 : : {
8474 : 0 : if ((_q91 == _q31 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q31, 0) && types_match (_q91, _q31)))
8475 : : {
8476 : 0 : if (zerop (_q82))
8477 : : {
8478 : 0 : {
8479 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q20, _q30, _q31, _q21, _q80, _q81 };
8480 : 0 : tree res = generic_simplify_14 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR, GT_EXPR, LE_EXPR);
8481 : 0 : if (res) return res;
8482 : : }
8483 : : }
8484 : : }
8485 : : }
8486 : : break;
8487 : : }
8488 : : default:;
8489 : : }
8490 : : break;
8491 : : }
8492 : : default:;
8493 : : }
8494 : : }
8495 : : break;
8496 : : }
8497 : 0 : case UNORDERED_EXPR:
8498 : 0 : {
8499 : 0 : tree _q30 = TREE_OPERAND (_q20, 0);
8500 : 0 : tree _q31 = TREE_OPERAND (_q20, 1);
8501 : 0 : if (zerop (_q22))
8502 : : {
8503 : 0 : switch (TREE_CODE (_p1))
8504 : : {
8505 : 0 : case COND_EXPR:
8506 : 0 : {
8507 : 0 : tree _q80 = TREE_OPERAND (_p1, 0);
8508 : 0 : tree _q81 = TREE_OPERAND (_p1, 1);
8509 : 0 : tree _q82 = TREE_OPERAND (_p1, 2);
8510 : 0 : switch (TREE_CODE (_q80))
8511 : : {
8512 : 0 : case ORDERED_EXPR:
8513 : 0 : {
8514 : 0 : tree _q90 = TREE_OPERAND (_q80, 0);
8515 : 0 : tree _q91 = TREE_OPERAND (_q80, 1);
8516 : 0 : if ((_q90 == _q30 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q30, 0) && types_match (_q90, _q30)))
8517 : : {
8518 : 0 : if ((_q91 == _q31 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q31, 0) && types_match (_q91, _q31)))
8519 : : {
8520 : 0 : if (zerop (_q82))
8521 : : {
8522 : 0 : {
8523 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q20, _q30, _q31, _q21, _q80, _q81 };
8524 : 0 : tree res = generic_simplify_14 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR, UNORDERED_EXPR, ORDERED_EXPR);
8525 : 0 : if (res) return res;
8526 : : }
8527 : : }
8528 : : }
8529 : : }
8530 : : break;
8531 : : }
8532 : : default:;
8533 : : }
8534 : : break;
8535 : : }
8536 : : default:;
8537 : : }
8538 : : }
8539 : : break;
8540 : : }
8541 : 0 : case ORDERED_EXPR:
8542 : 0 : {
8543 : 0 : tree _q30 = TREE_OPERAND (_q20, 0);
8544 : 0 : tree _q31 = TREE_OPERAND (_q20, 1);
8545 : 0 : if (zerop (_q22))
8546 : : {
8547 : 0 : switch (TREE_CODE (_p1))
8548 : : {
8549 : 0 : case COND_EXPR:
8550 : 0 : {
8551 : 0 : tree _q80 = TREE_OPERAND (_p1, 0);
8552 : 0 : tree _q81 = TREE_OPERAND (_p1, 1);
8553 : 0 : tree _q82 = TREE_OPERAND (_p1, 2);
8554 : 0 : switch (TREE_CODE (_q80))
8555 : : {
8556 : 0 : case UNORDERED_EXPR:
8557 : 0 : {
8558 : 0 : tree _q90 = TREE_OPERAND (_q80, 0);
8559 : 0 : tree _q91 = TREE_OPERAND (_q80, 1);
8560 : 0 : if ((_q90 == _q30 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q30, 0) && types_match (_q90, _q30)))
8561 : : {
8562 : 0 : if ((_q91 == _q31 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q31, 0) && types_match (_q91, _q31)))
8563 : : {
8564 : 0 : if (zerop (_q82))
8565 : : {
8566 : 0 : {
8567 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q20, _q30, _q31, _q21, _q80, _q81 };
8568 : 0 : tree res = generic_simplify_14 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR, ORDERED_EXPR, UNORDERED_EXPR);
8569 : 0 : if (res) return res;
8570 : : }
8571 : : }
8572 : : }
8573 : : }
8574 : : break;
8575 : : }
8576 : : default:;
8577 : : }
8578 : : break;
8579 : : }
8580 : : default:;
8581 : : }
8582 : : }
8583 : : break;
8584 : : }
8585 : 0 : case UNLT_EXPR:
8586 : 0 : {
8587 : 0 : tree _q30 = TREE_OPERAND (_q20, 0);
8588 : 0 : tree _q31 = TREE_OPERAND (_q20, 1);
8589 : 0 : if (zerop (_q22))
8590 : : {
8591 : 0 : switch (TREE_CODE (_p1))
8592 : : {
8593 : 0 : case COND_EXPR:
8594 : 0 : {
8595 : 0 : tree _q80 = TREE_OPERAND (_p1, 0);
8596 : 0 : tree _q81 = TREE_OPERAND (_p1, 1);
8597 : 0 : tree _q82 = TREE_OPERAND (_p1, 2);
8598 : 0 : switch (TREE_CODE (_q80))
8599 : : {
8600 : 0 : case GE_EXPR:
8601 : 0 : {
8602 : 0 : tree _q90 = TREE_OPERAND (_q80, 0);
8603 : 0 : tree _q91 = TREE_OPERAND (_q80, 1);
8604 : 0 : if ((_q90 == _q30 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q30, 0) && types_match (_q90, _q30)))
8605 : : {
8606 : 0 : if ((_q91 == _q31 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q31, 0) && types_match (_q91, _q31)))
8607 : : {
8608 : 0 : if (zerop (_q82))
8609 : : {
8610 : 0 : {
8611 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q20, _q30, _q31, _q21, _q80, _q81 };
8612 : 0 : tree res = generic_simplify_14 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR, UNLT_EXPR, GE_EXPR);
8613 : 0 : if (res) return res;
8614 : : }
8615 : : }
8616 : : }
8617 : : }
8618 : : break;
8619 : : }
8620 : : default:;
8621 : : }
8622 : : break;
8623 : : }
8624 : : default:;
8625 : : }
8626 : : }
8627 : : break;
8628 : : }
8629 : 0 : case UNLE_EXPR:
8630 : 0 : {
8631 : 0 : tree _q30 = TREE_OPERAND (_q20, 0);
8632 : 0 : tree _q31 = TREE_OPERAND (_q20, 1);
8633 : 0 : if (zerop (_q22))
8634 : : {
8635 : 0 : switch (TREE_CODE (_p1))
8636 : : {
8637 : 0 : case COND_EXPR:
8638 : 0 : {
8639 : 0 : tree _q80 = TREE_OPERAND (_p1, 0);
8640 : 0 : tree _q81 = TREE_OPERAND (_p1, 1);
8641 : 0 : tree _q82 = TREE_OPERAND (_p1, 2);
8642 : 0 : switch (TREE_CODE (_q80))
8643 : : {
8644 : 0 : case GT_EXPR:
8645 : 0 : {
8646 : 0 : tree _q90 = TREE_OPERAND (_q80, 0);
8647 : 0 : tree _q91 = TREE_OPERAND (_q80, 1);
8648 : 0 : if ((_q90 == _q30 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q30, 0) && types_match (_q90, _q30)))
8649 : : {
8650 : 0 : if ((_q91 == _q31 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q31, 0) && types_match (_q91, _q31)))
8651 : : {
8652 : 0 : if (zerop (_q82))
8653 : : {
8654 : 0 : {
8655 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q20, _q30, _q31, _q21, _q80, _q81 };
8656 : 0 : tree res = generic_simplify_14 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR, UNLE_EXPR, GT_EXPR);
8657 : 0 : if (res) return res;
8658 : : }
8659 : : }
8660 : : }
8661 : : }
8662 : : break;
8663 : : }
8664 : : default:;
8665 : : }
8666 : : break;
8667 : : }
8668 : : default:;
8669 : : }
8670 : : }
8671 : : break;
8672 : : }
8673 : 0 : case UNGT_EXPR:
8674 : 0 : {
8675 : 0 : tree _q30 = TREE_OPERAND (_q20, 0);
8676 : 0 : tree _q31 = TREE_OPERAND (_q20, 1);
8677 : 0 : if (zerop (_q22))
8678 : : {
8679 : 0 : switch (TREE_CODE (_p1))
8680 : : {
8681 : 0 : case COND_EXPR:
8682 : 0 : {
8683 : 0 : tree _q80 = TREE_OPERAND (_p1, 0);
8684 : 0 : tree _q81 = TREE_OPERAND (_p1, 1);
8685 : 0 : tree _q82 = TREE_OPERAND (_p1, 2);
8686 : 0 : switch (TREE_CODE (_q80))
8687 : : {
8688 : 0 : case LE_EXPR:
8689 : 0 : {
8690 : 0 : tree _q90 = TREE_OPERAND (_q80, 0);
8691 : 0 : tree _q91 = TREE_OPERAND (_q80, 1);
8692 : 0 : if ((_q90 == _q30 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q30, 0) && types_match (_q90, _q30)))
8693 : : {
8694 : 0 : if ((_q91 == _q31 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q31, 0) && types_match (_q91, _q31)))
8695 : : {
8696 : 0 : if (zerop (_q82))
8697 : : {
8698 : 0 : {
8699 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q20, _q30, _q31, _q21, _q80, _q81 };
8700 : 0 : tree res = generic_simplify_14 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR, UNGT_EXPR, LE_EXPR);
8701 : 0 : if (res) return res;
8702 : : }
8703 : : }
8704 : : }
8705 : : }
8706 : : break;
8707 : : }
8708 : : default:;
8709 : : }
8710 : : break;
8711 : : }
8712 : : default:;
8713 : : }
8714 : : }
8715 : : break;
8716 : : }
8717 : 0 : case UNGE_EXPR:
8718 : 0 : {
8719 : 0 : tree _q30 = TREE_OPERAND (_q20, 0);
8720 : 0 : tree _q31 = TREE_OPERAND (_q20, 1);
8721 : 0 : if (zerop (_q22))
8722 : : {
8723 : 0 : switch (TREE_CODE (_p1))
8724 : : {
8725 : 0 : case COND_EXPR:
8726 : 0 : {
8727 : 0 : tree _q80 = TREE_OPERAND (_p1, 0);
8728 : 0 : tree _q81 = TREE_OPERAND (_p1, 1);
8729 : 0 : tree _q82 = TREE_OPERAND (_p1, 2);
8730 : 0 : switch (TREE_CODE (_q80))
8731 : : {
8732 : 0 : case LT_EXPR:
8733 : 0 : {
8734 : 0 : tree _q90 = TREE_OPERAND (_q80, 0);
8735 : 0 : tree _q91 = TREE_OPERAND (_q80, 1);
8736 : 0 : if ((_q90 == _q30 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q30, 0) && types_match (_q90, _q30)))
8737 : : {
8738 : 0 : if ((_q91 == _q31 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q31, 0) && types_match (_q91, _q31)))
8739 : : {
8740 : 0 : if (zerop (_q82))
8741 : : {
8742 : 0 : {
8743 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q20, _q30, _q31, _q21, _q80, _q81 };
8744 : 0 : tree res = generic_simplify_14 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR, UNGE_EXPR, LT_EXPR);
8745 : 0 : if (res) return res;
8746 : : }
8747 : : }
8748 : : }
8749 : : }
8750 : : break;
8751 : : }
8752 : : default:;
8753 : : }
8754 : : break;
8755 : : }
8756 : : default:;
8757 : : }
8758 : : }
8759 : : break;
8760 : : }
8761 : 0 : case UNEQ_EXPR:
8762 : 0 : {
8763 : 0 : tree _q30 = TREE_OPERAND (_q20, 0);
8764 : 0 : tree _q31 = TREE_OPERAND (_q20, 1);
8765 : 0 : if (zerop (_q22))
8766 : : {
8767 : 0 : switch (TREE_CODE (_p1))
8768 : : {
8769 : 0 : case COND_EXPR:
8770 : 0 : {
8771 : 0 : tree _q80 = TREE_OPERAND (_p1, 0);
8772 : 0 : tree _q81 = TREE_OPERAND (_p1, 1);
8773 : 0 : tree _q82 = TREE_OPERAND (_p1, 2);
8774 : 0 : switch (TREE_CODE (_q80))
8775 : : {
8776 : 0 : case LTGT_EXPR:
8777 : 0 : {
8778 : 0 : tree _q90 = TREE_OPERAND (_q80, 0);
8779 : 0 : tree _q91 = TREE_OPERAND (_q80, 1);
8780 : 0 : if ((_q90 == _q30 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q30, 0) && types_match (_q90, _q30)))
8781 : : {
8782 : 0 : if ((_q91 == _q31 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q31, 0) && types_match (_q91, _q31)))
8783 : : {
8784 : 0 : if (zerop (_q82))
8785 : : {
8786 : 0 : {
8787 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q20, _q30, _q31, _q21, _q80, _q81 };
8788 : 0 : tree res = generic_simplify_14 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR, UNEQ_EXPR, LTGT_EXPR);
8789 : 0 : if (res) return res;
8790 : : }
8791 : : }
8792 : : }
8793 : : }
8794 : : break;
8795 : : }
8796 : : default:;
8797 : : }
8798 : : break;
8799 : : }
8800 : : default:;
8801 : : }
8802 : : }
8803 : : break;
8804 : : }
8805 : 0 : case LTGT_EXPR:
8806 : 0 : {
8807 : 0 : tree _q30 = TREE_OPERAND (_q20, 0);
8808 : 0 : tree _q31 = TREE_OPERAND (_q20, 1);
8809 : 0 : if (zerop (_q22))
8810 : : {
8811 : 0 : switch (TREE_CODE (_p1))
8812 : : {
8813 : 0 : case COND_EXPR:
8814 : 0 : {
8815 : 0 : tree _q80 = TREE_OPERAND (_p1, 0);
8816 : 0 : tree _q81 = TREE_OPERAND (_p1, 1);
8817 : 0 : tree _q82 = TREE_OPERAND (_p1, 2);
8818 : 0 : switch (TREE_CODE (_q80))
8819 : : {
8820 : 0 : case UNEQ_EXPR:
8821 : 0 : {
8822 : 0 : tree _q90 = TREE_OPERAND (_q80, 0);
8823 : 0 : tree _q91 = TREE_OPERAND (_q80, 1);
8824 : 0 : if ((_q90 == _q30 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q30, 0) && types_match (_q90, _q30)))
8825 : : {
8826 : 0 : if ((_q91 == _q31 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q31, 0) && types_match (_q91, _q31)))
8827 : : {
8828 : 0 : if (zerop (_q82))
8829 : : {
8830 : 0 : {
8831 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q20, _q30, _q31, _q21, _q80, _q81 };
8832 : 0 : tree res = generic_simplify_14 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR, LTGT_EXPR, UNEQ_EXPR);
8833 : 0 : if (res) return res;
8834 : : }
8835 : : }
8836 : : }
8837 : : }
8838 : : break;
8839 : : }
8840 : : default:;
8841 : : }
8842 : : break;
8843 : : }
8844 : : default:;
8845 : : }
8846 : : }
8847 : : break;
8848 : : }
8849 : : default:;
8850 : : }
8851 : : break;
8852 : : }
8853 : 61 : case VEC_COND_EXPR:
8854 : 61 : {
8855 : 61 : tree _q20 = TREE_OPERAND (_p0, 0);
8856 : 61 : tree _q21 = TREE_OPERAND (_p0, 1);
8857 : 61 : tree _q22 = TREE_OPERAND (_p0, 2);
8858 : 61 : if (integer_zerop (_q22))
8859 : : {
8860 : 60 : switch (TREE_CODE (_p1))
8861 : : {
8862 : 54 : case VEC_COND_EXPR:
8863 : 54 : {
8864 : 54 : tree _q60 = TREE_OPERAND (_p1, 0);
8865 : 54 : tree _q61 = TREE_OPERAND (_p1, 1);
8866 : 54 : tree _q62 = TREE_OPERAND (_p1, 2);
8867 : 54 : if ((_q60 == _q20 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q20, 0) && types_match (_q60, _q20)))
8868 : : {
8869 : 0 : if (integer_zerop (_q61))
8870 : : {
8871 : 0 : {
8872 : 0 : tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q62 };
8873 : 0 : const enum tree_code op = BIT_IOR_EXPR;
8874 : 0 : if (TREE_SIDE_EFFECTS (_p0)) goto next_after_fail1339;
8875 : 0 : if (TREE_SIDE_EFFECTS (_p1)) goto next_after_fail1339;
8876 : 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1339;
8877 : 0 : {
8878 : 0 : tree res_op0;
8879 : 0 : res_op0 = captures[1];
8880 : 0 : tree res_op1;
8881 : 0 : res_op1 = captures[2];
8882 : 0 : tree res_op2;
8883 : 0 : res_op2 = captures[4];
8884 : 0 : tree _r;
8885 : 0 : _r = fold_build3_loc (loc, VEC_COND_EXPR, type, res_op0, res_op1, res_op2);
8886 : 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 895, __FILE__, __LINE__, true);
8887 : 0 : return _r;
8888 : : }
8889 : 0 : next_after_fail1339:;
8890 : : }
8891 : : }
8892 : : }
8893 : : break;
8894 : : }
8895 : : default:;
8896 : : }
8897 : : }
8898 : 61 : if (integer_zerop (_q21))
8899 : : {
8900 : 0 : switch (TREE_CODE (_p1))
8901 : : {
8902 : 0 : case VEC_COND_EXPR:
8903 : 0 : {
8904 : 0 : tree _q60 = TREE_OPERAND (_p1, 0);
8905 : 0 : tree _q61 = TREE_OPERAND (_p1, 1);
8906 : 0 : tree _q62 = TREE_OPERAND (_p1, 2);
8907 : 0 : if ((_q60 == _q20 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q20, 0) && types_match (_q60, _q20)))
8908 : : {
8909 : 0 : if (integer_zerop (_q62))
8910 : : {
8911 : 0 : {
8912 : 0 : tree captures[5] ATTRIBUTE_UNUSED = { _p1, _q20, _q61, _p0, _q22 };
8913 : 0 : const enum tree_code op = BIT_IOR_EXPR;
8914 : 0 : if (TREE_SIDE_EFFECTS (_p0)) goto next_after_fail1340;
8915 : 0 : if (TREE_SIDE_EFFECTS (_p1)) goto next_after_fail1340;
8916 : 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1340;
8917 : 0 : {
8918 : 0 : tree res_op0;
8919 : 0 : res_op0 = captures[1];
8920 : 0 : tree res_op1;
8921 : 0 : res_op1 = captures[2];
8922 : 0 : tree res_op2;
8923 : 0 : res_op2 = captures[4];
8924 : 0 : tree _r;
8925 : 0 : _r = fold_build3_loc (loc, VEC_COND_EXPR, type, res_op0, res_op1, res_op2);
8926 : 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 895, __FILE__, __LINE__, true);
8927 : 0 : return _r;
8928 : : }
8929 : 0 : next_after_fail1340:;
8930 : : }
8931 : : }
8932 : : }
8933 : : break;
8934 : : }
8935 : : default:;
8936 : : }
8937 : : }
8938 : 61 : switch (TREE_CODE (_q20))
8939 : : {
8940 : 28 : case LT_EXPR:
8941 : 28 : {
8942 : 28 : tree _q30 = TREE_OPERAND (_q20, 0);
8943 : 28 : tree _q31 = TREE_OPERAND (_q20, 1);
8944 : 28 : if (integer_zerop (_q22))
8945 : : {
8946 : 28 : switch (TREE_CODE (_p1))
8947 : : {
8948 : 27 : case VEC_COND_EXPR:
8949 : 27 : {
8950 : 27 : tree _q80 = TREE_OPERAND (_p1, 0);
8951 : 27 : tree _q81 = TREE_OPERAND (_p1, 1);
8952 : 27 : tree _q82 = TREE_OPERAND (_p1, 2);
8953 : 27 : switch (TREE_CODE (_q80))
8954 : : {
8955 : 0 : case GE_EXPR:
8956 : 0 : {
8957 : 0 : tree _q90 = TREE_OPERAND (_q80, 0);
8958 : 0 : tree _q91 = TREE_OPERAND (_q80, 1);
8959 : 0 : if ((_q90 == _q30 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q30, 0) && types_match (_q90, _q30)))
8960 : : {
8961 : 0 : if ((_q91 == _q31 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q31, 0) && types_match (_q91, _q31)))
8962 : : {
8963 : 0 : if (integer_zerop (_q82))
8964 : : {
8965 : 0 : {
8966 : 0 : tree captures[8] ATTRIBUTE_UNUSED = { _p0, _q20, _q30, _q31, _q21, _p1, _q80, _q81 };
8967 : 0 : tree res = generic_simplify_15 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR, LT_EXPR, GE_EXPR);
8968 : 0 : if (res) return res;
8969 : : }
8970 : : }
8971 : : }
8972 : : }
8973 : : break;
8974 : : }
8975 : : default:;
8976 : : }
8977 : : break;
8978 : : }
8979 : : default:;
8980 : : }
8981 : : }
8982 : : break;
8983 : : }
8984 : 8 : case LE_EXPR:
8985 : 8 : {
8986 : 8 : tree _q30 = TREE_OPERAND (_q20, 0);
8987 : 8 : tree _q31 = TREE_OPERAND (_q20, 1);
8988 : 8 : if (integer_zerop (_q22))
8989 : : {
8990 : 8 : switch (TREE_CODE (_p1))
8991 : : {
8992 : 8 : case VEC_COND_EXPR:
8993 : 8 : {
8994 : 8 : tree _q80 = TREE_OPERAND (_p1, 0);
8995 : 8 : tree _q81 = TREE_OPERAND (_p1, 1);
8996 : 8 : tree _q82 = TREE_OPERAND (_p1, 2);
8997 : 8 : switch (TREE_CODE (_q80))
8998 : : {
8999 : 0 : case GT_EXPR:
9000 : 0 : {
9001 : 0 : tree _q90 = TREE_OPERAND (_q80, 0);
9002 : 0 : tree _q91 = TREE_OPERAND (_q80, 1);
9003 : 0 : if ((_q90 == _q30 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q30, 0) && types_match (_q90, _q30)))
9004 : : {
9005 : 0 : if ((_q91 == _q31 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q31, 0) && types_match (_q91, _q31)))
9006 : : {
9007 : 0 : if (integer_zerop (_q82))
9008 : : {
9009 : 0 : {
9010 : 0 : tree captures[8] ATTRIBUTE_UNUSED = { _p0, _q20, _q30, _q31, _q21, _p1, _q80, _q81 };
9011 : 0 : tree res = generic_simplify_15 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR, LE_EXPR, GT_EXPR);
9012 : 0 : if (res) return res;
9013 : : }
9014 : : }
9015 : : }
9016 : : }
9017 : : break;
9018 : : }
9019 : : default:;
9020 : : }
9021 : : break;
9022 : : }
9023 : : default:;
9024 : : }
9025 : : }
9026 : : break;
9027 : : }
9028 : 6 : case EQ_EXPR:
9029 : 6 : {
9030 : 6 : tree _q30 = TREE_OPERAND (_q20, 0);
9031 : 6 : tree _q31 = TREE_OPERAND (_q20, 1);
9032 : 6 : if (integer_zerop (_q22))
9033 : : {
9034 : 6 : switch (TREE_CODE (_p1))
9035 : : {
9036 : 6 : case VEC_COND_EXPR:
9037 : 6 : {
9038 : 6 : tree _q80 = TREE_OPERAND (_p1, 0);
9039 : 6 : tree _q81 = TREE_OPERAND (_p1, 1);
9040 : 6 : tree _q82 = TREE_OPERAND (_p1, 2);
9041 : 6 : switch (TREE_CODE (_q80))
9042 : : {
9043 : 0 : case NE_EXPR:
9044 : 0 : {
9045 : 0 : tree _q90 = TREE_OPERAND (_q80, 0);
9046 : 0 : tree _q91 = TREE_OPERAND (_q80, 1);
9047 : 0 : if ((_q90 == _q30 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q30, 0) && types_match (_q90, _q30)))
9048 : : {
9049 : 0 : if ((_q91 == _q31 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q31, 0) && types_match (_q91, _q31)))
9050 : : {
9051 : 0 : if (integer_zerop (_q82))
9052 : : {
9053 : 0 : {
9054 : 0 : tree captures[8] ATTRIBUTE_UNUSED = { _p0, _q20, _q30, _q31, _q21, _p1, _q80, _q81 };
9055 : 0 : tree res = generic_simplify_15 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR, EQ_EXPR, NE_EXPR);
9056 : 0 : if (res) return res;
9057 : : }
9058 : : }
9059 : : }
9060 : : }
9061 : : break;
9062 : : }
9063 : : default:;
9064 : : }
9065 : : break;
9066 : : }
9067 : : default:;
9068 : : }
9069 : : }
9070 : : break;
9071 : : }
9072 : 6 : case NE_EXPR:
9073 : 6 : {
9074 : 6 : tree _q30 = TREE_OPERAND (_q20, 0);
9075 : 6 : tree _q31 = TREE_OPERAND (_q20, 1);
9076 : 6 : if (integer_zerop (_q22))
9077 : : {
9078 : 6 : switch (TREE_CODE (_p1))
9079 : : {
9080 : 1 : case VEC_COND_EXPR:
9081 : 1 : {
9082 : 1 : tree _q80 = TREE_OPERAND (_p1, 0);
9083 : 1 : tree _q81 = TREE_OPERAND (_p1, 1);
9084 : 1 : tree _q82 = TREE_OPERAND (_p1, 2);
9085 : 1 : switch (TREE_CODE (_q80))
9086 : : {
9087 : 1 : case EQ_EXPR:
9088 : 1 : {
9089 : 1 : tree _q90 = TREE_OPERAND (_q80, 0);
9090 : 1 : tree _q91 = TREE_OPERAND (_q80, 1);
9091 : 1 : if ((_q90 == _q30 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q30, 0) && types_match (_q90, _q30)))
9092 : : {
9093 : 0 : if ((_q91 == _q31 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q31, 0) && types_match (_q91, _q31)))
9094 : : {
9095 : 0 : if (integer_zerop (_q82))
9096 : : {
9097 : 0 : {
9098 : 0 : tree captures[8] ATTRIBUTE_UNUSED = { _p0, _q20, _q30, _q31, _q21, _p1, _q80, _q81 };
9099 : 0 : tree res = generic_simplify_15 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR, NE_EXPR, EQ_EXPR);
9100 : 0 : if (res) return res;
9101 : : }
9102 : : }
9103 : : }
9104 : : }
9105 : : break;
9106 : : }
9107 : : default:;
9108 : : }
9109 : : break;
9110 : : }
9111 : : default:;
9112 : : }
9113 : : }
9114 : : break;
9115 : : }
9116 : 9 : case GE_EXPR:
9117 : 9 : {
9118 : 9 : tree _q30 = TREE_OPERAND (_q20, 0);
9119 : 9 : tree _q31 = TREE_OPERAND (_q20, 1);
9120 : 9 : if (integer_zerop (_q22))
9121 : : {
9122 : 8 : switch (TREE_CODE (_p1))
9123 : : {
9124 : 8 : case VEC_COND_EXPR:
9125 : 8 : {
9126 : 8 : tree _q80 = TREE_OPERAND (_p1, 0);
9127 : 8 : tree _q81 = TREE_OPERAND (_p1, 1);
9128 : 8 : tree _q82 = TREE_OPERAND (_p1, 2);
9129 : 8 : switch (TREE_CODE (_q80))
9130 : : {
9131 : 0 : case LT_EXPR:
9132 : 0 : {
9133 : 0 : tree _q90 = TREE_OPERAND (_q80, 0);
9134 : 0 : tree _q91 = TREE_OPERAND (_q80, 1);
9135 : 0 : if ((_q90 == _q30 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q30, 0) && types_match (_q90, _q30)))
9136 : : {
9137 : 0 : if ((_q91 == _q31 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q31, 0) && types_match (_q91, _q31)))
9138 : : {
9139 : 0 : if (integer_zerop (_q82))
9140 : : {
9141 : 0 : {
9142 : 0 : tree captures[8] ATTRIBUTE_UNUSED = { _p0, _q20, _q30, _q31, _q21, _p1, _q80, _q81 };
9143 : 0 : tree res = generic_simplify_15 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR, GE_EXPR, LT_EXPR);
9144 : 0 : if (res) return res;
9145 : : }
9146 : : }
9147 : : }
9148 : : }
9149 : : break;
9150 : : }
9151 : : default:;
9152 : : }
9153 : : break;
9154 : : }
9155 : : default:;
9156 : : }
9157 : : }
9158 : : break;
9159 : : }
9160 : 4 : case GT_EXPR:
9161 : 4 : {
9162 : 4 : tree _q30 = TREE_OPERAND (_q20, 0);
9163 : 4 : tree _q31 = TREE_OPERAND (_q20, 1);
9164 : 4 : if (integer_zerop (_q22))
9165 : : {
9166 : 4 : switch (TREE_CODE (_p1))
9167 : : {
9168 : 4 : case VEC_COND_EXPR:
9169 : 4 : {
9170 : 4 : tree _q80 = TREE_OPERAND (_p1, 0);
9171 : 4 : tree _q81 = TREE_OPERAND (_p1, 1);
9172 : 4 : tree _q82 = TREE_OPERAND (_p1, 2);
9173 : 4 : switch (TREE_CODE (_q80))
9174 : : {
9175 : 0 : case LE_EXPR:
9176 : 0 : {
9177 : 0 : tree _q90 = TREE_OPERAND (_q80, 0);
9178 : 0 : tree _q91 = TREE_OPERAND (_q80, 1);
9179 : 0 : if ((_q90 == _q30 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q30, 0) && types_match (_q90, _q30)))
9180 : : {
9181 : 0 : if ((_q91 == _q31 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q31, 0) && types_match (_q91, _q31)))
9182 : : {
9183 : 0 : if (integer_zerop (_q82))
9184 : : {
9185 : 0 : {
9186 : 0 : tree captures[8] ATTRIBUTE_UNUSED = { _p0, _q20, _q30, _q31, _q21, _p1, _q80, _q81 };
9187 : 0 : tree res = generic_simplify_15 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR, GT_EXPR, LE_EXPR);
9188 : 0 : if (res) return res;
9189 : : }
9190 : : }
9191 : : }
9192 : : }
9193 : : break;
9194 : : }
9195 : : default:;
9196 : : }
9197 : : break;
9198 : : }
9199 : : default:;
9200 : : }
9201 : : }
9202 : : break;
9203 : : }
9204 : 0 : case UNORDERED_EXPR:
9205 : 0 : {
9206 : 0 : tree _q30 = TREE_OPERAND (_q20, 0);
9207 : 0 : tree _q31 = TREE_OPERAND (_q20, 1);
9208 : 0 : if (integer_zerop (_q22))
9209 : : {
9210 : 0 : switch (TREE_CODE (_p1))
9211 : : {
9212 : 0 : case VEC_COND_EXPR:
9213 : 0 : {
9214 : 0 : tree _q80 = TREE_OPERAND (_p1, 0);
9215 : 0 : tree _q81 = TREE_OPERAND (_p1, 1);
9216 : 0 : tree _q82 = TREE_OPERAND (_p1, 2);
9217 : 0 : switch (TREE_CODE (_q80))
9218 : : {
9219 : 0 : case ORDERED_EXPR:
9220 : 0 : {
9221 : 0 : tree _q90 = TREE_OPERAND (_q80, 0);
9222 : 0 : tree _q91 = TREE_OPERAND (_q80, 1);
9223 : 0 : if ((_q90 == _q30 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q30, 0) && types_match (_q90, _q30)))
9224 : : {
9225 : 0 : if ((_q91 == _q31 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q31, 0) && types_match (_q91, _q31)))
9226 : : {
9227 : 0 : if (integer_zerop (_q82))
9228 : : {
9229 : 0 : {
9230 : 0 : tree captures[8] ATTRIBUTE_UNUSED = { _p0, _q20, _q30, _q31, _q21, _p1, _q80, _q81 };
9231 : 0 : tree res = generic_simplify_15 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR, UNORDERED_EXPR, ORDERED_EXPR);
9232 : 0 : if (res) return res;
9233 : : }
9234 : : }
9235 : : }
9236 : : }
9237 : : break;
9238 : : }
9239 : : default:;
9240 : : }
9241 : : break;
9242 : : }
9243 : : default:;
9244 : : }
9245 : : }
9246 : : break;
9247 : : }
9248 : 0 : case ORDERED_EXPR:
9249 : 0 : {
9250 : 0 : tree _q30 = TREE_OPERAND (_q20, 0);
9251 : 0 : tree _q31 = TREE_OPERAND (_q20, 1);
9252 : 0 : if (integer_zerop (_q22))
9253 : : {
9254 : 0 : switch (TREE_CODE (_p1))
9255 : : {
9256 : 0 : case VEC_COND_EXPR:
9257 : 0 : {
9258 : 0 : tree _q80 = TREE_OPERAND (_p1, 0);
9259 : 0 : tree _q81 = TREE_OPERAND (_p1, 1);
9260 : 0 : tree _q82 = TREE_OPERAND (_p1, 2);
9261 : 0 : switch (TREE_CODE (_q80))
9262 : : {
9263 : 0 : case UNORDERED_EXPR:
9264 : 0 : {
9265 : 0 : tree _q90 = TREE_OPERAND (_q80, 0);
9266 : 0 : tree _q91 = TREE_OPERAND (_q80, 1);
9267 : 0 : if ((_q90 == _q30 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q30, 0) && types_match (_q90, _q30)))
9268 : : {
9269 : 0 : if ((_q91 == _q31 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q31, 0) && types_match (_q91, _q31)))
9270 : : {
9271 : 0 : if (integer_zerop (_q82))
9272 : : {
9273 : 0 : {
9274 : 0 : tree captures[8] ATTRIBUTE_UNUSED = { _p0, _q20, _q30, _q31, _q21, _p1, _q80, _q81 };
9275 : 0 : tree res = generic_simplify_15 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR, ORDERED_EXPR, UNORDERED_EXPR);
9276 : 0 : if (res) return res;
9277 : : }
9278 : : }
9279 : : }
9280 : : }
9281 : : break;
9282 : : }
9283 : : default:;
9284 : : }
9285 : : break;
9286 : : }
9287 : : default:;
9288 : : }
9289 : : }
9290 : : break;
9291 : : }
9292 : 0 : case UNLT_EXPR:
9293 : 0 : {
9294 : 0 : tree _q30 = TREE_OPERAND (_q20, 0);
9295 : 0 : tree _q31 = TREE_OPERAND (_q20, 1);
9296 : 0 : if (integer_zerop (_q22))
9297 : : {
9298 : 0 : switch (TREE_CODE (_p1))
9299 : : {
9300 : 0 : case VEC_COND_EXPR:
9301 : 0 : {
9302 : 0 : tree _q80 = TREE_OPERAND (_p1, 0);
9303 : 0 : tree _q81 = TREE_OPERAND (_p1, 1);
9304 : 0 : tree _q82 = TREE_OPERAND (_p1, 2);
9305 : 0 : switch (TREE_CODE (_q80))
9306 : : {
9307 : 0 : case GE_EXPR:
9308 : 0 : {
9309 : 0 : tree _q90 = TREE_OPERAND (_q80, 0);
9310 : 0 : tree _q91 = TREE_OPERAND (_q80, 1);
9311 : 0 : if ((_q90 == _q30 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q30, 0) && types_match (_q90, _q30)))
9312 : : {
9313 : 0 : if ((_q91 == _q31 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q31, 0) && types_match (_q91, _q31)))
9314 : : {
9315 : 0 : if (integer_zerop (_q82))
9316 : : {
9317 : 0 : {
9318 : 0 : tree captures[8] ATTRIBUTE_UNUSED = { _p0, _q20, _q30, _q31, _q21, _p1, _q80, _q81 };
9319 : 0 : tree res = generic_simplify_15 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR, UNLT_EXPR, GE_EXPR);
9320 : 0 : if (res) return res;
9321 : : }
9322 : : }
9323 : : }
9324 : : }
9325 : : break;
9326 : : }
9327 : : default:;
9328 : : }
9329 : : break;
9330 : : }
9331 : : default:;
9332 : : }
9333 : : }
9334 : : break;
9335 : : }
9336 : 0 : case UNLE_EXPR:
9337 : 0 : {
9338 : 0 : tree _q30 = TREE_OPERAND (_q20, 0);
9339 : 0 : tree _q31 = TREE_OPERAND (_q20, 1);
9340 : 0 : if (integer_zerop (_q22))
9341 : : {
9342 : 0 : switch (TREE_CODE (_p1))
9343 : : {
9344 : 0 : case VEC_COND_EXPR:
9345 : 0 : {
9346 : 0 : tree _q80 = TREE_OPERAND (_p1, 0);
9347 : 0 : tree _q81 = TREE_OPERAND (_p1, 1);
9348 : 0 : tree _q82 = TREE_OPERAND (_p1, 2);
9349 : 0 : switch (TREE_CODE (_q80))
9350 : : {
9351 : 0 : case GT_EXPR:
9352 : 0 : {
9353 : 0 : tree _q90 = TREE_OPERAND (_q80, 0);
9354 : 0 : tree _q91 = TREE_OPERAND (_q80, 1);
9355 : 0 : if ((_q90 == _q30 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q30, 0) && types_match (_q90, _q30)))
9356 : : {
9357 : 0 : if ((_q91 == _q31 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q31, 0) && types_match (_q91, _q31)))
9358 : : {
9359 : 0 : if (integer_zerop (_q82))
9360 : : {
9361 : 0 : {
9362 : 0 : tree captures[8] ATTRIBUTE_UNUSED = { _p0, _q20, _q30, _q31, _q21, _p1, _q80, _q81 };
9363 : 0 : tree res = generic_simplify_15 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR, UNLE_EXPR, GT_EXPR);
9364 : 0 : if (res) return res;
9365 : : }
9366 : : }
9367 : : }
9368 : : }
9369 : : break;
9370 : : }
9371 : : default:;
9372 : : }
9373 : : break;
9374 : : }
9375 : : default:;
9376 : : }
9377 : : }
9378 : : break;
9379 : : }
9380 : 0 : case UNGT_EXPR:
9381 : 0 : {
9382 : 0 : tree _q30 = TREE_OPERAND (_q20, 0);
9383 : 0 : tree _q31 = TREE_OPERAND (_q20, 1);
9384 : 0 : if (integer_zerop (_q22))
9385 : : {
9386 : 0 : switch (TREE_CODE (_p1))
9387 : : {
9388 : 0 : case VEC_COND_EXPR:
9389 : 0 : {
9390 : 0 : tree _q80 = TREE_OPERAND (_p1, 0);
9391 : 0 : tree _q81 = TREE_OPERAND (_p1, 1);
9392 : 0 : tree _q82 = TREE_OPERAND (_p1, 2);
9393 : 0 : switch (TREE_CODE (_q80))
9394 : : {
9395 : 0 : case LE_EXPR:
9396 : 0 : {
9397 : 0 : tree _q90 = TREE_OPERAND (_q80, 0);
9398 : 0 : tree _q91 = TREE_OPERAND (_q80, 1);
9399 : 0 : if ((_q90 == _q30 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q30, 0) && types_match (_q90, _q30)))
9400 : : {
9401 : 0 : if ((_q91 == _q31 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q31, 0) && types_match (_q91, _q31)))
9402 : : {
9403 : 0 : if (integer_zerop (_q82))
9404 : : {
9405 : 0 : {
9406 : 0 : tree captures[8] ATTRIBUTE_UNUSED = { _p0, _q20, _q30, _q31, _q21, _p1, _q80, _q81 };
9407 : 0 : tree res = generic_simplify_15 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR, UNGT_EXPR, LE_EXPR);
9408 : 0 : if (res) return res;
9409 : : }
9410 : : }
9411 : : }
9412 : : }
9413 : : break;
9414 : : }
9415 : : default:;
9416 : : }
9417 : : break;
9418 : : }
9419 : : default:;
9420 : : }
9421 : : }
9422 : : break;
9423 : : }
9424 : 0 : case UNGE_EXPR:
9425 : 0 : {
9426 : 0 : tree _q30 = TREE_OPERAND (_q20, 0);
9427 : 0 : tree _q31 = TREE_OPERAND (_q20, 1);
9428 : 0 : if (integer_zerop (_q22))
9429 : : {
9430 : 0 : switch (TREE_CODE (_p1))
9431 : : {
9432 : 0 : case VEC_COND_EXPR:
9433 : 0 : {
9434 : 0 : tree _q80 = TREE_OPERAND (_p1, 0);
9435 : 0 : tree _q81 = TREE_OPERAND (_p1, 1);
9436 : 0 : tree _q82 = TREE_OPERAND (_p1, 2);
9437 : 0 : switch (TREE_CODE (_q80))
9438 : : {
9439 : 0 : case LT_EXPR:
9440 : 0 : {
9441 : 0 : tree _q90 = TREE_OPERAND (_q80, 0);
9442 : 0 : tree _q91 = TREE_OPERAND (_q80, 1);
9443 : 0 : if ((_q90 == _q30 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q30, 0) && types_match (_q90, _q30)))
9444 : : {
9445 : 0 : if ((_q91 == _q31 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q31, 0) && types_match (_q91, _q31)))
9446 : : {
9447 : 0 : if (integer_zerop (_q82))
9448 : : {
9449 : 0 : {
9450 : 0 : tree captures[8] ATTRIBUTE_UNUSED = { _p0, _q20, _q30, _q31, _q21, _p1, _q80, _q81 };
9451 : 0 : tree res = generic_simplify_15 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR, UNGE_EXPR, LT_EXPR);
9452 : 0 : if (res) return res;
9453 : : }
9454 : : }
9455 : : }
9456 : : }
9457 : : break;
9458 : : }
9459 : : default:;
9460 : : }
9461 : : break;
9462 : : }
9463 : : default:;
9464 : : }
9465 : : }
9466 : : break;
9467 : : }
9468 : 0 : case UNEQ_EXPR:
9469 : 0 : {
9470 : 0 : tree _q30 = TREE_OPERAND (_q20, 0);
9471 : 0 : tree _q31 = TREE_OPERAND (_q20, 1);
9472 : 0 : if (integer_zerop (_q22))
9473 : : {
9474 : 0 : switch (TREE_CODE (_p1))
9475 : : {
9476 : 0 : case VEC_COND_EXPR:
9477 : 0 : {
9478 : 0 : tree _q80 = TREE_OPERAND (_p1, 0);
9479 : 0 : tree _q81 = TREE_OPERAND (_p1, 1);
9480 : 0 : tree _q82 = TREE_OPERAND (_p1, 2);
9481 : 0 : switch (TREE_CODE (_q80))
9482 : : {
9483 : 0 : case LTGT_EXPR:
9484 : 0 : {
9485 : 0 : tree _q90 = TREE_OPERAND (_q80, 0);
9486 : 0 : tree _q91 = TREE_OPERAND (_q80, 1);
9487 : 0 : if ((_q90 == _q30 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q30, 0) && types_match (_q90, _q30)))
9488 : : {
9489 : 0 : if ((_q91 == _q31 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q31, 0) && types_match (_q91, _q31)))
9490 : : {
9491 : 0 : if (integer_zerop (_q82))
9492 : : {
9493 : 0 : {
9494 : 0 : tree captures[8] ATTRIBUTE_UNUSED = { _p0, _q20, _q30, _q31, _q21, _p1, _q80, _q81 };
9495 : 0 : tree res = generic_simplify_15 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR, UNEQ_EXPR, LTGT_EXPR);
9496 : 0 : if (res) return res;
9497 : : }
9498 : : }
9499 : : }
9500 : : }
9501 : : break;
9502 : : }
9503 : : default:;
9504 : : }
9505 : : break;
9506 : : }
9507 : : default:;
9508 : : }
9509 : : }
9510 : : break;
9511 : : }
9512 : 0 : case LTGT_EXPR:
9513 : 0 : {
9514 : 0 : tree _q30 = TREE_OPERAND (_q20, 0);
9515 : 0 : tree _q31 = TREE_OPERAND (_q20, 1);
9516 : 0 : if (integer_zerop (_q22))
9517 : : {
9518 : 0 : switch (TREE_CODE (_p1))
9519 : : {
9520 : 0 : case VEC_COND_EXPR:
9521 : 0 : {
9522 : 0 : tree _q80 = TREE_OPERAND (_p1, 0);
9523 : 0 : tree _q81 = TREE_OPERAND (_p1, 1);
9524 : 0 : tree _q82 = TREE_OPERAND (_p1, 2);
9525 : 0 : switch (TREE_CODE (_q80))
9526 : : {
9527 : 0 : case UNEQ_EXPR:
9528 : 0 : {
9529 : 0 : tree _q90 = TREE_OPERAND (_q80, 0);
9530 : 0 : tree _q91 = TREE_OPERAND (_q80, 1);
9531 : 0 : if ((_q90 == _q30 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q30, 0) && types_match (_q90, _q30)))
9532 : : {
9533 : 0 : if ((_q91 == _q31 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q31, 0) && types_match (_q91, _q31)))
9534 : : {
9535 : 0 : if (integer_zerop (_q82))
9536 : : {
9537 : 0 : {
9538 : 0 : tree captures[8] ATTRIBUTE_UNUSED = { _p0, _q20, _q30, _q31, _q21, _p1, _q80, _q81 };
9539 : 0 : tree res = generic_simplify_15 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR, LTGT_EXPR, UNEQ_EXPR);
9540 : 0 : if (res) return res;
9541 : : }
9542 : : }
9543 : : }
9544 : : }
9545 : : break;
9546 : : }
9547 : : default:;
9548 : : }
9549 : : break;
9550 : : }
9551 : : default:;
9552 : : }
9553 : : }
9554 : : break;
9555 : : }
9556 : : default:;
9557 : : }
9558 : : break;
9559 : : }
9560 : 128333 : case BIT_AND_EXPR:
9561 : 128333 : {
9562 : 128333 : tree _q20 = TREE_OPERAND (_p0, 0);
9563 : 128333 : tree _q21 = TREE_OPERAND (_p0, 1);
9564 : 128333 : switch (TREE_CODE (_q20))
9565 : : {
9566 : 57113 : CASE_CONVERT:
9567 : 57113 : {
9568 : 57113 : tree _q30 = TREE_OPERAND (_q20, 0);
9569 : 57113 : switch (TREE_CODE (_q30))
9570 : : {
9571 : 0 : case LT_EXPR:
9572 : 0 : {
9573 : 0 : tree _q40 = TREE_OPERAND (_q30, 0);
9574 : 0 : tree _q41 = TREE_OPERAND (_q30, 1);
9575 : 0 : switch (TREE_CODE (_p1))
9576 : : {
9577 : 0 : case BIT_AND_EXPR:
9578 : 0 : {
9579 : 0 : tree _q80 = TREE_OPERAND (_p1, 0);
9580 : 0 : tree _q81 = TREE_OPERAND (_p1, 1);
9581 : 0 : switch (TREE_CODE (_q80))
9582 : : {
9583 : 0 : CASE_CONVERT:
9584 : 0 : {
9585 : 0 : tree _q90 = TREE_OPERAND (_q80, 0);
9586 : 0 : switch (TREE_CODE (_q90))
9587 : : {
9588 : 0 : case GE_EXPR:
9589 : 0 : {
9590 : 0 : tree _q100 = TREE_OPERAND (_q90, 0);
9591 : 0 : tree _q101 = TREE_OPERAND (_q90, 1);
9592 : 0 : if ((_q100 == _q40 && ! TREE_SIDE_EFFECTS (_q100)) || (operand_equal_p (_q100, _q40, 0) && types_match (_q100, _q40)))
9593 : : {
9594 : 0 : if ((_q101 == _q41 && ! TREE_SIDE_EFFECTS (_q101)) || (operand_equal_p (_q101, _q41, 0) && types_match (_q101, _q41)))
9595 : : {
9596 : 0 : {
9597 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q30, _q40, _q41, _q21, _q90, _q81 };
9598 : 0 : tree res = generic_simplify_119 (loc, type, _p0, _p1, captures, LT_EXPR, GE_EXPR);
9599 : 0 : if (res) return res;
9600 : : }
9601 : : }
9602 : : }
9603 : : break;
9604 : : }
9605 : : default:;
9606 : : }
9607 : : break;
9608 : : }
9609 : 0 : default:;
9610 : : }
9611 : 0 : switch (TREE_CODE (_q81))
9612 : : {
9613 : 0 : CASE_CONVERT:
9614 : 0 : {
9615 : 0 : tree _q100 = TREE_OPERAND (_q81, 0);
9616 : 0 : switch (TREE_CODE (_q100))
9617 : : {
9618 : 0 : case GE_EXPR:
9619 : 0 : {
9620 : 0 : tree _q110 = TREE_OPERAND (_q100, 0);
9621 : 0 : tree _q111 = TREE_OPERAND (_q100, 1);
9622 : 0 : if ((_q110 == _q40 && ! TREE_SIDE_EFFECTS (_q110)) || (operand_equal_p (_q110, _q40, 0) && types_match (_q110, _q40)))
9623 : : {
9624 : 0 : if ((_q111 == _q41 && ! TREE_SIDE_EFFECTS (_q111)) || (operand_equal_p (_q111, _q41, 0) && types_match (_q111, _q41)))
9625 : : {
9626 : 0 : {
9627 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q30, _q40, _q41, _q21, _q100, _q80 };
9628 : 0 : tree res = generic_simplify_119 (loc, type, _p0, _p1, captures, LT_EXPR, GE_EXPR);
9629 : 0 : if (res) return res;
9630 : : }
9631 : : }
9632 : : }
9633 : : break;
9634 : : }
9635 : : default:;
9636 : : }
9637 : : break;
9638 : : }
9639 : : default:;
9640 : : }
9641 : : break;
9642 : : }
9643 : : default:;
9644 : : }
9645 : : break;
9646 : : }
9647 : 0 : case LE_EXPR:
9648 : 0 : {
9649 : 0 : tree _q40 = TREE_OPERAND (_q30, 0);
9650 : 0 : tree _q41 = TREE_OPERAND (_q30, 1);
9651 : 0 : switch (TREE_CODE (_p1))
9652 : : {
9653 : 0 : case BIT_AND_EXPR:
9654 : 0 : {
9655 : 0 : tree _q80 = TREE_OPERAND (_p1, 0);
9656 : 0 : tree _q81 = TREE_OPERAND (_p1, 1);
9657 : 0 : switch (TREE_CODE (_q80))
9658 : : {
9659 : 0 : CASE_CONVERT:
9660 : 0 : {
9661 : 0 : tree _q90 = TREE_OPERAND (_q80, 0);
9662 : 0 : switch (TREE_CODE (_q90))
9663 : : {
9664 : 0 : case GT_EXPR:
9665 : 0 : {
9666 : 0 : tree _q100 = TREE_OPERAND (_q90, 0);
9667 : 0 : tree _q101 = TREE_OPERAND (_q90, 1);
9668 : 0 : if ((_q100 == _q40 && ! TREE_SIDE_EFFECTS (_q100)) || (operand_equal_p (_q100, _q40, 0) && types_match (_q100, _q40)))
9669 : : {
9670 : 0 : if ((_q101 == _q41 && ! TREE_SIDE_EFFECTS (_q101)) || (operand_equal_p (_q101, _q41, 0) && types_match (_q101, _q41)))
9671 : : {
9672 : 0 : {
9673 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q30, _q40, _q41, _q21, _q90, _q81 };
9674 : 0 : tree res = generic_simplify_119 (loc, type, _p0, _p1, captures, LE_EXPR, GT_EXPR);
9675 : 0 : if (res) return res;
9676 : : }
9677 : : }
9678 : : }
9679 : : break;
9680 : : }
9681 : : default:;
9682 : : }
9683 : : break;
9684 : : }
9685 : 0 : default:;
9686 : : }
9687 : 0 : switch (TREE_CODE (_q81))
9688 : : {
9689 : 0 : CASE_CONVERT:
9690 : 0 : {
9691 : 0 : tree _q100 = TREE_OPERAND (_q81, 0);
9692 : 0 : switch (TREE_CODE (_q100))
9693 : : {
9694 : 0 : case GT_EXPR:
9695 : 0 : {
9696 : 0 : tree _q110 = TREE_OPERAND (_q100, 0);
9697 : 0 : tree _q111 = TREE_OPERAND (_q100, 1);
9698 : 0 : if ((_q110 == _q40 && ! TREE_SIDE_EFFECTS (_q110)) || (operand_equal_p (_q110, _q40, 0) && types_match (_q110, _q40)))
9699 : : {
9700 : 0 : if ((_q111 == _q41 && ! TREE_SIDE_EFFECTS (_q111)) || (operand_equal_p (_q111, _q41, 0) && types_match (_q111, _q41)))
9701 : : {
9702 : 0 : {
9703 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q30, _q40, _q41, _q21, _q100, _q80 };
9704 : 0 : tree res = generic_simplify_119 (loc, type, _p0, _p1, captures, LE_EXPR, GT_EXPR);
9705 : 0 : if (res) return res;
9706 : : }
9707 : : }
9708 : : }
9709 : : break;
9710 : : }
9711 : : default:;
9712 : : }
9713 : : break;
9714 : : }
9715 : : default:;
9716 : : }
9717 : : break;
9718 : : }
9719 : : default:;
9720 : : }
9721 : : break;
9722 : : }
9723 : 0 : case EQ_EXPR:
9724 : 0 : {
9725 : 0 : tree _q40 = TREE_OPERAND (_q30, 0);
9726 : 0 : tree _q41 = TREE_OPERAND (_q30, 1);
9727 : 0 : switch (TREE_CODE (_p1))
9728 : : {
9729 : 0 : case BIT_AND_EXPR:
9730 : 0 : {
9731 : 0 : tree _q80 = TREE_OPERAND (_p1, 0);
9732 : 0 : tree _q81 = TREE_OPERAND (_p1, 1);
9733 : 0 : switch (TREE_CODE (_q80))
9734 : : {
9735 : 0 : CASE_CONVERT:
9736 : 0 : {
9737 : 0 : tree _q90 = TREE_OPERAND (_q80, 0);
9738 : 0 : switch (TREE_CODE (_q90))
9739 : : {
9740 : 0 : case NE_EXPR:
9741 : 0 : {
9742 : 0 : tree _q100 = TREE_OPERAND (_q90, 0);
9743 : 0 : tree _q101 = TREE_OPERAND (_q90, 1);
9744 : 0 : if ((_q100 == _q40 && ! TREE_SIDE_EFFECTS (_q100)) || (operand_equal_p (_q100, _q40, 0) && types_match (_q100, _q40)))
9745 : : {
9746 : 0 : if ((_q101 == _q41 && ! TREE_SIDE_EFFECTS (_q101)) || (operand_equal_p (_q101, _q41, 0) && types_match (_q101, _q41)))
9747 : : {
9748 : 0 : {
9749 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q30, _q40, _q41, _q21, _q90, _q81 };
9750 : 0 : tree res = generic_simplify_119 (loc, type, _p0, _p1, captures, EQ_EXPR, NE_EXPR);
9751 : 0 : if (res) return res;
9752 : : }
9753 : : }
9754 : : }
9755 : : break;
9756 : : }
9757 : : default:;
9758 : : }
9759 : : break;
9760 : : }
9761 : 0 : default:;
9762 : : }
9763 : 0 : switch (TREE_CODE (_q81))
9764 : : {
9765 : 0 : CASE_CONVERT:
9766 : 0 : {
9767 : 0 : tree _q100 = TREE_OPERAND (_q81, 0);
9768 : 0 : switch (TREE_CODE (_q100))
9769 : : {
9770 : 0 : case NE_EXPR:
9771 : 0 : {
9772 : 0 : tree _q110 = TREE_OPERAND (_q100, 0);
9773 : 0 : tree _q111 = TREE_OPERAND (_q100, 1);
9774 : 0 : if ((_q110 == _q40 && ! TREE_SIDE_EFFECTS (_q110)) || (operand_equal_p (_q110, _q40, 0) && types_match (_q110, _q40)))
9775 : : {
9776 : 0 : if ((_q111 == _q41 && ! TREE_SIDE_EFFECTS (_q111)) || (operand_equal_p (_q111, _q41, 0) && types_match (_q111, _q41)))
9777 : : {
9778 : 0 : {
9779 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q30, _q40, _q41, _q21, _q100, _q80 };
9780 : 0 : tree res = generic_simplify_119 (loc, type, _p0, _p1, captures, EQ_EXPR, NE_EXPR);
9781 : 0 : if (res) return res;
9782 : : }
9783 : : }
9784 : : }
9785 : : break;
9786 : : }
9787 : : default:;
9788 : : }
9789 : : break;
9790 : : }
9791 : : default:;
9792 : : }
9793 : : break;
9794 : : }
9795 : : default:;
9796 : : }
9797 : : break;
9798 : : }
9799 : 0 : case NE_EXPR:
9800 : 0 : {
9801 : 0 : tree _q40 = TREE_OPERAND (_q30, 0);
9802 : 0 : tree _q41 = TREE_OPERAND (_q30, 1);
9803 : 0 : switch (TREE_CODE (_p1))
9804 : : {
9805 : 0 : case BIT_AND_EXPR:
9806 : 0 : {
9807 : 0 : tree _q80 = TREE_OPERAND (_p1, 0);
9808 : 0 : tree _q81 = TREE_OPERAND (_p1, 1);
9809 : 0 : switch (TREE_CODE (_q80))
9810 : : {
9811 : 0 : CASE_CONVERT:
9812 : 0 : {
9813 : 0 : tree _q90 = TREE_OPERAND (_q80, 0);
9814 : 0 : switch (TREE_CODE (_q90))
9815 : : {
9816 : 0 : case EQ_EXPR:
9817 : 0 : {
9818 : 0 : tree _q100 = TREE_OPERAND (_q90, 0);
9819 : 0 : tree _q101 = TREE_OPERAND (_q90, 1);
9820 : 0 : if ((_q100 == _q40 && ! TREE_SIDE_EFFECTS (_q100)) || (operand_equal_p (_q100, _q40, 0) && types_match (_q100, _q40)))
9821 : : {
9822 : 0 : if ((_q101 == _q41 && ! TREE_SIDE_EFFECTS (_q101)) || (operand_equal_p (_q101, _q41, 0) && types_match (_q101, _q41)))
9823 : : {
9824 : 0 : {
9825 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q30, _q40, _q41, _q21, _q90, _q81 };
9826 : 0 : tree res = generic_simplify_119 (loc, type, _p0, _p1, captures, NE_EXPR, EQ_EXPR);
9827 : 0 : if (res) return res;
9828 : : }
9829 : : }
9830 : : }
9831 : : break;
9832 : : }
9833 : : default:;
9834 : : }
9835 : : break;
9836 : : }
9837 : 0 : default:;
9838 : : }
9839 : 0 : switch (TREE_CODE (_q81))
9840 : : {
9841 : 0 : CASE_CONVERT:
9842 : 0 : {
9843 : 0 : tree _q100 = TREE_OPERAND (_q81, 0);
9844 : 0 : switch (TREE_CODE (_q100))
9845 : : {
9846 : 0 : case EQ_EXPR:
9847 : 0 : {
9848 : 0 : tree _q110 = TREE_OPERAND (_q100, 0);
9849 : 0 : tree _q111 = TREE_OPERAND (_q100, 1);
9850 : 0 : if ((_q110 == _q40 && ! TREE_SIDE_EFFECTS (_q110)) || (operand_equal_p (_q110, _q40, 0) && types_match (_q110, _q40)))
9851 : : {
9852 : 0 : if ((_q111 == _q41 && ! TREE_SIDE_EFFECTS (_q111)) || (operand_equal_p (_q111, _q41, 0) && types_match (_q111, _q41)))
9853 : : {
9854 : 0 : {
9855 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q30, _q40, _q41, _q21, _q100, _q80 };
9856 : 0 : tree res = generic_simplify_119 (loc, type, _p0, _p1, captures, NE_EXPR, EQ_EXPR);
9857 : 0 : if (res) return res;
9858 : : }
9859 : : }
9860 : : }
9861 : : break;
9862 : : }
9863 : : default:;
9864 : : }
9865 : : break;
9866 : : }
9867 : : default:;
9868 : : }
9869 : : break;
9870 : : }
9871 : : default:;
9872 : : }
9873 : : break;
9874 : : }
9875 : 0 : case GE_EXPR:
9876 : 0 : {
9877 : 0 : tree _q40 = TREE_OPERAND (_q30, 0);
9878 : 0 : tree _q41 = TREE_OPERAND (_q30, 1);
9879 : 0 : switch (TREE_CODE (_p1))
9880 : : {
9881 : 0 : case BIT_AND_EXPR:
9882 : 0 : {
9883 : 0 : tree _q80 = TREE_OPERAND (_p1, 0);
9884 : 0 : tree _q81 = TREE_OPERAND (_p1, 1);
9885 : 0 : switch (TREE_CODE (_q80))
9886 : : {
9887 : 0 : CASE_CONVERT:
9888 : 0 : {
9889 : 0 : tree _q90 = TREE_OPERAND (_q80, 0);
9890 : 0 : switch (TREE_CODE (_q90))
9891 : : {
9892 : 0 : case LT_EXPR:
9893 : 0 : {
9894 : 0 : tree _q100 = TREE_OPERAND (_q90, 0);
9895 : 0 : tree _q101 = TREE_OPERAND (_q90, 1);
9896 : 0 : if ((_q100 == _q40 && ! TREE_SIDE_EFFECTS (_q100)) || (operand_equal_p (_q100, _q40, 0) && types_match (_q100, _q40)))
9897 : : {
9898 : 0 : if ((_q101 == _q41 && ! TREE_SIDE_EFFECTS (_q101)) || (operand_equal_p (_q101, _q41, 0) && types_match (_q101, _q41)))
9899 : : {
9900 : 0 : {
9901 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q30, _q40, _q41, _q21, _q90, _q81 };
9902 : 0 : tree res = generic_simplify_119 (loc, type, _p0, _p1, captures, GE_EXPR, LT_EXPR);
9903 : 0 : if (res) return res;
9904 : : }
9905 : : }
9906 : : }
9907 : : break;
9908 : : }
9909 : : default:;
9910 : : }
9911 : : break;
9912 : : }
9913 : 0 : default:;
9914 : : }
9915 : 0 : switch (TREE_CODE (_q81))
9916 : : {
9917 : 0 : CASE_CONVERT:
9918 : 0 : {
9919 : 0 : tree _q100 = TREE_OPERAND (_q81, 0);
9920 : 0 : switch (TREE_CODE (_q100))
9921 : : {
9922 : 0 : case LT_EXPR:
9923 : 0 : {
9924 : 0 : tree _q110 = TREE_OPERAND (_q100, 0);
9925 : 0 : tree _q111 = TREE_OPERAND (_q100, 1);
9926 : 0 : if ((_q110 == _q40 && ! TREE_SIDE_EFFECTS (_q110)) || (operand_equal_p (_q110, _q40, 0) && types_match (_q110, _q40)))
9927 : : {
9928 : 0 : if ((_q111 == _q41 && ! TREE_SIDE_EFFECTS (_q111)) || (operand_equal_p (_q111, _q41, 0) && types_match (_q111, _q41)))
9929 : : {
9930 : 0 : {
9931 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q30, _q40, _q41, _q21, _q100, _q80 };
9932 : 0 : tree res = generic_simplify_119 (loc, type, _p0, _p1, captures, GE_EXPR, LT_EXPR);
9933 : 0 : if (res) return res;
9934 : : }
9935 : : }
9936 : : }
9937 : : break;
9938 : : }
9939 : : default:;
9940 : : }
9941 : : break;
9942 : : }
9943 : : default:;
9944 : : }
9945 : : break;
9946 : : }
9947 : : default:;
9948 : : }
9949 : : break;
9950 : : }
9951 : 0 : case GT_EXPR:
9952 : 0 : {
9953 : 0 : tree _q40 = TREE_OPERAND (_q30, 0);
9954 : 0 : tree _q41 = TREE_OPERAND (_q30, 1);
9955 : 0 : switch (TREE_CODE (_p1))
9956 : : {
9957 : 0 : case BIT_AND_EXPR:
9958 : 0 : {
9959 : 0 : tree _q80 = TREE_OPERAND (_p1, 0);
9960 : 0 : tree _q81 = TREE_OPERAND (_p1, 1);
9961 : 0 : switch (TREE_CODE (_q80))
9962 : : {
9963 : 0 : CASE_CONVERT:
9964 : 0 : {
9965 : 0 : tree _q90 = TREE_OPERAND (_q80, 0);
9966 : 0 : switch (TREE_CODE (_q90))
9967 : : {
9968 : 0 : case LE_EXPR:
9969 : 0 : {
9970 : 0 : tree _q100 = TREE_OPERAND (_q90, 0);
9971 : 0 : tree _q101 = TREE_OPERAND (_q90, 1);
9972 : 0 : if ((_q100 == _q40 && ! TREE_SIDE_EFFECTS (_q100)) || (operand_equal_p (_q100, _q40, 0) && types_match (_q100, _q40)))
9973 : : {
9974 : 0 : if ((_q101 == _q41 && ! TREE_SIDE_EFFECTS (_q101)) || (operand_equal_p (_q101, _q41, 0) && types_match (_q101, _q41)))
9975 : : {
9976 : 0 : {
9977 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q30, _q40, _q41, _q21, _q90, _q81 };
9978 : 0 : tree res = generic_simplify_119 (loc, type, _p0, _p1, captures, GT_EXPR, LE_EXPR);
9979 : 0 : if (res) return res;
9980 : : }
9981 : : }
9982 : : }
9983 : : break;
9984 : : }
9985 : : default:;
9986 : : }
9987 : : break;
9988 : : }
9989 : 0 : default:;
9990 : : }
9991 : 0 : switch (TREE_CODE (_q81))
9992 : : {
9993 : 0 : CASE_CONVERT:
9994 : 0 : {
9995 : 0 : tree _q100 = TREE_OPERAND (_q81, 0);
9996 : 0 : switch (TREE_CODE (_q100))
9997 : : {
9998 : 0 : case LE_EXPR:
9999 : 0 : {
10000 : 0 : tree _q110 = TREE_OPERAND (_q100, 0);
10001 : 0 : tree _q111 = TREE_OPERAND (_q100, 1);
10002 : 0 : if ((_q110 == _q40 && ! TREE_SIDE_EFFECTS (_q110)) || (operand_equal_p (_q110, _q40, 0) && types_match (_q110, _q40)))
10003 : : {
10004 : 0 : if ((_q111 == _q41 && ! TREE_SIDE_EFFECTS (_q111)) || (operand_equal_p (_q111, _q41, 0) && types_match (_q111, _q41)))
10005 : : {
10006 : 0 : {
10007 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q30, _q40, _q41, _q21, _q100, _q80 };
10008 : 0 : tree res = generic_simplify_119 (loc, type, _p0, _p1, captures, GT_EXPR, LE_EXPR);
10009 : 0 : if (res) return res;
10010 : : }
10011 : : }
10012 : : }
10013 : : break;
10014 : : }
10015 : : default:;
10016 : : }
10017 : : break;
10018 : : }
10019 : : default:;
10020 : : }
10021 : : break;
10022 : : }
10023 : : default:;
10024 : : }
10025 : : break;
10026 : : }
10027 : 0 : case UNORDERED_EXPR:
10028 : 0 : {
10029 : 0 : tree _q40 = TREE_OPERAND (_q30, 0);
10030 : 0 : tree _q41 = TREE_OPERAND (_q30, 1);
10031 : 0 : switch (TREE_CODE (_p1))
10032 : : {
10033 : 0 : case BIT_AND_EXPR:
10034 : 0 : {
10035 : 0 : tree _q80 = TREE_OPERAND (_p1, 0);
10036 : 0 : tree _q81 = TREE_OPERAND (_p1, 1);
10037 : 0 : switch (TREE_CODE (_q80))
10038 : : {
10039 : 0 : CASE_CONVERT:
10040 : 0 : {
10041 : 0 : tree _q90 = TREE_OPERAND (_q80, 0);
10042 : 0 : switch (TREE_CODE (_q90))
10043 : : {
10044 : 0 : case ORDERED_EXPR:
10045 : 0 : {
10046 : 0 : tree _q100 = TREE_OPERAND (_q90, 0);
10047 : 0 : tree _q101 = TREE_OPERAND (_q90, 1);
10048 : 0 : if ((_q100 == _q40 && ! TREE_SIDE_EFFECTS (_q100)) || (operand_equal_p (_q100, _q40, 0) && types_match (_q100, _q40)))
10049 : : {
10050 : 0 : if ((_q101 == _q41 && ! TREE_SIDE_EFFECTS (_q101)) || (operand_equal_p (_q101, _q41, 0) && types_match (_q101, _q41)))
10051 : : {
10052 : 0 : {
10053 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q30, _q40, _q41, _q21, _q90, _q81 };
10054 : 0 : tree res = generic_simplify_119 (loc, type, _p0, _p1, captures, UNORDERED_EXPR, ORDERED_EXPR);
10055 : 0 : if (res) return res;
10056 : : }
10057 : : }
10058 : : }
10059 : : break;
10060 : : }
10061 : : default:;
10062 : : }
10063 : : break;
10064 : : }
10065 : 0 : default:;
10066 : : }
10067 : 0 : switch (TREE_CODE (_q81))
10068 : : {
10069 : 0 : CASE_CONVERT:
10070 : 0 : {
10071 : 0 : tree _q100 = TREE_OPERAND (_q81, 0);
10072 : 0 : switch (TREE_CODE (_q100))
10073 : : {
10074 : 0 : case ORDERED_EXPR:
10075 : 0 : {
10076 : 0 : tree _q110 = TREE_OPERAND (_q100, 0);
10077 : 0 : tree _q111 = TREE_OPERAND (_q100, 1);
10078 : 0 : if ((_q110 == _q40 && ! TREE_SIDE_EFFECTS (_q110)) || (operand_equal_p (_q110, _q40, 0) && types_match (_q110, _q40)))
10079 : : {
10080 : 0 : if ((_q111 == _q41 && ! TREE_SIDE_EFFECTS (_q111)) || (operand_equal_p (_q111, _q41, 0) && types_match (_q111, _q41)))
10081 : : {
10082 : 0 : {
10083 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q30, _q40, _q41, _q21, _q100, _q80 };
10084 : 0 : tree res = generic_simplify_119 (loc, type, _p0, _p1, captures, UNORDERED_EXPR, ORDERED_EXPR);
10085 : 0 : if (res) return res;
10086 : : }
10087 : : }
10088 : : }
10089 : : break;
10090 : : }
10091 : : default:;
10092 : : }
10093 : : break;
10094 : : }
10095 : : default:;
10096 : : }
10097 : : break;
10098 : : }
10099 : : default:;
10100 : : }
10101 : : break;
10102 : : }
10103 : 0 : case ORDERED_EXPR:
10104 : 0 : {
10105 : 0 : tree _q40 = TREE_OPERAND (_q30, 0);
10106 : 0 : tree _q41 = TREE_OPERAND (_q30, 1);
10107 : 0 : switch (TREE_CODE (_p1))
10108 : : {
10109 : 0 : case BIT_AND_EXPR:
10110 : 0 : {
10111 : 0 : tree _q80 = TREE_OPERAND (_p1, 0);
10112 : 0 : tree _q81 = TREE_OPERAND (_p1, 1);
10113 : 0 : switch (TREE_CODE (_q80))
10114 : : {
10115 : 0 : CASE_CONVERT:
10116 : 0 : {
10117 : 0 : tree _q90 = TREE_OPERAND (_q80, 0);
10118 : 0 : switch (TREE_CODE (_q90))
10119 : : {
10120 : 0 : case UNORDERED_EXPR:
10121 : 0 : {
10122 : 0 : tree _q100 = TREE_OPERAND (_q90, 0);
10123 : 0 : tree _q101 = TREE_OPERAND (_q90, 1);
10124 : 0 : if ((_q100 == _q40 && ! TREE_SIDE_EFFECTS (_q100)) || (operand_equal_p (_q100, _q40, 0) && types_match (_q100, _q40)))
10125 : : {
10126 : 0 : if ((_q101 == _q41 && ! TREE_SIDE_EFFECTS (_q101)) || (operand_equal_p (_q101, _q41, 0) && types_match (_q101, _q41)))
10127 : : {
10128 : 0 : {
10129 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q30, _q40, _q41, _q21, _q90, _q81 };
10130 : 0 : tree res = generic_simplify_119 (loc, type, _p0, _p1, captures, ORDERED_EXPR, UNORDERED_EXPR);
10131 : 0 : if (res) return res;
10132 : : }
10133 : : }
10134 : : }
10135 : : break;
10136 : : }
10137 : : default:;
10138 : : }
10139 : : break;
10140 : : }
10141 : 0 : default:;
10142 : : }
10143 : 0 : switch (TREE_CODE (_q81))
10144 : : {
10145 : 0 : CASE_CONVERT:
10146 : 0 : {
10147 : 0 : tree _q100 = TREE_OPERAND (_q81, 0);
10148 : 0 : switch (TREE_CODE (_q100))
10149 : : {
10150 : 0 : case UNORDERED_EXPR:
10151 : 0 : {
10152 : 0 : tree _q110 = TREE_OPERAND (_q100, 0);
10153 : 0 : tree _q111 = TREE_OPERAND (_q100, 1);
10154 : 0 : if ((_q110 == _q40 && ! TREE_SIDE_EFFECTS (_q110)) || (operand_equal_p (_q110, _q40, 0) && types_match (_q110, _q40)))
10155 : : {
10156 : 0 : if ((_q111 == _q41 && ! TREE_SIDE_EFFECTS (_q111)) || (operand_equal_p (_q111, _q41, 0) && types_match (_q111, _q41)))
10157 : : {
10158 : 0 : {
10159 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q30, _q40, _q41, _q21, _q100, _q80 };
10160 : 0 : tree res = generic_simplify_119 (loc, type, _p0, _p1, captures, ORDERED_EXPR, UNORDERED_EXPR);
10161 : 0 : if (res) return res;
10162 : : }
10163 : : }
10164 : : }
10165 : : break;
10166 : : }
10167 : : default:;
10168 : : }
10169 : : break;
10170 : : }
10171 : : default:;
10172 : : }
10173 : : break;
10174 : : }
10175 : : default:;
10176 : : }
10177 : : break;
10178 : : }
10179 : 0 : case UNLT_EXPR:
10180 : 0 : {
10181 : 0 : tree _q40 = TREE_OPERAND (_q30, 0);
10182 : 0 : tree _q41 = TREE_OPERAND (_q30, 1);
10183 : 0 : switch (TREE_CODE (_p1))
10184 : : {
10185 : 0 : case BIT_AND_EXPR:
10186 : 0 : {
10187 : 0 : tree _q80 = TREE_OPERAND (_p1, 0);
10188 : 0 : tree _q81 = TREE_OPERAND (_p1, 1);
10189 : 0 : switch (TREE_CODE (_q80))
10190 : : {
10191 : 0 : CASE_CONVERT:
10192 : 0 : {
10193 : 0 : tree _q90 = TREE_OPERAND (_q80, 0);
10194 : 0 : switch (TREE_CODE (_q90))
10195 : : {
10196 : 0 : case GE_EXPR:
10197 : 0 : {
10198 : 0 : tree _q100 = TREE_OPERAND (_q90, 0);
10199 : 0 : tree _q101 = TREE_OPERAND (_q90, 1);
10200 : 0 : if ((_q100 == _q40 && ! TREE_SIDE_EFFECTS (_q100)) || (operand_equal_p (_q100, _q40, 0) && types_match (_q100, _q40)))
10201 : : {
10202 : 0 : if ((_q101 == _q41 && ! TREE_SIDE_EFFECTS (_q101)) || (operand_equal_p (_q101, _q41, 0) && types_match (_q101, _q41)))
10203 : : {
10204 : 0 : {
10205 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q30, _q40, _q41, _q21, _q90, _q81 };
10206 : 0 : tree res = generic_simplify_119 (loc, type, _p0, _p1, captures, UNLT_EXPR, GE_EXPR);
10207 : 0 : if (res) return res;
10208 : : }
10209 : : }
10210 : : }
10211 : : break;
10212 : : }
10213 : : default:;
10214 : : }
10215 : : break;
10216 : : }
10217 : 0 : default:;
10218 : : }
10219 : 0 : switch (TREE_CODE (_q81))
10220 : : {
10221 : 0 : CASE_CONVERT:
10222 : 0 : {
10223 : 0 : tree _q100 = TREE_OPERAND (_q81, 0);
10224 : 0 : switch (TREE_CODE (_q100))
10225 : : {
10226 : 0 : case GE_EXPR:
10227 : 0 : {
10228 : 0 : tree _q110 = TREE_OPERAND (_q100, 0);
10229 : 0 : tree _q111 = TREE_OPERAND (_q100, 1);
10230 : 0 : if ((_q110 == _q40 && ! TREE_SIDE_EFFECTS (_q110)) || (operand_equal_p (_q110, _q40, 0) && types_match (_q110, _q40)))
10231 : : {
10232 : 0 : if ((_q111 == _q41 && ! TREE_SIDE_EFFECTS (_q111)) || (operand_equal_p (_q111, _q41, 0) && types_match (_q111, _q41)))
10233 : : {
10234 : 0 : {
10235 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q30, _q40, _q41, _q21, _q100, _q80 };
10236 : 0 : tree res = generic_simplify_119 (loc, type, _p0, _p1, captures, UNLT_EXPR, GE_EXPR);
10237 : 0 : if (res) return res;
10238 : : }
10239 : : }
10240 : : }
10241 : : break;
10242 : : }
10243 : : default:;
10244 : : }
10245 : : break;
10246 : : }
10247 : : default:;
10248 : : }
10249 : : break;
10250 : : }
10251 : : default:;
10252 : : }
10253 : : break;
10254 : : }
10255 : 0 : case UNLE_EXPR:
10256 : 0 : {
10257 : 0 : tree _q40 = TREE_OPERAND (_q30, 0);
10258 : 0 : tree _q41 = TREE_OPERAND (_q30, 1);
10259 : 0 : switch (TREE_CODE (_p1))
10260 : : {
10261 : 0 : case BIT_AND_EXPR:
10262 : 0 : {
10263 : 0 : tree _q80 = TREE_OPERAND (_p1, 0);
10264 : 0 : tree _q81 = TREE_OPERAND (_p1, 1);
10265 : 0 : switch (TREE_CODE (_q80))
10266 : : {
10267 : 0 : CASE_CONVERT:
10268 : 0 : {
10269 : 0 : tree _q90 = TREE_OPERAND (_q80, 0);
10270 : 0 : switch (TREE_CODE (_q90))
10271 : : {
10272 : 0 : case GT_EXPR:
10273 : 0 : {
10274 : 0 : tree _q100 = TREE_OPERAND (_q90, 0);
10275 : 0 : tree _q101 = TREE_OPERAND (_q90, 1);
10276 : 0 : if ((_q100 == _q40 && ! TREE_SIDE_EFFECTS (_q100)) || (operand_equal_p (_q100, _q40, 0) && types_match (_q100, _q40)))
10277 : : {
10278 : 0 : if ((_q101 == _q41 && ! TREE_SIDE_EFFECTS (_q101)) || (operand_equal_p (_q101, _q41, 0) && types_match (_q101, _q41)))
10279 : : {
10280 : 0 : {
10281 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q30, _q40, _q41, _q21, _q90, _q81 };
10282 : 0 : tree res = generic_simplify_119 (loc, type, _p0, _p1, captures, UNLE_EXPR, GT_EXPR);
10283 : 0 : if (res) return res;
10284 : : }
10285 : : }
10286 : : }
10287 : : break;
10288 : : }
10289 : : default:;
10290 : : }
10291 : : break;
10292 : : }
10293 : 0 : default:;
10294 : : }
10295 : 0 : switch (TREE_CODE (_q81))
10296 : : {
10297 : 0 : CASE_CONVERT:
10298 : 0 : {
10299 : 0 : tree _q100 = TREE_OPERAND (_q81, 0);
10300 : 0 : switch (TREE_CODE (_q100))
10301 : : {
10302 : 0 : case GT_EXPR:
10303 : 0 : {
10304 : 0 : tree _q110 = TREE_OPERAND (_q100, 0);
10305 : 0 : tree _q111 = TREE_OPERAND (_q100, 1);
10306 : 0 : if ((_q110 == _q40 && ! TREE_SIDE_EFFECTS (_q110)) || (operand_equal_p (_q110, _q40, 0) && types_match (_q110, _q40)))
10307 : : {
10308 : 0 : if ((_q111 == _q41 && ! TREE_SIDE_EFFECTS (_q111)) || (operand_equal_p (_q111, _q41, 0) && types_match (_q111, _q41)))
10309 : : {
10310 : 0 : {
10311 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q30, _q40, _q41, _q21, _q100, _q80 };
10312 : 0 : tree res = generic_simplify_119 (loc, type, _p0, _p1, captures, UNLE_EXPR, GT_EXPR);
10313 : 0 : if (res) return res;
10314 : : }
10315 : : }
10316 : : }
10317 : : break;
10318 : : }
10319 : : default:;
10320 : : }
10321 : : break;
10322 : : }
10323 : : default:;
10324 : : }
10325 : : break;
10326 : : }
10327 : : default:;
10328 : : }
10329 : : break;
10330 : : }
10331 : 0 : case UNGT_EXPR:
10332 : 0 : {
10333 : 0 : tree _q40 = TREE_OPERAND (_q30, 0);
10334 : 0 : tree _q41 = TREE_OPERAND (_q30, 1);
10335 : 0 : switch (TREE_CODE (_p1))
10336 : : {
10337 : 0 : case BIT_AND_EXPR:
10338 : 0 : {
10339 : 0 : tree _q80 = TREE_OPERAND (_p1, 0);
10340 : 0 : tree _q81 = TREE_OPERAND (_p1, 1);
10341 : 0 : switch (TREE_CODE (_q80))
10342 : : {
10343 : 0 : CASE_CONVERT:
10344 : 0 : {
10345 : 0 : tree _q90 = TREE_OPERAND (_q80, 0);
10346 : 0 : switch (TREE_CODE (_q90))
10347 : : {
10348 : 0 : case LE_EXPR:
10349 : 0 : {
10350 : 0 : tree _q100 = TREE_OPERAND (_q90, 0);
10351 : 0 : tree _q101 = TREE_OPERAND (_q90, 1);
10352 : 0 : if ((_q100 == _q40 && ! TREE_SIDE_EFFECTS (_q100)) || (operand_equal_p (_q100, _q40, 0) && types_match (_q100, _q40)))
10353 : : {
10354 : 0 : if ((_q101 == _q41 && ! TREE_SIDE_EFFECTS (_q101)) || (operand_equal_p (_q101, _q41, 0) && types_match (_q101, _q41)))
10355 : : {
10356 : 0 : {
10357 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q30, _q40, _q41, _q21, _q90, _q81 };
10358 : 0 : tree res = generic_simplify_119 (loc, type, _p0, _p1, captures, UNGT_EXPR, LE_EXPR);
10359 : 0 : if (res) return res;
10360 : : }
10361 : : }
10362 : : }
10363 : : break;
10364 : : }
10365 : : default:;
10366 : : }
10367 : : break;
10368 : : }
10369 : 0 : default:;
10370 : : }
10371 : 0 : switch (TREE_CODE (_q81))
10372 : : {
10373 : 0 : CASE_CONVERT:
10374 : 0 : {
10375 : 0 : tree _q100 = TREE_OPERAND (_q81, 0);
10376 : 0 : switch (TREE_CODE (_q100))
10377 : : {
10378 : 0 : case LE_EXPR:
10379 : 0 : {
10380 : 0 : tree _q110 = TREE_OPERAND (_q100, 0);
10381 : 0 : tree _q111 = TREE_OPERAND (_q100, 1);
10382 : 0 : if ((_q110 == _q40 && ! TREE_SIDE_EFFECTS (_q110)) || (operand_equal_p (_q110, _q40, 0) && types_match (_q110, _q40)))
10383 : : {
10384 : 0 : if ((_q111 == _q41 && ! TREE_SIDE_EFFECTS (_q111)) || (operand_equal_p (_q111, _q41, 0) && types_match (_q111, _q41)))
10385 : : {
10386 : 0 : {
10387 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q30, _q40, _q41, _q21, _q100, _q80 };
10388 : 0 : tree res = generic_simplify_119 (loc, type, _p0, _p1, captures, UNGT_EXPR, LE_EXPR);
10389 : 0 : if (res) return res;
10390 : : }
10391 : : }
10392 : : }
10393 : : break;
10394 : : }
10395 : : default:;
10396 : : }
10397 : : break;
10398 : : }
10399 : : default:;
10400 : : }
10401 : : break;
10402 : : }
10403 : : default:;
10404 : : }
10405 : : break;
10406 : : }
10407 : 0 : case UNGE_EXPR:
10408 : 0 : {
10409 : 0 : tree _q40 = TREE_OPERAND (_q30, 0);
10410 : 0 : tree _q41 = TREE_OPERAND (_q30, 1);
10411 : 0 : switch (TREE_CODE (_p1))
10412 : : {
10413 : 0 : case BIT_AND_EXPR:
10414 : 0 : {
10415 : 0 : tree _q80 = TREE_OPERAND (_p1, 0);
10416 : 0 : tree _q81 = TREE_OPERAND (_p1, 1);
10417 : 0 : switch (TREE_CODE (_q80))
10418 : : {
10419 : 0 : CASE_CONVERT:
10420 : 0 : {
10421 : 0 : tree _q90 = TREE_OPERAND (_q80, 0);
10422 : 0 : switch (TREE_CODE (_q90))
10423 : : {
10424 : 0 : case LT_EXPR:
10425 : 0 : {
10426 : 0 : tree _q100 = TREE_OPERAND (_q90, 0);
10427 : 0 : tree _q101 = TREE_OPERAND (_q90, 1);
10428 : 0 : if ((_q100 == _q40 && ! TREE_SIDE_EFFECTS (_q100)) || (operand_equal_p (_q100, _q40, 0) && types_match (_q100, _q40)))
10429 : : {
10430 : 0 : if ((_q101 == _q41 && ! TREE_SIDE_EFFECTS (_q101)) || (operand_equal_p (_q101, _q41, 0) && types_match (_q101, _q41)))
10431 : : {
10432 : 0 : {
10433 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q30, _q40, _q41, _q21, _q90, _q81 };
10434 : 0 : tree res = generic_simplify_119 (loc, type, _p0, _p1, captures, UNGE_EXPR, LT_EXPR);
10435 : 0 : if (res) return res;
10436 : : }
10437 : : }
10438 : : }
10439 : : break;
10440 : : }
10441 : : default:;
10442 : : }
10443 : : break;
10444 : : }
10445 : 0 : default:;
10446 : : }
10447 : 0 : switch (TREE_CODE (_q81))
10448 : : {
10449 : 0 : CASE_CONVERT:
10450 : 0 : {
10451 : 0 : tree _q100 = TREE_OPERAND (_q81, 0);
10452 : 0 : switch (TREE_CODE (_q100))
10453 : : {
10454 : 0 : case LT_EXPR:
10455 : 0 : {
10456 : 0 : tree _q110 = TREE_OPERAND (_q100, 0);
10457 : 0 : tree _q111 = TREE_OPERAND (_q100, 1);
10458 : 0 : if ((_q110 == _q40 && ! TREE_SIDE_EFFECTS (_q110)) || (operand_equal_p (_q110, _q40, 0) && types_match (_q110, _q40)))
10459 : : {
10460 : 0 : if ((_q111 == _q41 && ! TREE_SIDE_EFFECTS (_q111)) || (operand_equal_p (_q111, _q41, 0) && types_match (_q111, _q41)))
10461 : : {
10462 : 0 : {
10463 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q30, _q40, _q41, _q21, _q100, _q80 };
10464 : 0 : tree res = generic_simplify_119 (loc, type, _p0, _p1, captures, UNGE_EXPR, LT_EXPR);
10465 : 0 : if (res) return res;
10466 : : }
10467 : : }
10468 : : }
10469 : : break;
10470 : : }
10471 : : default:;
10472 : : }
10473 : : break;
10474 : : }
10475 : : default:;
10476 : : }
10477 : : break;
10478 : : }
10479 : : default:;
10480 : : }
10481 : : break;
10482 : : }
10483 : 0 : case UNEQ_EXPR:
10484 : 0 : {
10485 : 0 : tree _q40 = TREE_OPERAND (_q30, 0);
10486 : 0 : tree _q41 = TREE_OPERAND (_q30, 1);
10487 : 0 : switch (TREE_CODE (_p1))
10488 : : {
10489 : 0 : case BIT_AND_EXPR:
10490 : 0 : {
10491 : 0 : tree _q80 = TREE_OPERAND (_p1, 0);
10492 : 0 : tree _q81 = TREE_OPERAND (_p1, 1);
10493 : 0 : switch (TREE_CODE (_q80))
10494 : : {
10495 : 0 : CASE_CONVERT:
10496 : 0 : {
10497 : 0 : tree _q90 = TREE_OPERAND (_q80, 0);
10498 : 0 : switch (TREE_CODE (_q90))
10499 : : {
10500 : 0 : case LTGT_EXPR:
10501 : 0 : {
10502 : 0 : tree _q100 = TREE_OPERAND (_q90, 0);
10503 : 0 : tree _q101 = TREE_OPERAND (_q90, 1);
10504 : 0 : if ((_q100 == _q40 && ! TREE_SIDE_EFFECTS (_q100)) || (operand_equal_p (_q100, _q40, 0) && types_match (_q100, _q40)))
10505 : : {
10506 : 0 : if ((_q101 == _q41 && ! TREE_SIDE_EFFECTS (_q101)) || (operand_equal_p (_q101, _q41, 0) && types_match (_q101, _q41)))
10507 : : {
10508 : 0 : {
10509 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q30, _q40, _q41, _q21, _q90, _q81 };
10510 : 0 : tree res = generic_simplify_119 (loc, type, _p0, _p1, captures, UNEQ_EXPR, LTGT_EXPR);
10511 : 0 : if (res) return res;
10512 : : }
10513 : : }
10514 : : }
10515 : : break;
10516 : : }
10517 : : default:;
10518 : : }
10519 : : break;
10520 : : }
10521 : 0 : default:;
10522 : : }
10523 : 0 : switch (TREE_CODE (_q81))
10524 : : {
10525 : 0 : CASE_CONVERT:
10526 : 0 : {
10527 : 0 : tree _q100 = TREE_OPERAND (_q81, 0);
10528 : 0 : switch (TREE_CODE (_q100))
10529 : : {
10530 : 0 : case LTGT_EXPR:
10531 : 0 : {
10532 : 0 : tree _q110 = TREE_OPERAND (_q100, 0);
10533 : 0 : tree _q111 = TREE_OPERAND (_q100, 1);
10534 : 0 : if ((_q110 == _q40 && ! TREE_SIDE_EFFECTS (_q110)) || (operand_equal_p (_q110, _q40, 0) && types_match (_q110, _q40)))
10535 : : {
10536 : 0 : if ((_q111 == _q41 && ! TREE_SIDE_EFFECTS (_q111)) || (operand_equal_p (_q111, _q41, 0) && types_match (_q111, _q41)))
10537 : : {
10538 : 0 : {
10539 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q30, _q40, _q41, _q21, _q100, _q80 };
10540 : 0 : tree res = generic_simplify_119 (loc, type, _p0, _p1, captures, UNEQ_EXPR, LTGT_EXPR);
10541 : 0 : if (res) return res;
10542 : : }
10543 : : }
10544 : : }
10545 : : break;
10546 : : }
10547 : : default:;
10548 : : }
10549 : : break;
10550 : : }
10551 : : default:;
10552 : : }
10553 : : break;
10554 : : }
10555 : : default:;
10556 : : }
10557 : : break;
10558 : : }
10559 : 0 : case LTGT_EXPR:
10560 : 0 : {
10561 : 0 : tree _q40 = TREE_OPERAND (_q30, 0);
10562 : 0 : tree _q41 = TREE_OPERAND (_q30, 1);
10563 : 0 : switch (TREE_CODE (_p1))
10564 : : {
10565 : 0 : case BIT_AND_EXPR:
10566 : 0 : {
10567 : 0 : tree _q80 = TREE_OPERAND (_p1, 0);
10568 : 0 : tree _q81 = TREE_OPERAND (_p1, 1);
10569 : 0 : switch (TREE_CODE (_q80))
10570 : : {
10571 : 0 : CASE_CONVERT:
10572 : 0 : {
10573 : 0 : tree _q90 = TREE_OPERAND (_q80, 0);
10574 : 0 : switch (TREE_CODE (_q90))
10575 : : {
10576 : 0 : case UNEQ_EXPR:
10577 : 0 : {
10578 : 0 : tree _q100 = TREE_OPERAND (_q90, 0);
10579 : 0 : tree _q101 = TREE_OPERAND (_q90, 1);
10580 : 0 : if ((_q100 == _q40 && ! TREE_SIDE_EFFECTS (_q100)) || (operand_equal_p (_q100, _q40, 0) && types_match (_q100, _q40)))
10581 : : {
10582 : 0 : if ((_q101 == _q41 && ! TREE_SIDE_EFFECTS (_q101)) || (operand_equal_p (_q101, _q41, 0) && types_match (_q101, _q41)))
10583 : : {
10584 : 0 : {
10585 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q30, _q40, _q41, _q21, _q90, _q81 };
10586 : 0 : tree res = generic_simplify_119 (loc, type, _p0, _p1, captures, LTGT_EXPR, UNEQ_EXPR);
10587 : 0 : if (res) return res;
10588 : : }
10589 : : }
10590 : : }
10591 : : break;
10592 : : }
10593 : : default:;
10594 : : }
10595 : : break;
10596 : : }
10597 : 0 : default:;
10598 : : }
10599 : 0 : switch (TREE_CODE (_q81))
10600 : : {
10601 : 0 : CASE_CONVERT:
10602 : 0 : {
10603 : 0 : tree _q100 = TREE_OPERAND (_q81, 0);
10604 : 0 : switch (TREE_CODE (_q100))
10605 : : {
10606 : 0 : case UNEQ_EXPR:
10607 : 0 : {
10608 : 0 : tree _q110 = TREE_OPERAND (_q100, 0);
10609 : 0 : tree _q111 = TREE_OPERAND (_q100, 1);
10610 : 0 : if ((_q110 == _q40 && ! TREE_SIDE_EFFECTS (_q110)) || (operand_equal_p (_q110, _q40, 0) && types_match (_q110, _q40)))
10611 : : {
10612 : 0 : if ((_q111 == _q41 && ! TREE_SIDE_EFFECTS (_q111)) || (operand_equal_p (_q111, _q41, 0) && types_match (_q111, _q41)))
10613 : : {
10614 : 0 : {
10615 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q30, _q40, _q41, _q21, _q100, _q80 };
10616 : 0 : tree res = generic_simplify_119 (loc, type, _p0, _p1, captures, LTGT_EXPR, UNEQ_EXPR);
10617 : 0 : if (res) return res;
10618 : : }
10619 : : }
10620 : : }
10621 : : break;
10622 : : }
10623 : : default:;
10624 : : }
10625 : : break;
10626 : : }
10627 : : default:;
10628 : : }
10629 : : break;
10630 : : }
10631 : : default:;
10632 : : }
10633 : : break;
10634 : : }
10635 : : default:;
10636 : : }
10637 : : break;
10638 : : }
10639 : 128333 : default:;
10640 : : }
10641 : 128333 : switch (TREE_CODE (_q21))
10642 : : {
10643 : 188 : CASE_CONVERT:
10644 : 188 : {
10645 : 188 : tree _q40 = TREE_OPERAND (_q21, 0);
10646 : 188 : switch (TREE_CODE (_q40))
10647 : : {
10648 : 0 : case LT_EXPR:
10649 : 0 : {
10650 : 0 : tree _q50 = TREE_OPERAND (_q40, 0);
10651 : 0 : tree _q51 = TREE_OPERAND (_q40, 1);
10652 : 0 : switch (TREE_CODE (_p1))
10653 : : {
10654 : 0 : case BIT_AND_EXPR:
10655 : 0 : {
10656 : 0 : tree _q80 = TREE_OPERAND (_p1, 0);
10657 : 0 : tree _q81 = TREE_OPERAND (_p1, 1);
10658 : 0 : switch (TREE_CODE (_q80))
10659 : : {
10660 : 0 : CASE_CONVERT:
10661 : 0 : {
10662 : 0 : tree _q90 = TREE_OPERAND (_q80, 0);
10663 : 0 : switch (TREE_CODE (_q90))
10664 : : {
10665 : 0 : case GE_EXPR:
10666 : 0 : {
10667 : 0 : tree _q100 = TREE_OPERAND (_q90, 0);
10668 : 0 : tree _q101 = TREE_OPERAND (_q90, 1);
10669 : 0 : if ((_q100 == _q50 && ! TREE_SIDE_EFFECTS (_q100)) || (operand_equal_p (_q100, _q50, 0) && types_match (_q100, _q50)))
10670 : : {
10671 : 0 : if ((_q101 == _q51 && ! TREE_SIDE_EFFECTS (_q101)) || (operand_equal_p (_q101, _q51, 0) && types_match (_q101, _q51)))
10672 : : {
10673 : 0 : {
10674 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q40, _q50, _q51, _q20, _q90, _q81 };
10675 : 0 : tree res = generic_simplify_119 (loc, type, _p0, _p1, captures, LT_EXPR, GE_EXPR);
10676 : 0 : if (res) return res;
10677 : : }
10678 : : }
10679 : : }
10680 : : break;
10681 : : }
10682 : : default:;
10683 : : }
10684 : : break;
10685 : : }
10686 : 0 : default:;
10687 : : }
10688 : 0 : switch (TREE_CODE (_q81))
10689 : : {
10690 : 0 : CASE_CONVERT:
10691 : 0 : {
10692 : 0 : tree _q100 = TREE_OPERAND (_q81, 0);
10693 : 0 : switch (TREE_CODE (_q100))
10694 : : {
10695 : 0 : case GE_EXPR:
10696 : 0 : {
10697 : 0 : tree _q110 = TREE_OPERAND (_q100, 0);
10698 : 0 : tree _q111 = TREE_OPERAND (_q100, 1);
10699 : 0 : if ((_q110 == _q50 && ! TREE_SIDE_EFFECTS (_q110)) || (operand_equal_p (_q110, _q50, 0) && types_match (_q110, _q50)))
10700 : : {
10701 : 0 : if ((_q111 == _q51 && ! TREE_SIDE_EFFECTS (_q111)) || (operand_equal_p (_q111, _q51, 0) && types_match (_q111, _q51)))
10702 : : {
10703 : 0 : {
10704 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q40, _q50, _q51, _q20, _q100, _q80 };
10705 : 0 : tree res = generic_simplify_119 (loc, type, _p0, _p1, captures, LT_EXPR, GE_EXPR);
10706 : 0 : if (res) return res;
10707 : : }
10708 : : }
10709 : : }
10710 : : break;
10711 : : }
10712 : : default:;
10713 : : }
10714 : : break;
10715 : : }
10716 : : default:;
10717 : : }
10718 : : break;
10719 : : }
10720 : : default:;
10721 : : }
10722 : : break;
10723 : : }
10724 : 0 : case LE_EXPR:
10725 : 0 : {
10726 : 0 : tree _q50 = TREE_OPERAND (_q40, 0);
10727 : 0 : tree _q51 = TREE_OPERAND (_q40, 1);
10728 : 0 : switch (TREE_CODE (_p1))
10729 : : {
10730 : 0 : case BIT_AND_EXPR:
10731 : 0 : {
10732 : 0 : tree _q80 = TREE_OPERAND (_p1, 0);
10733 : 0 : tree _q81 = TREE_OPERAND (_p1, 1);
10734 : 0 : switch (TREE_CODE (_q80))
10735 : : {
10736 : 0 : CASE_CONVERT:
10737 : 0 : {
10738 : 0 : tree _q90 = TREE_OPERAND (_q80, 0);
10739 : 0 : switch (TREE_CODE (_q90))
10740 : : {
10741 : 0 : case GT_EXPR:
10742 : 0 : {
10743 : 0 : tree _q100 = TREE_OPERAND (_q90, 0);
10744 : 0 : tree _q101 = TREE_OPERAND (_q90, 1);
10745 : 0 : if ((_q100 == _q50 && ! TREE_SIDE_EFFECTS (_q100)) || (operand_equal_p (_q100, _q50, 0) && types_match (_q100, _q50)))
10746 : : {
10747 : 0 : if ((_q101 == _q51 && ! TREE_SIDE_EFFECTS (_q101)) || (operand_equal_p (_q101, _q51, 0) && types_match (_q101, _q51)))
10748 : : {
10749 : 0 : {
10750 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q40, _q50, _q51, _q20, _q90, _q81 };
10751 : 0 : tree res = generic_simplify_119 (loc, type, _p0, _p1, captures, LE_EXPR, GT_EXPR);
10752 : 0 : if (res) return res;
10753 : : }
10754 : : }
10755 : : }
10756 : : break;
10757 : : }
10758 : : default:;
10759 : : }
10760 : : break;
10761 : : }
10762 : 0 : default:;
10763 : : }
10764 : 0 : switch (TREE_CODE (_q81))
10765 : : {
10766 : 0 : CASE_CONVERT:
10767 : 0 : {
10768 : 0 : tree _q100 = TREE_OPERAND (_q81, 0);
10769 : 0 : switch (TREE_CODE (_q100))
10770 : : {
10771 : 0 : case GT_EXPR:
10772 : 0 : {
10773 : 0 : tree _q110 = TREE_OPERAND (_q100, 0);
10774 : 0 : tree _q111 = TREE_OPERAND (_q100, 1);
10775 : 0 : if ((_q110 == _q50 && ! TREE_SIDE_EFFECTS (_q110)) || (operand_equal_p (_q110, _q50, 0) && types_match (_q110, _q50)))
10776 : : {
10777 : 0 : if ((_q111 == _q51 && ! TREE_SIDE_EFFECTS (_q111)) || (operand_equal_p (_q111, _q51, 0) && types_match (_q111, _q51)))
10778 : : {
10779 : 0 : {
10780 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q40, _q50, _q51, _q20, _q100, _q80 };
10781 : 0 : tree res = generic_simplify_119 (loc, type, _p0, _p1, captures, LE_EXPR, GT_EXPR);
10782 : 0 : if (res) return res;
10783 : : }
10784 : : }
10785 : : }
10786 : : break;
10787 : : }
10788 : : default:;
10789 : : }
10790 : : break;
10791 : : }
10792 : : default:;
10793 : : }
10794 : : break;
10795 : : }
10796 : : default:;
10797 : : }
10798 : : break;
10799 : : }
10800 : 0 : case EQ_EXPR:
10801 : 0 : {
10802 : 0 : tree _q50 = TREE_OPERAND (_q40, 0);
10803 : 0 : tree _q51 = TREE_OPERAND (_q40, 1);
10804 : 0 : switch (TREE_CODE (_p1))
10805 : : {
10806 : 0 : case BIT_AND_EXPR:
10807 : 0 : {
10808 : 0 : tree _q80 = TREE_OPERAND (_p1, 0);
10809 : 0 : tree _q81 = TREE_OPERAND (_p1, 1);
10810 : 0 : switch (TREE_CODE (_q80))
10811 : : {
10812 : 0 : CASE_CONVERT:
10813 : 0 : {
10814 : 0 : tree _q90 = TREE_OPERAND (_q80, 0);
10815 : 0 : switch (TREE_CODE (_q90))
10816 : : {
10817 : 0 : case NE_EXPR:
10818 : 0 : {
10819 : 0 : tree _q100 = TREE_OPERAND (_q90, 0);
10820 : 0 : tree _q101 = TREE_OPERAND (_q90, 1);
10821 : 0 : if ((_q100 == _q50 && ! TREE_SIDE_EFFECTS (_q100)) || (operand_equal_p (_q100, _q50, 0) && types_match (_q100, _q50)))
10822 : : {
10823 : 0 : if ((_q101 == _q51 && ! TREE_SIDE_EFFECTS (_q101)) || (operand_equal_p (_q101, _q51, 0) && types_match (_q101, _q51)))
10824 : : {
10825 : 0 : {
10826 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q40, _q50, _q51, _q20, _q90, _q81 };
10827 : 0 : tree res = generic_simplify_119 (loc, type, _p0, _p1, captures, EQ_EXPR, NE_EXPR);
10828 : 0 : if (res) return res;
10829 : : }
10830 : : }
10831 : : }
10832 : : break;
10833 : : }
10834 : : default:;
10835 : : }
10836 : : break;
10837 : : }
10838 : 0 : default:;
10839 : : }
10840 : 0 : switch (TREE_CODE (_q81))
10841 : : {
10842 : 0 : CASE_CONVERT:
10843 : 0 : {
10844 : 0 : tree _q100 = TREE_OPERAND (_q81, 0);
10845 : 0 : switch (TREE_CODE (_q100))
10846 : : {
10847 : 0 : case NE_EXPR:
10848 : 0 : {
10849 : 0 : tree _q110 = TREE_OPERAND (_q100, 0);
10850 : 0 : tree _q111 = TREE_OPERAND (_q100, 1);
10851 : 0 : if ((_q110 == _q50 && ! TREE_SIDE_EFFECTS (_q110)) || (operand_equal_p (_q110, _q50, 0) && types_match (_q110, _q50)))
10852 : : {
10853 : 0 : if ((_q111 == _q51 && ! TREE_SIDE_EFFECTS (_q111)) || (operand_equal_p (_q111, _q51, 0) && types_match (_q111, _q51)))
10854 : : {
10855 : 0 : {
10856 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q40, _q50, _q51, _q20, _q100, _q80 };
10857 : 0 : tree res = generic_simplify_119 (loc, type, _p0, _p1, captures, EQ_EXPR, NE_EXPR);
10858 : 0 : if (res) return res;
10859 : : }
10860 : : }
10861 : : }
10862 : : break;
10863 : : }
10864 : : default:;
10865 : : }
10866 : : break;
10867 : : }
10868 : : default:;
10869 : : }
10870 : : break;
10871 : : }
10872 : : default:;
10873 : : }
10874 : : break;
10875 : : }
10876 : 0 : case NE_EXPR:
10877 : 0 : {
10878 : 0 : tree _q50 = TREE_OPERAND (_q40, 0);
10879 : 0 : tree _q51 = TREE_OPERAND (_q40, 1);
10880 : 0 : switch (TREE_CODE (_p1))
10881 : : {
10882 : 0 : case BIT_AND_EXPR:
10883 : 0 : {
10884 : 0 : tree _q80 = TREE_OPERAND (_p1, 0);
10885 : 0 : tree _q81 = TREE_OPERAND (_p1, 1);
10886 : 0 : switch (TREE_CODE (_q80))
10887 : : {
10888 : 0 : CASE_CONVERT:
10889 : 0 : {
10890 : 0 : tree _q90 = TREE_OPERAND (_q80, 0);
10891 : 0 : switch (TREE_CODE (_q90))
10892 : : {
10893 : 0 : case EQ_EXPR:
10894 : 0 : {
10895 : 0 : tree _q100 = TREE_OPERAND (_q90, 0);
10896 : 0 : tree _q101 = TREE_OPERAND (_q90, 1);
10897 : 0 : if ((_q100 == _q50 && ! TREE_SIDE_EFFECTS (_q100)) || (operand_equal_p (_q100, _q50, 0) && types_match (_q100, _q50)))
10898 : : {
10899 : 0 : if ((_q101 == _q51 && ! TREE_SIDE_EFFECTS (_q101)) || (operand_equal_p (_q101, _q51, 0) && types_match (_q101, _q51)))
10900 : : {
10901 : 0 : {
10902 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q40, _q50, _q51, _q20, _q90, _q81 };
10903 : 0 : tree res = generic_simplify_119 (loc, type, _p0, _p1, captures, NE_EXPR, EQ_EXPR);
10904 : 0 : if (res) return res;
10905 : : }
10906 : : }
10907 : : }
10908 : : break;
10909 : : }
10910 : : default:;
10911 : : }
10912 : : break;
10913 : : }
10914 : 0 : default:;
10915 : : }
10916 : 0 : switch (TREE_CODE (_q81))
10917 : : {
10918 : 0 : CASE_CONVERT:
10919 : 0 : {
10920 : 0 : tree _q100 = TREE_OPERAND (_q81, 0);
10921 : 0 : switch (TREE_CODE (_q100))
10922 : : {
10923 : 0 : case EQ_EXPR:
10924 : 0 : {
10925 : 0 : tree _q110 = TREE_OPERAND (_q100, 0);
10926 : 0 : tree _q111 = TREE_OPERAND (_q100, 1);
10927 : 0 : if ((_q110 == _q50 && ! TREE_SIDE_EFFECTS (_q110)) || (operand_equal_p (_q110, _q50, 0) && types_match (_q110, _q50)))
10928 : : {
10929 : 0 : if ((_q111 == _q51 && ! TREE_SIDE_EFFECTS (_q111)) || (operand_equal_p (_q111, _q51, 0) && types_match (_q111, _q51)))
10930 : : {
10931 : 0 : {
10932 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q40, _q50, _q51, _q20, _q100, _q80 };
10933 : 0 : tree res = generic_simplify_119 (loc, type, _p0, _p1, captures, NE_EXPR, EQ_EXPR);
10934 : 0 : if (res) return res;
10935 : : }
10936 : : }
10937 : : }
10938 : : break;
10939 : : }
10940 : : default:;
10941 : : }
10942 : : break;
10943 : : }
10944 : : default:;
10945 : : }
10946 : : break;
10947 : : }
10948 : : default:;
10949 : : }
10950 : : break;
10951 : : }
10952 : 0 : case GE_EXPR:
10953 : 0 : {
10954 : 0 : tree _q50 = TREE_OPERAND (_q40, 0);
10955 : 0 : tree _q51 = TREE_OPERAND (_q40, 1);
10956 : 0 : switch (TREE_CODE (_p1))
10957 : : {
10958 : 0 : case BIT_AND_EXPR:
10959 : 0 : {
10960 : 0 : tree _q80 = TREE_OPERAND (_p1, 0);
10961 : 0 : tree _q81 = TREE_OPERAND (_p1, 1);
10962 : 0 : switch (TREE_CODE (_q80))
10963 : : {
10964 : 0 : CASE_CONVERT:
10965 : 0 : {
10966 : 0 : tree _q90 = TREE_OPERAND (_q80, 0);
10967 : 0 : switch (TREE_CODE (_q90))
10968 : : {
10969 : 0 : case LT_EXPR:
10970 : 0 : {
10971 : 0 : tree _q100 = TREE_OPERAND (_q90, 0);
10972 : 0 : tree _q101 = TREE_OPERAND (_q90, 1);
10973 : 0 : if ((_q100 == _q50 && ! TREE_SIDE_EFFECTS (_q100)) || (operand_equal_p (_q100, _q50, 0) && types_match (_q100, _q50)))
10974 : : {
10975 : 0 : if ((_q101 == _q51 && ! TREE_SIDE_EFFECTS (_q101)) || (operand_equal_p (_q101, _q51, 0) && types_match (_q101, _q51)))
10976 : : {
10977 : 0 : {
10978 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q40, _q50, _q51, _q20, _q90, _q81 };
10979 : 0 : tree res = generic_simplify_119 (loc, type, _p0, _p1, captures, GE_EXPR, LT_EXPR);
10980 : 0 : if (res) return res;
10981 : : }
10982 : : }
10983 : : }
10984 : : break;
10985 : : }
10986 : : default:;
10987 : : }
10988 : : break;
10989 : : }
10990 : 0 : default:;
10991 : : }
10992 : 0 : switch (TREE_CODE (_q81))
10993 : : {
10994 : 0 : CASE_CONVERT:
10995 : 0 : {
10996 : 0 : tree _q100 = TREE_OPERAND (_q81, 0);
10997 : 0 : switch (TREE_CODE (_q100))
10998 : : {
10999 : 0 : case LT_EXPR:
11000 : 0 : {
11001 : 0 : tree _q110 = TREE_OPERAND (_q100, 0);
11002 : 0 : tree _q111 = TREE_OPERAND (_q100, 1);
11003 : 0 : if ((_q110 == _q50 && ! TREE_SIDE_EFFECTS (_q110)) || (operand_equal_p (_q110, _q50, 0) && types_match (_q110, _q50)))
11004 : : {
11005 : 0 : if ((_q111 == _q51 && ! TREE_SIDE_EFFECTS (_q111)) || (operand_equal_p (_q111, _q51, 0) && types_match (_q111, _q51)))
11006 : : {
11007 : 0 : {
11008 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q40, _q50, _q51, _q20, _q100, _q80 };
11009 : 0 : tree res = generic_simplify_119 (loc, type, _p0, _p1, captures, GE_EXPR, LT_EXPR);
11010 : 0 : if (res) return res;
11011 : : }
11012 : : }
11013 : : }
11014 : : break;
11015 : : }
11016 : : default:;
11017 : : }
11018 : : break;
11019 : : }
11020 : : default:;
11021 : : }
11022 : : break;
11023 : : }
11024 : : default:;
11025 : : }
11026 : : break;
11027 : : }
11028 : 0 : case GT_EXPR:
11029 : 0 : {
11030 : 0 : tree _q50 = TREE_OPERAND (_q40, 0);
11031 : 0 : tree _q51 = TREE_OPERAND (_q40, 1);
11032 : 0 : switch (TREE_CODE (_p1))
11033 : : {
11034 : 0 : case BIT_AND_EXPR:
11035 : 0 : {
11036 : 0 : tree _q80 = TREE_OPERAND (_p1, 0);
11037 : 0 : tree _q81 = TREE_OPERAND (_p1, 1);
11038 : 0 : switch (TREE_CODE (_q80))
11039 : : {
11040 : 0 : CASE_CONVERT:
11041 : 0 : {
11042 : 0 : tree _q90 = TREE_OPERAND (_q80, 0);
11043 : 0 : switch (TREE_CODE (_q90))
11044 : : {
11045 : 0 : case LE_EXPR:
11046 : 0 : {
11047 : 0 : tree _q100 = TREE_OPERAND (_q90, 0);
11048 : 0 : tree _q101 = TREE_OPERAND (_q90, 1);
11049 : 0 : if ((_q100 == _q50 && ! TREE_SIDE_EFFECTS (_q100)) || (operand_equal_p (_q100, _q50, 0) && types_match (_q100, _q50)))
11050 : : {
11051 : 0 : if ((_q101 == _q51 && ! TREE_SIDE_EFFECTS (_q101)) || (operand_equal_p (_q101, _q51, 0) && types_match (_q101, _q51)))
11052 : : {
11053 : 0 : {
11054 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q40, _q50, _q51, _q20, _q90, _q81 };
11055 : 0 : tree res = generic_simplify_119 (loc, type, _p0, _p1, captures, GT_EXPR, LE_EXPR);
11056 : 0 : if (res) return res;
11057 : : }
11058 : : }
11059 : : }
11060 : : break;
11061 : : }
11062 : : default:;
11063 : : }
11064 : : break;
11065 : : }
11066 : 0 : default:;
11067 : : }
11068 : 0 : switch (TREE_CODE (_q81))
11069 : : {
11070 : 0 : CASE_CONVERT:
11071 : 0 : {
11072 : 0 : tree _q100 = TREE_OPERAND (_q81, 0);
11073 : 0 : switch (TREE_CODE (_q100))
11074 : : {
11075 : 0 : case LE_EXPR:
11076 : 0 : {
11077 : 0 : tree _q110 = TREE_OPERAND (_q100, 0);
11078 : 0 : tree _q111 = TREE_OPERAND (_q100, 1);
11079 : 0 : if ((_q110 == _q50 && ! TREE_SIDE_EFFECTS (_q110)) || (operand_equal_p (_q110, _q50, 0) && types_match (_q110, _q50)))
11080 : : {
11081 : 0 : if ((_q111 == _q51 && ! TREE_SIDE_EFFECTS (_q111)) || (operand_equal_p (_q111, _q51, 0) && types_match (_q111, _q51)))
11082 : : {
11083 : 0 : {
11084 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q40, _q50, _q51, _q20, _q100, _q80 };
11085 : 0 : tree res = generic_simplify_119 (loc, type, _p0, _p1, captures, GT_EXPR, LE_EXPR);
11086 : 0 : if (res) return res;
11087 : : }
11088 : : }
11089 : : }
11090 : : break;
11091 : : }
11092 : : default:;
11093 : : }
11094 : : break;
11095 : : }
11096 : : default:;
11097 : : }
11098 : : break;
11099 : : }
11100 : : default:;
11101 : : }
11102 : : break;
11103 : : }
11104 : 0 : case UNORDERED_EXPR:
11105 : 0 : {
11106 : 0 : tree _q50 = TREE_OPERAND (_q40, 0);
11107 : 0 : tree _q51 = TREE_OPERAND (_q40, 1);
11108 : 0 : switch (TREE_CODE (_p1))
11109 : : {
11110 : 0 : case BIT_AND_EXPR:
11111 : 0 : {
11112 : 0 : tree _q80 = TREE_OPERAND (_p1, 0);
11113 : 0 : tree _q81 = TREE_OPERAND (_p1, 1);
11114 : 0 : switch (TREE_CODE (_q80))
11115 : : {
11116 : 0 : CASE_CONVERT:
11117 : 0 : {
11118 : 0 : tree _q90 = TREE_OPERAND (_q80, 0);
11119 : 0 : switch (TREE_CODE (_q90))
11120 : : {
11121 : 0 : case ORDERED_EXPR:
11122 : 0 : {
11123 : 0 : tree _q100 = TREE_OPERAND (_q90, 0);
11124 : 0 : tree _q101 = TREE_OPERAND (_q90, 1);
11125 : 0 : if ((_q100 == _q50 && ! TREE_SIDE_EFFECTS (_q100)) || (operand_equal_p (_q100, _q50, 0) && types_match (_q100, _q50)))
11126 : : {
11127 : 0 : if ((_q101 == _q51 && ! TREE_SIDE_EFFECTS (_q101)) || (operand_equal_p (_q101, _q51, 0) && types_match (_q101, _q51)))
11128 : : {
11129 : 0 : {
11130 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q40, _q50, _q51, _q20, _q90, _q81 };
11131 : 0 : tree res = generic_simplify_119 (loc, type, _p0, _p1, captures, UNORDERED_EXPR, ORDERED_EXPR);
11132 : 0 : if (res) return res;
11133 : : }
11134 : : }
11135 : : }
11136 : : break;
11137 : : }
11138 : : default:;
11139 : : }
11140 : : break;
11141 : : }
11142 : 0 : default:;
11143 : : }
11144 : 0 : switch (TREE_CODE (_q81))
11145 : : {
11146 : 0 : CASE_CONVERT:
11147 : 0 : {
11148 : 0 : tree _q100 = TREE_OPERAND (_q81, 0);
11149 : 0 : switch (TREE_CODE (_q100))
11150 : : {
11151 : 0 : case ORDERED_EXPR:
11152 : 0 : {
11153 : 0 : tree _q110 = TREE_OPERAND (_q100, 0);
11154 : 0 : tree _q111 = TREE_OPERAND (_q100, 1);
11155 : 0 : if ((_q110 == _q50 && ! TREE_SIDE_EFFECTS (_q110)) || (operand_equal_p (_q110, _q50, 0) && types_match (_q110, _q50)))
11156 : : {
11157 : 0 : if ((_q111 == _q51 && ! TREE_SIDE_EFFECTS (_q111)) || (operand_equal_p (_q111, _q51, 0) && types_match (_q111, _q51)))
11158 : : {
11159 : 0 : {
11160 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q40, _q50, _q51, _q20, _q100, _q80 };
11161 : 0 : tree res = generic_simplify_119 (loc, type, _p0, _p1, captures, UNORDERED_EXPR, ORDERED_EXPR);
11162 : 0 : if (res) return res;
11163 : : }
11164 : : }
11165 : : }
11166 : : break;
11167 : : }
11168 : : default:;
11169 : : }
11170 : : break;
11171 : : }
11172 : : default:;
11173 : : }
11174 : : break;
11175 : : }
11176 : : default:;
11177 : : }
11178 : : break;
11179 : : }
11180 : 0 : case ORDERED_EXPR:
11181 : 0 : {
11182 : 0 : tree _q50 = TREE_OPERAND (_q40, 0);
11183 : 0 : tree _q51 = TREE_OPERAND (_q40, 1);
11184 : 0 : switch (TREE_CODE (_p1))
11185 : : {
11186 : 0 : case BIT_AND_EXPR:
11187 : 0 : {
11188 : 0 : tree _q80 = TREE_OPERAND (_p1, 0);
11189 : 0 : tree _q81 = TREE_OPERAND (_p1, 1);
11190 : 0 : switch (TREE_CODE (_q80))
11191 : : {
11192 : 0 : CASE_CONVERT:
11193 : 0 : {
11194 : 0 : tree _q90 = TREE_OPERAND (_q80, 0);
11195 : 0 : switch (TREE_CODE (_q90))
11196 : : {
11197 : 0 : case UNORDERED_EXPR:
11198 : 0 : {
11199 : 0 : tree _q100 = TREE_OPERAND (_q90, 0);
11200 : 0 : tree _q101 = TREE_OPERAND (_q90, 1);
11201 : 0 : if ((_q100 == _q50 && ! TREE_SIDE_EFFECTS (_q100)) || (operand_equal_p (_q100, _q50, 0) && types_match (_q100, _q50)))
11202 : : {
11203 : 0 : if ((_q101 == _q51 && ! TREE_SIDE_EFFECTS (_q101)) || (operand_equal_p (_q101, _q51, 0) && types_match (_q101, _q51)))
11204 : : {
11205 : 0 : {
11206 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q40, _q50, _q51, _q20, _q90, _q81 };
11207 : 0 : tree res = generic_simplify_119 (loc, type, _p0, _p1, captures, ORDERED_EXPR, UNORDERED_EXPR);
11208 : 0 : if (res) return res;
11209 : : }
11210 : : }
11211 : : }
11212 : : break;
11213 : : }
11214 : : default:;
11215 : : }
11216 : : break;
11217 : : }
11218 : 0 : default:;
11219 : : }
11220 : 0 : switch (TREE_CODE (_q81))
11221 : : {
11222 : 0 : CASE_CONVERT:
11223 : 0 : {
11224 : 0 : tree _q100 = TREE_OPERAND (_q81, 0);
11225 : 0 : switch (TREE_CODE (_q100))
11226 : : {
11227 : 0 : case UNORDERED_EXPR:
11228 : 0 : {
11229 : 0 : tree _q110 = TREE_OPERAND (_q100, 0);
11230 : 0 : tree _q111 = TREE_OPERAND (_q100, 1);
11231 : 0 : if ((_q110 == _q50 && ! TREE_SIDE_EFFECTS (_q110)) || (operand_equal_p (_q110, _q50, 0) && types_match (_q110, _q50)))
11232 : : {
11233 : 0 : if ((_q111 == _q51 && ! TREE_SIDE_EFFECTS (_q111)) || (operand_equal_p (_q111, _q51, 0) && types_match (_q111, _q51)))
11234 : : {
11235 : 0 : {
11236 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q40, _q50, _q51, _q20, _q100, _q80 };
11237 : 0 : tree res = generic_simplify_119 (loc, type, _p0, _p1, captures, ORDERED_EXPR, UNORDERED_EXPR);
11238 : 0 : if (res) return res;
11239 : : }
11240 : : }
11241 : : }
11242 : : break;
11243 : : }
11244 : : default:;
11245 : : }
11246 : : break;
11247 : : }
11248 : : default:;
11249 : : }
11250 : : break;
11251 : : }
11252 : : default:;
11253 : : }
11254 : : break;
11255 : : }
11256 : 0 : case UNLT_EXPR:
11257 : 0 : {
11258 : 0 : tree _q50 = TREE_OPERAND (_q40, 0);
11259 : 0 : tree _q51 = TREE_OPERAND (_q40, 1);
11260 : 0 : switch (TREE_CODE (_p1))
11261 : : {
11262 : 0 : case BIT_AND_EXPR:
11263 : 0 : {
11264 : 0 : tree _q80 = TREE_OPERAND (_p1, 0);
11265 : 0 : tree _q81 = TREE_OPERAND (_p1, 1);
11266 : 0 : switch (TREE_CODE (_q80))
11267 : : {
11268 : 0 : CASE_CONVERT:
11269 : 0 : {
11270 : 0 : tree _q90 = TREE_OPERAND (_q80, 0);
11271 : 0 : switch (TREE_CODE (_q90))
11272 : : {
11273 : 0 : case GE_EXPR:
11274 : 0 : {
11275 : 0 : tree _q100 = TREE_OPERAND (_q90, 0);
11276 : 0 : tree _q101 = TREE_OPERAND (_q90, 1);
11277 : 0 : if ((_q100 == _q50 && ! TREE_SIDE_EFFECTS (_q100)) || (operand_equal_p (_q100, _q50, 0) && types_match (_q100, _q50)))
11278 : : {
11279 : 0 : if ((_q101 == _q51 && ! TREE_SIDE_EFFECTS (_q101)) || (operand_equal_p (_q101, _q51, 0) && types_match (_q101, _q51)))
11280 : : {
11281 : 0 : {
11282 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q40, _q50, _q51, _q20, _q90, _q81 };
11283 : 0 : tree res = generic_simplify_119 (loc, type, _p0, _p1, captures, UNLT_EXPR, GE_EXPR);
11284 : 0 : if (res) return res;
11285 : : }
11286 : : }
11287 : : }
11288 : : break;
11289 : : }
11290 : : default:;
11291 : : }
11292 : : break;
11293 : : }
11294 : 0 : default:;
11295 : : }
11296 : 0 : switch (TREE_CODE (_q81))
11297 : : {
11298 : 0 : CASE_CONVERT:
11299 : 0 : {
11300 : 0 : tree _q100 = TREE_OPERAND (_q81, 0);
11301 : 0 : switch (TREE_CODE (_q100))
11302 : : {
11303 : 0 : case GE_EXPR:
11304 : 0 : {
11305 : 0 : tree _q110 = TREE_OPERAND (_q100, 0);
11306 : 0 : tree _q111 = TREE_OPERAND (_q100, 1);
11307 : 0 : if ((_q110 == _q50 && ! TREE_SIDE_EFFECTS (_q110)) || (operand_equal_p (_q110, _q50, 0) && types_match (_q110, _q50)))
11308 : : {
11309 : 0 : if ((_q111 == _q51 && ! TREE_SIDE_EFFECTS (_q111)) || (operand_equal_p (_q111, _q51, 0) && types_match (_q111, _q51)))
11310 : : {
11311 : 0 : {
11312 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q40, _q50, _q51, _q20, _q100, _q80 };
11313 : 0 : tree res = generic_simplify_119 (loc, type, _p0, _p1, captures, UNLT_EXPR, GE_EXPR);
11314 : 0 : if (res) return res;
11315 : : }
11316 : : }
11317 : : }
11318 : : break;
11319 : : }
11320 : : default:;
11321 : : }
11322 : : break;
11323 : : }
11324 : : default:;
11325 : : }
11326 : : break;
11327 : : }
11328 : : default:;
11329 : : }
11330 : : break;
11331 : : }
11332 : 0 : case UNLE_EXPR:
11333 : 0 : {
11334 : 0 : tree _q50 = TREE_OPERAND (_q40, 0);
11335 : 0 : tree _q51 = TREE_OPERAND (_q40, 1);
11336 : 0 : switch (TREE_CODE (_p1))
11337 : : {
11338 : 0 : case BIT_AND_EXPR:
11339 : 0 : {
11340 : 0 : tree _q80 = TREE_OPERAND (_p1, 0);
11341 : 0 : tree _q81 = TREE_OPERAND (_p1, 1);
11342 : 0 : switch (TREE_CODE (_q80))
11343 : : {
11344 : 0 : CASE_CONVERT:
11345 : 0 : {
11346 : 0 : tree _q90 = TREE_OPERAND (_q80, 0);
11347 : 0 : switch (TREE_CODE (_q90))
11348 : : {
11349 : 0 : case GT_EXPR:
11350 : 0 : {
11351 : 0 : tree _q100 = TREE_OPERAND (_q90, 0);
11352 : 0 : tree _q101 = TREE_OPERAND (_q90, 1);
11353 : 0 : if ((_q100 == _q50 && ! TREE_SIDE_EFFECTS (_q100)) || (operand_equal_p (_q100, _q50, 0) && types_match (_q100, _q50)))
11354 : : {
11355 : 0 : if ((_q101 == _q51 && ! TREE_SIDE_EFFECTS (_q101)) || (operand_equal_p (_q101, _q51, 0) && types_match (_q101, _q51)))
11356 : : {
11357 : 0 : {
11358 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q40, _q50, _q51, _q20, _q90, _q81 };
11359 : 0 : tree res = generic_simplify_119 (loc, type, _p0, _p1, captures, UNLE_EXPR, GT_EXPR);
11360 : 0 : if (res) return res;
11361 : : }
11362 : : }
11363 : : }
11364 : : break;
11365 : : }
11366 : : default:;
11367 : : }
11368 : : break;
11369 : : }
11370 : 0 : default:;
11371 : : }
11372 : 0 : switch (TREE_CODE (_q81))
11373 : : {
11374 : 0 : CASE_CONVERT:
11375 : 0 : {
11376 : 0 : tree _q100 = TREE_OPERAND (_q81, 0);
11377 : 0 : switch (TREE_CODE (_q100))
11378 : : {
11379 : 0 : case GT_EXPR:
11380 : 0 : {
11381 : 0 : tree _q110 = TREE_OPERAND (_q100, 0);
11382 : 0 : tree _q111 = TREE_OPERAND (_q100, 1);
11383 : 0 : if ((_q110 == _q50 && ! TREE_SIDE_EFFECTS (_q110)) || (operand_equal_p (_q110, _q50, 0) && types_match (_q110, _q50)))
11384 : : {
11385 : 0 : if ((_q111 == _q51 && ! TREE_SIDE_EFFECTS (_q111)) || (operand_equal_p (_q111, _q51, 0) && types_match (_q111, _q51)))
11386 : : {
11387 : 0 : {
11388 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q40, _q50, _q51, _q20, _q100, _q80 };
11389 : 0 : tree res = generic_simplify_119 (loc, type, _p0, _p1, captures, UNLE_EXPR, GT_EXPR);
11390 : 0 : if (res) return res;
11391 : : }
11392 : : }
11393 : : }
11394 : : break;
11395 : : }
11396 : : default:;
11397 : : }
11398 : : break;
11399 : : }
11400 : : default:;
11401 : : }
11402 : : break;
11403 : : }
11404 : : default:;
11405 : : }
11406 : : break;
11407 : : }
11408 : 0 : case UNGT_EXPR:
11409 : 0 : {
11410 : 0 : tree _q50 = TREE_OPERAND (_q40, 0);
11411 : 0 : tree _q51 = TREE_OPERAND (_q40, 1);
11412 : 0 : switch (TREE_CODE (_p1))
11413 : : {
11414 : 0 : case BIT_AND_EXPR:
11415 : 0 : {
11416 : 0 : tree _q80 = TREE_OPERAND (_p1, 0);
11417 : 0 : tree _q81 = TREE_OPERAND (_p1, 1);
11418 : 0 : switch (TREE_CODE (_q80))
11419 : : {
11420 : 0 : CASE_CONVERT:
11421 : 0 : {
11422 : 0 : tree _q90 = TREE_OPERAND (_q80, 0);
11423 : 0 : switch (TREE_CODE (_q90))
11424 : : {
11425 : 0 : case LE_EXPR:
11426 : 0 : {
11427 : 0 : tree _q100 = TREE_OPERAND (_q90, 0);
11428 : 0 : tree _q101 = TREE_OPERAND (_q90, 1);
11429 : 0 : if ((_q100 == _q50 && ! TREE_SIDE_EFFECTS (_q100)) || (operand_equal_p (_q100, _q50, 0) && types_match (_q100, _q50)))
11430 : : {
11431 : 0 : if ((_q101 == _q51 && ! TREE_SIDE_EFFECTS (_q101)) || (operand_equal_p (_q101, _q51, 0) && types_match (_q101, _q51)))
11432 : : {
11433 : 0 : {
11434 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q40, _q50, _q51, _q20, _q90, _q81 };
11435 : 0 : tree res = generic_simplify_119 (loc, type, _p0, _p1, captures, UNGT_EXPR, LE_EXPR);
11436 : 0 : if (res) return res;
11437 : : }
11438 : : }
11439 : : }
11440 : : break;
11441 : : }
11442 : : default:;
11443 : : }
11444 : : break;
11445 : : }
11446 : 0 : default:;
11447 : : }
11448 : 0 : switch (TREE_CODE (_q81))
11449 : : {
11450 : 0 : CASE_CONVERT:
11451 : 0 : {
11452 : 0 : tree _q100 = TREE_OPERAND (_q81, 0);
11453 : 0 : switch (TREE_CODE (_q100))
11454 : : {
11455 : 0 : case LE_EXPR:
11456 : 0 : {
11457 : 0 : tree _q110 = TREE_OPERAND (_q100, 0);
11458 : 0 : tree _q111 = TREE_OPERAND (_q100, 1);
11459 : 0 : if ((_q110 == _q50 && ! TREE_SIDE_EFFECTS (_q110)) || (operand_equal_p (_q110, _q50, 0) && types_match (_q110, _q50)))
11460 : : {
11461 : 0 : if ((_q111 == _q51 && ! TREE_SIDE_EFFECTS (_q111)) || (operand_equal_p (_q111, _q51, 0) && types_match (_q111, _q51)))
11462 : : {
11463 : 0 : {
11464 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q40, _q50, _q51, _q20, _q100, _q80 };
11465 : 0 : tree res = generic_simplify_119 (loc, type, _p0, _p1, captures, UNGT_EXPR, LE_EXPR);
11466 : 0 : if (res) return res;
11467 : : }
11468 : : }
11469 : : }
11470 : : break;
11471 : : }
11472 : : default:;
11473 : : }
11474 : : break;
11475 : : }
11476 : : default:;
11477 : : }
11478 : : break;
11479 : : }
11480 : : default:;
11481 : : }
11482 : : break;
11483 : : }
11484 : 0 : case UNGE_EXPR:
11485 : 0 : {
11486 : 0 : tree _q50 = TREE_OPERAND (_q40, 0);
11487 : 0 : tree _q51 = TREE_OPERAND (_q40, 1);
11488 : 0 : switch (TREE_CODE (_p1))
11489 : : {
11490 : 0 : case BIT_AND_EXPR:
11491 : 0 : {
11492 : 0 : tree _q80 = TREE_OPERAND (_p1, 0);
11493 : 0 : tree _q81 = TREE_OPERAND (_p1, 1);
11494 : 0 : switch (TREE_CODE (_q80))
11495 : : {
11496 : 0 : CASE_CONVERT:
11497 : 0 : {
11498 : 0 : tree _q90 = TREE_OPERAND (_q80, 0);
11499 : 0 : switch (TREE_CODE (_q90))
11500 : : {
11501 : 0 : case LT_EXPR:
11502 : 0 : {
11503 : 0 : tree _q100 = TREE_OPERAND (_q90, 0);
11504 : 0 : tree _q101 = TREE_OPERAND (_q90, 1);
11505 : 0 : if ((_q100 == _q50 && ! TREE_SIDE_EFFECTS (_q100)) || (operand_equal_p (_q100, _q50, 0) && types_match (_q100, _q50)))
11506 : : {
11507 : 0 : if ((_q101 == _q51 && ! TREE_SIDE_EFFECTS (_q101)) || (operand_equal_p (_q101, _q51, 0) && types_match (_q101, _q51)))
11508 : : {
11509 : 0 : {
11510 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q40, _q50, _q51, _q20, _q90, _q81 };
11511 : 0 : tree res = generic_simplify_119 (loc, type, _p0, _p1, captures, UNGE_EXPR, LT_EXPR);
11512 : 0 : if (res) return res;
11513 : : }
11514 : : }
11515 : : }
11516 : : break;
11517 : : }
11518 : : default:;
11519 : : }
11520 : : break;
11521 : : }
11522 : 0 : default:;
11523 : : }
11524 : 0 : switch (TREE_CODE (_q81))
11525 : : {
11526 : 0 : CASE_CONVERT:
11527 : 0 : {
11528 : 0 : tree _q100 = TREE_OPERAND (_q81, 0);
11529 : 0 : switch (TREE_CODE (_q100))
11530 : : {
11531 : 0 : case LT_EXPR:
11532 : 0 : {
11533 : 0 : tree _q110 = TREE_OPERAND (_q100, 0);
11534 : 0 : tree _q111 = TREE_OPERAND (_q100, 1);
11535 : 0 : if ((_q110 == _q50 && ! TREE_SIDE_EFFECTS (_q110)) || (operand_equal_p (_q110, _q50, 0) && types_match (_q110, _q50)))
11536 : : {
11537 : 0 : if ((_q111 == _q51 && ! TREE_SIDE_EFFECTS (_q111)) || (operand_equal_p (_q111, _q51, 0) && types_match (_q111, _q51)))
11538 : : {
11539 : 0 : {
11540 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q40, _q50, _q51, _q20, _q100, _q80 };
11541 : 0 : tree res = generic_simplify_119 (loc, type, _p0, _p1, captures, UNGE_EXPR, LT_EXPR);
11542 : 0 : if (res) return res;
11543 : : }
11544 : : }
11545 : : }
11546 : : break;
11547 : : }
11548 : : default:;
11549 : : }
11550 : : break;
11551 : : }
11552 : : default:;
11553 : : }
11554 : : break;
11555 : : }
11556 : : default:;
11557 : : }
11558 : : break;
11559 : : }
11560 : 0 : case UNEQ_EXPR:
11561 : 0 : {
11562 : 0 : tree _q50 = TREE_OPERAND (_q40, 0);
11563 : 0 : tree _q51 = TREE_OPERAND (_q40, 1);
11564 : 0 : switch (TREE_CODE (_p1))
11565 : : {
11566 : 0 : case BIT_AND_EXPR:
11567 : 0 : {
11568 : 0 : tree _q80 = TREE_OPERAND (_p1, 0);
11569 : 0 : tree _q81 = TREE_OPERAND (_p1, 1);
11570 : 0 : switch (TREE_CODE (_q80))
11571 : : {
11572 : 0 : CASE_CONVERT:
11573 : 0 : {
11574 : 0 : tree _q90 = TREE_OPERAND (_q80, 0);
11575 : 0 : switch (TREE_CODE (_q90))
11576 : : {
11577 : 0 : case LTGT_EXPR:
11578 : 0 : {
11579 : 0 : tree _q100 = TREE_OPERAND (_q90, 0);
11580 : 0 : tree _q101 = TREE_OPERAND (_q90, 1);
11581 : 0 : if ((_q100 == _q50 && ! TREE_SIDE_EFFECTS (_q100)) || (operand_equal_p (_q100, _q50, 0) && types_match (_q100, _q50)))
11582 : : {
11583 : 0 : if ((_q101 == _q51 && ! TREE_SIDE_EFFECTS (_q101)) || (operand_equal_p (_q101, _q51, 0) && types_match (_q101, _q51)))
11584 : : {
11585 : 0 : {
11586 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q40, _q50, _q51, _q20, _q90, _q81 };
11587 : 0 : tree res = generic_simplify_119 (loc, type, _p0, _p1, captures, UNEQ_EXPR, LTGT_EXPR);
11588 : 0 : if (res) return res;
11589 : : }
11590 : : }
11591 : : }
11592 : : break;
11593 : : }
11594 : : default:;
11595 : : }
11596 : : break;
11597 : : }
11598 : 0 : default:;
11599 : : }
11600 : 0 : switch (TREE_CODE (_q81))
11601 : : {
11602 : 0 : CASE_CONVERT:
11603 : 0 : {
11604 : 0 : tree _q100 = TREE_OPERAND (_q81, 0);
11605 : 0 : switch (TREE_CODE (_q100))
11606 : : {
11607 : 0 : case LTGT_EXPR:
11608 : 0 : {
11609 : 0 : tree _q110 = TREE_OPERAND (_q100, 0);
11610 : 0 : tree _q111 = TREE_OPERAND (_q100, 1);
11611 : 0 : if ((_q110 == _q50 && ! TREE_SIDE_EFFECTS (_q110)) || (operand_equal_p (_q110, _q50, 0) && types_match (_q110, _q50)))
11612 : : {
11613 : 0 : if ((_q111 == _q51 && ! TREE_SIDE_EFFECTS (_q111)) || (operand_equal_p (_q111, _q51, 0) && types_match (_q111, _q51)))
11614 : : {
11615 : 0 : {
11616 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q40, _q50, _q51, _q20, _q100, _q80 };
11617 : 0 : tree res = generic_simplify_119 (loc, type, _p0, _p1, captures, UNEQ_EXPR, LTGT_EXPR);
11618 : 0 : if (res) return res;
11619 : : }
11620 : : }
11621 : : }
11622 : : break;
11623 : : }
11624 : : default:;
11625 : : }
11626 : : break;
11627 : : }
11628 : : default:;
11629 : : }
11630 : : break;
11631 : : }
11632 : : default:;
11633 : : }
11634 : : break;
11635 : : }
11636 : 0 : case LTGT_EXPR:
11637 : 0 : {
11638 : 0 : tree _q50 = TREE_OPERAND (_q40, 0);
11639 : 0 : tree _q51 = TREE_OPERAND (_q40, 1);
11640 : 0 : switch (TREE_CODE (_p1))
11641 : : {
11642 : 0 : case BIT_AND_EXPR:
11643 : 0 : {
11644 : 0 : tree _q80 = TREE_OPERAND (_p1, 0);
11645 : 0 : tree _q81 = TREE_OPERAND (_p1, 1);
11646 : 0 : switch (TREE_CODE (_q80))
11647 : : {
11648 : 0 : CASE_CONVERT:
11649 : 0 : {
11650 : 0 : tree _q90 = TREE_OPERAND (_q80, 0);
11651 : 0 : switch (TREE_CODE (_q90))
11652 : : {
11653 : 0 : case UNEQ_EXPR:
11654 : 0 : {
11655 : 0 : tree _q100 = TREE_OPERAND (_q90, 0);
11656 : 0 : tree _q101 = TREE_OPERAND (_q90, 1);
11657 : 0 : if ((_q100 == _q50 && ! TREE_SIDE_EFFECTS (_q100)) || (operand_equal_p (_q100, _q50, 0) && types_match (_q100, _q50)))
11658 : : {
11659 : 0 : if ((_q101 == _q51 && ! TREE_SIDE_EFFECTS (_q101)) || (operand_equal_p (_q101, _q51, 0) && types_match (_q101, _q51)))
11660 : : {
11661 : 0 : {
11662 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q40, _q50, _q51, _q20, _q90, _q81 };
11663 : 0 : tree res = generic_simplify_119 (loc, type, _p0, _p1, captures, LTGT_EXPR, UNEQ_EXPR);
11664 : 0 : if (res) return res;
11665 : : }
11666 : : }
11667 : : }
11668 : : break;
11669 : : }
11670 : : default:;
11671 : : }
11672 : : break;
11673 : : }
11674 : 0 : default:;
11675 : : }
11676 : 0 : switch (TREE_CODE (_q81))
11677 : : {
11678 : 0 : CASE_CONVERT:
11679 : 0 : {
11680 : 0 : tree _q100 = TREE_OPERAND (_q81, 0);
11681 : 0 : switch (TREE_CODE (_q100))
11682 : : {
11683 : 0 : case UNEQ_EXPR:
11684 : 0 : {
11685 : 0 : tree _q110 = TREE_OPERAND (_q100, 0);
11686 : 0 : tree _q111 = TREE_OPERAND (_q100, 1);
11687 : 0 : if ((_q110 == _q50 && ! TREE_SIDE_EFFECTS (_q110)) || (operand_equal_p (_q110, _q50, 0) && types_match (_q110, _q50)))
11688 : : {
11689 : 0 : if ((_q111 == _q51 && ! TREE_SIDE_EFFECTS (_q111)) || (operand_equal_p (_q111, _q51, 0) && types_match (_q111, _q51)))
11690 : : {
11691 : 0 : {
11692 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q40, _q50, _q51, _q20, _q100, _q80 };
11693 : 0 : tree res = generic_simplify_119 (loc, type, _p0, _p1, captures, LTGT_EXPR, UNEQ_EXPR);
11694 : 0 : if (res) return res;
11695 : : }
11696 : : }
11697 : : }
11698 : : break;
11699 : : }
11700 : : default:;
11701 : : }
11702 : : break;
11703 : : }
11704 : : default:;
11705 : : }
11706 : : break;
11707 : : }
11708 : : default:;
11709 : : }
11710 : : break;
11711 : : }
11712 : : default:;
11713 : : }
11714 : : break;
11715 : : }
11716 : 128333 : default:;
11717 : : }
11718 : 128333 : switch (TREE_CODE (_q20))
11719 : : {
11720 : 0 : case LT_EXPR:
11721 : 0 : {
11722 : 0 : tree _q30 = TREE_OPERAND (_q20, 0);
11723 : 0 : tree _q31 = TREE_OPERAND (_q20, 1);
11724 : 0 : switch (TREE_CODE (_p1))
11725 : : {
11726 : 0 : case BIT_AND_EXPR:
11727 : 0 : {
11728 : 0 : tree _q70 = TREE_OPERAND (_p1, 0);
11729 : 0 : tree _q71 = TREE_OPERAND (_p1, 1);
11730 : 0 : switch (TREE_CODE (_q70))
11731 : : {
11732 : 0 : case GE_EXPR:
11733 : 0 : {
11734 : 0 : tree _q80 = TREE_OPERAND (_q70, 0);
11735 : 0 : tree _q81 = TREE_OPERAND (_q70, 1);
11736 : 0 : if ((_q80 == _q30 && ! TREE_SIDE_EFFECTS (_q80)) || (operand_equal_p (_q80, _q30, 0) && types_match (_q80, _q30)))
11737 : : {
11738 : 0 : if ((_q81 == _q31 && ! TREE_SIDE_EFFECTS (_q81)) || (operand_equal_p (_q81, _q31, 0) && types_match (_q81, _q31)))
11739 : : {
11740 : 0 : {
11741 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q20, _q30, _q31, _q21, _q70, _q71 };
11742 : 0 : tree res = generic_simplify_119 (loc, type, _p0, _p1, captures, LT_EXPR, GE_EXPR);
11743 : 0 : if (res) return res;
11744 : : }
11745 : : }
11746 : : }
11747 : : break;
11748 : : }
11749 : 0 : default:;
11750 : : }
11751 : 0 : switch (TREE_CODE (_q71))
11752 : : {
11753 : 0 : case GE_EXPR:
11754 : 0 : {
11755 : 0 : tree _q90 = TREE_OPERAND (_q71, 0);
11756 : 0 : tree _q91 = TREE_OPERAND (_q71, 1);
11757 : 0 : if ((_q90 == _q30 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q30, 0) && types_match (_q90, _q30)))
11758 : : {
11759 : 0 : if ((_q91 == _q31 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q31, 0) && types_match (_q91, _q31)))
11760 : : {
11761 : 0 : {
11762 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q20, _q30, _q31, _q21, _q71, _q70 };
11763 : 0 : tree res = generic_simplify_119 (loc, type, _p0, _p1, captures, LT_EXPR, GE_EXPR);
11764 : 0 : if (res) return res;
11765 : : }
11766 : : }
11767 : : }
11768 : : break;
11769 : : }
11770 : : default:;
11771 : : }
11772 : : break;
11773 : : }
11774 : : default:;
11775 : : }
11776 : : break;
11777 : : }
11778 : 0 : case LE_EXPR:
11779 : 0 : {
11780 : 0 : tree _q30 = TREE_OPERAND (_q20, 0);
11781 : 0 : tree _q31 = TREE_OPERAND (_q20, 1);
11782 : 0 : switch (TREE_CODE (_p1))
11783 : : {
11784 : 0 : case BIT_AND_EXPR:
11785 : 0 : {
11786 : 0 : tree _q70 = TREE_OPERAND (_p1, 0);
11787 : 0 : tree _q71 = TREE_OPERAND (_p1, 1);
11788 : 0 : switch (TREE_CODE (_q70))
11789 : : {
11790 : 0 : case GT_EXPR:
11791 : 0 : {
11792 : 0 : tree _q80 = TREE_OPERAND (_q70, 0);
11793 : 0 : tree _q81 = TREE_OPERAND (_q70, 1);
11794 : 0 : if ((_q80 == _q30 && ! TREE_SIDE_EFFECTS (_q80)) || (operand_equal_p (_q80, _q30, 0) && types_match (_q80, _q30)))
11795 : : {
11796 : 0 : if ((_q81 == _q31 && ! TREE_SIDE_EFFECTS (_q81)) || (operand_equal_p (_q81, _q31, 0) && types_match (_q81, _q31)))
11797 : : {
11798 : 0 : {
11799 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q20, _q30, _q31, _q21, _q70, _q71 };
11800 : 0 : tree res = generic_simplify_119 (loc, type, _p0, _p1, captures, LE_EXPR, GT_EXPR);
11801 : 0 : if (res) return res;
11802 : : }
11803 : : }
11804 : : }
11805 : : break;
11806 : : }
11807 : 0 : default:;
11808 : : }
11809 : 0 : switch (TREE_CODE (_q71))
11810 : : {
11811 : 0 : case GT_EXPR:
11812 : 0 : {
11813 : 0 : tree _q90 = TREE_OPERAND (_q71, 0);
11814 : 0 : tree _q91 = TREE_OPERAND (_q71, 1);
11815 : 0 : if ((_q90 == _q30 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q30, 0) && types_match (_q90, _q30)))
11816 : : {
11817 : 0 : if ((_q91 == _q31 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q31, 0) && types_match (_q91, _q31)))
11818 : : {
11819 : 0 : {
11820 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q20, _q30, _q31, _q21, _q71, _q70 };
11821 : 0 : tree res = generic_simplify_119 (loc, type, _p0, _p1, captures, LE_EXPR, GT_EXPR);
11822 : 0 : if (res) return res;
11823 : : }
11824 : : }
11825 : : }
11826 : : break;
11827 : : }
11828 : : default:;
11829 : : }
11830 : : break;
11831 : : }
11832 : : default:;
11833 : : }
11834 : : break;
11835 : : }
11836 : 1 : case EQ_EXPR:
11837 : 1 : {
11838 : 1 : tree _q30 = TREE_OPERAND (_q20, 0);
11839 : 1 : tree _q31 = TREE_OPERAND (_q20, 1);
11840 : 1 : switch (TREE_CODE (_p1))
11841 : : {
11842 : 1 : case BIT_AND_EXPR:
11843 : 1 : {
11844 : 1 : tree _q70 = TREE_OPERAND (_p1, 0);
11845 : 1 : tree _q71 = TREE_OPERAND (_p1, 1);
11846 : 1 : switch (TREE_CODE (_q70))
11847 : : {
11848 : 0 : case NE_EXPR:
11849 : 0 : {
11850 : 0 : tree _q80 = TREE_OPERAND (_q70, 0);
11851 : 0 : tree _q81 = TREE_OPERAND (_q70, 1);
11852 : 0 : if ((_q80 == _q30 && ! TREE_SIDE_EFFECTS (_q80)) || (operand_equal_p (_q80, _q30, 0) && types_match (_q80, _q30)))
11853 : : {
11854 : 0 : if ((_q81 == _q31 && ! TREE_SIDE_EFFECTS (_q81)) || (operand_equal_p (_q81, _q31, 0) && types_match (_q81, _q31)))
11855 : : {
11856 : 0 : {
11857 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q20, _q30, _q31, _q21, _q70, _q71 };
11858 : 0 : tree res = generic_simplify_119 (loc, type, _p0, _p1, captures, EQ_EXPR, NE_EXPR);
11859 : 0 : if (res) return res;
11860 : : }
11861 : : }
11862 : : }
11863 : : break;
11864 : : }
11865 : 1 : default:;
11866 : : }
11867 : 1 : switch (TREE_CODE (_q71))
11868 : : {
11869 : 0 : case NE_EXPR:
11870 : 0 : {
11871 : 0 : tree _q90 = TREE_OPERAND (_q71, 0);
11872 : 0 : tree _q91 = TREE_OPERAND (_q71, 1);
11873 : 0 : if ((_q90 == _q30 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q30, 0) && types_match (_q90, _q30)))
11874 : : {
11875 : 0 : if ((_q91 == _q31 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q31, 0) && types_match (_q91, _q31)))
11876 : : {
11877 : 0 : {
11878 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q20, _q30, _q31, _q21, _q71, _q70 };
11879 : 0 : tree res = generic_simplify_119 (loc, type, _p0, _p1, captures, EQ_EXPR, NE_EXPR);
11880 : 0 : if (res) return res;
11881 : : }
11882 : : }
11883 : : }
11884 : : break;
11885 : : }
11886 : : default:;
11887 : : }
11888 : : break;
11889 : : }
11890 : : default:;
11891 : : }
11892 : : break;
11893 : : }
11894 : 0 : case NE_EXPR:
11895 : 0 : {
11896 : 0 : tree _q30 = TREE_OPERAND (_q20, 0);
11897 : 0 : tree _q31 = TREE_OPERAND (_q20, 1);
11898 : 0 : switch (TREE_CODE (_p1))
11899 : : {
11900 : 0 : case BIT_AND_EXPR:
11901 : 0 : {
11902 : 0 : tree _q70 = TREE_OPERAND (_p1, 0);
11903 : 0 : tree _q71 = TREE_OPERAND (_p1, 1);
11904 : 0 : switch (TREE_CODE (_q70))
11905 : : {
11906 : 0 : case EQ_EXPR:
11907 : 0 : {
11908 : 0 : tree _q80 = TREE_OPERAND (_q70, 0);
11909 : 0 : tree _q81 = TREE_OPERAND (_q70, 1);
11910 : 0 : if ((_q80 == _q30 && ! TREE_SIDE_EFFECTS (_q80)) || (operand_equal_p (_q80, _q30, 0) && types_match (_q80, _q30)))
11911 : : {
11912 : 0 : if ((_q81 == _q31 && ! TREE_SIDE_EFFECTS (_q81)) || (operand_equal_p (_q81, _q31, 0) && types_match (_q81, _q31)))
11913 : : {
11914 : 0 : {
11915 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q20, _q30, _q31, _q21, _q70, _q71 };
11916 : 0 : tree res = generic_simplify_119 (loc, type, _p0, _p1, captures, NE_EXPR, EQ_EXPR);
11917 : 0 : if (res) return res;
11918 : : }
11919 : : }
11920 : : }
11921 : : break;
11922 : : }
11923 : 0 : default:;
11924 : : }
11925 : 0 : switch (TREE_CODE (_q71))
11926 : : {
11927 : 0 : case EQ_EXPR:
11928 : 0 : {
11929 : 0 : tree _q90 = TREE_OPERAND (_q71, 0);
11930 : 0 : tree _q91 = TREE_OPERAND (_q71, 1);
11931 : 0 : if ((_q90 == _q30 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q30, 0) && types_match (_q90, _q30)))
11932 : : {
11933 : 0 : if ((_q91 == _q31 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q31, 0) && types_match (_q91, _q31)))
11934 : : {
11935 : 0 : {
11936 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q20, _q30, _q31, _q21, _q71, _q70 };
11937 : 0 : tree res = generic_simplify_119 (loc, type, _p0, _p1, captures, NE_EXPR, EQ_EXPR);
11938 : 0 : if (res) return res;
11939 : : }
11940 : : }
11941 : : }
11942 : : break;
11943 : : }
11944 : : default:;
11945 : : }
11946 : : break;
11947 : : }
11948 : : default:;
11949 : : }
11950 : : break;
11951 : : }
11952 : 0 : case GE_EXPR:
11953 : 0 : {
11954 : 0 : tree _q30 = TREE_OPERAND (_q20, 0);
11955 : 0 : tree _q31 = TREE_OPERAND (_q20, 1);
11956 : 0 : switch (TREE_CODE (_p1))
11957 : : {
11958 : 0 : case BIT_AND_EXPR:
11959 : 0 : {
11960 : 0 : tree _q70 = TREE_OPERAND (_p1, 0);
11961 : 0 : tree _q71 = TREE_OPERAND (_p1, 1);
11962 : 0 : switch (TREE_CODE (_q70))
11963 : : {
11964 : 0 : case LT_EXPR:
11965 : 0 : {
11966 : 0 : tree _q80 = TREE_OPERAND (_q70, 0);
11967 : 0 : tree _q81 = TREE_OPERAND (_q70, 1);
11968 : 0 : if ((_q80 == _q30 && ! TREE_SIDE_EFFECTS (_q80)) || (operand_equal_p (_q80, _q30, 0) && types_match (_q80, _q30)))
11969 : : {
11970 : 0 : if ((_q81 == _q31 && ! TREE_SIDE_EFFECTS (_q81)) || (operand_equal_p (_q81, _q31, 0) && types_match (_q81, _q31)))
11971 : : {
11972 : 0 : {
11973 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q20, _q30, _q31, _q21, _q70, _q71 };
11974 : 0 : tree res = generic_simplify_119 (loc, type, _p0, _p1, captures, GE_EXPR, LT_EXPR);
11975 : 0 : if (res) return res;
11976 : : }
11977 : : }
11978 : : }
11979 : : break;
11980 : : }
11981 : 0 : default:;
11982 : : }
11983 : 0 : switch (TREE_CODE (_q71))
11984 : : {
11985 : 0 : case LT_EXPR:
11986 : 0 : {
11987 : 0 : tree _q90 = TREE_OPERAND (_q71, 0);
11988 : 0 : tree _q91 = TREE_OPERAND (_q71, 1);
11989 : 0 : if ((_q90 == _q30 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q30, 0) && types_match (_q90, _q30)))
11990 : : {
11991 : 0 : if ((_q91 == _q31 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q31, 0) && types_match (_q91, _q31)))
11992 : : {
11993 : 0 : {
11994 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q20, _q30, _q31, _q21, _q71, _q70 };
11995 : 0 : tree res = generic_simplify_119 (loc, type, _p0, _p1, captures, GE_EXPR, LT_EXPR);
11996 : 0 : if (res) return res;
11997 : : }
11998 : : }
11999 : : }
12000 : : break;
12001 : : }
12002 : : default:;
12003 : : }
12004 : : break;
12005 : : }
12006 : : default:;
12007 : : }
12008 : : break;
12009 : : }
12010 : 0 : case GT_EXPR:
12011 : 0 : {
12012 : 0 : tree _q30 = TREE_OPERAND (_q20, 0);
12013 : 0 : tree _q31 = TREE_OPERAND (_q20, 1);
12014 : 0 : switch (TREE_CODE (_p1))
12015 : : {
12016 : 0 : case BIT_AND_EXPR:
12017 : 0 : {
12018 : 0 : tree _q70 = TREE_OPERAND (_p1, 0);
12019 : 0 : tree _q71 = TREE_OPERAND (_p1, 1);
12020 : 0 : switch (TREE_CODE (_q70))
12021 : : {
12022 : 0 : case LE_EXPR:
12023 : 0 : {
12024 : 0 : tree _q80 = TREE_OPERAND (_q70, 0);
12025 : 0 : tree _q81 = TREE_OPERAND (_q70, 1);
12026 : 0 : if ((_q80 == _q30 && ! TREE_SIDE_EFFECTS (_q80)) || (operand_equal_p (_q80, _q30, 0) && types_match (_q80, _q30)))
12027 : : {
12028 : 0 : if ((_q81 == _q31 && ! TREE_SIDE_EFFECTS (_q81)) || (operand_equal_p (_q81, _q31, 0) && types_match (_q81, _q31)))
12029 : : {
12030 : 0 : {
12031 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q20, _q30, _q31, _q21, _q70, _q71 };
12032 : 0 : tree res = generic_simplify_119 (loc, type, _p0, _p1, captures, GT_EXPR, LE_EXPR);
12033 : 0 : if (res) return res;
12034 : : }
12035 : : }
12036 : : }
12037 : : break;
12038 : : }
12039 : 0 : default:;
12040 : : }
12041 : 0 : switch (TREE_CODE (_q71))
12042 : : {
12043 : 0 : case LE_EXPR:
12044 : 0 : {
12045 : 0 : tree _q90 = TREE_OPERAND (_q71, 0);
12046 : 0 : tree _q91 = TREE_OPERAND (_q71, 1);
12047 : 0 : if ((_q90 == _q30 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q30, 0) && types_match (_q90, _q30)))
12048 : : {
12049 : 0 : if ((_q91 == _q31 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q31, 0) && types_match (_q91, _q31)))
12050 : : {
12051 : 0 : {
12052 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q20, _q30, _q31, _q21, _q71, _q70 };
12053 : 0 : tree res = generic_simplify_119 (loc, type, _p0, _p1, captures, GT_EXPR, LE_EXPR);
12054 : 0 : if (res) return res;
12055 : : }
12056 : : }
12057 : : }
12058 : : break;
12059 : : }
12060 : : default:;
12061 : : }
12062 : : break;
12063 : : }
12064 : : default:;
12065 : : }
12066 : : break;
12067 : : }
12068 : 0 : case UNORDERED_EXPR:
12069 : 0 : {
12070 : 0 : tree _q30 = TREE_OPERAND (_q20, 0);
12071 : 0 : tree _q31 = TREE_OPERAND (_q20, 1);
12072 : 0 : switch (TREE_CODE (_p1))
12073 : : {
12074 : 0 : case BIT_AND_EXPR:
12075 : 0 : {
12076 : 0 : tree _q70 = TREE_OPERAND (_p1, 0);
12077 : 0 : tree _q71 = TREE_OPERAND (_p1, 1);
12078 : 0 : switch (TREE_CODE (_q70))
12079 : : {
12080 : 0 : case ORDERED_EXPR:
12081 : 0 : {
12082 : 0 : tree _q80 = TREE_OPERAND (_q70, 0);
12083 : 0 : tree _q81 = TREE_OPERAND (_q70, 1);
12084 : 0 : if ((_q80 == _q30 && ! TREE_SIDE_EFFECTS (_q80)) || (operand_equal_p (_q80, _q30, 0) && types_match (_q80, _q30)))
12085 : : {
12086 : 0 : if ((_q81 == _q31 && ! TREE_SIDE_EFFECTS (_q81)) || (operand_equal_p (_q81, _q31, 0) && types_match (_q81, _q31)))
12087 : : {
12088 : 0 : {
12089 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q20, _q30, _q31, _q21, _q70, _q71 };
12090 : 0 : tree res = generic_simplify_119 (loc, type, _p0, _p1, captures, UNORDERED_EXPR, ORDERED_EXPR);
12091 : 0 : if (res) return res;
12092 : : }
12093 : : }
12094 : : }
12095 : : break;
12096 : : }
12097 : 0 : default:;
12098 : : }
12099 : 0 : switch (TREE_CODE (_q71))
12100 : : {
12101 : 0 : case ORDERED_EXPR:
12102 : 0 : {
12103 : 0 : tree _q90 = TREE_OPERAND (_q71, 0);
12104 : 0 : tree _q91 = TREE_OPERAND (_q71, 1);
12105 : 0 : if ((_q90 == _q30 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q30, 0) && types_match (_q90, _q30)))
12106 : : {
12107 : 0 : if ((_q91 == _q31 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q31, 0) && types_match (_q91, _q31)))
12108 : : {
12109 : 0 : {
12110 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q20, _q30, _q31, _q21, _q71, _q70 };
12111 : 0 : tree res = generic_simplify_119 (loc, type, _p0, _p1, captures, UNORDERED_EXPR, ORDERED_EXPR);
12112 : 0 : if (res) return res;
12113 : : }
12114 : : }
12115 : : }
12116 : : break;
12117 : : }
12118 : : default:;
12119 : : }
12120 : : break;
12121 : : }
12122 : : default:;
12123 : : }
12124 : : break;
12125 : : }
12126 : 0 : case ORDERED_EXPR:
12127 : 0 : {
12128 : 0 : tree _q30 = TREE_OPERAND (_q20, 0);
12129 : 0 : tree _q31 = TREE_OPERAND (_q20, 1);
12130 : 0 : switch (TREE_CODE (_p1))
12131 : : {
12132 : 0 : case BIT_AND_EXPR:
12133 : 0 : {
12134 : 0 : tree _q70 = TREE_OPERAND (_p1, 0);
12135 : 0 : tree _q71 = TREE_OPERAND (_p1, 1);
12136 : 0 : switch (TREE_CODE (_q70))
12137 : : {
12138 : 0 : case UNORDERED_EXPR:
12139 : 0 : {
12140 : 0 : tree _q80 = TREE_OPERAND (_q70, 0);
12141 : 0 : tree _q81 = TREE_OPERAND (_q70, 1);
12142 : 0 : if ((_q80 == _q30 && ! TREE_SIDE_EFFECTS (_q80)) || (operand_equal_p (_q80, _q30, 0) && types_match (_q80, _q30)))
12143 : : {
12144 : 0 : if ((_q81 == _q31 && ! TREE_SIDE_EFFECTS (_q81)) || (operand_equal_p (_q81, _q31, 0) && types_match (_q81, _q31)))
12145 : : {
12146 : 0 : {
12147 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q20, _q30, _q31, _q21, _q70, _q71 };
12148 : 0 : tree res = generic_simplify_119 (loc, type, _p0, _p1, captures, ORDERED_EXPR, UNORDERED_EXPR);
12149 : 0 : if (res) return res;
12150 : : }
12151 : : }
12152 : : }
12153 : : break;
12154 : : }
12155 : 0 : default:;
12156 : : }
12157 : 0 : switch (TREE_CODE (_q71))
12158 : : {
12159 : 0 : case UNORDERED_EXPR:
12160 : 0 : {
12161 : 0 : tree _q90 = TREE_OPERAND (_q71, 0);
12162 : 0 : tree _q91 = TREE_OPERAND (_q71, 1);
12163 : 0 : if ((_q90 == _q30 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q30, 0) && types_match (_q90, _q30)))
12164 : : {
12165 : 0 : if ((_q91 == _q31 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q31, 0) && types_match (_q91, _q31)))
12166 : : {
12167 : 0 : {
12168 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q20, _q30, _q31, _q21, _q71, _q70 };
12169 : 0 : tree res = generic_simplify_119 (loc, type, _p0, _p1, captures, ORDERED_EXPR, UNORDERED_EXPR);
12170 : 0 : if (res) return res;
12171 : : }
12172 : : }
12173 : : }
12174 : : break;
12175 : : }
12176 : : default:;
12177 : : }
12178 : : break;
12179 : : }
12180 : : default:;
12181 : : }
12182 : : break;
12183 : : }
12184 : 0 : case UNLT_EXPR:
12185 : 0 : {
12186 : 0 : tree _q30 = TREE_OPERAND (_q20, 0);
12187 : 0 : tree _q31 = TREE_OPERAND (_q20, 1);
12188 : 0 : switch (TREE_CODE (_p1))
12189 : : {
12190 : 0 : case BIT_AND_EXPR:
12191 : 0 : {
12192 : 0 : tree _q70 = TREE_OPERAND (_p1, 0);
12193 : 0 : tree _q71 = TREE_OPERAND (_p1, 1);
12194 : 0 : switch (TREE_CODE (_q70))
12195 : : {
12196 : 0 : case GE_EXPR:
12197 : 0 : {
12198 : 0 : tree _q80 = TREE_OPERAND (_q70, 0);
12199 : 0 : tree _q81 = TREE_OPERAND (_q70, 1);
12200 : 0 : if ((_q80 == _q30 && ! TREE_SIDE_EFFECTS (_q80)) || (operand_equal_p (_q80, _q30, 0) && types_match (_q80, _q30)))
12201 : : {
12202 : 0 : if ((_q81 == _q31 && ! TREE_SIDE_EFFECTS (_q81)) || (operand_equal_p (_q81, _q31, 0) && types_match (_q81, _q31)))
12203 : : {
12204 : 0 : {
12205 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q20, _q30, _q31, _q21, _q70, _q71 };
12206 : 0 : tree res = generic_simplify_119 (loc, type, _p0, _p1, captures, UNLT_EXPR, GE_EXPR);
12207 : 0 : if (res) return res;
12208 : : }
12209 : : }
12210 : : }
12211 : : break;
12212 : : }
12213 : 0 : default:;
12214 : : }
12215 : 0 : switch (TREE_CODE (_q71))
12216 : : {
12217 : 0 : case GE_EXPR:
12218 : 0 : {
12219 : 0 : tree _q90 = TREE_OPERAND (_q71, 0);
12220 : 0 : tree _q91 = TREE_OPERAND (_q71, 1);
12221 : 0 : if ((_q90 == _q30 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q30, 0) && types_match (_q90, _q30)))
12222 : : {
12223 : 0 : if ((_q91 == _q31 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q31, 0) && types_match (_q91, _q31)))
12224 : : {
12225 : 0 : {
12226 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q20, _q30, _q31, _q21, _q71, _q70 };
12227 : 0 : tree res = generic_simplify_119 (loc, type, _p0, _p1, captures, UNLT_EXPR, GE_EXPR);
12228 : 0 : if (res) return res;
12229 : : }
12230 : : }
12231 : : }
12232 : : break;
12233 : : }
12234 : : default:;
12235 : : }
12236 : : break;
12237 : : }
12238 : : default:;
12239 : : }
12240 : : break;
12241 : : }
12242 : 0 : case UNLE_EXPR:
12243 : 0 : {
12244 : 0 : tree _q30 = TREE_OPERAND (_q20, 0);
12245 : 0 : tree _q31 = TREE_OPERAND (_q20, 1);
12246 : 0 : switch (TREE_CODE (_p1))
12247 : : {
12248 : 0 : case BIT_AND_EXPR:
12249 : 0 : {
12250 : 0 : tree _q70 = TREE_OPERAND (_p1, 0);
12251 : 0 : tree _q71 = TREE_OPERAND (_p1, 1);
12252 : 0 : switch (TREE_CODE (_q70))
12253 : : {
12254 : 0 : case GT_EXPR:
12255 : 0 : {
12256 : 0 : tree _q80 = TREE_OPERAND (_q70, 0);
12257 : 0 : tree _q81 = TREE_OPERAND (_q70, 1);
12258 : 0 : if ((_q80 == _q30 && ! TREE_SIDE_EFFECTS (_q80)) || (operand_equal_p (_q80, _q30, 0) && types_match (_q80, _q30)))
12259 : : {
12260 : 0 : if ((_q81 == _q31 && ! TREE_SIDE_EFFECTS (_q81)) || (operand_equal_p (_q81, _q31, 0) && types_match (_q81, _q31)))
12261 : : {
12262 : 0 : {
12263 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q20, _q30, _q31, _q21, _q70, _q71 };
12264 : 0 : tree res = generic_simplify_119 (loc, type, _p0, _p1, captures, UNLE_EXPR, GT_EXPR);
12265 : 0 : if (res) return res;
12266 : : }
12267 : : }
12268 : : }
12269 : : break;
12270 : : }
12271 : 0 : default:;
12272 : : }
12273 : 0 : switch (TREE_CODE (_q71))
12274 : : {
12275 : 0 : case GT_EXPR:
12276 : 0 : {
12277 : 0 : tree _q90 = TREE_OPERAND (_q71, 0);
12278 : 0 : tree _q91 = TREE_OPERAND (_q71, 1);
12279 : 0 : if ((_q90 == _q30 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q30, 0) && types_match (_q90, _q30)))
12280 : : {
12281 : 0 : if ((_q91 == _q31 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q31, 0) && types_match (_q91, _q31)))
12282 : : {
12283 : 0 : {
12284 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q20, _q30, _q31, _q21, _q71, _q70 };
12285 : 0 : tree res = generic_simplify_119 (loc, type, _p0, _p1, captures, UNLE_EXPR, GT_EXPR);
12286 : 0 : if (res) return res;
12287 : : }
12288 : : }
12289 : : }
12290 : : break;
12291 : : }
12292 : : default:;
12293 : : }
12294 : : break;
12295 : : }
12296 : : default:;
12297 : : }
12298 : : break;
12299 : : }
12300 : 0 : case UNGT_EXPR:
12301 : 0 : {
12302 : 0 : tree _q30 = TREE_OPERAND (_q20, 0);
12303 : 0 : tree _q31 = TREE_OPERAND (_q20, 1);
12304 : 0 : switch (TREE_CODE (_p1))
12305 : : {
12306 : 0 : case BIT_AND_EXPR:
12307 : 0 : {
12308 : 0 : tree _q70 = TREE_OPERAND (_p1, 0);
12309 : 0 : tree _q71 = TREE_OPERAND (_p1, 1);
12310 : 0 : switch (TREE_CODE (_q70))
12311 : : {
12312 : 0 : case LE_EXPR:
12313 : 0 : {
12314 : 0 : tree _q80 = TREE_OPERAND (_q70, 0);
12315 : 0 : tree _q81 = TREE_OPERAND (_q70, 1);
12316 : 0 : if ((_q80 == _q30 && ! TREE_SIDE_EFFECTS (_q80)) || (operand_equal_p (_q80, _q30, 0) && types_match (_q80, _q30)))
12317 : : {
12318 : 0 : if ((_q81 == _q31 && ! TREE_SIDE_EFFECTS (_q81)) || (operand_equal_p (_q81, _q31, 0) && types_match (_q81, _q31)))
12319 : : {
12320 : 0 : {
12321 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q20, _q30, _q31, _q21, _q70, _q71 };
12322 : 0 : tree res = generic_simplify_119 (loc, type, _p0, _p1, captures, UNGT_EXPR, LE_EXPR);
12323 : 0 : if (res) return res;
12324 : : }
12325 : : }
12326 : : }
12327 : : break;
12328 : : }
12329 : 0 : default:;
12330 : : }
12331 : 0 : switch (TREE_CODE (_q71))
12332 : : {
12333 : 0 : case LE_EXPR:
12334 : 0 : {
12335 : 0 : tree _q90 = TREE_OPERAND (_q71, 0);
12336 : 0 : tree _q91 = TREE_OPERAND (_q71, 1);
12337 : 0 : if ((_q90 == _q30 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q30, 0) && types_match (_q90, _q30)))
12338 : : {
12339 : 0 : if ((_q91 == _q31 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q31, 0) && types_match (_q91, _q31)))
12340 : : {
12341 : 0 : {
12342 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q20, _q30, _q31, _q21, _q71, _q70 };
12343 : 0 : tree res = generic_simplify_119 (loc, type, _p0, _p1, captures, UNGT_EXPR, LE_EXPR);
12344 : 0 : if (res) return res;
12345 : : }
12346 : : }
12347 : : }
12348 : : break;
12349 : : }
12350 : : default:;
12351 : : }
12352 : : break;
12353 : : }
12354 : : default:;
12355 : : }
12356 : : break;
12357 : : }
12358 : 0 : case UNGE_EXPR:
12359 : 0 : {
12360 : 0 : tree _q30 = TREE_OPERAND (_q20, 0);
12361 : 0 : tree _q31 = TREE_OPERAND (_q20, 1);
12362 : 0 : switch (TREE_CODE (_p1))
12363 : : {
12364 : 0 : case BIT_AND_EXPR:
12365 : 0 : {
12366 : 0 : tree _q70 = TREE_OPERAND (_p1, 0);
12367 : 0 : tree _q71 = TREE_OPERAND (_p1, 1);
12368 : 0 : switch (TREE_CODE (_q70))
12369 : : {
12370 : 0 : case LT_EXPR:
12371 : 0 : {
12372 : 0 : tree _q80 = TREE_OPERAND (_q70, 0);
12373 : 0 : tree _q81 = TREE_OPERAND (_q70, 1);
12374 : 0 : if ((_q80 == _q30 && ! TREE_SIDE_EFFECTS (_q80)) || (operand_equal_p (_q80, _q30, 0) && types_match (_q80, _q30)))
12375 : : {
12376 : 0 : if ((_q81 == _q31 && ! TREE_SIDE_EFFECTS (_q81)) || (operand_equal_p (_q81, _q31, 0) && types_match (_q81, _q31)))
12377 : : {
12378 : 0 : {
12379 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q20, _q30, _q31, _q21, _q70, _q71 };
12380 : 0 : tree res = generic_simplify_119 (loc, type, _p0, _p1, captures, UNGE_EXPR, LT_EXPR);
12381 : 0 : if (res) return res;
12382 : : }
12383 : : }
12384 : : }
12385 : : break;
12386 : : }
12387 : 0 : default:;
12388 : : }
12389 : 0 : switch (TREE_CODE (_q71))
12390 : : {
12391 : 0 : case LT_EXPR:
12392 : 0 : {
12393 : 0 : tree _q90 = TREE_OPERAND (_q71, 0);
12394 : 0 : tree _q91 = TREE_OPERAND (_q71, 1);
12395 : 0 : if ((_q90 == _q30 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q30, 0) && types_match (_q90, _q30)))
12396 : : {
12397 : 0 : if ((_q91 == _q31 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q31, 0) && types_match (_q91, _q31)))
12398 : : {
12399 : 0 : {
12400 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q20, _q30, _q31, _q21, _q71, _q70 };
12401 : 0 : tree res = generic_simplify_119 (loc, type, _p0, _p1, captures, UNGE_EXPR, LT_EXPR);
12402 : 0 : if (res) return res;
12403 : : }
12404 : : }
12405 : : }
12406 : : break;
12407 : : }
12408 : : default:;
12409 : : }
12410 : : break;
12411 : : }
12412 : : default:;
12413 : : }
12414 : : break;
12415 : : }
12416 : 0 : case UNEQ_EXPR:
12417 : 0 : {
12418 : 0 : tree _q30 = TREE_OPERAND (_q20, 0);
12419 : 0 : tree _q31 = TREE_OPERAND (_q20, 1);
12420 : 0 : switch (TREE_CODE (_p1))
12421 : : {
12422 : 0 : case BIT_AND_EXPR:
12423 : 0 : {
12424 : 0 : tree _q70 = TREE_OPERAND (_p1, 0);
12425 : 0 : tree _q71 = TREE_OPERAND (_p1, 1);
12426 : 0 : switch (TREE_CODE (_q70))
12427 : : {
12428 : 0 : case LTGT_EXPR:
12429 : 0 : {
12430 : 0 : tree _q80 = TREE_OPERAND (_q70, 0);
12431 : 0 : tree _q81 = TREE_OPERAND (_q70, 1);
12432 : 0 : if ((_q80 == _q30 && ! TREE_SIDE_EFFECTS (_q80)) || (operand_equal_p (_q80, _q30, 0) && types_match (_q80, _q30)))
12433 : : {
12434 : 0 : if ((_q81 == _q31 && ! TREE_SIDE_EFFECTS (_q81)) || (operand_equal_p (_q81, _q31, 0) && types_match (_q81, _q31)))
12435 : : {
12436 : 0 : {
12437 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q20, _q30, _q31, _q21, _q70, _q71 };
12438 : 0 : tree res = generic_simplify_119 (loc, type, _p0, _p1, captures, UNEQ_EXPR, LTGT_EXPR);
12439 : 0 : if (res) return res;
12440 : : }
12441 : : }
12442 : : }
12443 : : break;
12444 : : }
12445 : 0 : default:;
12446 : : }
12447 : 0 : switch (TREE_CODE (_q71))
12448 : : {
12449 : 0 : case LTGT_EXPR:
12450 : 0 : {
12451 : 0 : tree _q90 = TREE_OPERAND (_q71, 0);
12452 : 0 : tree _q91 = TREE_OPERAND (_q71, 1);
12453 : 0 : if ((_q90 == _q30 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q30, 0) && types_match (_q90, _q30)))
12454 : : {
12455 : 0 : if ((_q91 == _q31 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q31, 0) && types_match (_q91, _q31)))
12456 : : {
12457 : 0 : {
12458 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q20, _q30, _q31, _q21, _q71, _q70 };
12459 : 0 : tree res = generic_simplify_119 (loc, type, _p0, _p1, captures, UNEQ_EXPR, LTGT_EXPR);
12460 : 0 : if (res) return res;
12461 : : }
12462 : : }
12463 : : }
12464 : : break;
12465 : : }
12466 : : default:;
12467 : : }
12468 : : break;
12469 : : }
12470 : : default:;
12471 : : }
12472 : : break;
12473 : : }
12474 : 0 : case LTGT_EXPR:
12475 : 0 : {
12476 : 0 : tree _q30 = TREE_OPERAND (_q20, 0);
12477 : 0 : tree _q31 = TREE_OPERAND (_q20, 1);
12478 : 0 : switch (TREE_CODE (_p1))
12479 : : {
12480 : 0 : case BIT_AND_EXPR:
12481 : 0 : {
12482 : 0 : tree _q70 = TREE_OPERAND (_p1, 0);
12483 : 0 : tree _q71 = TREE_OPERAND (_p1, 1);
12484 : 0 : switch (TREE_CODE (_q70))
12485 : : {
12486 : 0 : case UNEQ_EXPR:
12487 : 0 : {
12488 : 0 : tree _q80 = TREE_OPERAND (_q70, 0);
12489 : 0 : tree _q81 = TREE_OPERAND (_q70, 1);
12490 : 0 : if ((_q80 == _q30 && ! TREE_SIDE_EFFECTS (_q80)) || (operand_equal_p (_q80, _q30, 0) && types_match (_q80, _q30)))
12491 : : {
12492 : 0 : if ((_q81 == _q31 && ! TREE_SIDE_EFFECTS (_q81)) || (operand_equal_p (_q81, _q31, 0) && types_match (_q81, _q31)))
12493 : : {
12494 : 0 : {
12495 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q20, _q30, _q31, _q21, _q70, _q71 };
12496 : 0 : tree res = generic_simplify_119 (loc, type, _p0, _p1, captures, LTGT_EXPR, UNEQ_EXPR);
12497 : 0 : if (res) return res;
12498 : : }
12499 : : }
12500 : : }
12501 : : break;
12502 : : }
12503 : 0 : default:;
12504 : : }
12505 : 0 : switch (TREE_CODE (_q71))
12506 : : {
12507 : 0 : case UNEQ_EXPR:
12508 : 0 : {
12509 : 0 : tree _q90 = TREE_OPERAND (_q71, 0);
12510 : 0 : tree _q91 = TREE_OPERAND (_q71, 1);
12511 : 0 : if ((_q90 == _q30 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q30, 0) && types_match (_q90, _q30)))
12512 : : {
12513 : 0 : if ((_q91 == _q31 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q31, 0) && types_match (_q91, _q31)))
12514 : : {
12515 : 0 : {
12516 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q20, _q30, _q31, _q21, _q71, _q70 };
12517 : 0 : tree res = generic_simplify_119 (loc, type, _p0, _p1, captures, LTGT_EXPR, UNEQ_EXPR);
12518 : 0 : if (res) return res;
12519 : : }
12520 : : }
12521 : : }
12522 : : break;
12523 : : }
12524 : : default:;
12525 : : }
12526 : : break;
12527 : : }
12528 : : default:;
12529 : : }
12530 : : break;
12531 : : }
12532 : 128333 : default:;
12533 : : }
12534 : 128333 : switch (TREE_CODE (_q21))
12535 : : {
12536 : 0 : case LT_EXPR:
12537 : 0 : {
12538 : 0 : tree _q40 = TREE_OPERAND (_q21, 0);
12539 : 0 : tree _q41 = TREE_OPERAND (_q21, 1);
12540 : 0 : switch (TREE_CODE (_p1))
12541 : : {
12542 : 0 : case BIT_AND_EXPR:
12543 : 0 : {
12544 : 0 : tree _q70 = TREE_OPERAND (_p1, 0);
12545 : 0 : tree _q71 = TREE_OPERAND (_p1, 1);
12546 : 0 : switch (TREE_CODE (_q70))
12547 : : {
12548 : 0 : case GE_EXPR:
12549 : 0 : {
12550 : 0 : tree _q80 = TREE_OPERAND (_q70, 0);
12551 : 0 : tree _q81 = TREE_OPERAND (_q70, 1);
12552 : 0 : if ((_q80 == _q40 && ! TREE_SIDE_EFFECTS (_q80)) || (operand_equal_p (_q80, _q40, 0) && types_match (_q80, _q40)))
12553 : : {
12554 : 0 : if ((_q81 == _q41 && ! TREE_SIDE_EFFECTS (_q81)) || (operand_equal_p (_q81, _q41, 0) && types_match (_q81, _q41)))
12555 : : {
12556 : 0 : {
12557 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q21, _q40, _q41, _q20, _q70, _q71 };
12558 : 0 : tree res = generic_simplify_119 (loc, type, _p0, _p1, captures, LT_EXPR, GE_EXPR);
12559 : 0 : if (res) return res;
12560 : : }
12561 : : }
12562 : : }
12563 : : break;
12564 : : }
12565 : 0 : default:;
12566 : : }
12567 : 0 : switch (TREE_CODE (_q71))
12568 : : {
12569 : 0 : case GE_EXPR:
12570 : 0 : {
12571 : 0 : tree _q90 = TREE_OPERAND (_q71, 0);
12572 : 0 : tree _q91 = TREE_OPERAND (_q71, 1);
12573 : 0 : if ((_q90 == _q40 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q40, 0) && types_match (_q90, _q40)))
12574 : : {
12575 : 0 : if ((_q91 == _q41 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q41, 0) && types_match (_q91, _q41)))
12576 : : {
12577 : 0 : {
12578 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q21, _q40, _q41, _q20, _q71, _q70 };
12579 : 0 : tree res = generic_simplify_119 (loc, type, _p0, _p1, captures, LT_EXPR, GE_EXPR);
12580 : 0 : if (res) return res;
12581 : : }
12582 : : }
12583 : : }
12584 : : break;
12585 : : }
12586 : : default:;
12587 : : }
12588 : : break;
12589 : : }
12590 : : default:;
12591 : : }
12592 : : break;
12593 : : }
12594 : 0 : case LE_EXPR:
12595 : 0 : {
12596 : 0 : tree _q40 = TREE_OPERAND (_q21, 0);
12597 : 0 : tree _q41 = TREE_OPERAND (_q21, 1);
12598 : 0 : switch (TREE_CODE (_p1))
12599 : : {
12600 : 0 : case BIT_AND_EXPR:
12601 : 0 : {
12602 : 0 : tree _q70 = TREE_OPERAND (_p1, 0);
12603 : 0 : tree _q71 = TREE_OPERAND (_p1, 1);
12604 : 0 : switch (TREE_CODE (_q70))
12605 : : {
12606 : 0 : case GT_EXPR:
12607 : 0 : {
12608 : 0 : tree _q80 = TREE_OPERAND (_q70, 0);
12609 : 0 : tree _q81 = TREE_OPERAND (_q70, 1);
12610 : 0 : if ((_q80 == _q40 && ! TREE_SIDE_EFFECTS (_q80)) || (operand_equal_p (_q80, _q40, 0) && types_match (_q80, _q40)))
12611 : : {
12612 : 0 : if ((_q81 == _q41 && ! TREE_SIDE_EFFECTS (_q81)) || (operand_equal_p (_q81, _q41, 0) && types_match (_q81, _q41)))
12613 : : {
12614 : 0 : {
12615 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q21, _q40, _q41, _q20, _q70, _q71 };
12616 : 0 : tree res = generic_simplify_119 (loc, type, _p0, _p1, captures, LE_EXPR, GT_EXPR);
12617 : 0 : if (res) return res;
12618 : : }
12619 : : }
12620 : : }
12621 : : break;
12622 : : }
12623 : 0 : default:;
12624 : : }
12625 : 0 : switch (TREE_CODE (_q71))
12626 : : {
12627 : 0 : case GT_EXPR:
12628 : 0 : {
12629 : 0 : tree _q90 = TREE_OPERAND (_q71, 0);
12630 : 0 : tree _q91 = TREE_OPERAND (_q71, 1);
12631 : 0 : if ((_q90 == _q40 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q40, 0) && types_match (_q90, _q40)))
12632 : : {
12633 : 0 : if ((_q91 == _q41 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q41, 0) && types_match (_q91, _q41)))
12634 : : {
12635 : 0 : {
12636 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q21, _q40, _q41, _q20, _q71, _q70 };
12637 : 0 : tree res = generic_simplify_119 (loc, type, _p0, _p1, captures, LE_EXPR, GT_EXPR);
12638 : 0 : if (res) return res;
12639 : : }
12640 : : }
12641 : : }
12642 : : break;
12643 : : }
12644 : : default:;
12645 : : }
12646 : : break;
12647 : : }
12648 : : default:;
12649 : : }
12650 : : break;
12651 : : }
12652 : 1 : case EQ_EXPR:
12653 : 1 : {
12654 : 1 : tree _q40 = TREE_OPERAND (_q21, 0);
12655 : 1 : tree _q41 = TREE_OPERAND (_q21, 1);
12656 : 1 : switch (TREE_CODE (_p1))
12657 : : {
12658 : 1 : case BIT_AND_EXPR:
12659 : 1 : {
12660 : 1 : tree _q70 = TREE_OPERAND (_p1, 0);
12661 : 1 : tree _q71 = TREE_OPERAND (_p1, 1);
12662 : 1 : switch (TREE_CODE (_q70))
12663 : : {
12664 : 0 : case NE_EXPR:
12665 : 0 : {
12666 : 0 : tree _q80 = TREE_OPERAND (_q70, 0);
12667 : 0 : tree _q81 = TREE_OPERAND (_q70, 1);
12668 : 0 : if ((_q80 == _q40 && ! TREE_SIDE_EFFECTS (_q80)) || (operand_equal_p (_q80, _q40, 0) && types_match (_q80, _q40)))
12669 : : {
12670 : 0 : if ((_q81 == _q41 && ! TREE_SIDE_EFFECTS (_q81)) || (operand_equal_p (_q81, _q41, 0) && types_match (_q81, _q41)))
12671 : : {
12672 : 0 : {
12673 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q21, _q40, _q41, _q20, _q70, _q71 };
12674 : 0 : tree res = generic_simplify_119 (loc, type, _p0, _p1, captures, EQ_EXPR, NE_EXPR);
12675 : 0 : if (res) return res;
12676 : : }
12677 : : }
12678 : : }
12679 : : break;
12680 : : }
12681 : 1 : default:;
12682 : : }
12683 : 1 : switch (TREE_CODE (_q71))
12684 : : {
12685 : 0 : case NE_EXPR:
12686 : 0 : {
12687 : 0 : tree _q90 = TREE_OPERAND (_q71, 0);
12688 : 0 : tree _q91 = TREE_OPERAND (_q71, 1);
12689 : 0 : if ((_q90 == _q40 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q40, 0) && types_match (_q90, _q40)))
12690 : : {
12691 : 0 : if ((_q91 == _q41 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q41, 0) && types_match (_q91, _q41)))
12692 : : {
12693 : 0 : {
12694 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q21, _q40, _q41, _q20, _q71, _q70 };
12695 : 0 : tree res = generic_simplify_119 (loc, type, _p0, _p1, captures, EQ_EXPR, NE_EXPR);
12696 : 0 : if (res) return res;
12697 : : }
12698 : : }
12699 : : }
12700 : : break;
12701 : : }
12702 : : default:;
12703 : : }
12704 : : break;
12705 : : }
12706 : : default:;
12707 : : }
12708 : : break;
12709 : : }
12710 : 0 : case NE_EXPR:
12711 : 0 : {
12712 : 0 : tree _q40 = TREE_OPERAND (_q21, 0);
12713 : 0 : tree _q41 = TREE_OPERAND (_q21, 1);
12714 : 0 : switch (TREE_CODE (_p1))
12715 : : {
12716 : 0 : case BIT_AND_EXPR:
12717 : 0 : {
12718 : 0 : tree _q70 = TREE_OPERAND (_p1, 0);
12719 : 0 : tree _q71 = TREE_OPERAND (_p1, 1);
12720 : 0 : switch (TREE_CODE (_q70))
12721 : : {
12722 : 0 : case EQ_EXPR:
12723 : 0 : {
12724 : 0 : tree _q80 = TREE_OPERAND (_q70, 0);
12725 : 0 : tree _q81 = TREE_OPERAND (_q70, 1);
12726 : 0 : if ((_q80 == _q40 && ! TREE_SIDE_EFFECTS (_q80)) || (operand_equal_p (_q80, _q40, 0) && types_match (_q80, _q40)))
12727 : : {
12728 : 0 : if ((_q81 == _q41 && ! TREE_SIDE_EFFECTS (_q81)) || (operand_equal_p (_q81, _q41, 0) && types_match (_q81, _q41)))
12729 : : {
12730 : 0 : {
12731 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q21, _q40, _q41, _q20, _q70, _q71 };
12732 : 0 : tree res = generic_simplify_119 (loc, type, _p0, _p1, captures, NE_EXPR, EQ_EXPR);
12733 : 0 : if (res) return res;
12734 : : }
12735 : : }
12736 : : }
12737 : : break;
12738 : : }
12739 : 0 : default:;
12740 : : }
12741 : 0 : switch (TREE_CODE (_q71))
12742 : : {
12743 : 0 : case EQ_EXPR:
12744 : 0 : {
12745 : 0 : tree _q90 = TREE_OPERAND (_q71, 0);
12746 : 0 : tree _q91 = TREE_OPERAND (_q71, 1);
12747 : 0 : if ((_q90 == _q40 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q40, 0) && types_match (_q90, _q40)))
12748 : : {
12749 : 0 : if ((_q91 == _q41 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q41, 0) && types_match (_q91, _q41)))
12750 : : {
12751 : 0 : {
12752 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q21, _q40, _q41, _q20, _q71, _q70 };
12753 : 0 : tree res = generic_simplify_119 (loc, type, _p0, _p1, captures, NE_EXPR, EQ_EXPR);
12754 : 0 : if (res) return res;
12755 : : }
12756 : : }
12757 : : }
12758 : : break;
12759 : : }
12760 : : default:;
12761 : : }
12762 : : break;
12763 : : }
12764 : : default:;
12765 : : }
12766 : : break;
12767 : : }
12768 : 0 : case GE_EXPR:
12769 : 0 : {
12770 : 0 : tree _q40 = TREE_OPERAND (_q21, 0);
12771 : 0 : tree _q41 = TREE_OPERAND (_q21, 1);
12772 : 0 : switch (TREE_CODE (_p1))
12773 : : {
12774 : 0 : case BIT_AND_EXPR:
12775 : 0 : {
12776 : 0 : tree _q70 = TREE_OPERAND (_p1, 0);
12777 : 0 : tree _q71 = TREE_OPERAND (_p1, 1);
12778 : 0 : switch (TREE_CODE (_q70))
12779 : : {
12780 : 0 : case LT_EXPR:
12781 : 0 : {
12782 : 0 : tree _q80 = TREE_OPERAND (_q70, 0);
12783 : 0 : tree _q81 = TREE_OPERAND (_q70, 1);
12784 : 0 : if ((_q80 == _q40 && ! TREE_SIDE_EFFECTS (_q80)) || (operand_equal_p (_q80, _q40, 0) && types_match (_q80, _q40)))
12785 : : {
12786 : 0 : if ((_q81 == _q41 && ! TREE_SIDE_EFFECTS (_q81)) || (operand_equal_p (_q81, _q41, 0) && types_match (_q81, _q41)))
12787 : : {
12788 : 0 : {
12789 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q21, _q40, _q41, _q20, _q70, _q71 };
12790 : 0 : tree res = generic_simplify_119 (loc, type, _p0, _p1, captures, GE_EXPR, LT_EXPR);
12791 : 0 : if (res) return res;
12792 : : }
12793 : : }
12794 : : }
12795 : : break;
12796 : : }
12797 : 0 : default:;
12798 : : }
12799 : 0 : switch (TREE_CODE (_q71))
12800 : : {
12801 : 0 : case LT_EXPR:
12802 : 0 : {
12803 : 0 : tree _q90 = TREE_OPERAND (_q71, 0);
12804 : 0 : tree _q91 = TREE_OPERAND (_q71, 1);
12805 : 0 : if ((_q90 == _q40 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q40, 0) && types_match (_q90, _q40)))
12806 : : {
12807 : 0 : if ((_q91 == _q41 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q41, 0) && types_match (_q91, _q41)))
12808 : : {
12809 : 0 : {
12810 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q21, _q40, _q41, _q20, _q71, _q70 };
12811 : 0 : tree res = generic_simplify_119 (loc, type, _p0, _p1, captures, GE_EXPR, LT_EXPR);
12812 : 0 : if (res) return res;
12813 : : }
12814 : : }
12815 : : }
12816 : : break;
12817 : : }
12818 : : default:;
12819 : : }
12820 : : break;
12821 : : }
12822 : : default:;
12823 : : }
12824 : : break;
12825 : : }
12826 : 0 : case GT_EXPR:
12827 : 0 : {
12828 : 0 : tree _q40 = TREE_OPERAND (_q21, 0);
12829 : 0 : tree _q41 = TREE_OPERAND (_q21, 1);
12830 : 0 : switch (TREE_CODE (_p1))
12831 : : {
12832 : 0 : case BIT_AND_EXPR:
12833 : 0 : {
12834 : 0 : tree _q70 = TREE_OPERAND (_p1, 0);
12835 : 0 : tree _q71 = TREE_OPERAND (_p1, 1);
12836 : 0 : switch (TREE_CODE (_q70))
12837 : : {
12838 : 0 : case LE_EXPR:
12839 : 0 : {
12840 : 0 : tree _q80 = TREE_OPERAND (_q70, 0);
12841 : 0 : tree _q81 = TREE_OPERAND (_q70, 1);
12842 : 0 : if ((_q80 == _q40 && ! TREE_SIDE_EFFECTS (_q80)) || (operand_equal_p (_q80, _q40, 0) && types_match (_q80, _q40)))
12843 : : {
12844 : 0 : if ((_q81 == _q41 && ! TREE_SIDE_EFFECTS (_q81)) || (operand_equal_p (_q81, _q41, 0) && types_match (_q81, _q41)))
12845 : : {
12846 : 0 : {
12847 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q21, _q40, _q41, _q20, _q70, _q71 };
12848 : 0 : tree res = generic_simplify_119 (loc, type, _p0, _p1, captures, GT_EXPR, LE_EXPR);
12849 : 0 : if (res) return res;
12850 : : }
12851 : : }
12852 : : }
12853 : : break;
12854 : : }
12855 : 0 : default:;
12856 : : }
12857 : 0 : switch (TREE_CODE (_q71))
12858 : : {
12859 : 0 : case LE_EXPR:
12860 : 0 : {
12861 : 0 : tree _q90 = TREE_OPERAND (_q71, 0);
12862 : 0 : tree _q91 = TREE_OPERAND (_q71, 1);
12863 : 0 : if ((_q90 == _q40 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q40, 0) && types_match (_q90, _q40)))
12864 : : {
12865 : 0 : if ((_q91 == _q41 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q41, 0) && types_match (_q91, _q41)))
12866 : : {
12867 : 0 : {
12868 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q21, _q40, _q41, _q20, _q71, _q70 };
12869 : 0 : tree res = generic_simplify_119 (loc, type, _p0, _p1, captures, GT_EXPR, LE_EXPR);
12870 : 0 : if (res) return res;
12871 : : }
12872 : : }
12873 : : }
12874 : : break;
12875 : : }
12876 : : default:;
12877 : : }
12878 : : break;
12879 : : }
12880 : : default:;
12881 : : }
12882 : : break;
12883 : : }
12884 : 0 : case UNORDERED_EXPR:
12885 : 0 : {
12886 : 0 : tree _q40 = TREE_OPERAND (_q21, 0);
12887 : 0 : tree _q41 = TREE_OPERAND (_q21, 1);
12888 : 0 : switch (TREE_CODE (_p1))
12889 : : {
12890 : 0 : case BIT_AND_EXPR:
12891 : 0 : {
12892 : 0 : tree _q70 = TREE_OPERAND (_p1, 0);
12893 : 0 : tree _q71 = TREE_OPERAND (_p1, 1);
12894 : 0 : switch (TREE_CODE (_q70))
12895 : : {
12896 : 0 : case ORDERED_EXPR:
12897 : 0 : {
12898 : 0 : tree _q80 = TREE_OPERAND (_q70, 0);
12899 : 0 : tree _q81 = TREE_OPERAND (_q70, 1);
12900 : 0 : if ((_q80 == _q40 && ! TREE_SIDE_EFFECTS (_q80)) || (operand_equal_p (_q80, _q40, 0) && types_match (_q80, _q40)))
12901 : : {
12902 : 0 : if ((_q81 == _q41 && ! TREE_SIDE_EFFECTS (_q81)) || (operand_equal_p (_q81, _q41, 0) && types_match (_q81, _q41)))
12903 : : {
12904 : 0 : {
12905 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q21, _q40, _q41, _q20, _q70, _q71 };
12906 : 0 : tree res = generic_simplify_119 (loc, type, _p0, _p1, captures, UNORDERED_EXPR, ORDERED_EXPR);
12907 : 0 : if (res) return res;
12908 : : }
12909 : : }
12910 : : }
12911 : : break;
12912 : : }
12913 : 0 : default:;
12914 : : }
12915 : 0 : switch (TREE_CODE (_q71))
12916 : : {
12917 : 0 : case ORDERED_EXPR:
12918 : 0 : {
12919 : 0 : tree _q90 = TREE_OPERAND (_q71, 0);
12920 : 0 : tree _q91 = TREE_OPERAND (_q71, 1);
12921 : 0 : if ((_q90 == _q40 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q40, 0) && types_match (_q90, _q40)))
12922 : : {
12923 : 0 : if ((_q91 == _q41 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q41, 0) && types_match (_q91, _q41)))
12924 : : {
12925 : 0 : {
12926 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q21, _q40, _q41, _q20, _q71, _q70 };
12927 : 0 : tree res = generic_simplify_119 (loc, type, _p0, _p1, captures, UNORDERED_EXPR, ORDERED_EXPR);
12928 : 0 : if (res) return res;
12929 : : }
12930 : : }
12931 : : }
12932 : : break;
12933 : : }
12934 : : default:;
12935 : : }
12936 : : break;
12937 : : }
12938 : : default:;
12939 : : }
12940 : : break;
12941 : : }
12942 : 0 : case ORDERED_EXPR:
12943 : 0 : {
12944 : 0 : tree _q40 = TREE_OPERAND (_q21, 0);
12945 : 0 : tree _q41 = TREE_OPERAND (_q21, 1);
12946 : 0 : switch (TREE_CODE (_p1))
12947 : : {
12948 : 0 : case BIT_AND_EXPR:
12949 : 0 : {
12950 : 0 : tree _q70 = TREE_OPERAND (_p1, 0);
12951 : 0 : tree _q71 = TREE_OPERAND (_p1, 1);
12952 : 0 : switch (TREE_CODE (_q70))
12953 : : {
12954 : 0 : case UNORDERED_EXPR:
12955 : 0 : {
12956 : 0 : tree _q80 = TREE_OPERAND (_q70, 0);
12957 : 0 : tree _q81 = TREE_OPERAND (_q70, 1);
12958 : 0 : if ((_q80 == _q40 && ! TREE_SIDE_EFFECTS (_q80)) || (operand_equal_p (_q80, _q40, 0) && types_match (_q80, _q40)))
12959 : : {
12960 : 0 : if ((_q81 == _q41 && ! TREE_SIDE_EFFECTS (_q81)) || (operand_equal_p (_q81, _q41, 0) && types_match (_q81, _q41)))
12961 : : {
12962 : 0 : {
12963 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q21, _q40, _q41, _q20, _q70, _q71 };
12964 : 0 : tree res = generic_simplify_119 (loc, type, _p0, _p1, captures, ORDERED_EXPR, UNORDERED_EXPR);
12965 : 0 : if (res) return res;
12966 : : }
12967 : : }
12968 : : }
12969 : : break;
12970 : : }
12971 : 0 : default:;
12972 : : }
12973 : 0 : switch (TREE_CODE (_q71))
12974 : : {
12975 : 0 : case UNORDERED_EXPR:
12976 : 0 : {
12977 : 0 : tree _q90 = TREE_OPERAND (_q71, 0);
12978 : 0 : tree _q91 = TREE_OPERAND (_q71, 1);
12979 : 0 : if ((_q90 == _q40 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q40, 0) && types_match (_q90, _q40)))
12980 : : {
12981 : 0 : if ((_q91 == _q41 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q41, 0) && types_match (_q91, _q41)))
12982 : : {
12983 : 0 : {
12984 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q21, _q40, _q41, _q20, _q71, _q70 };
12985 : 0 : tree res = generic_simplify_119 (loc, type, _p0, _p1, captures, ORDERED_EXPR, UNORDERED_EXPR);
12986 : 0 : if (res) return res;
12987 : : }
12988 : : }
12989 : : }
12990 : : break;
12991 : : }
12992 : : default:;
12993 : : }
12994 : : break;
12995 : : }
12996 : : default:;
12997 : : }
12998 : : break;
12999 : : }
13000 : 0 : case UNLT_EXPR:
13001 : 0 : {
13002 : 0 : tree _q40 = TREE_OPERAND (_q21, 0);
13003 : 0 : tree _q41 = TREE_OPERAND (_q21, 1);
13004 : 0 : switch (TREE_CODE (_p1))
13005 : : {
13006 : 0 : case BIT_AND_EXPR:
13007 : 0 : {
13008 : 0 : tree _q70 = TREE_OPERAND (_p1, 0);
13009 : 0 : tree _q71 = TREE_OPERAND (_p1, 1);
13010 : 0 : switch (TREE_CODE (_q70))
13011 : : {
13012 : 0 : case GE_EXPR:
13013 : 0 : {
13014 : 0 : tree _q80 = TREE_OPERAND (_q70, 0);
13015 : 0 : tree _q81 = TREE_OPERAND (_q70, 1);
13016 : 0 : if ((_q80 == _q40 && ! TREE_SIDE_EFFECTS (_q80)) || (operand_equal_p (_q80, _q40, 0) && types_match (_q80, _q40)))
13017 : : {
13018 : 0 : if ((_q81 == _q41 && ! TREE_SIDE_EFFECTS (_q81)) || (operand_equal_p (_q81, _q41, 0) && types_match (_q81, _q41)))
13019 : : {
13020 : 0 : {
13021 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q21, _q40, _q41, _q20, _q70, _q71 };
13022 : 0 : tree res = generic_simplify_119 (loc, type, _p0, _p1, captures, UNLT_EXPR, GE_EXPR);
13023 : 0 : if (res) return res;
13024 : : }
13025 : : }
13026 : : }
13027 : : break;
13028 : : }
13029 : 0 : default:;
13030 : : }
13031 : 0 : switch (TREE_CODE (_q71))
13032 : : {
13033 : 0 : case GE_EXPR:
13034 : 0 : {
13035 : 0 : tree _q90 = TREE_OPERAND (_q71, 0);
13036 : 0 : tree _q91 = TREE_OPERAND (_q71, 1);
13037 : 0 : if ((_q90 == _q40 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q40, 0) && types_match (_q90, _q40)))
13038 : : {
13039 : 0 : if ((_q91 == _q41 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q41, 0) && types_match (_q91, _q41)))
13040 : : {
13041 : 0 : {
13042 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q21, _q40, _q41, _q20, _q71, _q70 };
13043 : 0 : tree res = generic_simplify_119 (loc, type, _p0, _p1, captures, UNLT_EXPR, GE_EXPR);
13044 : 0 : if (res) return res;
13045 : : }
13046 : : }
13047 : : }
13048 : : break;
13049 : : }
13050 : : default:;
13051 : : }
13052 : : break;
13053 : : }
13054 : : default:;
13055 : : }
13056 : : break;
13057 : : }
13058 : 0 : case UNLE_EXPR:
13059 : 0 : {
13060 : 0 : tree _q40 = TREE_OPERAND (_q21, 0);
13061 : 0 : tree _q41 = TREE_OPERAND (_q21, 1);
13062 : 0 : switch (TREE_CODE (_p1))
13063 : : {
13064 : 0 : case BIT_AND_EXPR:
13065 : 0 : {
13066 : 0 : tree _q70 = TREE_OPERAND (_p1, 0);
13067 : 0 : tree _q71 = TREE_OPERAND (_p1, 1);
13068 : 0 : switch (TREE_CODE (_q70))
13069 : : {
13070 : 0 : case GT_EXPR:
13071 : 0 : {
13072 : 0 : tree _q80 = TREE_OPERAND (_q70, 0);
13073 : 0 : tree _q81 = TREE_OPERAND (_q70, 1);
13074 : 0 : if ((_q80 == _q40 && ! TREE_SIDE_EFFECTS (_q80)) || (operand_equal_p (_q80, _q40, 0) && types_match (_q80, _q40)))
13075 : : {
13076 : 0 : if ((_q81 == _q41 && ! TREE_SIDE_EFFECTS (_q81)) || (operand_equal_p (_q81, _q41, 0) && types_match (_q81, _q41)))
13077 : : {
13078 : 0 : {
13079 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q21, _q40, _q41, _q20, _q70, _q71 };
13080 : 0 : tree res = generic_simplify_119 (loc, type, _p0, _p1, captures, UNLE_EXPR, GT_EXPR);
13081 : 0 : if (res) return res;
13082 : : }
13083 : : }
13084 : : }
13085 : : break;
13086 : : }
13087 : 0 : default:;
13088 : : }
13089 : 0 : switch (TREE_CODE (_q71))
13090 : : {
13091 : 0 : case GT_EXPR:
13092 : 0 : {
13093 : 0 : tree _q90 = TREE_OPERAND (_q71, 0);
13094 : 0 : tree _q91 = TREE_OPERAND (_q71, 1);
13095 : 0 : if ((_q90 == _q40 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q40, 0) && types_match (_q90, _q40)))
13096 : : {
13097 : 0 : if ((_q91 == _q41 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q41, 0) && types_match (_q91, _q41)))
13098 : : {
13099 : 0 : {
13100 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q21, _q40, _q41, _q20, _q71, _q70 };
13101 : 0 : tree res = generic_simplify_119 (loc, type, _p0, _p1, captures, UNLE_EXPR, GT_EXPR);
13102 : 0 : if (res) return res;
13103 : : }
13104 : : }
13105 : : }
13106 : : break;
13107 : : }
13108 : : default:;
13109 : : }
13110 : : break;
13111 : : }
13112 : : default:;
13113 : : }
13114 : : break;
13115 : : }
13116 : 0 : case UNGT_EXPR:
13117 : 0 : {
13118 : 0 : tree _q40 = TREE_OPERAND (_q21, 0);
13119 : 0 : tree _q41 = TREE_OPERAND (_q21, 1);
13120 : 0 : switch (TREE_CODE (_p1))
13121 : : {
13122 : 0 : case BIT_AND_EXPR:
13123 : 0 : {
13124 : 0 : tree _q70 = TREE_OPERAND (_p1, 0);
13125 : 0 : tree _q71 = TREE_OPERAND (_p1, 1);
13126 : 0 : switch (TREE_CODE (_q70))
13127 : : {
13128 : 0 : case LE_EXPR:
13129 : 0 : {
13130 : 0 : tree _q80 = TREE_OPERAND (_q70, 0);
13131 : 0 : tree _q81 = TREE_OPERAND (_q70, 1);
13132 : 0 : if ((_q80 == _q40 && ! TREE_SIDE_EFFECTS (_q80)) || (operand_equal_p (_q80, _q40, 0) && types_match (_q80, _q40)))
13133 : : {
13134 : 0 : if ((_q81 == _q41 && ! TREE_SIDE_EFFECTS (_q81)) || (operand_equal_p (_q81, _q41, 0) && types_match (_q81, _q41)))
13135 : : {
13136 : 0 : {
13137 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q21, _q40, _q41, _q20, _q70, _q71 };
13138 : 0 : tree res = generic_simplify_119 (loc, type, _p0, _p1, captures, UNGT_EXPR, LE_EXPR);
13139 : 0 : if (res) return res;
13140 : : }
13141 : : }
13142 : : }
13143 : : break;
13144 : : }
13145 : 0 : default:;
13146 : : }
13147 : 0 : switch (TREE_CODE (_q71))
13148 : : {
13149 : 0 : case LE_EXPR:
13150 : 0 : {
13151 : 0 : tree _q90 = TREE_OPERAND (_q71, 0);
13152 : 0 : tree _q91 = TREE_OPERAND (_q71, 1);
13153 : 0 : if ((_q90 == _q40 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q40, 0) && types_match (_q90, _q40)))
13154 : : {
13155 : 0 : if ((_q91 == _q41 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q41, 0) && types_match (_q91, _q41)))
13156 : : {
13157 : 0 : {
13158 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q21, _q40, _q41, _q20, _q71, _q70 };
13159 : 0 : tree res = generic_simplify_119 (loc, type, _p0, _p1, captures, UNGT_EXPR, LE_EXPR);
13160 : 0 : if (res) return res;
13161 : : }
13162 : : }
13163 : : }
13164 : : break;
13165 : : }
13166 : : default:;
13167 : : }
13168 : : break;
13169 : : }
13170 : : default:;
13171 : : }
13172 : : break;
13173 : : }
13174 : 0 : case UNGE_EXPR:
13175 : 0 : {
13176 : 0 : tree _q40 = TREE_OPERAND (_q21, 0);
13177 : 0 : tree _q41 = TREE_OPERAND (_q21, 1);
13178 : 0 : switch (TREE_CODE (_p1))
13179 : : {
13180 : 0 : case BIT_AND_EXPR:
13181 : 0 : {
13182 : 0 : tree _q70 = TREE_OPERAND (_p1, 0);
13183 : 0 : tree _q71 = TREE_OPERAND (_p1, 1);
13184 : 0 : switch (TREE_CODE (_q70))
13185 : : {
13186 : 0 : case LT_EXPR:
13187 : 0 : {
13188 : 0 : tree _q80 = TREE_OPERAND (_q70, 0);
13189 : 0 : tree _q81 = TREE_OPERAND (_q70, 1);
13190 : 0 : if ((_q80 == _q40 && ! TREE_SIDE_EFFECTS (_q80)) || (operand_equal_p (_q80, _q40, 0) && types_match (_q80, _q40)))
13191 : : {
13192 : 0 : if ((_q81 == _q41 && ! TREE_SIDE_EFFECTS (_q81)) || (operand_equal_p (_q81, _q41, 0) && types_match (_q81, _q41)))
13193 : : {
13194 : 0 : {
13195 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q21, _q40, _q41, _q20, _q70, _q71 };
13196 : 0 : tree res = generic_simplify_119 (loc, type, _p0, _p1, captures, UNGE_EXPR, LT_EXPR);
13197 : 0 : if (res) return res;
13198 : : }
13199 : : }
13200 : : }
13201 : : break;
13202 : : }
13203 : 0 : default:;
13204 : : }
13205 : 0 : switch (TREE_CODE (_q71))
13206 : : {
13207 : 0 : case LT_EXPR:
13208 : 0 : {
13209 : 0 : tree _q90 = TREE_OPERAND (_q71, 0);
13210 : 0 : tree _q91 = TREE_OPERAND (_q71, 1);
13211 : 0 : if ((_q90 == _q40 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q40, 0) && types_match (_q90, _q40)))
13212 : : {
13213 : 0 : if ((_q91 == _q41 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q41, 0) && types_match (_q91, _q41)))
13214 : : {
13215 : 0 : {
13216 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q21, _q40, _q41, _q20, _q71, _q70 };
13217 : 0 : tree res = generic_simplify_119 (loc, type, _p0, _p1, captures, UNGE_EXPR, LT_EXPR);
13218 : 0 : if (res) return res;
13219 : : }
13220 : : }
13221 : : }
13222 : : break;
13223 : : }
13224 : : default:;
13225 : : }
13226 : : break;
13227 : : }
13228 : : default:;
13229 : : }
13230 : : break;
13231 : : }
13232 : 0 : case UNEQ_EXPR:
13233 : 0 : {
13234 : 0 : tree _q40 = TREE_OPERAND (_q21, 0);
13235 : 0 : tree _q41 = TREE_OPERAND (_q21, 1);
13236 : 0 : switch (TREE_CODE (_p1))
13237 : : {
13238 : 0 : case BIT_AND_EXPR:
13239 : 0 : {
13240 : 0 : tree _q70 = TREE_OPERAND (_p1, 0);
13241 : 0 : tree _q71 = TREE_OPERAND (_p1, 1);
13242 : 0 : switch (TREE_CODE (_q70))
13243 : : {
13244 : 0 : case LTGT_EXPR:
13245 : 0 : {
13246 : 0 : tree _q80 = TREE_OPERAND (_q70, 0);
13247 : 0 : tree _q81 = TREE_OPERAND (_q70, 1);
13248 : 0 : if ((_q80 == _q40 && ! TREE_SIDE_EFFECTS (_q80)) || (operand_equal_p (_q80, _q40, 0) && types_match (_q80, _q40)))
13249 : : {
13250 : 0 : if ((_q81 == _q41 && ! TREE_SIDE_EFFECTS (_q81)) || (operand_equal_p (_q81, _q41, 0) && types_match (_q81, _q41)))
13251 : : {
13252 : 0 : {
13253 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q21, _q40, _q41, _q20, _q70, _q71 };
13254 : 0 : tree res = generic_simplify_119 (loc, type, _p0, _p1, captures, UNEQ_EXPR, LTGT_EXPR);
13255 : 0 : if (res) return res;
13256 : : }
13257 : : }
13258 : : }
13259 : : break;
13260 : : }
13261 : 0 : default:;
13262 : : }
13263 : 0 : switch (TREE_CODE (_q71))
13264 : : {
13265 : 0 : case LTGT_EXPR:
13266 : 0 : {
13267 : 0 : tree _q90 = TREE_OPERAND (_q71, 0);
13268 : 0 : tree _q91 = TREE_OPERAND (_q71, 1);
13269 : 0 : if ((_q90 == _q40 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q40, 0) && types_match (_q90, _q40)))
13270 : : {
13271 : 0 : if ((_q91 == _q41 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q41, 0) && types_match (_q91, _q41)))
13272 : : {
13273 : 0 : {
13274 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q21, _q40, _q41, _q20, _q71, _q70 };
13275 : 0 : tree res = generic_simplify_119 (loc, type, _p0, _p1, captures, UNEQ_EXPR, LTGT_EXPR);
13276 : 0 : if (res) return res;
13277 : : }
13278 : : }
13279 : : }
13280 : : break;
13281 : : }
13282 : : default:;
13283 : : }
13284 : : break;
13285 : : }
13286 : : default:;
13287 : : }
13288 : : break;
13289 : : }
13290 : 0 : case LTGT_EXPR:
13291 : 0 : {
13292 : 0 : tree _q40 = TREE_OPERAND (_q21, 0);
13293 : 0 : tree _q41 = TREE_OPERAND (_q21, 1);
13294 : 0 : switch (TREE_CODE (_p1))
13295 : : {
13296 : 0 : case BIT_AND_EXPR:
13297 : 0 : {
13298 : 0 : tree _q70 = TREE_OPERAND (_p1, 0);
13299 : 0 : tree _q71 = TREE_OPERAND (_p1, 1);
13300 : 0 : switch (TREE_CODE (_q70))
13301 : : {
13302 : 0 : case UNEQ_EXPR:
13303 : 0 : {
13304 : 0 : tree _q80 = TREE_OPERAND (_q70, 0);
13305 : 0 : tree _q81 = TREE_OPERAND (_q70, 1);
13306 : 0 : if ((_q80 == _q40 && ! TREE_SIDE_EFFECTS (_q80)) || (operand_equal_p (_q80, _q40, 0) && types_match (_q80, _q40)))
13307 : : {
13308 : 0 : if ((_q81 == _q41 && ! TREE_SIDE_EFFECTS (_q81)) || (operand_equal_p (_q81, _q41, 0) && types_match (_q81, _q41)))
13309 : : {
13310 : 0 : {
13311 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q21, _q40, _q41, _q20, _q70, _q71 };
13312 : 0 : tree res = generic_simplify_119 (loc, type, _p0, _p1, captures, LTGT_EXPR, UNEQ_EXPR);
13313 : 0 : if (res) return res;
13314 : : }
13315 : : }
13316 : : }
13317 : : break;
13318 : : }
13319 : 0 : default:;
13320 : : }
13321 : 0 : switch (TREE_CODE (_q71))
13322 : : {
13323 : 0 : case UNEQ_EXPR:
13324 : 0 : {
13325 : 0 : tree _q90 = TREE_OPERAND (_q71, 0);
13326 : 0 : tree _q91 = TREE_OPERAND (_q71, 1);
13327 : 0 : if ((_q90 == _q40 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q40, 0) && types_match (_q90, _q40)))
13328 : : {
13329 : 0 : if ((_q91 == _q41 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q41, 0) && types_match (_q91, _q41)))
13330 : : {
13331 : 0 : {
13332 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q21, _q40, _q41, _q20, _q71, _q70 };
13333 : 0 : tree res = generic_simplify_119 (loc, type, _p0, _p1, captures, LTGT_EXPR, UNEQ_EXPR);
13334 : 0 : if (res) return res;
13335 : : }
13336 : : }
13337 : : }
13338 : : break;
13339 : : }
13340 : : default:;
13341 : : }
13342 : : break;
13343 : : }
13344 : : default:;
13345 : : }
13346 : : break;
13347 : : }
13348 : 128333 : default:;
13349 : : }
13350 : 128333 : switch (TREE_CODE (_q20))
13351 : : {
13352 : 0 : case VEC_COND_EXPR:
13353 : 0 : {
13354 : 0 : tree _q30 = TREE_OPERAND (_q20, 0);
13355 : 0 : tree _q31 = TREE_OPERAND (_q20, 1);
13356 : 0 : tree _q32 = TREE_OPERAND (_q20, 2);
13357 : 0 : switch (TREE_CODE (_q30))
13358 : : {
13359 : 0 : case LT_EXPR:
13360 : 0 : {
13361 : 0 : tree _q40 = TREE_OPERAND (_q30, 0);
13362 : 0 : tree _q41 = TREE_OPERAND (_q30, 1);
13363 : 0 : switch (TREE_CODE (_p1))
13364 : : {
13365 : 0 : case BIT_AND_EXPR:
13366 : 0 : {
13367 : 0 : tree _q100 = TREE_OPERAND (_p1, 0);
13368 : 0 : tree _q101 = TREE_OPERAND (_p1, 1);
13369 : 0 : switch (TREE_CODE (_q100))
13370 : : {
13371 : 0 : case VEC_COND_EXPR:
13372 : 0 : {
13373 : 0 : tree _q110 = TREE_OPERAND (_q100, 0);
13374 : 0 : tree _q111 = TREE_OPERAND (_q100, 1);
13375 : 0 : tree _q112 = TREE_OPERAND (_q100, 2);
13376 : 0 : switch (TREE_CODE (_q110))
13377 : : {
13378 : 0 : case GE_EXPR:
13379 : 0 : {
13380 : 0 : tree _q120 = TREE_OPERAND (_q110, 0);
13381 : 0 : tree _q121 = TREE_OPERAND (_q110, 1);
13382 : 0 : if ((_q120 == _q40 && ! TREE_SIDE_EFFECTS (_q120)) || (operand_equal_p (_q120, _q40, 0) && types_match (_q120, _q40)))
13383 : : {
13384 : 0 : if ((_q121 == _q41 && ! TREE_SIDE_EFFECTS (_q121)) || (operand_equal_p (_q121, _q41, 0) && types_match (_q121, _q41)))
13385 : : {
13386 : 0 : if ((_q111 == _q31 && ! TREE_SIDE_EFFECTS (_q111)) || (operand_equal_p (_q111, _q31, 0) && types_match (_q111, _q31)))
13387 : : {
13388 : 0 : if ((_q112 == _q32 && ! TREE_SIDE_EFFECTS (_q112)) || (operand_equal_p (_q112, _q32, 0) && types_match (_q112, _q32)))
13389 : : {
13390 : 0 : {
13391 : 0 : tree captures[10] ATTRIBUTE_UNUSED = { _q20, _q30, _q40, _q41, _q31, _q32, _q21, _q100, _q110, _q101 };
13392 : 0 : tree res = generic_simplify_120 (loc, type, _p0, _p1, captures, LT_EXPR, GE_EXPR);
13393 : 0 : if (res) return res;
13394 : : }
13395 : : }
13396 : : }
13397 : : }
13398 : : }
13399 : : break;
13400 : : }
13401 : : default:;
13402 : : }
13403 : : break;
13404 : : }
13405 : 0 : default:;
13406 : : }
13407 : 0 : switch (TREE_CODE (_q101))
13408 : : {
13409 : 0 : case VEC_COND_EXPR:
13410 : 0 : {
13411 : 0 : tree _q120 = TREE_OPERAND (_q101, 0);
13412 : 0 : tree _q121 = TREE_OPERAND (_q101, 1);
13413 : 0 : tree _q122 = TREE_OPERAND (_q101, 2);
13414 : 0 : switch (TREE_CODE (_q120))
13415 : : {
13416 : 0 : case GE_EXPR:
13417 : 0 : {
13418 : 0 : tree _q130 = TREE_OPERAND (_q120, 0);
13419 : 0 : tree _q131 = TREE_OPERAND (_q120, 1);
13420 : 0 : if ((_q130 == _q40 && ! TREE_SIDE_EFFECTS (_q130)) || (operand_equal_p (_q130, _q40, 0) && types_match (_q130, _q40)))
13421 : : {
13422 : 0 : if ((_q131 == _q41 && ! TREE_SIDE_EFFECTS (_q131)) || (operand_equal_p (_q131, _q41, 0) && types_match (_q131, _q41)))
13423 : : {
13424 : 0 : if ((_q121 == _q31 && ! TREE_SIDE_EFFECTS (_q121)) || (operand_equal_p (_q121, _q31, 0) && types_match (_q121, _q31)))
13425 : : {
13426 : 0 : if ((_q122 == _q32 && ! TREE_SIDE_EFFECTS (_q122)) || (operand_equal_p (_q122, _q32, 0) && types_match (_q122, _q32)))
13427 : : {
13428 : 0 : {
13429 : 0 : tree captures[10] ATTRIBUTE_UNUSED = { _q20, _q30, _q40, _q41, _q31, _q32, _q21, _q101, _q120, _q100 };
13430 : 0 : tree res = generic_simplify_120 (loc, type, _p0, _p1, captures, LT_EXPR, GE_EXPR);
13431 : 0 : if (res) return res;
13432 : : }
13433 : : }
13434 : : }
13435 : : }
13436 : : }
13437 : : break;
13438 : : }
13439 : : default:;
13440 : : }
13441 : : break;
13442 : : }
13443 : : default:;
13444 : : }
13445 : : break;
13446 : : }
13447 : : default:;
13448 : : }
13449 : : break;
13450 : : }
13451 : 0 : case LE_EXPR:
13452 : 0 : {
13453 : 0 : tree _q40 = TREE_OPERAND (_q30, 0);
13454 : 0 : tree _q41 = TREE_OPERAND (_q30, 1);
13455 : 0 : switch (TREE_CODE (_p1))
13456 : : {
13457 : 0 : case BIT_AND_EXPR:
13458 : 0 : {
13459 : 0 : tree _q100 = TREE_OPERAND (_p1, 0);
13460 : 0 : tree _q101 = TREE_OPERAND (_p1, 1);
13461 : 0 : switch (TREE_CODE (_q100))
13462 : : {
13463 : 0 : case VEC_COND_EXPR:
13464 : 0 : {
13465 : 0 : tree _q110 = TREE_OPERAND (_q100, 0);
13466 : 0 : tree _q111 = TREE_OPERAND (_q100, 1);
13467 : 0 : tree _q112 = TREE_OPERAND (_q100, 2);
13468 : 0 : switch (TREE_CODE (_q110))
13469 : : {
13470 : 0 : case GT_EXPR:
13471 : 0 : {
13472 : 0 : tree _q120 = TREE_OPERAND (_q110, 0);
13473 : 0 : tree _q121 = TREE_OPERAND (_q110, 1);
13474 : 0 : if ((_q120 == _q40 && ! TREE_SIDE_EFFECTS (_q120)) || (operand_equal_p (_q120, _q40, 0) && types_match (_q120, _q40)))
13475 : : {
13476 : 0 : if ((_q121 == _q41 && ! TREE_SIDE_EFFECTS (_q121)) || (operand_equal_p (_q121, _q41, 0) && types_match (_q121, _q41)))
13477 : : {
13478 : 0 : if ((_q111 == _q31 && ! TREE_SIDE_EFFECTS (_q111)) || (operand_equal_p (_q111, _q31, 0) && types_match (_q111, _q31)))
13479 : : {
13480 : 0 : if ((_q112 == _q32 && ! TREE_SIDE_EFFECTS (_q112)) || (operand_equal_p (_q112, _q32, 0) && types_match (_q112, _q32)))
13481 : : {
13482 : 0 : {
13483 : 0 : tree captures[10] ATTRIBUTE_UNUSED = { _q20, _q30, _q40, _q41, _q31, _q32, _q21, _q100, _q110, _q101 };
13484 : 0 : tree res = generic_simplify_120 (loc, type, _p0, _p1, captures, LE_EXPR, GT_EXPR);
13485 : 0 : if (res) return res;
13486 : : }
13487 : : }
13488 : : }
13489 : : }
13490 : : }
13491 : : break;
13492 : : }
13493 : : default:;
13494 : : }
13495 : : break;
13496 : : }
13497 : 0 : default:;
13498 : : }
13499 : 0 : switch (TREE_CODE (_q101))
13500 : : {
13501 : 0 : case VEC_COND_EXPR:
13502 : 0 : {
13503 : 0 : tree _q120 = TREE_OPERAND (_q101, 0);
13504 : 0 : tree _q121 = TREE_OPERAND (_q101, 1);
13505 : 0 : tree _q122 = TREE_OPERAND (_q101, 2);
13506 : 0 : switch (TREE_CODE (_q120))
13507 : : {
13508 : 0 : case GT_EXPR:
13509 : 0 : {
13510 : 0 : tree _q130 = TREE_OPERAND (_q120, 0);
13511 : 0 : tree _q131 = TREE_OPERAND (_q120, 1);
13512 : 0 : if ((_q130 == _q40 && ! TREE_SIDE_EFFECTS (_q130)) || (operand_equal_p (_q130, _q40, 0) && types_match (_q130, _q40)))
13513 : : {
13514 : 0 : if ((_q131 == _q41 && ! TREE_SIDE_EFFECTS (_q131)) || (operand_equal_p (_q131, _q41, 0) && types_match (_q131, _q41)))
13515 : : {
13516 : 0 : if ((_q121 == _q31 && ! TREE_SIDE_EFFECTS (_q121)) || (operand_equal_p (_q121, _q31, 0) && types_match (_q121, _q31)))
13517 : : {
13518 : 0 : if ((_q122 == _q32 && ! TREE_SIDE_EFFECTS (_q122)) || (operand_equal_p (_q122, _q32, 0) && types_match (_q122, _q32)))
13519 : : {
13520 : 0 : {
13521 : 0 : tree captures[10] ATTRIBUTE_UNUSED = { _q20, _q30, _q40, _q41, _q31, _q32, _q21, _q101, _q120, _q100 };
13522 : 0 : tree res = generic_simplify_120 (loc, type, _p0, _p1, captures, LE_EXPR, GT_EXPR);
13523 : 0 : if (res) return res;
13524 : : }
13525 : : }
13526 : : }
13527 : : }
13528 : : }
13529 : : break;
13530 : : }
13531 : : default:;
13532 : : }
13533 : : break;
13534 : : }
13535 : : default:;
13536 : : }
13537 : : break;
13538 : : }
13539 : : default:;
13540 : : }
13541 : : break;
13542 : : }
13543 : 0 : case EQ_EXPR:
13544 : 0 : {
13545 : 0 : tree _q40 = TREE_OPERAND (_q30, 0);
13546 : 0 : tree _q41 = TREE_OPERAND (_q30, 1);
13547 : 0 : switch (TREE_CODE (_p1))
13548 : : {
13549 : 0 : case BIT_AND_EXPR:
13550 : 0 : {
13551 : 0 : tree _q100 = TREE_OPERAND (_p1, 0);
13552 : 0 : tree _q101 = TREE_OPERAND (_p1, 1);
13553 : 0 : switch (TREE_CODE (_q100))
13554 : : {
13555 : 0 : case VEC_COND_EXPR:
13556 : 0 : {
13557 : 0 : tree _q110 = TREE_OPERAND (_q100, 0);
13558 : 0 : tree _q111 = TREE_OPERAND (_q100, 1);
13559 : 0 : tree _q112 = TREE_OPERAND (_q100, 2);
13560 : 0 : switch (TREE_CODE (_q110))
13561 : : {
13562 : 0 : case NE_EXPR:
13563 : 0 : {
13564 : 0 : tree _q120 = TREE_OPERAND (_q110, 0);
13565 : 0 : tree _q121 = TREE_OPERAND (_q110, 1);
13566 : 0 : if ((_q120 == _q40 && ! TREE_SIDE_EFFECTS (_q120)) || (operand_equal_p (_q120, _q40, 0) && types_match (_q120, _q40)))
13567 : : {
13568 : 0 : if ((_q121 == _q41 && ! TREE_SIDE_EFFECTS (_q121)) || (operand_equal_p (_q121, _q41, 0) && types_match (_q121, _q41)))
13569 : : {
13570 : 0 : if ((_q111 == _q31 && ! TREE_SIDE_EFFECTS (_q111)) || (operand_equal_p (_q111, _q31, 0) && types_match (_q111, _q31)))
13571 : : {
13572 : 0 : if ((_q112 == _q32 && ! TREE_SIDE_EFFECTS (_q112)) || (operand_equal_p (_q112, _q32, 0) && types_match (_q112, _q32)))
13573 : : {
13574 : 0 : {
13575 : 0 : tree captures[10] ATTRIBUTE_UNUSED = { _q20, _q30, _q40, _q41, _q31, _q32, _q21, _q100, _q110, _q101 };
13576 : 0 : tree res = generic_simplify_120 (loc, type, _p0, _p1, captures, EQ_EXPR, NE_EXPR);
13577 : 0 : if (res) return res;
13578 : : }
13579 : : }
13580 : : }
13581 : : }
13582 : : }
13583 : : break;
13584 : : }
13585 : : default:;
13586 : : }
13587 : : break;
13588 : : }
13589 : 0 : default:;
13590 : : }
13591 : 0 : switch (TREE_CODE (_q101))
13592 : : {
13593 : 0 : case VEC_COND_EXPR:
13594 : 0 : {
13595 : 0 : tree _q120 = TREE_OPERAND (_q101, 0);
13596 : 0 : tree _q121 = TREE_OPERAND (_q101, 1);
13597 : 0 : tree _q122 = TREE_OPERAND (_q101, 2);
13598 : 0 : switch (TREE_CODE (_q120))
13599 : : {
13600 : 0 : case NE_EXPR:
13601 : 0 : {
13602 : 0 : tree _q130 = TREE_OPERAND (_q120, 0);
13603 : 0 : tree _q131 = TREE_OPERAND (_q120, 1);
13604 : 0 : if ((_q130 == _q40 && ! TREE_SIDE_EFFECTS (_q130)) || (operand_equal_p (_q130, _q40, 0) && types_match (_q130, _q40)))
13605 : : {
13606 : 0 : if ((_q131 == _q41 && ! TREE_SIDE_EFFECTS (_q131)) || (operand_equal_p (_q131, _q41, 0) && types_match (_q131, _q41)))
13607 : : {
13608 : 0 : if ((_q121 == _q31 && ! TREE_SIDE_EFFECTS (_q121)) || (operand_equal_p (_q121, _q31, 0) && types_match (_q121, _q31)))
13609 : : {
13610 : 0 : if ((_q122 == _q32 && ! TREE_SIDE_EFFECTS (_q122)) || (operand_equal_p (_q122, _q32, 0) && types_match (_q122, _q32)))
13611 : : {
13612 : 0 : {
13613 : 0 : tree captures[10] ATTRIBUTE_UNUSED = { _q20, _q30, _q40, _q41, _q31, _q32, _q21, _q101, _q120, _q100 };
13614 : 0 : tree res = generic_simplify_120 (loc, type, _p0, _p1, captures, EQ_EXPR, NE_EXPR);
13615 : 0 : if (res) return res;
13616 : : }
13617 : : }
13618 : : }
13619 : : }
13620 : : }
13621 : : break;
13622 : : }
13623 : : default:;
13624 : : }
13625 : : break;
13626 : : }
13627 : : default:;
13628 : : }
13629 : : break;
13630 : : }
13631 : : default:;
13632 : : }
13633 : : break;
13634 : : }
13635 : 0 : case NE_EXPR:
13636 : 0 : {
13637 : 0 : tree _q40 = TREE_OPERAND (_q30, 0);
13638 : 0 : tree _q41 = TREE_OPERAND (_q30, 1);
13639 : 0 : switch (TREE_CODE (_p1))
13640 : : {
13641 : 0 : case BIT_AND_EXPR:
13642 : 0 : {
13643 : 0 : tree _q100 = TREE_OPERAND (_p1, 0);
13644 : 0 : tree _q101 = TREE_OPERAND (_p1, 1);
13645 : 0 : switch (TREE_CODE (_q100))
13646 : : {
13647 : 0 : case VEC_COND_EXPR:
13648 : 0 : {
13649 : 0 : tree _q110 = TREE_OPERAND (_q100, 0);
13650 : 0 : tree _q111 = TREE_OPERAND (_q100, 1);
13651 : 0 : tree _q112 = TREE_OPERAND (_q100, 2);
13652 : 0 : switch (TREE_CODE (_q110))
13653 : : {
13654 : 0 : case EQ_EXPR:
13655 : 0 : {
13656 : 0 : tree _q120 = TREE_OPERAND (_q110, 0);
13657 : 0 : tree _q121 = TREE_OPERAND (_q110, 1);
13658 : 0 : if ((_q120 == _q40 && ! TREE_SIDE_EFFECTS (_q120)) || (operand_equal_p (_q120, _q40, 0) && types_match (_q120, _q40)))
13659 : : {
13660 : 0 : if ((_q121 == _q41 && ! TREE_SIDE_EFFECTS (_q121)) || (operand_equal_p (_q121, _q41, 0) && types_match (_q121, _q41)))
13661 : : {
13662 : 0 : if ((_q111 == _q31 && ! TREE_SIDE_EFFECTS (_q111)) || (operand_equal_p (_q111, _q31, 0) && types_match (_q111, _q31)))
13663 : : {
13664 : 0 : if ((_q112 == _q32 && ! TREE_SIDE_EFFECTS (_q112)) || (operand_equal_p (_q112, _q32, 0) && types_match (_q112, _q32)))
13665 : : {
13666 : 0 : {
13667 : 0 : tree captures[10] ATTRIBUTE_UNUSED = { _q20, _q30, _q40, _q41, _q31, _q32, _q21, _q100, _q110, _q101 };
13668 : 0 : tree res = generic_simplify_120 (loc, type, _p0, _p1, captures, NE_EXPR, EQ_EXPR);
13669 : 0 : if (res) return res;
13670 : : }
13671 : : }
13672 : : }
13673 : : }
13674 : : }
13675 : : break;
13676 : : }
13677 : : default:;
13678 : : }
13679 : : break;
13680 : : }
13681 : 0 : default:;
13682 : : }
13683 : 0 : switch (TREE_CODE (_q101))
13684 : : {
13685 : 0 : case VEC_COND_EXPR:
13686 : 0 : {
13687 : 0 : tree _q120 = TREE_OPERAND (_q101, 0);
13688 : 0 : tree _q121 = TREE_OPERAND (_q101, 1);
13689 : 0 : tree _q122 = TREE_OPERAND (_q101, 2);
13690 : 0 : switch (TREE_CODE (_q120))
13691 : : {
13692 : 0 : case EQ_EXPR:
13693 : 0 : {
13694 : 0 : tree _q130 = TREE_OPERAND (_q120, 0);
13695 : 0 : tree _q131 = TREE_OPERAND (_q120, 1);
13696 : 0 : if ((_q130 == _q40 && ! TREE_SIDE_EFFECTS (_q130)) || (operand_equal_p (_q130, _q40, 0) && types_match (_q130, _q40)))
13697 : : {
13698 : 0 : if ((_q131 == _q41 && ! TREE_SIDE_EFFECTS (_q131)) || (operand_equal_p (_q131, _q41, 0) && types_match (_q131, _q41)))
13699 : : {
13700 : 0 : if ((_q121 == _q31 && ! TREE_SIDE_EFFECTS (_q121)) || (operand_equal_p (_q121, _q31, 0) && types_match (_q121, _q31)))
13701 : : {
13702 : 0 : if ((_q122 == _q32 && ! TREE_SIDE_EFFECTS (_q122)) || (operand_equal_p (_q122, _q32, 0) && types_match (_q122, _q32)))
13703 : : {
13704 : 0 : {
13705 : 0 : tree captures[10] ATTRIBUTE_UNUSED = { _q20, _q30, _q40, _q41, _q31, _q32, _q21, _q101, _q120, _q100 };
13706 : 0 : tree res = generic_simplify_120 (loc, type, _p0, _p1, captures, NE_EXPR, EQ_EXPR);
13707 : 0 : if (res) return res;
13708 : : }
13709 : : }
13710 : : }
13711 : : }
13712 : : }
13713 : : break;
13714 : : }
13715 : : default:;
13716 : : }
13717 : : break;
13718 : : }
13719 : : default:;
13720 : : }
13721 : : break;
13722 : : }
13723 : : default:;
13724 : : }
13725 : : break;
13726 : : }
13727 : 0 : case GE_EXPR:
13728 : 0 : {
13729 : 0 : tree _q40 = TREE_OPERAND (_q30, 0);
13730 : 0 : tree _q41 = TREE_OPERAND (_q30, 1);
13731 : 0 : switch (TREE_CODE (_p1))
13732 : : {
13733 : 0 : case BIT_AND_EXPR:
13734 : 0 : {
13735 : 0 : tree _q100 = TREE_OPERAND (_p1, 0);
13736 : 0 : tree _q101 = TREE_OPERAND (_p1, 1);
13737 : 0 : switch (TREE_CODE (_q100))
13738 : : {
13739 : 0 : case VEC_COND_EXPR:
13740 : 0 : {
13741 : 0 : tree _q110 = TREE_OPERAND (_q100, 0);
13742 : 0 : tree _q111 = TREE_OPERAND (_q100, 1);
13743 : 0 : tree _q112 = TREE_OPERAND (_q100, 2);
13744 : 0 : switch (TREE_CODE (_q110))
13745 : : {
13746 : 0 : case LT_EXPR:
13747 : 0 : {
13748 : 0 : tree _q120 = TREE_OPERAND (_q110, 0);
13749 : 0 : tree _q121 = TREE_OPERAND (_q110, 1);
13750 : 0 : if ((_q120 == _q40 && ! TREE_SIDE_EFFECTS (_q120)) || (operand_equal_p (_q120, _q40, 0) && types_match (_q120, _q40)))
13751 : : {
13752 : 0 : if ((_q121 == _q41 && ! TREE_SIDE_EFFECTS (_q121)) || (operand_equal_p (_q121, _q41, 0) && types_match (_q121, _q41)))
13753 : : {
13754 : 0 : if ((_q111 == _q31 && ! TREE_SIDE_EFFECTS (_q111)) || (operand_equal_p (_q111, _q31, 0) && types_match (_q111, _q31)))
13755 : : {
13756 : 0 : if ((_q112 == _q32 && ! TREE_SIDE_EFFECTS (_q112)) || (operand_equal_p (_q112, _q32, 0) && types_match (_q112, _q32)))
13757 : : {
13758 : 0 : {
13759 : 0 : tree captures[10] ATTRIBUTE_UNUSED = { _q20, _q30, _q40, _q41, _q31, _q32, _q21, _q100, _q110, _q101 };
13760 : 0 : tree res = generic_simplify_120 (loc, type, _p0, _p1, captures, GE_EXPR, LT_EXPR);
13761 : 0 : if (res) return res;
13762 : : }
13763 : : }
13764 : : }
13765 : : }
13766 : : }
13767 : : break;
13768 : : }
13769 : : default:;
13770 : : }
13771 : : break;
13772 : : }
13773 : 0 : default:;
13774 : : }
13775 : 0 : switch (TREE_CODE (_q101))
13776 : : {
13777 : 0 : case VEC_COND_EXPR:
13778 : 0 : {
13779 : 0 : tree _q120 = TREE_OPERAND (_q101, 0);
13780 : 0 : tree _q121 = TREE_OPERAND (_q101, 1);
13781 : 0 : tree _q122 = TREE_OPERAND (_q101, 2);
13782 : 0 : switch (TREE_CODE (_q120))
13783 : : {
13784 : 0 : case LT_EXPR:
13785 : 0 : {
13786 : 0 : tree _q130 = TREE_OPERAND (_q120, 0);
13787 : 0 : tree _q131 = TREE_OPERAND (_q120, 1);
13788 : 0 : if ((_q130 == _q40 && ! TREE_SIDE_EFFECTS (_q130)) || (operand_equal_p (_q130, _q40, 0) && types_match (_q130, _q40)))
13789 : : {
13790 : 0 : if ((_q131 == _q41 && ! TREE_SIDE_EFFECTS (_q131)) || (operand_equal_p (_q131, _q41, 0) && types_match (_q131, _q41)))
13791 : : {
13792 : 0 : if ((_q121 == _q31 && ! TREE_SIDE_EFFECTS (_q121)) || (operand_equal_p (_q121, _q31, 0) && types_match (_q121, _q31)))
13793 : : {
13794 : 0 : if ((_q122 == _q32 && ! TREE_SIDE_EFFECTS (_q122)) || (operand_equal_p (_q122, _q32, 0) && types_match (_q122, _q32)))
13795 : : {
13796 : 0 : {
13797 : 0 : tree captures[10] ATTRIBUTE_UNUSED = { _q20, _q30, _q40, _q41, _q31, _q32, _q21, _q101, _q120, _q100 };
13798 : 0 : tree res = generic_simplify_120 (loc, type, _p0, _p1, captures, GE_EXPR, LT_EXPR);
13799 : 0 : if (res) return res;
13800 : : }
13801 : : }
13802 : : }
13803 : : }
13804 : : }
13805 : : break;
13806 : : }
13807 : : default:;
13808 : : }
13809 : : break;
13810 : : }
13811 : : default:;
13812 : : }
13813 : : break;
13814 : : }
13815 : : default:;
13816 : : }
13817 : : break;
13818 : : }
13819 : 0 : case GT_EXPR:
13820 : 0 : {
13821 : 0 : tree _q40 = TREE_OPERAND (_q30, 0);
13822 : 0 : tree _q41 = TREE_OPERAND (_q30, 1);
13823 : 0 : switch (TREE_CODE (_p1))
13824 : : {
13825 : 0 : case BIT_AND_EXPR:
13826 : 0 : {
13827 : 0 : tree _q100 = TREE_OPERAND (_p1, 0);
13828 : 0 : tree _q101 = TREE_OPERAND (_p1, 1);
13829 : 0 : switch (TREE_CODE (_q100))
13830 : : {
13831 : 0 : case VEC_COND_EXPR:
13832 : 0 : {
13833 : 0 : tree _q110 = TREE_OPERAND (_q100, 0);
13834 : 0 : tree _q111 = TREE_OPERAND (_q100, 1);
13835 : 0 : tree _q112 = TREE_OPERAND (_q100, 2);
13836 : 0 : switch (TREE_CODE (_q110))
13837 : : {
13838 : 0 : case LE_EXPR:
13839 : 0 : {
13840 : 0 : tree _q120 = TREE_OPERAND (_q110, 0);
13841 : 0 : tree _q121 = TREE_OPERAND (_q110, 1);
13842 : 0 : if ((_q120 == _q40 && ! TREE_SIDE_EFFECTS (_q120)) || (operand_equal_p (_q120, _q40, 0) && types_match (_q120, _q40)))
13843 : : {
13844 : 0 : if ((_q121 == _q41 && ! TREE_SIDE_EFFECTS (_q121)) || (operand_equal_p (_q121, _q41, 0) && types_match (_q121, _q41)))
13845 : : {
13846 : 0 : if ((_q111 == _q31 && ! TREE_SIDE_EFFECTS (_q111)) || (operand_equal_p (_q111, _q31, 0) && types_match (_q111, _q31)))
13847 : : {
13848 : 0 : if ((_q112 == _q32 && ! TREE_SIDE_EFFECTS (_q112)) || (operand_equal_p (_q112, _q32, 0) && types_match (_q112, _q32)))
13849 : : {
13850 : 0 : {
13851 : 0 : tree captures[10] ATTRIBUTE_UNUSED = { _q20, _q30, _q40, _q41, _q31, _q32, _q21, _q100, _q110, _q101 };
13852 : 0 : tree res = generic_simplify_120 (loc, type, _p0, _p1, captures, GT_EXPR, LE_EXPR);
13853 : 0 : if (res) return res;
13854 : : }
13855 : : }
13856 : : }
13857 : : }
13858 : : }
13859 : : break;
13860 : : }
13861 : : default:;
13862 : : }
13863 : : break;
13864 : : }
13865 : 0 : default:;
13866 : : }
13867 : 0 : switch (TREE_CODE (_q101))
13868 : : {
13869 : 0 : case VEC_COND_EXPR:
13870 : 0 : {
13871 : 0 : tree _q120 = TREE_OPERAND (_q101, 0);
13872 : 0 : tree _q121 = TREE_OPERAND (_q101, 1);
13873 : 0 : tree _q122 = TREE_OPERAND (_q101, 2);
13874 : 0 : switch (TREE_CODE (_q120))
13875 : : {
13876 : 0 : case LE_EXPR:
13877 : 0 : {
13878 : 0 : tree _q130 = TREE_OPERAND (_q120, 0);
13879 : 0 : tree _q131 = TREE_OPERAND (_q120, 1);
13880 : 0 : if ((_q130 == _q40 && ! TREE_SIDE_EFFECTS (_q130)) || (operand_equal_p (_q130, _q40, 0) && types_match (_q130, _q40)))
13881 : : {
13882 : 0 : if ((_q131 == _q41 && ! TREE_SIDE_EFFECTS (_q131)) || (operand_equal_p (_q131, _q41, 0) && types_match (_q131, _q41)))
13883 : : {
13884 : 0 : if ((_q121 == _q31 && ! TREE_SIDE_EFFECTS (_q121)) || (operand_equal_p (_q121, _q31, 0) && types_match (_q121, _q31)))
13885 : : {
13886 : 0 : if ((_q122 == _q32 && ! TREE_SIDE_EFFECTS (_q122)) || (operand_equal_p (_q122, _q32, 0) && types_match (_q122, _q32)))
13887 : : {
13888 : 0 : {
13889 : 0 : tree captures[10] ATTRIBUTE_UNUSED = { _q20, _q30, _q40, _q41, _q31, _q32, _q21, _q101, _q120, _q100 };
13890 : 0 : tree res = generic_simplify_120 (loc, type, _p0, _p1, captures, GT_EXPR, LE_EXPR);
13891 : 0 : if (res) return res;
13892 : : }
13893 : : }
13894 : : }
13895 : : }
13896 : : }
13897 : : break;
13898 : : }
13899 : : default:;
13900 : : }
13901 : : break;
13902 : : }
13903 : : default:;
13904 : : }
13905 : : break;
13906 : : }
13907 : : default:;
13908 : : }
13909 : : break;
13910 : : }
13911 : 0 : case UNORDERED_EXPR:
13912 : 0 : {
13913 : 0 : tree _q40 = TREE_OPERAND (_q30, 0);
13914 : 0 : tree _q41 = TREE_OPERAND (_q30, 1);
13915 : 0 : switch (TREE_CODE (_p1))
13916 : : {
13917 : 0 : case BIT_AND_EXPR:
13918 : 0 : {
13919 : 0 : tree _q100 = TREE_OPERAND (_p1, 0);
13920 : 0 : tree _q101 = TREE_OPERAND (_p1, 1);
13921 : 0 : switch (TREE_CODE (_q100))
13922 : : {
13923 : 0 : case VEC_COND_EXPR:
13924 : 0 : {
13925 : 0 : tree _q110 = TREE_OPERAND (_q100, 0);
13926 : 0 : tree _q111 = TREE_OPERAND (_q100, 1);
13927 : 0 : tree _q112 = TREE_OPERAND (_q100, 2);
13928 : 0 : switch (TREE_CODE (_q110))
13929 : : {
13930 : 0 : case ORDERED_EXPR:
13931 : 0 : {
13932 : 0 : tree _q120 = TREE_OPERAND (_q110, 0);
13933 : 0 : tree _q121 = TREE_OPERAND (_q110, 1);
13934 : 0 : if ((_q120 == _q40 && ! TREE_SIDE_EFFECTS (_q120)) || (operand_equal_p (_q120, _q40, 0) && types_match (_q120, _q40)))
13935 : : {
13936 : 0 : if ((_q121 == _q41 && ! TREE_SIDE_EFFECTS (_q121)) || (operand_equal_p (_q121, _q41, 0) && types_match (_q121, _q41)))
13937 : : {
13938 : 0 : if ((_q111 == _q31 && ! TREE_SIDE_EFFECTS (_q111)) || (operand_equal_p (_q111, _q31, 0) && types_match (_q111, _q31)))
13939 : : {
13940 : 0 : if ((_q112 == _q32 && ! TREE_SIDE_EFFECTS (_q112)) || (operand_equal_p (_q112, _q32, 0) && types_match (_q112, _q32)))
13941 : : {
13942 : 0 : {
13943 : 0 : tree captures[10] ATTRIBUTE_UNUSED = { _q20, _q30, _q40, _q41, _q31, _q32, _q21, _q100, _q110, _q101 };
13944 : 0 : tree res = generic_simplify_120 (loc, type, _p0, _p1, captures, UNORDERED_EXPR, ORDERED_EXPR);
13945 : 0 : if (res) return res;
13946 : : }
13947 : : }
13948 : : }
13949 : : }
13950 : : }
13951 : : break;
13952 : : }
13953 : : default:;
13954 : : }
13955 : : break;
13956 : : }
13957 : 0 : default:;
13958 : : }
13959 : 0 : switch (TREE_CODE (_q101))
13960 : : {
13961 : 0 : case VEC_COND_EXPR:
13962 : 0 : {
13963 : 0 : tree _q120 = TREE_OPERAND (_q101, 0);
13964 : 0 : tree _q121 = TREE_OPERAND (_q101, 1);
13965 : 0 : tree _q122 = TREE_OPERAND (_q101, 2);
13966 : 0 : switch (TREE_CODE (_q120))
13967 : : {
13968 : 0 : case ORDERED_EXPR:
13969 : 0 : {
13970 : 0 : tree _q130 = TREE_OPERAND (_q120, 0);
13971 : 0 : tree _q131 = TREE_OPERAND (_q120, 1);
13972 : 0 : if ((_q130 == _q40 && ! TREE_SIDE_EFFECTS (_q130)) || (operand_equal_p (_q130, _q40, 0) && types_match (_q130, _q40)))
13973 : : {
13974 : 0 : if ((_q131 == _q41 && ! TREE_SIDE_EFFECTS (_q131)) || (operand_equal_p (_q131, _q41, 0) && types_match (_q131, _q41)))
13975 : : {
13976 : 0 : if ((_q121 == _q31 && ! TREE_SIDE_EFFECTS (_q121)) || (operand_equal_p (_q121, _q31, 0) && types_match (_q121, _q31)))
13977 : : {
13978 : 0 : if ((_q122 == _q32 && ! TREE_SIDE_EFFECTS (_q122)) || (operand_equal_p (_q122, _q32, 0) && types_match (_q122, _q32)))
13979 : : {
13980 : 0 : {
13981 : 0 : tree captures[10] ATTRIBUTE_UNUSED = { _q20, _q30, _q40, _q41, _q31, _q32, _q21, _q101, _q120, _q100 };
13982 : 0 : tree res = generic_simplify_120 (loc, type, _p0, _p1, captures, UNORDERED_EXPR, ORDERED_EXPR);
13983 : 0 : if (res) return res;
13984 : : }
13985 : : }
13986 : : }
13987 : : }
13988 : : }
13989 : : break;
13990 : : }
13991 : : default:;
13992 : : }
13993 : : break;
13994 : : }
13995 : : default:;
13996 : : }
13997 : : break;
13998 : : }
13999 : : default:;
14000 : : }
14001 : : break;
14002 : : }
14003 : 0 : case ORDERED_EXPR:
14004 : 0 : {
14005 : 0 : tree _q40 = TREE_OPERAND (_q30, 0);
14006 : 0 : tree _q41 = TREE_OPERAND (_q30, 1);
14007 : 0 : switch (TREE_CODE (_p1))
14008 : : {
14009 : 0 : case BIT_AND_EXPR:
14010 : 0 : {
14011 : 0 : tree _q100 = TREE_OPERAND (_p1, 0);
14012 : 0 : tree _q101 = TREE_OPERAND (_p1, 1);
14013 : 0 : switch (TREE_CODE (_q100))
14014 : : {
14015 : 0 : case VEC_COND_EXPR:
14016 : 0 : {
14017 : 0 : tree _q110 = TREE_OPERAND (_q100, 0);
14018 : 0 : tree _q111 = TREE_OPERAND (_q100, 1);
14019 : 0 : tree _q112 = TREE_OPERAND (_q100, 2);
14020 : 0 : switch (TREE_CODE (_q110))
14021 : : {
14022 : 0 : case UNORDERED_EXPR:
14023 : 0 : {
14024 : 0 : tree _q120 = TREE_OPERAND (_q110, 0);
14025 : 0 : tree _q121 = TREE_OPERAND (_q110, 1);
14026 : 0 : if ((_q120 == _q40 && ! TREE_SIDE_EFFECTS (_q120)) || (operand_equal_p (_q120, _q40, 0) && types_match (_q120, _q40)))
14027 : : {
14028 : 0 : if ((_q121 == _q41 && ! TREE_SIDE_EFFECTS (_q121)) || (operand_equal_p (_q121, _q41, 0) && types_match (_q121, _q41)))
14029 : : {
14030 : 0 : if ((_q111 == _q31 && ! TREE_SIDE_EFFECTS (_q111)) || (operand_equal_p (_q111, _q31, 0) && types_match (_q111, _q31)))
14031 : : {
14032 : 0 : if ((_q112 == _q32 && ! TREE_SIDE_EFFECTS (_q112)) || (operand_equal_p (_q112, _q32, 0) && types_match (_q112, _q32)))
14033 : : {
14034 : 0 : {
14035 : 0 : tree captures[10] ATTRIBUTE_UNUSED = { _q20, _q30, _q40, _q41, _q31, _q32, _q21, _q100, _q110, _q101 };
14036 : 0 : tree res = generic_simplify_120 (loc, type, _p0, _p1, captures, ORDERED_EXPR, UNORDERED_EXPR);
14037 : 0 : if (res) return res;
14038 : : }
14039 : : }
14040 : : }
14041 : : }
14042 : : }
14043 : : break;
14044 : : }
14045 : : default:;
14046 : : }
14047 : : break;
14048 : : }
14049 : 0 : default:;
14050 : : }
14051 : 0 : switch (TREE_CODE (_q101))
14052 : : {
14053 : 0 : case VEC_COND_EXPR:
14054 : 0 : {
14055 : 0 : tree _q120 = TREE_OPERAND (_q101, 0);
14056 : 0 : tree _q121 = TREE_OPERAND (_q101, 1);
14057 : 0 : tree _q122 = TREE_OPERAND (_q101, 2);
14058 : 0 : switch (TREE_CODE (_q120))
14059 : : {
14060 : 0 : case UNORDERED_EXPR:
14061 : 0 : {
14062 : 0 : tree _q130 = TREE_OPERAND (_q120, 0);
14063 : 0 : tree _q131 = TREE_OPERAND (_q120, 1);
14064 : 0 : if ((_q130 == _q40 && ! TREE_SIDE_EFFECTS (_q130)) || (operand_equal_p (_q130, _q40, 0) && types_match (_q130, _q40)))
14065 : : {
14066 : 0 : if ((_q131 == _q41 && ! TREE_SIDE_EFFECTS (_q131)) || (operand_equal_p (_q131, _q41, 0) && types_match (_q131, _q41)))
14067 : : {
14068 : 0 : if ((_q121 == _q31 && ! TREE_SIDE_EFFECTS (_q121)) || (operand_equal_p (_q121, _q31, 0) && types_match (_q121, _q31)))
14069 : : {
14070 : 0 : if ((_q122 == _q32 && ! TREE_SIDE_EFFECTS (_q122)) || (operand_equal_p (_q122, _q32, 0) && types_match (_q122, _q32)))
14071 : : {
14072 : 0 : {
14073 : 0 : tree captures[10] ATTRIBUTE_UNUSED = { _q20, _q30, _q40, _q41, _q31, _q32, _q21, _q101, _q120, _q100 };
14074 : 0 : tree res = generic_simplify_120 (loc, type, _p0, _p1, captures, ORDERED_EXPR, UNORDERED_EXPR);
14075 : 0 : if (res) return res;
14076 : : }
14077 : : }
14078 : : }
14079 : : }
14080 : : }
14081 : : break;
14082 : : }
14083 : : default:;
14084 : : }
14085 : : break;
14086 : : }
14087 : : default:;
14088 : : }
14089 : : break;
14090 : : }
14091 : : default:;
14092 : : }
14093 : : break;
14094 : : }
14095 : 0 : case UNLT_EXPR:
14096 : 0 : {
14097 : 0 : tree _q40 = TREE_OPERAND (_q30, 0);
14098 : 0 : tree _q41 = TREE_OPERAND (_q30, 1);
14099 : 0 : switch (TREE_CODE (_p1))
14100 : : {
14101 : 0 : case BIT_AND_EXPR:
14102 : 0 : {
14103 : 0 : tree _q100 = TREE_OPERAND (_p1, 0);
14104 : 0 : tree _q101 = TREE_OPERAND (_p1, 1);
14105 : 0 : switch (TREE_CODE (_q100))
14106 : : {
14107 : 0 : case VEC_COND_EXPR:
14108 : 0 : {
14109 : 0 : tree _q110 = TREE_OPERAND (_q100, 0);
14110 : 0 : tree _q111 = TREE_OPERAND (_q100, 1);
14111 : 0 : tree _q112 = TREE_OPERAND (_q100, 2);
14112 : 0 : switch (TREE_CODE (_q110))
14113 : : {
14114 : 0 : case GE_EXPR:
14115 : 0 : {
14116 : 0 : tree _q120 = TREE_OPERAND (_q110, 0);
14117 : 0 : tree _q121 = TREE_OPERAND (_q110, 1);
14118 : 0 : if ((_q120 == _q40 && ! TREE_SIDE_EFFECTS (_q120)) || (operand_equal_p (_q120, _q40, 0) && types_match (_q120, _q40)))
14119 : : {
14120 : 0 : if ((_q121 == _q41 && ! TREE_SIDE_EFFECTS (_q121)) || (operand_equal_p (_q121, _q41, 0) && types_match (_q121, _q41)))
14121 : : {
14122 : 0 : if ((_q111 == _q31 && ! TREE_SIDE_EFFECTS (_q111)) || (operand_equal_p (_q111, _q31, 0) && types_match (_q111, _q31)))
14123 : : {
14124 : 0 : if ((_q112 == _q32 && ! TREE_SIDE_EFFECTS (_q112)) || (operand_equal_p (_q112, _q32, 0) && types_match (_q112, _q32)))
14125 : : {
14126 : 0 : {
14127 : 0 : tree captures[10] ATTRIBUTE_UNUSED = { _q20, _q30, _q40, _q41, _q31, _q32, _q21, _q100, _q110, _q101 };
14128 : 0 : tree res = generic_simplify_120 (loc, type, _p0, _p1, captures, UNLT_EXPR, GE_EXPR);
14129 : 0 : if (res) return res;
14130 : : }
14131 : : }
14132 : : }
14133 : : }
14134 : : }
14135 : : break;
14136 : : }
14137 : : default:;
14138 : : }
14139 : : break;
14140 : : }
14141 : 0 : default:;
14142 : : }
14143 : 0 : switch (TREE_CODE (_q101))
14144 : : {
14145 : 0 : case VEC_COND_EXPR:
14146 : 0 : {
14147 : 0 : tree _q120 = TREE_OPERAND (_q101, 0);
14148 : 0 : tree _q121 = TREE_OPERAND (_q101, 1);
14149 : 0 : tree _q122 = TREE_OPERAND (_q101, 2);
14150 : 0 : switch (TREE_CODE (_q120))
14151 : : {
14152 : 0 : case GE_EXPR:
14153 : 0 : {
14154 : 0 : tree _q130 = TREE_OPERAND (_q120, 0);
14155 : 0 : tree _q131 = TREE_OPERAND (_q120, 1);
14156 : 0 : if ((_q130 == _q40 && ! TREE_SIDE_EFFECTS (_q130)) || (operand_equal_p (_q130, _q40, 0) && types_match (_q130, _q40)))
14157 : : {
14158 : 0 : if ((_q131 == _q41 && ! TREE_SIDE_EFFECTS (_q131)) || (operand_equal_p (_q131, _q41, 0) && types_match (_q131, _q41)))
14159 : : {
14160 : 0 : if ((_q121 == _q31 && ! TREE_SIDE_EFFECTS (_q121)) || (operand_equal_p (_q121, _q31, 0) && types_match (_q121, _q31)))
14161 : : {
14162 : 0 : if ((_q122 == _q32 && ! TREE_SIDE_EFFECTS (_q122)) || (operand_equal_p (_q122, _q32, 0) && types_match (_q122, _q32)))
14163 : : {
14164 : 0 : {
14165 : 0 : tree captures[10] ATTRIBUTE_UNUSED = { _q20, _q30, _q40, _q41, _q31, _q32, _q21, _q101, _q120, _q100 };
14166 : 0 : tree res = generic_simplify_120 (loc, type, _p0, _p1, captures, UNLT_EXPR, GE_EXPR);
14167 : 0 : if (res) return res;
14168 : : }
14169 : : }
14170 : : }
14171 : : }
14172 : : }
14173 : : break;
14174 : : }
14175 : : default:;
14176 : : }
14177 : : break;
14178 : : }
14179 : : default:;
14180 : : }
14181 : : break;
14182 : : }
14183 : : default:;
14184 : : }
14185 : : break;
14186 : : }
14187 : 0 : case UNLE_EXPR:
14188 : 0 : {
14189 : 0 : tree _q40 = TREE_OPERAND (_q30, 0);
14190 : 0 : tree _q41 = TREE_OPERAND (_q30, 1);
14191 : 0 : switch (TREE_CODE (_p1))
14192 : : {
14193 : 0 : case BIT_AND_EXPR:
14194 : 0 : {
14195 : 0 : tree _q100 = TREE_OPERAND (_p1, 0);
14196 : 0 : tree _q101 = TREE_OPERAND (_p1, 1);
14197 : 0 : switch (TREE_CODE (_q100))
14198 : : {
14199 : 0 : case VEC_COND_EXPR:
14200 : 0 : {
14201 : 0 : tree _q110 = TREE_OPERAND (_q100, 0);
14202 : 0 : tree _q111 = TREE_OPERAND (_q100, 1);
14203 : 0 : tree _q112 = TREE_OPERAND (_q100, 2);
14204 : 0 : switch (TREE_CODE (_q110))
14205 : : {
14206 : 0 : case GT_EXPR:
14207 : 0 : {
14208 : 0 : tree _q120 = TREE_OPERAND (_q110, 0);
14209 : 0 : tree _q121 = TREE_OPERAND (_q110, 1);
14210 : 0 : if ((_q120 == _q40 && ! TREE_SIDE_EFFECTS (_q120)) || (operand_equal_p (_q120, _q40, 0) && types_match (_q120, _q40)))
14211 : : {
14212 : 0 : if ((_q121 == _q41 && ! TREE_SIDE_EFFECTS (_q121)) || (operand_equal_p (_q121, _q41, 0) && types_match (_q121, _q41)))
14213 : : {
14214 : 0 : if ((_q111 == _q31 && ! TREE_SIDE_EFFECTS (_q111)) || (operand_equal_p (_q111, _q31, 0) && types_match (_q111, _q31)))
14215 : : {
14216 : 0 : if ((_q112 == _q32 && ! TREE_SIDE_EFFECTS (_q112)) || (operand_equal_p (_q112, _q32, 0) && types_match (_q112, _q32)))
14217 : : {
14218 : 0 : {
14219 : 0 : tree captures[10] ATTRIBUTE_UNUSED = { _q20, _q30, _q40, _q41, _q31, _q32, _q21, _q100, _q110, _q101 };
14220 : 0 : tree res = generic_simplify_120 (loc, type, _p0, _p1, captures, UNLE_EXPR, GT_EXPR);
14221 : 0 : if (res) return res;
14222 : : }
14223 : : }
14224 : : }
14225 : : }
14226 : : }
14227 : : break;
14228 : : }
14229 : : default:;
14230 : : }
14231 : : break;
14232 : : }
14233 : 0 : default:;
14234 : : }
14235 : 0 : switch (TREE_CODE (_q101))
14236 : : {
14237 : 0 : case VEC_COND_EXPR:
14238 : 0 : {
14239 : 0 : tree _q120 = TREE_OPERAND (_q101, 0);
14240 : 0 : tree _q121 = TREE_OPERAND (_q101, 1);
14241 : 0 : tree _q122 = TREE_OPERAND (_q101, 2);
14242 : 0 : switch (TREE_CODE (_q120))
14243 : : {
14244 : 0 : case GT_EXPR:
14245 : 0 : {
14246 : 0 : tree _q130 = TREE_OPERAND (_q120, 0);
14247 : 0 : tree _q131 = TREE_OPERAND (_q120, 1);
14248 : 0 : if ((_q130 == _q40 && ! TREE_SIDE_EFFECTS (_q130)) || (operand_equal_p (_q130, _q40, 0) && types_match (_q130, _q40)))
14249 : : {
14250 : 0 : if ((_q131 == _q41 && ! TREE_SIDE_EFFECTS (_q131)) || (operand_equal_p (_q131, _q41, 0) && types_match (_q131, _q41)))
14251 : : {
14252 : 0 : if ((_q121 == _q31 && ! TREE_SIDE_EFFECTS (_q121)) || (operand_equal_p (_q121, _q31, 0) && types_match (_q121, _q31)))
14253 : : {
14254 : 0 : if ((_q122 == _q32 && ! TREE_SIDE_EFFECTS (_q122)) || (operand_equal_p (_q122, _q32, 0) && types_match (_q122, _q32)))
14255 : : {
14256 : 0 : {
14257 : 0 : tree captures[10] ATTRIBUTE_UNUSED = { _q20, _q30, _q40, _q41, _q31, _q32, _q21, _q101, _q120, _q100 };
14258 : 0 : tree res = generic_simplify_120 (loc, type, _p0, _p1, captures, UNLE_EXPR, GT_EXPR);
14259 : 0 : if (res) return res;
14260 : : }
14261 : : }
14262 : : }
14263 : : }
14264 : : }
14265 : : break;
14266 : : }
14267 : : default:;
14268 : : }
14269 : : break;
14270 : : }
14271 : : default:;
14272 : : }
14273 : : break;
14274 : : }
14275 : : default:;
14276 : : }
14277 : : break;
14278 : : }
14279 : 0 : case UNGT_EXPR:
14280 : 0 : {
14281 : 0 : tree _q40 = TREE_OPERAND (_q30, 0);
14282 : 0 : tree _q41 = TREE_OPERAND (_q30, 1);
14283 : 0 : switch (TREE_CODE (_p1))
14284 : : {
14285 : 0 : case BIT_AND_EXPR:
14286 : 0 : {
14287 : 0 : tree _q100 = TREE_OPERAND (_p1, 0);
14288 : 0 : tree _q101 = TREE_OPERAND (_p1, 1);
14289 : 0 : switch (TREE_CODE (_q100))
14290 : : {
14291 : 0 : case VEC_COND_EXPR:
14292 : 0 : {
14293 : 0 : tree _q110 = TREE_OPERAND (_q100, 0);
14294 : 0 : tree _q111 = TREE_OPERAND (_q100, 1);
14295 : 0 : tree _q112 = TREE_OPERAND (_q100, 2);
14296 : 0 : switch (TREE_CODE (_q110))
14297 : : {
14298 : 0 : case LE_EXPR:
14299 : 0 : {
14300 : 0 : tree _q120 = TREE_OPERAND (_q110, 0);
14301 : 0 : tree _q121 = TREE_OPERAND (_q110, 1);
14302 : 0 : if ((_q120 == _q40 && ! TREE_SIDE_EFFECTS (_q120)) || (operand_equal_p (_q120, _q40, 0) && types_match (_q120, _q40)))
14303 : : {
14304 : 0 : if ((_q121 == _q41 && ! TREE_SIDE_EFFECTS (_q121)) || (operand_equal_p (_q121, _q41, 0) && types_match (_q121, _q41)))
14305 : : {
14306 : 0 : if ((_q111 == _q31 && ! TREE_SIDE_EFFECTS (_q111)) || (operand_equal_p (_q111, _q31, 0) && types_match (_q111, _q31)))
14307 : : {
14308 : 0 : if ((_q112 == _q32 && ! TREE_SIDE_EFFECTS (_q112)) || (operand_equal_p (_q112, _q32, 0) && types_match (_q112, _q32)))
14309 : : {
14310 : 0 : {
14311 : 0 : tree captures[10] ATTRIBUTE_UNUSED = { _q20, _q30, _q40, _q41, _q31, _q32, _q21, _q100, _q110, _q101 };
14312 : 0 : tree res = generic_simplify_120 (loc, type, _p0, _p1, captures, UNGT_EXPR, LE_EXPR);
14313 : 0 : if (res) return res;
14314 : : }
14315 : : }
14316 : : }
14317 : : }
14318 : : }
14319 : : break;
14320 : : }
14321 : : default:;
14322 : : }
14323 : : break;
14324 : : }
14325 : 0 : default:;
14326 : : }
14327 : 0 : switch (TREE_CODE (_q101))
14328 : : {
14329 : 0 : case VEC_COND_EXPR:
14330 : 0 : {
14331 : 0 : tree _q120 = TREE_OPERAND (_q101, 0);
14332 : 0 : tree _q121 = TREE_OPERAND (_q101, 1);
14333 : 0 : tree _q122 = TREE_OPERAND (_q101, 2);
14334 : 0 : switch (TREE_CODE (_q120))
14335 : : {
14336 : 0 : case LE_EXPR:
14337 : 0 : {
14338 : 0 : tree _q130 = TREE_OPERAND (_q120, 0);
14339 : 0 : tree _q131 = TREE_OPERAND (_q120, 1);
14340 : 0 : if ((_q130 == _q40 && ! TREE_SIDE_EFFECTS (_q130)) || (operand_equal_p (_q130, _q40, 0) && types_match (_q130, _q40)))
14341 : : {
14342 : 0 : if ((_q131 == _q41 && ! TREE_SIDE_EFFECTS (_q131)) || (operand_equal_p (_q131, _q41, 0) && types_match (_q131, _q41)))
14343 : : {
14344 : 0 : if ((_q121 == _q31 && ! TREE_SIDE_EFFECTS (_q121)) || (operand_equal_p (_q121, _q31, 0) && types_match (_q121, _q31)))
14345 : : {
14346 : 0 : if ((_q122 == _q32 && ! TREE_SIDE_EFFECTS (_q122)) || (operand_equal_p (_q122, _q32, 0) && types_match (_q122, _q32)))
14347 : : {
14348 : 0 : {
14349 : 0 : tree captures[10] ATTRIBUTE_UNUSED = { _q20, _q30, _q40, _q41, _q31, _q32, _q21, _q101, _q120, _q100 };
14350 : 0 : tree res = generic_simplify_120 (loc, type, _p0, _p1, captures, UNGT_EXPR, LE_EXPR);
14351 : 0 : if (res) return res;
14352 : : }
14353 : : }
14354 : : }
14355 : : }
14356 : : }
14357 : : break;
14358 : : }
14359 : : default:;
14360 : : }
14361 : : break;
14362 : : }
14363 : : default:;
14364 : : }
14365 : : break;
14366 : : }
14367 : : default:;
14368 : : }
14369 : : break;
14370 : : }
14371 : 0 : case UNGE_EXPR:
14372 : 0 : {
14373 : 0 : tree _q40 = TREE_OPERAND (_q30, 0);
14374 : 0 : tree _q41 = TREE_OPERAND (_q30, 1);
14375 : 0 : switch (TREE_CODE (_p1))
14376 : : {
14377 : 0 : case BIT_AND_EXPR:
14378 : 0 : {
14379 : 0 : tree _q100 = TREE_OPERAND (_p1, 0);
14380 : 0 : tree _q101 = TREE_OPERAND (_p1, 1);
14381 : 0 : switch (TREE_CODE (_q100))
14382 : : {
14383 : 0 : case VEC_COND_EXPR:
14384 : 0 : {
14385 : 0 : tree _q110 = TREE_OPERAND (_q100, 0);
14386 : 0 : tree _q111 = TREE_OPERAND (_q100, 1);
14387 : 0 : tree _q112 = TREE_OPERAND (_q100, 2);
14388 : 0 : switch (TREE_CODE (_q110))
14389 : : {
14390 : 0 : case LT_EXPR:
14391 : 0 : {
14392 : 0 : tree _q120 = TREE_OPERAND (_q110, 0);
14393 : 0 : tree _q121 = TREE_OPERAND (_q110, 1);
14394 : 0 : if ((_q120 == _q40 && ! TREE_SIDE_EFFECTS (_q120)) || (operand_equal_p (_q120, _q40, 0) && types_match (_q120, _q40)))
14395 : : {
14396 : 0 : if ((_q121 == _q41 && ! TREE_SIDE_EFFECTS (_q121)) || (operand_equal_p (_q121, _q41, 0) && types_match (_q121, _q41)))
14397 : : {
14398 : 0 : if ((_q111 == _q31 && ! TREE_SIDE_EFFECTS (_q111)) || (operand_equal_p (_q111, _q31, 0) && types_match (_q111, _q31)))
14399 : : {
14400 : 0 : if ((_q112 == _q32 && ! TREE_SIDE_EFFECTS (_q112)) || (operand_equal_p (_q112, _q32, 0) && types_match (_q112, _q32)))
14401 : : {
14402 : 0 : {
14403 : 0 : tree captures[10] ATTRIBUTE_UNUSED = { _q20, _q30, _q40, _q41, _q31, _q32, _q21, _q100, _q110, _q101 };
14404 : 0 : tree res = generic_simplify_120 (loc, type, _p0, _p1, captures, UNGE_EXPR, LT_EXPR);
14405 : 0 : if (res) return res;
14406 : : }
14407 : : }
14408 : : }
14409 : : }
14410 : : }
14411 : : break;
14412 : : }
14413 : : default:;
14414 : : }
14415 : : break;
14416 : : }
14417 : 0 : default:;
14418 : : }
14419 : 0 : switch (TREE_CODE (_q101))
14420 : : {
14421 : 0 : case VEC_COND_EXPR:
14422 : 0 : {
14423 : 0 : tree _q120 = TREE_OPERAND (_q101, 0);
14424 : 0 : tree _q121 = TREE_OPERAND (_q101, 1);
14425 : 0 : tree _q122 = TREE_OPERAND (_q101, 2);
14426 : 0 : switch (TREE_CODE (_q120))
14427 : : {
14428 : 0 : case LT_EXPR:
14429 : 0 : {
14430 : 0 : tree _q130 = TREE_OPERAND (_q120, 0);
14431 : 0 : tree _q131 = TREE_OPERAND (_q120, 1);
14432 : 0 : if ((_q130 == _q40 && ! TREE_SIDE_EFFECTS (_q130)) || (operand_equal_p (_q130, _q40, 0) && types_match (_q130, _q40)))
14433 : : {
14434 : 0 : if ((_q131 == _q41 && ! TREE_SIDE_EFFECTS (_q131)) || (operand_equal_p (_q131, _q41, 0) && types_match (_q131, _q41)))
14435 : : {
14436 : 0 : if ((_q121 == _q31 && ! TREE_SIDE_EFFECTS (_q121)) || (operand_equal_p (_q121, _q31, 0) && types_match (_q121, _q31)))
14437 : : {
14438 : 0 : if ((_q122 == _q32 && ! TREE_SIDE_EFFECTS (_q122)) || (operand_equal_p (_q122, _q32, 0) && types_match (_q122, _q32)))
14439 : : {
14440 : 0 : {
14441 : 0 : tree captures[10] ATTRIBUTE_UNUSED = { _q20, _q30, _q40, _q41, _q31, _q32, _q21, _q101, _q120, _q100 };
14442 : 0 : tree res = generic_simplify_120 (loc, type, _p0, _p1, captures, UNGE_EXPR, LT_EXPR);
14443 : 0 : if (res) return res;
14444 : : }
14445 : : }
14446 : : }
14447 : : }
14448 : : }
14449 : : break;
14450 : : }
14451 : : default:;
14452 : : }
14453 : : break;
14454 : : }
14455 : : default:;
14456 : : }
14457 : : break;
14458 : : }
14459 : : default:;
14460 : : }
14461 : : break;
14462 : : }
14463 : 0 : case UNEQ_EXPR:
14464 : 0 : {
14465 : 0 : tree _q40 = TREE_OPERAND (_q30, 0);
14466 : 0 : tree _q41 = TREE_OPERAND (_q30, 1);
14467 : 0 : switch (TREE_CODE (_p1))
14468 : : {
14469 : 0 : case BIT_AND_EXPR:
14470 : 0 : {
14471 : 0 : tree _q100 = TREE_OPERAND (_p1, 0);
14472 : 0 : tree _q101 = TREE_OPERAND (_p1, 1);
14473 : 0 : switch (TREE_CODE (_q100))
14474 : : {
14475 : 0 : case VEC_COND_EXPR:
14476 : 0 : {
14477 : 0 : tree _q110 = TREE_OPERAND (_q100, 0);
14478 : 0 : tree _q111 = TREE_OPERAND (_q100, 1);
14479 : 0 : tree _q112 = TREE_OPERAND (_q100, 2);
14480 : 0 : switch (TREE_CODE (_q110))
14481 : : {
14482 : 0 : case LTGT_EXPR:
14483 : 0 : {
14484 : 0 : tree _q120 = TREE_OPERAND (_q110, 0);
14485 : 0 : tree _q121 = TREE_OPERAND (_q110, 1);
14486 : 0 : if ((_q120 == _q40 && ! TREE_SIDE_EFFECTS (_q120)) || (operand_equal_p (_q120, _q40, 0) && types_match (_q120, _q40)))
14487 : : {
14488 : 0 : if ((_q121 == _q41 && ! TREE_SIDE_EFFECTS (_q121)) || (operand_equal_p (_q121, _q41, 0) && types_match (_q121, _q41)))
14489 : : {
14490 : 0 : if ((_q111 == _q31 && ! TREE_SIDE_EFFECTS (_q111)) || (operand_equal_p (_q111, _q31, 0) && types_match (_q111, _q31)))
14491 : : {
14492 : 0 : if ((_q112 == _q32 && ! TREE_SIDE_EFFECTS (_q112)) || (operand_equal_p (_q112, _q32, 0) && types_match (_q112, _q32)))
14493 : : {
14494 : 0 : {
14495 : 0 : tree captures[10] ATTRIBUTE_UNUSED = { _q20, _q30, _q40, _q41, _q31, _q32, _q21, _q100, _q110, _q101 };
14496 : 0 : tree res = generic_simplify_120 (loc, type, _p0, _p1, captures, UNEQ_EXPR, LTGT_EXPR);
14497 : 0 : if (res) return res;
14498 : : }
14499 : : }
14500 : : }
14501 : : }
14502 : : }
14503 : : break;
14504 : : }
14505 : : default:;
14506 : : }
14507 : : break;
14508 : : }
14509 : 0 : default:;
14510 : : }
14511 : 0 : switch (TREE_CODE (_q101))
14512 : : {
14513 : 0 : case VEC_COND_EXPR:
14514 : 0 : {
14515 : 0 : tree _q120 = TREE_OPERAND (_q101, 0);
14516 : 0 : tree _q121 = TREE_OPERAND (_q101, 1);
14517 : 0 : tree _q122 = TREE_OPERAND (_q101, 2);
14518 : 0 : switch (TREE_CODE (_q120))
14519 : : {
14520 : 0 : case LTGT_EXPR:
14521 : 0 : {
14522 : 0 : tree _q130 = TREE_OPERAND (_q120, 0);
14523 : 0 : tree _q131 = TREE_OPERAND (_q120, 1);
14524 : 0 : if ((_q130 == _q40 && ! TREE_SIDE_EFFECTS (_q130)) || (operand_equal_p (_q130, _q40, 0) && types_match (_q130, _q40)))
14525 : : {
14526 : 0 : if ((_q131 == _q41 && ! TREE_SIDE_EFFECTS (_q131)) || (operand_equal_p (_q131, _q41, 0) && types_match (_q131, _q41)))
14527 : : {
14528 : 0 : if ((_q121 == _q31 && ! TREE_SIDE_EFFECTS (_q121)) || (operand_equal_p (_q121, _q31, 0) && types_match (_q121, _q31)))
14529 : : {
14530 : 0 : if ((_q122 == _q32 && ! TREE_SIDE_EFFECTS (_q122)) || (operand_equal_p (_q122, _q32, 0) && types_match (_q122, _q32)))
14531 : : {
14532 : 0 : {
14533 : 0 : tree captures[10] ATTRIBUTE_UNUSED = { _q20, _q30, _q40, _q41, _q31, _q32, _q21, _q101, _q120, _q100 };
14534 : 0 : tree res = generic_simplify_120 (loc, type, _p0, _p1, captures, UNEQ_EXPR, LTGT_EXPR);
14535 : 0 : if (res) return res;
14536 : : }
14537 : : }
14538 : : }
14539 : : }
14540 : : }
14541 : : break;
14542 : : }
14543 : : default:;
14544 : : }
14545 : : break;
14546 : : }
14547 : : default:;
14548 : : }
14549 : : break;
14550 : : }
14551 : : default:;
14552 : : }
14553 : : break;
14554 : : }
14555 : 0 : case LTGT_EXPR:
14556 : 0 : {
14557 : 0 : tree _q40 = TREE_OPERAND (_q30, 0);
14558 : 0 : tree _q41 = TREE_OPERAND (_q30, 1);
14559 : 0 : switch (TREE_CODE (_p1))
14560 : : {
14561 : 0 : case BIT_AND_EXPR:
14562 : 0 : {
14563 : 0 : tree _q100 = TREE_OPERAND (_p1, 0);
14564 : 0 : tree _q101 = TREE_OPERAND (_p1, 1);
14565 : 0 : switch (TREE_CODE (_q100))
14566 : : {
14567 : 0 : case VEC_COND_EXPR:
14568 : 0 : {
14569 : 0 : tree _q110 = TREE_OPERAND (_q100, 0);
14570 : 0 : tree _q111 = TREE_OPERAND (_q100, 1);
14571 : 0 : tree _q112 = TREE_OPERAND (_q100, 2);
14572 : 0 : switch (TREE_CODE (_q110))
14573 : : {
14574 : 0 : case UNEQ_EXPR:
14575 : 0 : {
14576 : 0 : tree _q120 = TREE_OPERAND (_q110, 0);
14577 : 0 : tree _q121 = TREE_OPERAND (_q110, 1);
14578 : 0 : if ((_q120 == _q40 && ! TREE_SIDE_EFFECTS (_q120)) || (operand_equal_p (_q120, _q40, 0) && types_match (_q120, _q40)))
14579 : : {
14580 : 0 : if ((_q121 == _q41 && ! TREE_SIDE_EFFECTS (_q121)) || (operand_equal_p (_q121, _q41, 0) && types_match (_q121, _q41)))
14581 : : {
14582 : 0 : if ((_q111 == _q31 && ! TREE_SIDE_EFFECTS (_q111)) || (operand_equal_p (_q111, _q31, 0) && types_match (_q111, _q31)))
14583 : : {
14584 : 0 : if ((_q112 == _q32 && ! TREE_SIDE_EFFECTS (_q112)) || (operand_equal_p (_q112, _q32, 0) && types_match (_q112, _q32)))
14585 : : {
14586 : 0 : {
14587 : 0 : tree captures[10] ATTRIBUTE_UNUSED = { _q20, _q30, _q40, _q41, _q31, _q32, _q21, _q100, _q110, _q101 };
14588 : 0 : tree res = generic_simplify_120 (loc, type, _p0, _p1, captures, LTGT_EXPR, UNEQ_EXPR);
14589 : 0 : if (res) return res;
14590 : : }
14591 : : }
14592 : : }
14593 : : }
14594 : : }
14595 : : break;
14596 : : }
14597 : : default:;
14598 : : }
14599 : : break;
14600 : : }
14601 : 0 : default:;
14602 : : }
14603 : 0 : switch (TREE_CODE (_q101))
14604 : : {
14605 : 0 : case VEC_COND_EXPR:
14606 : 0 : {
14607 : 0 : tree _q120 = TREE_OPERAND (_q101, 0);
14608 : 0 : tree _q121 = TREE_OPERAND (_q101, 1);
14609 : 0 : tree _q122 = TREE_OPERAND (_q101, 2);
14610 : 0 : switch (TREE_CODE (_q120))
14611 : : {
14612 : 0 : case UNEQ_EXPR:
14613 : 0 : {
14614 : 0 : tree _q130 = TREE_OPERAND (_q120, 0);
14615 : 0 : tree _q131 = TREE_OPERAND (_q120, 1);
14616 : 0 : if ((_q130 == _q40 && ! TREE_SIDE_EFFECTS (_q130)) || (operand_equal_p (_q130, _q40, 0) && types_match (_q130, _q40)))
14617 : : {
14618 : 0 : if ((_q131 == _q41 && ! TREE_SIDE_EFFECTS (_q131)) || (operand_equal_p (_q131, _q41, 0) && types_match (_q131, _q41)))
14619 : : {
14620 : 0 : if ((_q121 == _q31 && ! TREE_SIDE_EFFECTS (_q121)) || (operand_equal_p (_q121, _q31, 0) && types_match (_q121, _q31)))
14621 : : {
14622 : 0 : if ((_q122 == _q32 && ! TREE_SIDE_EFFECTS (_q122)) || (operand_equal_p (_q122, _q32, 0) && types_match (_q122, _q32)))
14623 : : {
14624 : 0 : {
14625 : 0 : tree captures[10] ATTRIBUTE_UNUSED = { _q20, _q30, _q40, _q41, _q31, _q32, _q21, _q101, _q120, _q100 };
14626 : 0 : tree res = generic_simplify_120 (loc, type, _p0, _p1, captures, LTGT_EXPR, UNEQ_EXPR);
14627 : 0 : if (res) return res;
14628 : : }
14629 : : }
14630 : : }
14631 : : }
14632 : : }
14633 : : break;
14634 : : }
14635 : : default:;
14636 : : }
14637 : : break;
14638 : : }
14639 : : default:;
14640 : : }
14641 : : break;
14642 : : }
14643 : : default:;
14644 : : }
14645 : : break;
14646 : : }
14647 : : default:;
14648 : : }
14649 : : break;
14650 : : }
14651 : 128333 : default:;
14652 : : }
14653 : 128333 : switch (TREE_CODE (_q21))
14654 : : {
14655 : 0 : case VEC_COND_EXPR:
14656 : 0 : {
14657 : 0 : tree _q40 = TREE_OPERAND (_q21, 0);
14658 : 0 : tree _q41 = TREE_OPERAND (_q21, 1);
14659 : 0 : tree _q42 = TREE_OPERAND (_q21, 2);
14660 : 0 : switch (TREE_CODE (_q40))
14661 : : {
14662 : 0 : case LT_EXPR:
14663 : 0 : {
14664 : 0 : tree _q50 = TREE_OPERAND (_q40, 0);
14665 : 0 : tree _q51 = TREE_OPERAND (_q40, 1);
14666 : 0 : switch (TREE_CODE (_p1))
14667 : : {
14668 : 0 : case BIT_AND_EXPR:
14669 : 0 : {
14670 : 0 : tree _q100 = TREE_OPERAND (_p1, 0);
14671 : 0 : tree _q101 = TREE_OPERAND (_p1, 1);
14672 : 0 : switch (TREE_CODE (_q100))
14673 : : {
14674 : 0 : case VEC_COND_EXPR:
14675 : 0 : {
14676 : 0 : tree _q110 = TREE_OPERAND (_q100, 0);
14677 : 0 : tree _q111 = TREE_OPERAND (_q100, 1);
14678 : 0 : tree _q112 = TREE_OPERAND (_q100, 2);
14679 : 0 : switch (TREE_CODE (_q110))
14680 : : {
14681 : 0 : case GE_EXPR:
14682 : 0 : {
14683 : 0 : tree _q120 = TREE_OPERAND (_q110, 0);
14684 : 0 : tree _q121 = TREE_OPERAND (_q110, 1);
14685 : 0 : if ((_q120 == _q50 && ! TREE_SIDE_EFFECTS (_q120)) || (operand_equal_p (_q120, _q50, 0) && types_match (_q120, _q50)))
14686 : : {
14687 : 0 : if ((_q121 == _q51 && ! TREE_SIDE_EFFECTS (_q121)) || (operand_equal_p (_q121, _q51, 0) && types_match (_q121, _q51)))
14688 : : {
14689 : 0 : if ((_q111 == _q41 && ! TREE_SIDE_EFFECTS (_q111)) || (operand_equal_p (_q111, _q41, 0) && types_match (_q111, _q41)))
14690 : : {
14691 : 0 : if ((_q112 == _q42 && ! TREE_SIDE_EFFECTS (_q112)) || (operand_equal_p (_q112, _q42, 0) && types_match (_q112, _q42)))
14692 : : {
14693 : 0 : {
14694 : 0 : tree captures[10] ATTRIBUTE_UNUSED = { _q21, _q40, _q50, _q51, _q41, _q42, _q20, _q100, _q110, _q101 };
14695 : 0 : tree res = generic_simplify_120 (loc, type, _p0, _p1, captures, LT_EXPR, GE_EXPR);
14696 : 0 : if (res) return res;
14697 : : }
14698 : : }
14699 : : }
14700 : : }
14701 : : }
14702 : : break;
14703 : : }
14704 : : default:;
14705 : : }
14706 : : break;
14707 : : }
14708 : 0 : default:;
14709 : : }
14710 : 0 : switch (TREE_CODE (_q101))
14711 : : {
14712 : 0 : case VEC_COND_EXPR:
14713 : 0 : {
14714 : 0 : tree _q120 = TREE_OPERAND (_q101, 0);
14715 : 0 : tree _q121 = TREE_OPERAND (_q101, 1);
14716 : 0 : tree _q122 = TREE_OPERAND (_q101, 2);
14717 : 0 : switch (TREE_CODE (_q120))
14718 : : {
14719 : 0 : case GE_EXPR:
14720 : 0 : {
14721 : 0 : tree _q130 = TREE_OPERAND (_q120, 0);
14722 : 0 : tree _q131 = TREE_OPERAND (_q120, 1);
14723 : 0 : if ((_q130 == _q50 && ! TREE_SIDE_EFFECTS (_q130)) || (operand_equal_p (_q130, _q50, 0) && types_match (_q130, _q50)))
14724 : : {
14725 : 0 : if ((_q131 == _q51 && ! TREE_SIDE_EFFECTS (_q131)) || (operand_equal_p (_q131, _q51, 0) && types_match (_q131, _q51)))
14726 : : {
14727 : 0 : if ((_q121 == _q41 && ! TREE_SIDE_EFFECTS (_q121)) || (operand_equal_p (_q121, _q41, 0) && types_match (_q121, _q41)))
14728 : : {
14729 : 0 : if ((_q122 == _q42 && ! TREE_SIDE_EFFECTS (_q122)) || (operand_equal_p (_q122, _q42, 0) && types_match (_q122, _q42)))
14730 : : {
14731 : 0 : {
14732 : 0 : tree captures[10] ATTRIBUTE_UNUSED = { _q21, _q40, _q50, _q51, _q41, _q42, _q20, _q101, _q120, _q100 };
14733 : 0 : tree res = generic_simplify_120 (loc, type, _p0, _p1, captures, LT_EXPR, GE_EXPR);
14734 : 0 : if (res) return res;
14735 : : }
14736 : : }
14737 : : }
14738 : : }
14739 : : }
14740 : : break;
14741 : : }
14742 : : default:;
14743 : : }
14744 : : break;
14745 : : }
14746 : : default:;
14747 : : }
14748 : : break;
14749 : : }
14750 : : default:;
14751 : : }
14752 : : break;
14753 : : }
14754 : 0 : case LE_EXPR:
14755 : 0 : {
14756 : 0 : tree _q50 = TREE_OPERAND (_q40, 0);
14757 : 0 : tree _q51 = TREE_OPERAND (_q40, 1);
14758 : 0 : switch (TREE_CODE (_p1))
14759 : : {
14760 : 0 : case BIT_AND_EXPR:
14761 : 0 : {
14762 : 0 : tree _q100 = TREE_OPERAND (_p1, 0);
14763 : 0 : tree _q101 = TREE_OPERAND (_p1, 1);
14764 : 0 : switch (TREE_CODE (_q100))
14765 : : {
14766 : 0 : case VEC_COND_EXPR:
14767 : 0 : {
14768 : 0 : tree _q110 = TREE_OPERAND (_q100, 0);
14769 : 0 : tree _q111 = TREE_OPERAND (_q100, 1);
14770 : 0 : tree _q112 = TREE_OPERAND (_q100, 2);
14771 : 0 : switch (TREE_CODE (_q110))
14772 : : {
14773 : 0 : case GT_EXPR:
14774 : 0 : {
14775 : 0 : tree _q120 = TREE_OPERAND (_q110, 0);
14776 : 0 : tree _q121 = TREE_OPERAND (_q110, 1);
14777 : 0 : if ((_q120 == _q50 && ! TREE_SIDE_EFFECTS (_q120)) || (operand_equal_p (_q120, _q50, 0) && types_match (_q120, _q50)))
14778 : : {
14779 : 0 : if ((_q121 == _q51 && ! TREE_SIDE_EFFECTS (_q121)) || (operand_equal_p (_q121, _q51, 0) && types_match (_q121, _q51)))
14780 : : {
14781 : 0 : if ((_q111 == _q41 && ! TREE_SIDE_EFFECTS (_q111)) || (operand_equal_p (_q111, _q41, 0) && types_match (_q111, _q41)))
14782 : : {
14783 : 0 : if ((_q112 == _q42 && ! TREE_SIDE_EFFECTS (_q112)) || (operand_equal_p (_q112, _q42, 0) && types_match (_q112, _q42)))
14784 : : {
14785 : 0 : {
14786 : 0 : tree captures[10] ATTRIBUTE_UNUSED = { _q21, _q40, _q50, _q51, _q41, _q42, _q20, _q100, _q110, _q101 };
14787 : 0 : tree res = generic_simplify_120 (loc, type, _p0, _p1, captures, LE_EXPR, GT_EXPR);
14788 : 0 : if (res) return res;
14789 : : }
14790 : : }
14791 : : }
14792 : : }
14793 : : }
14794 : : break;
14795 : : }
14796 : : default:;
14797 : : }
14798 : : break;
14799 : : }
14800 : 0 : default:;
14801 : : }
14802 : 0 : switch (TREE_CODE (_q101))
14803 : : {
14804 : 0 : case VEC_COND_EXPR:
14805 : 0 : {
14806 : 0 : tree _q120 = TREE_OPERAND (_q101, 0);
14807 : 0 : tree _q121 = TREE_OPERAND (_q101, 1);
14808 : 0 : tree _q122 = TREE_OPERAND (_q101, 2);
14809 : 0 : switch (TREE_CODE (_q120))
14810 : : {
14811 : 0 : case GT_EXPR:
14812 : 0 : {
14813 : 0 : tree _q130 = TREE_OPERAND (_q120, 0);
14814 : 0 : tree _q131 = TREE_OPERAND (_q120, 1);
14815 : 0 : if ((_q130 == _q50 && ! TREE_SIDE_EFFECTS (_q130)) || (operand_equal_p (_q130, _q50, 0) && types_match (_q130, _q50)))
14816 : : {
14817 : 0 : if ((_q131 == _q51 && ! TREE_SIDE_EFFECTS (_q131)) || (operand_equal_p (_q131, _q51, 0) && types_match (_q131, _q51)))
14818 : : {
14819 : 0 : if ((_q121 == _q41 && ! TREE_SIDE_EFFECTS (_q121)) || (operand_equal_p (_q121, _q41, 0) && types_match (_q121, _q41)))
14820 : : {
14821 : 0 : if ((_q122 == _q42 && ! TREE_SIDE_EFFECTS (_q122)) || (operand_equal_p (_q122, _q42, 0) && types_match (_q122, _q42)))
14822 : : {
14823 : 0 : {
14824 : 0 : tree captures[10] ATTRIBUTE_UNUSED = { _q21, _q40, _q50, _q51, _q41, _q42, _q20, _q101, _q120, _q100 };
14825 : 0 : tree res = generic_simplify_120 (loc, type, _p0, _p1, captures, LE_EXPR, GT_EXPR);
14826 : 0 : if (res) return res;
14827 : : }
14828 : : }
14829 : : }
14830 : : }
14831 : : }
14832 : : break;
14833 : : }
14834 : : default:;
14835 : : }
14836 : : break;
14837 : : }
14838 : : default:;
14839 : : }
14840 : : break;
14841 : : }
14842 : : default:;
14843 : : }
14844 : : break;
14845 : : }
14846 : 0 : case EQ_EXPR:
14847 : 0 : {
14848 : 0 : tree _q50 = TREE_OPERAND (_q40, 0);
14849 : 0 : tree _q51 = TREE_OPERAND (_q40, 1);
14850 : 0 : switch (TREE_CODE (_p1))
14851 : : {
14852 : 0 : case BIT_AND_EXPR:
14853 : 0 : {
14854 : 0 : tree _q100 = TREE_OPERAND (_p1, 0);
14855 : 0 : tree _q101 = TREE_OPERAND (_p1, 1);
14856 : 0 : switch (TREE_CODE (_q100))
14857 : : {
14858 : 0 : case VEC_COND_EXPR:
14859 : 0 : {
14860 : 0 : tree _q110 = TREE_OPERAND (_q100, 0);
14861 : 0 : tree _q111 = TREE_OPERAND (_q100, 1);
14862 : 0 : tree _q112 = TREE_OPERAND (_q100, 2);
14863 : 0 : switch (TREE_CODE (_q110))
14864 : : {
14865 : 0 : case NE_EXPR:
14866 : 0 : {
14867 : 0 : tree _q120 = TREE_OPERAND (_q110, 0);
14868 : 0 : tree _q121 = TREE_OPERAND (_q110, 1);
14869 : 0 : if ((_q120 == _q50 && ! TREE_SIDE_EFFECTS (_q120)) || (operand_equal_p (_q120, _q50, 0) && types_match (_q120, _q50)))
14870 : : {
14871 : 0 : if ((_q121 == _q51 && ! TREE_SIDE_EFFECTS (_q121)) || (operand_equal_p (_q121, _q51, 0) && types_match (_q121, _q51)))
14872 : : {
14873 : 0 : if ((_q111 == _q41 && ! TREE_SIDE_EFFECTS (_q111)) || (operand_equal_p (_q111, _q41, 0) && types_match (_q111, _q41)))
14874 : : {
14875 : 0 : if ((_q112 == _q42 && ! TREE_SIDE_EFFECTS (_q112)) || (operand_equal_p (_q112, _q42, 0) && types_match (_q112, _q42)))
14876 : : {
14877 : 0 : {
14878 : 0 : tree captures[10] ATTRIBUTE_UNUSED = { _q21, _q40, _q50, _q51, _q41, _q42, _q20, _q100, _q110, _q101 };
14879 : 0 : tree res = generic_simplify_120 (loc, type, _p0, _p1, captures, EQ_EXPR, NE_EXPR);
14880 : 0 : if (res) return res;
14881 : : }
14882 : : }
14883 : : }
14884 : : }
14885 : : }
14886 : : break;
14887 : : }
14888 : : default:;
14889 : : }
14890 : : break;
14891 : : }
14892 : 0 : default:;
14893 : : }
14894 : 0 : switch (TREE_CODE (_q101))
14895 : : {
14896 : 0 : case VEC_COND_EXPR:
14897 : 0 : {
14898 : 0 : tree _q120 = TREE_OPERAND (_q101, 0);
14899 : 0 : tree _q121 = TREE_OPERAND (_q101, 1);
14900 : 0 : tree _q122 = TREE_OPERAND (_q101, 2);
14901 : 0 : switch (TREE_CODE (_q120))
14902 : : {
14903 : 0 : case NE_EXPR:
14904 : 0 : {
14905 : 0 : tree _q130 = TREE_OPERAND (_q120, 0);
14906 : 0 : tree _q131 = TREE_OPERAND (_q120, 1);
14907 : 0 : if ((_q130 == _q50 && ! TREE_SIDE_EFFECTS (_q130)) || (operand_equal_p (_q130, _q50, 0) && types_match (_q130, _q50)))
14908 : : {
14909 : 0 : if ((_q131 == _q51 && ! TREE_SIDE_EFFECTS (_q131)) || (operand_equal_p (_q131, _q51, 0) && types_match (_q131, _q51)))
14910 : : {
14911 : 0 : if ((_q121 == _q41 && ! TREE_SIDE_EFFECTS (_q121)) || (operand_equal_p (_q121, _q41, 0) && types_match (_q121, _q41)))
14912 : : {
14913 : 0 : if ((_q122 == _q42 && ! TREE_SIDE_EFFECTS (_q122)) || (operand_equal_p (_q122, _q42, 0) && types_match (_q122, _q42)))
14914 : : {
14915 : 0 : {
14916 : 0 : tree captures[10] ATTRIBUTE_UNUSED = { _q21, _q40, _q50, _q51, _q41, _q42, _q20, _q101, _q120, _q100 };
14917 : 0 : tree res = generic_simplify_120 (loc, type, _p0, _p1, captures, EQ_EXPR, NE_EXPR);
14918 : 0 : if (res) return res;
14919 : : }
14920 : : }
14921 : : }
14922 : : }
14923 : : }
14924 : : break;
14925 : : }
14926 : : default:;
14927 : : }
14928 : : break;
14929 : : }
14930 : : default:;
14931 : : }
14932 : : break;
14933 : : }
14934 : : default:;
14935 : : }
14936 : : break;
14937 : : }
14938 : 0 : case NE_EXPR:
14939 : 0 : {
14940 : 0 : tree _q50 = TREE_OPERAND (_q40, 0);
14941 : 0 : tree _q51 = TREE_OPERAND (_q40, 1);
14942 : 0 : switch (TREE_CODE (_p1))
14943 : : {
14944 : 0 : case BIT_AND_EXPR:
14945 : 0 : {
14946 : 0 : tree _q100 = TREE_OPERAND (_p1, 0);
14947 : 0 : tree _q101 = TREE_OPERAND (_p1, 1);
14948 : 0 : switch (TREE_CODE (_q100))
14949 : : {
14950 : 0 : case VEC_COND_EXPR:
14951 : 0 : {
14952 : 0 : tree _q110 = TREE_OPERAND (_q100, 0);
14953 : 0 : tree _q111 = TREE_OPERAND (_q100, 1);
14954 : 0 : tree _q112 = TREE_OPERAND (_q100, 2);
14955 : 0 : switch (TREE_CODE (_q110))
14956 : : {
14957 : 0 : case EQ_EXPR:
14958 : 0 : {
14959 : 0 : tree _q120 = TREE_OPERAND (_q110, 0);
14960 : 0 : tree _q121 = TREE_OPERAND (_q110, 1);
14961 : 0 : if ((_q120 == _q50 && ! TREE_SIDE_EFFECTS (_q120)) || (operand_equal_p (_q120, _q50, 0) && types_match (_q120, _q50)))
14962 : : {
14963 : 0 : if ((_q121 == _q51 && ! TREE_SIDE_EFFECTS (_q121)) || (operand_equal_p (_q121, _q51, 0) && types_match (_q121, _q51)))
14964 : : {
14965 : 0 : if ((_q111 == _q41 && ! TREE_SIDE_EFFECTS (_q111)) || (operand_equal_p (_q111, _q41, 0) && types_match (_q111, _q41)))
14966 : : {
14967 : 0 : if ((_q112 == _q42 && ! TREE_SIDE_EFFECTS (_q112)) || (operand_equal_p (_q112, _q42, 0) && types_match (_q112, _q42)))
14968 : : {
14969 : 0 : {
14970 : 0 : tree captures[10] ATTRIBUTE_UNUSED = { _q21, _q40, _q50, _q51, _q41, _q42, _q20, _q100, _q110, _q101 };
14971 : 0 : tree res = generic_simplify_120 (loc, type, _p0, _p1, captures, NE_EXPR, EQ_EXPR);
14972 : 0 : if (res) return res;
14973 : : }
14974 : : }
14975 : : }
14976 : : }
14977 : : }
14978 : : break;
14979 : : }
14980 : : default:;
14981 : : }
14982 : : break;
14983 : : }
14984 : 0 : default:;
14985 : : }
14986 : 0 : switch (TREE_CODE (_q101))
14987 : : {
14988 : 0 : case VEC_COND_EXPR:
14989 : 0 : {
14990 : 0 : tree _q120 = TREE_OPERAND (_q101, 0);
14991 : 0 : tree _q121 = TREE_OPERAND (_q101, 1);
14992 : 0 : tree _q122 = TREE_OPERAND (_q101, 2);
14993 : 0 : switch (TREE_CODE (_q120))
14994 : : {
14995 : 0 : case EQ_EXPR:
14996 : 0 : {
14997 : 0 : tree _q130 = TREE_OPERAND (_q120, 0);
14998 : 0 : tree _q131 = TREE_OPERAND (_q120, 1);
14999 : 0 : if ((_q130 == _q50 && ! TREE_SIDE_EFFECTS (_q130)) || (operand_equal_p (_q130, _q50, 0) && types_match (_q130, _q50)))
15000 : : {
15001 : 0 : if ((_q131 == _q51 && ! TREE_SIDE_EFFECTS (_q131)) || (operand_equal_p (_q131, _q51, 0) && types_match (_q131, _q51)))
15002 : : {
15003 : 0 : if ((_q121 == _q41 && ! TREE_SIDE_EFFECTS (_q121)) || (operand_equal_p (_q121, _q41, 0) && types_match (_q121, _q41)))
15004 : : {
15005 : 0 : if ((_q122 == _q42 && ! TREE_SIDE_EFFECTS (_q122)) || (operand_equal_p (_q122, _q42, 0) && types_match (_q122, _q42)))
15006 : : {
15007 : 0 : {
15008 : 0 : tree captures[10] ATTRIBUTE_UNUSED = { _q21, _q40, _q50, _q51, _q41, _q42, _q20, _q101, _q120, _q100 };
15009 : 0 : tree res = generic_simplify_120 (loc, type, _p0, _p1, captures, NE_EXPR, EQ_EXPR);
15010 : 0 : if (res) return res;
15011 : : }
15012 : : }
15013 : : }
15014 : : }
15015 : : }
15016 : : break;
15017 : : }
15018 : : default:;
15019 : : }
15020 : : break;
15021 : : }
15022 : : default:;
15023 : : }
15024 : : break;
15025 : : }
15026 : : default:;
15027 : : }
15028 : : break;
15029 : : }
15030 : 0 : case GE_EXPR:
15031 : 0 : {
15032 : 0 : tree _q50 = TREE_OPERAND (_q40, 0);
15033 : 0 : tree _q51 = TREE_OPERAND (_q40, 1);
15034 : 0 : switch (TREE_CODE (_p1))
15035 : : {
15036 : 0 : case BIT_AND_EXPR:
15037 : 0 : {
15038 : 0 : tree _q100 = TREE_OPERAND (_p1, 0);
15039 : 0 : tree _q101 = TREE_OPERAND (_p1, 1);
15040 : 0 : switch (TREE_CODE (_q100))
15041 : : {
15042 : 0 : case VEC_COND_EXPR:
15043 : 0 : {
15044 : 0 : tree _q110 = TREE_OPERAND (_q100, 0);
15045 : 0 : tree _q111 = TREE_OPERAND (_q100, 1);
15046 : 0 : tree _q112 = TREE_OPERAND (_q100, 2);
15047 : 0 : switch (TREE_CODE (_q110))
15048 : : {
15049 : 0 : case LT_EXPR:
15050 : 0 : {
15051 : 0 : tree _q120 = TREE_OPERAND (_q110, 0);
15052 : 0 : tree _q121 = TREE_OPERAND (_q110, 1);
15053 : 0 : if ((_q120 == _q50 && ! TREE_SIDE_EFFECTS (_q120)) || (operand_equal_p (_q120, _q50, 0) && types_match (_q120, _q50)))
15054 : : {
15055 : 0 : if ((_q121 == _q51 && ! TREE_SIDE_EFFECTS (_q121)) || (operand_equal_p (_q121, _q51, 0) && types_match (_q121, _q51)))
15056 : : {
15057 : 0 : if ((_q111 == _q41 && ! TREE_SIDE_EFFECTS (_q111)) || (operand_equal_p (_q111, _q41, 0) && types_match (_q111, _q41)))
15058 : : {
15059 : 0 : if ((_q112 == _q42 && ! TREE_SIDE_EFFECTS (_q112)) || (operand_equal_p (_q112, _q42, 0) && types_match (_q112, _q42)))
15060 : : {
15061 : 0 : {
15062 : 0 : tree captures[10] ATTRIBUTE_UNUSED = { _q21, _q40, _q50, _q51, _q41, _q42, _q20, _q100, _q110, _q101 };
15063 : 0 : tree res = generic_simplify_120 (loc, type, _p0, _p1, captures, GE_EXPR, LT_EXPR);
15064 : 0 : if (res) return res;
15065 : : }
15066 : : }
15067 : : }
15068 : : }
15069 : : }
15070 : : break;
15071 : : }
15072 : : default:;
15073 : : }
15074 : : break;
15075 : : }
15076 : 0 : default:;
15077 : : }
15078 : 0 : switch (TREE_CODE (_q101))
15079 : : {
15080 : 0 : case VEC_COND_EXPR:
15081 : 0 : {
15082 : 0 : tree _q120 = TREE_OPERAND (_q101, 0);
15083 : 0 : tree _q121 = TREE_OPERAND (_q101, 1);
15084 : 0 : tree _q122 = TREE_OPERAND (_q101, 2);
15085 : 0 : switch (TREE_CODE (_q120))
15086 : : {
15087 : 0 : case LT_EXPR:
15088 : 0 : {
15089 : 0 : tree _q130 = TREE_OPERAND (_q120, 0);
15090 : 0 : tree _q131 = TREE_OPERAND (_q120, 1);
15091 : 0 : if ((_q130 == _q50 && ! TREE_SIDE_EFFECTS (_q130)) || (operand_equal_p (_q130, _q50, 0) && types_match (_q130, _q50)))
15092 : : {
15093 : 0 : if ((_q131 == _q51 && ! TREE_SIDE_EFFECTS (_q131)) || (operand_equal_p (_q131, _q51, 0) && types_match (_q131, _q51)))
15094 : : {
15095 : 0 : if ((_q121 == _q41 && ! TREE_SIDE_EFFECTS (_q121)) || (operand_equal_p (_q121, _q41, 0) && types_match (_q121, _q41)))
15096 : : {
15097 : 0 : if ((_q122 == _q42 && ! TREE_SIDE_EFFECTS (_q122)) || (operand_equal_p (_q122, _q42, 0) && types_match (_q122, _q42)))
15098 : : {
15099 : 0 : {
15100 : 0 : tree captures[10] ATTRIBUTE_UNUSED = { _q21, _q40, _q50, _q51, _q41, _q42, _q20, _q101, _q120, _q100 };
15101 : 0 : tree res = generic_simplify_120 (loc, type, _p0, _p1, captures, GE_EXPR, LT_EXPR);
15102 : 0 : if (res) return res;
15103 : : }
15104 : : }
15105 : : }
15106 : : }
15107 : : }
15108 : : break;
15109 : : }
15110 : : default:;
15111 : : }
15112 : : break;
15113 : : }
15114 : : default:;
15115 : : }
15116 : : break;
15117 : : }
15118 : : default:;
15119 : : }
15120 : : break;
15121 : : }
15122 : 0 : case GT_EXPR:
15123 : 0 : {
15124 : 0 : tree _q50 = TREE_OPERAND (_q40, 0);
15125 : 0 : tree _q51 = TREE_OPERAND (_q40, 1);
15126 : 0 : switch (TREE_CODE (_p1))
15127 : : {
15128 : 0 : case BIT_AND_EXPR:
15129 : 0 : {
15130 : 0 : tree _q100 = TREE_OPERAND (_p1, 0);
15131 : 0 : tree _q101 = TREE_OPERAND (_p1, 1);
15132 : 0 : switch (TREE_CODE (_q100))
15133 : : {
15134 : 0 : case VEC_COND_EXPR:
15135 : 0 : {
15136 : 0 : tree _q110 = TREE_OPERAND (_q100, 0);
15137 : 0 : tree _q111 = TREE_OPERAND (_q100, 1);
15138 : 0 : tree _q112 = TREE_OPERAND (_q100, 2);
15139 : 0 : switch (TREE_CODE (_q110))
15140 : : {
15141 : 0 : case LE_EXPR:
15142 : 0 : {
15143 : 0 : tree _q120 = TREE_OPERAND (_q110, 0);
15144 : 0 : tree _q121 = TREE_OPERAND (_q110, 1);
15145 : 0 : if ((_q120 == _q50 && ! TREE_SIDE_EFFECTS (_q120)) || (operand_equal_p (_q120, _q50, 0) && types_match (_q120, _q50)))
15146 : : {
15147 : 0 : if ((_q121 == _q51 && ! TREE_SIDE_EFFECTS (_q121)) || (operand_equal_p (_q121, _q51, 0) && types_match (_q121, _q51)))
15148 : : {
15149 : 0 : if ((_q111 == _q41 && ! TREE_SIDE_EFFECTS (_q111)) || (operand_equal_p (_q111, _q41, 0) && types_match (_q111, _q41)))
15150 : : {
15151 : 0 : if ((_q112 == _q42 && ! TREE_SIDE_EFFECTS (_q112)) || (operand_equal_p (_q112, _q42, 0) && types_match (_q112, _q42)))
15152 : : {
15153 : 0 : {
15154 : 0 : tree captures[10] ATTRIBUTE_UNUSED = { _q21, _q40, _q50, _q51, _q41, _q42, _q20, _q100, _q110, _q101 };
15155 : 0 : tree res = generic_simplify_120 (loc, type, _p0, _p1, captures, GT_EXPR, LE_EXPR);
15156 : 0 : if (res) return res;
15157 : : }
15158 : : }
15159 : : }
15160 : : }
15161 : : }
15162 : : break;
15163 : : }
15164 : : default:;
15165 : : }
15166 : : break;
15167 : : }
15168 : 0 : default:;
15169 : : }
15170 : 0 : switch (TREE_CODE (_q101))
15171 : : {
15172 : 0 : case VEC_COND_EXPR:
15173 : 0 : {
15174 : 0 : tree _q120 = TREE_OPERAND (_q101, 0);
15175 : 0 : tree _q121 = TREE_OPERAND (_q101, 1);
15176 : 0 : tree _q122 = TREE_OPERAND (_q101, 2);
15177 : 0 : switch (TREE_CODE (_q120))
15178 : : {
15179 : 0 : case LE_EXPR:
15180 : 0 : {
15181 : 0 : tree _q130 = TREE_OPERAND (_q120, 0);
15182 : 0 : tree _q131 = TREE_OPERAND (_q120, 1);
15183 : 0 : if ((_q130 == _q50 && ! TREE_SIDE_EFFECTS (_q130)) || (operand_equal_p (_q130, _q50, 0) && types_match (_q130, _q50)))
15184 : : {
15185 : 0 : if ((_q131 == _q51 && ! TREE_SIDE_EFFECTS (_q131)) || (operand_equal_p (_q131, _q51, 0) && types_match (_q131, _q51)))
15186 : : {
15187 : 0 : if ((_q121 == _q41 && ! TREE_SIDE_EFFECTS (_q121)) || (operand_equal_p (_q121, _q41, 0) && types_match (_q121, _q41)))
15188 : : {
15189 : 0 : if ((_q122 == _q42 && ! TREE_SIDE_EFFECTS (_q122)) || (operand_equal_p (_q122, _q42, 0) && types_match (_q122, _q42)))
15190 : : {
15191 : 0 : {
15192 : 0 : tree captures[10] ATTRIBUTE_UNUSED = { _q21, _q40, _q50, _q51, _q41, _q42, _q20, _q101, _q120, _q100 };
15193 : 0 : tree res = generic_simplify_120 (loc, type, _p0, _p1, captures, GT_EXPR, LE_EXPR);
15194 : 0 : if (res) return res;
15195 : : }
15196 : : }
15197 : : }
15198 : : }
15199 : : }
15200 : : break;
15201 : : }
15202 : : default:;
15203 : : }
15204 : : break;
15205 : : }
15206 : : default:;
15207 : : }
15208 : : break;
15209 : : }
15210 : : default:;
15211 : : }
15212 : : break;
15213 : : }
15214 : 0 : case UNORDERED_EXPR:
15215 : 0 : {
15216 : 0 : tree _q50 = TREE_OPERAND (_q40, 0);
15217 : 0 : tree _q51 = TREE_OPERAND (_q40, 1);
15218 : 0 : switch (TREE_CODE (_p1))
15219 : : {
15220 : 0 : case BIT_AND_EXPR:
15221 : 0 : {
15222 : 0 : tree _q100 = TREE_OPERAND (_p1, 0);
15223 : 0 : tree _q101 = TREE_OPERAND (_p1, 1);
15224 : 0 : switch (TREE_CODE (_q100))
15225 : : {
15226 : 0 : case VEC_COND_EXPR:
15227 : 0 : {
15228 : 0 : tree _q110 = TREE_OPERAND (_q100, 0);
15229 : 0 : tree _q111 = TREE_OPERAND (_q100, 1);
15230 : 0 : tree _q112 = TREE_OPERAND (_q100, 2);
15231 : 0 : switch (TREE_CODE (_q110))
15232 : : {
15233 : 0 : case ORDERED_EXPR:
15234 : 0 : {
15235 : 0 : tree _q120 = TREE_OPERAND (_q110, 0);
15236 : 0 : tree _q121 = TREE_OPERAND (_q110, 1);
15237 : 0 : if ((_q120 == _q50 && ! TREE_SIDE_EFFECTS (_q120)) || (operand_equal_p (_q120, _q50, 0) && types_match (_q120, _q50)))
15238 : : {
15239 : 0 : if ((_q121 == _q51 && ! TREE_SIDE_EFFECTS (_q121)) || (operand_equal_p (_q121, _q51, 0) && types_match (_q121, _q51)))
15240 : : {
15241 : 0 : if ((_q111 == _q41 && ! TREE_SIDE_EFFECTS (_q111)) || (operand_equal_p (_q111, _q41, 0) && types_match (_q111, _q41)))
15242 : : {
15243 : 0 : if ((_q112 == _q42 && ! TREE_SIDE_EFFECTS (_q112)) || (operand_equal_p (_q112, _q42, 0) && types_match (_q112, _q42)))
15244 : : {
15245 : 0 : {
15246 : 0 : tree captures[10] ATTRIBUTE_UNUSED = { _q21, _q40, _q50, _q51, _q41, _q42, _q20, _q100, _q110, _q101 };
15247 : 0 : tree res = generic_simplify_120 (loc, type, _p0, _p1, captures, UNORDERED_EXPR, ORDERED_EXPR);
15248 : 0 : if (res) return res;
15249 : : }
15250 : : }
15251 : : }
15252 : : }
15253 : : }
15254 : : break;
15255 : : }
15256 : : default:;
15257 : : }
15258 : : break;
15259 : : }
15260 : 0 : default:;
15261 : : }
15262 : 0 : switch (TREE_CODE (_q101))
15263 : : {
15264 : 0 : case VEC_COND_EXPR:
15265 : 0 : {
15266 : 0 : tree _q120 = TREE_OPERAND (_q101, 0);
15267 : 0 : tree _q121 = TREE_OPERAND (_q101, 1);
15268 : 0 : tree _q122 = TREE_OPERAND (_q101, 2);
15269 : 0 : switch (TREE_CODE (_q120))
15270 : : {
15271 : 0 : case ORDERED_EXPR:
15272 : 0 : {
15273 : 0 : tree _q130 = TREE_OPERAND (_q120, 0);
15274 : 0 : tree _q131 = TREE_OPERAND (_q120, 1);
15275 : 0 : if ((_q130 == _q50 && ! TREE_SIDE_EFFECTS (_q130)) || (operand_equal_p (_q130, _q50, 0) && types_match (_q130, _q50)))
15276 : : {
15277 : 0 : if ((_q131 == _q51 && ! TREE_SIDE_EFFECTS (_q131)) || (operand_equal_p (_q131, _q51, 0) && types_match (_q131, _q51)))
15278 : : {
15279 : 0 : if ((_q121 == _q41 && ! TREE_SIDE_EFFECTS (_q121)) || (operand_equal_p (_q121, _q41, 0) && types_match (_q121, _q41)))
15280 : : {
15281 : 0 : if ((_q122 == _q42 && ! TREE_SIDE_EFFECTS (_q122)) || (operand_equal_p (_q122, _q42, 0) && types_match (_q122, _q42)))
15282 : : {
15283 : 0 : {
15284 : 0 : tree captures[10] ATTRIBUTE_UNUSED = { _q21, _q40, _q50, _q51, _q41, _q42, _q20, _q101, _q120, _q100 };
15285 : 0 : tree res = generic_simplify_120 (loc, type, _p0, _p1, captures, UNORDERED_EXPR, ORDERED_EXPR);
15286 : 0 : if (res) return res;
15287 : : }
15288 : : }
15289 : : }
15290 : : }
15291 : : }
15292 : : break;
15293 : : }
15294 : : default:;
15295 : : }
15296 : : break;
15297 : : }
15298 : : default:;
15299 : : }
15300 : : break;
15301 : : }
15302 : : default:;
15303 : : }
15304 : : break;
15305 : : }
15306 : 0 : case ORDERED_EXPR:
15307 : 0 : {
15308 : 0 : tree _q50 = TREE_OPERAND (_q40, 0);
15309 : 0 : tree _q51 = TREE_OPERAND (_q40, 1);
15310 : 0 : switch (TREE_CODE (_p1))
15311 : : {
15312 : 0 : case BIT_AND_EXPR:
15313 : 0 : {
15314 : 0 : tree _q100 = TREE_OPERAND (_p1, 0);
15315 : 0 : tree _q101 = TREE_OPERAND (_p1, 1);
15316 : 0 : switch (TREE_CODE (_q100))
15317 : : {
15318 : 0 : case VEC_COND_EXPR:
15319 : 0 : {
15320 : 0 : tree _q110 = TREE_OPERAND (_q100, 0);
15321 : 0 : tree _q111 = TREE_OPERAND (_q100, 1);
15322 : 0 : tree _q112 = TREE_OPERAND (_q100, 2);
15323 : 0 : switch (TREE_CODE (_q110))
15324 : : {
15325 : 0 : case UNORDERED_EXPR:
15326 : 0 : {
15327 : 0 : tree _q120 = TREE_OPERAND (_q110, 0);
15328 : 0 : tree _q121 = TREE_OPERAND (_q110, 1);
15329 : 0 : if ((_q120 == _q50 && ! TREE_SIDE_EFFECTS (_q120)) || (operand_equal_p (_q120, _q50, 0) && types_match (_q120, _q50)))
15330 : : {
15331 : 0 : if ((_q121 == _q51 && ! TREE_SIDE_EFFECTS (_q121)) || (operand_equal_p (_q121, _q51, 0) && types_match (_q121, _q51)))
15332 : : {
15333 : 0 : if ((_q111 == _q41 && ! TREE_SIDE_EFFECTS (_q111)) || (operand_equal_p (_q111, _q41, 0) && types_match (_q111, _q41)))
15334 : : {
15335 : 0 : if ((_q112 == _q42 && ! TREE_SIDE_EFFECTS (_q112)) || (operand_equal_p (_q112, _q42, 0) && types_match (_q112, _q42)))
15336 : : {
15337 : 0 : {
15338 : 0 : tree captures[10] ATTRIBUTE_UNUSED = { _q21, _q40, _q50, _q51, _q41, _q42, _q20, _q100, _q110, _q101 };
15339 : 0 : tree res = generic_simplify_120 (loc, type, _p0, _p1, captures, ORDERED_EXPR, UNORDERED_EXPR);
15340 : 0 : if (res) return res;
15341 : : }
15342 : : }
15343 : : }
15344 : : }
15345 : : }
15346 : : break;
15347 : : }
15348 : : default:;
15349 : : }
15350 : : break;
15351 : : }
15352 : 0 : default:;
15353 : : }
15354 : 0 : switch (TREE_CODE (_q101))
15355 : : {
15356 : 0 : case VEC_COND_EXPR:
15357 : 0 : {
15358 : 0 : tree _q120 = TREE_OPERAND (_q101, 0);
15359 : 0 : tree _q121 = TREE_OPERAND (_q101, 1);
15360 : 0 : tree _q122 = TREE_OPERAND (_q101, 2);
15361 : 0 : switch (TREE_CODE (_q120))
15362 : : {
15363 : 0 : case UNORDERED_EXPR:
15364 : 0 : {
15365 : 0 : tree _q130 = TREE_OPERAND (_q120, 0);
15366 : 0 : tree _q131 = TREE_OPERAND (_q120, 1);
15367 : 0 : if ((_q130 == _q50 && ! TREE_SIDE_EFFECTS (_q130)) || (operand_equal_p (_q130, _q50, 0) && types_match (_q130, _q50)))
15368 : : {
15369 : 0 : if ((_q131 == _q51 && ! TREE_SIDE_EFFECTS (_q131)) || (operand_equal_p (_q131, _q51, 0) && types_match (_q131, _q51)))
15370 : : {
15371 : 0 : if ((_q121 == _q41 && ! TREE_SIDE_EFFECTS (_q121)) || (operand_equal_p (_q121, _q41, 0) && types_match (_q121, _q41)))
15372 : : {
15373 : 0 : if ((_q122 == _q42 && ! TREE_SIDE_EFFECTS (_q122)) || (operand_equal_p (_q122, _q42, 0) && types_match (_q122, _q42)))
15374 : : {
15375 : 0 : {
15376 : 0 : tree captures[10] ATTRIBUTE_UNUSED = { _q21, _q40, _q50, _q51, _q41, _q42, _q20, _q101, _q120, _q100 };
15377 : 0 : tree res = generic_simplify_120 (loc, type, _p0, _p1, captures, ORDERED_EXPR, UNORDERED_EXPR);
15378 : 0 : if (res) return res;
15379 : : }
15380 : : }
15381 : : }
15382 : : }
15383 : : }
15384 : : break;
15385 : : }
15386 : : default:;
15387 : : }
15388 : : break;
15389 : : }
15390 : : default:;
15391 : : }
15392 : : break;
15393 : : }
15394 : : default:;
15395 : : }
15396 : : break;
15397 : : }
15398 : 0 : case UNLT_EXPR:
15399 : 0 : {
15400 : 0 : tree _q50 = TREE_OPERAND (_q40, 0);
15401 : 0 : tree _q51 = TREE_OPERAND (_q40, 1);
15402 : 0 : switch (TREE_CODE (_p1))
15403 : : {
15404 : 0 : case BIT_AND_EXPR:
15405 : 0 : {
15406 : 0 : tree _q100 = TREE_OPERAND (_p1, 0);
15407 : 0 : tree _q101 = TREE_OPERAND (_p1, 1);
15408 : 0 : switch (TREE_CODE (_q100))
15409 : : {
15410 : 0 : case VEC_COND_EXPR:
15411 : 0 : {
15412 : 0 : tree _q110 = TREE_OPERAND (_q100, 0);
15413 : 0 : tree _q111 = TREE_OPERAND (_q100, 1);
15414 : 0 : tree _q112 = TREE_OPERAND (_q100, 2);
15415 : 0 : switch (TREE_CODE (_q110))
15416 : : {
15417 : 0 : case GE_EXPR:
15418 : 0 : {
15419 : 0 : tree _q120 = TREE_OPERAND (_q110, 0);
15420 : 0 : tree _q121 = TREE_OPERAND (_q110, 1);
15421 : 0 : if ((_q120 == _q50 && ! TREE_SIDE_EFFECTS (_q120)) || (operand_equal_p (_q120, _q50, 0) && types_match (_q120, _q50)))
15422 : : {
15423 : 0 : if ((_q121 == _q51 && ! TREE_SIDE_EFFECTS (_q121)) || (operand_equal_p (_q121, _q51, 0) && types_match (_q121, _q51)))
15424 : : {
15425 : 0 : if ((_q111 == _q41 && ! TREE_SIDE_EFFECTS (_q111)) || (operand_equal_p (_q111, _q41, 0) && types_match (_q111, _q41)))
15426 : : {
15427 : 0 : if ((_q112 == _q42 && ! TREE_SIDE_EFFECTS (_q112)) || (operand_equal_p (_q112, _q42, 0) && types_match (_q112, _q42)))
15428 : : {
15429 : 0 : {
15430 : 0 : tree captures[10] ATTRIBUTE_UNUSED = { _q21, _q40, _q50, _q51, _q41, _q42, _q20, _q100, _q110, _q101 };
15431 : 0 : tree res = generic_simplify_120 (loc, type, _p0, _p1, captures, UNLT_EXPR, GE_EXPR);
15432 : 0 : if (res) return res;
15433 : : }
15434 : : }
15435 : : }
15436 : : }
15437 : : }
15438 : : break;
15439 : : }
15440 : : default:;
15441 : : }
15442 : : break;
15443 : : }
15444 : 0 : default:;
15445 : : }
15446 : 0 : switch (TREE_CODE (_q101))
15447 : : {
15448 : 0 : case VEC_COND_EXPR:
15449 : 0 : {
15450 : 0 : tree _q120 = TREE_OPERAND (_q101, 0);
15451 : 0 : tree _q121 = TREE_OPERAND (_q101, 1);
15452 : 0 : tree _q122 = TREE_OPERAND (_q101, 2);
15453 : 0 : switch (TREE_CODE (_q120))
15454 : : {
15455 : 0 : case GE_EXPR:
15456 : 0 : {
15457 : 0 : tree _q130 = TREE_OPERAND (_q120, 0);
15458 : 0 : tree _q131 = TREE_OPERAND (_q120, 1);
15459 : 0 : if ((_q130 == _q50 && ! TREE_SIDE_EFFECTS (_q130)) || (operand_equal_p (_q130, _q50, 0) && types_match (_q130, _q50)))
15460 : : {
15461 : 0 : if ((_q131 == _q51 && ! TREE_SIDE_EFFECTS (_q131)) || (operand_equal_p (_q131, _q51, 0) && types_match (_q131, _q51)))
15462 : : {
15463 : 0 : if ((_q121 == _q41 && ! TREE_SIDE_EFFECTS (_q121)) || (operand_equal_p (_q121, _q41, 0) && types_match (_q121, _q41)))
15464 : : {
15465 : 0 : if ((_q122 == _q42 && ! TREE_SIDE_EFFECTS (_q122)) || (operand_equal_p (_q122, _q42, 0) && types_match (_q122, _q42)))
15466 : : {
15467 : 0 : {
15468 : 0 : tree captures[10] ATTRIBUTE_UNUSED = { _q21, _q40, _q50, _q51, _q41, _q42, _q20, _q101, _q120, _q100 };
15469 : 0 : tree res = generic_simplify_120 (loc, type, _p0, _p1, captures, UNLT_EXPR, GE_EXPR);
15470 : 0 : if (res) return res;
15471 : : }
15472 : : }
15473 : : }
15474 : : }
15475 : : }
15476 : : break;
15477 : : }
15478 : : default:;
15479 : : }
15480 : : break;
15481 : : }
15482 : : default:;
15483 : : }
15484 : : break;
15485 : : }
15486 : : default:;
15487 : : }
15488 : : break;
15489 : : }
15490 : 0 : case UNLE_EXPR:
15491 : 0 : {
15492 : 0 : tree _q50 = TREE_OPERAND (_q40, 0);
15493 : 0 : tree _q51 = TREE_OPERAND (_q40, 1);
15494 : 0 : switch (TREE_CODE (_p1))
15495 : : {
15496 : 0 : case BIT_AND_EXPR:
15497 : 0 : {
15498 : 0 : tree _q100 = TREE_OPERAND (_p1, 0);
15499 : 0 : tree _q101 = TREE_OPERAND (_p1, 1);
15500 : 0 : switch (TREE_CODE (_q100))
15501 : : {
15502 : 0 : case VEC_COND_EXPR:
15503 : 0 : {
15504 : 0 : tree _q110 = TREE_OPERAND (_q100, 0);
15505 : 0 : tree _q111 = TREE_OPERAND (_q100, 1);
15506 : 0 : tree _q112 = TREE_OPERAND (_q100, 2);
15507 : 0 : switch (TREE_CODE (_q110))
15508 : : {
15509 : 0 : case GT_EXPR:
15510 : 0 : {
15511 : 0 : tree _q120 = TREE_OPERAND (_q110, 0);
15512 : 0 : tree _q121 = TREE_OPERAND (_q110, 1);
15513 : 0 : if ((_q120 == _q50 && ! TREE_SIDE_EFFECTS (_q120)) || (operand_equal_p (_q120, _q50, 0) && types_match (_q120, _q50)))
15514 : : {
15515 : 0 : if ((_q121 == _q51 && ! TREE_SIDE_EFFECTS (_q121)) || (operand_equal_p (_q121, _q51, 0) && types_match (_q121, _q51)))
15516 : : {
15517 : 0 : if ((_q111 == _q41 && ! TREE_SIDE_EFFECTS (_q111)) || (operand_equal_p (_q111, _q41, 0) && types_match (_q111, _q41)))
15518 : : {
15519 : 0 : if ((_q112 == _q42 && ! TREE_SIDE_EFFECTS (_q112)) || (operand_equal_p (_q112, _q42, 0) && types_match (_q112, _q42)))
15520 : : {
15521 : 0 : {
15522 : 0 : tree captures[10] ATTRIBUTE_UNUSED = { _q21, _q40, _q50, _q51, _q41, _q42, _q20, _q100, _q110, _q101 };
15523 : 0 : tree res = generic_simplify_120 (loc, type, _p0, _p1, captures, UNLE_EXPR, GT_EXPR);
15524 : 0 : if (res) return res;
15525 : : }
15526 : : }
15527 : : }
15528 : : }
15529 : : }
15530 : : break;
15531 : : }
15532 : : default:;
15533 : : }
15534 : : break;
15535 : : }
15536 : 0 : default:;
15537 : : }
15538 : 0 : switch (TREE_CODE (_q101))
15539 : : {
15540 : 0 : case VEC_COND_EXPR:
15541 : 0 : {
15542 : 0 : tree _q120 = TREE_OPERAND (_q101, 0);
15543 : 0 : tree _q121 = TREE_OPERAND (_q101, 1);
15544 : 0 : tree _q122 = TREE_OPERAND (_q101, 2);
15545 : 0 : switch (TREE_CODE (_q120))
15546 : : {
15547 : 0 : case GT_EXPR:
15548 : 0 : {
15549 : 0 : tree _q130 = TREE_OPERAND (_q120, 0);
15550 : 0 : tree _q131 = TREE_OPERAND (_q120, 1);
15551 : 0 : if ((_q130 == _q50 && ! TREE_SIDE_EFFECTS (_q130)) || (operand_equal_p (_q130, _q50, 0) && types_match (_q130, _q50)))
15552 : : {
15553 : 0 : if ((_q131 == _q51 && ! TREE_SIDE_EFFECTS (_q131)) || (operand_equal_p (_q131, _q51, 0) && types_match (_q131, _q51)))
15554 : : {
15555 : 0 : if ((_q121 == _q41 && ! TREE_SIDE_EFFECTS (_q121)) || (operand_equal_p (_q121, _q41, 0) && types_match (_q121, _q41)))
15556 : : {
15557 : 0 : if ((_q122 == _q42 && ! TREE_SIDE_EFFECTS (_q122)) || (operand_equal_p (_q122, _q42, 0) && types_match (_q122, _q42)))
15558 : : {
15559 : 0 : {
15560 : 0 : tree captures[10] ATTRIBUTE_UNUSED = { _q21, _q40, _q50, _q51, _q41, _q42, _q20, _q101, _q120, _q100 };
15561 : 0 : tree res = generic_simplify_120 (loc, type, _p0, _p1, captures, UNLE_EXPR, GT_EXPR);
15562 : 0 : if (res) return res;
15563 : : }
15564 : : }
15565 : : }
15566 : : }
15567 : : }
15568 : : break;
15569 : : }
15570 : : default:;
15571 : : }
15572 : : break;
15573 : : }
15574 : : default:;
15575 : : }
15576 : : break;
15577 : : }
15578 : : default:;
15579 : : }
15580 : : break;
15581 : : }
15582 : 0 : case UNGT_EXPR:
15583 : 0 : {
15584 : 0 : tree _q50 = TREE_OPERAND (_q40, 0);
15585 : 0 : tree _q51 = TREE_OPERAND (_q40, 1);
15586 : 0 : switch (TREE_CODE (_p1))
15587 : : {
15588 : 0 : case BIT_AND_EXPR:
15589 : 0 : {
15590 : 0 : tree _q100 = TREE_OPERAND (_p1, 0);
15591 : 0 : tree _q101 = TREE_OPERAND (_p1, 1);
15592 : 0 : switch (TREE_CODE (_q100))
15593 : : {
15594 : 0 : case VEC_COND_EXPR:
15595 : 0 : {
15596 : 0 : tree _q110 = TREE_OPERAND (_q100, 0);
15597 : 0 : tree _q111 = TREE_OPERAND (_q100, 1);
15598 : 0 : tree _q112 = TREE_OPERAND (_q100, 2);
15599 : 0 : switch (TREE_CODE (_q110))
15600 : : {
15601 : 0 : case LE_EXPR:
15602 : 0 : {
15603 : 0 : tree _q120 = TREE_OPERAND (_q110, 0);
15604 : 0 : tree _q121 = TREE_OPERAND (_q110, 1);
15605 : 0 : if ((_q120 == _q50 && ! TREE_SIDE_EFFECTS (_q120)) || (operand_equal_p (_q120, _q50, 0) && types_match (_q120, _q50)))
15606 : : {
15607 : 0 : if ((_q121 == _q51 && ! TREE_SIDE_EFFECTS (_q121)) || (operand_equal_p (_q121, _q51, 0) && types_match (_q121, _q51)))
15608 : : {
15609 : 0 : if ((_q111 == _q41 && ! TREE_SIDE_EFFECTS (_q111)) || (operand_equal_p (_q111, _q41, 0) && types_match (_q111, _q41)))
15610 : : {
15611 : 0 : if ((_q112 == _q42 && ! TREE_SIDE_EFFECTS (_q112)) || (operand_equal_p (_q112, _q42, 0) && types_match (_q112, _q42)))
15612 : : {
15613 : 0 : {
15614 : 0 : tree captures[10] ATTRIBUTE_UNUSED = { _q21, _q40, _q50, _q51, _q41, _q42, _q20, _q100, _q110, _q101 };
15615 : 0 : tree res = generic_simplify_120 (loc, type, _p0, _p1, captures, UNGT_EXPR, LE_EXPR);
15616 : 0 : if (res) return res;
15617 : : }
15618 : : }
15619 : : }
15620 : : }
15621 : : }
15622 : : break;
15623 : : }
15624 : : default:;
15625 : : }
15626 : : break;
15627 : : }
15628 : 0 : default:;
15629 : : }
15630 : 0 : switch (TREE_CODE (_q101))
15631 : : {
15632 : 0 : case VEC_COND_EXPR:
15633 : 0 : {
15634 : 0 : tree _q120 = TREE_OPERAND (_q101, 0);
15635 : 0 : tree _q121 = TREE_OPERAND (_q101, 1);
15636 : 0 : tree _q122 = TREE_OPERAND (_q101, 2);
15637 : 0 : switch (TREE_CODE (_q120))
15638 : : {
15639 : 0 : case LE_EXPR:
15640 : 0 : {
15641 : 0 : tree _q130 = TREE_OPERAND (_q120, 0);
15642 : 0 : tree _q131 = TREE_OPERAND (_q120, 1);
15643 : 0 : if ((_q130 == _q50 && ! TREE_SIDE_EFFECTS (_q130)) || (operand_equal_p (_q130, _q50, 0) && types_match (_q130, _q50)))
15644 : : {
15645 : 0 : if ((_q131 == _q51 && ! TREE_SIDE_EFFECTS (_q131)) || (operand_equal_p (_q131, _q51, 0) && types_match (_q131, _q51)))
15646 : : {
15647 : 0 : if ((_q121 == _q41 && ! TREE_SIDE_EFFECTS (_q121)) || (operand_equal_p (_q121, _q41, 0) && types_match (_q121, _q41)))
15648 : : {
15649 : 0 : if ((_q122 == _q42 && ! TREE_SIDE_EFFECTS (_q122)) || (operand_equal_p (_q122, _q42, 0) && types_match (_q122, _q42)))
15650 : : {
15651 : 0 : {
15652 : 0 : tree captures[10] ATTRIBUTE_UNUSED = { _q21, _q40, _q50, _q51, _q41, _q42, _q20, _q101, _q120, _q100 };
15653 : 0 : tree res = generic_simplify_120 (loc, type, _p0, _p1, captures, UNGT_EXPR, LE_EXPR);
15654 : 0 : if (res) return res;
15655 : : }
15656 : : }
15657 : : }
15658 : : }
15659 : : }
15660 : : break;
15661 : : }
15662 : : default:;
15663 : : }
15664 : : break;
15665 : : }
15666 : : default:;
15667 : : }
15668 : : break;
15669 : : }
15670 : : default:;
15671 : : }
15672 : : break;
15673 : : }
15674 : 0 : case UNGE_EXPR:
15675 : 0 : {
15676 : 0 : tree _q50 = TREE_OPERAND (_q40, 0);
15677 : 0 : tree _q51 = TREE_OPERAND (_q40, 1);
15678 : 0 : switch (TREE_CODE (_p1))
15679 : : {
15680 : 0 : case BIT_AND_EXPR:
15681 : 0 : {
15682 : 0 : tree _q100 = TREE_OPERAND (_p1, 0);
15683 : 0 : tree _q101 = TREE_OPERAND (_p1, 1);
15684 : 0 : switch (TREE_CODE (_q100))
15685 : : {
15686 : 0 : case VEC_COND_EXPR:
15687 : 0 : {
15688 : 0 : tree _q110 = TREE_OPERAND (_q100, 0);
15689 : 0 : tree _q111 = TREE_OPERAND (_q100, 1);
15690 : 0 : tree _q112 = TREE_OPERAND (_q100, 2);
15691 : 0 : switch (TREE_CODE (_q110))
15692 : : {
15693 : 0 : case LT_EXPR:
15694 : 0 : {
15695 : 0 : tree _q120 = TREE_OPERAND (_q110, 0);
15696 : 0 : tree _q121 = TREE_OPERAND (_q110, 1);
15697 : 0 : if ((_q120 == _q50 && ! TREE_SIDE_EFFECTS (_q120)) || (operand_equal_p (_q120, _q50, 0) && types_match (_q120, _q50)))
15698 : : {
15699 : 0 : if ((_q121 == _q51 && ! TREE_SIDE_EFFECTS (_q121)) || (operand_equal_p (_q121, _q51, 0) && types_match (_q121, _q51)))
15700 : : {
15701 : 0 : if ((_q111 == _q41 && ! TREE_SIDE_EFFECTS (_q111)) || (operand_equal_p (_q111, _q41, 0) && types_match (_q111, _q41)))
15702 : : {
15703 : 0 : if ((_q112 == _q42 && ! TREE_SIDE_EFFECTS (_q112)) || (operand_equal_p (_q112, _q42, 0) && types_match (_q112, _q42)))
15704 : : {
15705 : 0 : {
15706 : 0 : tree captures[10] ATTRIBUTE_UNUSED = { _q21, _q40, _q50, _q51, _q41, _q42, _q20, _q100, _q110, _q101 };
15707 : 0 : tree res = generic_simplify_120 (loc, type, _p0, _p1, captures, UNGE_EXPR, LT_EXPR);
15708 : 0 : if (res) return res;
15709 : : }
15710 : : }
15711 : : }
15712 : : }
15713 : : }
15714 : : break;
15715 : : }
15716 : : default:;
15717 : : }
15718 : : break;
15719 : : }
15720 : 0 : default:;
15721 : : }
15722 : 0 : switch (TREE_CODE (_q101))
15723 : : {
15724 : 0 : case VEC_COND_EXPR:
15725 : 0 : {
15726 : 0 : tree _q120 = TREE_OPERAND (_q101, 0);
15727 : 0 : tree _q121 = TREE_OPERAND (_q101, 1);
15728 : 0 : tree _q122 = TREE_OPERAND (_q101, 2);
15729 : 0 : switch (TREE_CODE (_q120))
15730 : : {
15731 : 0 : case LT_EXPR:
15732 : 0 : {
15733 : 0 : tree _q130 = TREE_OPERAND (_q120, 0);
15734 : 0 : tree _q131 = TREE_OPERAND (_q120, 1);
15735 : 0 : if ((_q130 == _q50 && ! TREE_SIDE_EFFECTS (_q130)) || (operand_equal_p (_q130, _q50, 0) && types_match (_q130, _q50)))
15736 : : {
15737 : 0 : if ((_q131 == _q51 && ! TREE_SIDE_EFFECTS (_q131)) || (operand_equal_p (_q131, _q51, 0) && types_match (_q131, _q51)))
15738 : : {
15739 : 0 : if ((_q121 == _q41 && ! TREE_SIDE_EFFECTS (_q121)) || (operand_equal_p (_q121, _q41, 0) && types_match (_q121, _q41)))
15740 : : {
15741 : 0 : if ((_q122 == _q42 && ! TREE_SIDE_EFFECTS (_q122)) || (operand_equal_p (_q122, _q42, 0) && types_match (_q122, _q42)))
15742 : : {
15743 : 0 : {
15744 : 0 : tree captures[10] ATTRIBUTE_UNUSED = { _q21, _q40, _q50, _q51, _q41, _q42, _q20, _q101, _q120, _q100 };
15745 : 0 : tree res = generic_simplify_120 (loc, type, _p0, _p1, captures, UNGE_EXPR, LT_EXPR);
15746 : 0 : if (res) return res;
15747 : : }
15748 : : }
15749 : : }
15750 : : }
15751 : : }
15752 : : break;
15753 : : }
15754 : : default:;
15755 : : }
15756 : : break;
15757 : : }
15758 : : default:;
15759 : : }
15760 : : break;
15761 : : }
15762 : : default:;
15763 : : }
15764 : : break;
15765 : : }
15766 : 0 : case UNEQ_EXPR:
15767 : 0 : {
15768 : 0 : tree _q50 = TREE_OPERAND (_q40, 0);
15769 : 0 : tree _q51 = TREE_OPERAND (_q40, 1);
15770 : 0 : switch (TREE_CODE (_p1))
15771 : : {
15772 : 0 : case BIT_AND_EXPR:
15773 : 0 : {
15774 : 0 : tree _q100 = TREE_OPERAND (_p1, 0);
15775 : 0 : tree _q101 = TREE_OPERAND (_p1, 1);
15776 : 0 : switch (TREE_CODE (_q100))
15777 : : {
15778 : 0 : case VEC_COND_EXPR:
15779 : 0 : {
15780 : 0 : tree _q110 = TREE_OPERAND (_q100, 0);
15781 : 0 : tree _q111 = TREE_OPERAND (_q100, 1);
15782 : 0 : tree _q112 = TREE_OPERAND (_q100, 2);
15783 : 0 : switch (TREE_CODE (_q110))
15784 : : {
15785 : 0 : case LTGT_EXPR:
15786 : 0 : {
15787 : 0 : tree _q120 = TREE_OPERAND (_q110, 0);
15788 : 0 : tree _q121 = TREE_OPERAND (_q110, 1);
15789 : 0 : if ((_q120 == _q50 && ! TREE_SIDE_EFFECTS (_q120)) || (operand_equal_p (_q120, _q50, 0) && types_match (_q120, _q50)))
15790 : : {
15791 : 0 : if ((_q121 == _q51 && ! TREE_SIDE_EFFECTS (_q121)) || (operand_equal_p (_q121, _q51, 0) && types_match (_q121, _q51)))
15792 : : {
15793 : 0 : if ((_q111 == _q41 && ! TREE_SIDE_EFFECTS (_q111)) || (operand_equal_p (_q111, _q41, 0) && types_match (_q111, _q41)))
15794 : : {
15795 : 0 : if ((_q112 == _q42 && ! TREE_SIDE_EFFECTS (_q112)) || (operand_equal_p (_q112, _q42, 0) && types_match (_q112, _q42)))
15796 : : {
15797 : 0 : {
15798 : 0 : tree captures[10] ATTRIBUTE_UNUSED = { _q21, _q40, _q50, _q51, _q41, _q42, _q20, _q100, _q110, _q101 };
15799 : 0 : tree res = generic_simplify_120 (loc, type, _p0, _p1, captures, UNEQ_EXPR, LTGT_EXPR);
15800 : 0 : if (res) return res;
15801 : : }
15802 : : }
15803 : : }
15804 : : }
15805 : : }
15806 : : break;
15807 : : }
15808 : : default:;
15809 : : }
15810 : : break;
15811 : : }
15812 : 0 : default:;
15813 : : }
15814 : 0 : switch (TREE_CODE (_q101))
15815 : : {
15816 : 0 : case VEC_COND_EXPR:
15817 : 0 : {
15818 : 0 : tree _q120 = TREE_OPERAND (_q101, 0);
15819 : 0 : tree _q121 = TREE_OPERAND (_q101, 1);
15820 : 0 : tree _q122 = TREE_OPERAND (_q101, 2);
15821 : 0 : switch (TREE_CODE (_q120))
15822 : : {
15823 : 0 : case LTGT_EXPR:
15824 : 0 : {
15825 : 0 : tree _q130 = TREE_OPERAND (_q120, 0);
15826 : 0 : tree _q131 = TREE_OPERAND (_q120, 1);
15827 : 0 : if ((_q130 == _q50 && ! TREE_SIDE_EFFECTS (_q130)) || (operand_equal_p (_q130, _q50, 0) && types_match (_q130, _q50)))
15828 : : {
15829 : 0 : if ((_q131 == _q51 && ! TREE_SIDE_EFFECTS (_q131)) || (operand_equal_p (_q131, _q51, 0) && types_match (_q131, _q51)))
15830 : : {
15831 : 0 : if ((_q121 == _q41 && ! TREE_SIDE_EFFECTS (_q121)) || (operand_equal_p (_q121, _q41, 0) && types_match (_q121, _q41)))
15832 : : {
15833 : 0 : if ((_q122 == _q42 && ! TREE_SIDE_EFFECTS (_q122)) || (operand_equal_p (_q122, _q42, 0) && types_match (_q122, _q42)))
15834 : : {
15835 : 0 : {
15836 : 0 : tree captures[10] ATTRIBUTE_UNUSED = { _q21, _q40, _q50, _q51, _q41, _q42, _q20, _q101, _q120, _q100 };
15837 : 0 : tree res = generic_simplify_120 (loc, type, _p0, _p1, captures, UNEQ_EXPR, LTGT_EXPR);
15838 : 0 : if (res) return res;
15839 : : }
15840 : : }
15841 : : }
15842 : : }
15843 : : }
15844 : : break;
15845 : : }
15846 : : default:;
15847 : : }
15848 : : break;
15849 : : }
15850 : : default:;
15851 : : }
15852 : : break;
15853 : : }
15854 : : default:;
15855 : : }
15856 : : break;
15857 : : }
15858 : 0 : case LTGT_EXPR:
15859 : 0 : {
15860 : 0 : tree _q50 = TREE_OPERAND (_q40, 0);
15861 : 0 : tree _q51 = TREE_OPERAND (_q40, 1);
15862 : 0 : switch (TREE_CODE (_p1))
15863 : : {
15864 : 0 : case BIT_AND_EXPR:
15865 : 0 : {
15866 : 0 : tree _q100 = TREE_OPERAND (_p1, 0);
15867 : 0 : tree _q101 = TREE_OPERAND (_p1, 1);
15868 : 0 : switch (TREE_CODE (_q100))
15869 : : {
15870 : 0 : case VEC_COND_EXPR:
15871 : 0 : {
15872 : 0 : tree _q110 = TREE_OPERAND (_q100, 0);
15873 : 0 : tree _q111 = TREE_OPERAND (_q100, 1);
15874 : 0 : tree _q112 = TREE_OPERAND (_q100, 2);
15875 : 0 : switch (TREE_CODE (_q110))
15876 : : {
15877 : 0 : case UNEQ_EXPR:
15878 : 0 : {
15879 : 0 : tree _q120 = TREE_OPERAND (_q110, 0);
15880 : 0 : tree _q121 = TREE_OPERAND (_q110, 1);
15881 : 0 : if ((_q120 == _q50 && ! TREE_SIDE_EFFECTS (_q120)) || (operand_equal_p (_q120, _q50, 0) && types_match (_q120, _q50)))
15882 : : {
15883 : 0 : if ((_q121 == _q51 && ! TREE_SIDE_EFFECTS (_q121)) || (operand_equal_p (_q121, _q51, 0) && types_match (_q121, _q51)))
15884 : : {
15885 : 0 : if ((_q111 == _q41 && ! TREE_SIDE_EFFECTS (_q111)) || (operand_equal_p (_q111, _q41, 0) && types_match (_q111, _q41)))
15886 : : {
15887 : 0 : if ((_q112 == _q42 && ! TREE_SIDE_EFFECTS (_q112)) || (operand_equal_p (_q112, _q42, 0) && types_match (_q112, _q42)))
15888 : : {
15889 : 0 : {
15890 : 0 : tree captures[10] ATTRIBUTE_UNUSED = { _q21, _q40, _q50, _q51, _q41, _q42, _q20, _q100, _q110, _q101 };
15891 : 0 : tree res = generic_simplify_120 (loc, type, _p0, _p1, captures, LTGT_EXPR, UNEQ_EXPR);
15892 : 0 : if (res) return res;
15893 : : }
15894 : : }
15895 : : }
15896 : : }
15897 : : }
15898 : : break;
15899 : : }
15900 : : default:;
15901 : : }
15902 : : break;
15903 : : }
15904 : 0 : default:;
15905 : : }
15906 : 0 : switch (TREE_CODE (_q101))
15907 : : {
15908 : 0 : case VEC_COND_EXPR:
15909 : 0 : {
15910 : 0 : tree _q120 = TREE_OPERAND (_q101, 0);
15911 : 0 : tree _q121 = TREE_OPERAND (_q101, 1);
15912 : 0 : tree _q122 = TREE_OPERAND (_q101, 2);
15913 : 0 : switch (TREE_CODE (_q120))
15914 : : {
15915 : 0 : case UNEQ_EXPR:
15916 : 0 : {
15917 : 0 : tree _q130 = TREE_OPERAND (_q120, 0);
15918 : 0 : tree _q131 = TREE_OPERAND (_q120, 1);
15919 : 0 : if ((_q130 == _q50 && ! TREE_SIDE_EFFECTS (_q130)) || (operand_equal_p (_q130, _q50, 0) && types_match (_q130, _q50)))
15920 : : {
15921 : 0 : if ((_q131 == _q51 && ! TREE_SIDE_EFFECTS (_q131)) || (operand_equal_p (_q131, _q51, 0) && types_match (_q131, _q51)))
15922 : : {
15923 : 0 : if ((_q121 == _q41 && ! TREE_SIDE_EFFECTS (_q121)) || (operand_equal_p (_q121, _q41, 0) && types_match (_q121, _q41)))
15924 : : {
15925 : 0 : if ((_q122 == _q42 && ! TREE_SIDE_EFFECTS (_q122)) || (operand_equal_p (_q122, _q42, 0) && types_match (_q122, _q42)))
15926 : : {
15927 : 0 : {
15928 : 0 : tree captures[10] ATTRIBUTE_UNUSED = { _q21, _q40, _q50, _q51, _q41, _q42, _q20, _q101, _q120, _q100 };
15929 : 0 : tree res = generic_simplify_120 (loc, type, _p0, _p1, captures, LTGT_EXPR, UNEQ_EXPR);
15930 : 0 : if (res) return res;
15931 : : }
15932 : : }
15933 : : }
15934 : : }
15935 : : }
15936 : : break;
15937 : : }
15938 : : default:;
15939 : : }
15940 : : break;
15941 : : }
15942 : : default:;
15943 : : }
15944 : : break;
15945 : : }
15946 : : default:;
15947 : : }
15948 : : break;
15949 : : }
15950 : : default:;
15951 : : }
15952 : : break;
15953 : : }
15954 : 74 : case BIT_NOT_EXPR:
15955 : 74 : {
15956 : 74 : tree _q40 = TREE_OPERAND (_q21, 0);
15957 : 74 : switch (TREE_CODE (_p1))
15958 : : {
15959 : 54 : case BIT_AND_EXPR:
15960 : 54 : {
15961 : 54 : tree _q60 = TREE_OPERAND (_p1, 0);
15962 : 54 : tree _q61 = TREE_OPERAND (_p1, 1);
15963 : 54 : if ((_q61 == _q40 && ! TREE_SIDE_EFFECTS (_q61)) || (operand_equal_p (_q61, _q40, 0) && types_match (_q61, _q40)))
15964 : : {
15965 : 18 : {
15966 : 18 : tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q20, _q40, _p1, _q60 };
15967 : 18 : tree res = generic_simplify_121 (loc, type, _p0, _p1, captures);
15968 : 18 : if (res) return res;
15969 : : }
15970 : : }
15971 : 54 : if ((_q60 == _q40 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q40, 0) && types_match (_q60, _q40)))
15972 : : {
15973 : 36 : {
15974 : 36 : tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q20, _q40, _p1, _q61 };
15975 : 36 : tree res = generic_simplify_121 (loc, type, _p0, _p1, captures);
15976 : 36 : if (res) return res;
15977 : : }
15978 : : }
15979 : : break;
15980 : : }
15981 : : default:;
15982 : : }
15983 : : break;
15984 : : }
15985 : 128333 : default:;
15986 : : }
15987 : 128333 : switch (TREE_CODE (_q20))
15988 : : {
15989 : 344 : case BIT_NOT_EXPR:
15990 : 344 : {
15991 : 344 : tree _q30 = TREE_OPERAND (_q20, 0);
15992 : 344 : switch (TREE_CODE (_p1))
15993 : : {
15994 : 142 : case BIT_AND_EXPR:
15995 : 142 : {
15996 : 142 : tree _q60 = TREE_OPERAND (_p1, 0);
15997 : 142 : tree _q61 = TREE_OPERAND (_p1, 1);
15998 : 142 : if ((_q61 == _q30 && ! TREE_SIDE_EFFECTS (_q61)) || (operand_equal_p (_q61, _q30, 0) && types_match (_q61, _q30)))
15999 : : {
16000 : 22 : {
16001 : 22 : tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q21, _q30, _p1, _q60 };
16002 : 22 : tree res = generic_simplify_121 (loc, type, _p0, _p1, captures);
16003 : 22 : if (res) return res;
16004 : : }
16005 : : }
16006 : 142 : if ((_q60 == _q30 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q30, 0) && types_match (_q60, _q30)))
16007 : : {
16008 : 0 : {
16009 : 0 : tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q21, _q30, _p1, _q61 };
16010 : 0 : tree res = generic_simplify_121 (loc, type, _p0, _p1, captures);
16011 : 0 : if (res) return res;
16012 : : }
16013 : : }
16014 : : break;
16015 : : }
16016 : : default:;
16017 : : }
16018 : : break;
16019 : : }
16020 : 128333 : default:;
16021 : : }
16022 : 128333 : switch (TREE_CODE (_p1))
16023 : : {
16024 : 16443 : case BIT_AND_EXPR:
16025 : 16443 : {
16026 : 16443 : tree _q50 = TREE_OPERAND (_p1, 0);
16027 : 16443 : tree _q51 = TREE_OPERAND (_p1, 1);
16028 : 16443 : switch (TREE_CODE (_q51))
16029 : : {
16030 : 195 : case BIT_NOT_EXPR:
16031 : 195 : {
16032 : 195 : tree _q70 = TREE_OPERAND (_q51, 0);
16033 : 195 : if ((_q70 == _q21 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q21, 0) && types_match (_q70, _q21)))
16034 : : {
16035 : 33 : {
16036 : 33 : tree captures[5] ATTRIBUTE_UNUSED = { _p1, _q50, _q21, _p0, _q20 };
16037 : 33 : tree res = generic_simplify_121 (loc, type, _p0, _p1, captures);
16038 : 33 : if (res) return res;
16039 : : }
16040 : : }
16041 : 195 : if ((_q70 == _q20 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q20, 0) && types_match (_q70, _q20)))
16042 : : {
16043 : 0 : {
16044 : 0 : tree captures[5] ATTRIBUTE_UNUSED = { _p1, _q50, _q20, _p0, _q21 };
16045 : 0 : tree res = generic_simplify_121 (loc, type, _p0, _p1, captures);
16046 : 0 : if (res) return res;
16047 : : }
16048 : : }
16049 : : break;
16050 : : }
16051 : 16443 : default:;
16052 : : }
16053 : 16443 : switch (TREE_CODE (_q50))
16054 : : {
16055 : 310 : case BIT_NOT_EXPR:
16056 : 310 : {
16057 : 310 : tree _q60 = TREE_OPERAND (_q50, 0);
16058 : 310 : if ((_q60 == _q21 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q21, 0) && types_match (_q60, _q21)))
16059 : : {
16060 : 112 : {
16061 : 112 : tree captures[5] ATTRIBUTE_UNUSED = { _p1, _q51, _q21, _p0, _q20 };
16062 : 112 : tree res = generic_simplify_121 (loc, type, _p0, _p1, captures);
16063 : 112 : if (res) return res;
16064 : : }
16065 : : }
16066 : 310 : if ((_q60 == _q20 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q20, 0) && types_match (_q60, _q20)))
16067 : : {
16068 : 78 : {
16069 : 78 : tree captures[5] ATTRIBUTE_UNUSED = { _p1, _q51, _q20, _p0, _q21 };
16070 : 78 : tree res = generic_simplify_121 (loc, type, _p0, _p1, captures);
16071 : 78 : if (res) return res;
16072 : : }
16073 : : }
16074 : : break;
16075 : : }
16076 : : default:;
16077 : : }
16078 : : break;
16079 : : }
16080 : : default:;
16081 : : }
16082 : : break;
16083 : : }
16084 : 2927 : case BIT_XOR_EXPR:
16085 : 2927 : {
16086 : 2927 : tree _q20 = TREE_OPERAND (_p0, 0);
16087 : 2927 : tree _q21 = TREE_OPERAND (_p0, 1);
16088 : 2927 : switch (TREE_CODE (_q21))
16089 : : {
16090 : 61 : case INTEGER_CST:
16091 : 61 : {
16092 : 61 : switch (TREE_CODE (_p1))
16093 : : {
16094 : 33 : case INTEGER_CST:
16095 : 33 : {
16096 : 33 : {
16097 : 33 : tree captures[4] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1 };
16098 : 33 : tree res = generic_simplify_122 (loc, type, _p0, _p1, captures, BIT_XOR_EXPR, BIT_IOR_EXPR);
16099 : 33 : if (res) return res;
16100 : : }
16101 : 33 : break;
16102 : : }
16103 : : default:;
16104 : : }
16105 : : break;
16106 : : }
16107 : : default:;
16108 : : }
16109 : : break;
16110 : : }
16111 : 134 : case GT_EXPR:
16112 : 134 : {
16113 : 134 : tree _q20 = TREE_OPERAND (_p0, 0);
16114 : 134 : tree _q21 = TREE_OPERAND (_p0, 1);
16115 : 134 : switch (TREE_CODE (_p1))
16116 : : {
16117 : 8 : case NE_EXPR:
16118 : 8 : {
16119 : 8 : tree _q50 = TREE_OPERAND (_p1, 0);
16120 : 8 : tree _q51 = TREE_OPERAND (_p1, 1);
16121 : 8 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
16122 : : {
16123 : 8 : if (tree_min_value (_q51))
16124 : : {
16125 : 4 : {
16126 : 4 : tree captures[3] ATTRIBUTE_UNUSED = { _q20, _q21, _p1 };
16127 : 4 : tree res = generic_simplify_123 (loc, type, _p0, _p1, captures);
16128 : 4 : if (res) return res;
16129 : : }
16130 : : }
16131 : : }
16132 : 4 : if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
16133 : : {
16134 : 0 : if (tree_max_value (_q51))
16135 : : {
16136 : 0 : {
16137 : 0 : tree captures[3] ATTRIBUTE_UNUSED = { _q21, _q20, _p1 };
16138 : 0 : tree res = generic_simplify_124 (loc, type, _p0, _p1, captures);
16139 : 0 : if (res) return res;
16140 : : }
16141 : : }
16142 : : }
16143 : : break;
16144 : : }
16145 : 12 : case EQ_EXPR:
16146 : 12 : {
16147 : 12 : tree _q50 = TREE_OPERAND (_p1, 0);
16148 : 12 : tree _q51 = TREE_OPERAND (_p1, 1);
16149 : 12 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
16150 : : {
16151 : 0 : if (tree_min_value (_q51))
16152 : : {
16153 : 0 : {
16154 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _p1, _q20, _p0, _q21 };
16155 : 0 : tree res = generic_simplify_125 (loc, type, _p0, _p1, captures);
16156 : 0 : if (res) return res;
16157 : : }
16158 : : }
16159 : : }
16160 : : break;
16161 : : }
16162 : 130 : default:;
16163 : : }
16164 : 130 : switch (TREE_CODE (_q20))
16165 : : {
16166 : 0 : CASE_CONVERT:
16167 : 0 : {
16168 : 0 : tree _q30 = TREE_OPERAND (_q20, 0);
16169 : 0 : switch (TREE_CODE (_p1))
16170 : : {
16171 : 0 : case EQ_EXPR:
16172 : 0 : {
16173 : 0 : tree _q60 = TREE_OPERAND (_p1, 0);
16174 : 0 : tree _q61 = TREE_OPERAND (_p1, 1);
16175 : 0 : if ((_q60 == _q30 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q30, 0) && types_match (_q60, _q30)))
16176 : : {
16177 : 0 : {
16178 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q30, _q61, _p0, _q20, _q21 };
16179 : 0 : tree res = generic_simplify_126 (loc, type, _p0, _p1, captures, GT_EXPR, EQ_EXPR);
16180 : 0 : if (res) return res;
16181 : : }
16182 : : }
16183 : 0 : if ((_q61 == _q30 && ! TREE_SIDE_EFFECTS (_q61)) || (operand_equal_p (_q61, _q30, 0) && types_match (_q61, _q30)))
16184 : : {
16185 : 0 : {
16186 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q30, _q60, _p0, _q20, _q21 };
16187 : 0 : tree res = generic_simplify_126 (loc, type, _p0, _p1, captures, GT_EXPR, EQ_EXPR);
16188 : 0 : if (res) return res;
16189 : : }
16190 : : }
16191 : : break;
16192 : : }
16193 : 0 : case NE_EXPR:
16194 : 0 : {
16195 : 0 : tree _q60 = TREE_OPERAND (_p1, 0);
16196 : 0 : tree _q61 = TREE_OPERAND (_p1, 1);
16197 : 0 : if ((_q60 == _q30 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q30, 0) && types_match (_q60, _q30)))
16198 : : {
16199 : 0 : {
16200 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q30, _q61, _p0, _q20, _q21 };
16201 : 0 : tree res = generic_simplify_126 (loc, type, _p0, _p1, captures, GT_EXPR, NE_EXPR);
16202 : 0 : if (res) return res;
16203 : : }
16204 : : }
16205 : 0 : if ((_q61 == _q30 && ! TREE_SIDE_EFFECTS (_q61)) || (operand_equal_p (_q61, _q30, 0) && types_match (_q61, _q30)))
16206 : : {
16207 : 0 : {
16208 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q30, _q60, _p0, _q20, _q21 };
16209 : 0 : tree res = generic_simplify_126 (loc, type, _p0, _p1, captures, GT_EXPR, NE_EXPR);
16210 : 0 : if (res) return res;
16211 : : }
16212 : : }
16213 : : break;
16214 : : }
16215 : : default:;
16216 : : }
16217 : : break;
16218 : : }
16219 : 130 : default:;
16220 : : }
16221 : 130 : switch (TREE_CODE (_q21))
16222 : : {
16223 : 0 : CASE_CONVERT:
16224 : 0 : {
16225 : 0 : tree _q40 = TREE_OPERAND (_q21, 0);
16226 : 0 : switch (TREE_CODE (_p1))
16227 : : {
16228 : 0 : case EQ_EXPR:
16229 : 0 : {
16230 : 0 : tree _q60 = TREE_OPERAND (_p1, 0);
16231 : 0 : tree _q61 = TREE_OPERAND (_p1, 1);
16232 : 0 : if ((_q60 == _q40 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q40, 0) && types_match (_q60, _q40)))
16233 : : {
16234 : 0 : {
16235 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q40, _q61, _p0, _q21, _q20 };
16236 : 0 : tree res = generic_simplify_126 (loc, type, _p0, _p1, captures, LT_EXPR, EQ_EXPR);
16237 : 0 : if (res) return res;
16238 : : }
16239 : : }
16240 : 0 : if ((_q61 == _q40 && ! TREE_SIDE_EFFECTS (_q61)) || (operand_equal_p (_q61, _q40, 0) && types_match (_q61, _q40)))
16241 : : {
16242 : 0 : {
16243 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q40, _q60, _p0, _q21, _q20 };
16244 : 0 : tree res = generic_simplify_126 (loc, type, _p0, _p1, captures, LT_EXPR, EQ_EXPR);
16245 : 0 : if (res) return res;
16246 : : }
16247 : : }
16248 : : break;
16249 : : }
16250 : 0 : case NE_EXPR:
16251 : 0 : {
16252 : 0 : tree _q60 = TREE_OPERAND (_p1, 0);
16253 : 0 : tree _q61 = TREE_OPERAND (_p1, 1);
16254 : 0 : if ((_q60 == _q40 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q40, 0) && types_match (_q60, _q40)))
16255 : : {
16256 : 0 : {
16257 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q40, _q61, _p0, _q21, _q20 };
16258 : 0 : tree res = generic_simplify_126 (loc, type, _p0, _p1, captures, LT_EXPR, NE_EXPR);
16259 : 0 : if (res) return res;
16260 : : }
16261 : : }
16262 : 0 : if ((_q61 == _q40 && ! TREE_SIDE_EFFECTS (_q61)) || (operand_equal_p (_q61, _q40, 0) && types_match (_q61, _q40)))
16263 : : {
16264 : 0 : {
16265 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q40, _q60, _p0, _q21, _q20 };
16266 : 0 : tree res = generic_simplify_126 (loc, type, _p0, _p1, captures, LT_EXPR, NE_EXPR);
16267 : 0 : if (res) return res;
16268 : : }
16269 : : }
16270 : : break;
16271 : : }
16272 : : default:;
16273 : : }
16274 : : break;
16275 : : }
16276 : 130 : default:;
16277 : : }
16278 : 130 : switch (TREE_CODE (_p1))
16279 : : {
16280 : 12 : case EQ_EXPR:
16281 : 12 : {
16282 : 12 : tree _q50 = TREE_OPERAND (_p1, 0);
16283 : 12 : tree _q51 = TREE_OPERAND (_p1, 1);
16284 : 12 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
16285 : : {
16286 : 0 : {
16287 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q20, _q51, _p0, _q20, _q21 };
16288 : 0 : tree res = generic_simplify_127 (loc, type, _p0, _p1, captures, GT_EXPR, EQ_EXPR);
16289 : 0 : if (res) return res;
16290 : : }
16291 : : }
16292 : 12 : if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
16293 : : {
16294 : 0 : {
16295 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q21, _q51, _p0, _q21, _q20 };
16296 : 0 : tree res = generic_simplify_127 (loc, type, _p0, _p1, captures, LT_EXPR, EQ_EXPR);
16297 : 0 : if (res) return res;
16298 : : }
16299 : : }
16300 : 12 : if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
16301 : : {
16302 : 0 : {
16303 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q20, _q50, _p0, _q20, _q21 };
16304 : 0 : tree res = generic_simplify_127 (loc, type, _p0, _p1, captures, GT_EXPR, EQ_EXPR);
16305 : 0 : if (res) return res;
16306 : : }
16307 : : }
16308 : 12 : if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
16309 : : {
16310 : 0 : {
16311 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q21, _q50, _p0, _q21, _q20 };
16312 : 0 : tree res = generic_simplify_127 (loc, type, _p0, _p1, captures, LT_EXPR, EQ_EXPR);
16313 : 0 : if (res) return res;
16314 : : }
16315 : : }
16316 : : break;
16317 : : }
16318 : 4 : case NE_EXPR:
16319 : 4 : {
16320 : 4 : tree _q50 = TREE_OPERAND (_p1, 0);
16321 : 4 : tree _q51 = TREE_OPERAND (_p1, 1);
16322 : 4 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
16323 : : {
16324 : 4 : {
16325 : 4 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q20, _q51, _p0, _q20, _q21 };
16326 : 4 : tree res = generic_simplify_127 (loc, type, _p0, _p1, captures, GT_EXPR, NE_EXPR);
16327 : 4 : if (res) return res;
16328 : : }
16329 : : }
16330 : 4 : if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
16331 : : {
16332 : 0 : {
16333 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q21, _q51, _p0, _q21, _q20 };
16334 : 0 : tree res = generic_simplify_127 (loc, type, _p0, _p1, captures, LT_EXPR, NE_EXPR);
16335 : 0 : if (res) return res;
16336 : : }
16337 : : }
16338 : 4 : if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
16339 : : {
16340 : 0 : {
16341 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q20, _q50, _p0, _q20, _q21 };
16342 : 0 : tree res = generic_simplify_127 (loc, type, _p0, _p1, captures, GT_EXPR, NE_EXPR);
16343 : 0 : if (res) return res;
16344 : : }
16345 : : }
16346 : 4 : if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
16347 : : {
16348 : 0 : {
16349 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q21, _q50, _p0, _q21, _q20 };
16350 : 0 : tree res = generic_simplify_127 (loc, type, _p0, _p1, captures, LT_EXPR, NE_EXPR);
16351 : 0 : if (res) return res;
16352 : : }
16353 : : }
16354 : : break;
16355 : : }
16356 : 0 : case LT_EXPR:
16357 : 0 : {
16358 : 0 : tree _q50 = TREE_OPERAND (_p1, 0);
16359 : 0 : tree _q51 = TREE_OPERAND (_p1, 1);
16360 : 0 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
16361 : : {
16362 : 0 : {
16363 : 0 : tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q51 };
16364 : 0 : tree res = generic_simplify_128 (loc, type, _p0, _p1, captures, LT_EXPR, GT_EXPR);
16365 : 0 : if (res) return res;
16366 : : }
16367 : : }
16368 : : break;
16369 : : }
16370 : 0 : case LE_EXPR:
16371 : 0 : {
16372 : 0 : tree _q50 = TREE_OPERAND (_p1, 0);
16373 : 0 : tree _q51 = TREE_OPERAND (_p1, 1);
16374 : 0 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
16375 : : {
16376 : 0 : {
16377 : 0 : tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q51 };
16378 : 0 : tree res = generic_simplify_128 (loc, type, _p0, _p1, captures, LE_EXPR, GT_EXPR);
16379 : 0 : if (res) return res;
16380 : : }
16381 : : }
16382 : : break;
16383 : : }
16384 : 0 : case GT_EXPR:
16385 : 0 : {
16386 : 0 : tree _q50 = TREE_OPERAND (_p1, 0);
16387 : 0 : tree _q51 = TREE_OPERAND (_p1, 1);
16388 : 0 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
16389 : : {
16390 : 0 : {
16391 : 0 : tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q51 };
16392 : 0 : tree res = generic_simplify_128 (loc, type, _p0, _p1, captures, GT_EXPR, GT_EXPR);
16393 : 0 : if (res) return res;
16394 : : }
16395 : : }
16396 : : break;
16397 : : }
16398 : 0 : case GE_EXPR:
16399 : 0 : {
16400 : 0 : tree _q50 = TREE_OPERAND (_p1, 0);
16401 : 0 : tree _q51 = TREE_OPERAND (_p1, 1);
16402 : 0 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
16403 : : {
16404 : 0 : {
16405 : 0 : tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q51 };
16406 : 0 : tree res = generic_simplify_128 (loc, type, _p0, _p1, captures, GE_EXPR, GT_EXPR);
16407 : 0 : if (res) return res;
16408 : : }
16409 : : }
16410 : : break;
16411 : : }
16412 : 130 : default:;
16413 : : }
16414 : 130 : switch (TREE_CODE (_q20))
16415 : : {
16416 : 7 : case BIT_AND_EXPR:
16417 : 7 : {
16418 : 7 : tree _q30 = TREE_OPERAND (_q20, 0);
16419 : 7 : tree _q31 = TREE_OPERAND (_q20, 1);
16420 : 7 : switch (TREE_CODE (_q30))
16421 : : {
16422 : 0 : case BIT_XOR_EXPR:
16423 : 0 : {
16424 : 0 : tree _q40 = TREE_OPERAND (_q30, 0);
16425 : 0 : tree _q41 = TREE_OPERAND (_q30, 1);
16426 : 0 : if (tree_expr_nonzero_p (_q31))
16427 : : {
16428 : 0 : switch (TREE_CODE (_p1))
16429 : : {
16430 : 0 : case NE_EXPR:
16431 : 0 : {
16432 : 0 : tree _q90 = TREE_OPERAND (_p1, 0);
16433 : 0 : tree _q91 = TREE_OPERAND (_p1, 1);
16434 : 0 : if ((_q90 == _q40 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q40, 0) && types_match (_q90, _q40)))
16435 : : {
16436 : 0 : if ((_q91 == _q41 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q41, 0) && types_match (_q91, _q41)))
16437 : : {
16438 : 0 : {
16439 : 0 : tree captures[5] ATTRIBUTE_UNUSED = { _q40, _q41, _q31, _q21, _p1 };
16440 : 0 : tree res = generic_simplify_129 (loc, type, _p0, _p1, captures, GT_EXPR);
16441 : 0 : if (res) return res;
16442 : : }
16443 : : }
16444 : : }
16445 : 0 : if ((_q90 == _q41 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q41, 0) && types_match (_q90, _q41)))
16446 : : {
16447 : 0 : if ((_q91 == _q40 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q40, 0) && types_match (_q91, _q40)))
16448 : : {
16449 : 0 : {
16450 : 0 : tree captures[5] ATTRIBUTE_UNUSED = { _q41, _q40, _q31, _q21, _p1 };
16451 : 0 : tree res = generic_simplify_129 (loc, type, _p0, _p1, captures, GT_EXPR);
16452 : 0 : if (res) return res;
16453 : : }
16454 : : }
16455 : : }
16456 : : break;
16457 : : }
16458 : : default:;
16459 : : }
16460 : : }
16461 : : break;
16462 : : }
16463 : 7 : default:;
16464 : : }
16465 : 7 : if (tree_expr_nonzero_p (_q30))
16466 : : {
16467 : 0 : switch (TREE_CODE (_q31))
16468 : : {
16469 : 0 : case BIT_XOR_EXPR:
16470 : 0 : {
16471 : 0 : tree _q50 = TREE_OPERAND (_q31, 0);
16472 : 0 : tree _q51 = TREE_OPERAND (_q31, 1);
16473 : 0 : switch (TREE_CODE (_p1))
16474 : : {
16475 : 0 : case NE_EXPR:
16476 : 0 : {
16477 : 0 : tree _q90 = TREE_OPERAND (_p1, 0);
16478 : 0 : tree _q91 = TREE_OPERAND (_p1, 1);
16479 : 0 : if ((_q90 == _q50 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q50, 0) && types_match (_q90, _q50)))
16480 : : {
16481 : 0 : if ((_q91 == _q51 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q51, 0) && types_match (_q91, _q51)))
16482 : : {
16483 : 0 : {
16484 : 0 : tree captures[5] ATTRIBUTE_UNUSED = { _q50, _q51, _q30, _q21, _p1 };
16485 : 0 : tree res = generic_simplify_129 (loc, type, _p0, _p1, captures, GT_EXPR);
16486 : 0 : if (res) return res;
16487 : : }
16488 : : }
16489 : : }
16490 : 0 : if ((_q90 == _q51 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q51, 0) && types_match (_q90, _q51)))
16491 : : {
16492 : 0 : if ((_q91 == _q50 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q50, 0) && types_match (_q91, _q50)))
16493 : : {
16494 : 0 : {
16495 : 0 : tree captures[5] ATTRIBUTE_UNUSED = { _q51, _q50, _q30, _q21, _p1 };
16496 : 0 : tree res = generic_simplify_129 (loc, type, _p0, _p1, captures, GT_EXPR);
16497 : 0 : if (res) return res;
16498 : : }
16499 : : }
16500 : : }
16501 : : break;
16502 : : }
16503 : : default:;
16504 : : }
16505 : : break;
16506 : : }
16507 : : default:;
16508 : : }
16509 : : }
16510 : : break;
16511 : : }
16512 : 130 : default:;
16513 : : }
16514 : 130 : switch (TREE_CODE (_q21))
16515 : : {
16516 : 0 : case BIT_AND_EXPR:
16517 : 0 : {
16518 : 0 : tree _q40 = TREE_OPERAND (_q21, 0);
16519 : 0 : tree _q41 = TREE_OPERAND (_q21, 1);
16520 : 0 : switch (TREE_CODE (_q40))
16521 : : {
16522 : 0 : case BIT_XOR_EXPR:
16523 : 0 : {
16524 : 0 : tree _q50 = TREE_OPERAND (_q40, 0);
16525 : 0 : tree _q51 = TREE_OPERAND (_q40, 1);
16526 : 0 : if (tree_expr_nonzero_p (_q41))
16527 : : {
16528 : 0 : switch (TREE_CODE (_p1))
16529 : : {
16530 : 0 : case NE_EXPR:
16531 : 0 : {
16532 : 0 : tree _q90 = TREE_OPERAND (_p1, 0);
16533 : 0 : tree _q91 = TREE_OPERAND (_p1, 1);
16534 : 0 : if ((_q90 == _q50 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q50, 0) && types_match (_q90, _q50)))
16535 : : {
16536 : 0 : if ((_q91 == _q51 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q51, 0) && types_match (_q91, _q51)))
16537 : : {
16538 : 0 : {
16539 : 0 : tree captures[5] ATTRIBUTE_UNUSED = { _q50, _q51, _q41, _q20, _p1 };
16540 : 0 : tree res = generic_simplify_129 (loc, type, _p0, _p1, captures, LT_EXPR);
16541 : 0 : if (res) return res;
16542 : : }
16543 : : }
16544 : : }
16545 : 0 : if ((_q90 == _q51 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q51, 0) && types_match (_q90, _q51)))
16546 : : {
16547 : 0 : if ((_q91 == _q50 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q50, 0) && types_match (_q91, _q50)))
16548 : : {
16549 : 0 : {
16550 : 0 : tree captures[5] ATTRIBUTE_UNUSED = { _q51, _q50, _q41, _q20, _p1 };
16551 : 0 : tree res = generic_simplify_129 (loc, type, _p0, _p1, captures, LT_EXPR);
16552 : 0 : if (res) return res;
16553 : : }
16554 : : }
16555 : : }
16556 : : break;
16557 : : }
16558 : : default:;
16559 : : }
16560 : : }
16561 : : break;
16562 : : }
16563 : 0 : default:;
16564 : : }
16565 : 0 : if (tree_expr_nonzero_p (_q40))
16566 : : {
16567 : 0 : switch (TREE_CODE (_q41))
16568 : : {
16569 : 0 : case BIT_XOR_EXPR:
16570 : 0 : {
16571 : 0 : tree _q60 = TREE_OPERAND (_q41, 0);
16572 : 0 : tree _q61 = TREE_OPERAND (_q41, 1);
16573 : 0 : switch (TREE_CODE (_p1))
16574 : : {
16575 : 0 : case NE_EXPR:
16576 : 0 : {
16577 : 0 : tree _q90 = TREE_OPERAND (_p1, 0);
16578 : 0 : tree _q91 = TREE_OPERAND (_p1, 1);
16579 : 0 : if ((_q90 == _q60 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q60, 0) && types_match (_q90, _q60)))
16580 : : {
16581 : 0 : if ((_q91 == _q61 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q61, 0) && types_match (_q91, _q61)))
16582 : : {
16583 : 0 : {
16584 : 0 : tree captures[5] ATTRIBUTE_UNUSED = { _q60, _q61, _q40, _q20, _p1 };
16585 : 0 : tree res = generic_simplify_129 (loc, type, _p0, _p1, captures, LT_EXPR);
16586 : 0 : if (res) return res;
16587 : : }
16588 : : }
16589 : : }
16590 : 0 : if ((_q90 == _q61 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q61, 0) && types_match (_q90, _q61)))
16591 : : {
16592 : 0 : if ((_q91 == _q60 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q60, 0) && types_match (_q91, _q60)))
16593 : : {
16594 : 0 : {
16595 : 0 : tree captures[5] ATTRIBUTE_UNUSED = { _q61, _q60, _q40, _q20, _p1 };
16596 : 0 : tree res = generic_simplify_129 (loc, type, _p0, _p1, captures, LT_EXPR);
16597 : 0 : if (res) return res;
16598 : : }
16599 : : }
16600 : : }
16601 : : break;
16602 : : }
16603 : : default:;
16604 : : }
16605 : : break;
16606 : : }
16607 : : default:;
16608 : : }
16609 : : }
16610 : : break;
16611 : : }
16612 : 130 : default:;
16613 : : }
16614 : 130 : switch (TREE_CODE (_q20))
16615 : : {
16616 : 0 : case BIT_XOR_EXPR:
16617 : 0 : {
16618 : 0 : tree _q30 = TREE_OPERAND (_q20, 0);
16619 : 0 : tree _q31 = TREE_OPERAND (_q20, 1);
16620 : 0 : switch (TREE_CODE (_p1))
16621 : : {
16622 : 0 : case NE_EXPR:
16623 : 0 : {
16624 : 0 : tree _q70 = TREE_OPERAND (_p1, 0);
16625 : 0 : tree _q71 = TREE_OPERAND (_p1, 1);
16626 : 0 : if ((_q70 == _q30 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q30, 0) && types_match (_q70, _q30)))
16627 : : {
16628 : 0 : if ((_q71 == _q31 && ! TREE_SIDE_EFFECTS (_q71)) || (operand_equal_p (_q71, _q31, 0) && types_match (_q71, _q31)))
16629 : : {
16630 : 0 : {
16631 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q30, _q31, _q21, _p1 };
16632 : 0 : tree res = generic_simplify_130 (loc, type, _p0, _p1, captures, GT_EXPR);
16633 : 0 : if (res) return res;
16634 : : }
16635 : : }
16636 : : }
16637 : 0 : if ((_q70 == _q31 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q31, 0) && types_match (_q70, _q31)))
16638 : : {
16639 : 0 : if ((_q71 == _q30 && ! TREE_SIDE_EFFECTS (_q71)) || (operand_equal_p (_q71, _q30, 0) && types_match (_q71, _q30)))
16640 : : {
16641 : 0 : {
16642 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q31, _q30, _q21, _p1 };
16643 : 0 : tree res = generic_simplify_130 (loc, type, _p0, _p1, captures, GT_EXPR);
16644 : 0 : if (res) return res;
16645 : : }
16646 : : }
16647 : : }
16648 : : break;
16649 : : }
16650 : : default:;
16651 : : }
16652 : : break;
16653 : : }
16654 : 130 : default:;
16655 : : }
16656 : 130 : switch (TREE_CODE (_q21))
16657 : : {
16658 : 0 : case BIT_XOR_EXPR:
16659 : 0 : {
16660 : 0 : tree _q40 = TREE_OPERAND (_q21, 0);
16661 : 0 : tree _q41 = TREE_OPERAND (_q21, 1);
16662 : 0 : switch (TREE_CODE (_p1))
16663 : : {
16664 : 0 : case NE_EXPR:
16665 : 0 : {
16666 : 0 : tree _q70 = TREE_OPERAND (_p1, 0);
16667 : 0 : tree _q71 = TREE_OPERAND (_p1, 1);
16668 : 0 : if ((_q70 == _q40 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q40, 0) && types_match (_q70, _q40)))
16669 : : {
16670 : 0 : if ((_q71 == _q41 && ! TREE_SIDE_EFFECTS (_q71)) || (operand_equal_p (_q71, _q41, 0) && types_match (_q71, _q41)))
16671 : : {
16672 : 0 : {
16673 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q40, _q41, _q20, _p1 };
16674 : 0 : tree res = generic_simplify_130 (loc, type, _p0, _p1, captures, LT_EXPR);
16675 : 0 : if (res) return res;
16676 : : }
16677 : : }
16678 : : }
16679 : 0 : if ((_q70 == _q41 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q41, 0) && types_match (_q70, _q41)))
16680 : : {
16681 : 0 : if ((_q71 == _q40 && ! TREE_SIDE_EFFECTS (_q71)) || (operand_equal_p (_q71, _q40, 0) && types_match (_q71, _q40)))
16682 : : {
16683 : 0 : {
16684 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q41, _q40, _q20, _p1 };
16685 : 0 : tree res = generic_simplify_130 (loc, type, _p0, _p1, captures, LT_EXPR);
16686 : 0 : if (res) return res;
16687 : : }
16688 : : }
16689 : : }
16690 : : break;
16691 : : }
16692 : : default:;
16693 : : }
16694 : : break;
16695 : : }
16696 : : default:;
16697 : : }
16698 : : break;
16699 : : }
16700 : 130 : case LT_EXPR:
16701 : 130 : {
16702 : 130 : tree _q20 = TREE_OPERAND (_p0, 0);
16703 : 130 : tree _q21 = TREE_OPERAND (_p0, 1);
16704 : 130 : switch (TREE_CODE (_p1))
16705 : : {
16706 : 5 : case NE_EXPR:
16707 : 5 : {
16708 : 5 : tree _q50 = TREE_OPERAND (_p1, 0);
16709 : 5 : tree _q51 = TREE_OPERAND (_p1, 1);
16710 : 5 : if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
16711 : : {
16712 : 0 : if (tree_min_value (_q51))
16713 : : {
16714 : 0 : {
16715 : 0 : tree captures[3] ATTRIBUTE_UNUSED = { _q21, _q20, _p1 };
16716 : 0 : tree res = generic_simplify_123 (loc, type, _p0, _p1, captures);
16717 : 0 : if (res) return res;
16718 : : }
16719 : : }
16720 : : }
16721 : 5 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
16722 : : {
16723 : 5 : if (tree_max_value (_q51))
16724 : : {
16725 : 4 : {
16726 : 4 : tree captures[3] ATTRIBUTE_UNUSED = { _q20, _q21, _p1 };
16727 : 4 : tree res = generic_simplify_124 (loc, type, _p0, _p1, captures);
16728 : 4 : if (res) return res;
16729 : : }
16730 : : }
16731 : : }
16732 : : break;
16733 : : }
16734 : 9 : case EQ_EXPR:
16735 : 9 : {
16736 : 9 : tree _q50 = TREE_OPERAND (_p1, 0);
16737 : 9 : tree _q51 = TREE_OPERAND (_p1, 1);
16738 : 9 : if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
16739 : : {
16740 : 0 : if (tree_min_value (_q51))
16741 : : {
16742 : 0 : {
16743 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _p1, _q21, _p0, _q20 };
16744 : 0 : tree res = generic_simplify_125 (loc, type, _p0, _p1, captures);
16745 : 0 : if (res) return res;
16746 : : }
16747 : : }
16748 : : }
16749 : : break;
16750 : : }
16751 : 126 : default:;
16752 : : }
16753 : 126 : switch (TREE_CODE (_q20))
16754 : : {
16755 : 15 : CASE_CONVERT:
16756 : 15 : {
16757 : 15 : tree _q30 = TREE_OPERAND (_q20, 0);
16758 : 15 : switch (TREE_CODE (_p1))
16759 : : {
16760 : 0 : case EQ_EXPR:
16761 : 0 : {
16762 : 0 : tree _q60 = TREE_OPERAND (_p1, 0);
16763 : 0 : tree _q61 = TREE_OPERAND (_p1, 1);
16764 : 0 : if ((_q60 == _q30 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q30, 0) && types_match (_q60, _q30)))
16765 : : {
16766 : 0 : {
16767 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q30, _q61, _p0, _q20, _q21 };
16768 : 0 : tree res = generic_simplify_126 (loc, type, _p0, _p1, captures, LT_EXPR, EQ_EXPR);
16769 : 0 : if (res) return res;
16770 : : }
16771 : : }
16772 : 0 : if ((_q61 == _q30 && ! TREE_SIDE_EFFECTS (_q61)) || (operand_equal_p (_q61, _q30, 0) && types_match (_q61, _q30)))
16773 : : {
16774 : 0 : {
16775 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q30, _q60, _p0, _q20, _q21 };
16776 : 0 : tree res = generic_simplify_126 (loc, type, _p0, _p1, captures, LT_EXPR, EQ_EXPR);
16777 : 0 : if (res) return res;
16778 : : }
16779 : : }
16780 : : break;
16781 : : }
16782 : 0 : case NE_EXPR:
16783 : 0 : {
16784 : 0 : tree _q60 = TREE_OPERAND (_p1, 0);
16785 : 0 : tree _q61 = TREE_OPERAND (_p1, 1);
16786 : 0 : if ((_q60 == _q30 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q30, 0) && types_match (_q60, _q30)))
16787 : : {
16788 : 0 : {
16789 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q30, _q61, _p0, _q20, _q21 };
16790 : 0 : tree res = generic_simplify_126 (loc, type, _p0, _p1, captures, LT_EXPR, NE_EXPR);
16791 : 0 : if (res) return res;
16792 : : }
16793 : : }
16794 : 0 : if ((_q61 == _q30 && ! TREE_SIDE_EFFECTS (_q61)) || (operand_equal_p (_q61, _q30, 0) && types_match (_q61, _q30)))
16795 : : {
16796 : 0 : {
16797 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q30, _q60, _p0, _q20, _q21 };
16798 : 0 : tree res = generic_simplify_126 (loc, type, _p0, _p1, captures, LT_EXPR, NE_EXPR);
16799 : 0 : if (res) return res;
16800 : : }
16801 : : }
16802 : : break;
16803 : : }
16804 : : default:;
16805 : : }
16806 : : break;
16807 : : }
16808 : 126 : default:;
16809 : : }
16810 : 126 : switch (TREE_CODE (_q21))
16811 : : {
16812 : 35 : CASE_CONVERT:
16813 : 35 : {
16814 : 35 : tree _q40 = TREE_OPERAND (_q21, 0);
16815 : 35 : switch (TREE_CODE (_p1))
16816 : : {
16817 : 3 : case EQ_EXPR:
16818 : 3 : {
16819 : 3 : tree _q60 = TREE_OPERAND (_p1, 0);
16820 : 3 : tree _q61 = TREE_OPERAND (_p1, 1);
16821 : 3 : if ((_q60 == _q40 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q40, 0) && types_match (_q60, _q40)))
16822 : : {
16823 : 0 : {
16824 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q40, _q61, _p0, _q21, _q20 };
16825 : 0 : tree res = generic_simplify_126 (loc, type, _p0, _p1, captures, GT_EXPR, EQ_EXPR);
16826 : 0 : if (res) return res;
16827 : : }
16828 : : }
16829 : 3 : if ((_q61 == _q40 && ! TREE_SIDE_EFFECTS (_q61)) || (operand_equal_p (_q61, _q40, 0) && types_match (_q61, _q40)))
16830 : : {
16831 : 3 : {
16832 : 3 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q40, _q60, _p0, _q21, _q20 };
16833 : 3 : tree res = generic_simplify_126 (loc, type, _p0, _p1, captures, GT_EXPR, EQ_EXPR);
16834 : 3 : if (res) return res;
16835 : : }
16836 : : }
16837 : : break;
16838 : : }
16839 : 0 : case NE_EXPR:
16840 : 0 : {
16841 : 0 : tree _q60 = TREE_OPERAND (_p1, 0);
16842 : 0 : tree _q61 = TREE_OPERAND (_p1, 1);
16843 : 0 : if ((_q60 == _q40 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q40, 0) && types_match (_q60, _q40)))
16844 : : {
16845 : 0 : {
16846 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q40, _q61, _p0, _q21, _q20 };
16847 : 0 : tree res = generic_simplify_126 (loc, type, _p0, _p1, captures, GT_EXPR, NE_EXPR);
16848 : 0 : if (res) return res;
16849 : : }
16850 : : }
16851 : 0 : if ((_q61 == _q40 && ! TREE_SIDE_EFFECTS (_q61)) || (operand_equal_p (_q61, _q40, 0) && types_match (_q61, _q40)))
16852 : : {
16853 : 0 : {
16854 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q40, _q60, _p0, _q21, _q20 };
16855 : 0 : tree res = generic_simplify_126 (loc, type, _p0, _p1, captures, GT_EXPR, NE_EXPR);
16856 : 0 : if (res) return res;
16857 : : }
16858 : : }
16859 : : break;
16860 : : }
16861 : : default:;
16862 : : }
16863 : : break;
16864 : : }
16865 : 123 : default:;
16866 : : }
16867 : 123 : switch (TREE_CODE (_p1))
16868 : : {
16869 : 6 : case EQ_EXPR:
16870 : 6 : {
16871 : 6 : tree _q50 = TREE_OPERAND (_p1, 0);
16872 : 6 : tree _q51 = TREE_OPERAND (_p1, 1);
16873 : 6 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
16874 : : {
16875 : 2 : {
16876 : 2 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q20, _q51, _p0, _q20, _q21 };
16877 : 2 : tree res = generic_simplify_127 (loc, type, _p0, _p1, captures, LT_EXPR, EQ_EXPR);
16878 : 2 : if (res) return res;
16879 : : }
16880 : : }
16881 : 4 : if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
16882 : : {
16883 : 0 : {
16884 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q21, _q51, _p0, _q21, _q20 };
16885 : 0 : tree res = generic_simplify_127 (loc, type, _p0, _p1, captures, GT_EXPR, EQ_EXPR);
16886 : 0 : if (res) return res;
16887 : : }
16888 : : }
16889 : 4 : if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
16890 : : {
16891 : 0 : {
16892 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q20, _q50, _p0, _q20, _q21 };
16893 : 0 : tree res = generic_simplify_127 (loc, type, _p0, _p1, captures, LT_EXPR, EQ_EXPR);
16894 : 0 : if (res) return res;
16895 : : }
16896 : : }
16897 : 4 : if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
16898 : : {
16899 : 0 : {
16900 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q21, _q50, _p0, _q21, _q20 };
16901 : 0 : tree res = generic_simplify_127 (loc, type, _p0, _p1, captures, GT_EXPR, EQ_EXPR);
16902 : 0 : if (res) return res;
16903 : : }
16904 : : }
16905 : : break;
16906 : : }
16907 : 1 : case NE_EXPR:
16908 : 1 : {
16909 : 1 : tree _q50 = TREE_OPERAND (_p1, 0);
16910 : 1 : tree _q51 = TREE_OPERAND (_p1, 1);
16911 : 1 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
16912 : : {
16913 : 1 : {
16914 : 1 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q20, _q51, _p0, _q20, _q21 };
16915 : 1 : tree res = generic_simplify_127 (loc, type, _p0, _p1, captures, LT_EXPR, NE_EXPR);
16916 : 1 : if (res) return res;
16917 : : }
16918 : : }
16919 : 1 : if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
16920 : : {
16921 : 0 : {
16922 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q21, _q51, _p0, _q21, _q20 };
16923 : 0 : tree res = generic_simplify_127 (loc, type, _p0, _p1, captures, GT_EXPR, NE_EXPR);
16924 : 0 : if (res) return res;
16925 : : }
16926 : : }
16927 : 1 : if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
16928 : : {
16929 : 0 : {
16930 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q20, _q50, _p0, _q20, _q21 };
16931 : 0 : tree res = generic_simplify_127 (loc, type, _p0, _p1, captures, LT_EXPR, NE_EXPR);
16932 : 0 : if (res) return res;
16933 : : }
16934 : : }
16935 : 1 : if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
16936 : : {
16937 : 0 : {
16938 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q21, _q50, _p0, _q21, _q20 };
16939 : 0 : tree res = generic_simplify_127 (loc, type, _p0, _p1, captures, GT_EXPR, NE_EXPR);
16940 : 0 : if (res) return res;
16941 : : }
16942 : : }
16943 : : break;
16944 : : }
16945 : 27 : case LT_EXPR:
16946 : 27 : {
16947 : 27 : tree _q50 = TREE_OPERAND (_p1, 0);
16948 : 27 : tree _q51 = TREE_OPERAND (_p1, 1);
16949 : 27 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
16950 : : {
16951 : 0 : {
16952 : 0 : tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q51 };
16953 : 0 : tree res = generic_simplify_128 (loc, type, _p0, _p1, captures, LT_EXPR, LT_EXPR);
16954 : 0 : if (res) return res;
16955 : : }
16956 : : }
16957 : : break;
16958 : : }
16959 : 31 : case LE_EXPR:
16960 : 31 : {
16961 : 31 : tree _q50 = TREE_OPERAND (_p1, 0);
16962 : 31 : tree _q51 = TREE_OPERAND (_p1, 1);
16963 : 31 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
16964 : : {
16965 : 31 : {
16966 : 31 : tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q51 };
16967 : 31 : tree res = generic_simplify_128 (loc, type, _p0, _p1, captures, LE_EXPR, LT_EXPR);
16968 : 31 : if (res) return res;
16969 : : }
16970 : : }
16971 : : break;
16972 : : }
16973 : 0 : case GT_EXPR:
16974 : 0 : {
16975 : 0 : tree _q50 = TREE_OPERAND (_p1, 0);
16976 : 0 : tree _q51 = TREE_OPERAND (_p1, 1);
16977 : 0 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
16978 : : {
16979 : 0 : {
16980 : 0 : tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q51 };
16981 : 0 : tree res = generic_simplify_128 (loc, type, _p0, _p1, captures, GT_EXPR, LT_EXPR);
16982 : 0 : if (res) return res;
16983 : : }
16984 : : }
16985 : : break;
16986 : : }
16987 : 0 : case GE_EXPR:
16988 : 0 : {
16989 : 0 : tree _q50 = TREE_OPERAND (_p1, 0);
16990 : 0 : tree _q51 = TREE_OPERAND (_p1, 1);
16991 : 0 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
16992 : : {
16993 : 0 : {
16994 : 0 : tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q51 };
16995 : 0 : tree res = generic_simplify_128 (loc, type, _p0, _p1, captures, GE_EXPR, LT_EXPR);
16996 : 0 : if (res) return res;
16997 : : }
16998 : : }
16999 : : break;
17000 : : }
17001 : 114 : default:;
17002 : : }
17003 : 114 : switch (TREE_CODE (_q20))
17004 : : {
17005 : 0 : case BIT_AND_EXPR:
17006 : 0 : {
17007 : 0 : tree _q30 = TREE_OPERAND (_q20, 0);
17008 : 0 : tree _q31 = TREE_OPERAND (_q20, 1);
17009 : 0 : switch (TREE_CODE (_q30))
17010 : : {
17011 : 0 : case BIT_XOR_EXPR:
17012 : 0 : {
17013 : 0 : tree _q40 = TREE_OPERAND (_q30, 0);
17014 : 0 : tree _q41 = TREE_OPERAND (_q30, 1);
17015 : 0 : if (tree_expr_nonzero_p (_q31))
17016 : : {
17017 : 0 : switch (TREE_CODE (_p1))
17018 : : {
17019 : 0 : case NE_EXPR:
17020 : 0 : {
17021 : 0 : tree _q90 = TREE_OPERAND (_p1, 0);
17022 : 0 : tree _q91 = TREE_OPERAND (_p1, 1);
17023 : 0 : if ((_q90 == _q40 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q40, 0) && types_match (_q90, _q40)))
17024 : : {
17025 : 0 : if ((_q91 == _q41 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q41, 0) && types_match (_q91, _q41)))
17026 : : {
17027 : 0 : {
17028 : 0 : tree captures[5] ATTRIBUTE_UNUSED = { _q40, _q41, _q31, _q21, _p1 };
17029 : 0 : tree res = generic_simplify_129 (loc, type, _p0, _p1, captures, LT_EXPR);
17030 : 0 : if (res) return res;
17031 : : }
17032 : : }
17033 : : }
17034 : 0 : if ((_q90 == _q41 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q41, 0) && types_match (_q90, _q41)))
17035 : : {
17036 : 0 : if ((_q91 == _q40 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q40, 0) && types_match (_q91, _q40)))
17037 : : {
17038 : 0 : {
17039 : 0 : tree captures[5] ATTRIBUTE_UNUSED = { _q41, _q40, _q31, _q21, _p1 };
17040 : 0 : tree res = generic_simplify_129 (loc, type, _p0, _p1, captures, LT_EXPR);
17041 : 0 : if (res) return res;
17042 : : }
17043 : : }
17044 : : }
17045 : : break;
17046 : : }
17047 : : default:;
17048 : : }
17049 : : }
17050 : : break;
17051 : : }
17052 : 0 : default:;
17053 : : }
17054 : 0 : if (tree_expr_nonzero_p (_q30))
17055 : : {
17056 : 0 : switch (TREE_CODE (_q31))
17057 : : {
17058 : 0 : case BIT_XOR_EXPR:
17059 : 0 : {
17060 : 0 : tree _q50 = TREE_OPERAND (_q31, 0);
17061 : 0 : tree _q51 = TREE_OPERAND (_q31, 1);
17062 : 0 : switch (TREE_CODE (_p1))
17063 : : {
17064 : 0 : case NE_EXPR:
17065 : 0 : {
17066 : 0 : tree _q90 = TREE_OPERAND (_p1, 0);
17067 : 0 : tree _q91 = TREE_OPERAND (_p1, 1);
17068 : 0 : if ((_q90 == _q50 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q50, 0) && types_match (_q90, _q50)))
17069 : : {
17070 : 0 : if ((_q91 == _q51 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q51, 0) && types_match (_q91, _q51)))
17071 : : {
17072 : 0 : {
17073 : 0 : tree captures[5] ATTRIBUTE_UNUSED = { _q50, _q51, _q30, _q21, _p1 };
17074 : 0 : tree res = generic_simplify_129 (loc, type, _p0, _p1, captures, LT_EXPR);
17075 : 0 : if (res) return res;
17076 : : }
17077 : : }
17078 : : }
17079 : 0 : if ((_q90 == _q51 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q51, 0) && types_match (_q90, _q51)))
17080 : : {
17081 : 0 : if ((_q91 == _q50 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q50, 0) && types_match (_q91, _q50)))
17082 : : {
17083 : 0 : {
17084 : 0 : tree captures[5] ATTRIBUTE_UNUSED = { _q51, _q50, _q30, _q21, _p1 };
17085 : 0 : tree res = generic_simplify_129 (loc, type, _p0, _p1, captures, LT_EXPR);
17086 : 0 : if (res) return res;
17087 : : }
17088 : : }
17089 : : }
17090 : : break;
17091 : : }
17092 : : default:;
17093 : : }
17094 : : break;
17095 : : }
17096 : : default:;
17097 : : }
17098 : : }
17099 : : break;
17100 : : }
17101 : 114 : default:;
17102 : : }
17103 : 114 : switch (TREE_CODE (_q21))
17104 : : {
17105 : 0 : case BIT_AND_EXPR:
17106 : 0 : {
17107 : 0 : tree _q40 = TREE_OPERAND (_q21, 0);
17108 : 0 : tree _q41 = TREE_OPERAND (_q21, 1);
17109 : 0 : switch (TREE_CODE (_q40))
17110 : : {
17111 : 0 : case BIT_XOR_EXPR:
17112 : 0 : {
17113 : 0 : tree _q50 = TREE_OPERAND (_q40, 0);
17114 : 0 : tree _q51 = TREE_OPERAND (_q40, 1);
17115 : 0 : if (tree_expr_nonzero_p (_q41))
17116 : : {
17117 : 0 : switch (TREE_CODE (_p1))
17118 : : {
17119 : 0 : case NE_EXPR:
17120 : 0 : {
17121 : 0 : tree _q90 = TREE_OPERAND (_p1, 0);
17122 : 0 : tree _q91 = TREE_OPERAND (_p1, 1);
17123 : 0 : if ((_q90 == _q50 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q50, 0) && types_match (_q90, _q50)))
17124 : : {
17125 : 0 : if ((_q91 == _q51 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q51, 0) && types_match (_q91, _q51)))
17126 : : {
17127 : 0 : {
17128 : 0 : tree captures[5] ATTRIBUTE_UNUSED = { _q50, _q51, _q41, _q20, _p1 };
17129 : 0 : tree res = generic_simplify_129 (loc, type, _p0, _p1, captures, GT_EXPR);
17130 : 0 : if (res) return res;
17131 : : }
17132 : : }
17133 : : }
17134 : 0 : if ((_q90 == _q51 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q51, 0) && types_match (_q90, _q51)))
17135 : : {
17136 : 0 : if ((_q91 == _q50 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q50, 0) && types_match (_q91, _q50)))
17137 : : {
17138 : 0 : {
17139 : 0 : tree captures[5] ATTRIBUTE_UNUSED = { _q51, _q50, _q41, _q20, _p1 };
17140 : 0 : tree res = generic_simplify_129 (loc, type, _p0, _p1, captures, GT_EXPR);
17141 : 0 : if (res) return res;
17142 : : }
17143 : : }
17144 : : }
17145 : : break;
17146 : : }
17147 : : default:;
17148 : : }
17149 : : }
17150 : : break;
17151 : : }
17152 : 0 : default:;
17153 : : }
17154 : 0 : if (tree_expr_nonzero_p (_q40))
17155 : : {
17156 : 0 : switch (TREE_CODE (_q41))
17157 : : {
17158 : 0 : case BIT_XOR_EXPR:
17159 : 0 : {
17160 : 0 : tree _q60 = TREE_OPERAND (_q41, 0);
17161 : 0 : tree _q61 = TREE_OPERAND (_q41, 1);
17162 : 0 : switch (TREE_CODE (_p1))
17163 : : {
17164 : 0 : case NE_EXPR:
17165 : 0 : {
17166 : 0 : tree _q90 = TREE_OPERAND (_p1, 0);
17167 : 0 : tree _q91 = TREE_OPERAND (_p1, 1);
17168 : 0 : if ((_q90 == _q60 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q60, 0) && types_match (_q90, _q60)))
17169 : : {
17170 : 0 : if ((_q91 == _q61 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q61, 0) && types_match (_q91, _q61)))
17171 : : {
17172 : 0 : {
17173 : 0 : tree captures[5] ATTRIBUTE_UNUSED = { _q60, _q61, _q40, _q20, _p1 };
17174 : 0 : tree res = generic_simplify_129 (loc, type, _p0, _p1, captures, GT_EXPR);
17175 : 0 : if (res) return res;
17176 : : }
17177 : : }
17178 : : }
17179 : 0 : if ((_q90 == _q61 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q61, 0) && types_match (_q90, _q61)))
17180 : : {
17181 : 0 : if ((_q91 == _q60 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q60, 0) && types_match (_q91, _q60)))
17182 : : {
17183 : 0 : {
17184 : 0 : tree captures[5] ATTRIBUTE_UNUSED = { _q61, _q60, _q40, _q20, _p1 };
17185 : 0 : tree res = generic_simplify_129 (loc, type, _p0, _p1, captures, GT_EXPR);
17186 : 0 : if (res) return res;
17187 : : }
17188 : : }
17189 : : }
17190 : : break;
17191 : : }
17192 : : default:;
17193 : : }
17194 : : break;
17195 : : }
17196 : : default:;
17197 : : }
17198 : : }
17199 : : break;
17200 : : }
17201 : 114 : default:;
17202 : : }
17203 : 114 : switch (TREE_CODE (_q20))
17204 : : {
17205 : 0 : case BIT_XOR_EXPR:
17206 : 0 : {
17207 : 0 : tree _q30 = TREE_OPERAND (_q20, 0);
17208 : 0 : tree _q31 = TREE_OPERAND (_q20, 1);
17209 : 0 : switch (TREE_CODE (_p1))
17210 : : {
17211 : 0 : case NE_EXPR:
17212 : 0 : {
17213 : 0 : tree _q70 = TREE_OPERAND (_p1, 0);
17214 : 0 : tree _q71 = TREE_OPERAND (_p1, 1);
17215 : 0 : if ((_q70 == _q30 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q30, 0) && types_match (_q70, _q30)))
17216 : : {
17217 : 0 : if ((_q71 == _q31 && ! TREE_SIDE_EFFECTS (_q71)) || (operand_equal_p (_q71, _q31, 0) && types_match (_q71, _q31)))
17218 : : {
17219 : 0 : {
17220 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q30, _q31, _q21, _p1 };
17221 : 0 : tree res = generic_simplify_130 (loc, type, _p0, _p1, captures, LT_EXPR);
17222 : 0 : if (res) return res;
17223 : : }
17224 : : }
17225 : : }
17226 : 0 : if ((_q70 == _q31 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q31, 0) && types_match (_q70, _q31)))
17227 : : {
17228 : 0 : if ((_q71 == _q30 && ! TREE_SIDE_EFFECTS (_q71)) || (operand_equal_p (_q71, _q30, 0) && types_match (_q71, _q30)))
17229 : : {
17230 : 0 : {
17231 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q31, _q30, _q21, _p1 };
17232 : 0 : tree res = generic_simplify_130 (loc, type, _p0, _p1, captures, LT_EXPR);
17233 : 0 : if (res) return res;
17234 : : }
17235 : : }
17236 : : }
17237 : : break;
17238 : : }
17239 : : default:;
17240 : : }
17241 : : break;
17242 : : }
17243 : 114 : default:;
17244 : : }
17245 : 114 : switch (TREE_CODE (_q21))
17246 : : {
17247 : 0 : case BIT_XOR_EXPR:
17248 : 0 : {
17249 : 0 : tree _q40 = TREE_OPERAND (_q21, 0);
17250 : 0 : tree _q41 = TREE_OPERAND (_q21, 1);
17251 : 0 : switch (TREE_CODE (_p1))
17252 : : {
17253 : 0 : case NE_EXPR:
17254 : 0 : {
17255 : 0 : tree _q70 = TREE_OPERAND (_p1, 0);
17256 : 0 : tree _q71 = TREE_OPERAND (_p1, 1);
17257 : 0 : if ((_q70 == _q40 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q40, 0) && types_match (_q70, _q40)))
17258 : : {
17259 : 0 : if ((_q71 == _q41 && ! TREE_SIDE_EFFECTS (_q71)) || (operand_equal_p (_q71, _q41, 0) && types_match (_q71, _q41)))
17260 : : {
17261 : 0 : {
17262 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q40, _q41, _q20, _p1 };
17263 : 0 : tree res = generic_simplify_130 (loc, type, _p0, _p1, captures, GT_EXPR);
17264 : 0 : if (res) return res;
17265 : : }
17266 : : }
17267 : : }
17268 : 0 : if ((_q70 == _q41 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q41, 0) && types_match (_q70, _q41)))
17269 : : {
17270 : 0 : if ((_q71 == _q40 && ! TREE_SIDE_EFFECTS (_q71)) || (operand_equal_p (_q71, _q40, 0) && types_match (_q71, _q40)))
17271 : : {
17272 : 0 : {
17273 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q41, _q40, _q20, _p1 };
17274 : 0 : tree res = generic_simplify_130 (loc, type, _p0, _p1, captures, GT_EXPR);
17275 : 0 : if (res) return res;
17276 : : }
17277 : : }
17278 : : }
17279 : : break;
17280 : : }
17281 : : default:;
17282 : : }
17283 : : break;
17284 : : }
17285 : : default:;
17286 : : }
17287 : : break;
17288 : : }
17289 : 265 : case NE_EXPR:
17290 : 265 : {
17291 : 265 : tree _q20 = TREE_OPERAND (_p0, 0);
17292 : 265 : tree _q21 = TREE_OPERAND (_p0, 1);
17293 : 265 : if (tree_min_value (_q21))
17294 : : {
17295 : 54 : switch (TREE_CODE (_p1))
17296 : : {
17297 : 0 : case GT_EXPR:
17298 : 0 : {
17299 : 0 : tree _q50 = TREE_OPERAND (_p1, 0);
17300 : 0 : tree _q51 = TREE_OPERAND (_p1, 1);
17301 : 0 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
17302 : : {
17303 : 0 : {
17304 : 0 : tree captures[3] ATTRIBUTE_UNUSED = { _q20, _q51, _p0 };
17305 : 0 : tree res = generic_simplify_131 (loc, type, _p0, _p1, captures);
17306 : 0 : if (res) return res;
17307 : : }
17308 : : }
17309 : : break;
17310 : : }
17311 : 0 : case LT_EXPR:
17312 : 0 : {
17313 : 0 : tree _q50 = TREE_OPERAND (_p1, 0);
17314 : 0 : tree _q51 = TREE_OPERAND (_p1, 1);
17315 : 0 : if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
17316 : : {
17317 : 0 : {
17318 : 0 : tree captures[3] ATTRIBUTE_UNUSED = { _q20, _q50, _p0 };
17319 : 0 : tree res = generic_simplify_131 (loc, type, _p0, _p1, captures);
17320 : 0 : if (res) return res;
17321 : : }
17322 : : }
17323 : : break;
17324 : : }
17325 : 0 : case LE_EXPR:
17326 : 0 : {
17327 : 0 : tree _q50 = TREE_OPERAND (_p1, 0);
17328 : 0 : tree _q51 = TREE_OPERAND (_p1, 1);
17329 : 0 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
17330 : : {
17331 : 0 : {
17332 : 0 : tree captures[2] ATTRIBUTE_UNUSED = { _q20, _q51 };
17333 : 0 : tree res = generic_simplify_132 (loc, type, _p0, _p1, captures);
17334 : 0 : if (res) return res;
17335 : : }
17336 : : }
17337 : : break;
17338 : : }
17339 : 1 : case GE_EXPR:
17340 : 1 : {
17341 : 1 : tree _q50 = TREE_OPERAND (_p1, 0);
17342 : 1 : tree _q51 = TREE_OPERAND (_p1, 1);
17343 : 1 : if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
17344 : : {
17345 : 0 : {
17346 : 0 : tree captures[2] ATTRIBUTE_UNUSED = { _q20, _q50 };
17347 : 0 : tree res = generic_simplify_132 (loc, type, _p0, _p1, captures);
17348 : 0 : if (res) return res;
17349 : : }
17350 : : }
17351 : : break;
17352 : : }
17353 : : default:;
17354 : : }
17355 : : }
17356 : 265 : if (tree_max_value (_q21))
17357 : : {
17358 : 0 : switch (TREE_CODE (_p1))
17359 : : {
17360 : 0 : case LT_EXPR:
17361 : 0 : {
17362 : 0 : tree _q50 = TREE_OPERAND (_p1, 0);
17363 : 0 : tree _q51 = TREE_OPERAND (_p1, 1);
17364 : 0 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
17365 : : {
17366 : 0 : {
17367 : 0 : tree captures[3] ATTRIBUTE_UNUSED = { _q20, _q51, _p0 };
17368 : 0 : tree res = generic_simplify_133 (loc, type, _p0, _p1, captures);
17369 : 0 : if (res) return res;
17370 : : }
17371 : : }
17372 : : break;
17373 : : }
17374 : 0 : case GT_EXPR:
17375 : 0 : {
17376 : 0 : tree _q50 = TREE_OPERAND (_p1, 0);
17377 : 0 : tree _q51 = TREE_OPERAND (_p1, 1);
17378 : 0 : if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
17379 : : {
17380 : 0 : {
17381 : 0 : tree captures[3] ATTRIBUTE_UNUSED = { _q20, _q50, _p0 };
17382 : 0 : tree res = generic_simplify_133 (loc, type, _p0, _p1, captures);
17383 : 0 : if (res) return res;
17384 : : }
17385 : : }
17386 : : break;
17387 : : }
17388 : 0 : case GE_EXPR:
17389 : 0 : {
17390 : 0 : tree _q50 = TREE_OPERAND (_p1, 0);
17391 : 0 : tree _q51 = TREE_OPERAND (_p1, 1);
17392 : 0 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
17393 : : {
17394 : 0 : {
17395 : 0 : tree captures[3] ATTRIBUTE_UNUSED = { _p1, _q20, _q51 };
17396 : 0 : tree res = generic_simplify_134 (loc, type, _p0, _p1, captures, NE_EXPR);
17397 : 0 : if (res) return res;
17398 : : }
17399 : : }
17400 : : break;
17401 : : }
17402 : 0 : case LE_EXPR:
17403 : 0 : {
17404 : 0 : tree _q50 = TREE_OPERAND (_p1, 0);
17405 : 0 : tree _q51 = TREE_OPERAND (_p1, 1);
17406 : 0 : if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
17407 : : {
17408 : 0 : {
17409 : 0 : tree captures[3] ATTRIBUTE_UNUSED = { _p1, _q20, _q50 };
17410 : 0 : tree res = generic_simplify_134 (loc, type, _p0, _p1, captures, NE_EXPR);
17411 : 0 : if (res) return res;
17412 : : }
17413 : : }
17414 : : break;
17415 : : }
17416 : : default:;
17417 : : }
17418 : : }
17419 : 265 : switch (TREE_CODE (_p1))
17420 : : {
17421 : 13 : case EQ_EXPR:
17422 : 13 : {
17423 : 13 : tree _q50 = TREE_OPERAND (_p1, 0);
17424 : 13 : tree _q51 = TREE_OPERAND (_p1, 1);
17425 : 13 : switch (TREE_CODE (_q50))
17426 : : {
17427 : 0 : CASE_CONVERT:
17428 : 0 : {
17429 : 0 : tree _q60 = TREE_OPERAND (_q50, 0);
17430 : 0 : if ((_q60 == _q20 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q20, 0) && types_match (_q60, _q20)))
17431 : : {
17432 : 0 : {
17433 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q50, _q51 };
17434 : 0 : tree res = generic_simplify_135 (loc, type, _p0, _p1, captures, EQ_EXPR, NE_EXPR);
17435 : 0 : if (res) return res;
17436 : : }
17437 : : }
17438 : 0 : if ((_q60 == _q21 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q21, 0) && types_match (_q60, _q21)))
17439 : : {
17440 : 0 : {
17441 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q50, _q51 };
17442 : 0 : tree res = generic_simplify_135 (loc, type, _p0, _p1, captures, EQ_EXPR, NE_EXPR);
17443 : 0 : if (res) return res;
17444 : : }
17445 : : }
17446 : : break;
17447 : : }
17448 : 13 : default:;
17449 : : }
17450 : 13 : switch (TREE_CODE (_q51))
17451 : : {
17452 : 0 : CASE_CONVERT:
17453 : 0 : {
17454 : 0 : tree _q70 = TREE_OPERAND (_q51, 0);
17455 : 0 : if ((_q70 == _q20 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q20, 0) && types_match (_q70, _q20)))
17456 : : {
17457 : 0 : {
17458 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q51, _q50 };
17459 : 0 : tree res = generic_simplify_135 (loc, type, _p0, _p1, captures, EQ_EXPR, NE_EXPR);
17460 : 0 : if (res) return res;
17461 : : }
17462 : : }
17463 : 0 : if ((_q70 == _q21 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q21, 0) && types_match (_q70, _q21)))
17464 : : {
17465 : 0 : {
17466 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q51, _q50 };
17467 : 0 : tree res = generic_simplify_135 (loc, type, _p0, _p1, captures, EQ_EXPR, NE_EXPR);
17468 : 0 : if (res) return res;
17469 : : }
17470 : : }
17471 : : break;
17472 : : }
17473 : : default:;
17474 : : }
17475 : : break;
17476 : : }
17477 : 1 : case NE_EXPR:
17478 : 1 : {
17479 : 1 : tree _q50 = TREE_OPERAND (_p1, 0);
17480 : 1 : tree _q51 = TREE_OPERAND (_p1, 1);
17481 : 1 : switch (TREE_CODE (_q50))
17482 : : {
17483 : 0 : CASE_CONVERT:
17484 : 0 : {
17485 : 0 : tree _q60 = TREE_OPERAND (_q50, 0);
17486 : 0 : if ((_q60 == _q20 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q20, 0) && types_match (_q60, _q20)))
17487 : : {
17488 : 0 : {
17489 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q50, _q51 };
17490 : 0 : tree res = generic_simplify_135 (loc, type, _p0, _p1, captures, NE_EXPR, NE_EXPR);
17491 : 0 : if (res) return res;
17492 : : }
17493 : : }
17494 : 0 : if ((_q60 == _q21 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q21, 0) && types_match (_q60, _q21)))
17495 : : {
17496 : 0 : {
17497 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q50, _q51 };
17498 : 0 : tree res = generic_simplify_135 (loc, type, _p0, _p1, captures, NE_EXPR, NE_EXPR);
17499 : 0 : if (res) return res;
17500 : : }
17501 : : }
17502 : : break;
17503 : : }
17504 : 1 : default:;
17505 : : }
17506 : 1 : switch (TREE_CODE (_q51))
17507 : : {
17508 : 0 : CASE_CONVERT:
17509 : 0 : {
17510 : 0 : tree _q70 = TREE_OPERAND (_q51, 0);
17511 : 0 : if ((_q70 == _q20 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q20, 0) && types_match (_q70, _q20)))
17512 : : {
17513 : 0 : {
17514 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q51, _q50 };
17515 : 0 : tree res = generic_simplify_135 (loc, type, _p0, _p1, captures, NE_EXPR, NE_EXPR);
17516 : 0 : if (res) return res;
17517 : : }
17518 : : }
17519 : 0 : if ((_q70 == _q21 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q21, 0) && types_match (_q70, _q21)))
17520 : : {
17521 : 0 : {
17522 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q51, _q50 };
17523 : 0 : tree res = generic_simplify_135 (loc, type, _p0, _p1, captures, NE_EXPR, NE_EXPR);
17524 : 0 : if (res) return res;
17525 : : }
17526 : : }
17527 : : break;
17528 : : }
17529 : : default:;
17530 : : }
17531 : : break;
17532 : : }
17533 : 0 : case LT_EXPR:
17534 : 0 : {
17535 : 0 : tree _q50 = TREE_OPERAND (_p1, 0);
17536 : 0 : tree _q51 = TREE_OPERAND (_p1, 1);
17537 : 0 : switch (TREE_CODE (_q50))
17538 : : {
17539 : 0 : CASE_CONVERT:
17540 : 0 : {
17541 : 0 : tree _q60 = TREE_OPERAND (_q50, 0);
17542 : 0 : if ((_q60 == _q20 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q20, 0) && types_match (_q60, _q20)))
17543 : : {
17544 : 0 : {
17545 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q50, _q51 };
17546 : 0 : tree res = generic_simplify_135 (loc, type, _p0, _p1, captures, LT_EXPR, NE_EXPR);
17547 : 0 : if (res) return res;
17548 : : }
17549 : : }
17550 : 0 : if ((_q60 == _q21 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q21, 0) && types_match (_q60, _q21)))
17551 : : {
17552 : 0 : {
17553 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q50, _q51 };
17554 : 0 : tree res = generic_simplify_135 (loc, type, _p0, _p1, captures, LT_EXPR, NE_EXPR);
17555 : 0 : if (res) return res;
17556 : : }
17557 : : }
17558 : : break;
17559 : : }
17560 : 0 : default:;
17561 : : }
17562 : 0 : switch (TREE_CODE (_q51))
17563 : : {
17564 : 0 : CASE_CONVERT:
17565 : 0 : {
17566 : 0 : tree _q70 = TREE_OPERAND (_q51, 0);
17567 : 0 : if ((_q70 == _q20 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q20, 0) && types_match (_q70, _q20)))
17568 : : {
17569 : 0 : {
17570 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q51, _q50 };
17571 : 0 : tree res = generic_simplify_135 (loc, type, _p0, _p1, captures, GT_EXPR, NE_EXPR);
17572 : 0 : if (res) return res;
17573 : : }
17574 : : }
17575 : 0 : if ((_q70 == _q21 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q21, 0) && types_match (_q70, _q21)))
17576 : : {
17577 : 0 : {
17578 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q51, _q50 };
17579 : 0 : tree res = generic_simplify_135 (loc, type, _p0, _p1, captures, GT_EXPR, NE_EXPR);
17580 : 0 : if (res) return res;
17581 : : }
17582 : : }
17583 : : break;
17584 : : }
17585 : : default:;
17586 : : }
17587 : : break;
17588 : : }
17589 : 0 : case GT_EXPR:
17590 : 0 : {
17591 : 0 : tree _q50 = TREE_OPERAND (_p1, 0);
17592 : 0 : tree _q51 = TREE_OPERAND (_p1, 1);
17593 : 0 : switch (TREE_CODE (_q50))
17594 : : {
17595 : 0 : CASE_CONVERT:
17596 : 0 : {
17597 : 0 : tree _q60 = TREE_OPERAND (_q50, 0);
17598 : 0 : if ((_q60 == _q20 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q20, 0) && types_match (_q60, _q20)))
17599 : : {
17600 : 0 : {
17601 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q50, _q51 };
17602 : 0 : tree res = generic_simplify_135 (loc, type, _p0, _p1, captures, GT_EXPR, NE_EXPR);
17603 : 0 : if (res) return res;
17604 : : }
17605 : : }
17606 : 0 : if ((_q60 == _q21 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q21, 0) && types_match (_q60, _q21)))
17607 : : {
17608 : 0 : {
17609 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q50, _q51 };
17610 : 0 : tree res = generic_simplify_135 (loc, type, _p0, _p1, captures, GT_EXPR, NE_EXPR);
17611 : 0 : if (res) return res;
17612 : : }
17613 : : }
17614 : : break;
17615 : : }
17616 : 0 : default:;
17617 : : }
17618 : 0 : switch (TREE_CODE (_q51))
17619 : : {
17620 : 0 : CASE_CONVERT:
17621 : 0 : {
17622 : 0 : tree _q70 = TREE_OPERAND (_q51, 0);
17623 : 0 : if ((_q70 == _q20 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q20, 0) && types_match (_q70, _q20)))
17624 : : {
17625 : 0 : {
17626 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q51, _q50 };
17627 : 0 : tree res = generic_simplify_135 (loc, type, _p0, _p1, captures, LT_EXPR, NE_EXPR);
17628 : 0 : if (res) return res;
17629 : : }
17630 : : }
17631 : 0 : if ((_q70 == _q21 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q21, 0) && types_match (_q70, _q21)))
17632 : : {
17633 : 0 : {
17634 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q51, _q50 };
17635 : 0 : tree res = generic_simplify_135 (loc, type, _p0, _p1, captures, LT_EXPR, NE_EXPR);
17636 : 0 : if (res) return res;
17637 : : }
17638 : : }
17639 : : break;
17640 : : }
17641 : : default:;
17642 : : }
17643 : : break;
17644 : : }
17645 : 0 : case LE_EXPR:
17646 : 0 : {
17647 : 0 : tree _q50 = TREE_OPERAND (_p1, 0);
17648 : 0 : tree _q51 = TREE_OPERAND (_p1, 1);
17649 : 0 : switch (TREE_CODE (_q50))
17650 : : {
17651 : 0 : CASE_CONVERT:
17652 : 0 : {
17653 : 0 : tree _q60 = TREE_OPERAND (_q50, 0);
17654 : 0 : if ((_q60 == _q20 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q20, 0) && types_match (_q60, _q20)))
17655 : : {
17656 : 0 : {
17657 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q50, _q51 };
17658 : 0 : tree res = generic_simplify_135 (loc, type, _p0, _p1, captures, LE_EXPR, NE_EXPR);
17659 : 0 : if (res) return res;
17660 : : }
17661 : : }
17662 : 0 : if ((_q60 == _q21 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q21, 0) && types_match (_q60, _q21)))
17663 : : {
17664 : 0 : {
17665 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q50, _q51 };
17666 : 0 : tree res = generic_simplify_135 (loc, type, _p0, _p1, captures, LE_EXPR, NE_EXPR);
17667 : 0 : if (res) return res;
17668 : : }
17669 : : }
17670 : : break;
17671 : : }
17672 : 0 : default:;
17673 : : }
17674 : 0 : switch (TREE_CODE (_q51))
17675 : : {
17676 : 0 : CASE_CONVERT:
17677 : 0 : {
17678 : 0 : tree _q70 = TREE_OPERAND (_q51, 0);
17679 : 0 : if ((_q70 == _q20 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q20, 0) && types_match (_q70, _q20)))
17680 : : {
17681 : 0 : {
17682 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q51, _q50 };
17683 : 0 : tree res = generic_simplify_135 (loc, type, _p0, _p1, captures, GE_EXPR, NE_EXPR);
17684 : 0 : if (res) return res;
17685 : : }
17686 : : }
17687 : 0 : if ((_q70 == _q21 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q21, 0) && types_match (_q70, _q21)))
17688 : : {
17689 : 0 : {
17690 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q51, _q50 };
17691 : 0 : tree res = generic_simplify_135 (loc, type, _p0, _p1, captures, GE_EXPR, NE_EXPR);
17692 : 0 : if (res) return res;
17693 : : }
17694 : : }
17695 : : break;
17696 : : }
17697 : : default:;
17698 : : }
17699 : : break;
17700 : : }
17701 : 1 : case GE_EXPR:
17702 : 1 : {
17703 : 1 : tree _q50 = TREE_OPERAND (_p1, 0);
17704 : 1 : tree _q51 = TREE_OPERAND (_p1, 1);
17705 : 1 : switch (TREE_CODE (_q50))
17706 : : {
17707 : 0 : CASE_CONVERT:
17708 : 0 : {
17709 : 0 : tree _q60 = TREE_OPERAND (_q50, 0);
17710 : 0 : if ((_q60 == _q20 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q20, 0) && types_match (_q60, _q20)))
17711 : : {
17712 : 0 : {
17713 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q50, _q51 };
17714 : 0 : tree res = generic_simplify_135 (loc, type, _p0, _p1, captures, GE_EXPR, NE_EXPR);
17715 : 0 : if (res) return res;
17716 : : }
17717 : : }
17718 : 0 : if ((_q60 == _q21 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q21, 0) && types_match (_q60, _q21)))
17719 : : {
17720 : 0 : {
17721 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q50, _q51 };
17722 : 0 : tree res = generic_simplify_135 (loc, type, _p0, _p1, captures, GE_EXPR, NE_EXPR);
17723 : 0 : if (res) return res;
17724 : : }
17725 : : }
17726 : : break;
17727 : : }
17728 : 1 : default:;
17729 : : }
17730 : 1 : switch (TREE_CODE (_q51))
17731 : : {
17732 : 0 : CASE_CONVERT:
17733 : 0 : {
17734 : 0 : tree _q70 = TREE_OPERAND (_q51, 0);
17735 : 0 : if ((_q70 == _q20 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q20, 0) && types_match (_q70, _q20)))
17736 : : {
17737 : 0 : {
17738 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q51, _q50 };
17739 : 0 : tree res = generic_simplify_135 (loc, type, _p0, _p1, captures, LE_EXPR, NE_EXPR);
17740 : 0 : if (res) return res;
17741 : : }
17742 : : }
17743 : 0 : if ((_q70 == _q21 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q21, 0) && types_match (_q70, _q21)))
17744 : : {
17745 : 0 : {
17746 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q51, _q50 };
17747 : 0 : tree res = generic_simplify_135 (loc, type, _p0, _p1, captures, LE_EXPR, NE_EXPR);
17748 : 0 : if (res) return res;
17749 : : }
17750 : : }
17751 : : break;
17752 : : }
17753 : : default:;
17754 : : }
17755 : : break;
17756 : : }
17757 : 265 : default:;
17758 : : }
17759 : 265 : switch (TREE_CODE (_q20))
17760 : : {
17761 : 22 : CASE_CONVERT:
17762 : 22 : {
17763 : 22 : tree _q30 = TREE_OPERAND (_q20, 0);
17764 : 22 : switch (TREE_CODE (_p1))
17765 : : {
17766 : 0 : case EQ_EXPR:
17767 : 0 : {
17768 : 0 : tree _q60 = TREE_OPERAND (_p1, 0);
17769 : 0 : tree _q61 = TREE_OPERAND (_p1, 1);
17770 : 0 : if ((_q60 == _q30 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q30, 0) && types_match (_q60, _q30)))
17771 : : {
17772 : 0 : {
17773 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q30, _q61, _p0, _q20, _q21 };
17774 : 0 : tree res = generic_simplify_126 (loc, type, _p0, _p1, captures, NE_EXPR, EQ_EXPR);
17775 : 0 : if (res) return res;
17776 : : }
17777 : : }
17778 : 0 : if ((_q61 == _q30 && ! TREE_SIDE_EFFECTS (_q61)) || (operand_equal_p (_q61, _q30, 0) && types_match (_q61, _q30)))
17779 : : {
17780 : 0 : {
17781 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q30, _q60, _p0, _q20, _q21 };
17782 : 0 : tree res = generic_simplify_126 (loc, type, _p0, _p1, captures, NE_EXPR, EQ_EXPR);
17783 : 0 : if (res) return res;
17784 : : }
17785 : : }
17786 : : break;
17787 : : }
17788 : 0 : case NE_EXPR:
17789 : 0 : {
17790 : 0 : tree _q60 = TREE_OPERAND (_p1, 0);
17791 : 0 : tree _q61 = TREE_OPERAND (_p1, 1);
17792 : 0 : if ((_q60 == _q30 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q30, 0) && types_match (_q60, _q30)))
17793 : : {
17794 : 0 : {
17795 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q30, _q61, _p0, _q20, _q21 };
17796 : 0 : tree res = generic_simplify_126 (loc, type, _p0, _p1, captures, NE_EXPR, NE_EXPR);
17797 : 0 : if (res) return res;
17798 : : }
17799 : : }
17800 : 0 : if ((_q61 == _q30 && ! TREE_SIDE_EFFECTS (_q61)) || (operand_equal_p (_q61, _q30, 0) && types_match (_q61, _q30)))
17801 : : {
17802 : 0 : {
17803 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q30, _q60, _p0, _q20, _q21 };
17804 : 0 : tree res = generic_simplify_126 (loc, type, _p0, _p1, captures, NE_EXPR, NE_EXPR);
17805 : 0 : if (res) return res;
17806 : : }
17807 : : }
17808 : : break;
17809 : : }
17810 : : default:;
17811 : : }
17812 : : break;
17813 : : }
17814 : 265 : default:;
17815 : : }
17816 : 265 : switch (TREE_CODE (_q21))
17817 : : {
17818 : 0 : CASE_CONVERT:
17819 : 0 : {
17820 : 0 : tree _q40 = TREE_OPERAND (_q21, 0);
17821 : 0 : switch (TREE_CODE (_p1))
17822 : : {
17823 : 0 : case EQ_EXPR:
17824 : 0 : {
17825 : 0 : tree _q60 = TREE_OPERAND (_p1, 0);
17826 : 0 : tree _q61 = TREE_OPERAND (_p1, 1);
17827 : 0 : if ((_q60 == _q40 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q40, 0) && types_match (_q60, _q40)))
17828 : : {
17829 : 0 : {
17830 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q40, _q61, _p0, _q21, _q20 };
17831 : 0 : tree res = generic_simplify_126 (loc, type, _p0, _p1, captures, NE_EXPR, EQ_EXPR);
17832 : 0 : if (res) return res;
17833 : : }
17834 : : }
17835 : 0 : if ((_q61 == _q40 && ! TREE_SIDE_EFFECTS (_q61)) || (operand_equal_p (_q61, _q40, 0) && types_match (_q61, _q40)))
17836 : : {
17837 : 0 : {
17838 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q40, _q60, _p0, _q21, _q20 };
17839 : 0 : tree res = generic_simplify_126 (loc, type, _p0, _p1, captures, NE_EXPR, EQ_EXPR);
17840 : 0 : if (res) return res;
17841 : : }
17842 : : }
17843 : : break;
17844 : : }
17845 : 0 : case NE_EXPR:
17846 : 0 : {
17847 : 0 : tree _q60 = TREE_OPERAND (_p1, 0);
17848 : 0 : tree _q61 = TREE_OPERAND (_p1, 1);
17849 : 0 : if ((_q60 == _q40 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q40, 0) && types_match (_q60, _q40)))
17850 : : {
17851 : 0 : {
17852 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q40, _q61, _p0, _q21, _q20 };
17853 : 0 : tree res = generic_simplify_126 (loc, type, _p0, _p1, captures, NE_EXPR, NE_EXPR);
17854 : 0 : if (res) return res;
17855 : : }
17856 : : }
17857 : 0 : if ((_q61 == _q40 && ! TREE_SIDE_EFFECTS (_q61)) || (operand_equal_p (_q61, _q40, 0) && types_match (_q61, _q40)))
17858 : : {
17859 : 0 : {
17860 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q40, _q60, _p0, _q21, _q20 };
17861 : 0 : tree res = generic_simplify_126 (loc, type, _p0, _p1, captures, NE_EXPR, NE_EXPR);
17862 : 0 : if (res) return res;
17863 : : }
17864 : : }
17865 : : break;
17866 : : }
17867 : : default:;
17868 : : }
17869 : : break;
17870 : : }
17871 : 265 : default:;
17872 : : }
17873 : 265 : switch (TREE_CODE (_p1))
17874 : : {
17875 : 13 : case EQ_EXPR:
17876 : 13 : {
17877 : 13 : tree _q50 = TREE_OPERAND (_p1, 0);
17878 : 13 : tree _q51 = TREE_OPERAND (_p1, 1);
17879 : 13 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
17880 : : {
17881 : 0 : {
17882 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q50, _q51 };
17883 : 0 : tree res = generic_simplify_136 (loc, type, _p0, _p1, captures, EQ_EXPR, NE_EXPR);
17884 : 0 : if (res) return res;
17885 : : }
17886 : 0 : {
17887 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q20, _q51, _p0, _q20, _q21 };
17888 : 0 : tree res = generic_simplify_127 (loc, type, _p0, _p1, captures, NE_EXPR, EQ_EXPR);
17889 : 0 : if (res) return res;
17890 : : }
17891 : : }
17892 : 13 : if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
17893 : : {
17894 : 0 : {
17895 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q51, _q50 };
17896 : 0 : tree res = generic_simplify_136 (loc, type, _p0, _p1, captures, EQ_EXPR, NE_EXPR);
17897 : 0 : if (res) return res;
17898 : : }
17899 : : }
17900 : 13 : if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
17901 : : {
17902 : 0 : {
17903 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q50, _q51 };
17904 : 0 : tree res = generic_simplify_136 (loc, type, _p0, _p1, captures, EQ_EXPR, NE_EXPR);
17905 : 0 : if (res) return res;
17906 : : }
17907 : 0 : {
17908 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q21, _q51, _p0, _q21, _q20 };
17909 : 0 : tree res = generic_simplify_127 (loc, type, _p0, _p1, captures, NE_EXPR, EQ_EXPR);
17910 : 0 : if (res) return res;
17911 : : }
17912 : : }
17913 : 13 : if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
17914 : : {
17915 : 5 : {
17916 : 5 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q51, _q50 };
17917 : 5 : tree res = generic_simplify_136 (loc, type, _p0, _p1, captures, EQ_EXPR, NE_EXPR);
17918 : 5 : if (res) return res;
17919 : : }
17920 : 5 : {
17921 : 5 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q21, _q50, _p0, _q21, _q20 };
17922 : 5 : tree res = generic_simplify_127 (loc, type, _p0, _p1, captures, NE_EXPR, EQ_EXPR);
17923 : 5 : if (res) return res;
17924 : : }
17925 : : }
17926 : 13 : if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
17927 : : {
17928 : 0 : {
17929 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q20, _q50, _p0, _q20, _q21 };
17930 : 0 : tree res = generic_simplify_127 (loc, type, _p0, _p1, captures, NE_EXPR, EQ_EXPR);
17931 : 0 : if (res) return res;
17932 : : }
17933 : : }
17934 : : break;
17935 : : }
17936 : 1 : case NE_EXPR:
17937 : 1 : {
17938 : 1 : tree _q50 = TREE_OPERAND (_p1, 0);
17939 : 1 : tree _q51 = TREE_OPERAND (_p1, 1);
17940 : 1 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
17941 : : {
17942 : 0 : {
17943 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q50, _q51 };
17944 : 0 : tree res = generic_simplify_136 (loc, type, _p0, _p1, captures, NE_EXPR, NE_EXPR);
17945 : 0 : if (res) return res;
17946 : : }
17947 : 0 : {
17948 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q20, _q51, _p0, _q20, _q21 };
17949 : 0 : tree res = generic_simplify_127 (loc, type, _p0, _p1, captures, NE_EXPR, NE_EXPR);
17950 : 0 : if (res) return res;
17951 : : }
17952 : : }
17953 : 1 : if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
17954 : : {
17955 : 0 : {
17956 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q51, _q50 };
17957 : 0 : tree res = generic_simplify_136 (loc, type, _p0, _p1, captures, NE_EXPR, NE_EXPR);
17958 : 0 : if (res) return res;
17959 : : }
17960 : : }
17961 : 1 : if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
17962 : : {
17963 : 0 : {
17964 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q50, _q51 };
17965 : 0 : tree res = generic_simplify_136 (loc, type, _p0, _p1, captures, NE_EXPR, NE_EXPR);
17966 : 0 : if (res) return res;
17967 : : }
17968 : 0 : {
17969 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q21, _q51, _p0, _q21, _q20 };
17970 : 0 : tree res = generic_simplify_127 (loc, type, _p0, _p1, captures, NE_EXPR, NE_EXPR);
17971 : 0 : if (res) return res;
17972 : : }
17973 : : }
17974 : 1 : if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
17975 : : {
17976 : 0 : {
17977 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q51, _q50 };
17978 : 0 : tree res = generic_simplify_136 (loc, type, _p0, _p1, captures, NE_EXPR, NE_EXPR);
17979 : 0 : if (res) return res;
17980 : : }
17981 : 0 : {
17982 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q21, _q50, _p0, _q21, _q20 };
17983 : 0 : tree res = generic_simplify_127 (loc, type, _p0, _p1, captures, NE_EXPR, NE_EXPR);
17984 : 0 : if (res) return res;
17985 : : }
17986 : : }
17987 : 1 : if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
17988 : : {
17989 : 0 : {
17990 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q20, _q50, _p0, _q20, _q21 };
17991 : 0 : tree res = generic_simplify_127 (loc, type, _p0, _p1, captures, NE_EXPR, NE_EXPR);
17992 : 0 : if (res) return res;
17993 : : }
17994 : : }
17995 : : break;
17996 : : }
17997 : 0 : case LT_EXPR:
17998 : 0 : {
17999 : 0 : tree _q50 = TREE_OPERAND (_p1, 0);
18000 : 0 : tree _q51 = TREE_OPERAND (_p1, 1);
18001 : 0 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
18002 : : {
18003 : 0 : {
18004 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q50, _q51 };
18005 : 0 : tree res = generic_simplify_136 (loc, type, _p0, _p1, captures, LT_EXPR, NE_EXPR);
18006 : 0 : if (res) return res;
18007 : : }
18008 : : }
18009 : 0 : if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
18010 : : {
18011 : 0 : {
18012 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q51, _q50 };
18013 : 0 : tree res = generic_simplify_136 (loc, type, _p0, _p1, captures, GT_EXPR, NE_EXPR);
18014 : 0 : if (res) return res;
18015 : : }
18016 : : }
18017 : 0 : if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
18018 : : {
18019 : 0 : {
18020 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q50, _q51 };
18021 : 0 : tree res = generic_simplify_136 (loc, type, _p0, _p1, captures, LT_EXPR, NE_EXPR);
18022 : 0 : if (res) return res;
18023 : : }
18024 : : }
18025 : 0 : if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
18026 : : {
18027 : 0 : {
18028 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q51, _q50 };
18029 : 0 : tree res = generic_simplify_136 (loc, type, _p0, _p1, captures, GT_EXPR, NE_EXPR);
18030 : 0 : if (res) return res;
18031 : : }
18032 : : }
18033 : : break;
18034 : : }
18035 : 0 : case GT_EXPR:
18036 : 0 : {
18037 : 0 : tree _q50 = TREE_OPERAND (_p1, 0);
18038 : 0 : tree _q51 = TREE_OPERAND (_p1, 1);
18039 : 0 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
18040 : : {
18041 : 0 : {
18042 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q50, _q51 };
18043 : 0 : tree res = generic_simplify_136 (loc, type, _p0, _p1, captures, GT_EXPR, NE_EXPR);
18044 : 0 : if (res) return res;
18045 : : }
18046 : : }
18047 : 0 : if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
18048 : : {
18049 : 0 : {
18050 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q51, _q50 };
18051 : 0 : tree res = generic_simplify_136 (loc, type, _p0, _p1, captures, LT_EXPR, NE_EXPR);
18052 : 0 : if (res) return res;
18053 : : }
18054 : : }
18055 : 0 : if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
18056 : : {
18057 : 0 : {
18058 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q50, _q51 };
18059 : 0 : tree res = generic_simplify_136 (loc, type, _p0, _p1, captures, GT_EXPR, NE_EXPR);
18060 : 0 : if (res) return res;
18061 : : }
18062 : : }
18063 : 0 : if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
18064 : : {
18065 : 0 : {
18066 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q51, _q50 };
18067 : 0 : tree res = generic_simplify_136 (loc, type, _p0, _p1, captures, LT_EXPR, NE_EXPR);
18068 : 0 : if (res) return res;
18069 : : }
18070 : : }
18071 : : break;
18072 : : }
18073 : 0 : case LE_EXPR:
18074 : 0 : {
18075 : 0 : tree _q50 = TREE_OPERAND (_p1, 0);
18076 : 0 : tree _q51 = TREE_OPERAND (_p1, 1);
18077 : 0 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
18078 : : {
18079 : 0 : {
18080 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q50, _q51 };
18081 : 0 : tree res = generic_simplify_136 (loc, type, _p0, _p1, captures, LE_EXPR, NE_EXPR);
18082 : 0 : if (res) return res;
18083 : : }
18084 : : }
18085 : 0 : if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
18086 : : {
18087 : 0 : {
18088 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q51, _q50 };
18089 : 0 : tree res = generic_simplify_136 (loc, type, _p0, _p1, captures, GE_EXPR, NE_EXPR);
18090 : 0 : if (res) return res;
18091 : : }
18092 : : }
18093 : 0 : if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
18094 : : {
18095 : 0 : {
18096 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q50, _q51 };
18097 : 0 : tree res = generic_simplify_136 (loc, type, _p0, _p1, captures, LE_EXPR, NE_EXPR);
18098 : 0 : if (res) return res;
18099 : : }
18100 : : }
18101 : 0 : if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
18102 : : {
18103 : 0 : {
18104 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q51, _q50 };
18105 : 0 : tree res = generic_simplify_136 (loc, type, _p0, _p1, captures, GE_EXPR, NE_EXPR);
18106 : 0 : if (res) return res;
18107 : : }
18108 : : }
18109 : : break;
18110 : : }
18111 : 1 : case GE_EXPR:
18112 : 1 : {
18113 : 1 : tree _q50 = TREE_OPERAND (_p1, 0);
18114 : 1 : tree _q51 = TREE_OPERAND (_p1, 1);
18115 : 1 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
18116 : : {
18117 : 0 : {
18118 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q50, _q51 };
18119 : 0 : tree res = generic_simplify_136 (loc, type, _p0, _p1, captures, GE_EXPR, NE_EXPR);
18120 : 0 : if (res) return res;
18121 : : }
18122 : : }
18123 : 1 : if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
18124 : : {
18125 : 0 : {
18126 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q51, _q50 };
18127 : 0 : tree res = generic_simplify_136 (loc, type, _p0, _p1, captures, LE_EXPR, NE_EXPR);
18128 : 0 : if (res) return res;
18129 : : }
18130 : : }
18131 : 1 : if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
18132 : : {
18133 : 0 : {
18134 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q50, _q51 };
18135 : 0 : tree res = generic_simplify_136 (loc, type, _p0, _p1, captures, GE_EXPR, NE_EXPR);
18136 : 0 : if (res) return res;
18137 : : }
18138 : : }
18139 : 1 : if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
18140 : : {
18141 : 0 : {
18142 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q51, _q50 };
18143 : 0 : tree res = generic_simplify_136 (loc, type, _p0, _p1, captures, LE_EXPR, NE_EXPR);
18144 : 0 : if (res) return res;
18145 : : }
18146 : : }
18147 : : break;
18148 : : }
18149 : 265 : default:;
18150 : : }
18151 : 265 : switch (TREE_CODE (_q20))
18152 : : {
18153 : 31 : case BIT_AND_EXPR:
18154 : 31 : {
18155 : 31 : tree _q30 = TREE_OPERAND (_q20, 0);
18156 : 31 : tree _q31 = TREE_OPERAND (_q20, 1);
18157 : 31 : switch (TREE_CODE (_q30))
18158 : : {
18159 : 0 : case BIT_XOR_EXPR:
18160 : 0 : {
18161 : 0 : tree _q40 = TREE_OPERAND (_q30, 0);
18162 : 0 : tree _q41 = TREE_OPERAND (_q30, 1);
18163 : 0 : if (tree_expr_nonzero_p (_q31))
18164 : : {
18165 : 0 : switch (TREE_CODE (_p1))
18166 : : {
18167 : 0 : case NE_EXPR:
18168 : 0 : {
18169 : 0 : tree _q90 = TREE_OPERAND (_p1, 0);
18170 : 0 : tree _q91 = TREE_OPERAND (_p1, 1);
18171 : 0 : if ((_q90 == _q40 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q40, 0) && types_match (_q90, _q40)))
18172 : : {
18173 : 0 : if ((_q91 == _q41 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q41, 0) && types_match (_q91, _q41)))
18174 : : {
18175 : 0 : {
18176 : 0 : tree captures[5] ATTRIBUTE_UNUSED = { _q40, _q41, _q31, _q21, _p1 };
18177 : 0 : tree res = generic_simplify_129 (loc, type, _p0, _p1, captures, NE_EXPR);
18178 : 0 : if (res) return res;
18179 : : }
18180 : : }
18181 : : }
18182 : 0 : if ((_q90 == _q41 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q41, 0) && types_match (_q90, _q41)))
18183 : : {
18184 : 0 : if ((_q91 == _q40 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q40, 0) && types_match (_q91, _q40)))
18185 : : {
18186 : 0 : {
18187 : 0 : tree captures[5] ATTRIBUTE_UNUSED = { _q41, _q40, _q31, _q21, _p1 };
18188 : 0 : tree res = generic_simplify_129 (loc, type, _p0, _p1, captures, NE_EXPR);
18189 : 0 : if (res) return res;
18190 : : }
18191 : : }
18192 : : }
18193 : : break;
18194 : : }
18195 : : default:;
18196 : : }
18197 : : }
18198 : : break;
18199 : : }
18200 : 31 : default:;
18201 : : }
18202 : 31 : if (tree_expr_nonzero_p (_q30))
18203 : : {
18204 : 0 : switch (TREE_CODE (_q31))
18205 : : {
18206 : 0 : case BIT_XOR_EXPR:
18207 : 0 : {
18208 : 0 : tree _q50 = TREE_OPERAND (_q31, 0);
18209 : 0 : tree _q51 = TREE_OPERAND (_q31, 1);
18210 : 0 : switch (TREE_CODE (_p1))
18211 : : {
18212 : 0 : case NE_EXPR:
18213 : 0 : {
18214 : 0 : tree _q90 = TREE_OPERAND (_p1, 0);
18215 : 0 : tree _q91 = TREE_OPERAND (_p1, 1);
18216 : 0 : if ((_q90 == _q50 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q50, 0) && types_match (_q90, _q50)))
18217 : : {
18218 : 0 : if ((_q91 == _q51 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q51, 0) && types_match (_q91, _q51)))
18219 : : {
18220 : 0 : {
18221 : 0 : tree captures[5] ATTRIBUTE_UNUSED = { _q50, _q51, _q30, _q21, _p1 };
18222 : 0 : tree res = generic_simplify_129 (loc, type, _p0, _p1, captures, NE_EXPR);
18223 : 0 : if (res) return res;
18224 : : }
18225 : : }
18226 : : }
18227 : 0 : if ((_q90 == _q51 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q51, 0) && types_match (_q90, _q51)))
18228 : : {
18229 : 0 : if ((_q91 == _q50 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q50, 0) && types_match (_q91, _q50)))
18230 : : {
18231 : 0 : {
18232 : 0 : tree captures[5] ATTRIBUTE_UNUSED = { _q51, _q50, _q30, _q21, _p1 };
18233 : 0 : tree res = generic_simplify_129 (loc, type, _p0, _p1, captures, NE_EXPR);
18234 : 0 : if (res) return res;
18235 : : }
18236 : : }
18237 : : }
18238 : : break;
18239 : : }
18240 : : default:;
18241 : : }
18242 : : break;
18243 : : }
18244 : : default:;
18245 : : }
18246 : : }
18247 : : break;
18248 : : }
18249 : 265 : default:;
18250 : : }
18251 : 265 : switch (TREE_CODE (_q21))
18252 : : {
18253 : 0 : case BIT_AND_EXPR:
18254 : 0 : {
18255 : 0 : tree _q40 = TREE_OPERAND (_q21, 0);
18256 : 0 : tree _q41 = TREE_OPERAND (_q21, 1);
18257 : 0 : switch (TREE_CODE (_q40))
18258 : : {
18259 : 0 : case BIT_XOR_EXPR:
18260 : 0 : {
18261 : 0 : tree _q50 = TREE_OPERAND (_q40, 0);
18262 : 0 : tree _q51 = TREE_OPERAND (_q40, 1);
18263 : 0 : if (tree_expr_nonzero_p (_q41))
18264 : : {
18265 : 0 : switch (TREE_CODE (_p1))
18266 : : {
18267 : 0 : case NE_EXPR:
18268 : 0 : {
18269 : 0 : tree _q90 = TREE_OPERAND (_p1, 0);
18270 : 0 : tree _q91 = TREE_OPERAND (_p1, 1);
18271 : 0 : if ((_q90 == _q50 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q50, 0) && types_match (_q90, _q50)))
18272 : : {
18273 : 0 : if ((_q91 == _q51 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q51, 0) && types_match (_q91, _q51)))
18274 : : {
18275 : 0 : {
18276 : 0 : tree captures[5] ATTRIBUTE_UNUSED = { _q50, _q51, _q41, _q20, _p1 };
18277 : 0 : tree res = generic_simplify_129 (loc, type, _p0, _p1, captures, NE_EXPR);
18278 : 0 : if (res) return res;
18279 : : }
18280 : : }
18281 : : }
18282 : 0 : if ((_q90 == _q51 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q51, 0) && types_match (_q90, _q51)))
18283 : : {
18284 : 0 : if ((_q91 == _q50 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q50, 0) && types_match (_q91, _q50)))
18285 : : {
18286 : 0 : {
18287 : 0 : tree captures[5] ATTRIBUTE_UNUSED = { _q51, _q50, _q41, _q20, _p1 };
18288 : 0 : tree res = generic_simplify_129 (loc, type, _p0, _p1, captures, NE_EXPR);
18289 : 0 : if (res) return res;
18290 : : }
18291 : : }
18292 : : }
18293 : : break;
18294 : : }
18295 : : default:;
18296 : : }
18297 : : }
18298 : : break;
18299 : : }
18300 : 0 : default:;
18301 : : }
18302 : 0 : if (tree_expr_nonzero_p (_q40))
18303 : : {
18304 : 0 : switch (TREE_CODE (_q41))
18305 : : {
18306 : 0 : case BIT_XOR_EXPR:
18307 : 0 : {
18308 : 0 : tree _q60 = TREE_OPERAND (_q41, 0);
18309 : 0 : tree _q61 = TREE_OPERAND (_q41, 1);
18310 : 0 : switch (TREE_CODE (_p1))
18311 : : {
18312 : 0 : case NE_EXPR:
18313 : 0 : {
18314 : 0 : tree _q90 = TREE_OPERAND (_p1, 0);
18315 : 0 : tree _q91 = TREE_OPERAND (_p1, 1);
18316 : 0 : if ((_q90 == _q60 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q60, 0) && types_match (_q90, _q60)))
18317 : : {
18318 : 0 : if ((_q91 == _q61 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q61, 0) && types_match (_q91, _q61)))
18319 : : {
18320 : 0 : {
18321 : 0 : tree captures[5] ATTRIBUTE_UNUSED = { _q60, _q61, _q40, _q20, _p1 };
18322 : 0 : tree res = generic_simplify_129 (loc, type, _p0, _p1, captures, NE_EXPR);
18323 : 0 : if (res) return res;
18324 : : }
18325 : : }
18326 : : }
18327 : 0 : if ((_q90 == _q61 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q61, 0) && types_match (_q90, _q61)))
18328 : : {
18329 : 0 : if ((_q91 == _q60 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q60, 0) && types_match (_q91, _q60)))
18330 : : {
18331 : 0 : {
18332 : 0 : tree captures[5] ATTRIBUTE_UNUSED = { _q61, _q60, _q40, _q20, _p1 };
18333 : 0 : tree res = generic_simplify_129 (loc, type, _p0, _p1, captures, NE_EXPR);
18334 : 0 : if (res) return res;
18335 : : }
18336 : : }
18337 : : }
18338 : : break;
18339 : : }
18340 : : default:;
18341 : : }
18342 : : break;
18343 : : }
18344 : : default:;
18345 : : }
18346 : : }
18347 : : break;
18348 : : }
18349 : 265 : default:;
18350 : : }
18351 : 265 : switch (TREE_CODE (_q20))
18352 : : {
18353 : 0 : case BIT_XOR_EXPR:
18354 : 0 : {
18355 : 0 : tree _q30 = TREE_OPERAND (_q20, 0);
18356 : 0 : tree _q31 = TREE_OPERAND (_q20, 1);
18357 : 0 : switch (TREE_CODE (_p1))
18358 : : {
18359 : 0 : case NE_EXPR:
18360 : 0 : {
18361 : 0 : tree _q70 = TREE_OPERAND (_p1, 0);
18362 : 0 : tree _q71 = TREE_OPERAND (_p1, 1);
18363 : 0 : if ((_q70 == _q30 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q30, 0) && types_match (_q70, _q30)))
18364 : : {
18365 : 0 : if ((_q71 == _q31 && ! TREE_SIDE_EFFECTS (_q71)) || (operand_equal_p (_q71, _q31, 0) && types_match (_q71, _q31)))
18366 : : {
18367 : 0 : {
18368 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q30, _q31, _q21, _p1 };
18369 : 0 : tree res = generic_simplify_130 (loc, type, _p0, _p1, captures, NE_EXPR);
18370 : 0 : if (res) return res;
18371 : : }
18372 : : }
18373 : : }
18374 : 0 : if ((_q70 == _q31 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q31, 0) && types_match (_q70, _q31)))
18375 : : {
18376 : 0 : if ((_q71 == _q30 && ! TREE_SIDE_EFFECTS (_q71)) || (operand_equal_p (_q71, _q30, 0) && types_match (_q71, _q30)))
18377 : : {
18378 : 0 : {
18379 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q31, _q30, _q21, _p1 };
18380 : 0 : tree res = generic_simplify_130 (loc, type, _p0, _p1, captures, NE_EXPR);
18381 : 0 : if (res) return res;
18382 : : }
18383 : : }
18384 : : }
18385 : : break;
18386 : : }
18387 : : default:;
18388 : : }
18389 : : break;
18390 : : }
18391 : 265 : default:;
18392 : : }
18393 : 265 : switch (TREE_CODE (_q21))
18394 : : {
18395 : 0 : case BIT_XOR_EXPR:
18396 : 0 : {
18397 : 0 : tree _q40 = TREE_OPERAND (_q21, 0);
18398 : 0 : tree _q41 = TREE_OPERAND (_q21, 1);
18399 : 0 : switch (TREE_CODE (_p1))
18400 : : {
18401 : 0 : case NE_EXPR:
18402 : 0 : {
18403 : 0 : tree _q70 = TREE_OPERAND (_p1, 0);
18404 : 0 : tree _q71 = TREE_OPERAND (_p1, 1);
18405 : 0 : if ((_q70 == _q40 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q40, 0) && types_match (_q70, _q40)))
18406 : : {
18407 : 0 : if ((_q71 == _q41 && ! TREE_SIDE_EFFECTS (_q71)) || (operand_equal_p (_q71, _q41, 0) && types_match (_q71, _q41)))
18408 : : {
18409 : 0 : {
18410 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q40, _q41, _q20, _p1 };
18411 : 0 : tree res = generic_simplify_130 (loc, type, _p0, _p1, captures, NE_EXPR);
18412 : 0 : if (res) return res;
18413 : : }
18414 : : }
18415 : : }
18416 : 0 : if ((_q70 == _q41 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q41, 0) && types_match (_q70, _q41)))
18417 : : {
18418 : 0 : if ((_q71 == _q40 && ! TREE_SIDE_EFFECTS (_q71)) || (operand_equal_p (_q71, _q40, 0) && types_match (_q71, _q40)))
18419 : : {
18420 : 0 : {
18421 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q41, _q40, _q20, _p1 };
18422 : 0 : tree res = generic_simplify_130 (loc, type, _p0, _p1, captures, NE_EXPR);
18423 : 0 : if (res) return res;
18424 : : }
18425 : : }
18426 : : }
18427 : : break;
18428 : : }
18429 : : default:;
18430 : : }
18431 : : break;
18432 : : }
18433 : : default:;
18434 : : }
18435 : : break;
18436 : : }
18437 : 157 : case LE_EXPR:
18438 : 157 : {
18439 : 157 : tree _q20 = TREE_OPERAND (_p0, 0);
18440 : 157 : tree _q21 = TREE_OPERAND (_p0, 1);
18441 : 157 : switch (TREE_CODE (_p1))
18442 : : {
18443 : 11 : case NE_EXPR:
18444 : 11 : {
18445 : 11 : tree _q50 = TREE_OPERAND (_p1, 0);
18446 : 11 : tree _q51 = TREE_OPERAND (_p1, 1);
18447 : 11 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
18448 : : {
18449 : 11 : if (tree_min_value (_q51))
18450 : : {
18451 : 4 : {
18452 : 4 : tree captures[2] ATTRIBUTE_UNUSED = { _q20, _q21 };
18453 : 4 : tree res = generic_simplify_137 (loc, type, _p0, _p1, captures);
18454 : 4 : if (res) return res;
18455 : : }
18456 : : }
18457 : : }
18458 : 7 : if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
18459 : : {
18460 : 0 : if (tree_max_value (_q51))
18461 : : {
18462 : 0 : {
18463 : 0 : tree captures[3] ATTRIBUTE_UNUSED = { _p0, _q21, _q20 };
18464 : 0 : tree res = generic_simplify_138 (loc, type, _p0, _p1, captures, NE_EXPR);
18465 : 0 : if (res) return res;
18466 : : }
18467 : : }
18468 : : }
18469 : : break;
18470 : : }
18471 : 31 : case EQ_EXPR:
18472 : 31 : {
18473 : 31 : tree _q50 = TREE_OPERAND (_p1, 0);
18474 : 31 : tree _q51 = TREE_OPERAND (_p1, 1);
18475 : 31 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
18476 : : {
18477 : 11 : if (tree_min_value (_q51))
18478 : : {
18479 : 4 : {
18480 : 4 : tree captures[3] ATTRIBUTE_UNUSED = { _p0, _q20, _q21 };
18481 : 4 : tree res = generic_simplify_139 (loc, type, _p0, _p1, captures);
18482 : 4 : if (res) return res;
18483 : : }
18484 : : }
18485 : : }
18486 : 27 : if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
18487 : : {
18488 : 0 : if (tree_max_value (_q51))
18489 : : {
18490 : 0 : {
18491 : 0 : tree captures[3] ATTRIBUTE_UNUSED = { _p0, _q21, _q20 };
18492 : 0 : tree res = generic_simplify_138 (loc, type, _p0, _p1, captures, EQ_EXPR);
18493 : 0 : if (res) return res;
18494 : : }
18495 : : }
18496 : : }
18497 : : break;
18498 : : }
18499 : 149 : default:;
18500 : : }
18501 : 149 : switch (TREE_CODE (_q20))
18502 : : {
18503 : 0 : CASE_CONVERT:
18504 : 0 : {
18505 : 0 : tree _q30 = TREE_OPERAND (_q20, 0);
18506 : 0 : switch (TREE_CODE (_p1))
18507 : : {
18508 : 0 : case EQ_EXPR:
18509 : 0 : {
18510 : 0 : tree _q60 = TREE_OPERAND (_p1, 0);
18511 : 0 : tree _q61 = TREE_OPERAND (_p1, 1);
18512 : 0 : if ((_q60 == _q30 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q30, 0) && types_match (_q60, _q30)))
18513 : : {
18514 : 0 : {
18515 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q30, _q61, _p0, _q20, _q21 };
18516 : 0 : tree res = generic_simplify_126 (loc, type, _p0, _p1, captures, LE_EXPR, EQ_EXPR);
18517 : 0 : if (res) return res;
18518 : : }
18519 : : }
18520 : 0 : if ((_q61 == _q30 && ! TREE_SIDE_EFFECTS (_q61)) || (operand_equal_p (_q61, _q30, 0) && types_match (_q61, _q30)))
18521 : : {
18522 : 0 : {
18523 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q30, _q60, _p0, _q20, _q21 };
18524 : 0 : tree res = generic_simplify_126 (loc, type, _p0, _p1, captures, LE_EXPR, EQ_EXPR);
18525 : 0 : if (res) return res;
18526 : : }
18527 : : }
18528 : : break;
18529 : : }
18530 : 0 : case NE_EXPR:
18531 : 0 : {
18532 : 0 : tree _q60 = TREE_OPERAND (_p1, 0);
18533 : 0 : tree _q61 = TREE_OPERAND (_p1, 1);
18534 : 0 : if ((_q60 == _q30 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q30, 0) && types_match (_q60, _q30)))
18535 : : {
18536 : 0 : {
18537 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q30, _q61, _p0, _q20, _q21 };
18538 : 0 : tree res = generic_simplify_126 (loc, type, _p0, _p1, captures, LE_EXPR, NE_EXPR);
18539 : 0 : if (res) return res;
18540 : : }
18541 : : }
18542 : 0 : if ((_q61 == _q30 && ! TREE_SIDE_EFFECTS (_q61)) || (operand_equal_p (_q61, _q30, 0) && types_match (_q61, _q30)))
18543 : : {
18544 : 0 : {
18545 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q30, _q60, _p0, _q20, _q21 };
18546 : 0 : tree res = generic_simplify_126 (loc, type, _p0, _p1, captures, LE_EXPR, NE_EXPR);
18547 : 0 : if (res) return res;
18548 : : }
18549 : : }
18550 : : break;
18551 : : }
18552 : : default:;
18553 : : }
18554 : : break;
18555 : : }
18556 : 149 : default:;
18557 : : }
18558 : 149 : switch (TREE_CODE (_q21))
18559 : : {
18560 : 0 : CASE_CONVERT:
18561 : 0 : {
18562 : 0 : tree _q40 = TREE_OPERAND (_q21, 0);
18563 : 0 : switch (TREE_CODE (_p1))
18564 : : {
18565 : 0 : case EQ_EXPR:
18566 : 0 : {
18567 : 0 : tree _q60 = TREE_OPERAND (_p1, 0);
18568 : 0 : tree _q61 = TREE_OPERAND (_p1, 1);
18569 : 0 : if ((_q60 == _q40 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q40, 0) && types_match (_q60, _q40)))
18570 : : {
18571 : 0 : {
18572 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q40, _q61, _p0, _q21, _q20 };
18573 : 0 : tree res = generic_simplify_126 (loc, type, _p0, _p1, captures, GE_EXPR, EQ_EXPR);
18574 : 0 : if (res) return res;
18575 : : }
18576 : : }
18577 : 0 : if ((_q61 == _q40 && ! TREE_SIDE_EFFECTS (_q61)) || (operand_equal_p (_q61, _q40, 0) && types_match (_q61, _q40)))
18578 : : {
18579 : 0 : {
18580 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q40, _q60, _p0, _q21, _q20 };
18581 : 0 : tree res = generic_simplify_126 (loc, type, _p0, _p1, captures, GE_EXPR, EQ_EXPR);
18582 : 0 : if (res) return res;
18583 : : }
18584 : : }
18585 : : break;
18586 : : }
18587 : 0 : case NE_EXPR:
18588 : 0 : {
18589 : 0 : tree _q60 = TREE_OPERAND (_p1, 0);
18590 : 0 : tree _q61 = TREE_OPERAND (_p1, 1);
18591 : 0 : if ((_q60 == _q40 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q40, 0) && types_match (_q60, _q40)))
18592 : : {
18593 : 0 : {
18594 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q40, _q61, _p0, _q21, _q20 };
18595 : 0 : tree res = generic_simplify_126 (loc, type, _p0, _p1, captures, GE_EXPR, NE_EXPR);
18596 : 0 : if (res) return res;
18597 : : }
18598 : : }
18599 : 0 : if ((_q61 == _q40 && ! TREE_SIDE_EFFECTS (_q61)) || (operand_equal_p (_q61, _q40, 0) && types_match (_q61, _q40)))
18600 : : {
18601 : 0 : {
18602 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q40, _q60, _p0, _q21, _q20 };
18603 : 0 : tree res = generic_simplify_126 (loc, type, _p0, _p1, captures, GE_EXPR, NE_EXPR);
18604 : 0 : if (res) return res;
18605 : : }
18606 : : }
18607 : : break;
18608 : : }
18609 : : default:;
18610 : : }
18611 : : break;
18612 : : }
18613 : 149 : default:;
18614 : : }
18615 : 149 : switch (TREE_CODE (_p1))
18616 : : {
18617 : 27 : case EQ_EXPR:
18618 : 27 : {
18619 : 27 : tree _q50 = TREE_OPERAND (_p1, 0);
18620 : 27 : tree _q51 = TREE_OPERAND (_p1, 1);
18621 : 27 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
18622 : : {
18623 : 7 : {
18624 : 7 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q20, _q51, _p0, _q20, _q21 };
18625 : 7 : tree res = generic_simplify_127 (loc, type, _p0, _p1, captures, LE_EXPR, EQ_EXPR);
18626 : 7 : if (res) return res;
18627 : : }
18628 : : }
18629 : 20 : if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
18630 : : {
18631 : 0 : {
18632 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q21, _q51, _p0, _q21, _q20 };
18633 : 0 : tree res = generic_simplify_127 (loc, type, _p0, _p1, captures, GE_EXPR, EQ_EXPR);
18634 : 0 : if (res) return res;
18635 : : }
18636 : : }
18637 : 20 : if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
18638 : : {
18639 : 0 : {
18640 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q20, _q50, _p0, _q20, _q21 };
18641 : 0 : tree res = generic_simplify_127 (loc, type, _p0, _p1, captures, LE_EXPR, EQ_EXPR);
18642 : 0 : if (res) return res;
18643 : : }
18644 : : }
18645 : 20 : if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
18646 : : {
18647 : 0 : {
18648 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q21, _q50, _p0, _q21, _q20 };
18649 : 0 : tree res = generic_simplify_127 (loc, type, _p0, _p1, captures, GE_EXPR, EQ_EXPR);
18650 : 0 : if (res) return res;
18651 : : }
18652 : : }
18653 : : break;
18654 : : }
18655 : 7 : case NE_EXPR:
18656 : 7 : {
18657 : 7 : tree _q50 = TREE_OPERAND (_p1, 0);
18658 : 7 : tree _q51 = TREE_OPERAND (_p1, 1);
18659 : 7 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
18660 : : {
18661 : 7 : {
18662 : 7 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q20, _q51, _p0, _q20, _q21 };
18663 : 7 : tree res = generic_simplify_127 (loc, type, _p0, _p1, captures, LE_EXPR, NE_EXPR);
18664 : 7 : if (res) return res;
18665 : : }
18666 : : }
18667 : 0 : if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
18668 : : {
18669 : 0 : {
18670 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q21, _q51, _p0, _q21, _q20 };
18671 : 0 : tree res = generic_simplify_127 (loc, type, _p0, _p1, captures, GE_EXPR, NE_EXPR);
18672 : 0 : if (res) return res;
18673 : : }
18674 : : }
18675 : 0 : if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
18676 : : {
18677 : 0 : {
18678 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q20, _q50, _p0, _q20, _q21 };
18679 : 0 : tree res = generic_simplify_127 (loc, type, _p0, _p1, captures, LE_EXPR, NE_EXPR);
18680 : 0 : if (res) return res;
18681 : : }
18682 : : }
18683 : 0 : if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
18684 : : {
18685 : 0 : {
18686 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q21, _q50, _p0, _q21, _q20 };
18687 : 0 : tree res = generic_simplify_127 (loc, type, _p0, _p1, captures, GE_EXPR, NE_EXPR);
18688 : 0 : if (res) return res;
18689 : : }
18690 : : }
18691 : : break;
18692 : : }
18693 : 0 : case LT_EXPR:
18694 : 0 : {
18695 : 0 : tree _q50 = TREE_OPERAND (_p1, 0);
18696 : 0 : tree _q51 = TREE_OPERAND (_p1, 1);
18697 : 0 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
18698 : : {
18699 : 0 : {
18700 : 0 : tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q51 };
18701 : 0 : tree res = generic_simplify_128 (loc, type, _p0, _p1, captures, LT_EXPR, LE_EXPR);
18702 : 0 : if (res) return res;
18703 : : }
18704 : : }
18705 : : break;
18706 : : }
18707 : 2 : case LE_EXPR:
18708 : 2 : {
18709 : 2 : tree _q50 = TREE_OPERAND (_p1, 0);
18710 : 2 : tree _q51 = TREE_OPERAND (_p1, 1);
18711 : 2 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
18712 : : {
18713 : 0 : {
18714 : 0 : tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q51 };
18715 : 0 : tree res = generic_simplify_128 (loc, type, _p0, _p1, captures, LE_EXPR, LE_EXPR);
18716 : 0 : if (res) return res;
18717 : : }
18718 : : }
18719 : : break;
18720 : : }
18721 : 0 : case GT_EXPR:
18722 : 0 : {
18723 : 0 : tree _q50 = TREE_OPERAND (_p1, 0);
18724 : 0 : tree _q51 = TREE_OPERAND (_p1, 1);
18725 : 0 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
18726 : : {
18727 : 0 : {
18728 : 0 : tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q51 };
18729 : 0 : tree res = generic_simplify_128 (loc, type, _p0, _p1, captures, GT_EXPR, LE_EXPR);
18730 : 0 : if (res) return res;
18731 : : }
18732 : : }
18733 : : break;
18734 : : }
18735 : 1 : case GE_EXPR:
18736 : 1 : {
18737 : 1 : tree _q50 = TREE_OPERAND (_p1, 0);
18738 : 1 : tree _q51 = TREE_OPERAND (_p1, 1);
18739 : 1 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
18740 : : {
18741 : 0 : {
18742 : 0 : tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q51 };
18743 : 0 : tree res = generic_simplify_128 (loc, type, _p0, _p1, captures, GE_EXPR, LE_EXPR);
18744 : 0 : if (res) return res;
18745 : : }
18746 : : }
18747 : : break;
18748 : : }
18749 : 135 : default:;
18750 : : }
18751 : 135 : switch (TREE_CODE (_q20))
18752 : : {
18753 : 0 : case BIT_AND_EXPR:
18754 : 0 : {
18755 : 0 : tree _q30 = TREE_OPERAND (_q20, 0);
18756 : 0 : tree _q31 = TREE_OPERAND (_q20, 1);
18757 : 0 : switch (TREE_CODE (_q30))
18758 : : {
18759 : 0 : case BIT_XOR_EXPR:
18760 : 0 : {
18761 : 0 : tree _q40 = TREE_OPERAND (_q30, 0);
18762 : 0 : tree _q41 = TREE_OPERAND (_q30, 1);
18763 : 0 : if (tree_expr_nonzero_p (_q31))
18764 : : {
18765 : 0 : switch (TREE_CODE (_p1))
18766 : : {
18767 : 0 : case NE_EXPR:
18768 : 0 : {
18769 : 0 : tree _q90 = TREE_OPERAND (_p1, 0);
18770 : 0 : tree _q91 = TREE_OPERAND (_p1, 1);
18771 : 0 : if ((_q90 == _q40 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q40, 0) && types_match (_q90, _q40)))
18772 : : {
18773 : 0 : if ((_q91 == _q41 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q41, 0) && types_match (_q91, _q41)))
18774 : : {
18775 : 0 : {
18776 : 0 : tree captures[5] ATTRIBUTE_UNUSED = { _q40, _q41, _q31, _q21, _p1 };
18777 : 0 : tree res = generic_simplify_129 (loc, type, _p0, _p1, captures, LE_EXPR);
18778 : 0 : if (res) return res;
18779 : : }
18780 : : }
18781 : : }
18782 : 0 : if ((_q90 == _q41 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q41, 0) && types_match (_q90, _q41)))
18783 : : {
18784 : 0 : if ((_q91 == _q40 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q40, 0) && types_match (_q91, _q40)))
18785 : : {
18786 : 0 : {
18787 : 0 : tree captures[5] ATTRIBUTE_UNUSED = { _q41, _q40, _q31, _q21, _p1 };
18788 : 0 : tree res = generic_simplify_129 (loc, type, _p0, _p1, captures, LE_EXPR);
18789 : 0 : if (res) return res;
18790 : : }
18791 : : }
18792 : : }
18793 : : break;
18794 : : }
18795 : : default:;
18796 : : }
18797 : : }
18798 : : break;
18799 : : }
18800 : 0 : default:;
18801 : : }
18802 : 0 : if (tree_expr_nonzero_p (_q30))
18803 : : {
18804 : 0 : switch (TREE_CODE (_q31))
18805 : : {
18806 : 0 : case BIT_XOR_EXPR:
18807 : 0 : {
18808 : 0 : tree _q50 = TREE_OPERAND (_q31, 0);
18809 : 0 : tree _q51 = TREE_OPERAND (_q31, 1);
18810 : 0 : switch (TREE_CODE (_p1))
18811 : : {
18812 : 0 : case NE_EXPR:
18813 : 0 : {
18814 : 0 : tree _q90 = TREE_OPERAND (_p1, 0);
18815 : 0 : tree _q91 = TREE_OPERAND (_p1, 1);
18816 : 0 : if ((_q90 == _q50 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q50, 0) && types_match (_q90, _q50)))
18817 : : {
18818 : 0 : if ((_q91 == _q51 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q51, 0) && types_match (_q91, _q51)))
18819 : : {
18820 : 0 : {
18821 : 0 : tree captures[5] ATTRIBUTE_UNUSED = { _q50, _q51, _q30, _q21, _p1 };
18822 : 0 : tree res = generic_simplify_129 (loc, type, _p0, _p1, captures, LE_EXPR);
18823 : 0 : if (res) return res;
18824 : : }
18825 : : }
18826 : : }
18827 : 0 : if ((_q90 == _q51 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q51, 0) && types_match (_q90, _q51)))
18828 : : {
18829 : 0 : if ((_q91 == _q50 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q50, 0) && types_match (_q91, _q50)))
18830 : : {
18831 : 0 : {
18832 : 0 : tree captures[5] ATTRIBUTE_UNUSED = { _q51, _q50, _q30, _q21, _p1 };
18833 : 0 : tree res = generic_simplify_129 (loc, type, _p0, _p1, captures, LE_EXPR);
18834 : 0 : if (res) return res;
18835 : : }
18836 : : }
18837 : : }
18838 : : break;
18839 : : }
18840 : : default:;
18841 : : }
18842 : : break;
18843 : : }
18844 : : default:;
18845 : : }
18846 : : }
18847 : : break;
18848 : : }
18849 : 135 : default:;
18850 : : }
18851 : 135 : switch (TREE_CODE (_q21))
18852 : : {
18853 : 0 : case BIT_AND_EXPR:
18854 : 0 : {
18855 : 0 : tree _q40 = TREE_OPERAND (_q21, 0);
18856 : 0 : tree _q41 = TREE_OPERAND (_q21, 1);
18857 : 0 : switch (TREE_CODE (_q40))
18858 : : {
18859 : 0 : case BIT_XOR_EXPR:
18860 : 0 : {
18861 : 0 : tree _q50 = TREE_OPERAND (_q40, 0);
18862 : 0 : tree _q51 = TREE_OPERAND (_q40, 1);
18863 : 0 : if (tree_expr_nonzero_p (_q41))
18864 : : {
18865 : 0 : switch (TREE_CODE (_p1))
18866 : : {
18867 : 0 : case NE_EXPR:
18868 : 0 : {
18869 : 0 : tree _q90 = TREE_OPERAND (_p1, 0);
18870 : 0 : tree _q91 = TREE_OPERAND (_p1, 1);
18871 : 0 : if ((_q90 == _q50 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q50, 0) && types_match (_q90, _q50)))
18872 : : {
18873 : 0 : if ((_q91 == _q51 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q51, 0) && types_match (_q91, _q51)))
18874 : : {
18875 : 0 : {
18876 : 0 : tree captures[5] ATTRIBUTE_UNUSED = { _q50, _q51, _q41, _q20, _p1 };
18877 : 0 : tree res = generic_simplify_129 (loc, type, _p0, _p1, captures, GE_EXPR);
18878 : 0 : if (res) return res;
18879 : : }
18880 : : }
18881 : : }
18882 : 0 : if ((_q90 == _q51 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q51, 0) && types_match (_q90, _q51)))
18883 : : {
18884 : 0 : if ((_q91 == _q50 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q50, 0) && types_match (_q91, _q50)))
18885 : : {
18886 : 0 : {
18887 : 0 : tree captures[5] ATTRIBUTE_UNUSED = { _q51, _q50, _q41, _q20, _p1 };
18888 : 0 : tree res = generic_simplify_129 (loc, type, _p0, _p1, captures, GE_EXPR);
18889 : 0 : if (res) return res;
18890 : : }
18891 : : }
18892 : : }
18893 : : break;
18894 : : }
18895 : : default:;
18896 : : }
18897 : : }
18898 : : break;
18899 : : }
18900 : 0 : default:;
18901 : : }
18902 : 0 : if (tree_expr_nonzero_p (_q40))
18903 : : {
18904 : 0 : switch (TREE_CODE (_q41))
18905 : : {
18906 : 0 : case BIT_XOR_EXPR:
18907 : 0 : {
18908 : 0 : tree _q60 = TREE_OPERAND (_q41, 0);
18909 : 0 : tree _q61 = TREE_OPERAND (_q41, 1);
18910 : 0 : switch (TREE_CODE (_p1))
18911 : : {
18912 : 0 : case NE_EXPR:
18913 : 0 : {
18914 : 0 : tree _q90 = TREE_OPERAND (_p1, 0);
18915 : 0 : tree _q91 = TREE_OPERAND (_p1, 1);
18916 : 0 : if ((_q90 == _q60 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q60, 0) && types_match (_q90, _q60)))
18917 : : {
18918 : 0 : if ((_q91 == _q61 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q61, 0) && types_match (_q91, _q61)))
18919 : : {
18920 : 0 : {
18921 : 0 : tree captures[5] ATTRIBUTE_UNUSED = { _q60, _q61, _q40, _q20, _p1 };
18922 : 0 : tree res = generic_simplify_129 (loc, type, _p0, _p1, captures, GE_EXPR);
18923 : 0 : if (res) return res;
18924 : : }
18925 : : }
18926 : : }
18927 : 0 : if ((_q90 == _q61 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q61, 0) && types_match (_q90, _q61)))
18928 : : {
18929 : 0 : if ((_q91 == _q60 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q60, 0) && types_match (_q91, _q60)))
18930 : : {
18931 : 0 : {
18932 : 0 : tree captures[5] ATTRIBUTE_UNUSED = { _q61, _q60, _q40, _q20, _p1 };
18933 : 0 : tree res = generic_simplify_129 (loc, type, _p0, _p1, captures, GE_EXPR);
18934 : 0 : if (res) return res;
18935 : : }
18936 : : }
18937 : : }
18938 : : break;
18939 : : }
18940 : : default:;
18941 : : }
18942 : : break;
18943 : : }
18944 : : default:;
18945 : : }
18946 : : }
18947 : : break;
18948 : : }
18949 : 135 : default:;
18950 : : }
18951 : 135 : switch (TREE_CODE (_q20))
18952 : : {
18953 : 0 : case BIT_XOR_EXPR:
18954 : 0 : {
18955 : 0 : tree _q30 = TREE_OPERAND (_q20, 0);
18956 : 0 : tree _q31 = TREE_OPERAND (_q20, 1);
18957 : 0 : switch (TREE_CODE (_p1))
18958 : : {
18959 : 0 : case NE_EXPR:
18960 : 0 : {
18961 : 0 : tree _q70 = TREE_OPERAND (_p1, 0);
18962 : 0 : tree _q71 = TREE_OPERAND (_p1, 1);
18963 : 0 : if ((_q70 == _q30 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q30, 0) && types_match (_q70, _q30)))
18964 : : {
18965 : 0 : if ((_q71 == _q31 && ! TREE_SIDE_EFFECTS (_q71)) || (operand_equal_p (_q71, _q31, 0) && types_match (_q71, _q31)))
18966 : : {
18967 : 0 : {
18968 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q30, _q31, _q21, _p1 };
18969 : 0 : tree res = generic_simplify_130 (loc, type, _p0, _p1, captures, LE_EXPR);
18970 : 0 : if (res) return res;
18971 : : }
18972 : : }
18973 : : }
18974 : 0 : if ((_q70 == _q31 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q31, 0) && types_match (_q70, _q31)))
18975 : : {
18976 : 0 : if ((_q71 == _q30 && ! TREE_SIDE_EFFECTS (_q71)) || (operand_equal_p (_q71, _q30, 0) && types_match (_q71, _q30)))
18977 : : {
18978 : 0 : {
18979 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q31, _q30, _q21, _p1 };
18980 : 0 : tree res = generic_simplify_130 (loc, type, _p0, _p1, captures, LE_EXPR);
18981 : 0 : if (res) return res;
18982 : : }
18983 : : }
18984 : : }
18985 : : break;
18986 : : }
18987 : : default:;
18988 : : }
18989 : : break;
18990 : : }
18991 : 135 : default:;
18992 : : }
18993 : 135 : switch (TREE_CODE (_q21))
18994 : : {
18995 : 0 : case BIT_XOR_EXPR:
18996 : 0 : {
18997 : 0 : tree _q40 = TREE_OPERAND (_q21, 0);
18998 : 0 : tree _q41 = TREE_OPERAND (_q21, 1);
18999 : 0 : switch (TREE_CODE (_p1))
19000 : : {
19001 : 0 : case NE_EXPR:
19002 : 0 : {
19003 : 0 : tree _q70 = TREE_OPERAND (_p1, 0);
19004 : 0 : tree _q71 = TREE_OPERAND (_p1, 1);
19005 : 0 : if ((_q70 == _q40 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q40, 0) && types_match (_q70, _q40)))
19006 : : {
19007 : 0 : if ((_q71 == _q41 && ! TREE_SIDE_EFFECTS (_q71)) || (operand_equal_p (_q71, _q41, 0) && types_match (_q71, _q41)))
19008 : : {
19009 : 0 : {
19010 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q40, _q41, _q20, _p1 };
19011 : 0 : tree res = generic_simplify_130 (loc, type, _p0, _p1, captures, GE_EXPR);
19012 : 0 : if (res) return res;
19013 : : }
19014 : : }
19015 : : }
19016 : 0 : if ((_q70 == _q41 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q41, 0) && types_match (_q70, _q41)))
19017 : : {
19018 : 0 : if ((_q71 == _q40 && ! TREE_SIDE_EFFECTS (_q71)) || (operand_equal_p (_q71, _q40, 0) && types_match (_q71, _q40)))
19019 : : {
19020 : 0 : {
19021 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q41, _q40, _q20, _p1 };
19022 : 0 : tree res = generic_simplify_130 (loc, type, _p0, _p1, captures, GE_EXPR);
19023 : 0 : if (res) return res;
19024 : : }
19025 : : }
19026 : : }
19027 : : break;
19028 : : }
19029 : : default:;
19030 : : }
19031 : : break;
19032 : : }
19033 : : default:;
19034 : : }
19035 : : break;
19036 : : }
19037 : 46 : case GE_EXPR:
19038 : 46 : {
19039 : 46 : tree _q20 = TREE_OPERAND (_p0, 0);
19040 : 46 : tree _q21 = TREE_OPERAND (_p0, 1);
19041 : 46 : switch (TREE_CODE (_p1))
19042 : : {
19043 : 4 : case NE_EXPR:
19044 : 4 : {
19045 : 4 : tree _q50 = TREE_OPERAND (_p1, 0);
19046 : 4 : tree _q51 = TREE_OPERAND (_p1, 1);
19047 : 4 : if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
19048 : : {
19049 : 0 : if (tree_min_value (_q51))
19050 : : {
19051 : 0 : {
19052 : 0 : tree captures[2] ATTRIBUTE_UNUSED = { _q21, _q20 };
19053 : 0 : tree res = generic_simplify_137 (loc, type, _p0, _p1, captures);
19054 : 0 : if (res) return res;
19055 : : }
19056 : : }
19057 : : }
19058 : 4 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
19059 : : {
19060 : 4 : if (tree_max_value (_q51))
19061 : : {
19062 : 4 : {
19063 : 4 : tree captures[3] ATTRIBUTE_UNUSED = { _p0, _q20, _q21 };
19064 : 4 : tree res = generic_simplify_138 (loc, type, _p0, _p1, captures, NE_EXPR);
19065 : 4 : if (res) return res;
19066 : : }
19067 : : }
19068 : : }
19069 : : break;
19070 : : }
19071 : 8 : case EQ_EXPR:
19072 : 8 : {
19073 : 8 : tree _q50 = TREE_OPERAND (_p1, 0);
19074 : 8 : tree _q51 = TREE_OPERAND (_p1, 1);
19075 : 8 : if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
19076 : : {
19077 : 0 : if (tree_min_value (_q51))
19078 : : {
19079 : 0 : {
19080 : 0 : tree captures[3] ATTRIBUTE_UNUSED = { _p0, _q21, _q20 };
19081 : 0 : tree res = generic_simplify_139 (loc, type, _p0, _p1, captures);
19082 : 0 : if (res) return res;
19083 : : }
19084 : : }
19085 : : }
19086 : 8 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
19087 : : {
19088 : 4 : if (tree_max_value (_q51))
19089 : : {
19090 : 4 : {
19091 : 4 : tree captures[3] ATTRIBUTE_UNUSED = { _p0, _q20, _q21 };
19092 : 4 : tree res = generic_simplify_138 (loc, type, _p0, _p1, captures, EQ_EXPR);
19093 : 4 : if (res) return res;
19094 : : }
19095 : : }
19096 : : }
19097 : : break;
19098 : : }
19099 : 38 : default:;
19100 : : }
19101 : 38 : switch (TREE_CODE (_q20))
19102 : : {
19103 : 8 : CASE_CONVERT:
19104 : 8 : {
19105 : 8 : tree _q30 = TREE_OPERAND (_q20, 0);
19106 : 8 : switch (TREE_CODE (_p1))
19107 : : {
19108 : 0 : case EQ_EXPR:
19109 : 0 : {
19110 : 0 : tree _q60 = TREE_OPERAND (_p1, 0);
19111 : 0 : tree _q61 = TREE_OPERAND (_p1, 1);
19112 : 0 : if ((_q60 == _q30 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q30, 0) && types_match (_q60, _q30)))
19113 : : {
19114 : 0 : {
19115 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q30, _q61, _p0, _q20, _q21 };
19116 : 0 : tree res = generic_simplify_126 (loc, type, _p0, _p1, captures, GE_EXPR, EQ_EXPR);
19117 : 0 : if (res) return res;
19118 : : }
19119 : : }
19120 : 0 : if ((_q61 == _q30 && ! TREE_SIDE_EFFECTS (_q61)) || (operand_equal_p (_q61, _q30, 0) && types_match (_q61, _q30)))
19121 : : {
19122 : 0 : {
19123 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q30, _q60, _p0, _q20, _q21 };
19124 : 0 : tree res = generic_simplify_126 (loc, type, _p0, _p1, captures, GE_EXPR, EQ_EXPR);
19125 : 0 : if (res) return res;
19126 : : }
19127 : : }
19128 : : break;
19129 : : }
19130 : 0 : case NE_EXPR:
19131 : 0 : {
19132 : 0 : tree _q60 = TREE_OPERAND (_p1, 0);
19133 : 0 : tree _q61 = TREE_OPERAND (_p1, 1);
19134 : 0 : if ((_q60 == _q30 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q30, 0) && types_match (_q60, _q30)))
19135 : : {
19136 : 0 : {
19137 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q30, _q61, _p0, _q20, _q21 };
19138 : 0 : tree res = generic_simplify_126 (loc, type, _p0, _p1, captures, GE_EXPR, NE_EXPR);
19139 : 0 : if (res) return res;
19140 : : }
19141 : : }
19142 : 0 : if ((_q61 == _q30 && ! TREE_SIDE_EFFECTS (_q61)) || (operand_equal_p (_q61, _q30, 0) && types_match (_q61, _q30)))
19143 : : {
19144 : 0 : {
19145 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q30, _q60, _p0, _q20, _q21 };
19146 : 0 : tree res = generic_simplify_126 (loc, type, _p0, _p1, captures, GE_EXPR, NE_EXPR);
19147 : 0 : if (res) return res;
19148 : : }
19149 : : }
19150 : : break;
19151 : : }
19152 : : default:;
19153 : : }
19154 : : break;
19155 : : }
19156 : 38 : default:;
19157 : : }
19158 : 38 : switch (TREE_CODE (_q21))
19159 : : {
19160 : 0 : CASE_CONVERT:
19161 : 0 : {
19162 : 0 : tree _q40 = TREE_OPERAND (_q21, 0);
19163 : 0 : switch (TREE_CODE (_p1))
19164 : : {
19165 : 0 : case EQ_EXPR:
19166 : 0 : {
19167 : 0 : tree _q60 = TREE_OPERAND (_p1, 0);
19168 : 0 : tree _q61 = TREE_OPERAND (_p1, 1);
19169 : 0 : if ((_q60 == _q40 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q40, 0) && types_match (_q60, _q40)))
19170 : : {
19171 : 0 : {
19172 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q40, _q61, _p0, _q21, _q20 };
19173 : 0 : tree res = generic_simplify_126 (loc, type, _p0, _p1, captures, LE_EXPR, EQ_EXPR);
19174 : 0 : if (res) return res;
19175 : : }
19176 : : }
19177 : 0 : if ((_q61 == _q40 && ! TREE_SIDE_EFFECTS (_q61)) || (operand_equal_p (_q61, _q40, 0) && types_match (_q61, _q40)))
19178 : : {
19179 : 0 : {
19180 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q40, _q60, _p0, _q21, _q20 };
19181 : 0 : tree res = generic_simplify_126 (loc, type, _p0, _p1, captures, LE_EXPR, EQ_EXPR);
19182 : 0 : if (res) return res;
19183 : : }
19184 : : }
19185 : : break;
19186 : : }
19187 : 0 : case NE_EXPR:
19188 : 0 : {
19189 : 0 : tree _q60 = TREE_OPERAND (_p1, 0);
19190 : 0 : tree _q61 = TREE_OPERAND (_p1, 1);
19191 : 0 : if ((_q60 == _q40 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q40, 0) && types_match (_q60, _q40)))
19192 : : {
19193 : 0 : {
19194 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q40, _q61, _p0, _q21, _q20 };
19195 : 0 : tree res = generic_simplify_126 (loc, type, _p0, _p1, captures, LE_EXPR, NE_EXPR);
19196 : 0 : if (res) return res;
19197 : : }
19198 : : }
19199 : 0 : if ((_q61 == _q40 && ! TREE_SIDE_EFFECTS (_q61)) || (operand_equal_p (_q61, _q40, 0) && types_match (_q61, _q40)))
19200 : : {
19201 : 0 : {
19202 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q40, _q60, _p0, _q21, _q20 };
19203 : 0 : tree res = generic_simplify_126 (loc, type, _p0, _p1, captures, LE_EXPR, NE_EXPR);
19204 : 0 : if (res) return res;
19205 : : }
19206 : : }
19207 : : break;
19208 : : }
19209 : : default:;
19210 : : }
19211 : : break;
19212 : : }
19213 : 38 : default:;
19214 : : }
19215 : 38 : switch (TREE_CODE (_p1))
19216 : : {
19217 : 4 : case EQ_EXPR:
19218 : 4 : {
19219 : 4 : tree _q50 = TREE_OPERAND (_p1, 0);
19220 : 4 : tree _q51 = TREE_OPERAND (_p1, 1);
19221 : 4 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
19222 : : {
19223 : 0 : {
19224 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q20, _q51, _p0, _q20, _q21 };
19225 : 0 : tree res = generic_simplify_127 (loc, type, _p0, _p1, captures, GE_EXPR, EQ_EXPR);
19226 : 0 : if (res) return res;
19227 : : }
19228 : : }
19229 : 4 : if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
19230 : : {
19231 : 0 : {
19232 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q21, _q51, _p0, _q21, _q20 };
19233 : 0 : tree res = generic_simplify_127 (loc, type, _p0, _p1, captures, LE_EXPR, EQ_EXPR);
19234 : 0 : if (res) return res;
19235 : : }
19236 : : }
19237 : 4 : if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
19238 : : {
19239 : 0 : {
19240 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q20, _q50, _p0, _q20, _q21 };
19241 : 0 : tree res = generic_simplify_127 (loc, type, _p0, _p1, captures, GE_EXPR, EQ_EXPR);
19242 : 0 : if (res) return res;
19243 : : }
19244 : : }
19245 : 4 : if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
19246 : : {
19247 : 0 : {
19248 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q21, _q50, _p0, _q21, _q20 };
19249 : 0 : tree res = generic_simplify_127 (loc, type, _p0, _p1, captures, LE_EXPR, EQ_EXPR);
19250 : 0 : if (res) return res;
19251 : : }
19252 : : }
19253 : : break;
19254 : : }
19255 : 0 : case NE_EXPR:
19256 : 0 : {
19257 : 0 : tree _q50 = TREE_OPERAND (_p1, 0);
19258 : 0 : tree _q51 = TREE_OPERAND (_p1, 1);
19259 : 0 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
19260 : : {
19261 : 0 : {
19262 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q20, _q51, _p0, _q20, _q21 };
19263 : 0 : tree res = generic_simplify_127 (loc, type, _p0, _p1, captures, GE_EXPR, NE_EXPR);
19264 : 0 : if (res) return res;
19265 : : }
19266 : : }
19267 : 0 : if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
19268 : : {
19269 : 0 : {
19270 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q21, _q51, _p0, _q21, _q20 };
19271 : 0 : tree res = generic_simplify_127 (loc, type, _p0, _p1, captures, LE_EXPR, NE_EXPR);
19272 : 0 : if (res) return res;
19273 : : }
19274 : : }
19275 : 0 : if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
19276 : : {
19277 : 0 : {
19278 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q20, _q50, _p0, _q20, _q21 };
19279 : 0 : tree res = generic_simplify_127 (loc, type, _p0, _p1, captures, GE_EXPR, NE_EXPR);
19280 : 0 : if (res) return res;
19281 : : }
19282 : : }
19283 : 0 : if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
19284 : : {
19285 : 0 : {
19286 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q21, _q50, _p0, _q21, _q20 };
19287 : 0 : tree res = generic_simplify_127 (loc, type, _p0, _p1, captures, LE_EXPR, NE_EXPR);
19288 : 0 : if (res) return res;
19289 : : }
19290 : : }
19291 : : break;
19292 : : }
19293 : 0 : case LT_EXPR:
19294 : 0 : {
19295 : 0 : tree _q50 = TREE_OPERAND (_p1, 0);
19296 : 0 : tree _q51 = TREE_OPERAND (_p1, 1);
19297 : 0 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
19298 : : {
19299 : 0 : {
19300 : 0 : tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q51 };
19301 : 0 : tree res = generic_simplify_128 (loc, type, _p0, _p1, captures, LT_EXPR, GE_EXPR);
19302 : 0 : if (res) return res;
19303 : : }
19304 : : }
19305 : : break;
19306 : : }
19307 : 0 : case LE_EXPR:
19308 : 0 : {
19309 : 0 : tree _q50 = TREE_OPERAND (_p1, 0);
19310 : 0 : tree _q51 = TREE_OPERAND (_p1, 1);
19311 : 0 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
19312 : : {
19313 : 0 : {
19314 : 0 : tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q51 };
19315 : 0 : tree res = generic_simplify_128 (loc, type, _p0, _p1, captures, LE_EXPR, GE_EXPR);
19316 : 0 : if (res) return res;
19317 : : }
19318 : : }
19319 : : break;
19320 : : }
19321 : 0 : case GT_EXPR:
19322 : 0 : {
19323 : 0 : tree _q50 = TREE_OPERAND (_p1, 0);
19324 : 0 : tree _q51 = TREE_OPERAND (_p1, 1);
19325 : 0 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
19326 : : {
19327 : 0 : {
19328 : 0 : tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q51 };
19329 : 0 : tree res = generic_simplify_128 (loc, type, _p0, _p1, captures, GT_EXPR, GE_EXPR);
19330 : 0 : if (res) return res;
19331 : : }
19332 : : }
19333 : : break;
19334 : : }
19335 : 0 : case GE_EXPR:
19336 : 0 : {
19337 : 0 : tree _q50 = TREE_OPERAND (_p1, 0);
19338 : 0 : tree _q51 = TREE_OPERAND (_p1, 1);
19339 : 0 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
19340 : : {
19341 : 0 : {
19342 : 0 : tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q51 };
19343 : 0 : tree res = generic_simplify_128 (loc, type, _p0, _p1, captures, GE_EXPR, GE_EXPR);
19344 : 0 : if (res) return res;
19345 : : }
19346 : : }
19347 : : break;
19348 : : }
19349 : 38 : default:;
19350 : : }
19351 : 38 : switch (TREE_CODE (_q20))
19352 : : {
19353 : 0 : case BIT_AND_EXPR:
19354 : 0 : {
19355 : 0 : tree _q30 = TREE_OPERAND (_q20, 0);
19356 : 0 : tree _q31 = TREE_OPERAND (_q20, 1);
19357 : 0 : switch (TREE_CODE (_q30))
19358 : : {
19359 : 0 : case BIT_XOR_EXPR:
19360 : 0 : {
19361 : 0 : tree _q40 = TREE_OPERAND (_q30, 0);
19362 : 0 : tree _q41 = TREE_OPERAND (_q30, 1);
19363 : 0 : if (tree_expr_nonzero_p (_q31))
19364 : : {
19365 : 0 : switch (TREE_CODE (_p1))
19366 : : {
19367 : 0 : case NE_EXPR:
19368 : 0 : {
19369 : 0 : tree _q90 = TREE_OPERAND (_p1, 0);
19370 : 0 : tree _q91 = TREE_OPERAND (_p1, 1);
19371 : 0 : if ((_q90 == _q40 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q40, 0) && types_match (_q90, _q40)))
19372 : : {
19373 : 0 : if ((_q91 == _q41 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q41, 0) && types_match (_q91, _q41)))
19374 : : {
19375 : 0 : {
19376 : 0 : tree captures[5] ATTRIBUTE_UNUSED = { _q40, _q41, _q31, _q21, _p1 };
19377 : 0 : tree res = generic_simplify_129 (loc, type, _p0, _p1, captures, GE_EXPR);
19378 : 0 : if (res) return res;
19379 : : }
19380 : : }
19381 : : }
19382 : 0 : if ((_q90 == _q41 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q41, 0) && types_match (_q90, _q41)))
19383 : : {
19384 : 0 : if ((_q91 == _q40 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q40, 0) && types_match (_q91, _q40)))
19385 : : {
19386 : 0 : {
19387 : 0 : tree captures[5] ATTRIBUTE_UNUSED = { _q41, _q40, _q31, _q21, _p1 };
19388 : 0 : tree res = generic_simplify_129 (loc, type, _p0, _p1, captures, GE_EXPR);
19389 : 0 : if (res) return res;
19390 : : }
19391 : : }
19392 : : }
19393 : : break;
19394 : : }
19395 : : default:;
19396 : : }
19397 : : }
19398 : : break;
19399 : : }
19400 : 0 : default:;
19401 : : }
19402 : 0 : if (tree_expr_nonzero_p (_q30))
19403 : : {
19404 : 0 : switch (TREE_CODE (_q31))
19405 : : {
19406 : 0 : case BIT_XOR_EXPR:
19407 : 0 : {
19408 : 0 : tree _q50 = TREE_OPERAND (_q31, 0);
19409 : 0 : tree _q51 = TREE_OPERAND (_q31, 1);
19410 : 0 : switch (TREE_CODE (_p1))
19411 : : {
19412 : 0 : case NE_EXPR:
19413 : 0 : {
19414 : 0 : tree _q90 = TREE_OPERAND (_p1, 0);
19415 : 0 : tree _q91 = TREE_OPERAND (_p1, 1);
19416 : 0 : if ((_q90 == _q50 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q50, 0) && types_match (_q90, _q50)))
19417 : : {
19418 : 0 : if ((_q91 == _q51 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q51, 0) && types_match (_q91, _q51)))
19419 : : {
19420 : 0 : {
19421 : 0 : tree captures[5] ATTRIBUTE_UNUSED = { _q50, _q51, _q30, _q21, _p1 };
19422 : 0 : tree res = generic_simplify_129 (loc, type, _p0, _p1, captures, GE_EXPR);
19423 : 0 : if (res) return res;
19424 : : }
19425 : : }
19426 : : }
19427 : 0 : if ((_q90 == _q51 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q51, 0) && types_match (_q90, _q51)))
19428 : : {
19429 : 0 : if ((_q91 == _q50 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q50, 0) && types_match (_q91, _q50)))
19430 : : {
19431 : 0 : {
19432 : 0 : tree captures[5] ATTRIBUTE_UNUSED = { _q51, _q50, _q30, _q21, _p1 };
19433 : 0 : tree res = generic_simplify_129 (loc, type, _p0, _p1, captures, GE_EXPR);
19434 : 0 : if (res) return res;
19435 : : }
19436 : : }
19437 : : }
19438 : : break;
19439 : : }
19440 : : default:;
19441 : : }
19442 : : break;
19443 : : }
19444 : : default:;
19445 : : }
19446 : : }
19447 : : break;
19448 : : }
19449 : 38 : default:;
19450 : : }
19451 : 38 : switch (TREE_CODE (_q21))
19452 : : {
19453 : 0 : case BIT_AND_EXPR:
19454 : 0 : {
19455 : 0 : tree _q40 = TREE_OPERAND (_q21, 0);
19456 : 0 : tree _q41 = TREE_OPERAND (_q21, 1);
19457 : 0 : switch (TREE_CODE (_q40))
19458 : : {
19459 : 0 : case BIT_XOR_EXPR:
19460 : 0 : {
19461 : 0 : tree _q50 = TREE_OPERAND (_q40, 0);
19462 : 0 : tree _q51 = TREE_OPERAND (_q40, 1);
19463 : 0 : if (tree_expr_nonzero_p (_q41))
19464 : : {
19465 : 0 : switch (TREE_CODE (_p1))
19466 : : {
19467 : 0 : case NE_EXPR:
19468 : 0 : {
19469 : 0 : tree _q90 = TREE_OPERAND (_p1, 0);
19470 : 0 : tree _q91 = TREE_OPERAND (_p1, 1);
19471 : 0 : if ((_q90 == _q50 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q50, 0) && types_match (_q90, _q50)))
19472 : : {
19473 : 0 : if ((_q91 == _q51 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q51, 0) && types_match (_q91, _q51)))
19474 : : {
19475 : 0 : {
19476 : 0 : tree captures[5] ATTRIBUTE_UNUSED = { _q50, _q51, _q41, _q20, _p1 };
19477 : 0 : tree res = generic_simplify_129 (loc, type, _p0, _p1, captures, LE_EXPR);
19478 : 0 : if (res) return res;
19479 : : }
19480 : : }
19481 : : }
19482 : 0 : if ((_q90 == _q51 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q51, 0) && types_match (_q90, _q51)))
19483 : : {
19484 : 0 : if ((_q91 == _q50 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q50, 0) && types_match (_q91, _q50)))
19485 : : {
19486 : 0 : {
19487 : 0 : tree captures[5] ATTRIBUTE_UNUSED = { _q51, _q50, _q41, _q20, _p1 };
19488 : 0 : tree res = generic_simplify_129 (loc, type, _p0, _p1, captures, LE_EXPR);
19489 : 0 : if (res) return res;
19490 : : }
19491 : : }
19492 : : }
19493 : : break;
19494 : : }
19495 : : default:;
19496 : : }
19497 : : }
19498 : : break;
19499 : : }
19500 : 0 : default:;
19501 : : }
19502 : 0 : if (tree_expr_nonzero_p (_q40))
19503 : : {
19504 : 0 : switch (TREE_CODE (_q41))
19505 : : {
19506 : 0 : case BIT_XOR_EXPR:
19507 : 0 : {
19508 : 0 : tree _q60 = TREE_OPERAND (_q41, 0);
19509 : 0 : tree _q61 = TREE_OPERAND (_q41, 1);
19510 : 0 : switch (TREE_CODE (_p1))
19511 : : {
19512 : 0 : case NE_EXPR:
19513 : 0 : {
19514 : 0 : tree _q90 = TREE_OPERAND (_p1, 0);
19515 : 0 : tree _q91 = TREE_OPERAND (_p1, 1);
19516 : 0 : if ((_q90 == _q60 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q60, 0) && types_match (_q90, _q60)))
19517 : : {
19518 : 0 : if ((_q91 == _q61 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q61, 0) && types_match (_q91, _q61)))
19519 : : {
19520 : 0 : {
19521 : 0 : tree captures[5] ATTRIBUTE_UNUSED = { _q60, _q61, _q40, _q20, _p1 };
19522 : 0 : tree res = generic_simplify_129 (loc, type, _p0, _p1, captures, LE_EXPR);
19523 : 0 : if (res) return res;
19524 : : }
19525 : : }
19526 : : }
19527 : 0 : if ((_q90 == _q61 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q61, 0) && types_match (_q90, _q61)))
19528 : : {
19529 : 0 : if ((_q91 == _q60 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q60, 0) && types_match (_q91, _q60)))
19530 : : {
19531 : 0 : {
19532 : 0 : tree captures[5] ATTRIBUTE_UNUSED = { _q61, _q60, _q40, _q20, _p1 };
19533 : 0 : tree res = generic_simplify_129 (loc, type, _p0, _p1, captures, LE_EXPR);
19534 : 0 : if (res) return res;
19535 : : }
19536 : : }
19537 : : }
19538 : : break;
19539 : : }
19540 : : default:;
19541 : : }
19542 : : break;
19543 : : }
19544 : : default:;
19545 : : }
19546 : : }
19547 : : break;
19548 : : }
19549 : 38 : default:;
19550 : : }
19551 : 38 : switch (TREE_CODE (_q20))
19552 : : {
19553 : 0 : case BIT_XOR_EXPR:
19554 : 0 : {
19555 : 0 : tree _q30 = TREE_OPERAND (_q20, 0);
19556 : 0 : tree _q31 = TREE_OPERAND (_q20, 1);
19557 : 0 : switch (TREE_CODE (_p1))
19558 : : {
19559 : 0 : case NE_EXPR:
19560 : 0 : {
19561 : 0 : tree _q70 = TREE_OPERAND (_p1, 0);
19562 : 0 : tree _q71 = TREE_OPERAND (_p1, 1);
19563 : 0 : if ((_q70 == _q30 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q30, 0) && types_match (_q70, _q30)))
19564 : : {
19565 : 0 : if ((_q71 == _q31 && ! TREE_SIDE_EFFECTS (_q71)) || (operand_equal_p (_q71, _q31, 0) && types_match (_q71, _q31)))
19566 : : {
19567 : 0 : {
19568 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q30, _q31, _q21, _p1 };
19569 : 0 : tree res = generic_simplify_130 (loc, type, _p0, _p1, captures, GE_EXPR);
19570 : 0 : if (res) return res;
19571 : : }
19572 : : }
19573 : : }
19574 : 0 : if ((_q70 == _q31 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q31, 0) && types_match (_q70, _q31)))
19575 : : {
19576 : 0 : if ((_q71 == _q30 && ! TREE_SIDE_EFFECTS (_q71)) || (operand_equal_p (_q71, _q30, 0) && types_match (_q71, _q30)))
19577 : : {
19578 : 0 : {
19579 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q31, _q30, _q21, _p1 };
19580 : 0 : tree res = generic_simplify_130 (loc, type, _p0, _p1, captures, GE_EXPR);
19581 : 0 : if (res) return res;
19582 : : }
19583 : : }
19584 : : }
19585 : : break;
19586 : : }
19587 : : default:;
19588 : : }
19589 : : break;
19590 : : }
19591 : 38 : default:;
19592 : : }
19593 : 38 : switch (TREE_CODE (_q21))
19594 : : {
19595 : 0 : case BIT_XOR_EXPR:
19596 : 0 : {
19597 : 0 : tree _q40 = TREE_OPERAND (_q21, 0);
19598 : 0 : tree _q41 = TREE_OPERAND (_q21, 1);
19599 : 0 : switch (TREE_CODE (_p1))
19600 : : {
19601 : 0 : case NE_EXPR:
19602 : 0 : {
19603 : 0 : tree _q70 = TREE_OPERAND (_p1, 0);
19604 : 0 : tree _q71 = TREE_OPERAND (_p1, 1);
19605 : 0 : if ((_q70 == _q40 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q40, 0) && types_match (_q70, _q40)))
19606 : : {
19607 : 0 : if ((_q71 == _q41 && ! TREE_SIDE_EFFECTS (_q71)) || (operand_equal_p (_q71, _q41, 0) && types_match (_q71, _q41)))
19608 : : {
19609 : 0 : {
19610 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q40, _q41, _q20, _p1 };
19611 : 0 : tree res = generic_simplify_130 (loc, type, _p0, _p1, captures, LE_EXPR);
19612 : 0 : if (res) return res;
19613 : : }
19614 : : }
19615 : : }
19616 : 0 : if ((_q70 == _q41 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q41, 0) && types_match (_q70, _q41)))
19617 : : {
19618 : 0 : if ((_q71 == _q40 && ! TREE_SIDE_EFFECTS (_q71)) || (operand_equal_p (_q71, _q40, 0) && types_match (_q71, _q40)))
19619 : : {
19620 : 0 : {
19621 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q41, _q40, _q20, _p1 };
19622 : 0 : tree res = generic_simplify_130 (loc, type, _p0, _p1, captures, LE_EXPR);
19623 : 0 : if (res) return res;
19624 : : }
19625 : : }
19626 : : }
19627 : : break;
19628 : : }
19629 : : default:;
19630 : : }
19631 : : break;
19632 : : }
19633 : : default:;
19634 : : }
19635 : : break;
19636 : : }
19637 : 475 : case EQ_EXPR:
19638 : 475 : {
19639 : 475 : tree _q20 = TREE_OPERAND (_p0, 0);
19640 : 475 : tree _q21 = TREE_OPERAND (_p0, 1);
19641 : 475 : if (tree_min_value (_q21))
19642 : : {
19643 : 4 : switch (TREE_CODE (_p1))
19644 : : {
19645 : 0 : case LE_EXPR:
19646 : 0 : {
19647 : 0 : tree _q50 = TREE_OPERAND (_p1, 0);
19648 : 0 : tree _q51 = TREE_OPERAND (_p1, 1);
19649 : 0 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
19650 : : {
19651 : 0 : {
19652 : 0 : tree captures[3] ATTRIBUTE_UNUSED = { _p1, _q20, _q51 };
19653 : 0 : tree res = generic_simplify_139 (loc, type, _p0, _p1, captures);
19654 : 0 : if (res) return res;
19655 : : }
19656 : : }
19657 : : break;
19658 : : }
19659 : 0 : case GE_EXPR:
19660 : 0 : {
19661 : 0 : tree _q50 = TREE_OPERAND (_p1, 0);
19662 : 0 : tree _q51 = TREE_OPERAND (_p1, 1);
19663 : 0 : if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
19664 : : {
19665 : 0 : {
19666 : 0 : tree captures[3] ATTRIBUTE_UNUSED = { _p1, _q20, _q50 };
19667 : 0 : tree res = generic_simplify_139 (loc, type, _p0, _p1, captures);
19668 : 0 : if (res) return res;
19669 : : }
19670 : : }
19671 : : break;
19672 : : }
19673 : 2 : case LT_EXPR:
19674 : 2 : {
19675 : 2 : tree _q50 = TREE_OPERAND (_p1, 0);
19676 : 2 : tree _q51 = TREE_OPERAND (_p1, 1);
19677 : 2 : if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
19678 : : {
19679 : 2 : {
19680 : 2 : tree captures[4] ATTRIBUTE_UNUSED = { _p0, _q20, _p1, _q50 };
19681 : 2 : tree res = generic_simplify_140 (loc, type, _p0, _p1, captures);
19682 : 2 : if (res) return res;
19683 : : }
19684 : : }
19685 : : break;
19686 : : }
19687 : 0 : case GT_EXPR:
19688 : 0 : {
19689 : 0 : tree _q50 = TREE_OPERAND (_p1, 0);
19690 : 0 : tree _q51 = TREE_OPERAND (_p1, 1);
19691 : 0 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
19692 : : {
19693 : 0 : {
19694 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _p0, _q20, _p1, _q51 };
19695 : 0 : tree res = generic_simplify_140 (loc, type, _p0, _p1, captures);
19696 : 0 : if (res) return res;
19697 : : }
19698 : : }
19699 : : break;
19700 : : }
19701 : : default:;
19702 : : }
19703 : : }
19704 : 473 : if (tree_max_value (_q21))
19705 : : {
19706 : 0 : switch (TREE_CODE (_p1))
19707 : : {
19708 : 0 : case GE_EXPR:
19709 : 0 : {
19710 : 0 : tree _q50 = TREE_OPERAND (_p1, 0);
19711 : 0 : tree _q51 = TREE_OPERAND (_p1, 1);
19712 : 0 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
19713 : : {
19714 : 0 : {
19715 : 0 : tree captures[3] ATTRIBUTE_UNUSED = { _p1, _q20, _q51 };
19716 : 0 : tree res = generic_simplify_134 (loc, type, _p0, _p1, captures, EQ_EXPR);
19717 : 0 : if (res) return res;
19718 : : }
19719 : : }
19720 : : break;
19721 : : }
19722 : 0 : case LE_EXPR:
19723 : 0 : {
19724 : 0 : tree _q50 = TREE_OPERAND (_p1, 0);
19725 : 0 : tree _q51 = TREE_OPERAND (_p1, 1);
19726 : 0 : if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
19727 : : {
19728 : 0 : {
19729 : 0 : tree captures[3] ATTRIBUTE_UNUSED = { _p1, _q20, _q50 };
19730 : 0 : tree res = generic_simplify_134 (loc, type, _p0, _p1, captures, EQ_EXPR);
19731 : 0 : if (res) return res;
19732 : : }
19733 : : }
19734 : : break;
19735 : : }
19736 : : default:;
19737 : : }
19738 : : }
19739 : 473 : switch (TREE_CODE (_p1))
19740 : : {
19741 : 119 : case EQ_EXPR:
19742 : 119 : {
19743 : 119 : tree _q50 = TREE_OPERAND (_p1, 0);
19744 : 119 : tree _q51 = TREE_OPERAND (_p1, 1);
19745 : 119 : switch (TREE_CODE (_q50))
19746 : : {
19747 : 63 : CASE_CONVERT:
19748 : 63 : {
19749 : 63 : tree _q60 = TREE_OPERAND (_q50, 0);
19750 : 63 : if ((_q60 == _q20 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q20, 0) && types_match (_q60, _q20)))
19751 : : {
19752 : 0 : {
19753 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q50, _q51 };
19754 : 0 : tree res = generic_simplify_135 (loc, type, _p0, _p1, captures, EQ_EXPR, EQ_EXPR);
19755 : 0 : if (res) return res;
19756 : : }
19757 : : }
19758 : 63 : if ((_q60 == _q21 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q21, 0) && types_match (_q60, _q21)))
19759 : : {
19760 : 0 : {
19761 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q50, _q51 };
19762 : 0 : tree res = generic_simplify_135 (loc, type, _p0, _p1, captures, EQ_EXPR, EQ_EXPR);
19763 : 0 : if (res) return res;
19764 : : }
19765 : : }
19766 : : break;
19767 : : }
19768 : 119 : default:;
19769 : : }
19770 : 119 : switch (TREE_CODE (_q51))
19771 : : {
19772 : 0 : CASE_CONVERT:
19773 : 0 : {
19774 : 0 : tree _q70 = TREE_OPERAND (_q51, 0);
19775 : 0 : if ((_q70 == _q20 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q20, 0) && types_match (_q70, _q20)))
19776 : : {
19777 : 0 : {
19778 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q51, _q50 };
19779 : 0 : tree res = generic_simplify_135 (loc, type, _p0, _p1, captures, EQ_EXPR, EQ_EXPR);
19780 : 0 : if (res) return res;
19781 : : }
19782 : : }
19783 : 0 : if ((_q70 == _q21 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q21, 0) && types_match (_q70, _q21)))
19784 : : {
19785 : 0 : {
19786 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q51, _q50 };
19787 : 0 : tree res = generic_simplify_135 (loc, type, _p0, _p1, captures, EQ_EXPR, EQ_EXPR);
19788 : 0 : if (res) return res;
19789 : : }
19790 : : }
19791 : : break;
19792 : : }
19793 : : default:;
19794 : : }
19795 : : break;
19796 : : }
19797 : 12 : case NE_EXPR:
19798 : 12 : {
19799 : 12 : tree _q50 = TREE_OPERAND (_p1, 0);
19800 : 12 : tree _q51 = TREE_OPERAND (_p1, 1);
19801 : 12 : switch (TREE_CODE (_q50))
19802 : : {
19803 : 0 : CASE_CONVERT:
19804 : 0 : {
19805 : 0 : tree _q60 = TREE_OPERAND (_q50, 0);
19806 : 0 : if ((_q60 == _q20 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q20, 0) && types_match (_q60, _q20)))
19807 : : {
19808 : 0 : {
19809 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q50, _q51 };
19810 : 0 : tree res = generic_simplify_135 (loc, type, _p0, _p1, captures, NE_EXPR, EQ_EXPR);
19811 : 0 : if (res) return res;
19812 : : }
19813 : : }
19814 : 0 : if ((_q60 == _q21 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q21, 0) && types_match (_q60, _q21)))
19815 : : {
19816 : 0 : {
19817 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q50, _q51 };
19818 : 0 : tree res = generic_simplify_135 (loc, type, _p0, _p1, captures, NE_EXPR, EQ_EXPR);
19819 : 0 : if (res) return res;
19820 : : }
19821 : : }
19822 : : break;
19823 : : }
19824 : 12 : default:;
19825 : : }
19826 : 12 : switch (TREE_CODE (_q51))
19827 : : {
19828 : 0 : CASE_CONVERT:
19829 : 0 : {
19830 : 0 : tree _q70 = TREE_OPERAND (_q51, 0);
19831 : 0 : if ((_q70 == _q20 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q20, 0) && types_match (_q70, _q20)))
19832 : : {
19833 : 0 : {
19834 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q51, _q50 };
19835 : 0 : tree res = generic_simplify_135 (loc, type, _p0, _p1, captures, NE_EXPR, EQ_EXPR);
19836 : 0 : if (res) return res;
19837 : : }
19838 : : }
19839 : 0 : if ((_q70 == _q21 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q21, 0) && types_match (_q70, _q21)))
19840 : : {
19841 : 0 : {
19842 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q51, _q50 };
19843 : 0 : tree res = generic_simplify_135 (loc, type, _p0, _p1, captures, NE_EXPR, EQ_EXPR);
19844 : 0 : if (res) return res;
19845 : : }
19846 : : }
19847 : : break;
19848 : : }
19849 : : default:;
19850 : : }
19851 : : break;
19852 : : }
19853 : 16 : case LT_EXPR:
19854 : 16 : {
19855 : 16 : tree _q50 = TREE_OPERAND (_p1, 0);
19856 : 16 : tree _q51 = TREE_OPERAND (_p1, 1);
19857 : 16 : switch (TREE_CODE (_q50))
19858 : : {
19859 : 0 : CASE_CONVERT:
19860 : 0 : {
19861 : 0 : tree _q60 = TREE_OPERAND (_q50, 0);
19862 : 0 : if ((_q60 == _q20 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q20, 0) && types_match (_q60, _q20)))
19863 : : {
19864 : 0 : {
19865 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q50, _q51 };
19866 : 0 : tree res = generic_simplify_135 (loc, type, _p0, _p1, captures, LT_EXPR, EQ_EXPR);
19867 : 0 : if (res) return res;
19868 : : }
19869 : : }
19870 : 0 : if ((_q60 == _q21 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q21, 0) && types_match (_q60, _q21)))
19871 : : {
19872 : 0 : {
19873 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q50, _q51 };
19874 : 0 : tree res = generic_simplify_135 (loc, type, _p0, _p1, captures, LT_EXPR, EQ_EXPR);
19875 : 0 : if (res) return res;
19876 : : }
19877 : : }
19878 : : break;
19879 : : }
19880 : 16 : default:;
19881 : : }
19882 : 16 : switch (TREE_CODE (_q51))
19883 : : {
19884 : 0 : CASE_CONVERT:
19885 : 0 : {
19886 : 0 : tree _q70 = TREE_OPERAND (_q51, 0);
19887 : 0 : if ((_q70 == _q20 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q20, 0) && types_match (_q70, _q20)))
19888 : : {
19889 : 0 : {
19890 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q51, _q50 };
19891 : 0 : tree res = generic_simplify_135 (loc, type, _p0, _p1, captures, GT_EXPR, EQ_EXPR);
19892 : 0 : if (res) return res;
19893 : : }
19894 : : }
19895 : 0 : if ((_q70 == _q21 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q21, 0) && types_match (_q70, _q21)))
19896 : : {
19897 : 0 : {
19898 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q51, _q50 };
19899 : 0 : tree res = generic_simplify_135 (loc, type, _p0, _p1, captures, GT_EXPR, EQ_EXPR);
19900 : 0 : if (res) return res;
19901 : : }
19902 : : }
19903 : : break;
19904 : : }
19905 : : default:;
19906 : : }
19907 : : break;
19908 : : }
19909 : 28 : case GT_EXPR:
19910 : 28 : {
19911 : 28 : tree _q50 = TREE_OPERAND (_p1, 0);
19912 : 28 : tree _q51 = TREE_OPERAND (_p1, 1);
19913 : 28 : switch (TREE_CODE (_q50))
19914 : : {
19915 : 0 : CASE_CONVERT:
19916 : 0 : {
19917 : 0 : tree _q60 = TREE_OPERAND (_q50, 0);
19918 : 0 : if ((_q60 == _q20 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q20, 0) && types_match (_q60, _q20)))
19919 : : {
19920 : 0 : {
19921 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q50, _q51 };
19922 : 0 : tree res = generic_simplify_135 (loc, type, _p0, _p1, captures, GT_EXPR, EQ_EXPR);
19923 : 0 : if (res) return res;
19924 : : }
19925 : : }
19926 : 0 : if ((_q60 == _q21 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q21, 0) && types_match (_q60, _q21)))
19927 : : {
19928 : 0 : {
19929 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q50, _q51 };
19930 : 0 : tree res = generic_simplify_135 (loc, type, _p0, _p1, captures, GT_EXPR, EQ_EXPR);
19931 : 0 : if (res) return res;
19932 : : }
19933 : : }
19934 : : break;
19935 : : }
19936 : 28 : default:;
19937 : : }
19938 : 28 : switch (TREE_CODE (_q51))
19939 : : {
19940 : 0 : CASE_CONVERT:
19941 : 0 : {
19942 : 0 : tree _q70 = TREE_OPERAND (_q51, 0);
19943 : 0 : if ((_q70 == _q20 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q20, 0) && types_match (_q70, _q20)))
19944 : : {
19945 : 0 : {
19946 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q51, _q50 };
19947 : 0 : tree res = generic_simplify_135 (loc, type, _p0, _p1, captures, LT_EXPR, EQ_EXPR);
19948 : 0 : if (res) return res;
19949 : : }
19950 : : }
19951 : 0 : if ((_q70 == _q21 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q21, 0) && types_match (_q70, _q21)))
19952 : : {
19953 : 0 : {
19954 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q51, _q50 };
19955 : 0 : tree res = generic_simplify_135 (loc, type, _p0, _p1, captures, LT_EXPR, EQ_EXPR);
19956 : 0 : if (res) return res;
19957 : : }
19958 : : }
19959 : : break;
19960 : : }
19961 : : default:;
19962 : : }
19963 : : break;
19964 : : }
19965 : 18 : case LE_EXPR:
19966 : 18 : {
19967 : 18 : tree _q50 = TREE_OPERAND (_p1, 0);
19968 : 18 : tree _q51 = TREE_OPERAND (_p1, 1);
19969 : 18 : switch (TREE_CODE (_q50))
19970 : : {
19971 : 0 : CASE_CONVERT:
19972 : 0 : {
19973 : 0 : tree _q60 = TREE_OPERAND (_q50, 0);
19974 : 0 : if ((_q60 == _q20 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q20, 0) && types_match (_q60, _q20)))
19975 : : {
19976 : 0 : {
19977 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q50, _q51 };
19978 : 0 : tree res = generic_simplify_135 (loc, type, _p0, _p1, captures, LE_EXPR, EQ_EXPR);
19979 : 0 : if (res) return res;
19980 : : }
19981 : : }
19982 : 0 : if ((_q60 == _q21 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q21, 0) && types_match (_q60, _q21)))
19983 : : {
19984 : 0 : {
19985 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q50, _q51 };
19986 : 0 : tree res = generic_simplify_135 (loc, type, _p0, _p1, captures, LE_EXPR, EQ_EXPR);
19987 : 0 : if (res) return res;
19988 : : }
19989 : : }
19990 : : break;
19991 : : }
19992 : 18 : default:;
19993 : : }
19994 : 18 : switch (TREE_CODE (_q51))
19995 : : {
19996 : 0 : CASE_CONVERT:
19997 : 0 : {
19998 : 0 : tree _q70 = TREE_OPERAND (_q51, 0);
19999 : 0 : if ((_q70 == _q20 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q20, 0) && types_match (_q70, _q20)))
20000 : : {
20001 : 0 : {
20002 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q51, _q50 };
20003 : 0 : tree res = generic_simplify_135 (loc, type, _p0, _p1, captures, GE_EXPR, EQ_EXPR);
20004 : 0 : if (res) return res;
20005 : : }
20006 : : }
20007 : 0 : if ((_q70 == _q21 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q21, 0) && types_match (_q70, _q21)))
20008 : : {
20009 : 0 : {
20010 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q51, _q50 };
20011 : 0 : tree res = generic_simplify_135 (loc, type, _p0, _p1, captures, GE_EXPR, EQ_EXPR);
20012 : 0 : if (res) return res;
20013 : : }
20014 : : }
20015 : : break;
20016 : : }
20017 : : default:;
20018 : : }
20019 : : break;
20020 : : }
20021 : 20 : case GE_EXPR:
20022 : 20 : {
20023 : 20 : tree _q50 = TREE_OPERAND (_p1, 0);
20024 : 20 : tree _q51 = TREE_OPERAND (_p1, 1);
20025 : 20 : switch (TREE_CODE (_q50))
20026 : : {
20027 : 16 : CASE_CONVERT:
20028 : 16 : {
20029 : 16 : tree _q60 = TREE_OPERAND (_q50, 0);
20030 : 16 : if ((_q60 == _q20 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q20, 0) && types_match (_q60, _q20)))
20031 : : {
20032 : 0 : {
20033 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q50, _q51 };
20034 : 0 : tree res = generic_simplify_135 (loc, type, _p0, _p1, captures, GE_EXPR, EQ_EXPR);
20035 : 0 : if (res) return res;
20036 : : }
20037 : : }
20038 : 16 : if ((_q60 == _q21 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q21, 0) && types_match (_q60, _q21)))
20039 : : {
20040 : 0 : {
20041 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q50, _q51 };
20042 : 0 : tree res = generic_simplify_135 (loc, type, _p0, _p1, captures, GE_EXPR, EQ_EXPR);
20043 : 0 : if (res) return res;
20044 : : }
20045 : : }
20046 : : break;
20047 : : }
20048 : 20 : default:;
20049 : : }
20050 : 20 : switch (TREE_CODE (_q51))
20051 : : {
20052 : 0 : CASE_CONVERT:
20053 : 0 : {
20054 : 0 : tree _q70 = TREE_OPERAND (_q51, 0);
20055 : 0 : if ((_q70 == _q20 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q20, 0) && types_match (_q70, _q20)))
20056 : : {
20057 : 0 : {
20058 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q51, _q50 };
20059 : 0 : tree res = generic_simplify_135 (loc, type, _p0, _p1, captures, LE_EXPR, EQ_EXPR);
20060 : 0 : if (res) return res;
20061 : : }
20062 : : }
20063 : 0 : if ((_q70 == _q21 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q21, 0) && types_match (_q70, _q21)))
20064 : : {
20065 : 0 : {
20066 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q51, _q50 };
20067 : 0 : tree res = generic_simplify_135 (loc, type, _p0, _p1, captures, LE_EXPR, EQ_EXPR);
20068 : 0 : if (res) return res;
20069 : : }
20070 : : }
20071 : : break;
20072 : : }
20073 : : default:;
20074 : : }
20075 : : break;
20076 : : }
20077 : 473 : default:;
20078 : : }
20079 : 473 : switch (TREE_CODE (_q20))
20080 : : {
20081 : 178 : CASE_CONVERT:
20082 : 178 : {
20083 : 178 : tree _q30 = TREE_OPERAND (_q20, 0);
20084 : 178 : switch (TREE_CODE (_p1))
20085 : : {
20086 : 63 : case EQ_EXPR:
20087 : 63 : {
20088 : 63 : tree _q60 = TREE_OPERAND (_p1, 0);
20089 : 63 : tree _q61 = TREE_OPERAND (_p1, 1);
20090 : 63 : if ((_q60 == _q30 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q30, 0) && types_match (_q60, _q30)))
20091 : : {
20092 : 0 : {
20093 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q30, _q61, _p0, _q20, _q21 };
20094 : 0 : tree res = generic_simplify_126 (loc, type, _p0, _p1, captures, EQ_EXPR, EQ_EXPR);
20095 : 0 : if (res) return res;
20096 : : }
20097 : : }
20098 : 63 : if ((_q61 == _q30 && ! TREE_SIDE_EFFECTS (_q61)) || (operand_equal_p (_q61, _q30, 0) && types_match (_q61, _q30)))
20099 : : {
20100 : 0 : {
20101 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q30, _q60, _p0, _q20, _q21 };
20102 : 0 : tree res = generic_simplify_126 (loc, type, _p0, _p1, captures, EQ_EXPR, EQ_EXPR);
20103 : 0 : if (res) return res;
20104 : : }
20105 : : }
20106 : : break;
20107 : : }
20108 : 0 : case NE_EXPR:
20109 : 0 : {
20110 : 0 : tree _q60 = TREE_OPERAND (_p1, 0);
20111 : 0 : tree _q61 = TREE_OPERAND (_p1, 1);
20112 : 0 : if ((_q60 == _q30 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q30, 0) && types_match (_q60, _q30)))
20113 : : {
20114 : 0 : {
20115 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q30, _q61, _p0, _q20, _q21 };
20116 : 0 : tree res = generic_simplify_126 (loc, type, _p0, _p1, captures, EQ_EXPR, NE_EXPR);
20117 : 0 : if (res) return res;
20118 : : }
20119 : : }
20120 : 0 : if ((_q61 == _q30 && ! TREE_SIDE_EFFECTS (_q61)) || (operand_equal_p (_q61, _q30, 0) && types_match (_q61, _q30)))
20121 : : {
20122 : 0 : {
20123 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q30, _q60, _p0, _q20, _q21 };
20124 : 0 : tree res = generic_simplify_126 (loc, type, _p0, _p1, captures, EQ_EXPR, NE_EXPR);
20125 : 0 : if (res) return res;
20126 : : }
20127 : : }
20128 : : break;
20129 : : }
20130 : : default:;
20131 : : }
20132 : : break;
20133 : : }
20134 : 473 : default:;
20135 : : }
20136 : 473 : switch (TREE_CODE (_q21))
20137 : : {
20138 : 9 : CASE_CONVERT:
20139 : 9 : {
20140 : 9 : tree _q40 = TREE_OPERAND (_q21, 0);
20141 : 9 : switch (TREE_CODE (_p1))
20142 : : {
20143 : 0 : case EQ_EXPR:
20144 : 0 : {
20145 : 0 : tree _q60 = TREE_OPERAND (_p1, 0);
20146 : 0 : tree _q61 = TREE_OPERAND (_p1, 1);
20147 : 0 : if ((_q60 == _q40 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q40, 0) && types_match (_q60, _q40)))
20148 : : {
20149 : 0 : {
20150 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q40, _q61, _p0, _q21, _q20 };
20151 : 0 : tree res = generic_simplify_126 (loc, type, _p0, _p1, captures, EQ_EXPR, EQ_EXPR);
20152 : 0 : if (res) return res;
20153 : : }
20154 : : }
20155 : 0 : if ((_q61 == _q40 && ! TREE_SIDE_EFFECTS (_q61)) || (operand_equal_p (_q61, _q40, 0) && types_match (_q61, _q40)))
20156 : : {
20157 : 0 : {
20158 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q40, _q60, _p0, _q21, _q20 };
20159 : 0 : tree res = generic_simplify_126 (loc, type, _p0, _p1, captures, EQ_EXPR, EQ_EXPR);
20160 : 0 : if (res) return res;
20161 : : }
20162 : : }
20163 : : break;
20164 : : }
20165 : 0 : case NE_EXPR:
20166 : 0 : {
20167 : 0 : tree _q60 = TREE_OPERAND (_p1, 0);
20168 : 0 : tree _q61 = TREE_OPERAND (_p1, 1);
20169 : 0 : if ((_q60 == _q40 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q40, 0) && types_match (_q60, _q40)))
20170 : : {
20171 : 0 : {
20172 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q40, _q61, _p0, _q21, _q20 };
20173 : 0 : tree res = generic_simplify_126 (loc, type, _p0, _p1, captures, EQ_EXPR, NE_EXPR);
20174 : 0 : if (res) return res;
20175 : : }
20176 : : }
20177 : 0 : if ((_q61 == _q40 && ! TREE_SIDE_EFFECTS (_q61)) || (operand_equal_p (_q61, _q40, 0) && types_match (_q61, _q40)))
20178 : : {
20179 : 0 : {
20180 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q40, _q60, _p0, _q21, _q20 };
20181 : 0 : tree res = generic_simplify_126 (loc, type, _p0, _p1, captures, EQ_EXPR, NE_EXPR);
20182 : 0 : if (res) return res;
20183 : : }
20184 : : }
20185 : : break;
20186 : : }
20187 : : default:;
20188 : : }
20189 : : break;
20190 : : }
20191 : 473 : default:;
20192 : : }
20193 : 473 : switch (TREE_CODE (_p1))
20194 : : {
20195 : 119 : case EQ_EXPR:
20196 : 119 : {
20197 : 119 : tree _q50 = TREE_OPERAND (_p1, 0);
20198 : 119 : tree _q51 = TREE_OPERAND (_p1, 1);
20199 : 119 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
20200 : : {
20201 : 88 : {
20202 : 88 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q50, _q51 };
20203 : 88 : tree res = generic_simplify_136 (loc, type, _p0, _p1, captures, EQ_EXPR, EQ_EXPR);
20204 : 88 : if (res) return res;
20205 : : }
20206 : 88 : {
20207 : 88 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q20, _q51, _p0, _q20, _q21 };
20208 : 88 : tree res = generic_simplify_127 (loc, type, _p0, _p1, captures, EQ_EXPR, EQ_EXPR);
20209 : 88 : if (res) return res;
20210 : : }
20211 : : }
20212 : 119 : if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
20213 : : {
20214 : 0 : {
20215 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q51, _q50 };
20216 : 0 : tree res = generic_simplify_136 (loc, type, _p0, _p1, captures, EQ_EXPR, EQ_EXPR);
20217 : 0 : if (res) return res;
20218 : : }
20219 : : }
20220 : 119 : if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
20221 : : {
20222 : 0 : {
20223 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q50, _q51 };
20224 : 0 : tree res = generic_simplify_136 (loc, type, _p0, _p1, captures, EQ_EXPR, EQ_EXPR);
20225 : 0 : if (res) return res;
20226 : : }
20227 : 0 : {
20228 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q21, _q51, _p0, _q21, _q20 };
20229 : 0 : tree res = generic_simplify_127 (loc, type, _p0, _p1, captures, EQ_EXPR, EQ_EXPR);
20230 : 0 : if (res) return res;
20231 : : }
20232 : : }
20233 : 119 : if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
20234 : : {
20235 : 15 : {
20236 : 15 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q51, _q50 };
20237 : 15 : tree res = generic_simplify_136 (loc, type, _p0, _p1, captures, EQ_EXPR, EQ_EXPR);
20238 : 15 : if (res) return res;
20239 : : }
20240 : 15 : {
20241 : 15 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q21, _q50, _p0, _q21, _q20 };
20242 : 15 : tree res = generic_simplify_127 (loc, type, _p0, _p1, captures, EQ_EXPR, EQ_EXPR);
20243 : 15 : if (res) return res;
20244 : : }
20245 : : }
20246 : 119 : if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
20247 : : {
20248 : 0 : {
20249 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q20, _q50, _p0, _q20, _q21 };
20250 : 0 : tree res = generic_simplify_127 (loc, type, _p0, _p1, captures, EQ_EXPR, EQ_EXPR);
20251 : 0 : if (res) return res;
20252 : : }
20253 : : }
20254 : : break;
20255 : : }
20256 : 12 : case NE_EXPR:
20257 : 12 : {
20258 : 12 : tree _q50 = TREE_OPERAND (_p1, 0);
20259 : 12 : tree _q51 = TREE_OPERAND (_p1, 1);
20260 : 12 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
20261 : : {
20262 : 0 : {
20263 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q50, _q51 };
20264 : 0 : tree res = generic_simplify_136 (loc, type, _p0, _p1, captures, NE_EXPR, EQ_EXPR);
20265 : 0 : if (res) return res;
20266 : : }
20267 : 0 : {
20268 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q20, _q51, _p0, _q20, _q21 };
20269 : 0 : tree res = generic_simplify_127 (loc, type, _p0, _p1, captures, EQ_EXPR, NE_EXPR);
20270 : 0 : if (res) return res;
20271 : : }
20272 : : }
20273 : 12 : if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
20274 : : {
20275 : 0 : {
20276 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q51, _q50 };
20277 : 0 : tree res = generic_simplify_136 (loc, type, _p0, _p1, captures, NE_EXPR, EQ_EXPR);
20278 : 0 : if (res) return res;
20279 : : }
20280 : : }
20281 : 12 : if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
20282 : : {
20283 : 0 : {
20284 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q50, _q51 };
20285 : 0 : tree res = generic_simplify_136 (loc, type, _p0, _p1, captures, NE_EXPR, EQ_EXPR);
20286 : 0 : if (res) return res;
20287 : : }
20288 : 0 : {
20289 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q21, _q51, _p0, _q21, _q20 };
20290 : 0 : tree res = generic_simplify_127 (loc, type, _p0, _p1, captures, EQ_EXPR, NE_EXPR);
20291 : 0 : if (res) return res;
20292 : : }
20293 : : }
20294 : 12 : if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
20295 : : {
20296 : 4 : {
20297 : 4 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q51, _q50 };
20298 : 4 : tree res = generic_simplify_136 (loc, type, _p0, _p1, captures, NE_EXPR, EQ_EXPR);
20299 : 4 : if (res) return res;
20300 : : }
20301 : 4 : {
20302 : 4 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q21, _q50, _p0, _q21, _q20 };
20303 : 4 : tree res = generic_simplify_127 (loc, type, _p0, _p1, captures, EQ_EXPR, NE_EXPR);
20304 : 4 : if (res) return res;
20305 : : }
20306 : : }
20307 : 12 : if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
20308 : : {
20309 : 0 : {
20310 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q20, _q50, _p0, _q20, _q21 };
20311 : 0 : tree res = generic_simplify_127 (loc, type, _p0, _p1, captures, EQ_EXPR, NE_EXPR);
20312 : 0 : if (res) return res;
20313 : : }
20314 : : }
20315 : : break;
20316 : : }
20317 : 16 : case LT_EXPR:
20318 : 16 : {
20319 : 16 : tree _q50 = TREE_OPERAND (_p1, 0);
20320 : 16 : tree _q51 = TREE_OPERAND (_p1, 1);
20321 : 16 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
20322 : : {
20323 : 0 : {
20324 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q50, _q51 };
20325 : 0 : tree res = generic_simplify_136 (loc, type, _p0, _p1, captures, LT_EXPR, EQ_EXPR);
20326 : 0 : if (res) return res;
20327 : : }
20328 : : }
20329 : 16 : if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
20330 : : {
20331 : 0 : {
20332 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q51, _q50 };
20333 : 0 : tree res = generic_simplify_136 (loc, type, _p0, _p1, captures, GT_EXPR, EQ_EXPR);
20334 : 0 : if (res) return res;
20335 : : }
20336 : : }
20337 : 16 : if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
20338 : : {
20339 : 0 : {
20340 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q50, _q51 };
20341 : 0 : tree res = generic_simplify_136 (loc, type, _p0, _p1, captures, LT_EXPR, EQ_EXPR);
20342 : 0 : if (res) return res;
20343 : : }
20344 : : }
20345 : 16 : if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
20346 : : {
20347 : 0 : {
20348 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q51, _q50 };
20349 : 0 : tree res = generic_simplify_136 (loc, type, _p0, _p1, captures, GT_EXPR, EQ_EXPR);
20350 : 0 : if (res) return res;
20351 : : }
20352 : : }
20353 : : break;
20354 : : }
20355 : 28 : case GT_EXPR:
20356 : 28 : {
20357 : 28 : tree _q50 = TREE_OPERAND (_p1, 0);
20358 : 28 : tree _q51 = TREE_OPERAND (_p1, 1);
20359 : 28 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
20360 : : {
20361 : 9 : {
20362 : 9 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q50, _q51 };
20363 : 9 : tree res = generic_simplify_136 (loc, type, _p0, _p1, captures, GT_EXPR, EQ_EXPR);
20364 : 9 : if (res) return res;
20365 : : }
20366 : : }
20367 : 28 : if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
20368 : : {
20369 : 0 : {
20370 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q51, _q50 };
20371 : 0 : tree res = generic_simplify_136 (loc, type, _p0, _p1, captures, LT_EXPR, EQ_EXPR);
20372 : 0 : if (res) return res;
20373 : : }
20374 : : }
20375 : 28 : if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
20376 : : {
20377 : 0 : {
20378 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q50, _q51 };
20379 : 0 : tree res = generic_simplify_136 (loc, type, _p0, _p1, captures, GT_EXPR, EQ_EXPR);
20380 : 0 : if (res) return res;
20381 : : }
20382 : : }
20383 : 28 : if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
20384 : : {
20385 : 0 : {
20386 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q51, _q50 };
20387 : 0 : tree res = generic_simplify_136 (loc, type, _p0, _p1, captures, LT_EXPR, EQ_EXPR);
20388 : 0 : if (res) return res;
20389 : : }
20390 : : }
20391 : : break;
20392 : : }
20393 : 18 : case LE_EXPR:
20394 : 18 : {
20395 : 18 : tree _q50 = TREE_OPERAND (_p1, 0);
20396 : 18 : tree _q51 = TREE_OPERAND (_p1, 1);
20397 : 18 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
20398 : : {
20399 : 0 : {
20400 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q50, _q51 };
20401 : 0 : tree res = generic_simplify_136 (loc, type, _p0, _p1, captures, LE_EXPR, EQ_EXPR);
20402 : 0 : if (res) return res;
20403 : : }
20404 : : }
20405 : 18 : if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
20406 : : {
20407 : 0 : {
20408 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q51, _q50 };
20409 : 0 : tree res = generic_simplify_136 (loc, type, _p0, _p1, captures, GE_EXPR, EQ_EXPR);
20410 : 0 : if (res) return res;
20411 : : }
20412 : : }
20413 : 18 : if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
20414 : : {
20415 : 0 : {
20416 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q50, _q51 };
20417 : 0 : tree res = generic_simplify_136 (loc, type, _p0, _p1, captures, LE_EXPR, EQ_EXPR);
20418 : 0 : if (res) return res;
20419 : : }
20420 : : }
20421 : 18 : if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
20422 : : {
20423 : 0 : {
20424 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q51, _q50 };
20425 : 0 : tree res = generic_simplify_136 (loc, type, _p0, _p1, captures, GE_EXPR, EQ_EXPR);
20426 : 0 : if (res) return res;
20427 : : }
20428 : : }
20429 : : break;
20430 : : }
20431 : 20 : case GE_EXPR:
20432 : 20 : {
20433 : 20 : tree _q50 = TREE_OPERAND (_p1, 0);
20434 : 20 : tree _q51 = TREE_OPERAND (_p1, 1);
20435 : 20 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
20436 : : {
20437 : 0 : {
20438 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q50, _q51 };
20439 : 0 : tree res = generic_simplify_136 (loc, type, _p0, _p1, captures, GE_EXPR, EQ_EXPR);
20440 : 0 : if (res) return res;
20441 : : }
20442 : : }
20443 : 20 : if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
20444 : : {
20445 : 0 : {
20446 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q51, _q50 };
20447 : 0 : tree res = generic_simplify_136 (loc, type, _p0, _p1, captures, LE_EXPR, EQ_EXPR);
20448 : 0 : if (res) return res;
20449 : : }
20450 : : }
20451 : 20 : if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
20452 : : {
20453 : 0 : {
20454 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q50, _q51 };
20455 : 0 : tree res = generic_simplify_136 (loc, type, _p0, _p1, captures, GE_EXPR, EQ_EXPR);
20456 : 0 : if (res) return res;
20457 : : }
20458 : : }
20459 : 20 : if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
20460 : : {
20461 : 0 : {
20462 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q51, _q50 };
20463 : 0 : tree res = generic_simplify_136 (loc, type, _p0, _p1, captures, LE_EXPR, EQ_EXPR);
20464 : 0 : if (res) return res;
20465 : : }
20466 : : }
20467 : : break;
20468 : : }
20469 : 473 : default:;
20470 : : }
20471 : 473 : switch (TREE_CODE (_q20))
20472 : : {
20473 : 0 : case BIT_AND_EXPR:
20474 : 0 : {
20475 : 0 : tree _q30 = TREE_OPERAND (_q20, 0);
20476 : 0 : tree _q31 = TREE_OPERAND (_q20, 1);
20477 : 0 : switch (TREE_CODE (_q30))
20478 : : {
20479 : 0 : case BIT_XOR_EXPR:
20480 : 0 : {
20481 : 0 : tree _q40 = TREE_OPERAND (_q30, 0);
20482 : 0 : tree _q41 = TREE_OPERAND (_q30, 1);
20483 : 0 : if (tree_expr_nonzero_p (_q31))
20484 : : {
20485 : 0 : switch (TREE_CODE (_p1))
20486 : : {
20487 : 0 : case NE_EXPR:
20488 : 0 : {
20489 : 0 : tree _q90 = TREE_OPERAND (_p1, 0);
20490 : 0 : tree _q91 = TREE_OPERAND (_p1, 1);
20491 : 0 : if ((_q90 == _q40 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q40, 0) && types_match (_q90, _q40)))
20492 : : {
20493 : 0 : if ((_q91 == _q41 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q41, 0) && types_match (_q91, _q41)))
20494 : : {
20495 : 0 : {
20496 : 0 : tree captures[5] ATTRIBUTE_UNUSED = { _q40, _q41, _q31, _q21, _p1 };
20497 : 0 : tree res = generic_simplify_129 (loc, type, _p0, _p1, captures, EQ_EXPR);
20498 : 0 : if (res) return res;
20499 : : }
20500 : : }
20501 : : }
20502 : 0 : if ((_q90 == _q41 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q41, 0) && types_match (_q90, _q41)))
20503 : : {
20504 : 0 : if ((_q91 == _q40 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q40, 0) && types_match (_q91, _q40)))
20505 : : {
20506 : 0 : {
20507 : 0 : tree captures[5] ATTRIBUTE_UNUSED = { _q41, _q40, _q31, _q21, _p1 };
20508 : 0 : tree res = generic_simplify_129 (loc, type, _p0, _p1, captures, EQ_EXPR);
20509 : 0 : if (res) return res;
20510 : : }
20511 : : }
20512 : : }
20513 : : break;
20514 : : }
20515 : : default:;
20516 : : }
20517 : : }
20518 : : break;
20519 : : }
20520 : 0 : default:;
20521 : : }
20522 : 0 : if (tree_expr_nonzero_p (_q30))
20523 : : {
20524 : 0 : switch (TREE_CODE (_q31))
20525 : : {
20526 : 0 : case BIT_XOR_EXPR:
20527 : 0 : {
20528 : 0 : tree _q50 = TREE_OPERAND (_q31, 0);
20529 : 0 : tree _q51 = TREE_OPERAND (_q31, 1);
20530 : 0 : switch (TREE_CODE (_p1))
20531 : : {
20532 : 0 : case NE_EXPR:
20533 : 0 : {
20534 : 0 : tree _q90 = TREE_OPERAND (_p1, 0);
20535 : 0 : tree _q91 = TREE_OPERAND (_p1, 1);
20536 : 0 : if ((_q90 == _q50 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q50, 0) && types_match (_q90, _q50)))
20537 : : {
20538 : 0 : if ((_q91 == _q51 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q51, 0) && types_match (_q91, _q51)))
20539 : : {
20540 : 0 : {
20541 : 0 : tree captures[5] ATTRIBUTE_UNUSED = { _q50, _q51, _q30, _q21, _p1 };
20542 : 0 : tree res = generic_simplify_129 (loc, type, _p0, _p1, captures, EQ_EXPR);
20543 : 0 : if (res) return res;
20544 : : }
20545 : : }
20546 : : }
20547 : 0 : if ((_q90 == _q51 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q51, 0) && types_match (_q90, _q51)))
20548 : : {
20549 : 0 : if ((_q91 == _q50 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q50, 0) && types_match (_q91, _q50)))
20550 : : {
20551 : 0 : {
20552 : 0 : tree captures[5] ATTRIBUTE_UNUSED = { _q51, _q50, _q30, _q21, _p1 };
20553 : 0 : tree res = generic_simplify_129 (loc, type, _p0, _p1, captures, EQ_EXPR);
20554 : 0 : if (res) return res;
20555 : : }
20556 : : }
20557 : : }
20558 : : break;
20559 : : }
20560 : : default:;
20561 : : }
20562 : : break;
20563 : : }
20564 : : default:;
20565 : : }
20566 : : }
20567 : : break;
20568 : : }
20569 : 473 : default:;
20570 : : }
20571 : 473 : switch (TREE_CODE (_q21))
20572 : : {
20573 : 0 : case BIT_AND_EXPR:
20574 : 0 : {
20575 : 0 : tree _q40 = TREE_OPERAND (_q21, 0);
20576 : 0 : tree _q41 = TREE_OPERAND (_q21, 1);
20577 : 0 : switch (TREE_CODE (_q40))
20578 : : {
20579 : 0 : case BIT_XOR_EXPR:
20580 : 0 : {
20581 : 0 : tree _q50 = TREE_OPERAND (_q40, 0);
20582 : 0 : tree _q51 = TREE_OPERAND (_q40, 1);
20583 : 0 : if (tree_expr_nonzero_p (_q41))
20584 : : {
20585 : 0 : switch (TREE_CODE (_p1))
20586 : : {
20587 : 0 : case NE_EXPR:
20588 : 0 : {
20589 : 0 : tree _q90 = TREE_OPERAND (_p1, 0);
20590 : 0 : tree _q91 = TREE_OPERAND (_p1, 1);
20591 : 0 : if ((_q90 == _q50 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q50, 0) && types_match (_q90, _q50)))
20592 : : {
20593 : 0 : if ((_q91 == _q51 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q51, 0) && types_match (_q91, _q51)))
20594 : : {
20595 : 0 : {
20596 : 0 : tree captures[5] ATTRIBUTE_UNUSED = { _q50, _q51, _q41, _q20, _p1 };
20597 : 0 : tree res = generic_simplify_129 (loc, type, _p0, _p1, captures, EQ_EXPR);
20598 : 0 : if (res) return res;
20599 : : }
20600 : : }
20601 : : }
20602 : 0 : if ((_q90 == _q51 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q51, 0) && types_match (_q90, _q51)))
20603 : : {
20604 : 0 : if ((_q91 == _q50 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q50, 0) && types_match (_q91, _q50)))
20605 : : {
20606 : 0 : {
20607 : 0 : tree captures[5] ATTRIBUTE_UNUSED = { _q51, _q50, _q41, _q20, _p1 };
20608 : 0 : tree res = generic_simplify_129 (loc, type, _p0, _p1, captures, EQ_EXPR);
20609 : 0 : if (res) return res;
20610 : : }
20611 : : }
20612 : : }
20613 : : break;
20614 : : }
20615 : : default:;
20616 : : }
20617 : : }
20618 : : break;
20619 : : }
20620 : 0 : default:;
20621 : : }
20622 : 0 : if (tree_expr_nonzero_p (_q40))
20623 : : {
20624 : 0 : switch (TREE_CODE (_q41))
20625 : : {
20626 : 0 : case BIT_XOR_EXPR:
20627 : 0 : {
20628 : 0 : tree _q60 = TREE_OPERAND (_q41, 0);
20629 : 0 : tree _q61 = TREE_OPERAND (_q41, 1);
20630 : 0 : switch (TREE_CODE (_p1))
20631 : : {
20632 : 0 : case NE_EXPR:
20633 : 0 : {
20634 : 0 : tree _q90 = TREE_OPERAND (_p1, 0);
20635 : 0 : tree _q91 = TREE_OPERAND (_p1, 1);
20636 : 0 : if ((_q90 == _q60 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q60, 0) && types_match (_q90, _q60)))
20637 : : {
20638 : 0 : if ((_q91 == _q61 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q61, 0) && types_match (_q91, _q61)))
20639 : : {
20640 : 0 : {
20641 : 0 : tree captures[5] ATTRIBUTE_UNUSED = { _q60, _q61, _q40, _q20, _p1 };
20642 : 0 : tree res = generic_simplify_129 (loc, type, _p0, _p1, captures, EQ_EXPR);
20643 : 0 : if (res) return res;
20644 : : }
20645 : : }
20646 : : }
20647 : 0 : if ((_q90 == _q61 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q61, 0) && types_match (_q90, _q61)))
20648 : : {
20649 : 0 : if ((_q91 == _q60 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q60, 0) && types_match (_q91, _q60)))
20650 : : {
20651 : 0 : {
20652 : 0 : tree captures[5] ATTRIBUTE_UNUSED = { _q61, _q60, _q40, _q20, _p1 };
20653 : 0 : tree res = generic_simplify_129 (loc, type, _p0, _p1, captures, EQ_EXPR);
20654 : 0 : if (res) return res;
20655 : : }
20656 : : }
20657 : : }
20658 : : break;
20659 : : }
20660 : : default:;
20661 : : }
20662 : : break;
20663 : : }
20664 : : default:;
20665 : : }
20666 : : }
20667 : : break;
20668 : : }
20669 : 473 : default:;
20670 : : }
20671 : 473 : switch (TREE_CODE (_q20))
20672 : : {
20673 : 0 : case BIT_XOR_EXPR:
20674 : 0 : {
20675 : 0 : tree _q30 = TREE_OPERAND (_q20, 0);
20676 : 0 : tree _q31 = TREE_OPERAND (_q20, 1);
20677 : 0 : switch (TREE_CODE (_p1))
20678 : : {
20679 : 0 : case NE_EXPR:
20680 : 0 : {
20681 : 0 : tree _q70 = TREE_OPERAND (_p1, 0);
20682 : 0 : tree _q71 = TREE_OPERAND (_p1, 1);
20683 : 0 : if ((_q70 == _q30 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q30, 0) && types_match (_q70, _q30)))
20684 : : {
20685 : 0 : if ((_q71 == _q31 && ! TREE_SIDE_EFFECTS (_q71)) || (operand_equal_p (_q71, _q31, 0) && types_match (_q71, _q31)))
20686 : : {
20687 : 0 : {
20688 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q30, _q31, _q21, _p1 };
20689 : 0 : tree res = generic_simplify_130 (loc, type, _p0, _p1, captures, EQ_EXPR);
20690 : 0 : if (res) return res;
20691 : : }
20692 : : }
20693 : : }
20694 : 0 : if ((_q70 == _q31 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q31, 0) && types_match (_q70, _q31)))
20695 : : {
20696 : 0 : if ((_q71 == _q30 && ! TREE_SIDE_EFFECTS (_q71)) || (operand_equal_p (_q71, _q30, 0) && types_match (_q71, _q30)))
20697 : : {
20698 : 0 : {
20699 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q31, _q30, _q21, _p1 };
20700 : 0 : tree res = generic_simplify_130 (loc, type, _p0, _p1, captures, EQ_EXPR);
20701 : 0 : if (res) return res;
20702 : : }
20703 : : }
20704 : : }
20705 : : break;
20706 : : }
20707 : : default:;
20708 : : }
20709 : : break;
20710 : : }
20711 : 473 : default:;
20712 : : }
20713 : 473 : switch (TREE_CODE (_q21))
20714 : : {
20715 : 0 : case BIT_XOR_EXPR:
20716 : 0 : {
20717 : 0 : tree _q40 = TREE_OPERAND (_q21, 0);
20718 : 0 : tree _q41 = TREE_OPERAND (_q21, 1);
20719 : 0 : switch (TREE_CODE (_p1))
20720 : : {
20721 : 0 : case NE_EXPR:
20722 : 0 : {
20723 : 0 : tree _q70 = TREE_OPERAND (_p1, 0);
20724 : 0 : tree _q71 = TREE_OPERAND (_p1, 1);
20725 : 0 : if ((_q70 == _q40 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q40, 0) && types_match (_q70, _q40)))
20726 : : {
20727 : 0 : if ((_q71 == _q41 && ! TREE_SIDE_EFFECTS (_q71)) || (operand_equal_p (_q71, _q41, 0) && types_match (_q71, _q41)))
20728 : : {
20729 : 0 : {
20730 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q40, _q41, _q20, _p1 };
20731 : 0 : tree res = generic_simplify_130 (loc, type, _p0, _p1, captures, EQ_EXPR);
20732 : 0 : if (res) return res;
20733 : : }
20734 : : }
20735 : : }
20736 : 0 : if ((_q70 == _q41 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q41, 0) && types_match (_q70, _q41)))
20737 : : {
20738 : 0 : if ((_q71 == _q40 && ! TREE_SIDE_EFFECTS (_q71)) || (operand_equal_p (_q71, _q40, 0) && types_match (_q71, _q40)))
20739 : : {
20740 : 0 : {
20741 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q41, _q40, _q20, _p1 };
20742 : 0 : tree res = generic_simplify_130 (loc, type, _p0, _p1, captures, EQ_EXPR);
20743 : 0 : if (res) return res;
20744 : : }
20745 : : }
20746 : : }
20747 : : break;
20748 : : }
20749 : : default:;
20750 : : }
20751 : : break;
20752 : : }
20753 : : default:;
20754 : : }
20755 : : break;
20756 : : }
20757 : 583 : case MULT_EXPR:
20758 : 583 : {
20759 : 583 : tree _q20 = TREE_OPERAND (_p0, 0);
20760 : 583 : tree _q21 = TREE_OPERAND (_p0, 1);
20761 : 583 : switch (TREE_CODE (_q21))
20762 : : {
20763 : 553 : case INTEGER_CST:
20764 : 553 : {
20765 : 553 : switch (TREE_CODE (_p1))
20766 : : {
20767 : 7 : case MULT_EXPR:
20768 : 7 : {
20769 : 7 : tree _q50 = TREE_OPERAND (_p1, 0);
20770 : 7 : tree _q51 = TREE_OPERAND (_p1, 1);
20771 : 7 : switch (TREE_CODE (_q51))
20772 : : {
20773 : 7 : case INTEGER_CST:
20774 : 7 : {
20775 : 7 : {
20776 : 7 : tree captures[8] ATTRIBUTE_UNUSED = { _p0, _p0, _q20, _q21, _p1, _p1, _q50, _q51 };
20777 : 7 : tree res = generic_simplify_141 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR);
20778 : 7 : if (res) return res;
20779 : : }
20780 : 7 : break;
20781 : : }
20782 : : default:;
20783 : : }
20784 : : break;
20785 : : }
20786 : 0 : case LSHIFT_EXPR:
20787 : 0 : {
20788 : 0 : tree _q50 = TREE_OPERAND (_p1, 0);
20789 : 0 : tree _q51 = TREE_OPERAND (_p1, 1);
20790 : 0 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
20791 : : {
20792 : 0 : switch (TREE_CODE (_q51))
20793 : : {
20794 : 0 : case INTEGER_CST:
20795 : 0 : {
20796 : 0 : {
20797 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _p0, _q20, _q21, _p1, _q51 };
20798 : 0 : tree res = generic_simplify_142 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR);
20799 : 0 : if (res) return res;
20800 : : }
20801 : 0 : break;
20802 : : }
20803 : : default:;
20804 : : }
20805 : : }
20806 : : break;
20807 : : }
20808 : 553 : default:;
20809 : : }
20810 : 553 : if ((_p1 == _q20 && ! TREE_SIDE_EFFECTS (_p1)) || (operand_equal_p (_p1, _q20, 0) && types_match (_p1, _q20)))
20811 : : {
20812 : 0 : {
20813 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _p0, _p0, _q20, _q21 };
20814 : 0 : tree res = generic_simplify_143 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR);
20815 : 0 : if (res) return res;
20816 : : }
20817 : : }
20818 : : break;
20819 : : }
20820 : : default:;
20821 : : }
20822 : : break;
20823 : : }
20824 : 375132 : case LSHIFT_EXPR:
20825 : 375132 : {
20826 : 375132 : tree _q20 = TREE_OPERAND (_p0, 0);
20827 : 375132 : tree _q21 = TREE_OPERAND (_p0, 1);
20828 : 375132 : switch (TREE_CODE (_q21))
20829 : : {
20830 : 360684 : case INTEGER_CST:
20831 : 360684 : {
20832 : 360684 : switch (TREE_CODE (_p1))
20833 : : {
20834 : 0 : case MULT_EXPR:
20835 : 0 : {
20836 : 0 : tree _q50 = TREE_OPERAND (_p1, 0);
20837 : 0 : tree _q51 = TREE_OPERAND (_p1, 1);
20838 : 0 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
20839 : : {
20840 : 0 : switch (TREE_CODE (_q51))
20841 : : {
20842 : 0 : case INTEGER_CST:
20843 : 0 : {
20844 : 0 : {
20845 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _p1, _q20, _q51, _p0, _q21 };
20846 : 0 : tree res = generic_simplify_142 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR);
20847 : 0 : if (res) return res;
20848 : : }
20849 : 0 : break;
20850 : : }
20851 : : default:;
20852 : : }
20853 : : }
20854 : : break;
20855 : : }
20856 : 360684 : default:;
20857 : : }
20858 : 360684 : {
20859 : 360684 : tree _p1_pops[1];
20860 : 360684 : if (tree_nop_convert (_p1, _p1_pops))
20861 : : {
20862 : 308497 : tree _q50 = _p1_pops[0];
20863 : 308497 : switch (TREE_CODE (_q50))
20864 : : {
20865 : 0 : case MULT_EXPR:
20866 : 0 : {
20867 : 0 : tree _q60 = TREE_OPERAND (_q50, 0);
20868 : 0 : tree _q61 = TREE_OPERAND (_q50, 1);
20869 : 0 : {
20870 : 0 : tree _q60_pops[1];
20871 : 0 : if (tree_nop_convert (_q60, _q60_pops))
20872 : : {
20873 : 0 : tree _q70 = _q60_pops[0];
20874 : 0 : if ((_q70 == _q20 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q20, 0) && types_match (_q70, _q20)))
20875 : : {
20876 : 0 : switch (TREE_CODE (_q61))
20877 : : {
20878 : 0 : case INTEGER_CST:
20879 : 0 : {
20880 : 0 : {
20881 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q50, _q20, _q61, _p0, _q21 };
20882 : 0 : tree res = generic_simplify_115 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR);
20883 : 0 : if (res) return res;
20884 : : }
20885 : 0 : break;
20886 : : }
20887 : : default:;
20888 : : }
20889 : : }
20890 : : }
20891 : : }
20892 : 0 : break;
20893 : : }
20894 : : default:;
20895 : : }
20896 : : }
20897 : : }
20898 : 360684 : break;
20899 : : }
20900 : : default:;
20901 : : }
20902 : : break;
20903 : : }
20904 : 1790175 : default:;
20905 : : }
20906 : 1790175 : {
20907 : 1790175 : tree _p0_pops[1];
20908 : 1790175 : if (tree_logical_inverted_value (_p0, _p0_pops))
20909 : : {
20910 : 204 : tree _q20 = _p0_pops[0];
20911 : 204 : if ((_p1 == _q20 && ! TREE_SIDE_EFFECTS (_p1)) || (operand_equal_p (_p1, _q20, 0) && types_match (_p1, _q20)))
20912 : : {
20913 : 3 : if (tree_truth_valued_p (_p1))
20914 : : {
20915 : 3 : {
20916 : 3 : tree captures[1] ATTRIBUTE_UNUSED = { _q20 };
20917 : 3 : tree res = generic_simplify_118 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR);
20918 : 3 : if (res) return res;
20919 : : }
20920 : : }
20921 : : }
20922 : : }
20923 : : }
20924 : 1790172 : if (tree_truth_valued_p (_p0))
20925 : : {
20926 : 218265 : {
20927 : 218265 : tree _p1_pops[1];
20928 : 218265 : if (tree_logical_inverted_value (_p1, _p1_pops))
20929 : : {
20930 : 62 : tree _q30 = _p1_pops[0];
20931 : 62 : if ((_q30 == _p0 && ! TREE_SIDE_EFFECTS (_q30)) || (operand_equal_p (_q30, _p0, 0) && types_match (_q30, _p0)))
20932 : : {
20933 : 0 : {
20934 : 0 : tree captures[1] ATTRIBUTE_UNUSED = { _p0 };
20935 : 0 : tree res = generic_simplify_118 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR);
20936 : 0 : if (res) return res;
20937 : : }
20938 : : }
20939 : : }
20940 : : }
20941 : : }
20942 : 1790172 : switch (TREE_CODE (_p1))
20943 : : {
20944 : 51 : case MULT_EXPR:
20945 : 51 : {
20946 : 51 : tree _q30 = TREE_OPERAND (_p1, 0);
20947 : 51 : tree _q31 = TREE_OPERAND (_p1, 1);
20948 : 51 : if ((_q30 == _p0 && ! TREE_SIDE_EFFECTS (_q30)) || (operand_equal_p (_q30, _p0, 0) && types_match (_q30, _p0)))
20949 : : {
20950 : 0 : switch (TREE_CODE (_q31))
20951 : : {
20952 : 0 : case INTEGER_CST:
20953 : 0 : {
20954 : 0 : {
20955 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _p1, _p1, _p0, _q31 };
20956 : 0 : tree res = generic_simplify_143 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR);
20957 : 0 : if (res) return res;
20958 : : }
20959 : 0 : break;
20960 : : }
20961 : : default:;
20962 : : }
20963 : : }
20964 : : break;
20965 : : }
20966 : 1790172 : default:;
20967 : : }
20968 : 1790172 : {
20969 : 1790172 : tree _p1_pops[1];
20970 : 1790172 : if (tree_nop_convert (_p1, _p1_pops))
20971 : : {
20972 : 868565 : tree _q30 = _p1_pops[0];
20973 : 868565 : switch (TREE_CODE (_q30))
20974 : : {
20975 : 5 : case MULT_EXPR:
20976 : 5 : {
20977 : 5 : tree _q40 = TREE_OPERAND (_q30, 0);
20978 : 5 : tree _q41 = TREE_OPERAND (_q30, 1);
20979 : 5 : {
20980 : 5 : tree _q40_pops[1];
20981 : 5 : if (tree_nop_convert (_q40, _q40_pops))
20982 : : {
20983 : 0 : tree _q50 = _q40_pops[0];
20984 : 0 : if ((_q50 == _p0 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _p0, 0) && types_match (_q50, _p0)))
20985 : : {
20986 : 0 : switch (TREE_CODE (_q41))
20987 : : {
20988 : 0 : case INTEGER_CST:
20989 : 0 : {
20990 : 0 : {
20991 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _p1, _q30, _p0, _q41 };
20992 : 0 : tree res = generic_simplify_116 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR);
20993 : 0 : if (res) return res;
20994 : : }
20995 : 0 : break;
20996 : : }
20997 : : default:;
20998 : : }
20999 : : }
21000 : : }
21001 : : }
21002 : 5 : break;
21003 : : }
21004 : : default:;
21005 : : }
21006 : : }
21007 : : }
21008 : 1790172 : switch (TREE_CODE (_p0))
21009 : : {
21010 : 375132 : case LSHIFT_EXPR:
21011 : 375132 : {
21012 : 375132 : tree _q20 = TREE_OPERAND (_p0, 0);
21013 : 375132 : tree _q21 = TREE_OPERAND (_p0, 1);
21014 : 375132 : switch (TREE_CODE (_q21))
21015 : : {
21016 : 360684 : case INTEGER_CST:
21017 : 360684 : {
21018 : 360684 : switch (TREE_CODE (_p1))
21019 : : {
21020 : 1115 : case LSHIFT_EXPR:
21021 : 1115 : {
21022 : 1115 : tree _q50 = TREE_OPERAND (_p1, 0);
21023 : 1115 : tree _q51 = TREE_OPERAND (_p1, 1);
21024 : 1115 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
21025 : : {
21026 : 4 : switch (TREE_CODE (_q51))
21027 : : {
21028 : 4 : case INTEGER_CST:
21029 : 4 : {
21030 : 4 : {
21031 : 4 : tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q51 };
21032 : 4 : tree res = generic_simplify_144 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR);
21033 : 4 : if (res) return res;
21034 : : }
21035 : 2 : break;
21036 : : }
21037 : : default:;
21038 : : }
21039 : : }
21040 : : break;
21041 : : }
21042 : 360682 : default:;
21043 : : }
21044 : 360682 : if ((_p1 == _q20 && ! TREE_SIDE_EFFECTS (_p1)) || (operand_equal_p (_p1, _q20, 0) && types_match (_p1, _q20)))
21045 : : {
21046 : 432 : {
21047 : 432 : tree captures[3] ATTRIBUTE_UNUSED = { _p0, _q20, _q21 };
21048 : 432 : tree res = generic_simplify_145 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR);
21049 : 432 : if (res) return res;
21050 : : }
21051 : : }
21052 : : break;
21053 : : }
21054 : : default:;
21055 : : }
21056 : : break;
21057 : : }
21058 : 1790170 : default:;
21059 : : }
21060 : 1790170 : switch (TREE_CODE (_p1))
21061 : : {
21062 : 26513 : case LSHIFT_EXPR:
21063 : 26513 : {
21064 : 26513 : tree _q30 = TREE_OPERAND (_p1, 0);
21065 : 26513 : tree _q31 = TREE_OPERAND (_p1, 1);
21066 : 26513 : if ((_q30 == _p0 && ! TREE_SIDE_EFFECTS (_q30)) || (operand_equal_p (_q30, _p0, 0) && types_match (_q30, _p0)))
21067 : : {
21068 : 10 : switch (TREE_CODE (_q31))
21069 : : {
21070 : 3 : case INTEGER_CST:
21071 : 3 : {
21072 : 3 : {
21073 : 3 : tree captures[3] ATTRIBUTE_UNUSED = { _p1, _p0, _q31 };
21074 : 3 : tree res = generic_simplify_145 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR);
21075 : 3 : if (res) return res;
21076 : : }
21077 : 0 : break;
21078 : : }
21079 : : default:;
21080 : : }
21081 : : }
21082 : : break;
21083 : : }
21084 : 1790167 : default:;
21085 : : }
21086 : 1790167 : switch (TREE_CODE (_p0))
21087 : : {
21088 : 0 : case MIN_EXPR:
21089 : 0 : {
21090 : 0 : tree _q20 = TREE_OPERAND (_p0, 0);
21091 : 0 : tree _q21 = TREE_OPERAND (_p0, 1);
21092 : 0 : switch (TREE_CODE (_p1))
21093 : : {
21094 : 0 : case MAX_EXPR:
21095 : 0 : {
21096 : 0 : tree _q50 = TREE_OPERAND (_p1, 0);
21097 : 0 : tree _q51 = TREE_OPERAND (_p1, 1);
21098 : 0 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
21099 : : {
21100 : 0 : if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
21101 : : {
21102 : 0 : {
21103 : 0 : tree captures[2] ATTRIBUTE_UNUSED = { _q20, _q21 };
21104 : 0 : if (!HONOR_NANS (captures[0])
21105 : : )
21106 : : {
21107 : 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1341;
21108 : 0 : {
21109 : 0 : tree res_op0;
21110 : 0 : res_op0 = captures[0];
21111 : 0 : tree res_op1;
21112 : 0 : res_op1 = captures[1];
21113 : 0 : tree _r;
21114 : 0 : _r = fold_build2_loc (loc, BIT_IOR_EXPR, type, res_op0, res_op1);
21115 : 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 896, __FILE__, __LINE__, true);
21116 : 0 : return _r;
21117 : : }
21118 : 0 : next_after_fail1341:;
21119 : : }
21120 : : }
21121 : : }
21122 : : }
21123 : 0 : if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
21124 : : {
21125 : 0 : if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
21126 : : {
21127 : 0 : {
21128 : 0 : tree captures[2] ATTRIBUTE_UNUSED = { _q21, _q20 };
21129 : 0 : if (!HONOR_NANS (captures[0])
21130 : : )
21131 : : {
21132 : 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1342;
21133 : 0 : {
21134 : 0 : tree res_op0;
21135 : 0 : res_op0 = captures[0];
21136 : 0 : tree res_op1;
21137 : 0 : res_op1 = captures[1];
21138 : 0 : tree _r;
21139 : 0 : _r = fold_build2_loc (loc, BIT_IOR_EXPR, type, res_op0, res_op1);
21140 : 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 896, __FILE__, __LINE__, true);
21141 : 0 : return _r;
21142 : : }
21143 : 0 : next_after_fail1342:;
21144 : : }
21145 : : }
21146 : : }
21147 : : }
21148 : : break;
21149 : : }
21150 : : default:;
21151 : : }
21152 : : break;
21153 : : }
21154 : 0 : case MAX_EXPR:
21155 : 0 : {
21156 : 0 : tree _q20 = TREE_OPERAND (_p0, 0);
21157 : 0 : tree _q21 = TREE_OPERAND (_p0, 1);
21158 : 0 : switch (TREE_CODE (_p1))
21159 : : {
21160 : 0 : case MIN_EXPR:
21161 : 0 : {
21162 : 0 : tree _q50 = TREE_OPERAND (_p1, 0);
21163 : 0 : tree _q51 = TREE_OPERAND (_p1, 1);
21164 : 0 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
21165 : : {
21166 : 0 : if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
21167 : : {
21168 : 0 : {
21169 : 0 : tree captures[2] ATTRIBUTE_UNUSED = { _q20, _q21 };
21170 : 0 : if (!HONOR_NANS (captures[0])
21171 : : )
21172 : : {
21173 : 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1343;
21174 : 0 : {
21175 : 0 : tree res_op0;
21176 : 0 : res_op0 = captures[0];
21177 : 0 : tree res_op1;
21178 : 0 : res_op1 = captures[1];
21179 : 0 : tree _r;
21180 : 0 : _r = fold_build2_loc (loc, BIT_IOR_EXPR, type, res_op0, res_op1);
21181 : 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 896, __FILE__, __LINE__, true);
21182 : 0 : return _r;
21183 : : }
21184 : 0 : next_after_fail1343:;
21185 : : }
21186 : : }
21187 : : }
21188 : : }
21189 : 0 : if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
21190 : : {
21191 : 0 : if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
21192 : : {
21193 : 0 : {
21194 : 0 : tree captures[2] ATTRIBUTE_UNUSED = { _q20, _q21 };
21195 : 0 : if (!HONOR_NANS (captures[0])
21196 : : )
21197 : : {
21198 : 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1344;
21199 : 0 : {
21200 : 0 : tree res_op0;
21201 : 0 : res_op0 = captures[0];
21202 : 0 : tree res_op1;
21203 : 0 : res_op1 = captures[1];
21204 : 0 : tree _r;
21205 : 0 : _r = fold_build2_loc (loc, BIT_IOR_EXPR, type, res_op0, res_op1);
21206 : 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 896, __FILE__, __LINE__, true);
21207 : 0 : return _r;
21208 : : }
21209 : 0 : next_after_fail1344:;
21210 : : }
21211 : : }
21212 : : }
21213 : : }
21214 : : break;
21215 : : }
21216 : : default:;
21217 : : }
21218 : : break;
21219 : : }
21220 : 61 : case VEC_COND_EXPR:
21221 : 61 : {
21222 : 61 : tree _q20 = TREE_OPERAND (_p0, 0);
21223 : 61 : tree _q21 = TREE_OPERAND (_p0, 1);
21224 : 61 : tree _q22 = TREE_OPERAND (_p0, 2);
21225 : 61 : switch (TREE_CODE (_p1))
21226 : : {
21227 : 54 : case VEC_COND_EXPR:
21228 : 54 : {
21229 : 54 : tree _q60 = TREE_OPERAND (_p1, 0);
21230 : 54 : tree _q61 = TREE_OPERAND (_p1, 1);
21231 : 54 : tree _q62 = TREE_OPERAND (_p1, 2);
21232 : 54 : if ((_q60 == _q20 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q20, 0) && types_match (_q60, _q20)))
21233 : : {
21234 : 0 : {
21235 : 0 : tree captures[7] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _q22, _p1, _q61, _q62 };
21236 : 0 : if (VECTOR_TYPE_P (type)
21237 : 0 : && (TREE_CODE_CLASS (BIT_IOR_EXPR) != tcc_comparison
21238 : : || types_match (type, TREE_TYPE (captures[2]))
21239 : : || expand_vec_cond_expr_p (type, TREE_TYPE (captures[1]))
21240 : : || (optimize_vectors_before_lowering_p ()
21241 : : && !expand_vec_cond_expr_p (TREE_TYPE (captures[2]), TREE_TYPE (captures[1]))))
21242 : : )
21243 : : {
21244 : 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1345;
21245 : 0 : {
21246 : 0 : tree res_op0;
21247 : 0 : res_op0 = captures[1];
21248 : 0 : tree res_op1;
21249 : 0 : {
21250 : 0 : tree _o1[2], _r1;
21251 : 0 : _o1[0] = captures[2];
21252 : 0 : _o1[1] = captures[5];
21253 : 0 : _r1 = fold_build2_loc (loc, BIT_IOR_EXPR, TREE_TYPE (_o1[0]), _o1[0], _o1[1]);
21254 : 0 : if (EXPR_P (_r1))
21255 : 0 : goto next_after_fail1345;
21256 : 0 : res_op1 = _r1;
21257 : : }
21258 : 0 : tree res_op2;
21259 : 0 : {
21260 : 0 : tree _o1[2], _r1;
21261 : 0 : _o1[0] = captures[3];
21262 : 0 : _o1[1] = captures[6];
21263 : 0 : _r1 = fold_build2_loc (loc, BIT_IOR_EXPR, TREE_TYPE (_o1[0]), _o1[0], _o1[1]);
21264 : 0 : if (EXPR_P (_r1))
21265 : 0 : goto next_after_fail1345;
21266 : 0 : res_op2 = _r1;
21267 : : }
21268 : 0 : tree _r;
21269 : 0 : _r = fold_build3_loc (loc, VEC_COND_EXPR, type, res_op0, res_op1, res_op2);
21270 : 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 900, __FILE__, __LINE__, true);
21271 : 0 : return _r;
21272 : : }
21273 : 0 : next_after_fail1345:;
21274 : : }
21275 : : }
21276 : : }
21277 : : break;
21278 : : }
21279 : 61 : default:;
21280 : : }
21281 : 61 : if (integer_minus_onep (_q21))
21282 : : {
21283 : 60 : if (integer_zerop (_q22))
21284 : : {
21285 : 60 : switch (TREE_CODE (_p1))
21286 : : {
21287 : 54 : case VEC_COND_EXPR:
21288 : 54 : {
21289 : 54 : tree _q60 = TREE_OPERAND (_p1, 0);
21290 : 54 : tree _q61 = TREE_OPERAND (_p1, 1);
21291 : 54 : tree _q62 = TREE_OPERAND (_p1, 2);
21292 : 54 : if ((_q61 == _q21 && ! TREE_SIDE_EFFECTS (_q61)) || (operand_equal_p (_q61, _q21, 0) && types_match (_q61, _q21)))
21293 : : {
21294 : 54 : if ((_q62 == _q22 && ! TREE_SIDE_EFFECTS (_q62)) || (operand_equal_p (_q62, _q22, 0) && types_match (_q62, _q22)))
21295 : : {
21296 : 54 : {
21297 : 54 : tree captures[4] ATTRIBUTE_UNUSED = { _q20, _q21, _q22, _q60 };
21298 : 54 : const enum tree_code lop = BIT_IOR_EXPR;
21299 : 54 : if (target_supports_op_p (TREE_TYPE (captures[0]), lop, optab_vector)
21300 : : )
21301 : : {
21302 : 54 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1346;
21303 : 54 : {
21304 : 54 : tree res_op0;
21305 : 54 : {
21306 : 54 : tree _o1[2], _r1;
21307 : 54 : _o1[0] = captures[0];
21308 : 54 : _o1[1] = captures[3];
21309 : 54 : _r1 = fold_build2_loc (loc, lop, TREE_TYPE (_o1[0]), _o1[0], _o1[1]);
21310 : 54 : res_op0 = _r1;
21311 : : }
21312 : 54 : tree res_op1;
21313 : 54 : res_op1 = captures[1];
21314 : 54 : tree res_op2;
21315 : 54 : res_op2 = captures[2];
21316 : 54 : tree _r;
21317 : 54 : _r = fold_build3_loc (loc, VEC_COND_EXPR, type, res_op0, res_op1, res_op2);
21318 : 54 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 944, __FILE__, __LINE__, true);
21319 : 54 : return _r;
21320 : : }
21321 : 0 : next_after_fail1346:;
21322 : : }
21323 : : }
21324 : 0 : {
21325 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q20, _q21, _q22, _q60 };
21326 : 0 : const enum tree_code lop = BIT_IOR_EXPR;
21327 : 0 : if (target_supports_op_p (TREE_TYPE (captures[0]), lop, optab_vector)
21328 : : )
21329 : : {
21330 : 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1347;
21331 : 0 : {
21332 : 0 : tree res_op0;
21333 : 0 : {
21334 : 0 : tree _o1[2], _r1;
21335 : 0 : _o1[0] = captures[0];
21336 : 0 : _o1[1] = captures[3];
21337 : 0 : _r1 = fold_build2_loc (loc, lop, TREE_TYPE (_o1[0]), _o1[0], _o1[1]);
21338 : 0 : res_op0 = _r1;
21339 : : }
21340 : 0 : tree res_op1;
21341 : 0 : res_op1 = captures[1];
21342 : 0 : tree res_op2;
21343 : 0 : res_op2 = captures[2];
21344 : 0 : tree _r;
21345 : 0 : _r = fold_build3_loc (loc, VEC_COND_EXPR, type, res_op0, res_op1, res_op2);
21346 : 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 944, __FILE__, __LINE__, true);
21347 : 0 : return _r;
21348 : : }
21349 : 0 : next_after_fail1347:;
21350 : : }
21351 : : }
21352 : 0 : {
21353 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q20, _q21, _q22, _q60 };
21354 : 0 : const enum tree_code lop = BIT_IOR_EXPR;
21355 : 0 : if (target_supports_op_p (TREE_TYPE (captures[0]), lop, optab_vector)
21356 : : )
21357 : : {
21358 : 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1348;
21359 : 0 : {
21360 : 0 : tree res_op0;
21361 : 0 : {
21362 : 0 : tree _o1[2], _r1;
21363 : 0 : _o1[0] = captures[0];
21364 : 0 : _o1[1] = captures[3];
21365 : 0 : _r1 = fold_build2_loc (loc, lop, TREE_TYPE (_o1[0]), _o1[0], _o1[1]);
21366 : 0 : res_op0 = _r1;
21367 : : }
21368 : 0 : tree res_op1;
21369 : 0 : res_op1 = captures[1];
21370 : 0 : tree res_op2;
21371 : 0 : res_op2 = captures[2];
21372 : 0 : tree _r;
21373 : 0 : _r = fold_build3_loc (loc, VEC_COND_EXPR, type, res_op0, res_op1, res_op2);
21374 : 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 944, __FILE__, __LINE__, true);
21375 : 0 : return _r;
21376 : : }
21377 : 0 : next_after_fail1348:;
21378 : : }
21379 : : }
21380 : 0 : {
21381 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q20, _q21, _q22, _q60 };
21382 : 0 : const enum tree_code lop = BIT_IOR_EXPR;
21383 : 0 : if (target_supports_op_p (TREE_TYPE (captures[0]), lop, optab_vector)
21384 : : )
21385 : : {
21386 : 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1349;
21387 : 0 : {
21388 : 0 : tree res_op0;
21389 : 0 : {
21390 : 0 : tree _o1[2], _r1;
21391 : 0 : _o1[0] = captures[0];
21392 : 0 : _o1[1] = captures[3];
21393 : 0 : _r1 = fold_build2_loc (loc, lop, TREE_TYPE (_o1[0]), _o1[0], _o1[1]);
21394 : 0 : res_op0 = _r1;
21395 : : }
21396 : 0 : tree res_op1;
21397 : 0 : res_op1 = captures[1];
21398 : 0 : tree res_op2;
21399 : 0 : res_op2 = captures[2];
21400 : 0 : tree _r;
21401 : 0 : _r = fold_build3_loc (loc, VEC_COND_EXPR, type, res_op0, res_op1, res_op2);
21402 : 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 944, __FILE__, __LINE__, true);
21403 : 0 : return _r;
21404 : : }
21405 : 0 : next_after_fail1349:;
21406 : : }
21407 : : }
21408 : 0 : {
21409 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q20, _q21, _q22, _q60 };
21410 : 0 : const enum tree_code lop = BIT_IOR_EXPR;
21411 : 0 : if (target_supports_op_p (TREE_TYPE (captures[0]), lop, optab_vector)
21412 : : )
21413 : : {
21414 : 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1350;
21415 : 0 : {
21416 : 0 : tree res_op0;
21417 : 0 : {
21418 : 0 : tree _o1[2], _r1;
21419 : 0 : _o1[0] = captures[0];
21420 : 0 : _o1[1] = captures[3];
21421 : 0 : _r1 = fold_build2_loc (loc, lop, TREE_TYPE (_o1[0]), _o1[0], _o1[1]);
21422 : 0 : res_op0 = _r1;
21423 : : }
21424 : 0 : tree res_op1;
21425 : 0 : res_op1 = captures[1];
21426 : 0 : tree res_op2;
21427 : 0 : res_op2 = captures[2];
21428 : 0 : tree _r;
21429 : 0 : _r = fold_build3_loc (loc, VEC_COND_EXPR, type, res_op0, res_op1, res_op2);
21430 : 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 944, __FILE__, __LINE__, true);
21431 : 0 : return _r;
21432 : : }
21433 : 0 : next_after_fail1350:;
21434 : : }
21435 : : }
21436 : 0 : {
21437 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q20, _q21, _q22, _q60 };
21438 : 0 : const enum tree_code lop = BIT_IOR_EXPR;
21439 : 0 : if (target_supports_op_p (TREE_TYPE (captures[0]), lop, optab_vector)
21440 : : )
21441 : : {
21442 : 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1351;
21443 : 0 : {
21444 : 0 : tree res_op0;
21445 : 0 : {
21446 : 0 : tree _o1[2], _r1;
21447 : 0 : _o1[0] = captures[0];
21448 : 0 : _o1[1] = captures[3];
21449 : 0 : _r1 = fold_build2_loc (loc, lop, TREE_TYPE (_o1[0]), _o1[0], _o1[1]);
21450 : 0 : res_op0 = _r1;
21451 : : }
21452 : 0 : tree res_op1;
21453 : 0 : res_op1 = captures[1];
21454 : 0 : tree res_op2;
21455 : 0 : res_op2 = captures[2];
21456 : 0 : tree _r;
21457 : 0 : _r = fold_build3_loc (loc, VEC_COND_EXPR, type, res_op0, res_op1, res_op2);
21458 : 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 944, __FILE__, __LINE__, true);
21459 : 0 : return _r;
21460 : : }
21461 : 0 : next_after_fail1351:;
21462 : : }
21463 : : }
21464 : 0 : {
21465 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q20, _q21, _q22, _q60 };
21466 : 0 : const enum tree_code lop = BIT_IOR_EXPR;
21467 : 0 : if (target_supports_op_p (TREE_TYPE (captures[0]), lop, optab_vector)
21468 : : )
21469 : : {
21470 : 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1352;
21471 : 0 : {
21472 : 0 : tree res_op0;
21473 : 0 : {
21474 : 0 : tree _o1[2], _r1;
21475 : 0 : _o1[0] = captures[0];
21476 : 0 : _o1[1] = captures[3];
21477 : 0 : _r1 = fold_build2_loc (loc, lop, TREE_TYPE (_o1[0]), _o1[0], _o1[1]);
21478 : 0 : res_op0 = _r1;
21479 : : }
21480 : 0 : tree res_op1;
21481 : 0 : res_op1 = captures[1];
21482 : 0 : tree res_op2;
21483 : 0 : res_op2 = captures[2];
21484 : 0 : tree _r;
21485 : 0 : _r = fold_build3_loc (loc, VEC_COND_EXPR, type, res_op0, res_op1, res_op2);
21486 : 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 944, __FILE__, __LINE__, true);
21487 : 0 : return _r;
21488 : : }
21489 : 0 : next_after_fail1352:;
21490 : : }
21491 : : }
21492 : 0 : {
21493 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q20, _q21, _q22, _q60 };
21494 : 0 : const enum tree_code lop = BIT_IOR_EXPR;
21495 : 0 : if (target_supports_op_p (TREE_TYPE (captures[0]), lop, optab_vector)
21496 : : )
21497 : : {
21498 : 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1353;
21499 : 0 : {
21500 : 0 : tree res_op0;
21501 : 0 : {
21502 : 0 : tree _o1[2], _r1;
21503 : 0 : _o1[0] = captures[0];
21504 : 0 : _o1[1] = captures[3];
21505 : 0 : _r1 = fold_build2_loc (loc, lop, TREE_TYPE (_o1[0]), _o1[0], _o1[1]);
21506 : 0 : res_op0 = _r1;
21507 : : }
21508 : 0 : tree res_op1;
21509 : 0 : res_op1 = captures[1];
21510 : 0 : tree res_op2;
21511 : 0 : res_op2 = captures[2];
21512 : 0 : tree _r;
21513 : 0 : _r = fold_build3_loc (loc, VEC_COND_EXPR, type, res_op0, res_op1, res_op2);
21514 : 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 944, __FILE__, __LINE__, true);
21515 : 0 : return _r;
21516 : : }
21517 : 0 : next_after_fail1353:;
21518 : : }
21519 : : }
21520 : 0 : {
21521 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q20, _q21, _q22, _q60 };
21522 : 0 : const enum tree_code lop = BIT_IOR_EXPR;
21523 : 0 : if (target_supports_op_p (TREE_TYPE (captures[0]), lop, optab_vector)
21524 : : )
21525 : : {
21526 : 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1354;
21527 : 0 : {
21528 : 0 : tree res_op0;
21529 : 0 : {
21530 : 0 : tree _o1[2], _r1;
21531 : 0 : _o1[0] = captures[0];
21532 : 0 : _o1[1] = captures[3];
21533 : 0 : _r1 = fold_build2_loc (loc, lop, TREE_TYPE (_o1[0]), _o1[0], _o1[1]);
21534 : 0 : res_op0 = _r1;
21535 : : }
21536 : 0 : tree res_op1;
21537 : 0 : res_op1 = captures[1];
21538 : 0 : tree res_op2;
21539 : 0 : res_op2 = captures[2];
21540 : 0 : tree _r;
21541 : 0 : _r = fold_build3_loc (loc, VEC_COND_EXPR, type, res_op0, res_op1, res_op2);
21542 : 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 944, __FILE__, __LINE__, true);
21543 : 0 : return _r;
21544 : : }
21545 : 0 : next_after_fail1354:;
21546 : : }
21547 : : }
21548 : 0 : {
21549 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q20, _q21, _q22, _q60 };
21550 : 0 : const enum tree_code lop = BIT_IOR_EXPR;
21551 : 0 : if (target_supports_op_p (TREE_TYPE (captures[0]), lop, optab_vector)
21552 : : )
21553 : : {
21554 : 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1355;
21555 : 0 : {
21556 : 0 : tree res_op0;
21557 : 0 : {
21558 : 0 : tree _o1[2], _r1;
21559 : 0 : _o1[0] = captures[0];
21560 : 0 : _o1[1] = captures[3];
21561 : 0 : _r1 = fold_build2_loc (loc, lop, TREE_TYPE (_o1[0]), _o1[0], _o1[1]);
21562 : 0 : res_op0 = _r1;
21563 : : }
21564 : 0 : tree res_op1;
21565 : 0 : res_op1 = captures[1];
21566 : 0 : tree res_op2;
21567 : 0 : res_op2 = captures[2];
21568 : 0 : tree _r;
21569 : 0 : _r = fold_build3_loc (loc, VEC_COND_EXPR, type, res_op0, res_op1, res_op2);
21570 : 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 944, __FILE__, __LINE__, true);
21571 : 0 : return _r;
21572 : : }
21573 : 0 : next_after_fail1355:;
21574 : : }
21575 : : }
21576 : 0 : {
21577 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q20, _q21, _q22, _q60 };
21578 : 0 : const enum tree_code lop = BIT_IOR_EXPR;
21579 : 0 : if (target_supports_op_p (TREE_TYPE (captures[0]), lop, optab_vector)
21580 : : )
21581 : : {
21582 : 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1356;
21583 : 0 : {
21584 : 0 : tree res_op0;
21585 : 0 : {
21586 : 0 : tree _o1[2], _r1;
21587 : 0 : _o1[0] = captures[0];
21588 : 0 : _o1[1] = captures[3];
21589 : 0 : _r1 = fold_build2_loc (loc, lop, TREE_TYPE (_o1[0]), _o1[0], _o1[1]);
21590 : 0 : res_op0 = _r1;
21591 : : }
21592 : 0 : tree res_op1;
21593 : 0 : res_op1 = captures[1];
21594 : 0 : tree res_op2;
21595 : 0 : res_op2 = captures[2];
21596 : 0 : tree _r;
21597 : 0 : _r = fold_build3_loc (loc, VEC_COND_EXPR, type, res_op0, res_op1, res_op2);
21598 : 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 944, __FILE__, __LINE__, true);
21599 : 0 : return _r;
21600 : : }
21601 : 0 : next_after_fail1356:;
21602 : : }
21603 : : }
21604 : 0 : {
21605 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q20, _q21, _q22, _q60 };
21606 : 0 : const enum tree_code lop = BIT_IOR_EXPR;
21607 : 0 : if (target_supports_op_p (TREE_TYPE (captures[0]), lop, optab_vector)
21608 : : )
21609 : : {
21610 : 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1357;
21611 : 0 : {
21612 : 0 : tree res_op0;
21613 : 0 : {
21614 : 0 : tree _o1[2], _r1;
21615 : 0 : _o1[0] = captures[0];
21616 : 0 : _o1[1] = captures[3];
21617 : 0 : _r1 = fold_build2_loc (loc, lop, TREE_TYPE (_o1[0]), _o1[0], _o1[1]);
21618 : 0 : res_op0 = _r1;
21619 : : }
21620 : 0 : tree res_op1;
21621 : 0 : res_op1 = captures[1];
21622 : 0 : tree res_op2;
21623 : 0 : res_op2 = captures[2];
21624 : 0 : tree _r;
21625 : 0 : _r = fold_build3_loc (loc, VEC_COND_EXPR, type, res_op0, res_op1, res_op2);
21626 : 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 944, __FILE__, __LINE__, true);
21627 : 0 : return _r;
21628 : : }
21629 : 0 : next_after_fail1357:;
21630 : : }
21631 : : }
21632 : 0 : {
21633 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q20, _q21, _q22, _q60 };
21634 : 0 : const enum tree_code lop = BIT_IOR_EXPR;
21635 : 0 : if (target_supports_op_p (TREE_TYPE (captures[0]), lop, optab_vector)
21636 : : )
21637 : : {
21638 : 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1358;
21639 : 0 : {
21640 : 0 : tree res_op0;
21641 : 0 : {
21642 : 0 : tree _o1[2], _r1;
21643 : 0 : _o1[0] = captures[0];
21644 : 0 : _o1[1] = captures[3];
21645 : 0 : _r1 = fold_build2_loc (loc, lop, TREE_TYPE (_o1[0]), _o1[0], _o1[1]);
21646 : 0 : res_op0 = _r1;
21647 : : }
21648 : 0 : tree res_op1;
21649 : 0 : res_op1 = captures[1];
21650 : 0 : tree res_op2;
21651 : 0 : res_op2 = captures[2];
21652 : 0 : tree _r;
21653 : 0 : _r = fold_build3_loc (loc, VEC_COND_EXPR, type, res_op0, res_op1, res_op2);
21654 : 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 944, __FILE__, __LINE__, true);
21655 : 0 : return _r;
21656 : : }
21657 : 0 : next_after_fail1358:;
21658 : : }
21659 : : }
21660 : 0 : {
21661 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q20, _q21, _q22, _q60 };
21662 : 0 : const enum tree_code lop = BIT_IOR_EXPR;
21663 : 0 : if (target_supports_op_p (TREE_TYPE (captures[0]), lop, optab_vector)
21664 : : )
21665 : : {
21666 : 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1359;
21667 : 0 : {
21668 : 0 : tree res_op0;
21669 : 0 : {
21670 : 0 : tree _o1[2], _r1;
21671 : 0 : _o1[0] = captures[0];
21672 : 0 : _o1[1] = captures[3];
21673 : 0 : _r1 = fold_build2_loc (loc, lop, TREE_TYPE (_o1[0]), _o1[0], _o1[1]);
21674 : 0 : res_op0 = _r1;
21675 : : }
21676 : 0 : tree res_op1;
21677 : 0 : res_op1 = captures[1];
21678 : 0 : tree res_op2;
21679 : 0 : res_op2 = captures[2];
21680 : 0 : tree _r;
21681 : 0 : _r = fold_build3_loc (loc, VEC_COND_EXPR, type, res_op0, res_op1, res_op2);
21682 : 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 944, __FILE__, __LINE__, true);
21683 : 0 : return _r;
21684 : : }
21685 : 0 : next_after_fail1359:;
21686 : : }
21687 : : }
21688 : 0 : {
21689 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q20, _q21, _q22, _q60 };
21690 : 0 : const enum tree_code lop = BIT_IOR_EXPR;
21691 : 0 : if (target_supports_op_p (TREE_TYPE (captures[0]), lop, optab_vector)
21692 : : )
21693 : : {
21694 : 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1360;
21695 : 0 : {
21696 : 0 : tree res_op0;
21697 : 0 : {
21698 : 0 : tree _o1[2], _r1;
21699 : 0 : _o1[0] = captures[0];
21700 : 0 : _o1[1] = captures[3];
21701 : 0 : _r1 = fold_build2_loc (loc, lop, TREE_TYPE (_o1[0]), _o1[0], _o1[1]);
21702 : 0 : res_op0 = _r1;
21703 : : }
21704 : 0 : tree res_op1;
21705 : 0 : res_op1 = captures[1];
21706 : 0 : tree res_op2;
21707 : 0 : res_op2 = captures[2];
21708 : 0 : tree _r;
21709 : 0 : _r = fold_build3_loc (loc, VEC_COND_EXPR, type, res_op0, res_op1, res_op2);
21710 : 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 944, __FILE__, __LINE__, true);
21711 : 0 : return _r;
21712 : : }
21713 : 0 : next_after_fail1360:;
21714 : : }
21715 : : }
21716 : 0 : {
21717 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q20, _q21, _q22, _q60 };
21718 : 0 : const enum tree_code lop = BIT_IOR_EXPR;
21719 : 0 : if (target_supports_op_p (TREE_TYPE (captures[0]), lop, optab_vector)
21720 : : )
21721 : : {
21722 : 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1361;
21723 : 0 : {
21724 : 0 : tree res_op0;
21725 : 0 : {
21726 : 0 : tree _o1[2], _r1;
21727 : 0 : _o1[0] = captures[0];
21728 : 0 : _o1[1] = captures[3];
21729 : 0 : _r1 = fold_build2_loc (loc, lop, TREE_TYPE (_o1[0]), _o1[0], _o1[1]);
21730 : 0 : res_op0 = _r1;
21731 : : }
21732 : 0 : tree res_op1;
21733 : 0 : res_op1 = captures[1];
21734 : 0 : tree res_op2;
21735 : 0 : res_op2 = captures[2];
21736 : 0 : tree _r;
21737 : 0 : _r = fold_build3_loc (loc, VEC_COND_EXPR, type, res_op0, res_op1, res_op2);
21738 : 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 944, __FILE__, __LINE__, true);
21739 : 0 : return _r;
21740 : : }
21741 : 0 : next_after_fail1361:;
21742 : : }
21743 : : }
21744 : 0 : {
21745 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q20, _q21, _q22, _q60 };
21746 : 0 : const enum tree_code lop = BIT_IOR_EXPR;
21747 : 0 : if (target_supports_op_p (TREE_TYPE (captures[0]), lop, optab_vector)
21748 : : )
21749 : : {
21750 : 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1362;
21751 : 0 : {
21752 : 0 : tree res_op0;
21753 : 0 : {
21754 : 0 : tree _o1[2], _r1;
21755 : 0 : _o1[0] = captures[0];
21756 : 0 : _o1[1] = captures[3];
21757 : 0 : _r1 = fold_build2_loc (loc, lop, TREE_TYPE (_o1[0]), _o1[0], _o1[1]);
21758 : 0 : res_op0 = _r1;
21759 : : }
21760 : 0 : tree res_op1;
21761 : 0 : res_op1 = captures[1];
21762 : 0 : tree res_op2;
21763 : 0 : res_op2 = captures[2];
21764 : 0 : tree _r;
21765 : 0 : _r = fold_build3_loc (loc, VEC_COND_EXPR, type, res_op0, res_op1, res_op2);
21766 : 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 944, __FILE__, __LINE__, true);
21767 : 0 : return _r;
21768 : : }
21769 : 0 : next_after_fail1362:;
21770 : : }
21771 : : }
21772 : 0 : {
21773 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q20, _q21, _q22, _q60 };
21774 : 0 : const enum tree_code lop = BIT_IOR_EXPR;
21775 : 0 : if (target_supports_op_p (TREE_TYPE (captures[0]), lop, optab_vector)
21776 : : )
21777 : : {
21778 : 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1363;
21779 : 0 : {
21780 : 0 : tree res_op0;
21781 : 0 : {
21782 : 0 : tree _o1[2], _r1;
21783 : 0 : _o1[0] = captures[0];
21784 : 0 : _o1[1] = captures[3];
21785 : 0 : _r1 = fold_build2_loc (loc, lop, TREE_TYPE (_o1[0]), _o1[0], _o1[1]);
21786 : 0 : res_op0 = _r1;
21787 : : }
21788 : 0 : tree res_op1;
21789 : 0 : res_op1 = captures[1];
21790 : 0 : tree res_op2;
21791 : 0 : res_op2 = captures[2];
21792 : 0 : tree _r;
21793 : 0 : _r = fold_build3_loc (loc, VEC_COND_EXPR, type, res_op0, res_op1, res_op2);
21794 : 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 944, __FILE__, __LINE__, true);
21795 : 0 : return _r;
21796 : : }
21797 : 0 : next_after_fail1363:;
21798 : : }
21799 : : }
21800 : 0 : {
21801 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q20, _q21, _q22, _q60 };
21802 : 0 : const enum tree_code lop = BIT_IOR_EXPR;
21803 : 0 : if (target_supports_op_p (TREE_TYPE (captures[0]), lop, optab_vector)
21804 : : )
21805 : : {
21806 : 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1364;
21807 : 0 : {
21808 : 0 : tree res_op0;
21809 : 0 : {
21810 : 0 : tree _o1[2], _r1;
21811 : 0 : _o1[0] = captures[0];
21812 : 0 : _o1[1] = captures[3];
21813 : 0 : _r1 = fold_build2_loc (loc, lop, TREE_TYPE (_o1[0]), _o1[0], _o1[1]);
21814 : 0 : res_op0 = _r1;
21815 : : }
21816 : 0 : tree res_op1;
21817 : 0 : res_op1 = captures[1];
21818 : 0 : tree res_op2;
21819 : 0 : res_op2 = captures[2];
21820 : 0 : tree _r;
21821 : 0 : _r = fold_build3_loc (loc, VEC_COND_EXPR, type, res_op0, res_op1, res_op2);
21822 : 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 944, __FILE__, __LINE__, true);
21823 : 0 : return _r;
21824 : : }
21825 : 0 : next_after_fail1364:;
21826 : : }
21827 : : }
21828 : 0 : {
21829 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q20, _q21, _q22, _q60 };
21830 : 0 : const enum tree_code lop = BIT_IOR_EXPR;
21831 : 0 : if (target_supports_op_p (TREE_TYPE (captures[0]), lop, optab_vector)
21832 : : )
21833 : : {
21834 : 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1365;
21835 : 0 : {
21836 : 0 : tree res_op0;
21837 : 0 : {
21838 : 0 : tree _o1[2], _r1;
21839 : 0 : _o1[0] = captures[0];
21840 : 0 : _o1[1] = captures[3];
21841 : 0 : _r1 = fold_build2_loc (loc, lop, TREE_TYPE (_o1[0]), _o1[0], _o1[1]);
21842 : 0 : res_op0 = _r1;
21843 : : }
21844 : 0 : tree res_op1;
21845 : 0 : res_op1 = captures[1];
21846 : 0 : tree res_op2;
21847 : 0 : res_op2 = captures[2];
21848 : 0 : tree _r;
21849 : 0 : _r = fold_build3_loc (loc, VEC_COND_EXPR, type, res_op0, res_op1, res_op2);
21850 : 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 944, __FILE__, __LINE__, true);
21851 : 0 : return _r;
21852 : : }
21853 : 0 : next_after_fail1365:;
21854 : : }
21855 : : }
21856 : 0 : {
21857 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q20, _q21, _q22, _q60 };
21858 : 0 : const enum tree_code lop = BIT_IOR_EXPR;
21859 : 0 : if (target_supports_op_p (TREE_TYPE (captures[0]), lop, optab_vector)
21860 : : )
21861 : : {
21862 : 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1366;
21863 : 0 : {
21864 : 0 : tree res_op0;
21865 : 0 : {
21866 : 0 : tree _o1[2], _r1;
21867 : 0 : _o1[0] = captures[0];
21868 : 0 : _o1[1] = captures[3];
21869 : 0 : _r1 = fold_build2_loc (loc, lop, TREE_TYPE (_o1[0]), _o1[0], _o1[1]);
21870 : 0 : res_op0 = _r1;
21871 : : }
21872 : 0 : tree res_op1;
21873 : 0 : res_op1 = captures[1];
21874 : 0 : tree res_op2;
21875 : 0 : res_op2 = captures[2];
21876 : 0 : tree _r;
21877 : 0 : _r = fold_build3_loc (loc, VEC_COND_EXPR, type, res_op0, res_op1, res_op2);
21878 : 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 944, __FILE__, __LINE__, true);
21879 : 0 : return _r;
21880 : : }
21881 : 0 : next_after_fail1366:;
21882 : : }
21883 : : }
21884 : 0 : {
21885 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q20, _q21, _q22, _q60 };
21886 : 0 : const enum tree_code lop = BIT_IOR_EXPR;
21887 : 0 : if (target_supports_op_p (TREE_TYPE (captures[0]), lop, optab_vector)
21888 : : )
21889 : : {
21890 : 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1367;
21891 : 0 : {
21892 : 0 : tree res_op0;
21893 : 0 : {
21894 : 0 : tree _o1[2], _r1;
21895 : 0 : _o1[0] = captures[0];
21896 : 0 : _o1[1] = captures[3];
21897 : 0 : _r1 = fold_build2_loc (loc, lop, TREE_TYPE (_o1[0]), _o1[0], _o1[1]);
21898 : 0 : res_op0 = _r1;
21899 : : }
21900 : 0 : tree res_op1;
21901 : 0 : res_op1 = captures[1];
21902 : 0 : tree res_op2;
21903 : 0 : res_op2 = captures[2];
21904 : 0 : tree _r;
21905 : 0 : _r = fold_build3_loc (loc, VEC_COND_EXPR, type, res_op0, res_op1, res_op2);
21906 : 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 944, __FILE__, __LINE__, true);
21907 : 0 : return _r;
21908 : : }
21909 : 0 : next_after_fail1367:;
21910 : : }
21911 : : }
21912 : 0 : {
21913 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q20, _q21, _q22, _q60 };
21914 : 0 : const enum tree_code lop = BIT_IOR_EXPR;
21915 : 0 : if (target_supports_op_p (TREE_TYPE (captures[0]), lop, optab_vector)
21916 : : )
21917 : : {
21918 : 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1368;
21919 : 0 : {
21920 : 0 : tree res_op0;
21921 : 0 : {
21922 : 0 : tree _o1[2], _r1;
21923 : 0 : _o1[0] = captures[0];
21924 : 0 : _o1[1] = captures[3];
21925 : 0 : _r1 = fold_build2_loc (loc, lop, TREE_TYPE (_o1[0]), _o1[0], _o1[1]);
21926 : 0 : res_op0 = _r1;
21927 : : }
21928 : 0 : tree res_op1;
21929 : 0 : res_op1 = captures[1];
21930 : 0 : tree res_op2;
21931 : 0 : res_op2 = captures[2];
21932 : 0 : tree _r;
21933 : 0 : _r = fold_build3_loc (loc, VEC_COND_EXPR, type, res_op0, res_op1, res_op2);
21934 : 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 944, __FILE__, __LINE__, true);
21935 : 0 : return _r;
21936 : : }
21937 : 0 : next_after_fail1368:;
21938 : : }
21939 : : }
21940 : 0 : {
21941 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q20, _q21, _q22, _q60 };
21942 : 0 : const enum tree_code lop = BIT_IOR_EXPR;
21943 : 0 : if (target_supports_op_p (TREE_TYPE (captures[0]), lop, optab_vector)
21944 : : )
21945 : : {
21946 : 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1369;
21947 : 0 : {
21948 : 0 : tree res_op0;
21949 : 0 : {
21950 : 0 : tree _o1[2], _r1;
21951 : 0 : _o1[0] = captures[0];
21952 : 0 : _o1[1] = captures[3];
21953 : 0 : _r1 = fold_build2_loc (loc, lop, TREE_TYPE (_o1[0]), _o1[0], _o1[1]);
21954 : 0 : res_op0 = _r1;
21955 : : }
21956 : 0 : tree res_op1;
21957 : 0 : res_op1 = captures[1];
21958 : 0 : tree res_op2;
21959 : 0 : res_op2 = captures[2];
21960 : 0 : tree _r;
21961 : 0 : _r = fold_build3_loc (loc, VEC_COND_EXPR, type, res_op0, res_op1, res_op2);
21962 : 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 944, __FILE__, __LINE__, true);
21963 : 0 : return _r;
21964 : : }
21965 : 0 : next_after_fail1369:;
21966 : : }
21967 : : }
21968 : 0 : {
21969 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q20, _q21, _q22, _q60 };
21970 : 0 : const enum tree_code lop = BIT_IOR_EXPR;
21971 : 0 : if (target_supports_op_p (TREE_TYPE (captures[0]), lop, optab_vector)
21972 : : )
21973 : : {
21974 : 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1370;
21975 : 0 : {
21976 : 0 : tree res_op0;
21977 : 0 : {
21978 : 0 : tree _o1[2], _r1;
21979 : 0 : _o1[0] = captures[0];
21980 : 0 : _o1[1] = captures[3];
21981 : 0 : _r1 = fold_build2_loc (loc, lop, TREE_TYPE (_o1[0]), _o1[0], _o1[1]);
21982 : 0 : res_op0 = _r1;
21983 : : }
21984 : 0 : tree res_op1;
21985 : 0 : res_op1 = captures[1];
21986 : 0 : tree res_op2;
21987 : 0 : res_op2 = captures[2];
21988 : 0 : tree _r;
21989 : 0 : _r = fold_build3_loc (loc, VEC_COND_EXPR, type, res_op0, res_op1, res_op2);
21990 : 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 944, __FILE__, __LINE__, true);
21991 : 0 : return _r;
21992 : : }
21993 : 0 : next_after_fail1370:;
21994 : : }
21995 : : }
21996 : 0 : {
21997 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q20, _q21, _q22, _q60 };
21998 : 0 : const enum tree_code lop = BIT_IOR_EXPR;
21999 : 0 : if (target_supports_op_p (TREE_TYPE (captures[0]), lop, optab_vector)
22000 : : )
22001 : : {
22002 : 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1371;
22003 : 0 : {
22004 : 0 : tree res_op0;
22005 : 0 : {
22006 : 0 : tree _o1[2], _r1;
22007 : 0 : _o1[0] = captures[0];
22008 : 0 : _o1[1] = captures[3];
22009 : 0 : _r1 = fold_build2_loc (loc, lop, TREE_TYPE (_o1[0]), _o1[0], _o1[1]);
22010 : 0 : res_op0 = _r1;
22011 : : }
22012 : 0 : tree res_op1;
22013 : 0 : res_op1 = captures[1];
22014 : 0 : tree res_op2;
22015 : 0 : res_op2 = captures[2];
22016 : 0 : tree _r;
22017 : 0 : _r = fold_build3_loc (loc, VEC_COND_EXPR, type, res_op0, res_op1, res_op2);
22018 : 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 944, __FILE__, __LINE__, true);
22019 : 0 : return _r;
22020 : : }
22021 : 0 : next_after_fail1371:;
22022 : : }
22023 : : }
22024 : 0 : {
22025 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q20, _q21, _q22, _q60 };
22026 : 0 : const enum tree_code lop = BIT_IOR_EXPR;
22027 : 0 : if (target_supports_op_p (TREE_TYPE (captures[0]), lop, optab_vector)
22028 : : )
22029 : : {
22030 : 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1372;
22031 : 0 : {
22032 : 0 : tree res_op0;
22033 : 0 : {
22034 : 0 : tree _o1[2], _r1;
22035 : 0 : _o1[0] = captures[0];
22036 : 0 : _o1[1] = captures[3];
22037 : 0 : _r1 = fold_build2_loc (loc, lop, TREE_TYPE (_o1[0]), _o1[0], _o1[1]);
22038 : 0 : res_op0 = _r1;
22039 : : }
22040 : 0 : tree res_op1;
22041 : 0 : res_op1 = captures[1];
22042 : 0 : tree res_op2;
22043 : 0 : res_op2 = captures[2];
22044 : 0 : tree _r;
22045 : 0 : _r = fold_build3_loc (loc, VEC_COND_EXPR, type, res_op0, res_op1, res_op2);
22046 : 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 944, __FILE__, __LINE__, true);
22047 : 0 : return _r;
22048 : : }
22049 : 0 : next_after_fail1372:;
22050 : : }
22051 : : }
22052 : 0 : {
22053 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q20, _q21, _q22, _q60 };
22054 : 0 : const enum tree_code lop = BIT_IOR_EXPR;
22055 : 0 : if (target_supports_op_p (TREE_TYPE (captures[0]), lop, optab_vector)
22056 : : )
22057 : : {
22058 : 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1373;
22059 : 0 : {
22060 : 0 : tree res_op0;
22061 : 0 : {
22062 : 0 : tree _o1[2], _r1;
22063 : 0 : _o1[0] = captures[0];
22064 : 0 : _o1[1] = captures[3];
22065 : 0 : _r1 = fold_build2_loc (loc, lop, TREE_TYPE (_o1[0]), _o1[0], _o1[1]);
22066 : 0 : res_op0 = _r1;
22067 : : }
22068 : 0 : tree res_op1;
22069 : 0 : res_op1 = captures[1];
22070 : 0 : tree res_op2;
22071 : 0 : res_op2 = captures[2];
22072 : 0 : tree _r;
22073 : 0 : _r = fold_build3_loc (loc, VEC_COND_EXPR, type, res_op0, res_op1, res_op2);
22074 : 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 944, __FILE__, __LINE__, true);
22075 : 0 : return _r;
22076 : : }
22077 : 0 : next_after_fail1373:;
22078 : : }
22079 : : }
22080 : 0 : {
22081 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q20, _q21, _q22, _q60 };
22082 : 0 : const enum tree_code lop = BIT_IOR_EXPR;
22083 : 0 : if (target_supports_op_p (TREE_TYPE (captures[0]), lop, optab_vector)
22084 : : )
22085 : : {
22086 : 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1374;
22087 : 0 : {
22088 : 0 : tree res_op0;
22089 : 0 : {
22090 : 0 : tree _o1[2], _r1;
22091 : 0 : _o1[0] = captures[0];
22092 : 0 : _o1[1] = captures[3];
22093 : 0 : _r1 = fold_build2_loc (loc, lop, TREE_TYPE (_o1[0]), _o1[0], _o1[1]);
22094 : 0 : res_op0 = _r1;
22095 : : }
22096 : 0 : tree res_op1;
22097 : 0 : res_op1 = captures[1];
22098 : 0 : tree res_op2;
22099 : 0 : res_op2 = captures[2];
22100 : 0 : tree _r;
22101 : 0 : _r = fold_build3_loc (loc, VEC_COND_EXPR, type, res_op0, res_op1, res_op2);
22102 : 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 944, __FILE__, __LINE__, true);
22103 : 0 : return _r;
22104 : : }
22105 : 0 : next_after_fail1374:;
22106 : : }
22107 : : }
22108 : 0 : {
22109 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q20, _q21, _q22, _q60 };
22110 : 0 : const enum tree_code lop = BIT_IOR_EXPR;
22111 : 0 : if (target_supports_op_p (TREE_TYPE (captures[0]), lop, optab_vector)
22112 : : )
22113 : : {
22114 : 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1375;
22115 : 0 : {
22116 : 0 : tree res_op0;
22117 : 0 : {
22118 : 0 : tree _o1[2], _r1;
22119 : 0 : _o1[0] = captures[0];
22120 : 0 : _o1[1] = captures[3];
22121 : 0 : _r1 = fold_build2_loc (loc, lop, TREE_TYPE (_o1[0]), _o1[0], _o1[1]);
22122 : 0 : res_op0 = _r1;
22123 : : }
22124 : 0 : tree res_op1;
22125 : 0 : res_op1 = captures[1];
22126 : 0 : tree res_op2;
22127 : 0 : res_op2 = captures[2];
22128 : 0 : tree _r;
22129 : 0 : _r = fold_build3_loc (loc, VEC_COND_EXPR, type, res_op0, res_op1, res_op2);
22130 : 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 944, __FILE__, __LINE__, true);
22131 : 0 : return _r;
22132 : : }
22133 : 0 : next_after_fail1375:;
22134 : : }
22135 : : }
22136 : 0 : {
22137 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q20, _q21, _q22, _q60 };
22138 : 0 : const enum tree_code lop = BIT_IOR_EXPR;
22139 : 0 : if (target_supports_op_p (TREE_TYPE (captures[0]), lop, optab_vector)
22140 : : )
22141 : : {
22142 : 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1376;
22143 : 0 : {
22144 : 0 : tree res_op0;
22145 : 0 : {
22146 : 0 : tree _o1[2], _r1;
22147 : 0 : _o1[0] = captures[0];
22148 : 0 : _o1[1] = captures[3];
22149 : 0 : _r1 = fold_build2_loc (loc, lop, TREE_TYPE (_o1[0]), _o1[0], _o1[1]);
22150 : 0 : res_op0 = _r1;
22151 : : }
22152 : 0 : tree res_op1;
22153 : 0 : res_op1 = captures[1];
22154 : 0 : tree res_op2;
22155 : 0 : res_op2 = captures[2];
22156 : 0 : tree _r;
22157 : 0 : _r = fold_build3_loc (loc, VEC_COND_EXPR, type, res_op0, res_op1, res_op2);
22158 : 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 944, __FILE__, __LINE__, true);
22159 : 0 : return _r;
22160 : : }
22161 : 0 : next_after_fail1376:;
22162 : : }
22163 : : }
22164 : 0 : {
22165 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q20, _q21, _q22, _q60 };
22166 : 0 : const enum tree_code lop = BIT_IOR_EXPR;
22167 : 0 : if (target_supports_op_p (TREE_TYPE (captures[0]), lop, optab_vector)
22168 : : )
22169 : : {
22170 : 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1377;
22171 : 0 : {
22172 : 0 : tree res_op0;
22173 : 0 : {
22174 : 0 : tree _o1[2], _r1;
22175 : 0 : _o1[0] = captures[0];
22176 : 0 : _o1[1] = captures[3];
22177 : 0 : _r1 = fold_build2_loc (loc, lop, TREE_TYPE (_o1[0]), _o1[0], _o1[1]);
22178 : 0 : res_op0 = _r1;
22179 : : }
22180 : 0 : tree res_op1;
22181 : 0 : res_op1 = captures[1];
22182 : 0 : tree res_op2;
22183 : 0 : res_op2 = captures[2];
22184 : 0 : tree _r;
22185 : 0 : _r = fold_build3_loc (loc, VEC_COND_EXPR, type, res_op0, res_op1, res_op2);
22186 : 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 944, __FILE__, __LINE__, true);
22187 : 0 : return _r;
22188 : : }
22189 : 0 : next_after_fail1377:;
22190 : : }
22191 : : }
22192 : 0 : {
22193 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q20, _q21, _q22, _q60 };
22194 : 0 : const enum tree_code lop = BIT_IOR_EXPR;
22195 : 0 : if (target_supports_op_p (TREE_TYPE (captures[0]), lop, optab_vector)
22196 : : )
22197 : : {
22198 : 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1378;
22199 : 0 : {
22200 : 0 : tree res_op0;
22201 : 0 : {
22202 : 0 : tree _o1[2], _r1;
22203 : 0 : _o1[0] = captures[0];
22204 : 0 : _o1[1] = captures[3];
22205 : 0 : _r1 = fold_build2_loc (loc, lop, TREE_TYPE (_o1[0]), _o1[0], _o1[1]);
22206 : 0 : res_op0 = _r1;
22207 : : }
22208 : 0 : tree res_op1;
22209 : 0 : res_op1 = captures[1];
22210 : 0 : tree res_op2;
22211 : 0 : res_op2 = captures[2];
22212 : 0 : tree _r;
22213 : 0 : _r = fold_build3_loc (loc, VEC_COND_EXPR, type, res_op0, res_op1, res_op2);
22214 : 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 944, __FILE__, __LINE__, true);
22215 : 0 : return _r;
22216 : : }
22217 : 0 : next_after_fail1378:;
22218 : : }
22219 : : }
22220 : 0 : {
22221 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q20, _q21, _q22, _q60 };
22222 : 0 : const enum tree_code lop = BIT_IOR_EXPR;
22223 : 0 : if (target_supports_op_p (TREE_TYPE (captures[0]), lop, optab_vector)
22224 : : )
22225 : : {
22226 : 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1379;
22227 : 0 : {
22228 : 0 : tree res_op0;
22229 : 0 : {
22230 : 0 : tree _o1[2], _r1;
22231 : 0 : _o1[0] = captures[0];
22232 : 0 : _o1[1] = captures[3];
22233 : 0 : _r1 = fold_build2_loc (loc, lop, TREE_TYPE (_o1[0]), _o1[0], _o1[1]);
22234 : 0 : res_op0 = _r1;
22235 : : }
22236 : 0 : tree res_op1;
22237 : 0 : res_op1 = captures[1];
22238 : 0 : tree res_op2;
22239 : 0 : res_op2 = captures[2];
22240 : 0 : tree _r;
22241 : 0 : _r = fold_build3_loc (loc, VEC_COND_EXPR, type, res_op0, res_op1, res_op2);
22242 : 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 944, __FILE__, __LINE__, true);
22243 : 0 : return _r;
22244 : : }
22245 : 0 : next_after_fail1379:;
22246 : : }
22247 : : }
22248 : : }
22249 : : }
22250 : : break;
22251 : : }
22252 : : default:;
22253 : : }
22254 : : }
22255 : : }
22256 : 7 : {
22257 : 7 : tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _q22, _p1 };
22258 : 7 : if (VECTOR_TYPE_P (type)
22259 : 7 : && (TREE_CODE_CLASS (BIT_IOR_EXPR) != tcc_comparison
22260 : : || types_match (type, TREE_TYPE (captures[2]))
22261 : : || expand_vec_cond_expr_p (type, TREE_TYPE (captures[1]))
22262 : : || (optimize_vectors_before_lowering_p ()
22263 : : && !expand_vec_cond_expr_p (TREE_TYPE (captures[2]), TREE_TYPE (captures[1]))))
22264 : : )
22265 : : {
22266 : 7 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1380;
22267 : 7 : {
22268 : 7 : if (! tree_invariant_p (captures[4])) goto next_after_fail1380;
22269 : 1 : tree res_op0;
22270 : 1 : res_op0 = captures[1];
22271 : 1 : tree res_op1;
22272 : 1 : {
22273 : 1 : tree _o1[2], _r1;
22274 : 1 : _o1[0] = captures[2];
22275 : 1 : _o1[1] = unshare_expr (captures[4]);
22276 : 1 : _r1 = fold_build2_loc (loc, BIT_IOR_EXPR, TREE_TYPE (_o1[0]), _o1[0], _o1[1]);
22277 : 1 : if (EXPR_P (_r1))
22278 : 0 : goto next_after_fail1380;
22279 : 1 : res_op1 = _r1;
22280 : : }
22281 : 1 : tree res_op2;
22282 : 1 : {
22283 : 1 : tree _o1[2], _r1;
22284 : 1 : _o1[0] = captures[3];
22285 : 1 : _o1[1] = captures[4];
22286 : 1 : _r1 = fold_build2_loc (loc, BIT_IOR_EXPR, TREE_TYPE (_o1[0]), _o1[0], _o1[1]);
22287 : 1 : if (EXPR_P (_r1))
22288 : 0 : goto next_after_fail1380;
22289 : 1 : res_op2 = _r1;
22290 : : }
22291 : 1 : tree _r;
22292 : 1 : _r = fold_build3_loc (loc, VEC_COND_EXPR, type, res_op0, res_op1, res_op2);
22293 : 1 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 901, __FILE__, __LINE__, true);
22294 : 1 : return _r;
22295 : : }
22296 : 6 : next_after_fail1380:;
22297 : : }
22298 : : }
22299 : 6 : break;
22300 : : }
22301 : 1790112 : default:;
22302 : : }
22303 : 1790112 : switch (TREE_CODE (_p1))
22304 : : {
22305 : 2 : case VEC_COND_EXPR:
22306 : 2 : {
22307 : 2 : tree _q30 = TREE_OPERAND (_p1, 0);
22308 : 2 : tree _q31 = TREE_OPERAND (_p1, 1);
22309 : 2 : tree _q32 = TREE_OPERAND (_p1, 2);
22310 : 2 : {
22311 : 2 : tree captures[5] ATTRIBUTE_UNUSED = { _p0, _p1, _q30, _q31, _q32 };
22312 : 2 : if (VECTOR_TYPE_P (type)
22313 : 2 : && (TREE_CODE_CLASS (BIT_IOR_EXPR) != tcc_comparison
22314 : : || types_match (type, TREE_TYPE (captures[3]))
22315 : : || expand_vec_cond_expr_p (type, TREE_TYPE (captures[2]))
22316 : : || (optimize_vectors_before_lowering_p ()
22317 : : && !expand_vec_cond_expr_p (TREE_TYPE (captures[3]), TREE_TYPE (captures[2]))))
22318 : : )
22319 : : {
22320 : 2 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1381;
22321 : 2 : {
22322 : 2 : if (! tree_invariant_p (captures[0])) goto next_after_fail1381;
22323 : 0 : tree res_op0;
22324 : 0 : res_op0 = captures[2];
22325 : 0 : tree res_op1;
22326 : 0 : {
22327 : 0 : tree _o1[2], _r1;
22328 : 0 : _o1[0] = unshare_expr (captures[0]);
22329 : 0 : _o1[1] = captures[3];
22330 : 0 : _r1 = fold_build2_loc (loc, BIT_IOR_EXPR, TREE_TYPE (_o1[0]), _o1[0], _o1[1]);
22331 : 0 : if (EXPR_P (_r1))
22332 : 0 : goto next_after_fail1381;
22333 : 0 : res_op1 = _r1;
22334 : : }
22335 : 0 : tree res_op2;
22336 : 0 : {
22337 : 0 : tree _o1[2], _r1;
22338 : 0 : _o1[0] = captures[0];
22339 : 0 : _o1[1] = captures[4];
22340 : 0 : _r1 = fold_build2_loc (loc, BIT_IOR_EXPR, TREE_TYPE (_o1[0]), _o1[0], _o1[1]);
22341 : 0 : if (EXPR_P (_r1))
22342 : 0 : goto next_after_fail1381;
22343 : 0 : res_op2 = _r1;
22344 : : }
22345 : 0 : tree _r;
22346 : 0 : _r = fold_build3_loc (loc, VEC_COND_EXPR, type, res_op0, res_op1, res_op2);
22347 : 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 902, __FILE__, __LINE__, true);
22348 : 0 : return _r;
22349 : : }
22350 : 2 : next_after_fail1381:;
22351 : : }
22352 : : }
22353 : 2 : break;
22354 : : }
22355 : 1790112 : default:;
22356 : : }
22357 : 1790112 : switch (TREE_CODE (_p0))
22358 : : {
22359 : 16 : case UNORDERED_EXPR:
22360 : 16 : {
22361 : 16 : tree _q20 = TREE_OPERAND (_p0, 0);
22362 : 16 : tree _q21 = TREE_OPERAND (_p0, 1);
22363 : 16 : if ((_q21 == _q20 && ! TREE_SIDE_EFFECTS (_q21)) || (operand_equal_p (_q21, _q20, 0) && types_match (_q21, _q20)))
22364 : : {
22365 : 0 : switch (TREE_CODE (_p1))
22366 : : {
22367 : 0 : case UNORDERED_EXPR:
22368 : 0 : {
22369 : 0 : tree _q50 = TREE_OPERAND (_p1, 0);
22370 : 0 : tree _q51 = TREE_OPERAND (_p1, 1);
22371 : 0 : if ((_q51 == _q50 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q50, 0) && types_match (_q51, _q50)))
22372 : : {
22373 : 0 : {
22374 : 0 : tree captures[2] ATTRIBUTE_UNUSED = { _q20, _q50 };
22375 : 0 : if (types_match (captures[0], captures[1])
22376 : : )
22377 : : {
22378 : 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1382;
22379 : 0 : {
22380 : 0 : tree res_op0;
22381 : 0 : res_op0 = captures[0];
22382 : 0 : tree res_op1;
22383 : 0 : res_op1 = captures[1];
22384 : 0 : tree _r;
22385 : 0 : _r = fold_build2_loc (loc, UNORDERED_EXPR, type, res_op0, res_op1);
22386 : 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 945, __FILE__, __LINE__, true);
22387 : 0 : return _r;
22388 : : }
22389 : 0 : next_after_fail1382:;
22390 : : }
22391 : : }
22392 : : }
22393 : 0 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
22394 : : {
22395 : 0 : {
22396 : 0 : tree captures[3] ATTRIBUTE_UNUSED = { _q20, _p1, _q51 };
22397 : 0 : tree res = generic_simplify_146 (loc, type, _p0, _p1, captures);
22398 : 0 : if (res) return res;
22399 : : }
22400 : : }
22401 : 0 : if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
22402 : : {
22403 : 0 : {
22404 : 0 : tree captures[3] ATTRIBUTE_UNUSED = { _q20, _p1, _q50 };
22405 : 0 : tree res = generic_simplify_146 (loc, type, _p0, _p1, captures);
22406 : 0 : if (res) return res;
22407 : : }
22408 : : }
22409 : : break;
22410 : : }
22411 : : default:;
22412 : : }
22413 : : }
22414 : 16 : switch (TREE_CODE (_p1))
22415 : : {
22416 : 0 : case UNORDERED_EXPR:
22417 : 0 : {
22418 : 0 : tree _q50 = TREE_OPERAND (_p1, 0);
22419 : 0 : tree _q51 = TREE_OPERAND (_p1, 1);
22420 : 0 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
22421 : : {
22422 : 0 : if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
22423 : : {
22424 : 0 : {
22425 : 0 : tree captures[3] ATTRIBUTE_UNUSED = { _q20, _p0, _q21 };
22426 : 0 : tree res = generic_simplify_147 (loc, type, _p0, _p1, captures);
22427 : 0 : if (res) return res;
22428 : : }
22429 : : }
22430 : : }
22431 : 0 : if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
22432 : : {
22433 : 0 : if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
22434 : : {
22435 : 0 : {
22436 : 0 : tree captures[3] ATTRIBUTE_UNUSED = { _q21, _p0, _q20 };
22437 : 0 : tree res = generic_simplify_147 (loc, type, _p0, _p1, captures);
22438 : 0 : if (res) return res;
22439 : : }
22440 : : }
22441 : : }
22442 : : break;
22443 : : }
22444 : : default:;
22445 : : }
22446 : : break;
22447 : : }
22448 : 114 : case LT_EXPR:
22449 : 114 : {
22450 : 114 : tree _q20 = TREE_OPERAND (_p0, 0);
22451 : 114 : tree _q21 = TREE_OPERAND (_p0, 1);
22452 : 114 : switch (TREE_CODE (_p1))
22453 : : {
22454 : 27 : case LT_EXPR:
22455 : 27 : {
22456 : 27 : tree _q50 = TREE_OPERAND (_p1, 0);
22457 : 27 : tree _q51 = TREE_OPERAND (_p1, 1);
22458 : 27 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
22459 : : {
22460 : 0 : {
22461 : 0 : tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q51 };
22462 : 0 : tree res = generic_simplify_148 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR, LT_EXPR, MAX_EXPR);
22463 : 0 : if (res) return res;
22464 : : }
22465 : : }
22466 : 27 : if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
22467 : : {
22468 : 0 : {
22469 : 0 : tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q50 };
22470 : 0 : tree res = generic_simplify_148 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR, GT_EXPR, MIN_EXPR);
22471 : 0 : if (res) return res;
22472 : : }
22473 : : }
22474 : : break;
22475 : : }
22476 : 0 : case GT_EXPR:
22477 : 0 : {
22478 : 0 : tree _q50 = TREE_OPERAND (_p1, 0);
22479 : 0 : tree _q51 = TREE_OPERAND (_p1, 1);
22480 : 0 : if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
22481 : : {
22482 : 0 : {
22483 : 0 : tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q50 };
22484 : 0 : tree res = generic_simplify_148 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR, LT_EXPR, MAX_EXPR);
22485 : 0 : if (res) return res;
22486 : : }
22487 : : }
22488 : 0 : if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
22489 : : {
22490 : 0 : {
22491 : 0 : tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q51 };
22492 : 0 : tree res = generic_simplify_148 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR, GT_EXPR, MIN_EXPR);
22493 : 0 : if (res) return res;
22494 : : }
22495 : : }
22496 : : break;
22497 : : }
22498 : 114 : default:;
22499 : : }
22500 : 114 : switch (TREE_CODE (_q20))
22501 : : {
22502 : 2 : case POINTER_PLUS_EXPR:
22503 : 2 : {
22504 : 2 : tree _q30 = TREE_OPERAND (_q20, 0);
22505 : 2 : tree _q31 = TREE_OPERAND (_q20, 1);
22506 : 2 : switch (TREE_CODE (_q31))
22507 : : {
22508 : 2 : case INTEGER_CST:
22509 : 2 : {
22510 : 2 : switch (TREE_CODE (_p1))
22511 : : {
22512 : 2 : case LT_EXPR:
22513 : 2 : {
22514 : 2 : tree _q70 = TREE_OPERAND (_p1, 0);
22515 : 2 : tree _q71 = TREE_OPERAND (_p1, 1);
22516 : 2 : switch (TREE_CODE (_q70))
22517 : : {
22518 : 2 : case POINTER_PLUS_EXPR:
22519 : 2 : {
22520 : 2 : tree _q80 = TREE_OPERAND (_q70, 0);
22521 : 2 : tree _q81 = TREE_OPERAND (_q70, 1);
22522 : 2 : if ((_q80 == _q21 && ! TREE_SIDE_EFFECTS (_q80)) || (operand_equal_p (_q80, _q21, 0) && types_match (_q80, _q21)))
22523 : : {
22524 : 2 : if ((_q81 == _q31 && ! TREE_SIDE_EFFECTS (_q81)) || (operand_equal_p (_q81, _q31, 0) && types_match (_q81, _q31)))
22525 : : {
22526 : 2 : if ((_q71 == _q30 && ! TREE_SIDE_EFFECTS (_q71)) || (operand_equal_p (_q71, _q30, 0) && types_match (_q71, _q30)))
22527 : : {
22528 : 2 : {
22529 : 2 : tree captures[7] ATTRIBUTE_UNUSED = { _p0, _q20, _q30, _q31, _q21, _p1, _q70 };
22530 : 2 : const enum tree_code cmp = LT_EXPR;
22531 : 2 : if (TYPE_OVERFLOW_UNDEFINED (TREE_TYPE (captures[2]))
22532 : 1 : && TYPE_OVERFLOW_WRAPS (sizetype)
22533 : 3 : && TYPE_PRECISION (TREE_TYPE (captures[2])) == TYPE_PRECISION (sizetype)
22534 : : )
22535 : : {
22536 : 1 : {
22537 : 1 : offset_int off = wi::to_offset (captures[3]) - (cmp == LE_EXPR ? 1 : 0);
22538 : 1 : offset_int rhs = off * 2;
22539 : 1 : if (wi::min_precision (rhs, UNSIGNED) <= TYPE_PRECISION (sizetype)
22540 : : )
22541 : : {
22542 : 1 : {
22543 : 1 : bool swap_p = tree_swap_operands_p (captures[2], captures[4]);
22544 : 1 : tree rhs_tree = wide_int_to_tree (sizetype, rhs);
22545 : 1 : if (cmp == LT_EXPR
22546 : : )
22547 : : {
22548 : 1 : if (TREE_SIDE_EFFECTS (captures[1])) goto next_after_fail1383;
22549 : 1 : if (TREE_SIDE_EFFECTS (captures[2])) goto next_after_fail1383;
22550 : 1 : if (TREE_SIDE_EFFECTS (captures[3])) goto next_after_fail1383;
22551 : 1 : if (TREE_SIDE_EFFECTS (captures[4])) goto next_after_fail1383;
22552 : 1 : if (TREE_SIDE_EFFECTS (captures[6])) goto next_after_fail1383;
22553 : 1 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1383;
22554 : 1 : {
22555 : 1 : tree res_op0;
22556 : 1 : {
22557 : 1 : tree _o1[1], _r1;
22558 : 1 : {
22559 : 1 : tree _o2[2], _r2;
22560 : 1 : _o2[0] = swap_p ? captures[6] : captures[1];
22561 : 1 : _o2[1] = swap_p ? captures[2] : captures[4];
22562 : 1 : _r2 = fold_build2_loc (loc, POINTER_DIFF_EXPR, ssizetype, _o2[0], _o2[1]);
22563 : 1 : _o1[0] = _r2;
22564 : : }
22565 : 1 : if (TREE_TYPE (_o1[0]) != sizetype)
22566 : : {
22567 : 1 : _r1 = fold_build1_loc (loc, NOP_EXPR, sizetype, _o1[0]);
22568 : : }
22569 : : else
22570 : : _r1 = _o1[0];
22571 : 1 : res_op0 = _r1;
22572 : : }
22573 : 1 : tree res_op1;
22574 : 1 : res_op1 = rhs_tree;
22575 : 1 : tree _r;
22576 : 1 : _r = fold_build2_loc (loc, GT_EXPR, type, res_op0, res_op1);
22577 : 1 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 946, __FILE__, __LINE__, true);
22578 : 1 : return _r;
22579 : : }
22580 : 0 : next_after_fail1383:;
22581 : : }
22582 : : else
22583 : : {
22584 : : if (TREE_SIDE_EFFECTS (captures[2])) goto next_after_fail1384;
22585 : : if (TREE_SIDE_EFFECTS (captures[3])) goto next_after_fail1384;
22586 : : if (TREE_SIDE_EFFECTS (captures[4])) goto next_after_fail1384;
22587 : : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1384;
22588 : : {
22589 : : tree res_op0;
22590 : : {
22591 : : tree _o1[1], _r1;
22592 : : {
22593 : : tree _o2[2], _r2;
22594 : : {
22595 : : tree _o3[2], _r3;
22596 : : _o3[0] = swap_p ? captures[4] : captures[2];
22597 : : _o3[1] = wide_int_to_tree (sizetype, off);
22598 : : _r3 = fold_build2_loc (loc, POINTER_PLUS_EXPR, TREE_TYPE (_o3[0]), _o3[0], _o3[1]);
22599 : : _o2[0] = _r3;
22600 : : }
22601 : : _o2[1] = swap_p ? captures[2] : captures[4];
22602 : : _r2 = fold_build2_loc (loc, POINTER_DIFF_EXPR, ssizetype, _o2[0], _o2[1]);
22603 : : _o1[0] = _r2;
22604 : : }
22605 : : if (TREE_TYPE (_o1[0]) != sizetype)
22606 : : {
22607 : : _r1 = fold_build1_loc (loc, NOP_EXPR, sizetype, _o1[0]);
22608 : : }
22609 : : else
22610 : : _r1 = _o1[0];
22611 : : res_op0 = _r1;
22612 : : }
22613 : : tree res_op1;
22614 : : res_op1 = rhs_tree;
22615 : : tree _r;
22616 : : _r = fold_build2_loc (loc, GT_EXPR, type, res_op0, res_op1);
22617 : : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 947, __FILE__, __LINE__, true);
22618 : : return _r;
22619 : : }
22620 : : next_after_fail1384:;
22621 : : }
22622 : : }
22623 : : }
22624 : : }
22625 : : }
22626 : : }
22627 : : }
22628 : : }
22629 : : }
22630 : : break;
22631 : : }
22632 : : default:;
22633 : : }
22634 : : break;
22635 : : }
22636 : 0 : case GT_EXPR:
22637 : 0 : {
22638 : 0 : tree _q70 = TREE_OPERAND (_p1, 0);
22639 : 0 : tree _q71 = TREE_OPERAND (_p1, 1);
22640 : 0 : if ((_q70 == _q30 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q30, 0) && types_match (_q70, _q30)))
22641 : : {
22642 : 0 : switch (TREE_CODE (_q71))
22643 : : {
22644 : 0 : case POINTER_PLUS_EXPR:
22645 : 0 : {
22646 : 0 : tree _q90 = TREE_OPERAND (_q71, 0);
22647 : 0 : tree _q91 = TREE_OPERAND (_q71, 1);
22648 : 0 : if ((_q90 == _q21 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q21, 0) && types_match (_q90, _q21)))
22649 : : {
22650 : 0 : if ((_q91 == _q31 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q31, 0) && types_match (_q91, _q31)))
22651 : : {
22652 : 0 : {
22653 : 0 : tree captures[7] ATTRIBUTE_UNUSED = { _p0, _q20, _q30, _q31, _q21, _p1, _q71 };
22654 : 0 : const enum tree_code cmp = LT_EXPR;
22655 : 0 : if (TYPE_OVERFLOW_UNDEFINED (TREE_TYPE (captures[2]))
22656 : 0 : && TYPE_OVERFLOW_WRAPS (sizetype)
22657 : 0 : && TYPE_PRECISION (TREE_TYPE (captures[2])) == TYPE_PRECISION (sizetype)
22658 : : )
22659 : : {
22660 : 0 : {
22661 : 0 : offset_int off = wi::to_offset (captures[3]) - (cmp == LE_EXPR ? 1 : 0);
22662 : 0 : offset_int rhs = off * 2;
22663 : 0 : if (wi::min_precision (rhs, UNSIGNED) <= TYPE_PRECISION (sizetype)
22664 : : )
22665 : : {
22666 : 0 : {
22667 : 0 : bool swap_p = tree_swap_operands_p (captures[2], captures[4]);
22668 : 0 : tree rhs_tree = wide_int_to_tree (sizetype, rhs);
22669 : 0 : if (cmp == LT_EXPR
22670 : : )
22671 : : {
22672 : 0 : if (TREE_SIDE_EFFECTS (captures[1])) goto next_after_fail1385;
22673 : 0 : if (TREE_SIDE_EFFECTS (captures[2])) goto next_after_fail1385;
22674 : 0 : if (TREE_SIDE_EFFECTS (captures[3])) goto next_after_fail1385;
22675 : 0 : if (TREE_SIDE_EFFECTS (captures[4])) goto next_after_fail1385;
22676 : 0 : if (TREE_SIDE_EFFECTS (captures[6])) goto next_after_fail1385;
22677 : 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1385;
22678 : 0 : {
22679 : 0 : tree res_op0;
22680 : 0 : {
22681 : 0 : tree _o1[1], _r1;
22682 : 0 : {
22683 : 0 : tree _o2[2], _r2;
22684 : 0 : _o2[0] = swap_p ? captures[6] : captures[1];
22685 : 0 : _o2[1] = swap_p ? captures[2] : captures[4];
22686 : 0 : _r2 = fold_build2_loc (loc, POINTER_DIFF_EXPR, ssizetype, _o2[0], _o2[1]);
22687 : 0 : _o1[0] = _r2;
22688 : : }
22689 : 0 : if (TREE_TYPE (_o1[0]) != sizetype)
22690 : : {
22691 : 0 : _r1 = fold_build1_loc (loc, NOP_EXPR, sizetype, _o1[0]);
22692 : : }
22693 : : else
22694 : : _r1 = _o1[0];
22695 : 0 : res_op0 = _r1;
22696 : : }
22697 : 0 : tree res_op1;
22698 : 0 : res_op1 = rhs_tree;
22699 : 0 : tree _r;
22700 : 0 : _r = fold_build2_loc (loc, GT_EXPR, type, res_op0, res_op1);
22701 : 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 946, __FILE__, __LINE__, true);
22702 : 0 : return _r;
22703 : : }
22704 : 0 : next_after_fail1385:;
22705 : : }
22706 : : else
22707 : : {
22708 : : if (TREE_SIDE_EFFECTS (captures[2])) goto next_after_fail1386;
22709 : : if (TREE_SIDE_EFFECTS (captures[3])) goto next_after_fail1386;
22710 : : if (TREE_SIDE_EFFECTS (captures[4])) goto next_after_fail1386;
22711 : : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1386;
22712 : : {
22713 : : tree res_op0;
22714 : : {
22715 : : tree _o1[1], _r1;
22716 : : {
22717 : : tree _o2[2], _r2;
22718 : : {
22719 : : tree _o3[2], _r3;
22720 : : _o3[0] = swap_p ? captures[4] : captures[2];
22721 : : _o3[1] = wide_int_to_tree (sizetype, off);
22722 : : _r3 = fold_build2_loc (loc, POINTER_PLUS_EXPR, TREE_TYPE (_o3[0]), _o3[0], _o3[1]);
22723 : : _o2[0] = _r3;
22724 : : }
22725 : : _o2[1] = swap_p ? captures[2] : captures[4];
22726 : : _r2 = fold_build2_loc (loc, POINTER_DIFF_EXPR, ssizetype, _o2[0], _o2[1]);
22727 : : _o1[0] = _r2;
22728 : : }
22729 : : if (TREE_TYPE (_o1[0]) != sizetype)
22730 : : {
22731 : : _r1 = fold_build1_loc (loc, NOP_EXPR, sizetype, _o1[0]);
22732 : : }
22733 : : else
22734 : : _r1 = _o1[0];
22735 : : res_op0 = _r1;
22736 : : }
22737 : : tree res_op1;
22738 : : res_op1 = rhs_tree;
22739 : : tree _r;
22740 : : _r = fold_build2_loc (loc, GT_EXPR, type, res_op0, res_op1);
22741 : : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 947, __FILE__, __LINE__, true);
22742 : : return _r;
22743 : : }
22744 : : next_after_fail1386:;
22745 : : }
22746 : : }
22747 : : }
22748 : : }
22749 : : }
22750 : : }
22751 : : }
22752 : : }
22753 : : break;
22754 : : }
22755 : : default:;
22756 : : }
22757 : : }
22758 : : break;
22759 : : }
22760 : : default:;
22761 : : }
22762 : : break;
22763 : : }
22764 : : default:;
22765 : : }
22766 : : break;
22767 : : }
22768 : : default:;
22769 : : }
22770 : : break;
22771 : : }
22772 : 135 : case LE_EXPR:
22773 : 135 : {
22774 : 135 : tree _q20 = TREE_OPERAND (_p0, 0);
22775 : 135 : tree _q21 = TREE_OPERAND (_p0, 1);
22776 : 135 : switch (TREE_CODE (_p1))
22777 : : {
22778 : 2 : case LE_EXPR:
22779 : 2 : {
22780 : 2 : tree _q50 = TREE_OPERAND (_p1, 0);
22781 : 2 : tree _q51 = TREE_OPERAND (_p1, 1);
22782 : 2 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
22783 : : {
22784 : 0 : {
22785 : 0 : tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q51 };
22786 : 0 : tree res = generic_simplify_148 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR, LE_EXPR, MAX_EXPR);
22787 : 0 : if (res) return res;
22788 : : }
22789 : : }
22790 : 2 : if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
22791 : : {
22792 : 0 : {
22793 : 0 : tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q50 };
22794 : 0 : tree res = generic_simplify_148 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR, GE_EXPR, MIN_EXPR);
22795 : 0 : if (res) return res;
22796 : : }
22797 : : }
22798 : : break;
22799 : : }
22800 : 1 : case GE_EXPR:
22801 : 1 : {
22802 : 1 : tree _q50 = TREE_OPERAND (_p1, 0);
22803 : 1 : tree _q51 = TREE_OPERAND (_p1, 1);
22804 : 1 : if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
22805 : : {
22806 : 0 : {
22807 : 0 : tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q50 };
22808 : 0 : tree res = generic_simplify_148 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR, LE_EXPR, MAX_EXPR);
22809 : 0 : if (res) return res;
22810 : : }
22811 : : }
22812 : 1 : if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
22813 : : {
22814 : 0 : {
22815 : 0 : tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q51 };
22816 : 0 : tree res = generic_simplify_148 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR, GE_EXPR, MIN_EXPR);
22817 : 0 : if (res) return res;
22818 : : }
22819 : : }
22820 : : break;
22821 : : }
22822 : 135 : default:;
22823 : : }
22824 : 135 : switch (TREE_CODE (_q20))
22825 : : {
22826 : 2 : case POINTER_PLUS_EXPR:
22827 : 2 : {
22828 : 2 : tree _q30 = TREE_OPERAND (_q20, 0);
22829 : 2 : tree _q31 = TREE_OPERAND (_q20, 1);
22830 : 2 : switch (TREE_CODE (_q31))
22831 : : {
22832 : 2 : case INTEGER_CST:
22833 : 2 : {
22834 : 2 : switch (TREE_CODE (_p1))
22835 : : {
22836 : 2 : case LE_EXPR:
22837 : 2 : {
22838 : 2 : tree _q70 = TREE_OPERAND (_p1, 0);
22839 : 2 : tree _q71 = TREE_OPERAND (_p1, 1);
22840 : 2 : switch (TREE_CODE (_q70))
22841 : : {
22842 : 2 : case POINTER_PLUS_EXPR:
22843 : 2 : {
22844 : 2 : tree _q80 = TREE_OPERAND (_q70, 0);
22845 : 2 : tree _q81 = TREE_OPERAND (_q70, 1);
22846 : 2 : if ((_q80 == _q21 && ! TREE_SIDE_EFFECTS (_q80)) || (operand_equal_p (_q80, _q21, 0) && types_match (_q80, _q21)))
22847 : : {
22848 : 2 : if ((_q81 == _q31 && ! TREE_SIDE_EFFECTS (_q81)) || (operand_equal_p (_q81, _q31, 0) && types_match (_q81, _q31)))
22849 : : {
22850 : 2 : if ((_q71 == _q30 && ! TREE_SIDE_EFFECTS (_q71)) || (operand_equal_p (_q71, _q30, 0) && types_match (_q71, _q30)))
22851 : : {
22852 : 2 : {
22853 : 2 : tree captures[7] ATTRIBUTE_UNUSED = { _p0, _q20, _q30, _q31, _q21, _p1, _q70 };
22854 : 2 : const enum tree_code cmp = LE_EXPR;
22855 : 2 : if (TYPE_OVERFLOW_UNDEFINED (TREE_TYPE (captures[2]))
22856 : 1 : && TYPE_OVERFLOW_WRAPS (sizetype)
22857 : 3 : && TYPE_PRECISION (TREE_TYPE (captures[2])) == TYPE_PRECISION (sizetype)
22858 : : )
22859 : : {
22860 : 1 : {
22861 : 1 : offset_int off = wi::to_offset (captures[3]) - (cmp == LE_EXPR ? 1 : 0);
22862 : 1 : offset_int rhs = off * 2;
22863 : 1 : if (wi::min_precision (rhs, UNSIGNED) <= TYPE_PRECISION (sizetype)
22864 : : )
22865 : : {
22866 : 1 : {
22867 : 1 : bool swap_p = tree_swap_operands_p (captures[2], captures[4]);
22868 : 1 : tree rhs_tree = wide_int_to_tree (sizetype, rhs);
22869 : 1 : if (cmp == LT_EXPR
22870 : : )
22871 : : {
22872 : : if (TREE_SIDE_EFFECTS (captures[1])) goto next_after_fail1387;
22873 : : if (TREE_SIDE_EFFECTS (captures[2])) goto next_after_fail1387;
22874 : : if (TREE_SIDE_EFFECTS (captures[3])) goto next_after_fail1387;
22875 : : if (TREE_SIDE_EFFECTS (captures[4])) goto next_after_fail1387;
22876 : : if (TREE_SIDE_EFFECTS (captures[6])) goto next_after_fail1387;
22877 : : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1387;
22878 : : {
22879 : : tree res_op0;
22880 : : {
22881 : : tree _o1[1], _r1;
22882 : : {
22883 : : tree _o2[2], _r2;
22884 : : _o2[0] = swap_p ? captures[6] : captures[1];
22885 : : _o2[1] = swap_p ? captures[2] : captures[4];
22886 : : _r2 = fold_build2_loc (loc, POINTER_DIFF_EXPR, ssizetype, _o2[0], _o2[1]);
22887 : : _o1[0] = _r2;
22888 : : }
22889 : : if (TREE_TYPE (_o1[0]) != sizetype)
22890 : : {
22891 : : _r1 = fold_build1_loc (loc, NOP_EXPR, sizetype, _o1[0]);
22892 : : }
22893 : : else
22894 : : _r1 = _o1[0];
22895 : : res_op0 = _r1;
22896 : : }
22897 : : tree res_op1;
22898 : : res_op1 = rhs_tree;
22899 : : tree _r;
22900 : : _r = fold_build2_loc (loc, GT_EXPR, type, res_op0, res_op1);
22901 : : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 946, __FILE__, __LINE__, true);
22902 : 1 : return _r;
22903 : : }
22904 : : next_after_fail1387:;
22905 : : }
22906 : : else
22907 : : {
22908 : 1 : if (TREE_SIDE_EFFECTS (captures[2])) goto next_after_fail1388;
22909 : 1 : if (TREE_SIDE_EFFECTS (captures[3])) goto next_after_fail1388;
22910 : 1 : if (TREE_SIDE_EFFECTS (captures[4])) goto next_after_fail1388;
22911 : 1 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1388;
22912 : 1 : {
22913 : 1 : tree res_op0;
22914 : 1 : {
22915 : 1 : tree _o1[1], _r1;
22916 : 1 : {
22917 : 1 : tree _o2[2], _r2;
22918 : 1 : {
22919 : 1 : tree _o3[2], _r3;
22920 : 1 : _o3[0] = swap_p ? captures[4] : captures[2];
22921 : 1 : _o3[1] = wide_int_to_tree (sizetype, off);
22922 : 1 : _r3 = fold_build2_loc (loc, POINTER_PLUS_EXPR, TREE_TYPE (_o3[0]), _o3[0], _o3[1]);
22923 : 1 : _o2[0] = _r3;
22924 : : }
22925 : 1 : _o2[1] = swap_p ? captures[2] : captures[4];
22926 : 1 : _r2 = fold_build2_loc (loc, POINTER_DIFF_EXPR, ssizetype, _o2[0], _o2[1]);
22927 : 1 : _o1[0] = _r2;
22928 : : }
22929 : 1 : if (TREE_TYPE (_o1[0]) != sizetype)
22930 : : {
22931 : 1 : _r1 = fold_build1_loc (loc, NOP_EXPR, sizetype, _o1[0]);
22932 : : }
22933 : : else
22934 : : _r1 = _o1[0];
22935 : 1 : res_op0 = _r1;
22936 : : }
22937 : 1 : tree res_op1;
22938 : 1 : res_op1 = rhs_tree;
22939 : 1 : tree _r;
22940 : 1 : _r = fold_build2_loc (loc, GT_EXPR, type, res_op0, res_op1);
22941 : 1 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 947, __FILE__, __LINE__, true);
22942 : 1 : return _r;
22943 : : }
22944 : 0 : next_after_fail1388:;
22945 : : }
22946 : : }
22947 : : }
22948 : : }
22949 : : }
22950 : : }
22951 : : }
22952 : : }
22953 : : }
22954 : : break;
22955 : : }
22956 : : default:;
22957 : : }
22958 : : break;
22959 : : }
22960 : 0 : case GE_EXPR:
22961 : 0 : {
22962 : 0 : tree _q70 = TREE_OPERAND (_p1, 0);
22963 : 0 : tree _q71 = TREE_OPERAND (_p1, 1);
22964 : 0 : if ((_q70 == _q30 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q30, 0) && types_match (_q70, _q30)))
22965 : : {
22966 : 0 : switch (TREE_CODE (_q71))
22967 : : {
22968 : 0 : case POINTER_PLUS_EXPR:
22969 : 0 : {
22970 : 0 : tree _q90 = TREE_OPERAND (_q71, 0);
22971 : 0 : tree _q91 = TREE_OPERAND (_q71, 1);
22972 : 0 : if ((_q90 == _q21 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q21, 0) && types_match (_q90, _q21)))
22973 : : {
22974 : 0 : if ((_q91 == _q31 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q31, 0) && types_match (_q91, _q31)))
22975 : : {
22976 : 0 : {
22977 : 0 : tree captures[7] ATTRIBUTE_UNUSED = { _p0, _q20, _q30, _q31, _q21, _p1, _q71 };
22978 : 0 : const enum tree_code cmp = LE_EXPR;
22979 : 0 : if (TYPE_OVERFLOW_UNDEFINED (TREE_TYPE (captures[2]))
22980 : 0 : && TYPE_OVERFLOW_WRAPS (sizetype)
22981 : 0 : && TYPE_PRECISION (TREE_TYPE (captures[2])) == TYPE_PRECISION (sizetype)
22982 : : )
22983 : : {
22984 : 0 : {
22985 : 0 : offset_int off = wi::to_offset (captures[3]) - (cmp == LE_EXPR ? 1 : 0);
22986 : 0 : offset_int rhs = off * 2;
22987 : 0 : if (wi::min_precision (rhs, UNSIGNED) <= TYPE_PRECISION (sizetype)
22988 : : )
22989 : : {
22990 : 0 : {
22991 : 0 : bool swap_p = tree_swap_operands_p (captures[2], captures[4]);
22992 : 0 : tree rhs_tree = wide_int_to_tree (sizetype, rhs);
22993 : 0 : if (cmp == LT_EXPR
22994 : : )
22995 : : {
22996 : : if (TREE_SIDE_EFFECTS (captures[1])) goto next_after_fail1389;
22997 : : if (TREE_SIDE_EFFECTS (captures[2])) goto next_after_fail1389;
22998 : : if (TREE_SIDE_EFFECTS (captures[3])) goto next_after_fail1389;
22999 : : if (TREE_SIDE_EFFECTS (captures[4])) goto next_after_fail1389;
23000 : : if (TREE_SIDE_EFFECTS (captures[6])) goto next_after_fail1389;
23001 : : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1389;
23002 : : {
23003 : : tree res_op0;
23004 : : {
23005 : : tree _o1[1], _r1;
23006 : : {
23007 : : tree _o2[2], _r2;
23008 : : _o2[0] = swap_p ? captures[6] : captures[1];
23009 : : _o2[1] = swap_p ? captures[2] : captures[4];
23010 : : _r2 = fold_build2_loc (loc, POINTER_DIFF_EXPR, ssizetype, _o2[0], _o2[1]);
23011 : : _o1[0] = _r2;
23012 : : }
23013 : : if (TREE_TYPE (_o1[0]) != sizetype)
23014 : : {
23015 : : _r1 = fold_build1_loc (loc, NOP_EXPR, sizetype, _o1[0]);
23016 : : }
23017 : : else
23018 : : _r1 = _o1[0];
23019 : : res_op0 = _r1;
23020 : : }
23021 : : tree res_op1;
23022 : : res_op1 = rhs_tree;
23023 : : tree _r;
23024 : : _r = fold_build2_loc (loc, GT_EXPR, type, res_op0, res_op1);
23025 : : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 946, __FILE__, __LINE__, true);
23026 : 0 : return _r;
23027 : : }
23028 : : next_after_fail1389:;
23029 : : }
23030 : : else
23031 : : {
23032 : 0 : if (TREE_SIDE_EFFECTS (captures[2])) goto next_after_fail1390;
23033 : 0 : if (TREE_SIDE_EFFECTS (captures[3])) goto next_after_fail1390;
23034 : 0 : if (TREE_SIDE_EFFECTS (captures[4])) goto next_after_fail1390;
23035 : 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1390;
23036 : 0 : {
23037 : 0 : tree res_op0;
23038 : 0 : {
23039 : 0 : tree _o1[1], _r1;
23040 : 0 : {
23041 : 0 : tree _o2[2], _r2;
23042 : 0 : {
23043 : 0 : tree _o3[2], _r3;
23044 : 0 : _o3[0] = swap_p ? captures[4] : captures[2];
23045 : 0 : _o3[1] = wide_int_to_tree (sizetype, off);
23046 : 0 : _r3 = fold_build2_loc (loc, POINTER_PLUS_EXPR, TREE_TYPE (_o3[0]), _o3[0], _o3[1]);
23047 : 0 : _o2[0] = _r3;
23048 : : }
23049 : 0 : _o2[1] = swap_p ? captures[2] : captures[4];
23050 : 0 : _r2 = fold_build2_loc (loc, POINTER_DIFF_EXPR, ssizetype, _o2[0], _o2[1]);
23051 : 0 : _o1[0] = _r2;
23052 : : }
23053 : 0 : if (TREE_TYPE (_o1[0]) != sizetype)
23054 : : {
23055 : 0 : _r1 = fold_build1_loc (loc, NOP_EXPR, sizetype, _o1[0]);
23056 : : }
23057 : : else
23058 : : _r1 = _o1[0];
23059 : 0 : res_op0 = _r1;
23060 : : }
23061 : 0 : tree res_op1;
23062 : 0 : res_op1 = rhs_tree;
23063 : 0 : tree _r;
23064 : 0 : _r = fold_build2_loc (loc, GT_EXPR, type, res_op0, res_op1);
23065 : 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 947, __FILE__, __LINE__, true);
23066 : 0 : return _r;
23067 : : }
23068 : 0 : next_after_fail1390:;
23069 : : }
23070 : : }
23071 : : }
23072 : : }
23073 : : }
23074 : : }
23075 : : }
23076 : : }
23077 : : break;
23078 : : }
23079 : : default:;
23080 : : }
23081 : : }
23082 : : break;
23083 : : }
23084 : : default:;
23085 : : }
23086 : : break;
23087 : : }
23088 : : default:;
23089 : : }
23090 : : break;
23091 : : }
23092 : : default:;
23093 : : }
23094 : : break;
23095 : : }
23096 : 130 : case GT_EXPR:
23097 : 130 : {
23098 : 130 : tree _q20 = TREE_OPERAND (_p0, 0);
23099 : 130 : tree _q21 = TREE_OPERAND (_p0, 1);
23100 : 130 : switch (TREE_CODE (_p1))
23101 : : {
23102 : 0 : case GT_EXPR:
23103 : 0 : {
23104 : 0 : tree _q50 = TREE_OPERAND (_p1, 0);
23105 : 0 : tree _q51 = TREE_OPERAND (_p1, 1);
23106 : 0 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
23107 : : {
23108 : 0 : {
23109 : 0 : tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q51 };
23110 : 0 : tree res = generic_simplify_148 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR, GT_EXPR, MIN_EXPR);
23111 : 0 : if (res) return res;
23112 : : }
23113 : : }
23114 : 0 : if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
23115 : : {
23116 : 0 : {
23117 : 0 : tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q50 };
23118 : 0 : tree res = generic_simplify_148 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR, LT_EXPR, MAX_EXPR);
23119 : 0 : if (res) return res;
23120 : : }
23121 : : }
23122 : : break;
23123 : : }
23124 : 0 : case LT_EXPR:
23125 : 0 : {
23126 : 0 : tree _q50 = TREE_OPERAND (_p1, 0);
23127 : 0 : tree _q51 = TREE_OPERAND (_p1, 1);
23128 : 0 : if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
23129 : : {
23130 : 0 : {
23131 : 0 : tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q50 };
23132 : 0 : tree res = generic_simplify_148 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR, GT_EXPR, MIN_EXPR);
23133 : 0 : if (res) return res;
23134 : : }
23135 : : }
23136 : 0 : if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
23137 : : {
23138 : 0 : {
23139 : 0 : tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q51 };
23140 : 0 : tree res = generic_simplify_148 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR, LT_EXPR, MAX_EXPR);
23141 : 0 : if (res) return res;
23142 : : }
23143 : : }
23144 : : break;
23145 : : }
23146 : 130 : default:;
23147 : : }
23148 : 130 : switch (TREE_CODE (_q21))
23149 : : {
23150 : 0 : case POINTER_PLUS_EXPR:
23151 : 0 : {
23152 : 0 : tree _q40 = TREE_OPERAND (_q21, 0);
23153 : 0 : tree _q41 = TREE_OPERAND (_q21, 1);
23154 : 0 : switch (TREE_CODE (_q41))
23155 : : {
23156 : 0 : case INTEGER_CST:
23157 : 0 : {
23158 : 0 : switch (TREE_CODE (_p1))
23159 : : {
23160 : 0 : case LT_EXPR:
23161 : 0 : {
23162 : 0 : tree _q70 = TREE_OPERAND (_p1, 0);
23163 : 0 : tree _q71 = TREE_OPERAND (_p1, 1);
23164 : 0 : switch (TREE_CODE (_q70))
23165 : : {
23166 : 0 : case POINTER_PLUS_EXPR:
23167 : 0 : {
23168 : 0 : tree _q80 = TREE_OPERAND (_q70, 0);
23169 : 0 : tree _q81 = TREE_OPERAND (_q70, 1);
23170 : 0 : if ((_q80 == _q20 && ! TREE_SIDE_EFFECTS (_q80)) || (operand_equal_p (_q80, _q20, 0) && types_match (_q80, _q20)))
23171 : : {
23172 : 0 : if ((_q81 == _q41 && ! TREE_SIDE_EFFECTS (_q81)) || (operand_equal_p (_q81, _q41, 0) && types_match (_q81, _q41)))
23173 : : {
23174 : 0 : if ((_q71 == _q40 && ! TREE_SIDE_EFFECTS (_q71)) || (operand_equal_p (_q71, _q40, 0) && types_match (_q71, _q40)))
23175 : : {
23176 : 0 : {
23177 : 0 : tree captures[7] ATTRIBUTE_UNUSED = { _p0, _q21, _q40, _q41, _q20, _p1, _q70 };
23178 : 0 : const enum tree_code cmp = LT_EXPR;
23179 : 0 : if (TYPE_OVERFLOW_UNDEFINED (TREE_TYPE (captures[2]))
23180 : 0 : && TYPE_OVERFLOW_WRAPS (sizetype)
23181 : 0 : && TYPE_PRECISION (TREE_TYPE (captures[2])) == TYPE_PRECISION (sizetype)
23182 : : )
23183 : : {
23184 : 0 : {
23185 : 0 : offset_int off = wi::to_offset (captures[3]) - (cmp == LE_EXPR ? 1 : 0);
23186 : 0 : offset_int rhs = off * 2;
23187 : 0 : if (wi::min_precision (rhs, UNSIGNED) <= TYPE_PRECISION (sizetype)
23188 : : )
23189 : : {
23190 : 0 : {
23191 : 0 : bool swap_p = tree_swap_operands_p (captures[2], captures[4]);
23192 : 0 : tree rhs_tree = wide_int_to_tree (sizetype, rhs);
23193 : 0 : if (cmp == LT_EXPR
23194 : : )
23195 : : {
23196 : 0 : if (TREE_SIDE_EFFECTS (captures[1])) goto next_after_fail1391;
23197 : 0 : if (TREE_SIDE_EFFECTS (captures[2])) goto next_after_fail1391;
23198 : 0 : if (TREE_SIDE_EFFECTS (captures[3])) goto next_after_fail1391;
23199 : 0 : if (TREE_SIDE_EFFECTS (captures[4])) goto next_after_fail1391;
23200 : 0 : if (TREE_SIDE_EFFECTS (captures[6])) goto next_after_fail1391;
23201 : 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1391;
23202 : 0 : {
23203 : 0 : tree res_op0;
23204 : 0 : {
23205 : 0 : tree _o1[1], _r1;
23206 : 0 : {
23207 : 0 : tree _o2[2], _r2;
23208 : 0 : _o2[0] = swap_p ? captures[6] : captures[1];
23209 : 0 : _o2[1] = swap_p ? captures[2] : captures[4];
23210 : 0 : _r2 = fold_build2_loc (loc, POINTER_DIFF_EXPR, ssizetype, _o2[0], _o2[1]);
23211 : 0 : _o1[0] = _r2;
23212 : : }
23213 : 0 : if (TREE_TYPE (_o1[0]) != sizetype)
23214 : : {
23215 : 0 : _r1 = fold_build1_loc (loc, NOP_EXPR, sizetype, _o1[0]);
23216 : : }
23217 : : else
23218 : : _r1 = _o1[0];
23219 : 0 : res_op0 = _r1;
23220 : : }
23221 : 0 : tree res_op1;
23222 : 0 : res_op1 = rhs_tree;
23223 : 0 : tree _r;
23224 : 0 : _r = fold_build2_loc (loc, GT_EXPR, type, res_op0, res_op1);
23225 : 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 946, __FILE__, __LINE__, true);
23226 : 0 : return _r;
23227 : : }
23228 : 0 : next_after_fail1391:;
23229 : : }
23230 : : else
23231 : : {
23232 : : if (TREE_SIDE_EFFECTS (captures[2])) goto next_after_fail1392;
23233 : : if (TREE_SIDE_EFFECTS (captures[3])) goto next_after_fail1392;
23234 : : if (TREE_SIDE_EFFECTS (captures[4])) goto next_after_fail1392;
23235 : : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1392;
23236 : : {
23237 : : tree res_op0;
23238 : : {
23239 : : tree _o1[1], _r1;
23240 : : {
23241 : : tree _o2[2], _r2;
23242 : : {
23243 : : tree _o3[2], _r3;
23244 : : _o3[0] = swap_p ? captures[4] : captures[2];
23245 : : _o3[1] = wide_int_to_tree (sizetype, off);
23246 : : _r3 = fold_build2_loc (loc, POINTER_PLUS_EXPR, TREE_TYPE (_o3[0]), _o3[0], _o3[1]);
23247 : : _o2[0] = _r3;
23248 : : }
23249 : : _o2[1] = swap_p ? captures[2] : captures[4];
23250 : : _r2 = fold_build2_loc (loc, POINTER_DIFF_EXPR, ssizetype, _o2[0], _o2[1]);
23251 : : _o1[0] = _r2;
23252 : : }
23253 : : if (TREE_TYPE (_o1[0]) != sizetype)
23254 : : {
23255 : : _r1 = fold_build1_loc (loc, NOP_EXPR, sizetype, _o1[0]);
23256 : : }
23257 : : else
23258 : : _r1 = _o1[0];
23259 : : res_op0 = _r1;
23260 : : }
23261 : : tree res_op1;
23262 : : res_op1 = rhs_tree;
23263 : : tree _r;
23264 : : _r = fold_build2_loc (loc, GT_EXPR, type, res_op0, res_op1);
23265 : : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 947, __FILE__, __LINE__, true);
23266 : : return _r;
23267 : : }
23268 : : next_after_fail1392:;
23269 : : }
23270 : : }
23271 : : }
23272 : : }
23273 : : }
23274 : : }
23275 : : }
23276 : : }
23277 : : }
23278 : : break;
23279 : : }
23280 : : default:;
23281 : : }
23282 : : break;
23283 : : }
23284 : 0 : case GT_EXPR:
23285 : 0 : {
23286 : 0 : tree _q70 = TREE_OPERAND (_p1, 0);
23287 : 0 : tree _q71 = TREE_OPERAND (_p1, 1);
23288 : 0 : if ((_q70 == _q40 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q40, 0) && types_match (_q70, _q40)))
23289 : : {
23290 : 0 : switch (TREE_CODE (_q71))
23291 : : {
23292 : 0 : case POINTER_PLUS_EXPR:
23293 : 0 : {
23294 : 0 : tree _q90 = TREE_OPERAND (_q71, 0);
23295 : 0 : tree _q91 = TREE_OPERAND (_q71, 1);
23296 : 0 : if ((_q90 == _q20 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q20, 0) && types_match (_q90, _q20)))
23297 : : {
23298 : 0 : if ((_q91 == _q41 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q41, 0) && types_match (_q91, _q41)))
23299 : : {
23300 : 0 : {
23301 : 0 : tree captures[7] ATTRIBUTE_UNUSED = { _p0, _q21, _q40, _q41, _q20, _p1, _q71 };
23302 : 0 : const enum tree_code cmp = LT_EXPR;
23303 : 0 : if (TYPE_OVERFLOW_UNDEFINED (TREE_TYPE (captures[2]))
23304 : 0 : && TYPE_OVERFLOW_WRAPS (sizetype)
23305 : 0 : && TYPE_PRECISION (TREE_TYPE (captures[2])) == TYPE_PRECISION (sizetype)
23306 : : )
23307 : : {
23308 : 0 : {
23309 : 0 : offset_int off = wi::to_offset (captures[3]) - (cmp == LE_EXPR ? 1 : 0);
23310 : 0 : offset_int rhs = off * 2;
23311 : 0 : if (wi::min_precision (rhs, UNSIGNED) <= TYPE_PRECISION (sizetype)
23312 : : )
23313 : : {
23314 : 0 : {
23315 : 0 : bool swap_p = tree_swap_operands_p (captures[2], captures[4]);
23316 : 0 : tree rhs_tree = wide_int_to_tree (sizetype, rhs);
23317 : 0 : if (cmp == LT_EXPR
23318 : : )
23319 : : {
23320 : 0 : if (TREE_SIDE_EFFECTS (captures[1])) goto next_after_fail1393;
23321 : 0 : if (TREE_SIDE_EFFECTS (captures[2])) goto next_after_fail1393;
23322 : 0 : if (TREE_SIDE_EFFECTS (captures[3])) goto next_after_fail1393;
23323 : 0 : if (TREE_SIDE_EFFECTS (captures[4])) goto next_after_fail1393;
23324 : 0 : if (TREE_SIDE_EFFECTS (captures[6])) goto next_after_fail1393;
23325 : 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1393;
23326 : 0 : {
23327 : 0 : tree res_op0;
23328 : 0 : {
23329 : 0 : tree _o1[1], _r1;
23330 : 0 : {
23331 : 0 : tree _o2[2], _r2;
23332 : 0 : _o2[0] = swap_p ? captures[6] : captures[1];
23333 : 0 : _o2[1] = swap_p ? captures[2] : captures[4];
23334 : 0 : _r2 = fold_build2_loc (loc, POINTER_DIFF_EXPR, ssizetype, _o2[0], _o2[1]);
23335 : 0 : _o1[0] = _r2;
23336 : : }
23337 : 0 : if (TREE_TYPE (_o1[0]) != sizetype)
23338 : : {
23339 : 0 : _r1 = fold_build1_loc (loc, NOP_EXPR, sizetype, _o1[0]);
23340 : : }
23341 : : else
23342 : : _r1 = _o1[0];
23343 : 0 : res_op0 = _r1;
23344 : : }
23345 : 0 : tree res_op1;
23346 : 0 : res_op1 = rhs_tree;
23347 : 0 : tree _r;
23348 : 0 : _r = fold_build2_loc (loc, GT_EXPR, type, res_op0, res_op1);
23349 : 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 946, __FILE__, __LINE__, true);
23350 : 0 : return _r;
23351 : : }
23352 : 0 : next_after_fail1393:;
23353 : : }
23354 : : else
23355 : : {
23356 : : if (TREE_SIDE_EFFECTS (captures[2])) goto next_after_fail1394;
23357 : : if (TREE_SIDE_EFFECTS (captures[3])) goto next_after_fail1394;
23358 : : if (TREE_SIDE_EFFECTS (captures[4])) goto next_after_fail1394;
23359 : : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1394;
23360 : : {
23361 : : tree res_op0;
23362 : : {
23363 : : tree _o1[1], _r1;
23364 : : {
23365 : : tree _o2[2], _r2;
23366 : : {
23367 : : tree _o3[2], _r3;
23368 : : _o3[0] = swap_p ? captures[4] : captures[2];
23369 : : _o3[1] = wide_int_to_tree (sizetype, off);
23370 : : _r3 = fold_build2_loc (loc, POINTER_PLUS_EXPR, TREE_TYPE (_o3[0]), _o3[0], _o3[1]);
23371 : : _o2[0] = _r3;
23372 : : }
23373 : : _o2[1] = swap_p ? captures[2] : captures[4];
23374 : : _r2 = fold_build2_loc (loc, POINTER_DIFF_EXPR, ssizetype, _o2[0], _o2[1]);
23375 : : _o1[0] = _r2;
23376 : : }
23377 : : if (TREE_TYPE (_o1[0]) != sizetype)
23378 : : {
23379 : : _r1 = fold_build1_loc (loc, NOP_EXPR, sizetype, _o1[0]);
23380 : : }
23381 : : else
23382 : : _r1 = _o1[0];
23383 : : res_op0 = _r1;
23384 : : }
23385 : : tree res_op1;
23386 : : res_op1 = rhs_tree;
23387 : : tree _r;
23388 : : _r = fold_build2_loc (loc, GT_EXPR, type, res_op0, res_op1);
23389 : : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 947, __FILE__, __LINE__, true);
23390 : : return _r;
23391 : : }
23392 : : next_after_fail1394:;
23393 : : }
23394 : : }
23395 : : }
23396 : : }
23397 : : }
23398 : : }
23399 : : }
23400 : : }
23401 : : break;
23402 : : }
23403 : : default:;
23404 : : }
23405 : : }
23406 : : break;
23407 : : }
23408 : : default:;
23409 : : }
23410 : : break;
23411 : : }
23412 : : default:;
23413 : : }
23414 : : break;
23415 : : }
23416 : : default:;
23417 : : }
23418 : : break;
23419 : : }
23420 : 38 : case GE_EXPR:
23421 : 38 : {
23422 : 38 : tree _q20 = TREE_OPERAND (_p0, 0);
23423 : 38 : tree _q21 = TREE_OPERAND (_p0, 1);
23424 : 38 : switch (TREE_CODE (_p1))
23425 : : {
23426 : 0 : case GE_EXPR:
23427 : 0 : {
23428 : 0 : tree _q50 = TREE_OPERAND (_p1, 0);
23429 : 0 : tree _q51 = TREE_OPERAND (_p1, 1);
23430 : 0 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
23431 : : {
23432 : 0 : {
23433 : 0 : tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q51 };
23434 : 0 : tree res = generic_simplify_148 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR, GE_EXPR, MIN_EXPR);
23435 : 0 : if (res) return res;
23436 : : }
23437 : : }
23438 : 0 : if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
23439 : : {
23440 : 0 : {
23441 : 0 : tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q50 };
23442 : 0 : tree res = generic_simplify_148 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR, LE_EXPR, MAX_EXPR);
23443 : 0 : if (res) return res;
23444 : : }
23445 : : }
23446 : : break;
23447 : : }
23448 : 0 : case LE_EXPR:
23449 : 0 : {
23450 : 0 : tree _q50 = TREE_OPERAND (_p1, 0);
23451 : 0 : tree _q51 = TREE_OPERAND (_p1, 1);
23452 : 0 : if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
23453 : : {
23454 : 0 : {
23455 : 0 : tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q50 };
23456 : 0 : tree res = generic_simplify_148 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR, GE_EXPR, MIN_EXPR);
23457 : 0 : if (res) return res;
23458 : : }
23459 : : }
23460 : 0 : if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
23461 : : {
23462 : 0 : {
23463 : 0 : tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q51 };
23464 : 0 : tree res = generic_simplify_148 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR, LE_EXPR, MAX_EXPR);
23465 : 0 : if (res) return res;
23466 : : }
23467 : : }
23468 : : break;
23469 : : }
23470 : 38 : default:;
23471 : : }
23472 : 38 : switch (TREE_CODE (_q21))
23473 : : {
23474 : 0 : case POINTER_PLUS_EXPR:
23475 : 0 : {
23476 : 0 : tree _q40 = TREE_OPERAND (_q21, 0);
23477 : 0 : tree _q41 = TREE_OPERAND (_q21, 1);
23478 : 0 : switch (TREE_CODE (_q41))
23479 : : {
23480 : 0 : case INTEGER_CST:
23481 : 0 : {
23482 : 0 : switch (TREE_CODE (_p1))
23483 : : {
23484 : 0 : case LE_EXPR:
23485 : 0 : {
23486 : 0 : tree _q70 = TREE_OPERAND (_p1, 0);
23487 : 0 : tree _q71 = TREE_OPERAND (_p1, 1);
23488 : 0 : switch (TREE_CODE (_q70))
23489 : : {
23490 : 0 : case POINTER_PLUS_EXPR:
23491 : 0 : {
23492 : 0 : tree _q80 = TREE_OPERAND (_q70, 0);
23493 : 0 : tree _q81 = TREE_OPERAND (_q70, 1);
23494 : 0 : if ((_q80 == _q20 && ! TREE_SIDE_EFFECTS (_q80)) || (operand_equal_p (_q80, _q20, 0) && types_match (_q80, _q20)))
23495 : : {
23496 : 0 : if ((_q81 == _q41 && ! TREE_SIDE_EFFECTS (_q81)) || (operand_equal_p (_q81, _q41, 0) && types_match (_q81, _q41)))
23497 : : {
23498 : 0 : if ((_q71 == _q40 && ! TREE_SIDE_EFFECTS (_q71)) || (operand_equal_p (_q71, _q40, 0) && types_match (_q71, _q40)))
23499 : : {
23500 : 0 : {
23501 : 0 : tree captures[7] ATTRIBUTE_UNUSED = { _p0, _q21, _q40, _q41, _q20, _p1, _q70 };
23502 : 0 : const enum tree_code cmp = LE_EXPR;
23503 : 0 : if (TYPE_OVERFLOW_UNDEFINED (TREE_TYPE (captures[2]))
23504 : 0 : && TYPE_OVERFLOW_WRAPS (sizetype)
23505 : 0 : && TYPE_PRECISION (TREE_TYPE (captures[2])) == TYPE_PRECISION (sizetype)
23506 : : )
23507 : : {
23508 : 0 : {
23509 : 0 : offset_int off = wi::to_offset (captures[3]) - (cmp == LE_EXPR ? 1 : 0);
23510 : 0 : offset_int rhs = off * 2;
23511 : 0 : if (wi::min_precision (rhs, UNSIGNED) <= TYPE_PRECISION (sizetype)
23512 : : )
23513 : : {
23514 : 0 : {
23515 : 0 : bool swap_p = tree_swap_operands_p (captures[2], captures[4]);
23516 : 0 : tree rhs_tree = wide_int_to_tree (sizetype, rhs);
23517 : 0 : if (cmp == LT_EXPR
23518 : : )
23519 : : {
23520 : : if (TREE_SIDE_EFFECTS (captures[1])) goto next_after_fail1395;
23521 : : if (TREE_SIDE_EFFECTS (captures[2])) goto next_after_fail1395;
23522 : : if (TREE_SIDE_EFFECTS (captures[3])) goto next_after_fail1395;
23523 : : if (TREE_SIDE_EFFECTS (captures[4])) goto next_after_fail1395;
23524 : : if (TREE_SIDE_EFFECTS (captures[6])) goto next_after_fail1395;
23525 : : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1395;
23526 : : {
23527 : : tree res_op0;
23528 : : {
23529 : : tree _o1[1], _r1;
23530 : : {
23531 : : tree _o2[2], _r2;
23532 : : _o2[0] = swap_p ? captures[6] : captures[1];
23533 : : _o2[1] = swap_p ? captures[2] : captures[4];
23534 : : _r2 = fold_build2_loc (loc, POINTER_DIFF_EXPR, ssizetype, _o2[0], _o2[1]);
23535 : : _o1[0] = _r2;
23536 : : }
23537 : : if (TREE_TYPE (_o1[0]) != sizetype)
23538 : : {
23539 : : _r1 = fold_build1_loc (loc, NOP_EXPR, sizetype, _o1[0]);
23540 : : }
23541 : : else
23542 : : _r1 = _o1[0];
23543 : : res_op0 = _r1;
23544 : : }
23545 : : tree res_op1;
23546 : : res_op1 = rhs_tree;
23547 : : tree _r;
23548 : : _r = fold_build2_loc (loc, GT_EXPR, type, res_op0, res_op1);
23549 : : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 946, __FILE__, __LINE__, true);
23550 : 0 : return _r;
23551 : : }
23552 : : next_after_fail1395:;
23553 : : }
23554 : : else
23555 : : {
23556 : 0 : if (TREE_SIDE_EFFECTS (captures[2])) goto next_after_fail1396;
23557 : 0 : if (TREE_SIDE_EFFECTS (captures[3])) goto next_after_fail1396;
23558 : 0 : if (TREE_SIDE_EFFECTS (captures[4])) goto next_after_fail1396;
23559 : 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1396;
23560 : 0 : {
23561 : 0 : tree res_op0;
23562 : 0 : {
23563 : 0 : tree _o1[1], _r1;
23564 : 0 : {
23565 : 0 : tree _o2[2], _r2;
23566 : 0 : {
23567 : 0 : tree _o3[2], _r3;
23568 : 0 : _o3[0] = swap_p ? captures[4] : captures[2];
23569 : 0 : _o3[1] = wide_int_to_tree (sizetype, off);
23570 : 0 : _r3 = fold_build2_loc (loc, POINTER_PLUS_EXPR, TREE_TYPE (_o3[0]), _o3[0], _o3[1]);
23571 : 0 : _o2[0] = _r3;
23572 : : }
23573 : 0 : _o2[1] = swap_p ? captures[2] : captures[4];
23574 : 0 : _r2 = fold_build2_loc (loc, POINTER_DIFF_EXPR, ssizetype, _o2[0], _o2[1]);
23575 : 0 : _o1[0] = _r2;
23576 : : }
23577 : 0 : if (TREE_TYPE (_o1[0]) != sizetype)
23578 : : {
23579 : 0 : _r1 = fold_build1_loc (loc, NOP_EXPR, sizetype, _o1[0]);
23580 : : }
23581 : : else
23582 : : _r1 = _o1[0];
23583 : 0 : res_op0 = _r1;
23584 : : }
23585 : 0 : tree res_op1;
23586 : 0 : res_op1 = rhs_tree;
23587 : 0 : tree _r;
23588 : 0 : _r = fold_build2_loc (loc, GT_EXPR, type, res_op0, res_op1);
23589 : 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 947, __FILE__, __LINE__, true);
23590 : 0 : return _r;
23591 : : }
23592 : 0 : next_after_fail1396:;
23593 : : }
23594 : : }
23595 : : }
23596 : : }
23597 : : }
23598 : : }
23599 : : }
23600 : : }
23601 : : }
23602 : : break;
23603 : : }
23604 : : default:;
23605 : : }
23606 : : break;
23607 : : }
23608 : 0 : case GE_EXPR:
23609 : 0 : {
23610 : 0 : tree _q70 = TREE_OPERAND (_p1, 0);
23611 : 0 : tree _q71 = TREE_OPERAND (_p1, 1);
23612 : 0 : if ((_q70 == _q40 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q40, 0) && types_match (_q70, _q40)))
23613 : : {
23614 : 0 : switch (TREE_CODE (_q71))
23615 : : {
23616 : 0 : case POINTER_PLUS_EXPR:
23617 : 0 : {
23618 : 0 : tree _q90 = TREE_OPERAND (_q71, 0);
23619 : 0 : tree _q91 = TREE_OPERAND (_q71, 1);
23620 : 0 : if ((_q90 == _q20 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q20, 0) && types_match (_q90, _q20)))
23621 : : {
23622 : 0 : if ((_q91 == _q41 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q41, 0) && types_match (_q91, _q41)))
23623 : : {
23624 : 0 : {
23625 : 0 : tree captures[7] ATTRIBUTE_UNUSED = { _p0, _q21, _q40, _q41, _q20, _p1, _q71 };
23626 : 0 : const enum tree_code cmp = LE_EXPR;
23627 : 0 : if (TYPE_OVERFLOW_UNDEFINED (TREE_TYPE (captures[2]))
23628 : 0 : && TYPE_OVERFLOW_WRAPS (sizetype)
23629 : 0 : && TYPE_PRECISION (TREE_TYPE (captures[2])) == TYPE_PRECISION (sizetype)
23630 : : )
23631 : : {
23632 : 0 : {
23633 : 0 : offset_int off = wi::to_offset (captures[3]) - (cmp == LE_EXPR ? 1 : 0);
23634 : 0 : offset_int rhs = off * 2;
23635 : 0 : if (wi::min_precision (rhs, UNSIGNED) <= TYPE_PRECISION (sizetype)
23636 : : )
23637 : : {
23638 : 0 : {
23639 : 0 : bool swap_p = tree_swap_operands_p (captures[2], captures[4]);
23640 : 0 : tree rhs_tree = wide_int_to_tree (sizetype, rhs);
23641 : 0 : if (cmp == LT_EXPR
23642 : : )
23643 : : {
23644 : : if (TREE_SIDE_EFFECTS (captures[1])) goto next_after_fail1397;
23645 : : if (TREE_SIDE_EFFECTS (captures[2])) goto next_after_fail1397;
23646 : : if (TREE_SIDE_EFFECTS (captures[3])) goto next_after_fail1397;
23647 : : if (TREE_SIDE_EFFECTS (captures[4])) goto next_after_fail1397;
23648 : : if (TREE_SIDE_EFFECTS (captures[6])) goto next_after_fail1397;
23649 : : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1397;
23650 : : {
23651 : : tree res_op0;
23652 : : {
23653 : : tree _o1[1], _r1;
23654 : : {
23655 : : tree _o2[2], _r2;
23656 : : _o2[0] = swap_p ? captures[6] : captures[1];
23657 : : _o2[1] = swap_p ? captures[2] : captures[4];
23658 : : _r2 = fold_build2_loc (loc, POINTER_DIFF_EXPR, ssizetype, _o2[0], _o2[1]);
23659 : : _o1[0] = _r2;
23660 : : }
23661 : : if (TREE_TYPE (_o1[0]) != sizetype)
23662 : : {
23663 : : _r1 = fold_build1_loc (loc, NOP_EXPR, sizetype, _o1[0]);
23664 : : }
23665 : : else
23666 : : _r1 = _o1[0];
23667 : : res_op0 = _r1;
23668 : : }
23669 : : tree res_op1;
23670 : : res_op1 = rhs_tree;
23671 : : tree _r;
23672 : : _r = fold_build2_loc (loc, GT_EXPR, type, res_op0, res_op1);
23673 : : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 946, __FILE__, __LINE__, true);
23674 : 0 : return _r;
23675 : : }
23676 : : next_after_fail1397:;
23677 : : }
23678 : : else
23679 : : {
23680 : 0 : if (TREE_SIDE_EFFECTS (captures[2])) goto next_after_fail1398;
23681 : 0 : if (TREE_SIDE_EFFECTS (captures[3])) goto next_after_fail1398;
23682 : 0 : if (TREE_SIDE_EFFECTS (captures[4])) goto next_after_fail1398;
23683 : 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1398;
23684 : 0 : {
23685 : 0 : tree res_op0;
23686 : 0 : {
23687 : 0 : tree _o1[1], _r1;
23688 : 0 : {
23689 : 0 : tree _o2[2], _r2;
23690 : 0 : {
23691 : 0 : tree _o3[2], _r3;
23692 : 0 : _o3[0] = swap_p ? captures[4] : captures[2];
23693 : 0 : _o3[1] = wide_int_to_tree (sizetype, off);
23694 : 0 : _r3 = fold_build2_loc (loc, POINTER_PLUS_EXPR, TREE_TYPE (_o3[0]), _o3[0], _o3[1]);
23695 : 0 : _o2[0] = _r3;
23696 : : }
23697 : 0 : _o2[1] = swap_p ? captures[2] : captures[4];
23698 : 0 : _r2 = fold_build2_loc (loc, POINTER_DIFF_EXPR, ssizetype, _o2[0], _o2[1]);
23699 : 0 : _o1[0] = _r2;
23700 : : }
23701 : 0 : if (TREE_TYPE (_o1[0]) != sizetype)
23702 : : {
23703 : 0 : _r1 = fold_build1_loc (loc, NOP_EXPR, sizetype, _o1[0]);
23704 : : }
23705 : : else
23706 : : _r1 = _o1[0];
23707 : 0 : res_op0 = _r1;
23708 : : }
23709 : 0 : tree res_op1;
23710 : 0 : res_op1 = rhs_tree;
23711 : 0 : tree _r;
23712 : 0 : _r = fold_build2_loc (loc, GT_EXPR, type, res_op0, res_op1);
23713 : 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 947, __FILE__, __LINE__, true);
23714 : 0 : return _r;
23715 : : }
23716 : 0 : next_after_fail1398:;
23717 : : }
23718 : : }
23719 : : }
23720 : : }
23721 : : }
23722 : : }
23723 : : }
23724 : : }
23725 : : break;
23726 : : }
23727 : : default:;
23728 : : }
23729 : : }
23730 : : break;
23731 : : }
23732 : : default:;
23733 : : }
23734 : : break;
23735 : : }
23736 : : default:;
23737 : : }
23738 : : break;
23739 : : }
23740 : : default:;
23741 : : }
23742 : : break;
23743 : : }
23744 : 0 : case VEC_PERM_EXPR:
23745 : 0 : {
23746 : 0 : tree _q20 = TREE_OPERAND (_p0, 0);
23747 : 0 : tree _q21 = TREE_OPERAND (_p0, 1);
23748 : 0 : tree _q22 = TREE_OPERAND (_p0, 2);
23749 : 0 : if ((_q21 == _q20 && ! TREE_SIDE_EFFECTS (_q21)) || (operand_equal_p (_q21, _q20, 0) && types_match (_q21, _q20)))
23750 : : {
23751 : 0 : switch (TREE_CODE (_p1))
23752 : : {
23753 : 0 : case VEC_PERM_EXPR:
23754 : 0 : {
23755 : 0 : tree _q60 = TREE_OPERAND (_p1, 0);
23756 : 0 : tree _q61 = TREE_OPERAND (_p1, 1);
23757 : 0 : tree _q62 = TREE_OPERAND (_p1, 2);
23758 : 0 : if ((_q61 == _q60 && ! TREE_SIDE_EFFECTS (_q61)) || (operand_equal_p (_q61, _q60, 0) && types_match (_q61, _q60)))
23759 : : {
23760 : 0 : if ((_q62 == _q22 && ! TREE_SIDE_EFFECTS (_q62)) || (operand_equal_p (_q62, _q22, 0) && types_match (_q62, _q22)))
23761 : : {
23762 : 0 : {
23763 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q20, _q22, _q60 };
23764 : 0 : if (VECTOR_INTEGER_TYPE_P (type)
23765 : : )
23766 : : {
23767 : 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1399;
23768 : 0 : {
23769 : 0 : tree res_op0;
23770 : 0 : {
23771 : 0 : tree _o1[2], _r1;
23772 : 0 : _o1[0] = captures[0];
23773 : 0 : _o1[1] = captures[2];
23774 : 0 : _r1 = fold_build2_loc (loc, BIT_IOR_EXPR, TREE_TYPE (_o1[0]), _o1[0], _o1[1]);
23775 : 0 : captures[3] = _r1;
23776 : : }
23777 : 0 : res_op0 = unshare_expr (captures[3]);
23778 : 0 : tree res_op1;
23779 : 0 : res_op1 = captures[3];
23780 : 0 : tree res_op2;
23781 : 0 : res_op2 = captures[1];
23782 : 0 : tree _r;
23783 : 0 : _r = fold_build3_loc (loc, VEC_PERM_EXPR, type, res_op0, res_op1, res_op2);
23784 : 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 903, __FILE__, __LINE__, true);
23785 : 0 : return _r;
23786 : : }
23787 : 0 : next_after_fail1399:;
23788 : : }
23789 : : }
23790 : : }
23791 : : }
23792 : : break;
23793 : : }
23794 : : default:;
23795 : : }
23796 : : }
23797 : : break;
23798 : : }
23799 : : default:;
23800 : : }
23801 : : return NULL_TREE;
23802 : : }
23803 : : #pragma GCC diagnostic pop
|