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 : 21379778 : tree_maybe_bit_not (tree t, tree *res_ops)
11 : : {
12 : 21379778 : const tree type = TREE_TYPE (t);
13 : 21379778 : const bool debug_dump = dump_file && (dump_flags & TDF_FOLDING);
14 : 21379778 : if (TREE_SIDE_EFFECTS (t)) return false;
15 : 20760533 : switch (TREE_CODE (t))
16 : : {
17 : 4404659 : case INTEGER_CST:
18 : 4404659 : {
19 : 4404659 : {
20 : 4404659 : tree captures[1] ATTRIBUTE_UNUSED = { t };
21 : 4404659 : {
22 : 4404659 : res_ops[0] = captures[0];
23 : 4404659 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 8, __FILE__, __LINE__, false);
24 : : return true;
25 : : }
26 : : }
27 : 16355874 : break;
28 : : }
29 : 16355874 : default:;
30 : : }
31 : 16355874 : {
32 : 16355874 : tree t_pops[1];
33 : 16355874 : if (tree_bit_not_with_nop (t, t_pops))
34 : : {
35 : 84819 : tree _p0 = t_pops[0];
36 : 84819 : {
37 : 84819 : tree captures[2] ATTRIBUTE_UNUSED = { t, _p0 };
38 : 84819 : {
39 : 84819 : res_ops[0] = captures[0];
40 : 84819 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 9, __FILE__, __LINE__, false);
41 : 84819 : return true;
42 : : }
43 : : }
44 : : }
45 : : }
46 : 16271055 : {
47 : 16271055 : tree t_pops[1];
48 : 16271055 : if (tree_maybe_cmp (t, t_pops))
49 : : {
50 : 23360 : tree _p0 = t_pops[0];
51 : 23360 : {
52 : 23360 : tree captures[2] ATTRIBUTE_UNUSED = { t, _p0 };
53 : 23360 : {
54 : 23360 : res_ops[0] = captures[0];
55 : 23360 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 10, __FILE__, __LINE__, false);
56 : 23360 : return true;
57 : : }
58 : : }
59 : : }
60 : : }
61 : 16247695 : {
62 : 16247695 : tree t_pops[2];
63 : 16247695 : if (tree_bit_xor_cst (t, t_pops))
64 : : {
65 : 488 : tree _p0 = t_pops[0];
66 : 488 : tree _p1 = t_pops[1];
67 : 488 : {
68 : 488 : tree captures[3] ATTRIBUTE_UNUSED = { t, _p0, _p1 };
69 : 488 : {
70 : 488 : res_ops[0] = captures[0];
71 : 488 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 11, __FILE__, __LINE__, false);
72 : 488 : return true;
73 : : }
74 : : }
75 : : }
76 : : }
77 : 16247207 : return false;
78 : : }
79 : :
80 : : bool
81 : 1453 : tree_min_value (tree t)
82 : : {
83 : 1453 : const tree type = TREE_TYPE (t);
84 : 1453 : const bool debug_dump = dump_file && (dump_flags & TDF_FOLDING);
85 : 1453 : if (TREE_SIDE_EFFECTS (t)) return false;
86 : 1445 : if (uniform_integer_cst_p (t))
87 : : {
88 : 1197 : {
89 : 1197 : {
90 : 1197 : tree int_cst = uniform_integer_cst_p (t);
91 : 1197 : tree inner_type = TREE_TYPE (int_cst);
92 : 2394 : if ((INTEGRAL_TYPE_P (inner_type)
93 : 19 : || POINTER_TYPE_P (inner_type))
94 : 2411 : && wi::eq_p (wi::to_wide (int_cst), wi::min_value (inner_type))
95 : : )
96 : : {
97 : 114 : {
98 : 114 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 41, __FILE__, __LINE__, false);
99 : 114 : return true;
100 : : }
101 : : }
102 : : }
103 : : }
104 : : }
105 : : return false;
106 : : }
107 : :
108 : : bool
109 : 0 : tree_signed_integer_sat_add (tree t, tree *res_ops)
110 : : {
111 : 0 : const tree type = TREE_TYPE (t);
112 : 0 : const bool debug_dump = dump_file && (dump_flags & TDF_FOLDING);
113 : 0 : if (TREE_SIDE_EFFECTS (t)) return false;
114 : 0 : switch (TREE_CODE (t))
115 : : {
116 : 0 : case COND_EXPR:
117 : 0 : {
118 : 0 : tree _p0 = TREE_OPERAND (t, 0);
119 : 0 : tree _p1 = TREE_OPERAND (t, 1);
120 : 0 : tree _p2 = TREE_OPERAND (t, 2);
121 : 0 : switch (TREE_CODE (_p0))
122 : : {
123 : 0 : case LT_EXPR:
124 : 0 : {
125 : 0 : tree _q20 = TREE_OPERAND (_p0, 0);
126 : 0 : tree _q21 = TREE_OPERAND (_p0, 1);
127 : 0 : switch (TREE_CODE (_q20))
128 : : {
129 : 0 : case BIT_AND_EXPR:
130 : 0 : {
131 : 0 : tree _q30 = TREE_OPERAND (_q20, 0);
132 : 0 : tree _q31 = TREE_OPERAND (_q20, 1);
133 : 0 : switch (TREE_CODE (_q30))
134 : : {
135 : 0 : case BIT_XOR_EXPR:
136 : 0 : {
137 : 0 : tree _q40 = TREE_OPERAND (_q30, 0);
138 : 0 : tree _q41 = TREE_OPERAND (_q30, 1);
139 : 0 : {
140 : 0 : tree _q41_pops[1];
141 : 0 : if (tree_nop_convert (_q41, _q41_pops))
142 : : {
143 : 0 : tree _q60 = _q41_pops[0];
144 : 0 : switch (TREE_CODE (_q60))
145 : : {
146 : 0 : case PLUS_EXPR:
147 : 0 : {
148 : 0 : tree _q70 = TREE_OPERAND (_q60, 0);
149 : 0 : tree _q71 = TREE_OPERAND (_q60, 1);
150 : 0 : {
151 : 0 : tree _q70_pops[1];
152 : 0 : if (tree_nop_convert (_q70, _q70_pops))
153 : : {
154 : 0 : tree _q80 = _q70_pops[0];
155 : 0 : if ((_q80 == _q40 && ! TREE_SIDE_EFFECTS (_q80)) || (operand_equal_p (_q80, _q40, 0) && types_match (_q80, _q40)))
156 : : {
157 : 0 : {
158 : 0 : tree _q71_pops[1];
159 : 0 : if (tree_nop_convert (_q71, _q71_pops))
160 : : {
161 : 0 : tree _q100 = _q71_pops[0];
162 : 0 : switch (TREE_CODE (_q31))
163 : : {
164 : 0 : case BIT_NOT_EXPR:
165 : 0 : {
166 : 0 : tree _q120 = TREE_OPERAND (_q31, 0);
167 : 0 : switch (TREE_CODE (_q120))
168 : : {
169 : 0 : case BIT_XOR_EXPR:
170 : 0 : {
171 : 0 : tree _q130 = TREE_OPERAND (_q120, 0);
172 : 0 : tree _q131 = TREE_OPERAND (_q120, 1);
173 : 0 : if ((_q130 == _q40 && ! TREE_SIDE_EFFECTS (_q130)) || (operand_equal_p (_q130, _q40, 0) && types_match (_q130, _q40)))
174 : : {
175 : 0 : if ((_q131 == _q100 && ! TREE_SIDE_EFFECTS (_q131)) || (operand_equal_p (_q131, _q100, 0) && types_match (_q131, _q100)))
176 : : {
177 : 0 : if (integer_zerop (_q21))
178 : : {
179 : 0 : switch (TREE_CODE (_p1))
180 : : {
181 : 0 : case BIT_XOR_EXPR:
182 : 0 : {
183 : 0 : tree _q170 = TREE_OPERAND (_p1, 0);
184 : 0 : tree _q171 = TREE_OPERAND (_p1, 1);
185 : 0 : switch (TREE_CODE (_q170))
186 : : {
187 : 0 : case NEGATE_EXPR:
188 : 0 : {
189 : 0 : tree _q180 = TREE_OPERAND (_q170, 0);
190 : 0 : switch (TREE_CODE (_q180))
191 : : {
192 : 0 : CASE_CONVERT:
193 : 0 : {
194 : 0 : tree _q190 = TREE_OPERAND (_q180, 0);
195 : 0 : switch (TREE_CODE (_q190))
196 : : {
197 : 0 : case LT_EXPR:
198 : 0 : {
199 : 0 : tree _q200 = TREE_OPERAND (_q190, 0);
200 : 0 : tree _q201 = TREE_OPERAND (_q190, 1);
201 : 0 : if ((_q200 == _q40 && ! TREE_SIDE_EFFECTS (_q200)) || (operand_equal_p (_q200, _q40, 0) && types_match (_q200, _q40)))
202 : : {
203 : 0 : if (integer_zerop (_q201))
204 : : {
205 : 0 : if (tree_max_value (_q171))
206 : : {
207 : 0 : if ((_p2 == _q41 && ! TREE_SIDE_EFFECTS (_p2)) || (operand_equal_p (_p2, _q41, 0) && types_match (_p2, _q41)))
208 : : {
209 : 0 : {
210 : 0 : tree captures[3] ATTRIBUTE_UNUSED = { _q40, _q100, _q41 };
211 : 0 : if (INTEGRAL_TYPE_P (type) && !TYPE_UNSIGNED (type)
212 : : )
213 : : {
214 : 0 : {
215 : 0 : res_ops[0] = captures[0];
216 : 0 : res_ops[1] = captures[1];
217 : 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 71, __FILE__, __LINE__, false);
218 : 0 : return true;
219 : : }
220 : : }
221 : : }
222 : : }
223 : : }
224 : : }
225 : : }
226 : : break;
227 : : }
228 : : default:;
229 : : }
230 : : break;
231 : : }
232 : : default:;
233 : : }
234 : : break;
235 : : }
236 : 0 : default:;
237 : : }
238 : 0 : if (tree_max_value (_q170))
239 : : {
240 : 0 : switch (TREE_CODE (_q171))
241 : : {
242 : 0 : case NEGATE_EXPR:
243 : 0 : {
244 : 0 : tree _q190 = TREE_OPERAND (_q171, 0);
245 : 0 : switch (TREE_CODE (_q190))
246 : : {
247 : 0 : CASE_CONVERT:
248 : 0 : {
249 : 0 : tree _q200 = TREE_OPERAND (_q190, 0);
250 : 0 : switch (TREE_CODE (_q200))
251 : : {
252 : 0 : case LT_EXPR:
253 : 0 : {
254 : 0 : tree _q210 = TREE_OPERAND (_q200, 0);
255 : 0 : tree _q211 = TREE_OPERAND (_q200, 1);
256 : 0 : if ((_q210 == _q40 && ! TREE_SIDE_EFFECTS (_q210)) || (operand_equal_p (_q210, _q40, 0) && types_match (_q210, _q40)))
257 : : {
258 : 0 : if (integer_zerop (_q211))
259 : : {
260 : 0 : if ((_p2 == _q41 && ! TREE_SIDE_EFFECTS (_p2)) || (operand_equal_p (_p2, _q41, 0) && types_match (_p2, _q41)))
261 : : {
262 : 0 : {
263 : 0 : tree captures[3] ATTRIBUTE_UNUSED = { _q40, _q100, _q41 };
264 : 0 : if (INTEGRAL_TYPE_P (type) && !TYPE_UNSIGNED (type)
265 : : )
266 : : {
267 : 0 : {
268 : 0 : res_ops[0] = captures[0];
269 : 0 : res_ops[1] = captures[1];
270 : 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 71, __FILE__, __LINE__, false);
271 : 0 : return true;
272 : : }
273 : : }
274 : : }
275 : : }
276 : : }
277 : : }
278 : : break;
279 : : }
280 : : default:;
281 : : }
282 : : break;
283 : : }
284 : : default:;
285 : : }
286 : : break;
287 : : }
288 : : default:;
289 : : }
290 : : }
291 : : break;
292 : : }
293 : : default:;
294 : : }
295 : : }
296 : : }
297 : : }
298 : 0 : if ((_q130 == _q100 && ! TREE_SIDE_EFFECTS (_q130)) || (operand_equal_p (_q130, _q100, 0) && types_match (_q130, _q100)))
299 : : {
300 : 0 : if ((_q131 == _q40 && ! TREE_SIDE_EFFECTS (_q131)) || (operand_equal_p (_q131, _q40, 0) && types_match (_q131, _q40)))
301 : : {
302 : 0 : if (integer_zerop (_q21))
303 : : {
304 : 0 : switch (TREE_CODE (_p1))
305 : : {
306 : 0 : case BIT_XOR_EXPR:
307 : 0 : {
308 : 0 : tree _q170 = TREE_OPERAND (_p1, 0);
309 : 0 : tree _q171 = TREE_OPERAND (_p1, 1);
310 : 0 : switch (TREE_CODE (_q170))
311 : : {
312 : 0 : case NEGATE_EXPR:
313 : 0 : {
314 : 0 : tree _q180 = TREE_OPERAND (_q170, 0);
315 : 0 : switch (TREE_CODE (_q180))
316 : : {
317 : 0 : CASE_CONVERT:
318 : 0 : {
319 : 0 : tree _q190 = TREE_OPERAND (_q180, 0);
320 : 0 : switch (TREE_CODE (_q190))
321 : : {
322 : 0 : case LT_EXPR:
323 : 0 : {
324 : 0 : tree _q200 = TREE_OPERAND (_q190, 0);
325 : 0 : tree _q201 = TREE_OPERAND (_q190, 1);
326 : 0 : if ((_q200 == _q40 && ! TREE_SIDE_EFFECTS (_q200)) || (operand_equal_p (_q200, _q40, 0) && types_match (_q200, _q40)))
327 : : {
328 : 0 : if (integer_zerop (_q201))
329 : : {
330 : 0 : if (tree_max_value (_q171))
331 : : {
332 : 0 : if ((_p2 == _q41 && ! TREE_SIDE_EFFECTS (_p2)) || (operand_equal_p (_p2, _q41, 0) && types_match (_p2, _q41)))
333 : : {
334 : 0 : {
335 : 0 : tree captures[3] ATTRIBUTE_UNUSED = { _q40, _q100, _q41 };
336 : 0 : if (INTEGRAL_TYPE_P (type) && !TYPE_UNSIGNED (type)
337 : : )
338 : : {
339 : 0 : {
340 : 0 : res_ops[0] = captures[0];
341 : 0 : res_ops[1] = captures[1];
342 : 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 71, __FILE__, __LINE__, false);
343 : 0 : return true;
344 : : }
345 : : }
346 : : }
347 : : }
348 : : }
349 : : }
350 : : }
351 : : break;
352 : : }
353 : : default:;
354 : : }
355 : : break;
356 : : }
357 : : default:;
358 : : }
359 : : break;
360 : : }
361 : 0 : default:;
362 : : }
363 : 0 : if (tree_max_value (_q170))
364 : : {
365 : 0 : switch (TREE_CODE (_q171))
366 : : {
367 : 0 : case NEGATE_EXPR:
368 : 0 : {
369 : 0 : tree _q190 = TREE_OPERAND (_q171, 0);
370 : 0 : switch (TREE_CODE (_q190))
371 : : {
372 : 0 : CASE_CONVERT:
373 : 0 : {
374 : 0 : tree _q200 = TREE_OPERAND (_q190, 0);
375 : 0 : switch (TREE_CODE (_q200))
376 : : {
377 : 0 : case LT_EXPR:
378 : 0 : {
379 : 0 : tree _q210 = TREE_OPERAND (_q200, 0);
380 : 0 : tree _q211 = TREE_OPERAND (_q200, 1);
381 : 0 : if ((_q210 == _q40 && ! TREE_SIDE_EFFECTS (_q210)) || (operand_equal_p (_q210, _q40, 0) && types_match (_q210, _q40)))
382 : : {
383 : 0 : if (integer_zerop (_q211))
384 : : {
385 : 0 : if ((_p2 == _q41 && ! TREE_SIDE_EFFECTS (_p2)) || (operand_equal_p (_p2, _q41, 0) && types_match (_p2, _q41)))
386 : : {
387 : 0 : {
388 : 0 : tree captures[3] ATTRIBUTE_UNUSED = { _q40, _q100, _q41 };
389 : 0 : if (INTEGRAL_TYPE_P (type) && !TYPE_UNSIGNED (type)
390 : : )
391 : : {
392 : 0 : {
393 : 0 : res_ops[0] = captures[0];
394 : 0 : res_ops[1] = captures[1];
395 : 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 71, __FILE__, __LINE__, false);
396 : 0 : return true;
397 : : }
398 : : }
399 : : }
400 : : }
401 : : }
402 : : }
403 : : break;
404 : : }
405 : : default:;
406 : : }
407 : : break;
408 : : }
409 : : default:;
410 : : }
411 : : break;
412 : : }
413 : : default:;
414 : : }
415 : : }
416 : : break;
417 : : }
418 : : default:;
419 : : }
420 : : }
421 : : }
422 : : }
423 : : break;
424 : : }
425 : : default:;
426 : : }
427 : : break;
428 : : }
429 : : default:;
430 : : }
431 : : }
432 : : }
433 : : }
434 : : }
435 : : }
436 : 0 : break;
437 : : }
438 : : default:;
439 : : }
440 : : }
441 : : }
442 : 0 : {
443 : 0 : tree _q40_pops[1];
444 : 0 : if (tree_nop_convert (_q40, _q40_pops))
445 : : {
446 : 0 : tree _q50 = _q40_pops[0];
447 : 0 : switch (TREE_CODE (_q50))
448 : : {
449 : 0 : case PLUS_EXPR:
450 : 0 : {
451 : 0 : tree _q60 = TREE_OPERAND (_q50, 0);
452 : 0 : tree _q61 = TREE_OPERAND (_q50, 1);
453 : 0 : {
454 : 0 : tree _q60_pops[1];
455 : 0 : if (tree_nop_convert (_q60, _q60_pops))
456 : : {
457 : 0 : tree _q70 = _q60_pops[0];
458 : 0 : switch (TREE_CODE (_q61))
459 : : {
460 : 0 : case INTEGER_CST:
461 : 0 : {
462 : 0 : if ((_q41 == _q70 && ! TREE_SIDE_EFFECTS (_q41)) || (operand_equal_p (_q41, _q70, 0) && types_match (_q41, _q70)))
463 : : {
464 : 0 : switch (TREE_CODE (_q31))
465 : : {
466 : 0 : case BIT_XOR_EXPR:
467 : 0 : {
468 : 0 : tree _q110 = TREE_OPERAND (_q31, 0);
469 : 0 : tree _q111 = TREE_OPERAND (_q31, 1);
470 : 0 : if ((_q110 == _q70 && ! TREE_SIDE_EFFECTS (_q110)) || (operand_equal_p (_q110, _q70, 0) && types_match (_q110, _q70)))
471 : : {
472 : 0 : switch (TREE_CODE (_q111))
473 : : {
474 : 0 : case INTEGER_CST:
475 : 0 : {
476 : 0 : if (integer_zerop (_q21))
477 : : {
478 : 0 : switch (TREE_CODE (_p1))
479 : : {
480 : 0 : case BIT_XOR_EXPR:
481 : 0 : {
482 : 0 : tree _q150 = TREE_OPERAND (_p1, 0);
483 : 0 : tree _q151 = TREE_OPERAND (_p1, 1);
484 : 0 : switch (TREE_CODE (_q150))
485 : : {
486 : 0 : case NEGATE_EXPR:
487 : 0 : {
488 : 0 : tree _q160 = TREE_OPERAND (_q150, 0);
489 : 0 : switch (TREE_CODE (_q160))
490 : : {
491 : 0 : CASE_CONVERT:
492 : 0 : {
493 : 0 : tree _q170 = TREE_OPERAND (_q160, 0);
494 : 0 : switch (TREE_CODE (_q170))
495 : : {
496 : 0 : case LT_EXPR:
497 : 0 : {
498 : 0 : tree _q180 = TREE_OPERAND (_q170, 0);
499 : 0 : tree _q181 = TREE_OPERAND (_q170, 1);
500 : 0 : if ((_q180 == _q70 && ! TREE_SIDE_EFFECTS (_q180)) || (operand_equal_p (_q180, _q70, 0) && types_match (_q180, _q70)))
501 : : {
502 : 0 : if (integer_zerop (_q181))
503 : : {
504 : 0 : if (tree_max_value (_q151))
505 : : {
506 : 0 : if ((_p2 == _q40 && ! TREE_SIDE_EFFECTS (_p2)) || (operand_equal_p (_p2, _q40, 0) && types_match (_p2, _q40)))
507 : : {
508 : 0 : {
509 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q70, _q61, _q40, _q111 };
510 : 0 : if (INTEGRAL_TYPE_P (type) && !TYPE_UNSIGNED (type)
511 : : )
512 : : {
513 : 0 : if (wi::bit_and (wi::to_wide (captures[1]), wi::to_wide (captures[3])) == 0
514 : : )
515 : : {
516 : 0 : {
517 : 0 : res_ops[0] = captures[0];
518 : 0 : res_ops[1] = captures[1];
519 : 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 72, __FILE__, __LINE__, false);
520 : 0 : return true;
521 : : }
522 : : }
523 : : }
524 : : }
525 : : }
526 : : }
527 : : }
528 : : }
529 : : break;
530 : : }
531 : : default:;
532 : : }
533 : : break;
534 : : }
535 : : default:;
536 : : }
537 : : break;
538 : : }
539 : 0 : default:;
540 : : }
541 : 0 : if (tree_max_value (_q150))
542 : : {
543 : 0 : switch (TREE_CODE (_q151))
544 : : {
545 : 0 : case NEGATE_EXPR:
546 : 0 : {
547 : 0 : tree _q170 = TREE_OPERAND (_q151, 0);
548 : 0 : switch (TREE_CODE (_q170))
549 : : {
550 : 0 : CASE_CONVERT:
551 : 0 : {
552 : 0 : tree _q180 = TREE_OPERAND (_q170, 0);
553 : 0 : switch (TREE_CODE (_q180))
554 : : {
555 : 0 : case LT_EXPR:
556 : 0 : {
557 : 0 : tree _q190 = TREE_OPERAND (_q180, 0);
558 : 0 : tree _q191 = TREE_OPERAND (_q180, 1);
559 : 0 : if ((_q190 == _q70 && ! TREE_SIDE_EFFECTS (_q190)) || (operand_equal_p (_q190, _q70, 0) && types_match (_q190, _q70)))
560 : : {
561 : 0 : if (integer_zerop (_q191))
562 : : {
563 : 0 : if ((_p2 == _q40 && ! TREE_SIDE_EFFECTS (_p2)) || (operand_equal_p (_p2, _q40, 0) && types_match (_p2, _q40)))
564 : : {
565 : 0 : {
566 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q70, _q61, _q40, _q111 };
567 : 0 : if (INTEGRAL_TYPE_P (type) && !TYPE_UNSIGNED (type)
568 : : )
569 : : {
570 : 0 : if (wi::bit_and (wi::to_wide (captures[1]), wi::to_wide (captures[3])) == 0
571 : : )
572 : : {
573 : 0 : {
574 : 0 : res_ops[0] = captures[0];
575 : 0 : res_ops[1] = captures[1];
576 : 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 72, __FILE__, __LINE__, false);
577 : 0 : return true;
578 : : }
579 : : }
580 : : }
581 : : }
582 : : }
583 : : }
584 : : }
585 : : break;
586 : : }
587 : : default:;
588 : : }
589 : : break;
590 : : }
591 : : default:;
592 : : }
593 : : break;
594 : : }
595 : : default:;
596 : : }
597 : : }
598 : : break;
599 : : }
600 : : default:;
601 : : }
602 : : }
603 : : break;
604 : : }
605 : : default:;
606 : : }
607 : : }
608 : 0 : switch (TREE_CODE (_q110))
609 : : {
610 : 0 : case INTEGER_CST:
611 : 0 : {
612 : 0 : if ((_q111 == _q70 && ! TREE_SIDE_EFFECTS (_q111)) || (operand_equal_p (_q111, _q70, 0) && types_match (_q111, _q70)))
613 : : {
614 : 0 : if (integer_zerop (_q21))
615 : : {
616 : 0 : switch (TREE_CODE (_p1))
617 : : {
618 : 0 : case BIT_XOR_EXPR:
619 : 0 : {
620 : 0 : tree _q150 = TREE_OPERAND (_p1, 0);
621 : 0 : tree _q151 = TREE_OPERAND (_p1, 1);
622 : 0 : switch (TREE_CODE (_q150))
623 : : {
624 : 0 : case NEGATE_EXPR:
625 : 0 : {
626 : 0 : tree _q160 = TREE_OPERAND (_q150, 0);
627 : 0 : switch (TREE_CODE (_q160))
628 : : {
629 : 0 : CASE_CONVERT:
630 : 0 : {
631 : 0 : tree _q170 = TREE_OPERAND (_q160, 0);
632 : 0 : switch (TREE_CODE (_q170))
633 : : {
634 : 0 : case LT_EXPR:
635 : 0 : {
636 : 0 : tree _q180 = TREE_OPERAND (_q170, 0);
637 : 0 : tree _q181 = TREE_OPERAND (_q170, 1);
638 : 0 : if ((_q180 == _q70 && ! TREE_SIDE_EFFECTS (_q180)) || (operand_equal_p (_q180, _q70, 0) && types_match (_q180, _q70)))
639 : : {
640 : 0 : if (integer_zerop (_q181))
641 : : {
642 : 0 : if (tree_max_value (_q151))
643 : : {
644 : 0 : if ((_p2 == _q40 && ! TREE_SIDE_EFFECTS (_p2)) || (operand_equal_p (_p2, _q40, 0) && types_match (_p2, _q40)))
645 : : {
646 : 0 : {
647 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q70, _q61, _q40, _q110 };
648 : 0 : if (INTEGRAL_TYPE_P (type) && !TYPE_UNSIGNED (type)
649 : : )
650 : : {
651 : 0 : if (wi::bit_and (wi::to_wide (captures[1]), wi::to_wide (captures[3])) == 0
652 : : )
653 : : {
654 : 0 : {
655 : 0 : res_ops[0] = captures[0];
656 : 0 : res_ops[1] = captures[1];
657 : 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 72, __FILE__, __LINE__, false);
658 : 0 : return true;
659 : : }
660 : : }
661 : : }
662 : : }
663 : : }
664 : : }
665 : : }
666 : : }
667 : : break;
668 : : }
669 : : default:;
670 : : }
671 : : break;
672 : : }
673 : : default:;
674 : : }
675 : : break;
676 : : }
677 : 0 : default:;
678 : : }
679 : 0 : if (tree_max_value (_q150))
680 : : {
681 : 0 : switch (TREE_CODE (_q151))
682 : : {
683 : 0 : case NEGATE_EXPR:
684 : 0 : {
685 : 0 : tree _q170 = TREE_OPERAND (_q151, 0);
686 : 0 : switch (TREE_CODE (_q170))
687 : : {
688 : 0 : CASE_CONVERT:
689 : 0 : {
690 : 0 : tree _q180 = TREE_OPERAND (_q170, 0);
691 : 0 : switch (TREE_CODE (_q180))
692 : : {
693 : 0 : case LT_EXPR:
694 : 0 : {
695 : 0 : tree _q190 = TREE_OPERAND (_q180, 0);
696 : 0 : tree _q191 = TREE_OPERAND (_q180, 1);
697 : 0 : if ((_q190 == _q70 && ! TREE_SIDE_EFFECTS (_q190)) || (operand_equal_p (_q190, _q70, 0) && types_match (_q190, _q70)))
698 : : {
699 : 0 : if (integer_zerop (_q191))
700 : : {
701 : 0 : if ((_p2 == _q40 && ! TREE_SIDE_EFFECTS (_p2)) || (operand_equal_p (_p2, _q40, 0) && types_match (_p2, _q40)))
702 : : {
703 : 0 : {
704 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q70, _q61, _q40, _q110 };
705 : 0 : if (INTEGRAL_TYPE_P (type) && !TYPE_UNSIGNED (type)
706 : : )
707 : : {
708 : 0 : if (wi::bit_and (wi::to_wide (captures[1]), wi::to_wide (captures[3])) == 0
709 : : )
710 : : {
711 : 0 : {
712 : 0 : res_ops[0] = captures[0];
713 : 0 : res_ops[1] = captures[1];
714 : 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 72, __FILE__, __LINE__, false);
715 : 0 : return true;
716 : : }
717 : : }
718 : : }
719 : : }
720 : : }
721 : : }
722 : : }
723 : : break;
724 : : }
725 : : default:;
726 : : }
727 : : break;
728 : : }
729 : : default:;
730 : : }
731 : : break;
732 : : }
733 : : default:;
734 : : }
735 : : }
736 : : break;
737 : : }
738 : : default:;
739 : : }
740 : : }
741 : : }
742 : : break;
743 : : }
744 : : default:;
745 : : }
746 : : break;
747 : : }
748 : : default:;
749 : : }
750 : : }
751 : : break;
752 : : }
753 : 0 : default:;
754 : : }
755 : 0 : {
756 : 0 : tree _q61_pops[1];
757 : 0 : if (tree_nop_convert (_q61, _q61_pops))
758 : : {
759 : 0 : tree _q90 = _q61_pops[0];
760 : 0 : if ((_q41 == _q70 && ! TREE_SIDE_EFFECTS (_q41)) || (operand_equal_p (_q41, _q70, 0) && types_match (_q41, _q70)))
761 : : {
762 : 0 : switch (TREE_CODE (_q31))
763 : : {
764 : 0 : case BIT_NOT_EXPR:
765 : 0 : {
766 : 0 : tree _q120 = TREE_OPERAND (_q31, 0);
767 : 0 : switch (TREE_CODE (_q120))
768 : : {
769 : 0 : case BIT_XOR_EXPR:
770 : 0 : {
771 : 0 : tree _q130 = TREE_OPERAND (_q120, 0);
772 : 0 : tree _q131 = TREE_OPERAND (_q120, 1);
773 : 0 : if ((_q130 == _q70 && ! TREE_SIDE_EFFECTS (_q130)) || (operand_equal_p (_q130, _q70, 0) && types_match (_q130, _q70)))
774 : : {
775 : 0 : if ((_q131 == _q90 && ! TREE_SIDE_EFFECTS (_q131)) || (operand_equal_p (_q131, _q90, 0) && types_match (_q131, _q90)))
776 : : {
777 : 0 : if (integer_zerop (_q21))
778 : : {
779 : 0 : switch (TREE_CODE (_p1))
780 : : {
781 : 0 : case BIT_XOR_EXPR:
782 : 0 : {
783 : 0 : tree _q170 = TREE_OPERAND (_p1, 0);
784 : 0 : tree _q171 = TREE_OPERAND (_p1, 1);
785 : 0 : switch (TREE_CODE (_q170))
786 : : {
787 : 0 : case NEGATE_EXPR:
788 : 0 : {
789 : 0 : tree _q180 = TREE_OPERAND (_q170, 0);
790 : 0 : switch (TREE_CODE (_q180))
791 : : {
792 : 0 : CASE_CONVERT:
793 : 0 : {
794 : 0 : tree _q190 = TREE_OPERAND (_q180, 0);
795 : 0 : switch (TREE_CODE (_q190))
796 : : {
797 : 0 : case LT_EXPR:
798 : 0 : {
799 : 0 : tree _q200 = TREE_OPERAND (_q190, 0);
800 : 0 : tree _q201 = TREE_OPERAND (_q190, 1);
801 : 0 : if ((_q200 == _q70 && ! TREE_SIDE_EFFECTS (_q200)) || (operand_equal_p (_q200, _q70, 0) && types_match (_q200, _q70)))
802 : : {
803 : 0 : if (integer_zerop (_q201))
804 : : {
805 : 0 : if (tree_max_value (_q171))
806 : : {
807 : 0 : if ((_p2 == _q40 && ! TREE_SIDE_EFFECTS (_p2)) || (operand_equal_p (_p2, _q40, 0) && types_match (_p2, _q40)))
808 : : {
809 : 0 : {
810 : 0 : tree captures[3] ATTRIBUTE_UNUSED = { _q70, _q90, _q40 };
811 : 0 : if (INTEGRAL_TYPE_P (type) && !TYPE_UNSIGNED (type)
812 : : )
813 : : {
814 : 0 : {
815 : 0 : res_ops[0] = captures[0];
816 : 0 : res_ops[1] = captures[1];
817 : 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 71, __FILE__, __LINE__, false);
818 : 0 : return true;
819 : : }
820 : : }
821 : : }
822 : : }
823 : : }
824 : : }
825 : : }
826 : : break;
827 : : }
828 : : default:;
829 : : }
830 : : break;
831 : : }
832 : : default:;
833 : : }
834 : : break;
835 : : }
836 : 0 : default:;
837 : : }
838 : 0 : if (tree_max_value (_q170))
839 : : {
840 : 0 : switch (TREE_CODE (_q171))
841 : : {
842 : 0 : case NEGATE_EXPR:
843 : 0 : {
844 : 0 : tree _q190 = TREE_OPERAND (_q171, 0);
845 : 0 : switch (TREE_CODE (_q190))
846 : : {
847 : 0 : CASE_CONVERT:
848 : 0 : {
849 : 0 : tree _q200 = TREE_OPERAND (_q190, 0);
850 : 0 : switch (TREE_CODE (_q200))
851 : : {
852 : 0 : case LT_EXPR:
853 : 0 : {
854 : 0 : tree _q210 = TREE_OPERAND (_q200, 0);
855 : 0 : tree _q211 = TREE_OPERAND (_q200, 1);
856 : 0 : if ((_q210 == _q70 && ! TREE_SIDE_EFFECTS (_q210)) || (operand_equal_p (_q210, _q70, 0) && types_match (_q210, _q70)))
857 : : {
858 : 0 : if (integer_zerop (_q211))
859 : : {
860 : 0 : if ((_p2 == _q40 && ! TREE_SIDE_EFFECTS (_p2)) || (operand_equal_p (_p2, _q40, 0) && types_match (_p2, _q40)))
861 : : {
862 : 0 : {
863 : 0 : tree captures[3] ATTRIBUTE_UNUSED = { _q70, _q90, _q40 };
864 : 0 : if (INTEGRAL_TYPE_P (type) && !TYPE_UNSIGNED (type)
865 : : )
866 : : {
867 : 0 : {
868 : 0 : res_ops[0] = captures[0];
869 : 0 : res_ops[1] = captures[1];
870 : 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 71, __FILE__, __LINE__, false);
871 : 0 : return true;
872 : : }
873 : : }
874 : : }
875 : : }
876 : : }
877 : : }
878 : : break;
879 : : }
880 : : default:;
881 : : }
882 : : break;
883 : : }
884 : : default:;
885 : : }
886 : : break;
887 : : }
888 : : default:;
889 : : }
890 : : }
891 : : break;
892 : : }
893 : : default:;
894 : : }
895 : : }
896 : : }
897 : : }
898 : 0 : if ((_q130 == _q90 && ! TREE_SIDE_EFFECTS (_q130)) || (operand_equal_p (_q130, _q90, 0) && types_match (_q130, _q90)))
899 : : {
900 : 0 : if ((_q131 == _q70 && ! TREE_SIDE_EFFECTS (_q131)) || (operand_equal_p (_q131, _q70, 0) && types_match (_q131, _q70)))
901 : : {
902 : 0 : if (integer_zerop (_q21))
903 : : {
904 : 0 : switch (TREE_CODE (_p1))
905 : : {
906 : 0 : case BIT_XOR_EXPR:
907 : 0 : {
908 : 0 : tree _q170 = TREE_OPERAND (_p1, 0);
909 : 0 : tree _q171 = TREE_OPERAND (_p1, 1);
910 : 0 : switch (TREE_CODE (_q170))
911 : : {
912 : 0 : case NEGATE_EXPR:
913 : 0 : {
914 : 0 : tree _q180 = TREE_OPERAND (_q170, 0);
915 : 0 : switch (TREE_CODE (_q180))
916 : : {
917 : 0 : CASE_CONVERT:
918 : 0 : {
919 : 0 : tree _q190 = TREE_OPERAND (_q180, 0);
920 : 0 : switch (TREE_CODE (_q190))
921 : : {
922 : 0 : case LT_EXPR:
923 : 0 : {
924 : 0 : tree _q200 = TREE_OPERAND (_q190, 0);
925 : 0 : tree _q201 = TREE_OPERAND (_q190, 1);
926 : 0 : if ((_q200 == _q70 && ! TREE_SIDE_EFFECTS (_q200)) || (operand_equal_p (_q200, _q70, 0) && types_match (_q200, _q70)))
927 : : {
928 : 0 : if (integer_zerop (_q201))
929 : : {
930 : 0 : if (tree_max_value (_q171))
931 : : {
932 : 0 : if ((_p2 == _q40 && ! TREE_SIDE_EFFECTS (_p2)) || (operand_equal_p (_p2, _q40, 0) && types_match (_p2, _q40)))
933 : : {
934 : 0 : {
935 : 0 : tree captures[3] ATTRIBUTE_UNUSED = { _q70, _q90, _q40 };
936 : 0 : if (INTEGRAL_TYPE_P (type) && !TYPE_UNSIGNED (type)
937 : : )
938 : : {
939 : 0 : {
940 : 0 : res_ops[0] = captures[0];
941 : 0 : res_ops[1] = captures[1];
942 : 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 71, __FILE__, __LINE__, false);
943 : 0 : return true;
944 : : }
945 : : }
946 : : }
947 : : }
948 : : }
949 : : }
950 : : }
951 : : break;
952 : : }
953 : : default:;
954 : : }
955 : : break;
956 : : }
957 : : default:;
958 : : }
959 : : break;
960 : : }
961 : 0 : default:;
962 : : }
963 : 0 : if (tree_max_value (_q170))
964 : : {
965 : 0 : switch (TREE_CODE (_q171))
966 : : {
967 : 0 : case NEGATE_EXPR:
968 : 0 : {
969 : 0 : tree _q190 = TREE_OPERAND (_q171, 0);
970 : 0 : switch (TREE_CODE (_q190))
971 : : {
972 : 0 : CASE_CONVERT:
973 : 0 : {
974 : 0 : tree _q200 = TREE_OPERAND (_q190, 0);
975 : 0 : switch (TREE_CODE (_q200))
976 : : {
977 : 0 : case LT_EXPR:
978 : 0 : {
979 : 0 : tree _q210 = TREE_OPERAND (_q200, 0);
980 : 0 : tree _q211 = TREE_OPERAND (_q200, 1);
981 : 0 : if ((_q210 == _q70 && ! TREE_SIDE_EFFECTS (_q210)) || (operand_equal_p (_q210, _q70, 0) && types_match (_q210, _q70)))
982 : : {
983 : 0 : if (integer_zerop (_q211))
984 : : {
985 : 0 : if ((_p2 == _q40 && ! TREE_SIDE_EFFECTS (_p2)) || (operand_equal_p (_p2, _q40, 0) && types_match (_p2, _q40)))
986 : : {
987 : 0 : {
988 : 0 : tree captures[3] ATTRIBUTE_UNUSED = { _q70, _q90, _q40 };
989 : 0 : if (INTEGRAL_TYPE_P (type) && !TYPE_UNSIGNED (type)
990 : : )
991 : : {
992 : 0 : {
993 : 0 : res_ops[0] = captures[0];
994 : 0 : res_ops[1] = captures[1];
995 : 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 71, __FILE__, __LINE__, false);
996 : 0 : return true;
997 : : }
998 : : }
999 : : }
1000 : : }
1001 : : }
1002 : : }
1003 : : break;
1004 : : }
1005 : : default:;
1006 : : }
1007 : : break;
1008 : : }
1009 : : default:;
1010 : : }
1011 : : break;
1012 : : }
1013 : : default:;
1014 : : }
1015 : : }
1016 : : break;
1017 : : }
1018 : : default:;
1019 : : }
1020 : : }
1021 : : }
1022 : : }
1023 : : break;
1024 : : }
1025 : : default:;
1026 : : }
1027 : : break;
1028 : : }
1029 : : default:;
1030 : : }
1031 : : }
1032 : : }
1033 : : }
1034 : : }
1035 : : }
1036 : 0 : break;
1037 : : }
1038 : : default:;
1039 : : }
1040 : : }
1041 : : }
1042 : 0 : switch (TREE_CODE (_q41))
1043 : : {
1044 : 0 : case INTEGER_CST:
1045 : 0 : {
1046 : 0 : switch (TREE_CODE (_q31))
1047 : : {
1048 : 0 : case BIT_XOR_EXPR:
1049 : 0 : {
1050 : 0 : tree _q70 = TREE_OPERAND (_q31, 0);
1051 : 0 : tree _q71 = TREE_OPERAND (_q31, 1);
1052 : 0 : if ((_q70 == _q40 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q40, 0) && types_match (_q70, _q40)))
1053 : : {
1054 : 0 : {
1055 : 0 : tree _q71_pops[1];
1056 : 0 : if (tree_nop_convert (_q71, _q71_pops))
1057 : : {
1058 : 0 : tree _q90 = _q71_pops[0];
1059 : 0 : switch (TREE_CODE (_q90))
1060 : : {
1061 : 0 : case PLUS_EXPR:
1062 : 0 : {
1063 : 0 : tree _q100 = TREE_OPERAND (_q90, 0);
1064 : 0 : tree _q101 = TREE_OPERAND (_q90, 1);
1065 : 0 : {
1066 : 0 : tree _q100_pops[1];
1067 : 0 : if (tree_nop_convert (_q100, _q100_pops))
1068 : : {
1069 : 0 : tree _q110 = _q100_pops[0];
1070 : 0 : if ((_q110 == _q40 && ! TREE_SIDE_EFFECTS (_q110)) || (operand_equal_p (_q110, _q40, 0) && types_match (_q110, _q40)))
1071 : : {
1072 : 0 : switch (TREE_CODE (_q101))
1073 : : {
1074 : 0 : case INTEGER_CST:
1075 : 0 : {
1076 : 0 : if (integer_zerop (_q21))
1077 : : {
1078 : 0 : switch (TREE_CODE (_p1))
1079 : : {
1080 : 0 : case BIT_XOR_EXPR:
1081 : 0 : {
1082 : 0 : tree _q150 = TREE_OPERAND (_p1, 0);
1083 : 0 : tree _q151 = TREE_OPERAND (_p1, 1);
1084 : 0 : switch (TREE_CODE (_q150))
1085 : : {
1086 : 0 : case NEGATE_EXPR:
1087 : 0 : {
1088 : 0 : tree _q160 = TREE_OPERAND (_q150, 0);
1089 : 0 : switch (TREE_CODE (_q160))
1090 : : {
1091 : 0 : CASE_CONVERT:
1092 : 0 : {
1093 : 0 : tree _q170 = TREE_OPERAND (_q160, 0);
1094 : 0 : switch (TREE_CODE (_q170))
1095 : : {
1096 : 0 : case LT_EXPR:
1097 : 0 : {
1098 : 0 : tree _q180 = TREE_OPERAND (_q170, 0);
1099 : 0 : tree _q181 = TREE_OPERAND (_q170, 1);
1100 : 0 : if ((_q180 == _q40 && ! TREE_SIDE_EFFECTS (_q180)) || (operand_equal_p (_q180, _q40, 0) && types_match (_q180, _q40)))
1101 : : {
1102 : 0 : if (integer_zerop (_q181))
1103 : : {
1104 : 0 : if (tree_max_value (_q151))
1105 : : {
1106 : 0 : if ((_p2 == _q71 && ! TREE_SIDE_EFFECTS (_p2)) || (operand_equal_p (_p2, _q71, 0) && types_match (_p2, _q71)))
1107 : : {
1108 : 0 : {
1109 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q40, _q101, _q71, _q41 };
1110 : 0 : if (INTEGRAL_TYPE_P (type) && !TYPE_UNSIGNED (type)
1111 : : )
1112 : : {
1113 : 0 : if (wi::bit_and (wi::to_wide (captures[1]), wi::to_wide (captures[3])) == 0
1114 : : )
1115 : : {
1116 : 0 : {
1117 : 0 : res_ops[0] = captures[0];
1118 : 0 : res_ops[1] = captures[1];
1119 : 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 72, __FILE__, __LINE__, false);
1120 : 0 : return true;
1121 : : }
1122 : : }
1123 : : }
1124 : : }
1125 : : }
1126 : : }
1127 : : }
1128 : : }
1129 : : break;
1130 : : }
1131 : : default:;
1132 : : }
1133 : : break;
1134 : : }
1135 : : default:;
1136 : : }
1137 : : break;
1138 : : }
1139 : 0 : default:;
1140 : : }
1141 : 0 : if (tree_max_value (_q150))
1142 : : {
1143 : 0 : switch (TREE_CODE (_q151))
1144 : : {
1145 : 0 : case NEGATE_EXPR:
1146 : 0 : {
1147 : 0 : tree _q170 = TREE_OPERAND (_q151, 0);
1148 : 0 : switch (TREE_CODE (_q170))
1149 : : {
1150 : 0 : CASE_CONVERT:
1151 : 0 : {
1152 : 0 : tree _q180 = TREE_OPERAND (_q170, 0);
1153 : 0 : switch (TREE_CODE (_q180))
1154 : : {
1155 : 0 : case LT_EXPR:
1156 : 0 : {
1157 : 0 : tree _q190 = TREE_OPERAND (_q180, 0);
1158 : 0 : tree _q191 = TREE_OPERAND (_q180, 1);
1159 : 0 : if ((_q190 == _q40 && ! TREE_SIDE_EFFECTS (_q190)) || (operand_equal_p (_q190, _q40, 0) && types_match (_q190, _q40)))
1160 : : {
1161 : 0 : if (integer_zerop (_q191))
1162 : : {
1163 : 0 : if ((_p2 == _q71 && ! TREE_SIDE_EFFECTS (_p2)) || (operand_equal_p (_p2, _q71, 0) && types_match (_p2, _q71)))
1164 : : {
1165 : 0 : {
1166 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q40, _q101, _q71, _q41 };
1167 : 0 : if (INTEGRAL_TYPE_P (type) && !TYPE_UNSIGNED (type)
1168 : : )
1169 : : {
1170 : 0 : if (wi::bit_and (wi::to_wide (captures[1]), wi::to_wide (captures[3])) == 0
1171 : : )
1172 : : {
1173 : 0 : {
1174 : 0 : res_ops[0] = captures[0];
1175 : 0 : res_ops[1] = captures[1];
1176 : 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 72, __FILE__, __LINE__, false);
1177 : 0 : return true;
1178 : : }
1179 : : }
1180 : : }
1181 : : }
1182 : : }
1183 : : }
1184 : : }
1185 : : break;
1186 : : }
1187 : : default:;
1188 : : }
1189 : : break;
1190 : : }
1191 : : default:;
1192 : : }
1193 : : break;
1194 : : }
1195 : : default:;
1196 : : }
1197 : : }
1198 : : break;
1199 : : }
1200 : : default:;
1201 : : }
1202 : : }
1203 : : break;
1204 : : }
1205 : : default:;
1206 : : }
1207 : : }
1208 : : }
1209 : : }
1210 : 0 : break;
1211 : : }
1212 : : default:;
1213 : : }
1214 : : }
1215 : : }
1216 : : }
1217 : : break;
1218 : : }
1219 : : default:;
1220 : : }
1221 : : break;
1222 : : }
1223 : 0 : default:;
1224 : : }
1225 : 0 : {
1226 : 0 : tree _q41_pops[1];
1227 : 0 : if (tree_nop_convert (_q41, _q41_pops))
1228 : : {
1229 : 0 : tree _q60 = _q41_pops[0];
1230 : 0 : switch (TREE_CODE (_q60))
1231 : : {
1232 : 0 : case PLUS_EXPR:
1233 : 0 : {
1234 : 0 : tree _q70 = TREE_OPERAND (_q60, 0);
1235 : 0 : tree _q71 = TREE_OPERAND (_q60, 1);
1236 : 0 : {
1237 : 0 : tree _q70_pops[1];
1238 : 0 : if (tree_nop_convert (_q70, _q70_pops))
1239 : : {
1240 : 0 : tree _q80 = _q70_pops[0];
1241 : 0 : if ((_q80 == _q40 && ! TREE_SIDE_EFFECTS (_q80)) || (operand_equal_p (_q80, _q40, 0) && types_match (_q80, _q40)))
1242 : : {
1243 : 0 : switch (TREE_CODE (_q71))
1244 : : {
1245 : 0 : case INTEGER_CST:
1246 : 0 : {
1247 : 0 : switch (TREE_CODE (_q31))
1248 : : {
1249 : 0 : case BIT_XOR_EXPR:
1250 : 0 : {
1251 : 0 : tree _q110 = TREE_OPERAND (_q31, 0);
1252 : 0 : tree _q111 = TREE_OPERAND (_q31, 1);
1253 : 0 : if ((_q110 == _q40 && ! TREE_SIDE_EFFECTS (_q110)) || (operand_equal_p (_q110, _q40, 0) && types_match (_q110, _q40)))
1254 : : {
1255 : 0 : switch (TREE_CODE (_q111))
1256 : : {
1257 : 0 : case INTEGER_CST:
1258 : 0 : {
1259 : 0 : if (integer_zerop (_q21))
1260 : : {
1261 : 0 : switch (TREE_CODE (_p1))
1262 : : {
1263 : 0 : case BIT_XOR_EXPR:
1264 : 0 : {
1265 : 0 : tree _q150 = TREE_OPERAND (_p1, 0);
1266 : 0 : tree _q151 = TREE_OPERAND (_p1, 1);
1267 : 0 : switch (TREE_CODE (_q150))
1268 : : {
1269 : 0 : case NEGATE_EXPR:
1270 : 0 : {
1271 : 0 : tree _q160 = TREE_OPERAND (_q150, 0);
1272 : 0 : switch (TREE_CODE (_q160))
1273 : : {
1274 : 0 : CASE_CONVERT:
1275 : 0 : {
1276 : 0 : tree _q170 = TREE_OPERAND (_q160, 0);
1277 : 0 : switch (TREE_CODE (_q170))
1278 : : {
1279 : 0 : case LT_EXPR:
1280 : 0 : {
1281 : 0 : tree _q180 = TREE_OPERAND (_q170, 0);
1282 : 0 : tree _q181 = TREE_OPERAND (_q170, 1);
1283 : 0 : if ((_q180 == _q40 && ! TREE_SIDE_EFFECTS (_q180)) || (operand_equal_p (_q180, _q40, 0) && types_match (_q180, _q40)))
1284 : : {
1285 : 0 : if (integer_zerop (_q181))
1286 : : {
1287 : 0 : if (tree_max_value (_q151))
1288 : : {
1289 : 0 : if ((_p2 == _q41 && ! TREE_SIDE_EFFECTS (_p2)) || (operand_equal_p (_p2, _q41, 0) && types_match (_p2, _q41)))
1290 : : {
1291 : 0 : {
1292 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q40, _q71, _q41, _q111 };
1293 : 0 : if (INTEGRAL_TYPE_P (type) && !TYPE_UNSIGNED (type)
1294 : : )
1295 : : {
1296 : 0 : if (wi::bit_and (wi::to_wide (captures[1]), wi::to_wide (captures[3])) == 0
1297 : : )
1298 : : {
1299 : 0 : {
1300 : 0 : res_ops[0] = captures[0];
1301 : 0 : res_ops[1] = captures[1];
1302 : 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 72, __FILE__, __LINE__, false);
1303 : 0 : return true;
1304 : : }
1305 : : }
1306 : : }
1307 : : }
1308 : : }
1309 : : }
1310 : : }
1311 : : }
1312 : : break;
1313 : : }
1314 : : default:;
1315 : : }
1316 : : break;
1317 : : }
1318 : : default:;
1319 : : }
1320 : : break;
1321 : : }
1322 : 0 : default:;
1323 : : }
1324 : 0 : if (tree_max_value (_q150))
1325 : : {
1326 : 0 : switch (TREE_CODE (_q151))
1327 : : {
1328 : 0 : case NEGATE_EXPR:
1329 : 0 : {
1330 : 0 : tree _q170 = TREE_OPERAND (_q151, 0);
1331 : 0 : switch (TREE_CODE (_q170))
1332 : : {
1333 : 0 : CASE_CONVERT:
1334 : 0 : {
1335 : 0 : tree _q180 = TREE_OPERAND (_q170, 0);
1336 : 0 : switch (TREE_CODE (_q180))
1337 : : {
1338 : 0 : case LT_EXPR:
1339 : 0 : {
1340 : 0 : tree _q190 = TREE_OPERAND (_q180, 0);
1341 : 0 : tree _q191 = TREE_OPERAND (_q180, 1);
1342 : 0 : if ((_q190 == _q40 && ! TREE_SIDE_EFFECTS (_q190)) || (operand_equal_p (_q190, _q40, 0) && types_match (_q190, _q40)))
1343 : : {
1344 : 0 : if (integer_zerop (_q191))
1345 : : {
1346 : 0 : if ((_p2 == _q41 && ! TREE_SIDE_EFFECTS (_p2)) || (operand_equal_p (_p2, _q41, 0) && types_match (_p2, _q41)))
1347 : : {
1348 : 0 : {
1349 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q40, _q71, _q41, _q111 };
1350 : 0 : if (INTEGRAL_TYPE_P (type) && !TYPE_UNSIGNED (type)
1351 : : )
1352 : : {
1353 : 0 : if (wi::bit_and (wi::to_wide (captures[1]), wi::to_wide (captures[3])) == 0
1354 : : )
1355 : : {
1356 : 0 : {
1357 : 0 : res_ops[0] = captures[0];
1358 : 0 : res_ops[1] = captures[1];
1359 : 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 72, __FILE__, __LINE__, false);
1360 : 0 : return true;
1361 : : }
1362 : : }
1363 : : }
1364 : : }
1365 : : }
1366 : : }
1367 : : }
1368 : : break;
1369 : : }
1370 : : default:;
1371 : : }
1372 : : break;
1373 : : }
1374 : : default:;
1375 : : }
1376 : : break;
1377 : : }
1378 : : default:;
1379 : : }
1380 : : }
1381 : : break;
1382 : : }
1383 : : default:;
1384 : : }
1385 : : }
1386 : : break;
1387 : : }
1388 : : default:;
1389 : : }
1390 : : }
1391 : 0 : switch (TREE_CODE (_q110))
1392 : : {
1393 : 0 : case INTEGER_CST:
1394 : 0 : {
1395 : 0 : if ((_q111 == _q40 && ! TREE_SIDE_EFFECTS (_q111)) || (operand_equal_p (_q111, _q40, 0) && types_match (_q111, _q40)))
1396 : : {
1397 : 0 : if (integer_zerop (_q21))
1398 : : {
1399 : 0 : switch (TREE_CODE (_p1))
1400 : : {
1401 : 0 : case BIT_XOR_EXPR:
1402 : 0 : {
1403 : 0 : tree _q150 = TREE_OPERAND (_p1, 0);
1404 : 0 : tree _q151 = TREE_OPERAND (_p1, 1);
1405 : 0 : switch (TREE_CODE (_q150))
1406 : : {
1407 : 0 : case NEGATE_EXPR:
1408 : 0 : {
1409 : 0 : tree _q160 = TREE_OPERAND (_q150, 0);
1410 : 0 : switch (TREE_CODE (_q160))
1411 : : {
1412 : 0 : CASE_CONVERT:
1413 : 0 : {
1414 : 0 : tree _q170 = TREE_OPERAND (_q160, 0);
1415 : 0 : switch (TREE_CODE (_q170))
1416 : : {
1417 : 0 : case LT_EXPR:
1418 : 0 : {
1419 : 0 : tree _q180 = TREE_OPERAND (_q170, 0);
1420 : 0 : tree _q181 = TREE_OPERAND (_q170, 1);
1421 : 0 : if ((_q180 == _q40 && ! TREE_SIDE_EFFECTS (_q180)) || (operand_equal_p (_q180, _q40, 0) && types_match (_q180, _q40)))
1422 : : {
1423 : 0 : if (integer_zerop (_q181))
1424 : : {
1425 : 0 : if (tree_max_value (_q151))
1426 : : {
1427 : 0 : if ((_p2 == _q41 && ! TREE_SIDE_EFFECTS (_p2)) || (operand_equal_p (_p2, _q41, 0) && types_match (_p2, _q41)))
1428 : : {
1429 : 0 : {
1430 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q40, _q71, _q41, _q110 };
1431 : 0 : if (INTEGRAL_TYPE_P (type) && !TYPE_UNSIGNED (type)
1432 : : )
1433 : : {
1434 : 0 : if (wi::bit_and (wi::to_wide (captures[1]), wi::to_wide (captures[3])) == 0
1435 : : )
1436 : : {
1437 : 0 : {
1438 : 0 : res_ops[0] = captures[0];
1439 : 0 : res_ops[1] = captures[1];
1440 : 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 72, __FILE__, __LINE__, false);
1441 : 0 : return true;
1442 : : }
1443 : : }
1444 : : }
1445 : : }
1446 : : }
1447 : : }
1448 : : }
1449 : : }
1450 : : break;
1451 : : }
1452 : : default:;
1453 : : }
1454 : : break;
1455 : : }
1456 : : default:;
1457 : : }
1458 : : break;
1459 : : }
1460 : 0 : default:;
1461 : : }
1462 : 0 : if (tree_max_value (_q150))
1463 : : {
1464 : 0 : switch (TREE_CODE (_q151))
1465 : : {
1466 : 0 : case NEGATE_EXPR:
1467 : 0 : {
1468 : 0 : tree _q170 = TREE_OPERAND (_q151, 0);
1469 : 0 : switch (TREE_CODE (_q170))
1470 : : {
1471 : 0 : CASE_CONVERT:
1472 : 0 : {
1473 : 0 : tree _q180 = TREE_OPERAND (_q170, 0);
1474 : 0 : switch (TREE_CODE (_q180))
1475 : : {
1476 : 0 : case LT_EXPR:
1477 : 0 : {
1478 : 0 : tree _q190 = TREE_OPERAND (_q180, 0);
1479 : 0 : tree _q191 = TREE_OPERAND (_q180, 1);
1480 : 0 : if ((_q190 == _q40 && ! TREE_SIDE_EFFECTS (_q190)) || (operand_equal_p (_q190, _q40, 0) && types_match (_q190, _q40)))
1481 : : {
1482 : 0 : if (integer_zerop (_q191))
1483 : : {
1484 : 0 : if ((_p2 == _q41 && ! TREE_SIDE_EFFECTS (_p2)) || (operand_equal_p (_p2, _q41, 0) && types_match (_p2, _q41)))
1485 : : {
1486 : 0 : {
1487 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q40, _q71, _q41, _q110 };
1488 : 0 : if (INTEGRAL_TYPE_P (type) && !TYPE_UNSIGNED (type)
1489 : : )
1490 : : {
1491 : 0 : if (wi::bit_and (wi::to_wide (captures[1]), wi::to_wide (captures[3])) == 0
1492 : : )
1493 : : {
1494 : 0 : {
1495 : 0 : res_ops[0] = captures[0];
1496 : 0 : res_ops[1] = captures[1];
1497 : 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 72, __FILE__, __LINE__, false);
1498 : 0 : return true;
1499 : : }
1500 : : }
1501 : : }
1502 : : }
1503 : : }
1504 : : }
1505 : : }
1506 : : break;
1507 : : }
1508 : : default:;
1509 : : }
1510 : : break;
1511 : : }
1512 : : default:;
1513 : : }
1514 : : break;
1515 : : }
1516 : : default:;
1517 : : }
1518 : : }
1519 : : break;
1520 : : }
1521 : : default:;
1522 : : }
1523 : : }
1524 : : }
1525 : : break;
1526 : : }
1527 : : default:;
1528 : : }
1529 : : break;
1530 : : }
1531 : : default:;
1532 : : }
1533 : : break;
1534 : : }
1535 : : default:;
1536 : : }
1537 : : }
1538 : : }
1539 : : }
1540 : 0 : break;
1541 : : }
1542 : : default:;
1543 : : }
1544 : : }
1545 : : }
1546 : 0 : switch (TREE_CODE (_q40))
1547 : : {
1548 : 0 : case INTEGER_CST:
1549 : 0 : {
1550 : 0 : switch (TREE_CODE (_q31))
1551 : : {
1552 : 0 : case BIT_XOR_EXPR:
1553 : 0 : {
1554 : 0 : tree _q70 = TREE_OPERAND (_q31, 0);
1555 : 0 : tree _q71 = TREE_OPERAND (_q31, 1);
1556 : 0 : if ((_q70 == _q41 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q41, 0) && types_match (_q70, _q41)))
1557 : : {
1558 : 0 : {
1559 : 0 : tree _q71_pops[1];
1560 : 0 : if (tree_nop_convert (_q71, _q71_pops))
1561 : : {
1562 : 0 : tree _q90 = _q71_pops[0];
1563 : 0 : switch (TREE_CODE (_q90))
1564 : : {
1565 : 0 : case PLUS_EXPR:
1566 : 0 : {
1567 : 0 : tree _q100 = TREE_OPERAND (_q90, 0);
1568 : 0 : tree _q101 = TREE_OPERAND (_q90, 1);
1569 : 0 : {
1570 : 0 : tree _q100_pops[1];
1571 : 0 : if (tree_nop_convert (_q100, _q100_pops))
1572 : : {
1573 : 0 : tree _q110 = _q100_pops[0];
1574 : 0 : if ((_q110 == _q41 && ! TREE_SIDE_EFFECTS (_q110)) || (operand_equal_p (_q110, _q41, 0) && types_match (_q110, _q41)))
1575 : : {
1576 : 0 : switch (TREE_CODE (_q101))
1577 : : {
1578 : 0 : case INTEGER_CST:
1579 : 0 : {
1580 : 0 : if (integer_zerop (_q21))
1581 : : {
1582 : 0 : switch (TREE_CODE (_p1))
1583 : : {
1584 : 0 : case BIT_XOR_EXPR:
1585 : 0 : {
1586 : 0 : tree _q150 = TREE_OPERAND (_p1, 0);
1587 : 0 : tree _q151 = TREE_OPERAND (_p1, 1);
1588 : 0 : switch (TREE_CODE (_q150))
1589 : : {
1590 : 0 : case NEGATE_EXPR:
1591 : 0 : {
1592 : 0 : tree _q160 = TREE_OPERAND (_q150, 0);
1593 : 0 : switch (TREE_CODE (_q160))
1594 : : {
1595 : 0 : CASE_CONVERT:
1596 : 0 : {
1597 : 0 : tree _q170 = TREE_OPERAND (_q160, 0);
1598 : 0 : switch (TREE_CODE (_q170))
1599 : : {
1600 : 0 : case LT_EXPR:
1601 : 0 : {
1602 : 0 : tree _q180 = TREE_OPERAND (_q170, 0);
1603 : 0 : tree _q181 = TREE_OPERAND (_q170, 1);
1604 : 0 : if ((_q180 == _q41 && ! TREE_SIDE_EFFECTS (_q180)) || (operand_equal_p (_q180, _q41, 0) && types_match (_q180, _q41)))
1605 : : {
1606 : 0 : if (integer_zerop (_q181))
1607 : : {
1608 : 0 : if (tree_max_value (_q151))
1609 : : {
1610 : 0 : if ((_p2 == _q71 && ! TREE_SIDE_EFFECTS (_p2)) || (operand_equal_p (_p2, _q71, 0) && types_match (_p2, _q71)))
1611 : : {
1612 : 0 : {
1613 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q41, _q101, _q71, _q40 };
1614 : 0 : if (INTEGRAL_TYPE_P (type) && !TYPE_UNSIGNED (type)
1615 : : )
1616 : : {
1617 : 0 : if (wi::bit_and (wi::to_wide (captures[1]), wi::to_wide (captures[3])) == 0
1618 : : )
1619 : : {
1620 : 0 : {
1621 : 0 : res_ops[0] = captures[0];
1622 : 0 : res_ops[1] = captures[1];
1623 : 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 72, __FILE__, __LINE__, false);
1624 : 0 : return true;
1625 : : }
1626 : : }
1627 : : }
1628 : : }
1629 : : }
1630 : : }
1631 : : }
1632 : : }
1633 : : break;
1634 : : }
1635 : : default:;
1636 : : }
1637 : : break;
1638 : : }
1639 : : default:;
1640 : : }
1641 : : break;
1642 : : }
1643 : 0 : default:;
1644 : : }
1645 : 0 : if (tree_max_value (_q150))
1646 : : {
1647 : 0 : switch (TREE_CODE (_q151))
1648 : : {
1649 : 0 : case NEGATE_EXPR:
1650 : 0 : {
1651 : 0 : tree _q170 = TREE_OPERAND (_q151, 0);
1652 : 0 : switch (TREE_CODE (_q170))
1653 : : {
1654 : 0 : CASE_CONVERT:
1655 : 0 : {
1656 : 0 : tree _q180 = TREE_OPERAND (_q170, 0);
1657 : 0 : switch (TREE_CODE (_q180))
1658 : : {
1659 : 0 : case LT_EXPR:
1660 : 0 : {
1661 : 0 : tree _q190 = TREE_OPERAND (_q180, 0);
1662 : 0 : tree _q191 = TREE_OPERAND (_q180, 1);
1663 : 0 : if ((_q190 == _q41 && ! TREE_SIDE_EFFECTS (_q190)) || (operand_equal_p (_q190, _q41, 0) && types_match (_q190, _q41)))
1664 : : {
1665 : 0 : if (integer_zerop (_q191))
1666 : : {
1667 : 0 : if ((_p2 == _q71 && ! TREE_SIDE_EFFECTS (_p2)) || (operand_equal_p (_p2, _q71, 0) && types_match (_p2, _q71)))
1668 : : {
1669 : 0 : {
1670 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q41, _q101, _q71, _q40 };
1671 : 0 : if (INTEGRAL_TYPE_P (type) && !TYPE_UNSIGNED (type)
1672 : : )
1673 : : {
1674 : 0 : if (wi::bit_and (wi::to_wide (captures[1]), wi::to_wide (captures[3])) == 0
1675 : : )
1676 : : {
1677 : 0 : {
1678 : 0 : res_ops[0] = captures[0];
1679 : 0 : res_ops[1] = captures[1];
1680 : 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 72, __FILE__, __LINE__, false);
1681 : 0 : return true;
1682 : : }
1683 : : }
1684 : : }
1685 : : }
1686 : : }
1687 : : }
1688 : : }
1689 : : break;
1690 : : }
1691 : : default:;
1692 : : }
1693 : : break;
1694 : : }
1695 : : default:;
1696 : : }
1697 : : break;
1698 : : }
1699 : : default:;
1700 : : }
1701 : : }
1702 : : break;
1703 : : }
1704 : : default:;
1705 : : }
1706 : : }
1707 : : break;
1708 : : }
1709 : : default:;
1710 : : }
1711 : : }
1712 : : }
1713 : : }
1714 : 0 : break;
1715 : : }
1716 : : default:;
1717 : : }
1718 : : }
1719 : : }
1720 : : }
1721 : 0 : {
1722 : 0 : tree _q70_pops[1];
1723 : 0 : if (tree_nop_convert (_q70, _q70_pops))
1724 : : {
1725 : 0 : tree _q80 = _q70_pops[0];
1726 : 0 : switch (TREE_CODE (_q80))
1727 : : {
1728 : 0 : case PLUS_EXPR:
1729 : 0 : {
1730 : 0 : tree _q90 = TREE_OPERAND (_q80, 0);
1731 : 0 : tree _q91 = TREE_OPERAND (_q80, 1);
1732 : 0 : {
1733 : 0 : tree _q90_pops[1];
1734 : 0 : if (tree_nop_convert (_q90, _q90_pops))
1735 : : {
1736 : 0 : tree _q100 = _q90_pops[0];
1737 : 0 : if ((_q100 == _q41 && ! TREE_SIDE_EFFECTS (_q100)) || (operand_equal_p (_q100, _q41, 0) && types_match (_q100, _q41)))
1738 : : {
1739 : 0 : switch (TREE_CODE (_q91))
1740 : : {
1741 : 0 : case INTEGER_CST:
1742 : 0 : {
1743 : 0 : if ((_q71 == _q41 && ! TREE_SIDE_EFFECTS (_q71)) || (operand_equal_p (_q71, _q41, 0) && types_match (_q71, _q41)))
1744 : : {
1745 : 0 : if (integer_zerop (_q21))
1746 : : {
1747 : 0 : switch (TREE_CODE (_p1))
1748 : : {
1749 : 0 : case BIT_XOR_EXPR:
1750 : 0 : {
1751 : 0 : tree _q150 = TREE_OPERAND (_p1, 0);
1752 : 0 : tree _q151 = TREE_OPERAND (_p1, 1);
1753 : 0 : switch (TREE_CODE (_q150))
1754 : : {
1755 : 0 : case NEGATE_EXPR:
1756 : 0 : {
1757 : 0 : tree _q160 = TREE_OPERAND (_q150, 0);
1758 : 0 : switch (TREE_CODE (_q160))
1759 : : {
1760 : 0 : CASE_CONVERT:
1761 : 0 : {
1762 : 0 : tree _q170 = TREE_OPERAND (_q160, 0);
1763 : 0 : switch (TREE_CODE (_q170))
1764 : : {
1765 : 0 : case LT_EXPR:
1766 : 0 : {
1767 : 0 : tree _q180 = TREE_OPERAND (_q170, 0);
1768 : 0 : tree _q181 = TREE_OPERAND (_q170, 1);
1769 : 0 : if ((_q180 == _q41 && ! TREE_SIDE_EFFECTS (_q180)) || (operand_equal_p (_q180, _q41, 0) && types_match (_q180, _q41)))
1770 : : {
1771 : 0 : if (integer_zerop (_q181))
1772 : : {
1773 : 0 : if (tree_max_value (_q151))
1774 : : {
1775 : 0 : if ((_p2 == _q70 && ! TREE_SIDE_EFFECTS (_p2)) || (operand_equal_p (_p2, _q70, 0) && types_match (_p2, _q70)))
1776 : : {
1777 : 0 : {
1778 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q41, _q91, _q70, _q40 };
1779 : 0 : if (INTEGRAL_TYPE_P (type) && !TYPE_UNSIGNED (type)
1780 : : )
1781 : : {
1782 : 0 : if (wi::bit_and (wi::to_wide (captures[1]), wi::to_wide (captures[3])) == 0
1783 : : )
1784 : : {
1785 : 0 : {
1786 : 0 : res_ops[0] = captures[0];
1787 : 0 : res_ops[1] = captures[1];
1788 : 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 72, __FILE__, __LINE__, false);
1789 : 0 : return true;
1790 : : }
1791 : : }
1792 : : }
1793 : : }
1794 : : }
1795 : : }
1796 : : }
1797 : : }
1798 : : break;
1799 : : }
1800 : : default:;
1801 : : }
1802 : : break;
1803 : : }
1804 : : default:;
1805 : : }
1806 : : break;
1807 : : }
1808 : 0 : default:;
1809 : : }
1810 : 0 : if (tree_max_value (_q150))
1811 : : {
1812 : 0 : switch (TREE_CODE (_q151))
1813 : : {
1814 : 0 : case NEGATE_EXPR:
1815 : 0 : {
1816 : 0 : tree _q170 = TREE_OPERAND (_q151, 0);
1817 : 0 : switch (TREE_CODE (_q170))
1818 : : {
1819 : 0 : CASE_CONVERT:
1820 : 0 : {
1821 : 0 : tree _q180 = TREE_OPERAND (_q170, 0);
1822 : 0 : switch (TREE_CODE (_q180))
1823 : : {
1824 : 0 : case LT_EXPR:
1825 : 0 : {
1826 : 0 : tree _q190 = TREE_OPERAND (_q180, 0);
1827 : 0 : tree _q191 = TREE_OPERAND (_q180, 1);
1828 : 0 : if ((_q190 == _q41 && ! TREE_SIDE_EFFECTS (_q190)) || (operand_equal_p (_q190, _q41, 0) && types_match (_q190, _q41)))
1829 : : {
1830 : 0 : if (integer_zerop (_q191))
1831 : : {
1832 : 0 : if ((_p2 == _q70 && ! TREE_SIDE_EFFECTS (_p2)) || (operand_equal_p (_p2, _q70, 0) && types_match (_p2, _q70)))
1833 : : {
1834 : 0 : {
1835 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q41, _q91, _q70, _q40 };
1836 : 0 : if (INTEGRAL_TYPE_P (type) && !TYPE_UNSIGNED (type)
1837 : : )
1838 : : {
1839 : 0 : if (wi::bit_and (wi::to_wide (captures[1]), wi::to_wide (captures[3])) == 0
1840 : : )
1841 : : {
1842 : 0 : {
1843 : 0 : res_ops[0] = captures[0];
1844 : 0 : res_ops[1] = captures[1];
1845 : 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 72, __FILE__, __LINE__, false);
1846 : 0 : return true;
1847 : : }
1848 : : }
1849 : : }
1850 : : }
1851 : : }
1852 : : }
1853 : : }
1854 : : break;
1855 : : }
1856 : : default:;
1857 : : }
1858 : : break;
1859 : : }
1860 : : default:;
1861 : : }
1862 : : break;
1863 : : }
1864 : : default:;
1865 : : }
1866 : : }
1867 : : break;
1868 : : }
1869 : : default:;
1870 : : }
1871 : : }
1872 : : }
1873 : : break;
1874 : : }
1875 : : default:;
1876 : : }
1877 : : }
1878 : : }
1879 : : }
1880 : 0 : break;
1881 : : }
1882 : : default:;
1883 : : }
1884 : : }
1885 : : }
1886 : 0 : break;
1887 : : }
1888 : : default:;
1889 : : }
1890 : : break;
1891 : : }
1892 : 0 : default:;
1893 : : }
1894 : 0 : switch (TREE_CODE (_q41))
1895 : : {
1896 : 0 : case INTEGER_CST:
1897 : 0 : {
1898 : 0 : switch (TREE_CODE (_q31))
1899 : : {
1900 : 0 : case BIT_XOR_EXPR:
1901 : 0 : {
1902 : 0 : tree _q70 = TREE_OPERAND (_q31, 0);
1903 : 0 : tree _q71 = TREE_OPERAND (_q31, 1);
1904 : 0 : {
1905 : 0 : tree _q70_pops[1];
1906 : 0 : if (tree_nop_convert (_q70, _q70_pops))
1907 : : {
1908 : 0 : tree _q80 = _q70_pops[0];
1909 : 0 : switch (TREE_CODE (_q80))
1910 : : {
1911 : 0 : case PLUS_EXPR:
1912 : 0 : {
1913 : 0 : tree _q90 = TREE_OPERAND (_q80, 0);
1914 : 0 : tree _q91 = TREE_OPERAND (_q80, 1);
1915 : 0 : {
1916 : 0 : tree _q90_pops[1];
1917 : 0 : if (tree_nop_convert (_q90, _q90_pops))
1918 : : {
1919 : 0 : tree _q100 = _q90_pops[0];
1920 : 0 : if ((_q100 == _q40 && ! TREE_SIDE_EFFECTS (_q100)) || (operand_equal_p (_q100, _q40, 0) && types_match (_q100, _q40)))
1921 : : {
1922 : 0 : switch (TREE_CODE (_q91))
1923 : : {
1924 : 0 : case INTEGER_CST:
1925 : 0 : {
1926 : 0 : if ((_q71 == _q40 && ! TREE_SIDE_EFFECTS (_q71)) || (operand_equal_p (_q71, _q40, 0) && types_match (_q71, _q40)))
1927 : : {
1928 : 0 : if (integer_zerop (_q21))
1929 : : {
1930 : 0 : switch (TREE_CODE (_p1))
1931 : : {
1932 : 0 : case BIT_XOR_EXPR:
1933 : 0 : {
1934 : 0 : tree _q150 = TREE_OPERAND (_p1, 0);
1935 : 0 : tree _q151 = TREE_OPERAND (_p1, 1);
1936 : 0 : switch (TREE_CODE (_q150))
1937 : : {
1938 : 0 : case NEGATE_EXPR:
1939 : 0 : {
1940 : 0 : tree _q160 = TREE_OPERAND (_q150, 0);
1941 : 0 : switch (TREE_CODE (_q160))
1942 : : {
1943 : 0 : CASE_CONVERT:
1944 : 0 : {
1945 : 0 : tree _q170 = TREE_OPERAND (_q160, 0);
1946 : 0 : switch (TREE_CODE (_q170))
1947 : : {
1948 : 0 : case LT_EXPR:
1949 : 0 : {
1950 : 0 : tree _q180 = TREE_OPERAND (_q170, 0);
1951 : 0 : tree _q181 = TREE_OPERAND (_q170, 1);
1952 : 0 : if ((_q180 == _q40 && ! TREE_SIDE_EFFECTS (_q180)) || (operand_equal_p (_q180, _q40, 0) && types_match (_q180, _q40)))
1953 : : {
1954 : 0 : if (integer_zerop (_q181))
1955 : : {
1956 : 0 : if (tree_max_value (_q151))
1957 : : {
1958 : 0 : if ((_p2 == _q70 && ! TREE_SIDE_EFFECTS (_p2)) || (operand_equal_p (_p2, _q70, 0) && types_match (_p2, _q70)))
1959 : : {
1960 : 0 : {
1961 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q40, _q91, _q70, _q41 };
1962 : 0 : if (INTEGRAL_TYPE_P (type) && !TYPE_UNSIGNED (type)
1963 : : )
1964 : : {
1965 : 0 : if (wi::bit_and (wi::to_wide (captures[1]), wi::to_wide (captures[3])) == 0
1966 : : )
1967 : : {
1968 : 0 : {
1969 : 0 : res_ops[0] = captures[0];
1970 : 0 : res_ops[1] = captures[1];
1971 : 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 72, __FILE__, __LINE__, false);
1972 : 0 : return true;
1973 : : }
1974 : : }
1975 : : }
1976 : : }
1977 : : }
1978 : : }
1979 : : }
1980 : : }
1981 : : break;
1982 : : }
1983 : : default:;
1984 : : }
1985 : : break;
1986 : : }
1987 : : default:;
1988 : : }
1989 : : break;
1990 : : }
1991 : 0 : default:;
1992 : : }
1993 : 0 : if (tree_max_value (_q150))
1994 : : {
1995 : 0 : switch (TREE_CODE (_q151))
1996 : : {
1997 : 0 : case NEGATE_EXPR:
1998 : 0 : {
1999 : 0 : tree _q170 = TREE_OPERAND (_q151, 0);
2000 : 0 : switch (TREE_CODE (_q170))
2001 : : {
2002 : 0 : CASE_CONVERT:
2003 : 0 : {
2004 : 0 : tree _q180 = TREE_OPERAND (_q170, 0);
2005 : 0 : switch (TREE_CODE (_q180))
2006 : : {
2007 : 0 : case LT_EXPR:
2008 : 0 : {
2009 : 0 : tree _q190 = TREE_OPERAND (_q180, 0);
2010 : 0 : tree _q191 = TREE_OPERAND (_q180, 1);
2011 : 0 : if ((_q190 == _q40 && ! TREE_SIDE_EFFECTS (_q190)) || (operand_equal_p (_q190, _q40, 0) && types_match (_q190, _q40)))
2012 : : {
2013 : 0 : if (integer_zerop (_q191))
2014 : : {
2015 : 0 : if ((_p2 == _q70 && ! TREE_SIDE_EFFECTS (_p2)) || (operand_equal_p (_p2, _q70, 0) && types_match (_p2, _q70)))
2016 : : {
2017 : 0 : {
2018 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q40, _q91, _q70, _q41 };
2019 : 0 : if (INTEGRAL_TYPE_P (type) && !TYPE_UNSIGNED (type)
2020 : : )
2021 : : {
2022 : 0 : if (wi::bit_and (wi::to_wide (captures[1]), wi::to_wide (captures[3])) == 0
2023 : : )
2024 : : {
2025 : 0 : {
2026 : 0 : res_ops[0] = captures[0];
2027 : 0 : res_ops[1] = captures[1];
2028 : 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 72, __FILE__, __LINE__, false);
2029 : 0 : return true;
2030 : : }
2031 : : }
2032 : : }
2033 : : }
2034 : : }
2035 : : }
2036 : : }
2037 : : break;
2038 : : }
2039 : : default:;
2040 : : }
2041 : : break;
2042 : : }
2043 : : default:;
2044 : : }
2045 : : break;
2046 : : }
2047 : : default:;
2048 : : }
2049 : : }
2050 : : break;
2051 : : }
2052 : : default:;
2053 : : }
2054 : : }
2055 : : }
2056 : : break;
2057 : : }
2058 : : default:;
2059 : : }
2060 : : }
2061 : : }
2062 : : }
2063 : 0 : break;
2064 : : }
2065 : : default:;
2066 : : }
2067 : : }
2068 : : }
2069 : 0 : break;
2070 : : }
2071 : : default:;
2072 : : }
2073 : : break;
2074 : : }
2075 : : default:;
2076 : : }
2077 : : break;
2078 : : }
2079 : 0 : case BIT_NOT_EXPR:
2080 : 0 : {
2081 : 0 : tree _q40 = TREE_OPERAND (_q30, 0);
2082 : 0 : switch (TREE_CODE (_q40))
2083 : : {
2084 : 0 : case BIT_XOR_EXPR:
2085 : 0 : {
2086 : 0 : tree _q50 = TREE_OPERAND (_q40, 0);
2087 : 0 : tree _q51 = TREE_OPERAND (_q40, 1);
2088 : 0 : switch (TREE_CODE (_q31))
2089 : : {
2090 : 0 : case BIT_XOR_EXPR:
2091 : 0 : {
2092 : 0 : tree _q80 = TREE_OPERAND (_q31, 0);
2093 : 0 : tree _q81 = TREE_OPERAND (_q31, 1);
2094 : 0 : if ((_q80 == _q50 && ! TREE_SIDE_EFFECTS (_q80)) || (operand_equal_p (_q80, _q50, 0) && types_match (_q80, _q50)))
2095 : : {
2096 : 0 : {
2097 : 0 : tree _q81_pops[1];
2098 : 0 : if (tree_nop_convert (_q81, _q81_pops))
2099 : : {
2100 : 0 : tree _q100 = _q81_pops[0];
2101 : 0 : switch (TREE_CODE (_q100))
2102 : : {
2103 : 0 : case PLUS_EXPR:
2104 : 0 : {
2105 : 0 : tree _q110 = TREE_OPERAND (_q100, 0);
2106 : 0 : tree _q111 = TREE_OPERAND (_q100, 1);
2107 : 0 : {
2108 : 0 : tree _q110_pops[1];
2109 : 0 : if (tree_nop_convert (_q110, _q110_pops))
2110 : : {
2111 : 0 : tree _q120 = _q110_pops[0];
2112 : 0 : if ((_q120 == _q50 && ! TREE_SIDE_EFFECTS (_q120)) || (operand_equal_p (_q120, _q50, 0) && types_match (_q120, _q50)))
2113 : : {
2114 : 0 : {
2115 : 0 : tree _q111_pops[1];
2116 : 0 : if (tree_nop_convert (_q111, _q111_pops))
2117 : : {
2118 : 0 : tree _q140 = _q111_pops[0];
2119 : 0 : if ((_q140 == _q51 && ! TREE_SIDE_EFFECTS (_q140)) || (operand_equal_p (_q140, _q51, 0) && types_match (_q140, _q51)))
2120 : : {
2121 : 0 : if (integer_zerop (_q21))
2122 : : {
2123 : 0 : switch (TREE_CODE (_p1))
2124 : : {
2125 : 0 : case BIT_XOR_EXPR:
2126 : 0 : {
2127 : 0 : tree _q170 = TREE_OPERAND (_p1, 0);
2128 : 0 : tree _q171 = TREE_OPERAND (_p1, 1);
2129 : 0 : switch (TREE_CODE (_q170))
2130 : : {
2131 : 0 : case NEGATE_EXPR:
2132 : 0 : {
2133 : 0 : tree _q180 = TREE_OPERAND (_q170, 0);
2134 : 0 : switch (TREE_CODE (_q180))
2135 : : {
2136 : 0 : CASE_CONVERT:
2137 : 0 : {
2138 : 0 : tree _q190 = TREE_OPERAND (_q180, 0);
2139 : 0 : switch (TREE_CODE (_q190))
2140 : : {
2141 : 0 : case LT_EXPR:
2142 : 0 : {
2143 : 0 : tree _q200 = TREE_OPERAND (_q190, 0);
2144 : 0 : tree _q201 = TREE_OPERAND (_q190, 1);
2145 : 0 : if ((_q200 == _q50 && ! TREE_SIDE_EFFECTS (_q200)) || (operand_equal_p (_q200, _q50, 0) && types_match (_q200, _q50)))
2146 : : {
2147 : 0 : if (integer_zerop (_q201))
2148 : : {
2149 : 0 : if (tree_max_value (_q171))
2150 : : {
2151 : 0 : if ((_p2 == _q81 && ! TREE_SIDE_EFFECTS (_p2)) || (operand_equal_p (_p2, _q81, 0) && types_match (_p2, _q81)))
2152 : : {
2153 : 0 : {
2154 : 0 : tree captures[3] ATTRIBUTE_UNUSED = { _q50, _q51, _q81 };
2155 : 0 : if (INTEGRAL_TYPE_P (type) && !TYPE_UNSIGNED (type)
2156 : : )
2157 : : {
2158 : 0 : {
2159 : 0 : res_ops[0] = captures[0];
2160 : 0 : res_ops[1] = captures[1];
2161 : 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 71, __FILE__, __LINE__, false);
2162 : 0 : return true;
2163 : : }
2164 : : }
2165 : : }
2166 : : }
2167 : : }
2168 : : }
2169 : : }
2170 : : break;
2171 : : }
2172 : : default:;
2173 : : }
2174 : : break;
2175 : : }
2176 : : default:;
2177 : : }
2178 : : break;
2179 : : }
2180 : 0 : default:;
2181 : : }
2182 : 0 : if (tree_max_value (_q170))
2183 : : {
2184 : 0 : switch (TREE_CODE (_q171))
2185 : : {
2186 : 0 : case NEGATE_EXPR:
2187 : 0 : {
2188 : 0 : tree _q190 = TREE_OPERAND (_q171, 0);
2189 : 0 : switch (TREE_CODE (_q190))
2190 : : {
2191 : 0 : CASE_CONVERT:
2192 : 0 : {
2193 : 0 : tree _q200 = TREE_OPERAND (_q190, 0);
2194 : 0 : switch (TREE_CODE (_q200))
2195 : : {
2196 : 0 : case LT_EXPR:
2197 : 0 : {
2198 : 0 : tree _q210 = TREE_OPERAND (_q200, 0);
2199 : 0 : tree _q211 = TREE_OPERAND (_q200, 1);
2200 : 0 : if ((_q210 == _q50 && ! TREE_SIDE_EFFECTS (_q210)) || (operand_equal_p (_q210, _q50, 0) && types_match (_q210, _q50)))
2201 : : {
2202 : 0 : if (integer_zerop (_q211))
2203 : : {
2204 : 0 : if ((_p2 == _q81 && ! TREE_SIDE_EFFECTS (_p2)) || (operand_equal_p (_p2, _q81, 0) && types_match (_p2, _q81)))
2205 : : {
2206 : 0 : {
2207 : 0 : tree captures[3] ATTRIBUTE_UNUSED = { _q50, _q51, _q81 };
2208 : 0 : if (INTEGRAL_TYPE_P (type) && !TYPE_UNSIGNED (type)
2209 : : )
2210 : : {
2211 : 0 : {
2212 : 0 : res_ops[0] = captures[0];
2213 : 0 : res_ops[1] = captures[1];
2214 : 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 71, __FILE__, __LINE__, false);
2215 : 0 : return true;
2216 : : }
2217 : : }
2218 : : }
2219 : : }
2220 : : }
2221 : : }
2222 : : break;
2223 : : }
2224 : : default:;
2225 : : }
2226 : : break;
2227 : : }
2228 : : default:;
2229 : : }
2230 : : break;
2231 : : }
2232 : : default:;
2233 : : }
2234 : : }
2235 : : break;
2236 : : }
2237 : : default:;
2238 : : }
2239 : : }
2240 : : }
2241 : : }
2242 : : }
2243 : : }
2244 : : }
2245 : : }
2246 : 0 : break;
2247 : : }
2248 : : default:;
2249 : : }
2250 : : }
2251 : : }
2252 : : }
2253 : 0 : if ((_q80 == _q51 && ! TREE_SIDE_EFFECTS (_q80)) || (operand_equal_p (_q80, _q51, 0) && types_match (_q80, _q51)))
2254 : : {
2255 : 0 : {
2256 : 0 : tree _q81_pops[1];
2257 : 0 : if (tree_nop_convert (_q81, _q81_pops))
2258 : : {
2259 : 0 : tree _q100 = _q81_pops[0];
2260 : 0 : switch (TREE_CODE (_q100))
2261 : : {
2262 : 0 : case PLUS_EXPR:
2263 : 0 : {
2264 : 0 : tree _q110 = TREE_OPERAND (_q100, 0);
2265 : 0 : tree _q111 = TREE_OPERAND (_q100, 1);
2266 : 0 : {
2267 : 0 : tree _q110_pops[1];
2268 : 0 : if (tree_nop_convert (_q110, _q110_pops))
2269 : : {
2270 : 0 : tree _q120 = _q110_pops[0];
2271 : 0 : if ((_q120 == _q51 && ! TREE_SIDE_EFFECTS (_q120)) || (operand_equal_p (_q120, _q51, 0) && types_match (_q120, _q51)))
2272 : : {
2273 : 0 : {
2274 : 0 : tree _q111_pops[1];
2275 : 0 : if (tree_nop_convert (_q111, _q111_pops))
2276 : : {
2277 : 0 : tree _q140 = _q111_pops[0];
2278 : 0 : if ((_q140 == _q50 && ! TREE_SIDE_EFFECTS (_q140)) || (operand_equal_p (_q140, _q50, 0) && types_match (_q140, _q50)))
2279 : : {
2280 : 0 : if (integer_zerop (_q21))
2281 : : {
2282 : 0 : switch (TREE_CODE (_p1))
2283 : : {
2284 : 0 : case BIT_XOR_EXPR:
2285 : 0 : {
2286 : 0 : tree _q170 = TREE_OPERAND (_p1, 0);
2287 : 0 : tree _q171 = TREE_OPERAND (_p1, 1);
2288 : 0 : switch (TREE_CODE (_q170))
2289 : : {
2290 : 0 : case NEGATE_EXPR:
2291 : 0 : {
2292 : 0 : tree _q180 = TREE_OPERAND (_q170, 0);
2293 : 0 : switch (TREE_CODE (_q180))
2294 : : {
2295 : 0 : CASE_CONVERT:
2296 : 0 : {
2297 : 0 : tree _q190 = TREE_OPERAND (_q180, 0);
2298 : 0 : switch (TREE_CODE (_q190))
2299 : : {
2300 : 0 : case LT_EXPR:
2301 : 0 : {
2302 : 0 : tree _q200 = TREE_OPERAND (_q190, 0);
2303 : 0 : tree _q201 = TREE_OPERAND (_q190, 1);
2304 : 0 : if ((_q200 == _q51 && ! TREE_SIDE_EFFECTS (_q200)) || (operand_equal_p (_q200, _q51, 0) && types_match (_q200, _q51)))
2305 : : {
2306 : 0 : if (integer_zerop (_q201))
2307 : : {
2308 : 0 : if (tree_max_value (_q171))
2309 : : {
2310 : 0 : if ((_p2 == _q81 && ! TREE_SIDE_EFFECTS (_p2)) || (operand_equal_p (_p2, _q81, 0) && types_match (_p2, _q81)))
2311 : : {
2312 : 0 : {
2313 : 0 : tree captures[3] ATTRIBUTE_UNUSED = { _q51, _q50, _q81 };
2314 : 0 : if (INTEGRAL_TYPE_P (type) && !TYPE_UNSIGNED (type)
2315 : : )
2316 : : {
2317 : 0 : {
2318 : 0 : res_ops[0] = captures[0];
2319 : 0 : res_ops[1] = captures[1];
2320 : 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 71, __FILE__, __LINE__, false);
2321 : 0 : return true;
2322 : : }
2323 : : }
2324 : : }
2325 : : }
2326 : : }
2327 : : }
2328 : : }
2329 : : break;
2330 : : }
2331 : : default:;
2332 : : }
2333 : : break;
2334 : : }
2335 : : default:;
2336 : : }
2337 : : break;
2338 : : }
2339 : 0 : default:;
2340 : : }
2341 : 0 : if (tree_max_value (_q170))
2342 : : {
2343 : 0 : switch (TREE_CODE (_q171))
2344 : : {
2345 : 0 : case NEGATE_EXPR:
2346 : 0 : {
2347 : 0 : tree _q190 = TREE_OPERAND (_q171, 0);
2348 : 0 : switch (TREE_CODE (_q190))
2349 : : {
2350 : 0 : CASE_CONVERT:
2351 : 0 : {
2352 : 0 : tree _q200 = TREE_OPERAND (_q190, 0);
2353 : 0 : switch (TREE_CODE (_q200))
2354 : : {
2355 : 0 : case LT_EXPR:
2356 : 0 : {
2357 : 0 : tree _q210 = TREE_OPERAND (_q200, 0);
2358 : 0 : tree _q211 = TREE_OPERAND (_q200, 1);
2359 : 0 : if ((_q210 == _q51 && ! TREE_SIDE_EFFECTS (_q210)) || (operand_equal_p (_q210, _q51, 0) && types_match (_q210, _q51)))
2360 : : {
2361 : 0 : if (integer_zerop (_q211))
2362 : : {
2363 : 0 : if ((_p2 == _q81 && ! TREE_SIDE_EFFECTS (_p2)) || (operand_equal_p (_p2, _q81, 0) && types_match (_p2, _q81)))
2364 : : {
2365 : 0 : {
2366 : 0 : tree captures[3] ATTRIBUTE_UNUSED = { _q51, _q50, _q81 };
2367 : 0 : if (INTEGRAL_TYPE_P (type) && !TYPE_UNSIGNED (type)
2368 : : )
2369 : : {
2370 : 0 : {
2371 : 0 : res_ops[0] = captures[0];
2372 : 0 : res_ops[1] = captures[1];
2373 : 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 71, __FILE__, __LINE__, false);
2374 : 0 : return true;
2375 : : }
2376 : : }
2377 : : }
2378 : : }
2379 : : }
2380 : : }
2381 : : break;
2382 : : }
2383 : : default:;
2384 : : }
2385 : : break;
2386 : : }
2387 : : default:;
2388 : : }
2389 : : break;
2390 : : }
2391 : : default:;
2392 : : }
2393 : : }
2394 : : break;
2395 : : }
2396 : : default:;
2397 : : }
2398 : : }
2399 : : }
2400 : : }
2401 : : }
2402 : : }
2403 : : }
2404 : : }
2405 : 0 : break;
2406 : : }
2407 : : default:;
2408 : : }
2409 : : }
2410 : : }
2411 : : }
2412 : 0 : {
2413 : 0 : tree _q80_pops[1];
2414 : 0 : if (tree_nop_convert (_q80, _q80_pops))
2415 : : {
2416 : 0 : tree _q90 = _q80_pops[0];
2417 : 0 : switch (TREE_CODE (_q90))
2418 : : {
2419 : 0 : case PLUS_EXPR:
2420 : 0 : {
2421 : 0 : tree _q100 = TREE_OPERAND (_q90, 0);
2422 : 0 : tree _q101 = TREE_OPERAND (_q90, 1);
2423 : 0 : {
2424 : 0 : tree _q100_pops[1];
2425 : 0 : if (tree_nop_convert (_q100, _q100_pops))
2426 : : {
2427 : 0 : tree _q110 = _q100_pops[0];
2428 : 0 : if ((_q110 == _q50 && ! TREE_SIDE_EFFECTS (_q110)) || (operand_equal_p (_q110, _q50, 0) && types_match (_q110, _q50)))
2429 : : {
2430 : 0 : {
2431 : 0 : tree _q101_pops[1];
2432 : 0 : if (tree_nop_convert (_q101, _q101_pops))
2433 : : {
2434 : 0 : tree _q130 = _q101_pops[0];
2435 : 0 : if ((_q130 == _q51 && ! TREE_SIDE_EFFECTS (_q130)) || (operand_equal_p (_q130, _q51, 0) && types_match (_q130, _q51)))
2436 : : {
2437 : 0 : if ((_q81 == _q50 && ! TREE_SIDE_EFFECTS (_q81)) || (operand_equal_p (_q81, _q50, 0) && types_match (_q81, _q50)))
2438 : : {
2439 : 0 : if (integer_zerop (_q21))
2440 : : {
2441 : 0 : switch (TREE_CODE (_p1))
2442 : : {
2443 : 0 : case BIT_XOR_EXPR:
2444 : 0 : {
2445 : 0 : tree _q170 = TREE_OPERAND (_p1, 0);
2446 : 0 : tree _q171 = TREE_OPERAND (_p1, 1);
2447 : 0 : switch (TREE_CODE (_q170))
2448 : : {
2449 : 0 : case NEGATE_EXPR:
2450 : 0 : {
2451 : 0 : tree _q180 = TREE_OPERAND (_q170, 0);
2452 : 0 : switch (TREE_CODE (_q180))
2453 : : {
2454 : 0 : CASE_CONVERT:
2455 : 0 : {
2456 : 0 : tree _q190 = TREE_OPERAND (_q180, 0);
2457 : 0 : switch (TREE_CODE (_q190))
2458 : : {
2459 : 0 : case LT_EXPR:
2460 : 0 : {
2461 : 0 : tree _q200 = TREE_OPERAND (_q190, 0);
2462 : 0 : tree _q201 = TREE_OPERAND (_q190, 1);
2463 : 0 : if ((_q200 == _q50 && ! TREE_SIDE_EFFECTS (_q200)) || (operand_equal_p (_q200, _q50, 0) && types_match (_q200, _q50)))
2464 : : {
2465 : 0 : if (integer_zerop (_q201))
2466 : : {
2467 : 0 : if (tree_max_value (_q171))
2468 : : {
2469 : 0 : if ((_p2 == _q80 && ! TREE_SIDE_EFFECTS (_p2)) || (operand_equal_p (_p2, _q80, 0) && types_match (_p2, _q80)))
2470 : : {
2471 : 0 : {
2472 : 0 : tree captures[3] ATTRIBUTE_UNUSED = { _q50, _q51, _q80 };
2473 : 0 : if (INTEGRAL_TYPE_P (type) && !TYPE_UNSIGNED (type)
2474 : : )
2475 : : {
2476 : 0 : {
2477 : 0 : res_ops[0] = captures[0];
2478 : 0 : res_ops[1] = captures[1];
2479 : 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 71, __FILE__, __LINE__, false);
2480 : 0 : return true;
2481 : : }
2482 : : }
2483 : : }
2484 : : }
2485 : : }
2486 : : }
2487 : : }
2488 : : break;
2489 : : }
2490 : : default:;
2491 : : }
2492 : : break;
2493 : : }
2494 : : default:;
2495 : : }
2496 : : break;
2497 : : }
2498 : 0 : default:;
2499 : : }
2500 : 0 : if (tree_max_value (_q170))
2501 : : {
2502 : 0 : switch (TREE_CODE (_q171))
2503 : : {
2504 : 0 : case NEGATE_EXPR:
2505 : 0 : {
2506 : 0 : tree _q190 = TREE_OPERAND (_q171, 0);
2507 : 0 : switch (TREE_CODE (_q190))
2508 : : {
2509 : 0 : CASE_CONVERT:
2510 : 0 : {
2511 : 0 : tree _q200 = TREE_OPERAND (_q190, 0);
2512 : 0 : switch (TREE_CODE (_q200))
2513 : : {
2514 : 0 : case LT_EXPR:
2515 : 0 : {
2516 : 0 : tree _q210 = TREE_OPERAND (_q200, 0);
2517 : 0 : tree _q211 = TREE_OPERAND (_q200, 1);
2518 : 0 : if ((_q210 == _q50 && ! TREE_SIDE_EFFECTS (_q210)) || (operand_equal_p (_q210, _q50, 0) && types_match (_q210, _q50)))
2519 : : {
2520 : 0 : if (integer_zerop (_q211))
2521 : : {
2522 : 0 : if ((_p2 == _q80 && ! TREE_SIDE_EFFECTS (_p2)) || (operand_equal_p (_p2, _q80, 0) && types_match (_p2, _q80)))
2523 : : {
2524 : 0 : {
2525 : 0 : tree captures[3] ATTRIBUTE_UNUSED = { _q50, _q51, _q80 };
2526 : 0 : if (INTEGRAL_TYPE_P (type) && !TYPE_UNSIGNED (type)
2527 : : )
2528 : : {
2529 : 0 : {
2530 : 0 : res_ops[0] = captures[0];
2531 : 0 : res_ops[1] = captures[1];
2532 : 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 71, __FILE__, __LINE__, false);
2533 : 0 : return true;
2534 : : }
2535 : : }
2536 : : }
2537 : : }
2538 : : }
2539 : : }
2540 : : break;
2541 : : }
2542 : : default:;
2543 : : }
2544 : : break;
2545 : : }
2546 : : default:;
2547 : : }
2548 : : break;
2549 : : }
2550 : : default:;
2551 : : }
2552 : : }
2553 : : break;
2554 : : }
2555 : : default:;
2556 : : }
2557 : : }
2558 : : }
2559 : : }
2560 : : }
2561 : : }
2562 : : }
2563 : 0 : if ((_q110 == _q51 && ! TREE_SIDE_EFFECTS (_q110)) || (operand_equal_p (_q110, _q51, 0) && types_match (_q110, _q51)))
2564 : : {
2565 : 0 : {
2566 : 0 : tree _q101_pops[1];
2567 : 0 : if (tree_nop_convert (_q101, _q101_pops))
2568 : : {
2569 : 0 : tree _q130 = _q101_pops[0];
2570 : 0 : if ((_q130 == _q50 && ! TREE_SIDE_EFFECTS (_q130)) || (operand_equal_p (_q130, _q50, 0) && types_match (_q130, _q50)))
2571 : : {
2572 : 0 : if ((_q81 == _q51 && ! TREE_SIDE_EFFECTS (_q81)) || (operand_equal_p (_q81, _q51, 0) && types_match (_q81, _q51)))
2573 : : {
2574 : 0 : if (integer_zerop (_q21))
2575 : : {
2576 : 0 : switch (TREE_CODE (_p1))
2577 : : {
2578 : 0 : case BIT_XOR_EXPR:
2579 : 0 : {
2580 : 0 : tree _q170 = TREE_OPERAND (_p1, 0);
2581 : 0 : tree _q171 = TREE_OPERAND (_p1, 1);
2582 : 0 : switch (TREE_CODE (_q170))
2583 : : {
2584 : 0 : case NEGATE_EXPR:
2585 : 0 : {
2586 : 0 : tree _q180 = TREE_OPERAND (_q170, 0);
2587 : 0 : switch (TREE_CODE (_q180))
2588 : : {
2589 : 0 : CASE_CONVERT:
2590 : 0 : {
2591 : 0 : tree _q190 = TREE_OPERAND (_q180, 0);
2592 : 0 : switch (TREE_CODE (_q190))
2593 : : {
2594 : 0 : case LT_EXPR:
2595 : 0 : {
2596 : 0 : tree _q200 = TREE_OPERAND (_q190, 0);
2597 : 0 : tree _q201 = TREE_OPERAND (_q190, 1);
2598 : 0 : if ((_q200 == _q51 && ! TREE_SIDE_EFFECTS (_q200)) || (operand_equal_p (_q200, _q51, 0) && types_match (_q200, _q51)))
2599 : : {
2600 : 0 : if (integer_zerop (_q201))
2601 : : {
2602 : 0 : if (tree_max_value (_q171))
2603 : : {
2604 : 0 : if ((_p2 == _q80 && ! TREE_SIDE_EFFECTS (_p2)) || (operand_equal_p (_p2, _q80, 0) && types_match (_p2, _q80)))
2605 : : {
2606 : 0 : {
2607 : 0 : tree captures[3] ATTRIBUTE_UNUSED = { _q51, _q50, _q80 };
2608 : 0 : if (INTEGRAL_TYPE_P (type) && !TYPE_UNSIGNED (type)
2609 : : )
2610 : : {
2611 : 0 : {
2612 : 0 : res_ops[0] = captures[0];
2613 : 0 : res_ops[1] = captures[1];
2614 : 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 71, __FILE__, __LINE__, false);
2615 : 0 : return true;
2616 : : }
2617 : : }
2618 : : }
2619 : : }
2620 : : }
2621 : : }
2622 : : }
2623 : : break;
2624 : : }
2625 : : default:;
2626 : : }
2627 : : break;
2628 : : }
2629 : : default:;
2630 : : }
2631 : : break;
2632 : : }
2633 : 0 : default:;
2634 : : }
2635 : 0 : if (tree_max_value (_q170))
2636 : : {
2637 : 0 : switch (TREE_CODE (_q171))
2638 : : {
2639 : 0 : case NEGATE_EXPR:
2640 : 0 : {
2641 : 0 : tree _q190 = TREE_OPERAND (_q171, 0);
2642 : 0 : switch (TREE_CODE (_q190))
2643 : : {
2644 : 0 : CASE_CONVERT:
2645 : 0 : {
2646 : 0 : tree _q200 = TREE_OPERAND (_q190, 0);
2647 : 0 : switch (TREE_CODE (_q200))
2648 : : {
2649 : 0 : case LT_EXPR:
2650 : 0 : {
2651 : 0 : tree _q210 = TREE_OPERAND (_q200, 0);
2652 : 0 : tree _q211 = TREE_OPERAND (_q200, 1);
2653 : 0 : if ((_q210 == _q51 && ! TREE_SIDE_EFFECTS (_q210)) || (operand_equal_p (_q210, _q51, 0) && types_match (_q210, _q51)))
2654 : : {
2655 : 0 : if (integer_zerop (_q211))
2656 : : {
2657 : 0 : if ((_p2 == _q80 && ! TREE_SIDE_EFFECTS (_p2)) || (operand_equal_p (_p2, _q80, 0) && types_match (_p2, _q80)))
2658 : : {
2659 : 0 : {
2660 : 0 : tree captures[3] ATTRIBUTE_UNUSED = { _q51, _q50, _q80 };
2661 : 0 : if (INTEGRAL_TYPE_P (type) && !TYPE_UNSIGNED (type)
2662 : : )
2663 : : {
2664 : 0 : {
2665 : 0 : res_ops[0] = captures[0];
2666 : 0 : res_ops[1] = captures[1];
2667 : 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 71, __FILE__, __LINE__, false);
2668 : 0 : return true;
2669 : : }
2670 : : }
2671 : : }
2672 : : }
2673 : : }
2674 : : }
2675 : : break;
2676 : : }
2677 : : default:;
2678 : : }
2679 : : break;
2680 : : }
2681 : : default:;
2682 : : }
2683 : : break;
2684 : : }
2685 : : default:;
2686 : : }
2687 : : }
2688 : : break;
2689 : : }
2690 : : default:;
2691 : : }
2692 : : }
2693 : : }
2694 : : }
2695 : : }
2696 : : }
2697 : : }
2698 : : }
2699 : : }
2700 : 0 : break;
2701 : : }
2702 : : default:;
2703 : : }
2704 : : }
2705 : : }
2706 : 0 : break;
2707 : : }
2708 : : default:;
2709 : : }
2710 : : break;
2711 : : }
2712 : : default:;
2713 : : }
2714 : : break;
2715 : : }
2716 : : default:;
2717 : : }
2718 : : break;
2719 : : }
2720 : : default:;
2721 : : }
2722 : : break;
2723 : : }
2724 : 0 : case GE_EXPR:
2725 : 0 : {
2726 : 0 : tree _q20 = TREE_OPERAND (_p0, 0);
2727 : 0 : tree _q21 = TREE_OPERAND (_p0, 1);
2728 : 0 : switch (TREE_CODE (_q20))
2729 : : {
2730 : 0 : case BIT_AND_EXPR:
2731 : 0 : {
2732 : 0 : tree _q30 = TREE_OPERAND (_q20, 0);
2733 : 0 : tree _q31 = TREE_OPERAND (_q20, 1);
2734 : 0 : switch (TREE_CODE (_q30))
2735 : : {
2736 : 0 : case BIT_XOR_EXPR:
2737 : 0 : {
2738 : 0 : tree _q40 = TREE_OPERAND (_q30, 0);
2739 : 0 : tree _q41 = TREE_OPERAND (_q30, 1);
2740 : 0 : {
2741 : 0 : tree _q41_pops[1];
2742 : 0 : if (tree_nop_convert (_q41, _q41_pops))
2743 : : {
2744 : 0 : tree _q60 = _q41_pops[0];
2745 : 0 : switch (TREE_CODE (_q60))
2746 : : {
2747 : 0 : case PLUS_EXPR:
2748 : 0 : {
2749 : 0 : tree _q70 = TREE_OPERAND (_q60, 0);
2750 : 0 : tree _q71 = TREE_OPERAND (_q60, 1);
2751 : 0 : {
2752 : 0 : tree _q70_pops[1];
2753 : 0 : if (tree_nop_convert (_q70, _q70_pops))
2754 : : {
2755 : 0 : tree _q80 = _q70_pops[0];
2756 : 0 : if ((_q80 == _q40 && ! TREE_SIDE_EFFECTS (_q80)) || (operand_equal_p (_q80, _q40, 0) && types_match (_q80, _q40)))
2757 : : {
2758 : 0 : {
2759 : 0 : tree _q71_pops[1];
2760 : 0 : if (tree_nop_convert (_q71, _q71_pops))
2761 : : {
2762 : 0 : tree _q100 = _q71_pops[0];
2763 : 0 : switch (TREE_CODE (_q31))
2764 : : {
2765 : 0 : case BIT_NOT_EXPR:
2766 : 0 : {
2767 : 0 : tree _q120 = TREE_OPERAND (_q31, 0);
2768 : 0 : switch (TREE_CODE (_q120))
2769 : : {
2770 : 0 : case BIT_XOR_EXPR:
2771 : 0 : {
2772 : 0 : tree _q130 = TREE_OPERAND (_q120, 0);
2773 : 0 : tree _q131 = TREE_OPERAND (_q120, 1);
2774 : 0 : if ((_q130 == _q40 && ! TREE_SIDE_EFFECTS (_q130)) || (operand_equal_p (_q130, _q40, 0) && types_match (_q130, _q40)))
2775 : : {
2776 : 0 : if ((_q131 == _q100 && ! TREE_SIDE_EFFECTS (_q131)) || (operand_equal_p (_q131, _q100, 0) && types_match (_q131, _q100)))
2777 : : {
2778 : 0 : if (integer_zerop (_q21))
2779 : : {
2780 : 0 : if ((_p1 == _q41 && ! TREE_SIDE_EFFECTS (_p1)) || (operand_equal_p (_p1, _q41, 0) && types_match (_p1, _q41)))
2781 : : {
2782 : 0 : switch (TREE_CODE (_p2))
2783 : : {
2784 : 0 : case BIT_XOR_EXPR:
2785 : 0 : {
2786 : 0 : tree _q180 = TREE_OPERAND (_p2, 0);
2787 : 0 : tree _q181 = TREE_OPERAND (_p2, 1);
2788 : 0 : switch (TREE_CODE (_q180))
2789 : : {
2790 : 0 : case NEGATE_EXPR:
2791 : 0 : {
2792 : 0 : tree _q190 = TREE_OPERAND (_q180, 0);
2793 : 0 : switch (TREE_CODE (_q190))
2794 : : {
2795 : 0 : CASE_CONVERT:
2796 : 0 : {
2797 : 0 : tree _q200 = TREE_OPERAND (_q190, 0);
2798 : 0 : switch (TREE_CODE (_q200))
2799 : : {
2800 : 0 : case LT_EXPR:
2801 : 0 : {
2802 : 0 : tree _q210 = TREE_OPERAND (_q200, 0);
2803 : 0 : tree _q211 = TREE_OPERAND (_q200, 1);
2804 : 0 : if ((_q210 == _q40 && ! TREE_SIDE_EFFECTS (_q210)) || (operand_equal_p (_q210, _q40, 0) && types_match (_q210, _q40)))
2805 : : {
2806 : 0 : if (integer_zerop (_q211))
2807 : : {
2808 : 0 : if (tree_max_value (_q181))
2809 : : {
2810 : 0 : {
2811 : 0 : tree captures[3] ATTRIBUTE_UNUSED = { _q40, _q100, _q41 };
2812 : 0 : if (INTEGRAL_TYPE_P (type) && !TYPE_UNSIGNED (type)
2813 : : )
2814 : : {
2815 : 0 : {
2816 : 0 : res_ops[0] = captures[0];
2817 : 0 : res_ops[1] = captures[1];
2818 : 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 73, __FILE__, __LINE__, false);
2819 : 0 : return true;
2820 : : }
2821 : : }
2822 : : }
2823 : : }
2824 : : }
2825 : : }
2826 : : break;
2827 : : }
2828 : : default:;
2829 : : }
2830 : : break;
2831 : : }
2832 : : default:;
2833 : : }
2834 : : break;
2835 : : }
2836 : 0 : default:;
2837 : : }
2838 : 0 : if (tree_max_value (_q180))
2839 : : {
2840 : 0 : switch (TREE_CODE (_q181))
2841 : : {
2842 : 0 : case NEGATE_EXPR:
2843 : 0 : {
2844 : 0 : tree _q200 = TREE_OPERAND (_q181, 0);
2845 : 0 : switch (TREE_CODE (_q200))
2846 : : {
2847 : 0 : CASE_CONVERT:
2848 : 0 : {
2849 : 0 : tree _q210 = TREE_OPERAND (_q200, 0);
2850 : 0 : switch (TREE_CODE (_q210))
2851 : : {
2852 : 0 : case LT_EXPR:
2853 : 0 : {
2854 : 0 : tree _q220 = TREE_OPERAND (_q210, 0);
2855 : 0 : tree _q221 = TREE_OPERAND (_q210, 1);
2856 : 0 : if ((_q220 == _q40 && ! TREE_SIDE_EFFECTS (_q220)) || (operand_equal_p (_q220, _q40, 0) && types_match (_q220, _q40)))
2857 : : {
2858 : 0 : if (integer_zerop (_q221))
2859 : : {
2860 : 0 : {
2861 : 0 : tree captures[3] ATTRIBUTE_UNUSED = { _q40, _q100, _q41 };
2862 : 0 : if (INTEGRAL_TYPE_P (type) && !TYPE_UNSIGNED (type)
2863 : : )
2864 : : {
2865 : 0 : {
2866 : 0 : res_ops[0] = captures[0];
2867 : 0 : res_ops[1] = captures[1];
2868 : 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 73, __FILE__, __LINE__, false);
2869 : 0 : return true;
2870 : : }
2871 : : }
2872 : : }
2873 : : }
2874 : : }
2875 : : break;
2876 : : }
2877 : : default:;
2878 : : }
2879 : : break;
2880 : : }
2881 : : default:;
2882 : : }
2883 : : break;
2884 : : }
2885 : : default:;
2886 : : }
2887 : : }
2888 : : break;
2889 : : }
2890 : : default:;
2891 : : }
2892 : : }
2893 : : }
2894 : : }
2895 : : }
2896 : 0 : if ((_q130 == _q100 && ! TREE_SIDE_EFFECTS (_q130)) || (operand_equal_p (_q130, _q100, 0) && types_match (_q130, _q100)))
2897 : : {
2898 : 0 : if ((_q131 == _q40 && ! TREE_SIDE_EFFECTS (_q131)) || (operand_equal_p (_q131, _q40, 0) && types_match (_q131, _q40)))
2899 : : {
2900 : 0 : if (integer_zerop (_q21))
2901 : : {
2902 : 0 : if ((_p1 == _q41 && ! TREE_SIDE_EFFECTS (_p1)) || (operand_equal_p (_p1, _q41, 0) && types_match (_p1, _q41)))
2903 : : {
2904 : 0 : switch (TREE_CODE (_p2))
2905 : : {
2906 : 0 : case BIT_XOR_EXPR:
2907 : 0 : {
2908 : 0 : tree _q180 = TREE_OPERAND (_p2, 0);
2909 : 0 : tree _q181 = TREE_OPERAND (_p2, 1);
2910 : 0 : switch (TREE_CODE (_q180))
2911 : : {
2912 : 0 : case NEGATE_EXPR:
2913 : 0 : {
2914 : 0 : tree _q190 = TREE_OPERAND (_q180, 0);
2915 : 0 : switch (TREE_CODE (_q190))
2916 : : {
2917 : 0 : CASE_CONVERT:
2918 : 0 : {
2919 : 0 : tree _q200 = TREE_OPERAND (_q190, 0);
2920 : 0 : switch (TREE_CODE (_q200))
2921 : : {
2922 : 0 : case LT_EXPR:
2923 : 0 : {
2924 : 0 : tree _q210 = TREE_OPERAND (_q200, 0);
2925 : 0 : tree _q211 = TREE_OPERAND (_q200, 1);
2926 : 0 : if ((_q210 == _q40 && ! TREE_SIDE_EFFECTS (_q210)) || (operand_equal_p (_q210, _q40, 0) && types_match (_q210, _q40)))
2927 : : {
2928 : 0 : if (integer_zerop (_q211))
2929 : : {
2930 : 0 : if (tree_max_value (_q181))
2931 : : {
2932 : 0 : {
2933 : 0 : tree captures[3] ATTRIBUTE_UNUSED = { _q40, _q100, _q41 };
2934 : 0 : if (INTEGRAL_TYPE_P (type) && !TYPE_UNSIGNED (type)
2935 : : )
2936 : : {
2937 : 0 : {
2938 : 0 : res_ops[0] = captures[0];
2939 : 0 : res_ops[1] = captures[1];
2940 : 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 73, __FILE__, __LINE__, false);
2941 : 0 : return true;
2942 : : }
2943 : : }
2944 : : }
2945 : : }
2946 : : }
2947 : : }
2948 : : break;
2949 : : }
2950 : : default:;
2951 : : }
2952 : : break;
2953 : : }
2954 : : default:;
2955 : : }
2956 : : break;
2957 : : }
2958 : 0 : default:;
2959 : : }
2960 : 0 : if (tree_max_value (_q180))
2961 : : {
2962 : 0 : switch (TREE_CODE (_q181))
2963 : : {
2964 : 0 : case NEGATE_EXPR:
2965 : 0 : {
2966 : 0 : tree _q200 = TREE_OPERAND (_q181, 0);
2967 : 0 : switch (TREE_CODE (_q200))
2968 : : {
2969 : 0 : CASE_CONVERT:
2970 : 0 : {
2971 : 0 : tree _q210 = TREE_OPERAND (_q200, 0);
2972 : 0 : switch (TREE_CODE (_q210))
2973 : : {
2974 : 0 : case LT_EXPR:
2975 : 0 : {
2976 : 0 : tree _q220 = TREE_OPERAND (_q210, 0);
2977 : 0 : tree _q221 = TREE_OPERAND (_q210, 1);
2978 : 0 : if ((_q220 == _q40 && ! TREE_SIDE_EFFECTS (_q220)) || (operand_equal_p (_q220, _q40, 0) && types_match (_q220, _q40)))
2979 : : {
2980 : 0 : if (integer_zerop (_q221))
2981 : : {
2982 : 0 : {
2983 : 0 : tree captures[3] ATTRIBUTE_UNUSED = { _q40, _q100, _q41 };
2984 : 0 : if (INTEGRAL_TYPE_P (type) && !TYPE_UNSIGNED (type)
2985 : : )
2986 : : {
2987 : 0 : {
2988 : 0 : res_ops[0] = captures[0];
2989 : 0 : res_ops[1] = captures[1];
2990 : 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 73, __FILE__, __LINE__, false);
2991 : 0 : return true;
2992 : : }
2993 : : }
2994 : : }
2995 : : }
2996 : : }
2997 : : break;
2998 : : }
2999 : : default:;
3000 : : }
3001 : : break;
3002 : : }
3003 : : default:;
3004 : : }
3005 : : break;
3006 : : }
3007 : : default:;
3008 : : }
3009 : : }
3010 : : break;
3011 : : }
3012 : : default:;
3013 : : }
3014 : : }
3015 : : }
3016 : : }
3017 : : }
3018 : : break;
3019 : : }
3020 : : default:;
3021 : : }
3022 : : break;
3023 : : }
3024 : : default:;
3025 : : }
3026 : : }
3027 : : }
3028 : : }
3029 : : }
3030 : : }
3031 : 0 : break;
3032 : : }
3033 : : default:;
3034 : : }
3035 : : }
3036 : : }
3037 : 0 : break;
3038 : : }
3039 : 0 : case BIT_NOT_EXPR:
3040 : 0 : {
3041 : 0 : tree _q40 = TREE_OPERAND (_q30, 0);
3042 : 0 : switch (TREE_CODE (_q40))
3043 : : {
3044 : 0 : case BIT_XOR_EXPR:
3045 : 0 : {
3046 : 0 : tree _q50 = TREE_OPERAND (_q40, 0);
3047 : 0 : tree _q51 = TREE_OPERAND (_q40, 1);
3048 : 0 : switch (TREE_CODE (_q31))
3049 : : {
3050 : 0 : case BIT_XOR_EXPR:
3051 : 0 : {
3052 : 0 : tree _q80 = TREE_OPERAND (_q31, 0);
3053 : 0 : tree _q81 = TREE_OPERAND (_q31, 1);
3054 : 0 : if ((_q80 == _q50 && ! TREE_SIDE_EFFECTS (_q80)) || (operand_equal_p (_q80, _q50, 0) && types_match (_q80, _q50)))
3055 : : {
3056 : 0 : {
3057 : 0 : tree _q81_pops[1];
3058 : 0 : if (tree_nop_convert (_q81, _q81_pops))
3059 : : {
3060 : 0 : tree _q100 = _q81_pops[0];
3061 : 0 : switch (TREE_CODE (_q100))
3062 : : {
3063 : 0 : case PLUS_EXPR:
3064 : 0 : {
3065 : 0 : tree _q110 = TREE_OPERAND (_q100, 0);
3066 : 0 : tree _q111 = TREE_OPERAND (_q100, 1);
3067 : 0 : {
3068 : 0 : tree _q110_pops[1];
3069 : 0 : if (tree_nop_convert (_q110, _q110_pops))
3070 : : {
3071 : 0 : tree _q120 = _q110_pops[0];
3072 : 0 : if ((_q120 == _q50 && ! TREE_SIDE_EFFECTS (_q120)) || (operand_equal_p (_q120, _q50, 0) && types_match (_q120, _q50)))
3073 : : {
3074 : 0 : {
3075 : 0 : tree _q111_pops[1];
3076 : 0 : if (tree_nop_convert (_q111, _q111_pops))
3077 : : {
3078 : 0 : tree _q140 = _q111_pops[0];
3079 : 0 : if ((_q140 == _q51 && ! TREE_SIDE_EFFECTS (_q140)) || (operand_equal_p (_q140, _q51, 0) && types_match (_q140, _q51)))
3080 : : {
3081 : 0 : if (integer_zerop (_q21))
3082 : : {
3083 : 0 : if ((_p1 == _q81 && ! TREE_SIDE_EFFECTS (_p1)) || (operand_equal_p (_p1, _q81, 0) && types_match (_p1, _q81)))
3084 : : {
3085 : 0 : switch (TREE_CODE (_p2))
3086 : : {
3087 : 0 : case BIT_XOR_EXPR:
3088 : 0 : {
3089 : 0 : tree _q180 = TREE_OPERAND (_p2, 0);
3090 : 0 : tree _q181 = TREE_OPERAND (_p2, 1);
3091 : 0 : switch (TREE_CODE (_q180))
3092 : : {
3093 : 0 : case NEGATE_EXPR:
3094 : 0 : {
3095 : 0 : tree _q190 = TREE_OPERAND (_q180, 0);
3096 : 0 : switch (TREE_CODE (_q190))
3097 : : {
3098 : 0 : CASE_CONVERT:
3099 : 0 : {
3100 : 0 : tree _q200 = TREE_OPERAND (_q190, 0);
3101 : 0 : switch (TREE_CODE (_q200))
3102 : : {
3103 : 0 : case LT_EXPR:
3104 : 0 : {
3105 : 0 : tree _q210 = TREE_OPERAND (_q200, 0);
3106 : 0 : tree _q211 = TREE_OPERAND (_q200, 1);
3107 : 0 : if ((_q210 == _q50 && ! TREE_SIDE_EFFECTS (_q210)) || (operand_equal_p (_q210, _q50, 0) && types_match (_q210, _q50)))
3108 : : {
3109 : 0 : if (integer_zerop (_q211))
3110 : : {
3111 : 0 : if (tree_max_value (_q181))
3112 : : {
3113 : 0 : {
3114 : 0 : tree captures[3] ATTRIBUTE_UNUSED = { _q50, _q51, _q81 };
3115 : 0 : if (INTEGRAL_TYPE_P (type) && !TYPE_UNSIGNED (type)
3116 : : )
3117 : : {
3118 : 0 : {
3119 : 0 : res_ops[0] = captures[0];
3120 : 0 : res_ops[1] = captures[1];
3121 : 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 73, __FILE__, __LINE__, false);
3122 : 0 : return true;
3123 : : }
3124 : : }
3125 : : }
3126 : : }
3127 : : }
3128 : : }
3129 : : break;
3130 : : }
3131 : : default:;
3132 : : }
3133 : : break;
3134 : : }
3135 : : default:;
3136 : : }
3137 : : break;
3138 : : }
3139 : 0 : default:;
3140 : : }
3141 : 0 : if (tree_max_value (_q180))
3142 : : {
3143 : 0 : switch (TREE_CODE (_q181))
3144 : : {
3145 : 0 : case NEGATE_EXPR:
3146 : 0 : {
3147 : 0 : tree _q200 = TREE_OPERAND (_q181, 0);
3148 : 0 : switch (TREE_CODE (_q200))
3149 : : {
3150 : 0 : CASE_CONVERT:
3151 : 0 : {
3152 : 0 : tree _q210 = TREE_OPERAND (_q200, 0);
3153 : 0 : switch (TREE_CODE (_q210))
3154 : : {
3155 : 0 : case LT_EXPR:
3156 : 0 : {
3157 : 0 : tree _q220 = TREE_OPERAND (_q210, 0);
3158 : 0 : tree _q221 = TREE_OPERAND (_q210, 1);
3159 : 0 : if ((_q220 == _q50 && ! TREE_SIDE_EFFECTS (_q220)) || (operand_equal_p (_q220, _q50, 0) && types_match (_q220, _q50)))
3160 : : {
3161 : 0 : if (integer_zerop (_q221))
3162 : : {
3163 : 0 : {
3164 : 0 : tree captures[3] ATTRIBUTE_UNUSED = { _q50, _q51, _q81 };
3165 : 0 : if (INTEGRAL_TYPE_P (type) && !TYPE_UNSIGNED (type)
3166 : : )
3167 : : {
3168 : 0 : {
3169 : 0 : res_ops[0] = captures[0];
3170 : 0 : res_ops[1] = captures[1];
3171 : 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 73, __FILE__, __LINE__, false);
3172 : 0 : return true;
3173 : : }
3174 : : }
3175 : : }
3176 : : }
3177 : : }
3178 : : break;
3179 : : }
3180 : : default:;
3181 : : }
3182 : : break;
3183 : : }
3184 : : default:;
3185 : : }
3186 : : break;
3187 : : }
3188 : : default:;
3189 : : }
3190 : : }
3191 : : break;
3192 : : }
3193 : : default:;
3194 : : }
3195 : : }
3196 : : }
3197 : : }
3198 : : }
3199 : : }
3200 : : }
3201 : : }
3202 : : }
3203 : 0 : break;
3204 : : }
3205 : : default:;
3206 : : }
3207 : : }
3208 : : }
3209 : : }
3210 : 0 : if ((_q80 == _q51 && ! TREE_SIDE_EFFECTS (_q80)) || (operand_equal_p (_q80, _q51, 0) && types_match (_q80, _q51)))
3211 : : {
3212 : 0 : {
3213 : 0 : tree _q81_pops[1];
3214 : 0 : if (tree_nop_convert (_q81, _q81_pops))
3215 : : {
3216 : 0 : tree _q100 = _q81_pops[0];
3217 : 0 : switch (TREE_CODE (_q100))
3218 : : {
3219 : 0 : case PLUS_EXPR:
3220 : 0 : {
3221 : 0 : tree _q110 = TREE_OPERAND (_q100, 0);
3222 : 0 : tree _q111 = TREE_OPERAND (_q100, 1);
3223 : 0 : {
3224 : 0 : tree _q110_pops[1];
3225 : 0 : if (tree_nop_convert (_q110, _q110_pops))
3226 : : {
3227 : 0 : tree _q120 = _q110_pops[0];
3228 : 0 : if ((_q120 == _q51 && ! TREE_SIDE_EFFECTS (_q120)) || (operand_equal_p (_q120, _q51, 0) && types_match (_q120, _q51)))
3229 : : {
3230 : 0 : {
3231 : 0 : tree _q111_pops[1];
3232 : 0 : if (tree_nop_convert (_q111, _q111_pops))
3233 : : {
3234 : 0 : tree _q140 = _q111_pops[0];
3235 : 0 : if ((_q140 == _q50 && ! TREE_SIDE_EFFECTS (_q140)) || (operand_equal_p (_q140, _q50, 0) && types_match (_q140, _q50)))
3236 : : {
3237 : 0 : if (integer_zerop (_q21))
3238 : : {
3239 : 0 : if ((_p1 == _q81 && ! TREE_SIDE_EFFECTS (_p1)) || (operand_equal_p (_p1, _q81, 0) && types_match (_p1, _q81)))
3240 : : {
3241 : 0 : switch (TREE_CODE (_p2))
3242 : : {
3243 : 0 : case BIT_XOR_EXPR:
3244 : 0 : {
3245 : 0 : tree _q180 = TREE_OPERAND (_p2, 0);
3246 : 0 : tree _q181 = TREE_OPERAND (_p2, 1);
3247 : 0 : switch (TREE_CODE (_q180))
3248 : : {
3249 : 0 : case NEGATE_EXPR:
3250 : 0 : {
3251 : 0 : tree _q190 = TREE_OPERAND (_q180, 0);
3252 : 0 : switch (TREE_CODE (_q190))
3253 : : {
3254 : 0 : CASE_CONVERT:
3255 : 0 : {
3256 : 0 : tree _q200 = TREE_OPERAND (_q190, 0);
3257 : 0 : switch (TREE_CODE (_q200))
3258 : : {
3259 : 0 : case LT_EXPR:
3260 : 0 : {
3261 : 0 : tree _q210 = TREE_OPERAND (_q200, 0);
3262 : 0 : tree _q211 = TREE_OPERAND (_q200, 1);
3263 : 0 : if ((_q210 == _q51 && ! TREE_SIDE_EFFECTS (_q210)) || (operand_equal_p (_q210, _q51, 0) && types_match (_q210, _q51)))
3264 : : {
3265 : 0 : if (integer_zerop (_q211))
3266 : : {
3267 : 0 : if (tree_max_value (_q181))
3268 : : {
3269 : 0 : {
3270 : 0 : tree captures[3] ATTRIBUTE_UNUSED = { _q51, _q50, _q81 };
3271 : 0 : if (INTEGRAL_TYPE_P (type) && !TYPE_UNSIGNED (type)
3272 : : )
3273 : : {
3274 : 0 : {
3275 : 0 : res_ops[0] = captures[0];
3276 : 0 : res_ops[1] = captures[1];
3277 : 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 73, __FILE__, __LINE__, false);
3278 : 0 : return true;
3279 : : }
3280 : : }
3281 : : }
3282 : : }
3283 : : }
3284 : : }
3285 : : break;
3286 : : }
3287 : : default:;
3288 : : }
3289 : : break;
3290 : : }
3291 : : default:;
3292 : : }
3293 : : break;
3294 : : }
3295 : 0 : default:;
3296 : : }
3297 : 0 : if (tree_max_value (_q180))
3298 : : {
3299 : 0 : switch (TREE_CODE (_q181))
3300 : : {
3301 : 0 : case NEGATE_EXPR:
3302 : 0 : {
3303 : 0 : tree _q200 = TREE_OPERAND (_q181, 0);
3304 : 0 : switch (TREE_CODE (_q200))
3305 : : {
3306 : 0 : CASE_CONVERT:
3307 : 0 : {
3308 : 0 : tree _q210 = TREE_OPERAND (_q200, 0);
3309 : 0 : switch (TREE_CODE (_q210))
3310 : : {
3311 : 0 : case LT_EXPR:
3312 : 0 : {
3313 : 0 : tree _q220 = TREE_OPERAND (_q210, 0);
3314 : 0 : tree _q221 = TREE_OPERAND (_q210, 1);
3315 : 0 : if ((_q220 == _q51 && ! TREE_SIDE_EFFECTS (_q220)) || (operand_equal_p (_q220, _q51, 0) && types_match (_q220, _q51)))
3316 : : {
3317 : 0 : if (integer_zerop (_q221))
3318 : : {
3319 : 0 : {
3320 : 0 : tree captures[3] ATTRIBUTE_UNUSED = { _q51, _q50, _q81 };
3321 : 0 : if (INTEGRAL_TYPE_P (type) && !TYPE_UNSIGNED (type)
3322 : : )
3323 : : {
3324 : 0 : {
3325 : 0 : res_ops[0] = captures[0];
3326 : 0 : res_ops[1] = captures[1];
3327 : 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 73, __FILE__, __LINE__, false);
3328 : 0 : return true;
3329 : : }
3330 : : }
3331 : : }
3332 : : }
3333 : : }
3334 : : break;
3335 : : }
3336 : : default:;
3337 : : }
3338 : : break;
3339 : : }
3340 : : default:;
3341 : : }
3342 : : break;
3343 : : }
3344 : : default:;
3345 : : }
3346 : : }
3347 : : break;
3348 : : }
3349 : : default:;
3350 : : }
3351 : : }
3352 : : }
3353 : : }
3354 : : }
3355 : : }
3356 : : }
3357 : : }
3358 : : }
3359 : 0 : break;
3360 : : }
3361 : : default:;
3362 : : }
3363 : : }
3364 : : }
3365 : : }
3366 : : break;
3367 : : }
3368 : : default:;
3369 : : }
3370 : : break;
3371 : : }
3372 : : default:;
3373 : : }
3374 : : break;
3375 : : }
3376 : : default:;
3377 : : }
3378 : : break;
3379 : : }
3380 : : default:;
3381 : : }
3382 : : break;
3383 : : }
3384 : 0 : case BIT_AND_EXPR:
3385 : 0 : {
3386 : 0 : tree _q20 = TREE_OPERAND (_p0, 0);
3387 : 0 : tree _q21 = TREE_OPERAND (_p0, 1);
3388 : 0 : switch (TREE_CODE (_q20))
3389 : : {
3390 : 0 : case LT_EXPR:
3391 : 0 : {
3392 : 0 : tree _q30 = TREE_OPERAND (_q20, 0);
3393 : 0 : tree _q31 = TREE_OPERAND (_q20, 1);
3394 : 0 : switch (TREE_CODE (_q30))
3395 : : {
3396 : 0 : case BIT_XOR_EXPR:
3397 : 0 : {
3398 : 0 : tree _q40 = TREE_OPERAND (_q30, 0);
3399 : 0 : tree _q41 = TREE_OPERAND (_q30, 1);
3400 : 0 : {
3401 : 0 : tree _q41_pops[1];
3402 : 0 : if (tree_nop_convert (_q41, _q41_pops))
3403 : : {
3404 : 0 : tree _q60 = _q41_pops[0];
3405 : 0 : switch (TREE_CODE (_q60))
3406 : : {
3407 : 0 : case PLUS_EXPR:
3408 : 0 : {
3409 : 0 : tree _q70 = TREE_OPERAND (_q60, 0);
3410 : 0 : tree _q71 = TREE_OPERAND (_q60, 1);
3411 : 0 : {
3412 : 0 : tree _q70_pops[1];
3413 : 0 : if (tree_nop_convert (_q70, _q70_pops))
3414 : : {
3415 : 0 : tree _q80 = _q70_pops[0];
3416 : 0 : if ((_q80 == _q40 && ! TREE_SIDE_EFFECTS (_q80)) || (operand_equal_p (_q80, _q40, 0) && types_match (_q80, _q40)))
3417 : : {
3418 : 0 : {
3419 : 0 : tree _q71_pops[1];
3420 : 0 : if (tree_nop_convert (_q71, _q71_pops))
3421 : : {
3422 : 0 : tree _q100 = _q71_pops[0];
3423 : 0 : if (integer_zerop (_q31))
3424 : : {
3425 : 0 : switch (TREE_CODE (_q21))
3426 : : {
3427 : 0 : case GE_EXPR:
3428 : 0 : {
3429 : 0 : tree _q130 = TREE_OPERAND (_q21, 0);
3430 : 0 : tree _q131 = TREE_OPERAND (_q21, 1);
3431 : 0 : switch (TREE_CODE (_q130))
3432 : : {
3433 : 0 : case BIT_XOR_EXPR:
3434 : 0 : {
3435 : 0 : tree _q140 = TREE_OPERAND (_q130, 0);
3436 : 0 : tree _q141 = TREE_OPERAND (_q130, 1);
3437 : 0 : if ((_q140 == _q40 && ! TREE_SIDE_EFFECTS (_q140)) || (operand_equal_p (_q140, _q40, 0) && types_match (_q140, _q40)))
3438 : : {
3439 : 0 : if ((_q141 == _q100 && ! TREE_SIDE_EFFECTS (_q141)) || (operand_equal_p (_q141, _q100, 0) && types_match (_q141, _q100)))
3440 : : {
3441 : 0 : if (integer_zerop (_q131))
3442 : : {
3443 : 0 : switch (TREE_CODE (_p1))
3444 : : {
3445 : 0 : case BIT_XOR_EXPR:
3446 : 0 : {
3447 : 0 : tree _q180 = TREE_OPERAND (_p1, 0);
3448 : 0 : tree _q181 = TREE_OPERAND (_p1, 1);
3449 : 0 : {
3450 : 0 : tree _q180_pops[1];
3451 : 0 : if (tree_nop_convert (_q180, _q180_pops))
3452 : : {
3453 : 0 : tree _q190 = _q180_pops[0];
3454 : 0 : switch (TREE_CODE (_q190))
3455 : : {
3456 : 0 : case NEGATE_EXPR:
3457 : 0 : {
3458 : 0 : tree _q200 = TREE_OPERAND (_q190, 0);
3459 : 0 : {
3460 : 0 : tree _q200_pops[1];
3461 : 0 : if (tree_nop_convert (_q200, _q200_pops))
3462 : : {
3463 : 0 : tree _q210 = _q200_pops[0];
3464 : 0 : switch (TREE_CODE (_q210))
3465 : : {
3466 : 0 : CASE_CONVERT:
3467 : 0 : {
3468 : 0 : tree _q220 = TREE_OPERAND (_q210, 0);
3469 : 0 : switch (TREE_CODE (_q220))
3470 : : {
3471 : 0 : case LT_EXPR:
3472 : 0 : {
3473 : 0 : tree _q230 = TREE_OPERAND (_q220, 0);
3474 : 0 : tree _q231 = TREE_OPERAND (_q220, 1);
3475 : 0 : if ((_q230 == _q40 && ! TREE_SIDE_EFFECTS (_q230)) || (operand_equal_p (_q230, _q40, 0) && types_match (_q230, _q40)))
3476 : : {
3477 : 0 : if (integer_zerop (_q231))
3478 : : {
3479 : 0 : if (tree_max_value (_q181))
3480 : : {
3481 : 0 : if ((_p2 == _q41 && ! TREE_SIDE_EFFECTS (_p2)) || (operand_equal_p (_p2, _q41, 0) && types_match (_p2, _q41)))
3482 : : {
3483 : 0 : {
3484 : 0 : tree captures[3] ATTRIBUTE_UNUSED = { _q40, _q100, _q41 };
3485 : 0 : if (INTEGRAL_TYPE_P (type) && !TYPE_UNSIGNED (type)
3486 : : )
3487 : : {
3488 : 0 : {
3489 : 0 : res_ops[0] = captures[0];
3490 : 0 : res_ops[1] = captures[1];
3491 : 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 74, __FILE__, __LINE__, false);
3492 : 0 : return true;
3493 : : }
3494 : : }
3495 : : }
3496 : : }
3497 : : }
3498 : : }
3499 : : }
3500 : : break;
3501 : : }
3502 : : default:;
3503 : : }
3504 : : break;
3505 : : }
3506 : : default:;
3507 : : }
3508 : : }
3509 : : }
3510 : 0 : break;
3511 : : }
3512 : : default:;
3513 : : }
3514 : : }
3515 : : }
3516 : 0 : if (tree_max_value (_q180))
3517 : : {
3518 : 0 : {
3519 : 0 : tree _q181_pops[1];
3520 : 0 : if (tree_nop_convert (_q181, _q181_pops))
3521 : : {
3522 : 0 : tree _q200 = _q181_pops[0];
3523 : 0 : switch (TREE_CODE (_q200))
3524 : : {
3525 : 0 : case NEGATE_EXPR:
3526 : 0 : {
3527 : 0 : tree _q210 = TREE_OPERAND (_q200, 0);
3528 : 0 : {
3529 : 0 : tree _q210_pops[1];
3530 : 0 : if (tree_nop_convert (_q210, _q210_pops))
3531 : : {
3532 : 0 : tree _q220 = _q210_pops[0];
3533 : 0 : switch (TREE_CODE (_q220))
3534 : : {
3535 : 0 : CASE_CONVERT:
3536 : 0 : {
3537 : 0 : tree _q230 = TREE_OPERAND (_q220, 0);
3538 : 0 : switch (TREE_CODE (_q230))
3539 : : {
3540 : 0 : case LT_EXPR:
3541 : 0 : {
3542 : 0 : tree _q240 = TREE_OPERAND (_q230, 0);
3543 : 0 : tree _q241 = TREE_OPERAND (_q230, 1);
3544 : 0 : if ((_q240 == _q40 && ! TREE_SIDE_EFFECTS (_q240)) || (operand_equal_p (_q240, _q40, 0) && types_match (_q240, _q40)))
3545 : : {
3546 : 0 : if (integer_zerop (_q241))
3547 : : {
3548 : 0 : if ((_p2 == _q41 && ! TREE_SIDE_EFFECTS (_p2)) || (operand_equal_p (_p2, _q41, 0) && types_match (_p2, _q41)))
3549 : : {
3550 : 0 : {
3551 : 0 : tree captures[3] ATTRIBUTE_UNUSED = { _q40, _q100, _q41 };
3552 : 0 : if (INTEGRAL_TYPE_P (type) && !TYPE_UNSIGNED (type)
3553 : : )
3554 : : {
3555 : 0 : {
3556 : 0 : res_ops[0] = captures[0];
3557 : 0 : res_ops[1] = captures[1];
3558 : 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 74, __FILE__, __LINE__, false);
3559 : 0 : return true;
3560 : : }
3561 : : }
3562 : : }
3563 : : }
3564 : : }
3565 : : }
3566 : : break;
3567 : : }
3568 : : default:;
3569 : : }
3570 : : break;
3571 : : }
3572 : : default:;
3573 : : }
3574 : : }
3575 : : }
3576 : 0 : break;
3577 : : }
3578 : : default:;
3579 : : }
3580 : : }
3581 : : }
3582 : : }
3583 : : break;
3584 : : }
3585 : : default:;
3586 : : }
3587 : : }
3588 : : }
3589 : : }
3590 : 0 : if ((_q140 == _q100 && ! TREE_SIDE_EFFECTS (_q140)) || (operand_equal_p (_q140, _q100, 0) && types_match (_q140, _q100)))
3591 : : {
3592 : 0 : if ((_q141 == _q40 && ! TREE_SIDE_EFFECTS (_q141)) || (operand_equal_p (_q141, _q40, 0) && types_match (_q141, _q40)))
3593 : : {
3594 : 0 : if (integer_zerop (_q131))
3595 : : {
3596 : 0 : switch (TREE_CODE (_p1))
3597 : : {
3598 : 0 : case BIT_XOR_EXPR:
3599 : 0 : {
3600 : 0 : tree _q180 = TREE_OPERAND (_p1, 0);
3601 : 0 : tree _q181 = TREE_OPERAND (_p1, 1);
3602 : 0 : {
3603 : 0 : tree _q180_pops[1];
3604 : 0 : if (tree_nop_convert (_q180, _q180_pops))
3605 : : {
3606 : 0 : tree _q190 = _q180_pops[0];
3607 : 0 : switch (TREE_CODE (_q190))
3608 : : {
3609 : 0 : case NEGATE_EXPR:
3610 : 0 : {
3611 : 0 : tree _q200 = TREE_OPERAND (_q190, 0);
3612 : 0 : {
3613 : 0 : tree _q200_pops[1];
3614 : 0 : if (tree_nop_convert (_q200, _q200_pops))
3615 : : {
3616 : 0 : tree _q210 = _q200_pops[0];
3617 : 0 : switch (TREE_CODE (_q210))
3618 : : {
3619 : 0 : CASE_CONVERT:
3620 : 0 : {
3621 : 0 : tree _q220 = TREE_OPERAND (_q210, 0);
3622 : 0 : switch (TREE_CODE (_q220))
3623 : : {
3624 : 0 : case LT_EXPR:
3625 : 0 : {
3626 : 0 : tree _q230 = TREE_OPERAND (_q220, 0);
3627 : 0 : tree _q231 = TREE_OPERAND (_q220, 1);
3628 : 0 : if ((_q230 == _q40 && ! TREE_SIDE_EFFECTS (_q230)) || (operand_equal_p (_q230, _q40, 0) && types_match (_q230, _q40)))
3629 : : {
3630 : 0 : if (integer_zerop (_q231))
3631 : : {
3632 : 0 : if (tree_max_value (_q181))
3633 : : {
3634 : 0 : if ((_p2 == _q41 && ! TREE_SIDE_EFFECTS (_p2)) || (operand_equal_p (_p2, _q41, 0) && types_match (_p2, _q41)))
3635 : : {
3636 : 0 : {
3637 : 0 : tree captures[3] ATTRIBUTE_UNUSED = { _q40, _q100, _q41 };
3638 : 0 : if (INTEGRAL_TYPE_P (type) && !TYPE_UNSIGNED (type)
3639 : : )
3640 : : {
3641 : 0 : {
3642 : 0 : res_ops[0] = captures[0];
3643 : 0 : res_ops[1] = captures[1];
3644 : 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 74, __FILE__, __LINE__, false);
3645 : 0 : return true;
3646 : : }
3647 : : }
3648 : : }
3649 : : }
3650 : : }
3651 : : }
3652 : : }
3653 : : break;
3654 : : }
3655 : : default:;
3656 : : }
3657 : : break;
3658 : : }
3659 : : default:;
3660 : : }
3661 : : }
3662 : : }
3663 : 0 : break;
3664 : : }
3665 : : default:;
3666 : : }
3667 : : }
3668 : : }
3669 : 0 : if (tree_max_value (_q180))
3670 : : {
3671 : 0 : {
3672 : 0 : tree _q181_pops[1];
3673 : 0 : if (tree_nop_convert (_q181, _q181_pops))
3674 : : {
3675 : 0 : tree _q200 = _q181_pops[0];
3676 : 0 : switch (TREE_CODE (_q200))
3677 : : {
3678 : 0 : case NEGATE_EXPR:
3679 : 0 : {
3680 : 0 : tree _q210 = TREE_OPERAND (_q200, 0);
3681 : 0 : {
3682 : 0 : tree _q210_pops[1];
3683 : 0 : if (tree_nop_convert (_q210, _q210_pops))
3684 : : {
3685 : 0 : tree _q220 = _q210_pops[0];
3686 : 0 : switch (TREE_CODE (_q220))
3687 : : {
3688 : 0 : CASE_CONVERT:
3689 : 0 : {
3690 : 0 : tree _q230 = TREE_OPERAND (_q220, 0);
3691 : 0 : switch (TREE_CODE (_q230))
3692 : : {
3693 : 0 : case LT_EXPR:
3694 : 0 : {
3695 : 0 : tree _q240 = TREE_OPERAND (_q230, 0);
3696 : 0 : tree _q241 = TREE_OPERAND (_q230, 1);
3697 : 0 : if ((_q240 == _q40 && ! TREE_SIDE_EFFECTS (_q240)) || (operand_equal_p (_q240, _q40, 0) && types_match (_q240, _q40)))
3698 : : {
3699 : 0 : if (integer_zerop (_q241))
3700 : : {
3701 : 0 : if ((_p2 == _q41 && ! TREE_SIDE_EFFECTS (_p2)) || (operand_equal_p (_p2, _q41, 0) && types_match (_p2, _q41)))
3702 : : {
3703 : 0 : {
3704 : 0 : tree captures[3] ATTRIBUTE_UNUSED = { _q40, _q100, _q41 };
3705 : 0 : if (INTEGRAL_TYPE_P (type) && !TYPE_UNSIGNED (type)
3706 : : )
3707 : : {
3708 : 0 : {
3709 : 0 : res_ops[0] = captures[0];
3710 : 0 : res_ops[1] = captures[1];
3711 : 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 74, __FILE__, __LINE__, false);
3712 : 0 : return true;
3713 : : }
3714 : : }
3715 : : }
3716 : : }
3717 : : }
3718 : : }
3719 : : break;
3720 : : }
3721 : : default:;
3722 : : }
3723 : : break;
3724 : : }
3725 : : default:;
3726 : : }
3727 : : }
3728 : : }
3729 : 0 : break;
3730 : : }
3731 : : default:;
3732 : : }
3733 : : }
3734 : : }
3735 : : }
3736 : : break;
3737 : : }
3738 : : default:;
3739 : : }
3740 : : }
3741 : : }
3742 : : }
3743 : : break;
3744 : : }
3745 : : default:;
3746 : : }
3747 : : break;
3748 : : }
3749 : 0 : case BIT_NOT_EXPR:
3750 : 0 : {
3751 : 0 : tree _q130 = TREE_OPERAND (_q21, 0);
3752 : 0 : switch (TREE_CODE (_q130))
3753 : : {
3754 : 0 : case LT_EXPR:
3755 : 0 : {
3756 : 0 : tree _q140 = TREE_OPERAND (_q130, 0);
3757 : 0 : tree _q141 = TREE_OPERAND (_q130, 1);
3758 : 0 : switch (TREE_CODE (_q140))
3759 : : {
3760 : 0 : case BIT_XOR_EXPR:
3761 : 0 : {
3762 : 0 : tree _q150 = TREE_OPERAND (_q140, 0);
3763 : 0 : tree _q151 = TREE_OPERAND (_q140, 1);
3764 : 0 : if ((_q150 == _q40 && ! TREE_SIDE_EFFECTS (_q150)) || (operand_equal_p (_q150, _q40, 0) && types_match (_q150, _q40)))
3765 : : {
3766 : 0 : if ((_q151 == _q100 && ! TREE_SIDE_EFFECTS (_q151)) || (operand_equal_p (_q151, _q100, 0) && types_match (_q151, _q100)))
3767 : : {
3768 : 0 : if (integer_zerop (_q141))
3769 : : {
3770 : 0 : switch (TREE_CODE (_p1))
3771 : : {
3772 : 0 : case BIT_XOR_EXPR:
3773 : 0 : {
3774 : 0 : tree _q190 = TREE_OPERAND (_p1, 0);
3775 : 0 : tree _q191 = TREE_OPERAND (_p1, 1);
3776 : 0 : {
3777 : 0 : tree _q190_pops[1];
3778 : 0 : if (tree_nop_convert (_q190, _q190_pops))
3779 : : {
3780 : 0 : tree _q200 = _q190_pops[0];
3781 : 0 : switch (TREE_CODE (_q200))
3782 : : {
3783 : 0 : case NEGATE_EXPR:
3784 : 0 : {
3785 : 0 : tree _q210 = TREE_OPERAND (_q200, 0);
3786 : 0 : {
3787 : 0 : tree _q210_pops[1];
3788 : 0 : if (tree_nop_convert (_q210, _q210_pops))
3789 : : {
3790 : 0 : tree _q220 = _q210_pops[0];
3791 : 0 : switch (TREE_CODE (_q220))
3792 : : {
3793 : 0 : CASE_CONVERT:
3794 : 0 : {
3795 : 0 : tree _q230 = TREE_OPERAND (_q220, 0);
3796 : 0 : switch (TREE_CODE (_q230))
3797 : : {
3798 : 0 : case LT_EXPR:
3799 : 0 : {
3800 : 0 : tree _q240 = TREE_OPERAND (_q230, 0);
3801 : 0 : tree _q241 = TREE_OPERAND (_q230, 1);
3802 : 0 : if ((_q240 == _q40 && ! TREE_SIDE_EFFECTS (_q240)) || (operand_equal_p (_q240, _q40, 0) && types_match (_q240, _q40)))
3803 : : {
3804 : 0 : if (integer_zerop (_q241))
3805 : : {
3806 : 0 : if (tree_max_value (_q191))
3807 : : {
3808 : 0 : if ((_p2 == _q41 && ! TREE_SIDE_EFFECTS (_p2)) || (operand_equal_p (_p2, _q41, 0) && types_match (_p2, _q41)))
3809 : : {
3810 : 0 : {
3811 : 0 : tree captures[3] ATTRIBUTE_UNUSED = { _q40, _q100, _q41 };
3812 : 0 : if (INTEGRAL_TYPE_P (type) && !TYPE_UNSIGNED (type)
3813 : : )
3814 : : {
3815 : 0 : {
3816 : 0 : res_ops[0] = captures[0];
3817 : 0 : res_ops[1] = captures[1];
3818 : 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 75, __FILE__, __LINE__, false);
3819 : 0 : return true;
3820 : : }
3821 : : }
3822 : : }
3823 : : }
3824 : : }
3825 : : }
3826 : : }
3827 : : break;
3828 : : }
3829 : : default:;
3830 : : }
3831 : : break;
3832 : : }
3833 : : default:;
3834 : : }
3835 : : }
3836 : : }
3837 : 0 : break;
3838 : : }
3839 : : default:;
3840 : : }
3841 : : }
3842 : : }
3843 : 0 : if (tree_max_value (_q190))
3844 : : {
3845 : 0 : {
3846 : 0 : tree _q191_pops[1];
3847 : 0 : if (tree_nop_convert (_q191, _q191_pops))
3848 : : {
3849 : 0 : tree _q210 = _q191_pops[0];
3850 : 0 : switch (TREE_CODE (_q210))
3851 : : {
3852 : 0 : case NEGATE_EXPR:
3853 : 0 : {
3854 : 0 : tree _q220 = TREE_OPERAND (_q210, 0);
3855 : 0 : {
3856 : 0 : tree _q220_pops[1];
3857 : 0 : if (tree_nop_convert (_q220, _q220_pops))
3858 : : {
3859 : 0 : tree _q230 = _q220_pops[0];
3860 : 0 : switch (TREE_CODE (_q230))
3861 : : {
3862 : 0 : CASE_CONVERT:
3863 : 0 : {
3864 : 0 : tree _q240 = TREE_OPERAND (_q230, 0);
3865 : 0 : switch (TREE_CODE (_q240))
3866 : : {
3867 : 0 : case LT_EXPR:
3868 : 0 : {
3869 : 0 : tree _q250 = TREE_OPERAND (_q240, 0);
3870 : 0 : tree _q251 = TREE_OPERAND (_q240, 1);
3871 : 0 : if ((_q250 == _q40 && ! TREE_SIDE_EFFECTS (_q250)) || (operand_equal_p (_q250, _q40, 0) && types_match (_q250, _q40)))
3872 : : {
3873 : 0 : if (integer_zerop (_q251))
3874 : : {
3875 : 0 : if ((_p2 == _q41 && ! TREE_SIDE_EFFECTS (_p2)) || (operand_equal_p (_p2, _q41, 0) && types_match (_p2, _q41)))
3876 : : {
3877 : 0 : {
3878 : 0 : tree captures[3] ATTRIBUTE_UNUSED = { _q40, _q100, _q41 };
3879 : 0 : if (INTEGRAL_TYPE_P (type) && !TYPE_UNSIGNED (type)
3880 : : )
3881 : : {
3882 : 0 : {
3883 : 0 : res_ops[0] = captures[0];
3884 : 0 : res_ops[1] = captures[1];
3885 : 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 75, __FILE__, __LINE__, false);
3886 : 0 : return true;
3887 : : }
3888 : : }
3889 : : }
3890 : : }
3891 : : }
3892 : : }
3893 : : break;
3894 : : }
3895 : : default:;
3896 : : }
3897 : : break;
3898 : : }
3899 : : default:;
3900 : : }
3901 : : }
3902 : : }
3903 : 0 : break;
3904 : : }
3905 : : default:;
3906 : : }
3907 : : }
3908 : : }
3909 : : }
3910 : : break;
3911 : : }
3912 : : default:;
3913 : : }
3914 : : }
3915 : : }
3916 : : }
3917 : 0 : if ((_q150 == _q100 && ! TREE_SIDE_EFFECTS (_q150)) || (operand_equal_p (_q150, _q100, 0) && types_match (_q150, _q100)))
3918 : : {
3919 : 0 : if ((_q151 == _q40 && ! TREE_SIDE_EFFECTS (_q151)) || (operand_equal_p (_q151, _q40, 0) && types_match (_q151, _q40)))
3920 : : {
3921 : 0 : if (integer_zerop (_q141))
3922 : : {
3923 : 0 : switch (TREE_CODE (_p1))
3924 : : {
3925 : 0 : case BIT_XOR_EXPR:
3926 : 0 : {
3927 : 0 : tree _q190 = TREE_OPERAND (_p1, 0);
3928 : 0 : tree _q191 = TREE_OPERAND (_p1, 1);
3929 : 0 : {
3930 : 0 : tree _q190_pops[1];
3931 : 0 : if (tree_nop_convert (_q190, _q190_pops))
3932 : : {
3933 : 0 : tree _q200 = _q190_pops[0];
3934 : 0 : switch (TREE_CODE (_q200))
3935 : : {
3936 : 0 : case NEGATE_EXPR:
3937 : 0 : {
3938 : 0 : tree _q210 = TREE_OPERAND (_q200, 0);
3939 : 0 : {
3940 : 0 : tree _q210_pops[1];
3941 : 0 : if (tree_nop_convert (_q210, _q210_pops))
3942 : : {
3943 : 0 : tree _q220 = _q210_pops[0];
3944 : 0 : switch (TREE_CODE (_q220))
3945 : : {
3946 : 0 : CASE_CONVERT:
3947 : 0 : {
3948 : 0 : tree _q230 = TREE_OPERAND (_q220, 0);
3949 : 0 : switch (TREE_CODE (_q230))
3950 : : {
3951 : 0 : case LT_EXPR:
3952 : 0 : {
3953 : 0 : tree _q240 = TREE_OPERAND (_q230, 0);
3954 : 0 : tree _q241 = TREE_OPERAND (_q230, 1);
3955 : 0 : if ((_q240 == _q40 && ! TREE_SIDE_EFFECTS (_q240)) || (operand_equal_p (_q240, _q40, 0) && types_match (_q240, _q40)))
3956 : : {
3957 : 0 : if (integer_zerop (_q241))
3958 : : {
3959 : 0 : if (tree_max_value (_q191))
3960 : : {
3961 : 0 : if ((_p2 == _q41 && ! TREE_SIDE_EFFECTS (_p2)) || (operand_equal_p (_p2, _q41, 0) && types_match (_p2, _q41)))
3962 : : {
3963 : 0 : {
3964 : 0 : tree captures[3] ATTRIBUTE_UNUSED = { _q40, _q100, _q41 };
3965 : 0 : if (INTEGRAL_TYPE_P (type) && !TYPE_UNSIGNED (type)
3966 : : )
3967 : : {
3968 : 0 : {
3969 : 0 : res_ops[0] = captures[0];
3970 : 0 : res_ops[1] = captures[1];
3971 : 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 75, __FILE__, __LINE__, false);
3972 : 0 : return true;
3973 : : }
3974 : : }
3975 : : }
3976 : : }
3977 : : }
3978 : : }
3979 : : }
3980 : : break;
3981 : : }
3982 : : default:;
3983 : : }
3984 : : break;
3985 : : }
3986 : : default:;
3987 : : }
3988 : : }
3989 : : }
3990 : 0 : break;
3991 : : }
3992 : : default:;
3993 : : }
3994 : : }
3995 : : }
3996 : 0 : if (tree_max_value (_q190))
3997 : : {
3998 : 0 : {
3999 : 0 : tree _q191_pops[1];
4000 : 0 : if (tree_nop_convert (_q191, _q191_pops))
4001 : : {
4002 : 0 : tree _q210 = _q191_pops[0];
4003 : 0 : switch (TREE_CODE (_q210))
4004 : : {
4005 : 0 : case NEGATE_EXPR:
4006 : 0 : {
4007 : 0 : tree _q220 = TREE_OPERAND (_q210, 0);
4008 : 0 : {
4009 : 0 : tree _q220_pops[1];
4010 : 0 : if (tree_nop_convert (_q220, _q220_pops))
4011 : : {
4012 : 0 : tree _q230 = _q220_pops[0];
4013 : 0 : switch (TREE_CODE (_q230))
4014 : : {
4015 : 0 : CASE_CONVERT:
4016 : 0 : {
4017 : 0 : tree _q240 = TREE_OPERAND (_q230, 0);
4018 : 0 : switch (TREE_CODE (_q240))
4019 : : {
4020 : 0 : case LT_EXPR:
4021 : 0 : {
4022 : 0 : tree _q250 = TREE_OPERAND (_q240, 0);
4023 : 0 : tree _q251 = TREE_OPERAND (_q240, 1);
4024 : 0 : if ((_q250 == _q40 && ! TREE_SIDE_EFFECTS (_q250)) || (operand_equal_p (_q250, _q40, 0) && types_match (_q250, _q40)))
4025 : : {
4026 : 0 : if (integer_zerop (_q251))
4027 : : {
4028 : 0 : if ((_p2 == _q41 && ! TREE_SIDE_EFFECTS (_p2)) || (operand_equal_p (_p2, _q41, 0) && types_match (_p2, _q41)))
4029 : : {
4030 : 0 : {
4031 : 0 : tree captures[3] ATTRIBUTE_UNUSED = { _q40, _q100, _q41 };
4032 : 0 : if (INTEGRAL_TYPE_P (type) && !TYPE_UNSIGNED (type)
4033 : : )
4034 : : {
4035 : 0 : {
4036 : 0 : res_ops[0] = captures[0];
4037 : 0 : res_ops[1] = captures[1];
4038 : 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 75, __FILE__, __LINE__, false);
4039 : 0 : return true;
4040 : : }
4041 : : }
4042 : : }
4043 : : }
4044 : : }
4045 : : }
4046 : : break;
4047 : : }
4048 : : default:;
4049 : : }
4050 : : break;
4051 : : }
4052 : : default:;
4053 : : }
4054 : : }
4055 : : }
4056 : 0 : break;
4057 : : }
4058 : : default:;
4059 : : }
4060 : : }
4061 : : }
4062 : : }
4063 : : break;
4064 : : }
4065 : : default:;
4066 : : }
4067 : : }
4068 : : }
4069 : : }
4070 : : break;
4071 : : }
4072 : : default:;
4073 : : }
4074 : : break;
4075 : : }
4076 : : default:;
4077 : : }
4078 : : break;
4079 : : }
4080 : : default:;
4081 : : }
4082 : : }
4083 : : }
4084 : : }
4085 : : }
4086 : : }
4087 : : }
4088 : 0 : break;
4089 : : }
4090 : : default:;
4091 : : }
4092 : : }
4093 : : }
4094 : 0 : break;
4095 : : }
4096 : : default:;
4097 : : }
4098 : : break;
4099 : : }
4100 : 0 : case GE_EXPR:
4101 : 0 : {
4102 : 0 : tree _q30 = TREE_OPERAND (_q20, 0);
4103 : 0 : tree _q31 = TREE_OPERAND (_q20, 1);
4104 : 0 : switch (TREE_CODE (_q30))
4105 : : {
4106 : 0 : case BIT_XOR_EXPR:
4107 : 0 : {
4108 : 0 : tree _q40 = TREE_OPERAND (_q30, 0);
4109 : 0 : tree _q41 = TREE_OPERAND (_q30, 1);
4110 : 0 : if (integer_zerop (_q31))
4111 : : {
4112 : 0 : switch (TREE_CODE (_q21))
4113 : : {
4114 : 0 : case LT_EXPR:
4115 : 0 : {
4116 : 0 : tree _q80 = TREE_OPERAND (_q21, 0);
4117 : 0 : tree _q81 = TREE_OPERAND (_q21, 1);
4118 : 0 : switch (TREE_CODE (_q80))
4119 : : {
4120 : 0 : case BIT_XOR_EXPR:
4121 : 0 : {
4122 : 0 : tree _q90 = TREE_OPERAND (_q80, 0);
4123 : 0 : tree _q91 = TREE_OPERAND (_q80, 1);
4124 : 0 : if ((_q90 == _q40 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q40, 0) && types_match (_q90, _q40)))
4125 : : {
4126 : 0 : {
4127 : 0 : tree _q91_pops[1];
4128 : 0 : if (tree_nop_convert (_q91, _q91_pops))
4129 : : {
4130 : 0 : tree _q110 = _q91_pops[0];
4131 : 0 : switch (TREE_CODE (_q110))
4132 : : {
4133 : 0 : case PLUS_EXPR:
4134 : 0 : {
4135 : 0 : tree _q120 = TREE_OPERAND (_q110, 0);
4136 : 0 : tree _q121 = TREE_OPERAND (_q110, 1);
4137 : 0 : {
4138 : 0 : tree _q120_pops[1];
4139 : 0 : if (tree_nop_convert (_q120, _q120_pops))
4140 : : {
4141 : 0 : tree _q130 = _q120_pops[0];
4142 : 0 : if ((_q130 == _q40 && ! TREE_SIDE_EFFECTS (_q130)) || (operand_equal_p (_q130, _q40, 0) && types_match (_q130, _q40)))
4143 : : {
4144 : 0 : {
4145 : 0 : tree _q121_pops[1];
4146 : 0 : if (tree_nop_convert (_q121, _q121_pops))
4147 : : {
4148 : 0 : tree _q150 = _q121_pops[0];
4149 : 0 : if ((_q150 == _q41 && ! TREE_SIDE_EFFECTS (_q150)) || (operand_equal_p (_q150, _q41, 0) && types_match (_q150, _q41)))
4150 : : {
4151 : 0 : if (integer_zerop (_q81))
4152 : : {
4153 : 0 : switch (TREE_CODE (_p1))
4154 : : {
4155 : 0 : case BIT_XOR_EXPR:
4156 : 0 : {
4157 : 0 : tree _q180 = TREE_OPERAND (_p1, 0);
4158 : 0 : tree _q181 = TREE_OPERAND (_p1, 1);
4159 : 0 : {
4160 : 0 : tree _q180_pops[1];
4161 : 0 : if (tree_nop_convert (_q180, _q180_pops))
4162 : : {
4163 : 0 : tree _q190 = _q180_pops[0];
4164 : 0 : switch (TREE_CODE (_q190))
4165 : : {
4166 : 0 : case NEGATE_EXPR:
4167 : 0 : {
4168 : 0 : tree _q200 = TREE_OPERAND (_q190, 0);
4169 : 0 : {
4170 : 0 : tree _q200_pops[1];
4171 : 0 : if (tree_nop_convert (_q200, _q200_pops))
4172 : : {
4173 : 0 : tree _q210 = _q200_pops[0];
4174 : 0 : switch (TREE_CODE (_q210))
4175 : : {
4176 : 0 : CASE_CONVERT:
4177 : 0 : {
4178 : 0 : tree _q220 = TREE_OPERAND (_q210, 0);
4179 : 0 : switch (TREE_CODE (_q220))
4180 : : {
4181 : 0 : case LT_EXPR:
4182 : 0 : {
4183 : 0 : tree _q230 = TREE_OPERAND (_q220, 0);
4184 : 0 : tree _q231 = TREE_OPERAND (_q220, 1);
4185 : 0 : if ((_q230 == _q40 && ! TREE_SIDE_EFFECTS (_q230)) || (operand_equal_p (_q230, _q40, 0) && types_match (_q230, _q40)))
4186 : : {
4187 : 0 : if (integer_zerop (_q231))
4188 : : {
4189 : 0 : if (tree_max_value (_q181))
4190 : : {
4191 : 0 : if ((_p2 == _q91 && ! TREE_SIDE_EFFECTS (_p2)) || (operand_equal_p (_p2, _q91, 0) && types_match (_p2, _q91)))
4192 : : {
4193 : 0 : {
4194 : 0 : tree captures[3] ATTRIBUTE_UNUSED = { _q40, _q41, _q91 };
4195 : 0 : if (INTEGRAL_TYPE_P (type) && !TYPE_UNSIGNED (type)
4196 : : )
4197 : : {
4198 : 0 : {
4199 : 0 : res_ops[0] = captures[0];
4200 : 0 : res_ops[1] = captures[1];
4201 : 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 74, __FILE__, __LINE__, false);
4202 : 0 : return true;
4203 : : }
4204 : : }
4205 : : }
4206 : : }
4207 : : }
4208 : : }
4209 : : }
4210 : : break;
4211 : : }
4212 : : default:;
4213 : : }
4214 : : break;
4215 : : }
4216 : : default:;
4217 : : }
4218 : : }
4219 : : }
4220 : 0 : break;
4221 : : }
4222 : : default:;
4223 : : }
4224 : : }
4225 : : }
4226 : 0 : if (tree_max_value (_q180))
4227 : : {
4228 : 0 : {
4229 : 0 : tree _q181_pops[1];
4230 : 0 : if (tree_nop_convert (_q181, _q181_pops))
4231 : : {
4232 : 0 : tree _q200 = _q181_pops[0];
4233 : 0 : switch (TREE_CODE (_q200))
4234 : : {
4235 : 0 : case NEGATE_EXPR:
4236 : 0 : {
4237 : 0 : tree _q210 = TREE_OPERAND (_q200, 0);
4238 : 0 : {
4239 : 0 : tree _q210_pops[1];
4240 : 0 : if (tree_nop_convert (_q210, _q210_pops))
4241 : : {
4242 : 0 : tree _q220 = _q210_pops[0];
4243 : 0 : switch (TREE_CODE (_q220))
4244 : : {
4245 : 0 : CASE_CONVERT:
4246 : 0 : {
4247 : 0 : tree _q230 = TREE_OPERAND (_q220, 0);
4248 : 0 : switch (TREE_CODE (_q230))
4249 : : {
4250 : 0 : case LT_EXPR:
4251 : 0 : {
4252 : 0 : tree _q240 = TREE_OPERAND (_q230, 0);
4253 : 0 : tree _q241 = TREE_OPERAND (_q230, 1);
4254 : 0 : if ((_q240 == _q40 && ! TREE_SIDE_EFFECTS (_q240)) || (operand_equal_p (_q240, _q40, 0) && types_match (_q240, _q40)))
4255 : : {
4256 : 0 : if (integer_zerop (_q241))
4257 : : {
4258 : 0 : if ((_p2 == _q91 && ! TREE_SIDE_EFFECTS (_p2)) || (operand_equal_p (_p2, _q91, 0) && types_match (_p2, _q91)))
4259 : : {
4260 : 0 : {
4261 : 0 : tree captures[3] ATTRIBUTE_UNUSED = { _q40, _q41, _q91 };
4262 : 0 : if (INTEGRAL_TYPE_P (type) && !TYPE_UNSIGNED (type)
4263 : : )
4264 : : {
4265 : 0 : {
4266 : 0 : res_ops[0] = captures[0];
4267 : 0 : res_ops[1] = captures[1];
4268 : 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 74, __FILE__, __LINE__, false);
4269 : 0 : return true;
4270 : : }
4271 : : }
4272 : : }
4273 : : }
4274 : : }
4275 : : }
4276 : : break;
4277 : : }
4278 : : default:;
4279 : : }
4280 : : break;
4281 : : }
4282 : : default:;
4283 : : }
4284 : : }
4285 : : }
4286 : 0 : break;
4287 : : }
4288 : : default:;
4289 : : }
4290 : : }
4291 : : }
4292 : : }
4293 : : break;
4294 : : }
4295 : : default:;
4296 : : }
4297 : : }
4298 : : }
4299 : : }
4300 : : }
4301 : : }
4302 : : }
4303 : : }
4304 : 0 : break;
4305 : : }
4306 : : default:;
4307 : : }
4308 : : }
4309 : : }
4310 : : }
4311 : 0 : if ((_q90 == _q41 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q41, 0) && types_match (_q90, _q41)))
4312 : : {
4313 : 0 : {
4314 : 0 : tree _q91_pops[1];
4315 : 0 : if (tree_nop_convert (_q91, _q91_pops))
4316 : : {
4317 : 0 : tree _q110 = _q91_pops[0];
4318 : 0 : switch (TREE_CODE (_q110))
4319 : : {
4320 : 0 : case PLUS_EXPR:
4321 : 0 : {
4322 : 0 : tree _q120 = TREE_OPERAND (_q110, 0);
4323 : 0 : tree _q121 = TREE_OPERAND (_q110, 1);
4324 : 0 : {
4325 : 0 : tree _q120_pops[1];
4326 : 0 : if (tree_nop_convert (_q120, _q120_pops))
4327 : : {
4328 : 0 : tree _q130 = _q120_pops[0];
4329 : 0 : if ((_q130 == _q41 && ! TREE_SIDE_EFFECTS (_q130)) || (operand_equal_p (_q130, _q41, 0) && types_match (_q130, _q41)))
4330 : : {
4331 : 0 : {
4332 : 0 : tree _q121_pops[1];
4333 : 0 : if (tree_nop_convert (_q121, _q121_pops))
4334 : : {
4335 : 0 : tree _q150 = _q121_pops[0];
4336 : 0 : if ((_q150 == _q40 && ! TREE_SIDE_EFFECTS (_q150)) || (operand_equal_p (_q150, _q40, 0) && types_match (_q150, _q40)))
4337 : : {
4338 : 0 : if (integer_zerop (_q81))
4339 : : {
4340 : 0 : switch (TREE_CODE (_p1))
4341 : : {
4342 : 0 : case BIT_XOR_EXPR:
4343 : 0 : {
4344 : 0 : tree _q180 = TREE_OPERAND (_p1, 0);
4345 : 0 : tree _q181 = TREE_OPERAND (_p1, 1);
4346 : 0 : {
4347 : 0 : tree _q180_pops[1];
4348 : 0 : if (tree_nop_convert (_q180, _q180_pops))
4349 : : {
4350 : 0 : tree _q190 = _q180_pops[0];
4351 : 0 : switch (TREE_CODE (_q190))
4352 : : {
4353 : 0 : case NEGATE_EXPR:
4354 : 0 : {
4355 : 0 : tree _q200 = TREE_OPERAND (_q190, 0);
4356 : 0 : {
4357 : 0 : tree _q200_pops[1];
4358 : 0 : if (tree_nop_convert (_q200, _q200_pops))
4359 : : {
4360 : 0 : tree _q210 = _q200_pops[0];
4361 : 0 : switch (TREE_CODE (_q210))
4362 : : {
4363 : 0 : CASE_CONVERT:
4364 : 0 : {
4365 : 0 : tree _q220 = TREE_OPERAND (_q210, 0);
4366 : 0 : switch (TREE_CODE (_q220))
4367 : : {
4368 : 0 : case LT_EXPR:
4369 : 0 : {
4370 : 0 : tree _q230 = TREE_OPERAND (_q220, 0);
4371 : 0 : tree _q231 = TREE_OPERAND (_q220, 1);
4372 : 0 : if ((_q230 == _q41 && ! TREE_SIDE_EFFECTS (_q230)) || (operand_equal_p (_q230, _q41, 0) && types_match (_q230, _q41)))
4373 : : {
4374 : 0 : if (integer_zerop (_q231))
4375 : : {
4376 : 0 : if (tree_max_value (_q181))
4377 : : {
4378 : 0 : if ((_p2 == _q91 && ! TREE_SIDE_EFFECTS (_p2)) || (operand_equal_p (_p2, _q91, 0) && types_match (_p2, _q91)))
4379 : : {
4380 : 0 : {
4381 : 0 : tree captures[3] ATTRIBUTE_UNUSED = { _q41, _q40, _q91 };
4382 : 0 : if (INTEGRAL_TYPE_P (type) && !TYPE_UNSIGNED (type)
4383 : : )
4384 : : {
4385 : 0 : {
4386 : 0 : res_ops[0] = captures[0];
4387 : 0 : res_ops[1] = captures[1];
4388 : 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 74, __FILE__, __LINE__, false);
4389 : 0 : return true;
4390 : : }
4391 : : }
4392 : : }
4393 : : }
4394 : : }
4395 : : }
4396 : : }
4397 : : break;
4398 : : }
4399 : : default:;
4400 : : }
4401 : : break;
4402 : : }
4403 : : default:;
4404 : : }
4405 : : }
4406 : : }
4407 : 0 : break;
4408 : : }
4409 : : default:;
4410 : : }
4411 : : }
4412 : : }
4413 : 0 : if (tree_max_value (_q180))
4414 : : {
4415 : 0 : {
4416 : 0 : tree _q181_pops[1];
4417 : 0 : if (tree_nop_convert (_q181, _q181_pops))
4418 : : {
4419 : 0 : tree _q200 = _q181_pops[0];
4420 : 0 : switch (TREE_CODE (_q200))
4421 : : {
4422 : 0 : case NEGATE_EXPR:
4423 : 0 : {
4424 : 0 : tree _q210 = TREE_OPERAND (_q200, 0);
4425 : 0 : {
4426 : 0 : tree _q210_pops[1];
4427 : 0 : if (tree_nop_convert (_q210, _q210_pops))
4428 : : {
4429 : 0 : tree _q220 = _q210_pops[0];
4430 : 0 : switch (TREE_CODE (_q220))
4431 : : {
4432 : 0 : CASE_CONVERT:
4433 : 0 : {
4434 : 0 : tree _q230 = TREE_OPERAND (_q220, 0);
4435 : 0 : switch (TREE_CODE (_q230))
4436 : : {
4437 : 0 : case LT_EXPR:
4438 : 0 : {
4439 : 0 : tree _q240 = TREE_OPERAND (_q230, 0);
4440 : 0 : tree _q241 = TREE_OPERAND (_q230, 1);
4441 : 0 : if ((_q240 == _q41 && ! TREE_SIDE_EFFECTS (_q240)) || (operand_equal_p (_q240, _q41, 0) && types_match (_q240, _q41)))
4442 : : {
4443 : 0 : if (integer_zerop (_q241))
4444 : : {
4445 : 0 : if ((_p2 == _q91 && ! TREE_SIDE_EFFECTS (_p2)) || (operand_equal_p (_p2, _q91, 0) && types_match (_p2, _q91)))
4446 : : {
4447 : 0 : {
4448 : 0 : tree captures[3] ATTRIBUTE_UNUSED = { _q41, _q40, _q91 };
4449 : 0 : if (INTEGRAL_TYPE_P (type) && !TYPE_UNSIGNED (type)
4450 : : )
4451 : : {
4452 : 0 : {
4453 : 0 : res_ops[0] = captures[0];
4454 : 0 : res_ops[1] = captures[1];
4455 : 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 74, __FILE__, __LINE__, false);
4456 : 0 : return true;
4457 : : }
4458 : : }
4459 : : }
4460 : : }
4461 : : }
4462 : : }
4463 : : break;
4464 : : }
4465 : : default:;
4466 : : }
4467 : : break;
4468 : : }
4469 : : default:;
4470 : : }
4471 : : }
4472 : : }
4473 : 0 : break;
4474 : : }
4475 : : default:;
4476 : : }
4477 : : }
4478 : : }
4479 : : }
4480 : : break;
4481 : : }
4482 : : default:;
4483 : : }
4484 : : }
4485 : : }
4486 : : }
4487 : : }
4488 : : }
4489 : : }
4490 : : }
4491 : 0 : break;
4492 : : }
4493 : : default:;
4494 : : }
4495 : : }
4496 : : }
4497 : : }
4498 : : break;
4499 : : }
4500 : : default:;
4501 : : }
4502 : : break;
4503 : : }
4504 : : default:;
4505 : : }
4506 : : }
4507 : : break;
4508 : : }
4509 : : default:;
4510 : : }
4511 : : break;
4512 : : }
4513 : 0 : case BIT_NOT_EXPR:
4514 : 0 : {
4515 : 0 : tree _q30 = TREE_OPERAND (_q20, 0);
4516 : 0 : switch (TREE_CODE (_q30))
4517 : : {
4518 : 0 : case LT_EXPR:
4519 : 0 : {
4520 : 0 : tree _q40 = TREE_OPERAND (_q30, 0);
4521 : 0 : tree _q41 = TREE_OPERAND (_q30, 1);
4522 : 0 : switch (TREE_CODE (_q40))
4523 : : {
4524 : 0 : case BIT_XOR_EXPR:
4525 : 0 : {
4526 : 0 : tree _q50 = TREE_OPERAND (_q40, 0);
4527 : 0 : tree _q51 = TREE_OPERAND (_q40, 1);
4528 : 0 : if (integer_zerop (_q41))
4529 : : {
4530 : 0 : switch (TREE_CODE (_q21))
4531 : : {
4532 : 0 : case LT_EXPR:
4533 : 0 : {
4534 : 0 : tree _q90 = TREE_OPERAND (_q21, 0);
4535 : 0 : tree _q91 = TREE_OPERAND (_q21, 1);
4536 : 0 : switch (TREE_CODE (_q90))
4537 : : {
4538 : 0 : case BIT_XOR_EXPR:
4539 : 0 : {
4540 : 0 : tree _q100 = TREE_OPERAND (_q90, 0);
4541 : 0 : tree _q101 = TREE_OPERAND (_q90, 1);
4542 : 0 : if ((_q100 == _q50 && ! TREE_SIDE_EFFECTS (_q100)) || (operand_equal_p (_q100, _q50, 0) && types_match (_q100, _q50)))
4543 : : {
4544 : 0 : {
4545 : 0 : tree _q101_pops[1];
4546 : 0 : if (tree_nop_convert (_q101, _q101_pops))
4547 : : {
4548 : 0 : tree _q120 = _q101_pops[0];
4549 : 0 : switch (TREE_CODE (_q120))
4550 : : {
4551 : 0 : case PLUS_EXPR:
4552 : 0 : {
4553 : 0 : tree _q130 = TREE_OPERAND (_q120, 0);
4554 : 0 : tree _q131 = TREE_OPERAND (_q120, 1);
4555 : 0 : {
4556 : 0 : tree _q130_pops[1];
4557 : 0 : if (tree_nop_convert (_q130, _q130_pops))
4558 : : {
4559 : 0 : tree _q140 = _q130_pops[0];
4560 : 0 : if ((_q140 == _q50 && ! TREE_SIDE_EFFECTS (_q140)) || (operand_equal_p (_q140, _q50, 0) && types_match (_q140, _q50)))
4561 : : {
4562 : 0 : {
4563 : 0 : tree _q131_pops[1];
4564 : 0 : if (tree_nop_convert (_q131, _q131_pops))
4565 : : {
4566 : 0 : tree _q160 = _q131_pops[0];
4567 : 0 : if ((_q160 == _q51 && ! TREE_SIDE_EFFECTS (_q160)) || (operand_equal_p (_q160, _q51, 0) && types_match (_q160, _q51)))
4568 : : {
4569 : 0 : if (integer_zerop (_q91))
4570 : : {
4571 : 0 : switch (TREE_CODE (_p1))
4572 : : {
4573 : 0 : case BIT_XOR_EXPR:
4574 : 0 : {
4575 : 0 : tree _q190 = TREE_OPERAND (_p1, 0);
4576 : 0 : tree _q191 = TREE_OPERAND (_p1, 1);
4577 : 0 : {
4578 : 0 : tree _q190_pops[1];
4579 : 0 : if (tree_nop_convert (_q190, _q190_pops))
4580 : : {
4581 : 0 : tree _q200 = _q190_pops[0];
4582 : 0 : switch (TREE_CODE (_q200))
4583 : : {
4584 : 0 : case NEGATE_EXPR:
4585 : 0 : {
4586 : 0 : tree _q210 = TREE_OPERAND (_q200, 0);
4587 : 0 : {
4588 : 0 : tree _q210_pops[1];
4589 : 0 : if (tree_nop_convert (_q210, _q210_pops))
4590 : : {
4591 : 0 : tree _q220 = _q210_pops[0];
4592 : 0 : switch (TREE_CODE (_q220))
4593 : : {
4594 : 0 : CASE_CONVERT:
4595 : 0 : {
4596 : 0 : tree _q230 = TREE_OPERAND (_q220, 0);
4597 : 0 : switch (TREE_CODE (_q230))
4598 : : {
4599 : 0 : case LT_EXPR:
4600 : 0 : {
4601 : 0 : tree _q240 = TREE_OPERAND (_q230, 0);
4602 : 0 : tree _q241 = TREE_OPERAND (_q230, 1);
4603 : 0 : if ((_q240 == _q50 && ! TREE_SIDE_EFFECTS (_q240)) || (operand_equal_p (_q240, _q50, 0) && types_match (_q240, _q50)))
4604 : : {
4605 : 0 : if (integer_zerop (_q241))
4606 : : {
4607 : 0 : if (tree_max_value (_q191))
4608 : : {
4609 : 0 : if ((_p2 == _q101 && ! TREE_SIDE_EFFECTS (_p2)) || (operand_equal_p (_p2, _q101, 0) && types_match (_p2, _q101)))
4610 : : {
4611 : 0 : {
4612 : 0 : tree captures[3] ATTRIBUTE_UNUSED = { _q50, _q51, _q101 };
4613 : 0 : if (INTEGRAL_TYPE_P (type) && !TYPE_UNSIGNED (type)
4614 : : )
4615 : : {
4616 : 0 : {
4617 : 0 : res_ops[0] = captures[0];
4618 : 0 : res_ops[1] = captures[1];
4619 : 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 75, __FILE__, __LINE__, false);
4620 : 0 : return true;
4621 : : }
4622 : : }
4623 : : }
4624 : : }
4625 : : }
4626 : : }
4627 : : }
4628 : : break;
4629 : : }
4630 : : default:;
4631 : : }
4632 : : break;
4633 : : }
4634 : : default:;
4635 : : }
4636 : : }
4637 : : }
4638 : 0 : break;
4639 : : }
4640 : : default:;
4641 : : }
4642 : : }
4643 : : }
4644 : 0 : if (tree_max_value (_q190))
4645 : : {
4646 : 0 : {
4647 : 0 : tree _q191_pops[1];
4648 : 0 : if (tree_nop_convert (_q191, _q191_pops))
4649 : : {
4650 : 0 : tree _q210 = _q191_pops[0];
4651 : 0 : switch (TREE_CODE (_q210))
4652 : : {
4653 : 0 : case NEGATE_EXPR:
4654 : 0 : {
4655 : 0 : tree _q220 = TREE_OPERAND (_q210, 0);
4656 : 0 : {
4657 : 0 : tree _q220_pops[1];
4658 : 0 : if (tree_nop_convert (_q220, _q220_pops))
4659 : : {
4660 : 0 : tree _q230 = _q220_pops[0];
4661 : 0 : switch (TREE_CODE (_q230))
4662 : : {
4663 : 0 : CASE_CONVERT:
4664 : 0 : {
4665 : 0 : tree _q240 = TREE_OPERAND (_q230, 0);
4666 : 0 : switch (TREE_CODE (_q240))
4667 : : {
4668 : 0 : case LT_EXPR:
4669 : 0 : {
4670 : 0 : tree _q250 = TREE_OPERAND (_q240, 0);
4671 : 0 : tree _q251 = TREE_OPERAND (_q240, 1);
4672 : 0 : if ((_q250 == _q50 && ! TREE_SIDE_EFFECTS (_q250)) || (operand_equal_p (_q250, _q50, 0) && types_match (_q250, _q50)))
4673 : : {
4674 : 0 : if (integer_zerop (_q251))
4675 : : {
4676 : 0 : if ((_p2 == _q101 && ! TREE_SIDE_EFFECTS (_p2)) || (operand_equal_p (_p2, _q101, 0) && types_match (_p2, _q101)))
4677 : : {
4678 : 0 : {
4679 : 0 : tree captures[3] ATTRIBUTE_UNUSED = { _q50, _q51, _q101 };
4680 : 0 : if (INTEGRAL_TYPE_P (type) && !TYPE_UNSIGNED (type)
4681 : : )
4682 : : {
4683 : 0 : {
4684 : 0 : res_ops[0] = captures[0];
4685 : 0 : res_ops[1] = captures[1];
4686 : 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 75, __FILE__, __LINE__, false);
4687 : 0 : return true;
4688 : : }
4689 : : }
4690 : : }
4691 : : }
4692 : : }
4693 : : }
4694 : : break;
4695 : : }
4696 : : default:;
4697 : : }
4698 : : break;
4699 : : }
4700 : : default:;
4701 : : }
4702 : : }
4703 : : }
4704 : 0 : break;
4705 : : }
4706 : : default:;
4707 : : }
4708 : : }
4709 : : }
4710 : : }
4711 : : break;
4712 : : }
4713 : : default:;
4714 : : }
4715 : : }
4716 : : }
4717 : : }
4718 : : }
4719 : : }
4720 : : }
4721 : : }
4722 : 0 : break;
4723 : : }
4724 : : default:;
4725 : : }
4726 : : }
4727 : : }
4728 : : }
4729 : 0 : if ((_q100 == _q51 && ! TREE_SIDE_EFFECTS (_q100)) || (operand_equal_p (_q100, _q51, 0) && types_match (_q100, _q51)))
4730 : : {
4731 : 0 : {
4732 : 0 : tree _q101_pops[1];
4733 : 0 : if (tree_nop_convert (_q101, _q101_pops))
4734 : : {
4735 : 0 : tree _q120 = _q101_pops[0];
4736 : 0 : switch (TREE_CODE (_q120))
4737 : : {
4738 : 0 : case PLUS_EXPR:
4739 : 0 : {
4740 : 0 : tree _q130 = TREE_OPERAND (_q120, 0);
4741 : 0 : tree _q131 = TREE_OPERAND (_q120, 1);
4742 : 0 : {
4743 : 0 : tree _q130_pops[1];
4744 : 0 : if (tree_nop_convert (_q130, _q130_pops))
4745 : : {
4746 : 0 : tree _q140 = _q130_pops[0];
4747 : 0 : if ((_q140 == _q51 && ! TREE_SIDE_EFFECTS (_q140)) || (operand_equal_p (_q140, _q51, 0) && types_match (_q140, _q51)))
4748 : : {
4749 : 0 : {
4750 : 0 : tree _q131_pops[1];
4751 : 0 : if (tree_nop_convert (_q131, _q131_pops))
4752 : : {
4753 : 0 : tree _q160 = _q131_pops[0];
4754 : 0 : if ((_q160 == _q50 && ! TREE_SIDE_EFFECTS (_q160)) || (operand_equal_p (_q160, _q50, 0) && types_match (_q160, _q50)))
4755 : : {
4756 : 0 : if (integer_zerop (_q91))
4757 : : {
4758 : 0 : switch (TREE_CODE (_p1))
4759 : : {
4760 : 0 : case BIT_XOR_EXPR:
4761 : 0 : {
4762 : 0 : tree _q190 = TREE_OPERAND (_p1, 0);
4763 : 0 : tree _q191 = TREE_OPERAND (_p1, 1);
4764 : 0 : {
4765 : 0 : tree _q190_pops[1];
4766 : 0 : if (tree_nop_convert (_q190, _q190_pops))
4767 : : {
4768 : 0 : tree _q200 = _q190_pops[0];
4769 : 0 : switch (TREE_CODE (_q200))
4770 : : {
4771 : 0 : case NEGATE_EXPR:
4772 : 0 : {
4773 : 0 : tree _q210 = TREE_OPERAND (_q200, 0);
4774 : 0 : {
4775 : 0 : tree _q210_pops[1];
4776 : 0 : if (tree_nop_convert (_q210, _q210_pops))
4777 : : {
4778 : 0 : tree _q220 = _q210_pops[0];
4779 : 0 : switch (TREE_CODE (_q220))
4780 : : {
4781 : 0 : CASE_CONVERT:
4782 : 0 : {
4783 : 0 : tree _q230 = TREE_OPERAND (_q220, 0);
4784 : 0 : switch (TREE_CODE (_q230))
4785 : : {
4786 : 0 : case LT_EXPR:
4787 : 0 : {
4788 : 0 : tree _q240 = TREE_OPERAND (_q230, 0);
4789 : 0 : tree _q241 = TREE_OPERAND (_q230, 1);
4790 : 0 : if ((_q240 == _q51 && ! TREE_SIDE_EFFECTS (_q240)) || (operand_equal_p (_q240, _q51, 0) && types_match (_q240, _q51)))
4791 : : {
4792 : 0 : if (integer_zerop (_q241))
4793 : : {
4794 : 0 : if (tree_max_value (_q191))
4795 : : {
4796 : 0 : if ((_p2 == _q101 && ! TREE_SIDE_EFFECTS (_p2)) || (operand_equal_p (_p2, _q101, 0) && types_match (_p2, _q101)))
4797 : : {
4798 : 0 : {
4799 : 0 : tree captures[3] ATTRIBUTE_UNUSED = { _q51, _q50, _q101 };
4800 : 0 : if (INTEGRAL_TYPE_P (type) && !TYPE_UNSIGNED (type)
4801 : : )
4802 : : {
4803 : 0 : {
4804 : 0 : res_ops[0] = captures[0];
4805 : 0 : res_ops[1] = captures[1];
4806 : 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 75, __FILE__, __LINE__, false);
4807 : 0 : return true;
4808 : : }
4809 : : }
4810 : : }
4811 : : }
4812 : : }
4813 : : }
4814 : : }
4815 : : break;
4816 : : }
4817 : : default:;
4818 : : }
4819 : : break;
4820 : : }
4821 : : default:;
4822 : : }
4823 : : }
4824 : : }
4825 : 0 : break;
4826 : : }
4827 : : default:;
4828 : : }
4829 : : }
4830 : : }
4831 : 0 : if (tree_max_value (_q190))
4832 : : {
4833 : 0 : {
4834 : 0 : tree _q191_pops[1];
4835 : 0 : if (tree_nop_convert (_q191, _q191_pops))
4836 : : {
4837 : 0 : tree _q210 = _q191_pops[0];
4838 : 0 : switch (TREE_CODE (_q210))
4839 : : {
4840 : 0 : case NEGATE_EXPR:
4841 : 0 : {
4842 : 0 : tree _q220 = TREE_OPERAND (_q210, 0);
4843 : 0 : {
4844 : 0 : tree _q220_pops[1];
4845 : 0 : if (tree_nop_convert (_q220, _q220_pops))
4846 : : {
4847 : 0 : tree _q230 = _q220_pops[0];
4848 : 0 : switch (TREE_CODE (_q230))
4849 : : {
4850 : 0 : CASE_CONVERT:
4851 : 0 : {
4852 : 0 : tree _q240 = TREE_OPERAND (_q230, 0);
4853 : 0 : switch (TREE_CODE (_q240))
4854 : : {
4855 : 0 : case LT_EXPR:
4856 : 0 : {
4857 : 0 : tree _q250 = TREE_OPERAND (_q240, 0);
4858 : 0 : tree _q251 = TREE_OPERAND (_q240, 1);
4859 : 0 : if ((_q250 == _q51 && ! TREE_SIDE_EFFECTS (_q250)) || (operand_equal_p (_q250, _q51, 0) && types_match (_q250, _q51)))
4860 : : {
4861 : 0 : if (integer_zerop (_q251))
4862 : : {
4863 : 0 : if ((_p2 == _q101 && ! TREE_SIDE_EFFECTS (_p2)) || (operand_equal_p (_p2, _q101, 0) && types_match (_p2, _q101)))
4864 : : {
4865 : 0 : {
4866 : 0 : tree captures[3] ATTRIBUTE_UNUSED = { _q51, _q50, _q101 };
4867 : 0 : if (INTEGRAL_TYPE_P (type) && !TYPE_UNSIGNED (type)
4868 : : )
4869 : : {
4870 : 0 : {
4871 : 0 : res_ops[0] = captures[0];
4872 : 0 : res_ops[1] = captures[1];
4873 : 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 75, __FILE__, __LINE__, false);
4874 : 0 : return true;
4875 : : }
4876 : : }
4877 : : }
4878 : : }
4879 : : }
4880 : : }
4881 : : break;
4882 : : }
4883 : : default:;
4884 : : }
4885 : : break;
4886 : : }
4887 : : default:;
4888 : : }
4889 : : }
4890 : : }
4891 : 0 : break;
4892 : : }
4893 : : default:;
4894 : : }
4895 : : }
4896 : : }
4897 : : }
4898 : : break;
4899 : : }
4900 : : default:;
4901 : : }
4902 : : }
4903 : : }
4904 : : }
4905 : : }
4906 : : }
4907 : : }
4908 : : }
4909 : 0 : break;
4910 : : }
4911 : : default:;
4912 : : }
4913 : : }
4914 : : }
4915 : : }
4916 : : break;
4917 : : }
4918 : : default:;
4919 : : }
4920 : : break;
4921 : : }
4922 : : default:;
4923 : : }
4924 : : }
4925 : : break;
4926 : : }
4927 : : default:;
4928 : : }
4929 : : break;
4930 : : }
4931 : : default:;
4932 : : }
4933 : : break;
4934 : : }
4935 : : default:;
4936 : : }
4937 : : break;
4938 : : }
4939 : 0 : case NE_EXPR:
4940 : 0 : {
4941 : 0 : tree _q20 = TREE_OPERAND (_p0, 0);
4942 : 0 : tree _q21 = TREE_OPERAND (_p0, 1);
4943 : 0 : switch (TREE_CODE (_q20))
4944 : : {
4945 : 0 : case IMAGPART_EXPR:
4946 : 0 : {
4947 : 0 : tree _q30 = TREE_OPERAND (_q20, 0);
4948 : 0 : switch (TREE_CODE (_q30))
4949 : : {
4950 : 0 : case CALL_EXPR:
4951 : 0 : switch (get_call_combined_fn (_q30))
4952 : : {
4953 : 0 : case CFN_ADD_OVERFLOW:
4954 : 0 : if (call_expr_nargs (_q30) == 2)
4955 : : {
4956 : 0 : tree _q40 = CALL_EXPR_ARG (_q30, 0);
4957 : 0 : tree _q41 = CALL_EXPR_ARG (_q30, 1);
4958 : 0 : if (integer_zerop (_q21))
4959 : : {
4960 : 0 : switch (TREE_CODE (_p1))
4961 : : {
4962 : 0 : case BIT_XOR_EXPR:
4963 : 0 : {
4964 : 0 : tree _q80 = TREE_OPERAND (_p1, 0);
4965 : 0 : tree _q81 = TREE_OPERAND (_p1, 1);
4966 : 0 : switch (TREE_CODE (_q80))
4967 : : {
4968 : 0 : case NEGATE_EXPR:
4969 : 0 : {
4970 : 0 : tree _q90 = TREE_OPERAND (_q80, 0);
4971 : 0 : switch (TREE_CODE (_q90))
4972 : : {
4973 : 0 : CASE_CONVERT:
4974 : 0 : {
4975 : 0 : tree _q100 = TREE_OPERAND (_q90, 0);
4976 : 0 : switch (TREE_CODE (_q100))
4977 : : {
4978 : 0 : case LT_EXPR:
4979 : 0 : {
4980 : 0 : tree _q110 = TREE_OPERAND (_q100, 0);
4981 : 0 : tree _q111 = TREE_OPERAND (_q100, 1);
4982 : 0 : if ((_q110 == _q40 && ! TREE_SIDE_EFFECTS (_q110)) || (operand_equal_p (_q110, _q40, 0) && types_match (_q110, _q40)))
4983 : : {
4984 : 0 : if (integer_zerop (_q111))
4985 : : {
4986 : 0 : if (tree_max_value (_q81))
4987 : : {
4988 : 0 : switch (TREE_CODE (_p2))
4989 : : {
4990 : 0 : case REALPART_EXPR:
4991 : 0 : {
4992 : 0 : tree _q150 = TREE_OPERAND (_p2, 0);
4993 : 0 : if ((_q150 == _q30 && ! TREE_SIDE_EFFECTS (_q150)) || (operand_equal_p (_q150, _q30, 0) && types_match (_q150, _q30)))
4994 : : {
4995 : 0 : {
4996 : 0 : tree captures[3] ATTRIBUTE_UNUSED = { _q40, _q41, _q30 };
4997 : 0 : if (INTEGRAL_TYPE_P (type) && !TYPE_UNSIGNED (type)
4998 : : )
4999 : : {
5000 : 0 : {
5001 : 0 : res_ops[0] = captures[0];
5002 : 0 : res_ops[1] = captures[1];
5003 : 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 76, __FILE__, __LINE__, false);
5004 : 0 : return true;
5005 : : }
5006 : : }
5007 : : }
5008 : : }
5009 : : break;
5010 : : }
5011 : : default:;
5012 : : }
5013 : : }
5014 : : }
5015 : : }
5016 : 0 : if ((_q110 == _q41 && ! TREE_SIDE_EFFECTS (_q110)) || (operand_equal_p (_q110, _q41, 0) && types_match (_q110, _q41)))
5017 : : {
5018 : 0 : if (integer_zerop (_q111))
5019 : : {
5020 : 0 : if (tree_max_value (_q81))
5021 : : {
5022 : 0 : switch (TREE_CODE (_p2))
5023 : : {
5024 : 0 : case REALPART_EXPR:
5025 : 0 : {
5026 : 0 : tree _q150 = TREE_OPERAND (_p2, 0);
5027 : 0 : if ((_q150 == _q30 && ! TREE_SIDE_EFFECTS (_q150)) || (operand_equal_p (_q150, _q30, 0) && types_match (_q150, _q30)))
5028 : : {
5029 : 0 : {
5030 : 0 : tree captures[3] ATTRIBUTE_UNUSED = { _q41, _q40, _q30 };
5031 : 0 : if (INTEGRAL_TYPE_P (type) && !TYPE_UNSIGNED (type)
5032 : : )
5033 : : {
5034 : 0 : {
5035 : 0 : res_ops[0] = captures[0];
5036 : 0 : res_ops[1] = captures[1];
5037 : 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 76, __FILE__, __LINE__, false);
5038 : 0 : return true;
5039 : : }
5040 : : }
5041 : : }
5042 : : }
5043 : : break;
5044 : : }
5045 : : default:;
5046 : : }
5047 : : }
5048 : : }
5049 : : }
5050 : : break;
5051 : : }
5052 : : default:;
5053 : : }
5054 : : break;
5055 : : }
5056 : : default:;
5057 : : }
5058 : : break;
5059 : : }
5060 : 0 : default:;
5061 : : }
5062 : 0 : {
5063 : 0 : tree _q80_pops[1];
5064 : 0 : if (tree_nop_convert (_q80, _q80_pops))
5065 : : {
5066 : 0 : tree _q90 = _q80_pops[0];
5067 : 0 : switch (TREE_CODE (_q90))
5068 : : {
5069 : 0 : case NEGATE_EXPR:
5070 : 0 : {
5071 : 0 : tree _q100 = TREE_OPERAND (_q90, 0);
5072 : 0 : {
5073 : 0 : tree _q100_pops[1];
5074 : 0 : if (tree_nop_convert (_q100, _q100_pops))
5075 : : {
5076 : 0 : tree _q110 = _q100_pops[0];
5077 : 0 : switch (TREE_CODE (_q110))
5078 : : {
5079 : 0 : CASE_CONVERT:
5080 : 0 : {
5081 : 0 : tree _q120 = TREE_OPERAND (_q110, 0);
5082 : 0 : switch (TREE_CODE (_q120))
5083 : : {
5084 : 0 : case LT_EXPR:
5085 : 0 : {
5086 : 0 : tree _q130 = TREE_OPERAND (_q120, 0);
5087 : 0 : tree _q131 = TREE_OPERAND (_q120, 1);
5088 : 0 : if ((_q130 == _q40 && ! TREE_SIDE_EFFECTS (_q130)) || (operand_equal_p (_q130, _q40, 0) && types_match (_q130, _q40)))
5089 : : {
5090 : 0 : if (integer_zerop (_q131))
5091 : : {
5092 : 0 : if (tree_max_value (_q81))
5093 : : {
5094 : 0 : switch (TREE_CODE (_p2))
5095 : : {
5096 : 0 : case REALPART_EXPR:
5097 : 0 : {
5098 : 0 : tree _q170 = TREE_OPERAND (_p2, 0);
5099 : 0 : if ((_q170 == _q30 && ! TREE_SIDE_EFFECTS (_q170)) || (operand_equal_p (_q170, _q30, 0) && types_match (_q170, _q30)))
5100 : : {
5101 : 0 : {
5102 : 0 : tree captures[3] ATTRIBUTE_UNUSED = { _q40, _q41, _q30 };
5103 : 0 : if (INTEGRAL_TYPE_P (type) && !TYPE_UNSIGNED (type)
5104 : : )
5105 : : {
5106 : 0 : {
5107 : 0 : res_ops[0] = captures[0];
5108 : 0 : res_ops[1] = captures[1];
5109 : 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 76, __FILE__, __LINE__, false);
5110 : 0 : return true;
5111 : : }
5112 : : }
5113 : : }
5114 : : }
5115 : : break;
5116 : : }
5117 : : default:;
5118 : : }
5119 : : }
5120 : : }
5121 : : }
5122 : 0 : if ((_q130 == _q41 && ! TREE_SIDE_EFFECTS (_q130)) || (operand_equal_p (_q130, _q41, 0) && types_match (_q130, _q41)))
5123 : : {
5124 : 0 : if (integer_zerop (_q131))
5125 : : {
5126 : 0 : if (tree_max_value (_q81))
5127 : : {
5128 : 0 : switch (TREE_CODE (_p2))
5129 : : {
5130 : 0 : case REALPART_EXPR:
5131 : 0 : {
5132 : 0 : tree _q170 = TREE_OPERAND (_p2, 0);
5133 : 0 : if ((_q170 == _q30 && ! TREE_SIDE_EFFECTS (_q170)) || (operand_equal_p (_q170, _q30, 0) && types_match (_q170, _q30)))
5134 : : {
5135 : 0 : {
5136 : 0 : tree captures[3] ATTRIBUTE_UNUSED = { _q41, _q40, _q30 };
5137 : 0 : if (INTEGRAL_TYPE_P (type) && !TYPE_UNSIGNED (type)
5138 : : )
5139 : : {
5140 : 0 : {
5141 : 0 : res_ops[0] = captures[0];
5142 : 0 : res_ops[1] = captures[1];
5143 : 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 76, __FILE__, __LINE__, false);
5144 : 0 : return true;
5145 : : }
5146 : : }
5147 : : }
5148 : : }
5149 : : break;
5150 : : }
5151 : : default:;
5152 : : }
5153 : : }
5154 : : }
5155 : : }
5156 : : break;
5157 : : }
5158 : : default:;
5159 : : }
5160 : : break;
5161 : : }
5162 : : default:;
5163 : : }
5164 : : }
5165 : : }
5166 : 0 : break;
5167 : : }
5168 : : default:;
5169 : : }
5170 : : }
5171 : : }
5172 : 0 : if (tree_max_value (_q80))
5173 : : {
5174 : 0 : switch (TREE_CODE (_q81))
5175 : : {
5176 : 0 : case NEGATE_EXPR:
5177 : 0 : {
5178 : 0 : tree _q100 = TREE_OPERAND (_q81, 0);
5179 : 0 : switch (TREE_CODE (_q100))
5180 : : {
5181 : 0 : CASE_CONVERT:
5182 : 0 : {
5183 : 0 : tree _q110 = TREE_OPERAND (_q100, 0);
5184 : 0 : switch (TREE_CODE (_q110))
5185 : : {
5186 : 0 : case LT_EXPR:
5187 : 0 : {
5188 : 0 : tree _q120 = TREE_OPERAND (_q110, 0);
5189 : 0 : tree _q121 = TREE_OPERAND (_q110, 1);
5190 : 0 : if ((_q120 == _q40 && ! TREE_SIDE_EFFECTS (_q120)) || (operand_equal_p (_q120, _q40, 0) && types_match (_q120, _q40)))
5191 : : {
5192 : 0 : if (integer_zerop (_q121))
5193 : : {
5194 : 0 : switch (TREE_CODE (_p2))
5195 : : {
5196 : 0 : case REALPART_EXPR:
5197 : 0 : {
5198 : 0 : tree _q150 = TREE_OPERAND (_p2, 0);
5199 : 0 : if ((_q150 == _q30 && ! TREE_SIDE_EFFECTS (_q150)) || (operand_equal_p (_q150, _q30, 0) && types_match (_q150, _q30)))
5200 : : {
5201 : 0 : {
5202 : 0 : tree captures[3] ATTRIBUTE_UNUSED = { _q40, _q41, _q30 };
5203 : 0 : if (INTEGRAL_TYPE_P (type) && !TYPE_UNSIGNED (type)
5204 : : )
5205 : : {
5206 : 0 : {
5207 : 0 : res_ops[0] = captures[0];
5208 : 0 : res_ops[1] = captures[1];
5209 : 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 76, __FILE__, __LINE__, false);
5210 : 0 : return true;
5211 : : }
5212 : : }
5213 : : }
5214 : : }
5215 : : break;
5216 : : }
5217 : : default:;
5218 : : }
5219 : : }
5220 : : }
5221 : 0 : if ((_q120 == _q41 && ! TREE_SIDE_EFFECTS (_q120)) || (operand_equal_p (_q120, _q41, 0) && types_match (_q120, _q41)))
5222 : : {
5223 : 0 : if (integer_zerop (_q121))
5224 : : {
5225 : 0 : switch (TREE_CODE (_p2))
5226 : : {
5227 : 0 : case REALPART_EXPR:
5228 : 0 : {
5229 : 0 : tree _q150 = TREE_OPERAND (_p2, 0);
5230 : 0 : if ((_q150 == _q30 && ! TREE_SIDE_EFFECTS (_q150)) || (operand_equal_p (_q150, _q30, 0) && types_match (_q150, _q30)))
5231 : : {
5232 : 0 : {
5233 : 0 : tree captures[3] ATTRIBUTE_UNUSED = { _q41, _q40, _q30 };
5234 : 0 : if (INTEGRAL_TYPE_P (type) && !TYPE_UNSIGNED (type)
5235 : : )
5236 : : {
5237 : 0 : {
5238 : 0 : res_ops[0] = captures[0];
5239 : 0 : res_ops[1] = captures[1];
5240 : 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 76, __FILE__, __LINE__, false);
5241 : 0 : return true;
5242 : : }
5243 : : }
5244 : : }
5245 : : }
5246 : : break;
5247 : : }
5248 : : default:;
5249 : : }
5250 : : }
5251 : : }
5252 : : break;
5253 : : }
5254 : : default:;
5255 : : }
5256 : : break;
5257 : : }
5258 : : default:;
5259 : : }
5260 : : break;
5261 : : }
5262 : 0 : default:;
5263 : : }
5264 : 0 : {
5265 : 0 : tree _q81_pops[1];
5266 : 0 : if (tree_nop_convert (_q81, _q81_pops))
5267 : : {
5268 : 0 : tree _q100 = _q81_pops[0];
5269 : 0 : switch (TREE_CODE (_q100))
5270 : : {
5271 : 0 : case NEGATE_EXPR:
5272 : 0 : {
5273 : 0 : tree _q110 = TREE_OPERAND (_q100, 0);
5274 : 0 : {
5275 : 0 : tree _q110_pops[1];
5276 : 0 : if (tree_nop_convert (_q110, _q110_pops))
5277 : : {
5278 : 0 : tree _q120 = _q110_pops[0];
5279 : 0 : switch (TREE_CODE (_q120))
5280 : : {
5281 : 0 : CASE_CONVERT:
5282 : 0 : {
5283 : 0 : tree _q130 = TREE_OPERAND (_q120, 0);
5284 : 0 : switch (TREE_CODE (_q130))
5285 : : {
5286 : 0 : case LT_EXPR:
5287 : 0 : {
5288 : 0 : tree _q140 = TREE_OPERAND (_q130, 0);
5289 : 0 : tree _q141 = TREE_OPERAND (_q130, 1);
5290 : 0 : if ((_q140 == _q40 && ! TREE_SIDE_EFFECTS (_q140)) || (operand_equal_p (_q140, _q40, 0) && types_match (_q140, _q40)))
5291 : : {
5292 : 0 : if (integer_zerop (_q141))
5293 : : {
5294 : 0 : switch (TREE_CODE (_p2))
5295 : : {
5296 : 0 : case REALPART_EXPR:
5297 : 0 : {
5298 : 0 : tree _q170 = TREE_OPERAND (_p2, 0);
5299 : 0 : if ((_q170 == _q30 && ! TREE_SIDE_EFFECTS (_q170)) || (operand_equal_p (_q170, _q30, 0) && types_match (_q170, _q30)))
5300 : : {
5301 : 0 : {
5302 : 0 : tree captures[3] ATTRIBUTE_UNUSED = { _q40, _q41, _q30 };
5303 : 0 : if (INTEGRAL_TYPE_P (type) && !TYPE_UNSIGNED (type)
5304 : : )
5305 : : {
5306 : 0 : {
5307 : 0 : res_ops[0] = captures[0];
5308 : 0 : res_ops[1] = captures[1];
5309 : 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 76, __FILE__, __LINE__, false);
5310 : 0 : return true;
5311 : : }
5312 : : }
5313 : : }
5314 : : }
5315 : : break;
5316 : : }
5317 : : default:;
5318 : : }
5319 : : }
5320 : : }
5321 : 0 : if ((_q140 == _q41 && ! TREE_SIDE_EFFECTS (_q140)) || (operand_equal_p (_q140, _q41, 0) && types_match (_q140, _q41)))
5322 : : {
5323 : 0 : if (integer_zerop (_q141))
5324 : : {
5325 : 0 : switch (TREE_CODE (_p2))
5326 : : {
5327 : 0 : case REALPART_EXPR:
5328 : 0 : {
5329 : 0 : tree _q170 = TREE_OPERAND (_p2, 0);
5330 : 0 : if ((_q170 == _q30 && ! TREE_SIDE_EFFECTS (_q170)) || (operand_equal_p (_q170, _q30, 0) && types_match (_q170, _q30)))
5331 : : {
5332 : 0 : {
5333 : 0 : tree captures[3] ATTRIBUTE_UNUSED = { _q41, _q40, _q30 };
5334 : 0 : if (INTEGRAL_TYPE_P (type) && !TYPE_UNSIGNED (type)
5335 : : )
5336 : : {
5337 : 0 : {
5338 : 0 : res_ops[0] = captures[0];
5339 : 0 : res_ops[1] = captures[1];
5340 : 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 76, __FILE__, __LINE__, false);
5341 : 0 : return true;
5342 : : }
5343 : : }
5344 : : }
5345 : : }
5346 : : break;
5347 : : }
5348 : : default:;
5349 : : }
5350 : : }
5351 : : }
5352 : : break;
5353 : : }
5354 : : default:;
5355 : : }
5356 : : break;
5357 : : }
5358 : : default:;
5359 : : }
5360 : : }
5361 : : }
5362 : 0 : break;
5363 : : }
5364 : : default:;
5365 : : }
5366 : : }
5367 : : }
5368 : : }
5369 : : break;
5370 : : }
5371 : : default:;
5372 : : }
5373 : : }
5374 : : }
5375 : : break;
5376 : : default:;
5377 : : }
5378 : : break;
5379 : : default:;
5380 : : }
5381 : : break;
5382 : : }
5383 : : default:;
5384 : : }
5385 : : break;
5386 : : }
5387 : : default:;
5388 : : }
5389 : : break;
5390 : : }
5391 : : default:;
5392 : : }
5393 : : return false;
5394 : : }
5395 : :
5396 : : tree
5397 : 3149778 : generic_simplify_EXACT_DIV_EXPR (location_t ARG_UNUSED (loc), enum tree_code ARG_UNUSED (code), const tree ARG_UNUSED (type), tree _p0, tree _p1)
5398 : : {
5399 : 3149778 : const bool debug_dump = dump_file && (dump_flags & TDF_FOLDING);
5400 : 3149778 : if (integer_onep (_p1))
5401 : : {
5402 : 2036805 : {
5403 : 2036805 : tree captures[1] ATTRIBUTE_UNUSED = { _p0 };
5404 : 2036805 : tree res = generic_simplify_176 (loc, type, _p0, _p1, captures, EXACT_DIV_EXPR);
5405 : 2036805 : if (res) return res;
5406 : : }
5407 : : }
5408 : 1112973 : switch (TREE_CODE (_p0))
5409 : : {
5410 : 7970 : CASE_CONVERT:
5411 : 7970 : {
5412 : 7970 : tree _q20 = TREE_OPERAND (_p0, 0);
5413 : 7970 : switch (TREE_CODE (_p1))
5414 : : {
5415 : 0 : CASE_CONVERT:
5416 : 0 : {
5417 : 0 : tree _q40 = TREE_OPERAND (_p1, 0);
5418 : 0 : switch (TREE_CODE (_q40))
5419 : : {
5420 : 0 : case LSHIFT_EXPR:
5421 : 0 : {
5422 : 0 : tree _q50 = TREE_OPERAND (_q40, 0);
5423 : 0 : tree _q51 = TREE_OPERAND (_q40, 1);
5424 : 0 : if (integer_onep (_q50))
5425 : : {
5426 : 0 : {
5427 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _p0, _q20, _q50, _q51 };
5428 : 0 : tree res = generic_simplify_299 (loc, type, _p0, _p1, captures, EXACT_DIV_EXPR);
5429 : 0 : if (res) return res;
5430 : : }
5431 : : }
5432 : : break;
5433 : : }
5434 : : default:;
5435 : : }
5436 : : break;
5437 : : }
5438 : 0 : case LSHIFT_EXPR:
5439 : 0 : {
5440 : 0 : tree _q40 = TREE_OPERAND (_p1, 0);
5441 : 0 : tree _q41 = TREE_OPERAND (_p1, 1);
5442 : 0 : if (integer_onep (_q40))
5443 : : {
5444 : 0 : {
5445 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _p0, _q20, _q40, _q41 };
5446 : 0 : tree res = generic_simplify_299 (loc, type, _p0, _p1, captures, EXACT_DIV_EXPR);
5447 : 0 : if (res) return res;
5448 : : }
5449 : : }
5450 : : break;
5451 : : }
5452 : : default:;
5453 : : }
5454 : : break;
5455 : : }
5456 : 1112973 : default:;
5457 : : }
5458 : 1112973 : switch (TREE_CODE (_p1))
5459 : : {
5460 : 2 : CASE_CONVERT:
5461 : 2 : {
5462 : 2 : tree _q30 = TREE_OPERAND (_p1, 0);
5463 : 2 : switch (TREE_CODE (_q30))
5464 : : {
5465 : 0 : case LSHIFT_EXPR:
5466 : 0 : {
5467 : 0 : tree _q40 = TREE_OPERAND (_q30, 0);
5468 : 0 : tree _q41 = TREE_OPERAND (_q30, 1);
5469 : 0 : if (integer_onep (_q40))
5470 : : {
5471 : 0 : {
5472 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _p0, _p0, _q40, _q41 };
5473 : 0 : tree res = generic_simplify_300 (loc, type, _p0, _p1, captures, EXACT_DIV_EXPR);
5474 : 0 : if (res) return res;
5475 : : }
5476 : : }
5477 : : break;
5478 : : }
5479 : : default:;
5480 : : }
5481 : : break;
5482 : : }
5483 : 0 : case LSHIFT_EXPR:
5484 : 0 : {
5485 : 0 : tree _q30 = TREE_OPERAND (_p1, 0);
5486 : 0 : tree _q31 = TREE_OPERAND (_p1, 1);
5487 : 0 : if (integer_onep (_q30))
5488 : : {
5489 : 0 : {
5490 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _p0, _p0, _q30, _q31 };
5491 : 0 : tree res = generic_simplify_300 (loc, type, _p0, _p1, captures, EXACT_DIV_EXPR);
5492 : 0 : if (res) return res;
5493 : : }
5494 : : }
5495 : : break;
5496 : : }
5497 : 1112973 : default:;
5498 : : }
5499 : 1112973 : if (integer_zerop (_p0))
5500 : : {
5501 : 0 : {
5502 : 0 : tree captures[2] ATTRIBUTE_UNUSED = { _p0, _p1 };
5503 : 0 : tree res = generic_simplify_301 (loc, type, _p0, _p1, captures, EXACT_DIV_EXPR);
5504 : 0 : if (res) return res;
5505 : : }
5506 : : }
5507 : 1112973 : switch (TREE_CODE (_p1))
5508 : : {
5509 : 0 : case SSA_NAME:
5510 : 0 : {
5511 : 0 : {
5512 : 0 : tree captures[2] ATTRIBUTE_UNUSED = { _p0, _p1 };
5513 : 0 : tree res = generic_simplify_303 (loc, type, _p0, _p1, captures, EXACT_DIV_EXPR);
5514 : 0 : if (res) return res;
5515 : : }
5516 : 0 : break;
5517 : : }
5518 : 1112973 : default:;
5519 : : }
5520 : 1112973 : if (integer_minus_onep (_p1))
5521 : : {
5522 : 0 : {
5523 : 0 : tree captures[2] ATTRIBUTE_UNUSED = { _p0, _p1 };
5524 : 0 : tree res = generic_simplify_302 (loc, type, _p0, _p1, captures, EXACT_DIV_EXPR);
5525 : 0 : if (res) return res;
5526 : : }
5527 : : }
5528 : 1112973 : if ((_p1 == _p0 && ! TREE_SIDE_EFFECTS (_p1)) || (operand_equal_p (_p1, _p0, 0) && types_match (_p1, _p0)))
5529 : : {
5530 : 0 : {
5531 : 0 : tree captures[1] ATTRIBUTE_UNUSED = { _p0 };
5532 : 0 : tree res = generic_simplify_304 (loc, type, _p0, _p1, captures, EXACT_DIV_EXPR);
5533 : 0 : if (res) return res;
5534 : : }
5535 : : }
5536 : 1112973 : switch (TREE_CODE (_p1))
5537 : : {
5538 : 0 : case ABS_EXPR:
5539 : 0 : {
5540 : 0 : tree _q30 = TREE_OPERAND (_p1, 0);
5541 : 0 : if ((_q30 == _p0 && ! TREE_SIDE_EFFECTS (_q30)) || (operand_equal_p (_q30, _p0, 0) && types_match (_q30, _p0)))
5542 : : {
5543 : 0 : {
5544 : 0 : tree captures[1] ATTRIBUTE_UNUSED = { _p0 };
5545 : 0 : tree res = generic_simplify_305 (loc, type, _p0, _p1, captures, EXACT_DIV_EXPR);
5546 : 0 : if (res) return res;
5547 : : }
5548 : : }
5549 : : break;
5550 : : }
5551 : 1112973 : default:;
5552 : : }
5553 : 1112973 : switch (TREE_CODE (_p0))
5554 : : {
5555 : 0 : case ABS_EXPR:
5556 : 0 : {
5557 : 0 : tree _q20 = TREE_OPERAND (_p0, 0);
5558 : 0 : if ((_p1 == _q20 && ! TREE_SIDE_EFFECTS (_p1)) || (operand_equal_p (_p1, _q20, 0) && types_match (_p1, _q20)))
5559 : : {
5560 : 0 : {
5561 : 0 : tree captures[1] ATTRIBUTE_UNUSED = { _q20 };
5562 : 0 : tree res = generic_simplify_305 (loc, type, _p0, _p1, captures, EXACT_DIV_EXPR);
5563 : 0 : if (res) return res;
5564 : : }
5565 : : }
5566 : : break;
5567 : : }
5568 : 1112973 : default:;
5569 : : }
5570 : 1112973 : switch (TREE_CODE (_p1))
5571 : : {
5572 : 0 : case NEGATE_EXPR:
5573 : 0 : {
5574 : 0 : tree _q30 = TREE_OPERAND (_p1, 0);
5575 : 0 : if ((_q30 == _p0 && ! TREE_SIDE_EFFECTS (_q30)) || (operand_equal_p (_q30, _p0, 0) && types_match (_q30, _p0)))
5576 : : {
5577 : 0 : {
5578 : 0 : tree captures[1] ATTRIBUTE_UNUSED = { _p0 };
5579 : 0 : tree res = generic_simplify_306 (loc, type, _p0, _p1, captures, EXACT_DIV_EXPR);
5580 : 0 : if (res) return res;
5581 : : }
5582 : : }
5583 : : break;
5584 : : }
5585 : 1112973 : default:;
5586 : : }
5587 : 1112973 : switch (TREE_CODE (_p0))
5588 : : {
5589 : 1140 : case NEGATE_EXPR:
5590 : 1140 : {
5591 : 1140 : tree _q20 = TREE_OPERAND (_p0, 0);
5592 : 1140 : if ((_p1 == _q20 && ! TREE_SIDE_EFFECTS (_p1)) || (operand_equal_p (_p1, _q20, 0) && types_match (_p1, _q20)))
5593 : : {
5594 : 0 : {
5595 : 0 : tree captures[1] ATTRIBUTE_UNUSED = { _q20 };
5596 : 0 : tree res = generic_simplify_306 (loc, type, _p0, _p1, captures, EXACT_DIV_EXPR);
5597 : 0 : if (res) return res;
5598 : : }
5599 : : }
5600 : : break;
5601 : : }
5602 : 0 : case EXACT_DIV_EXPR:
5603 : 0 : {
5604 : 0 : tree _q20 = TREE_OPERAND (_p0, 0);
5605 : 0 : tree _q21 = TREE_OPERAND (_p0, 1);
5606 : 0 : switch (TREE_CODE (_q21))
5607 : : {
5608 : 0 : case INTEGER_CST:
5609 : 0 : {
5610 : 0 : switch (TREE_CODE (_p1))
5611 : : {
5612 : 0 : case INTEGER_CST:
5613 : 0 : {
5614 : 0 : {
5615 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1 };
5616 : 0 : tree res = generic_simplify_307 (loc, type, _p0, _p1, captures, EXACT_DIV_EXPR);
5617 : 0 : if (res) return res;
5618 : : }
5619 : 0 : break;
5620 : : }
5621 : : default:;
5622 : : }
5623 : : break;
5624 : : }
5625 : : default:;
5626 : : }
5627 : : break;
5628 : : }
5629 : 7970 : CASE_CONVERT:
5630 : 7970 : {
5631 : 7970 : tree _q20 = TREE_OPERAND (_p0, 0);
5632 : 7970 : switch (TREE_CODE (_q20))
5633 : : {
5634 : 0 : case BIT_AND_EXPR:
5635 : 0 : {
5636 : 0 : tree _q30 = TREE_OPERAND (_q20, 0);
5637 : 0 : tree _q31 = TREE_OPERAND (_q20, 1);
5638 : 0 : switch (TREE_CODE (_q31))
5639 : : {
5640 : 0 : case INTEGER_CST:
5641 : 0 : {
5642 : 0 : switch (TREE_CODE (_p1))
5643 : : {
5644 : 0 : case INTEGER_CST:
5645 : 0 : {
5646 : 0 : {
5647 : 0 : tree captures[3] ATTRIBUTE_UNUSED = { _q30, _q31, _p1 };
5648 : 0 : tree res = generic_simplify_308 (loc, type, _p0, _p1, captures, EXACT_DIV_EXPR);
5649 : 0 : if (res) return res;
5650 : : }
5651 : 0 : break;
5652 : : }
5653 : : default:;
5654 : : }
5655 : : break;
5656 : : }
5657 : : default:;
5658 : : }
5659 : : break;
5660 : : }
5661 : : default:;
5662 : : }
5663 : : break;
5664 : : }
5665 : 0 : case BIT_AND_EXPR:
5666 : 0 : {
5667 : 0 : tree _q20 = TREE_OPERAND (_p0, 0);
5668 : 0 : tree _q21 = TREE_OPERAND (_p0, 1);
5669 : 0 : switch (TREE_CODE (_q21))
5670 : : {
5671 : 0 : case INTEGER_CST:
5672 : 0 : {
5673 : 0 : switch (TREE_CODE (_p1))
5674 : : {
5675 : 0 : case INTEGER_CST:
5676 : 0 : {
5677 : 0 : {
5678 : 0 : tree captures[3] ATTRIBUTE_UNUSED = { _q20, _q21, _p1 };
5679 : 0 : tree res = generic_simplify_308 (loc, type, _p0, _p1, captures, EXACT_DIV_EXPR);
5680 : 0 : if (res) return res;
5681 : : }
5682 : 0 : break;
5683 : : }
5684 : : default:;
5685 : : }
5686 : : break;
5687 : : }
5688 : : default:;
5689 : : }
5690 : : break;
5691 : : }
5692 : 17780 : case MULT_EXPR:
5693 : 17780 : {
5694 : 17780 : tree _q20 = TREE_OPERAND (_p0, 0);
5695 : 17780 : tree _q21 = TREE_OPERAND (_p0, 1);
5696 : 17780 : if (integer_pow2p (_q21))
5697 : : {
5698 : 16737 : if ((_p1 == _q21 && ! TREE_SIDE_EFFECTS (_p1)) || (operand_equal_p (_p1, _q21, 0) && types_match (_p1, _q21)))
5699 : : {
5700 : 16675 : {
5701 : 16675 : tree captures[2] ATTRIBUTE_UNUSED = { _q20, _q21 };
5702 : 16675 : tree res = generic_simplify_309 (loc, type, _p0, _p1, captures, EXACT_DIV_EXPR);
5703 : 16675 : if (res) return res;
5704 : : }
5705 : : }
5706 : : }
5707 : 1112 : if ((_p1 == _q21 && ! TREE_SIDE_EFFECTS (_p1)) || (operand_equal_p (_p1, _q21, 0) && types_match (_p1, _q21)))
5708 : : {
5709 : 7 : {
5710 : 7 : tree captures[2] ATTRIBUTE_UNUSED = { _q20, _q21 };
5711 : 7 : tree res = generic_simplify_310 (loc, type, _p0, _p1, captures, EXACT_DIV_EXPR);
5712 : 7 : if (res) return res;
5713 : : }
5714 : : }
5715 : 1105 : if ((_p1 == _q20 && ! TREE_SIDE_EFFECTS (_p1)) || (operand_equal_p (_p1, _q20, 0) && types_match (_p1, _q20)))
5716 : : {
5717 : 0 : {
5718 : 0 : tree captures[2] ATTRIBUTE_UNUSED = { _q21, _q20 };
5719 : 0 : tree res = generic_simplify_310 (loc, type, _p0, _p1, captures, EXACT_DIV_EXPR);
5720 : 0 : if (res) return res;
5721 : : }
5722 : : }
5723 : 1105 : switch (TREE_CODE (_q21))
5724 : : {
5725 : 1105 : case INTEGER_CST:
5726 : 1105 : {
5727 : 1105 : switch (TREE_CODE (_p1))
5728 : : {
5729 : 0 : case MULT_EXPR:
5730 : 0 : {
5731 : 0 : tree _q50 = TREE_OPERAND (_p1, 0);
5732 : 0 : tree _q51 = TREE_OPERAND (_p1, 1);
5733 : 0 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
5734 : : {
5735 : 0 : switch (TREE_CODE (_q51))
5736 : : {
5737 : 0 : case INTEGER_CST:
5738 : 0 : {
5739 : 0 : {
5740 : 0 : tree captures[3] ATTRIBUTE_UNUSED = { _q20, _q21, _q51 };
5741 : 0 : tree res = generic_simplify_311 (loc, type, _p0, _p1, captures, EXACT_DIV_EXPR);
5742 : 0 : if (res) return res;
5743 : : }
5744 : 0 : break;
5745 : : }
5746 : : default:;
5747 : : }
5748 : : }
5749 : : break;
5750 : : }
5751 : : default:;
5752 : : }
5753 : : break;
5754 : : }
5755 : : default:;
5756 : : }
5757 : : break;
5758 : : }
5759 : 0 : case VEC_COND_EXPR:
5760 : 0 : {
5761 : 0 : tree _q20 = TREE_OPERAND (_p0, 0);
5762 : 0 : tree _q21 = TREE_OPERAND (_p0, 1);
5763 : 0 : tree _q22 = TREE_OPERAND (_p0, 2);
5764 : 0 : switch (TREE_CODE (_p1))
5765 : : {
5766 : 0 : case VEC_COND_EXPR:
5767 : 0 : {
5768 : 0 : tree _q60 = TREE_OPERAND (_p1, 0);
5769 : 0 : tree _q61 = TREE_OPERAND (_p1, 1);
5770 : 0 : tree _q62 = TREE_OPERAND (_p1, 2);
5771 : 0 : if ((_q60 == _q20 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q20, 0) && types_match (_q60, _q20)))
5772 : : {
5773 : 0 : {
5774 : 0 : tree captures[7] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _q22, _p1, _q61, _q62 };
5775 : 0 : if (VECTOR_TYPE_P (type)
5776 : 0 : && (TREE_CODE_CLASS (EXACT_DIV_EXPR) != tcc_comparison
5777 : : || types_match (type, TREE_TYPE (captures[2]))
5778 : : || expand_vec_cond_expr_p (type, TREE_TYPE (captures[1]))
5779 : : || (optimize_vectors_before_lowering_p ()
5780 : : && !expand_vec_cond_expr_p (TREE_TYPE (captures[2]), TREE_TYPE (captures[1]))))
5781 : : )
5782 : : {
5783 : 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1638;
5784 : 0 : {
5785 : 0 : tree res_op0;
5786 : 0 : res_op0 = captures[1];
5787 : 0 : tree res_op1;
5788 : 0 : {
5789 : 0 : tree _o1[2], _r1;
5790 : 0 : _o1[0] = captures[2];
5791 : 0 : _o1[1] = captures[5];
5792 : 0 : _r1 = fold_build2_loc (loc, EXACT_DIV_EXPR, TREE_TYPE (_o1[0]), _o1[0], _o1[1]);
5793 : 0 : if (EXPR_P (_r1))
5794 : 0 : goto next_after_fail1638;
5795 : 0 : res_op1 = _r1;
5796 : : }
5797 : 0 : tree res_op2;
5798 : 0 : {
5799 : 0 : tree _o1[2], _r1;
5800 : 0 : _o1[0] = captures[3];
5801 : 0 : _o1[1] = captures[6];
5802 : 0 : _r1 = fold_build2_loc (loc, EXACT_DIV_EXPR, TREE_TYPE (_o1[0]), _o1[0], _o1[1]);
5803 : 0 : if (EXPR_P (_r1))
5804 : 0 : goto next_after_fail1638;
5805 : 0 : res_op2 = _r1;
5806 : : }
5807 : 0 : tree _r;
5808 : 0 : _r = fold_build3_loc (loc, VEC_COND_EXPR, type, res_op0, res_op1, res_op2);
5809 : 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 887, __FILE__, __LINE__, true);
5810 : 0 : return _r;
5811 : : }
5812 : 0 : next_after_fail1638:;
5813 : : }
5814 : : }
5815 : : }
5816 : : break;
5817 : : }
5818 : 0 : default:;
5819 : : }
5820 : 0 : {
5821 : 0 : tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _q22, _p1 };
5822 : 0 : if (VECTOR_TYPE_P (type)
5823 : 0 : && (TREE_CODE_CLASS (EXACT_DIV_EXPR) != tcc_comparison
5824 : : || types_match (type, TREE_TYPE (captures[2]))
5825 : : || expand_vec_cond_expr_p (type, TREE_TYPE (captures[1]))
5826 : : || (optimize_vectors_before_lowering_p ()
5827 : : && !expand_vec_cond_expr_p (TREE_TYPE (captures[2]), TREE_TYPE (captures[1]))))
5828 : : )
5829 : : {
5830 : 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1639;
5831 : 0 : {
5832 : 0 : if (! tree_invariant_p (captures[4])) goto next_after_fail1639;
5833 : 0 : tree res_op0;
5834 : 0 : res_op0 = captures[1];
5835 : 0 : tree res_op1;
5836 : 0 : {
5837 : 0 : tree _o1[2], _r1;
5838 : 0 : _o1[0] = captures[2];
5839 : 0 : _o1[1] = unshare_expr (captures[4]);
5840 : 0 : _r1 = fold_build2_loc (loc, EXACT_DIV_EXPR, TREE_TYPE (_o1[0]), _o1[0], _o1[1]);
5841 : 0 : if (EXPR_P (_r1))
5842 : 0 : goto next_after_fail1639;
5843 : 0 : res_op1 = _r1;
5844 : : }
5845 : 0 : tree res_op2;
5846 : 0 : {
5847 : 0 : tree _o1[2], _r1;
5848 : 0 : _o1[0] = captures[3];
5849 : 0 : _o1[1] = captures[4];
5850 : 0 : _r1 = fold_build2_loc (loc, EXACT_DIV_EXPR, TREE_TYPE (_o1[0]), _o1[0], _o1[1]);
5851 : 0 : if (EXPR_P (_r1))
5852 : 0 : goto next_after_fail1639;
5853 : 0 : res_op2 = _r1;
5854 : : }
5855 : 0 : tree _r;
5856 : 0 : _r = fold_build3_loc (loc, VEC_COND_EXPR, type, res_op0, res_op1, res_op2);
5857 : 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 888, __FILE__, __LINE__, true);
5858 : 0 : return _r;
5859 : : }
5860 : 0 : next_after_fail1639:;
5861 : : }
5862 : : }
5863 : 0 : break;
5864 : : }
5865 : 1096298 : default:;
5866 : : }
5867 : 1096298 : switch (TREE_CODE (_p1))
5868 : : {
5869 : 0 : case VEC_COND_EXPR:
5870 : 0 : {
5871 : 0 : tree _q30 = TREE_OPERAND (_p1, 0);
5872 : 0 : tree _q31 = TREE_OPERAND (_p1, 1);
5873 : 0 : tree _q32 = TREE_OPERAND (_p1, 2);
5874 : 0 : {
5875 : 0 : tree captures[5] ATTRIBUTE_UNUSED = { _p0, _p1, _q30, _q31, _q32 };
5876 : 0 : if (VECTOR_TYPE_P (type)
5877 : 0 : && (TREE_CODE_CLASS (EXACT_DIV_EXPR) != tcc_comparison
5878 : : || types_match (type, TREE_TYPE (captures[3]))
5879 : : || expand_vec_cond_expr_p (type, TREE_TYPE (captures[2]))
5880 : : || (optimize_vectors_before_lowering_p ()
5881 : : && !expand_vec_cond_expr_p (TREE_TYPE (captures[3]), TREE_TYPE (captures[2]))))
5882 : : )
5883 : : {
5884 : 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1640;
5885 : 0 : {
5886 : 0 : if (! tree_invariant_p (captures[0])) goto next_after_fail1640;
5887 : 0 : tree res_op0;
5888 : 0 : res_op0 = captures[2];
5889 : 0 : tree res_op1;
5890 : 0 : {
5891 : 0 : tree _o1[2], _r1;
5892 : 0 : _o1[0] = unshare_expr (captures[0]);
5893 : 0 : _o1[1] = captures[3];
5894 : 0 : _r1 = fold_build2_loc (loc, EXACT_DIV_EXPR, TREE_TYPE (_o1[0]), _o1[0], _o1[1]);
5895 : 0 : if (EXPR_P (_r1))
5896 : 0 : goto next_after_fail1640;
5897 : 0 : res_op1 = _r1;
5898 : : }
5899 : 0 : tree res_op2;
5900 : 0 : {
5901 : 0 : tree _o1[2], _r1;
5902 : 0 : _o1[0] = captures[0];
5903 : 0 : _o1[1] = captures[4];
5904 : 0 : _r1 = fold_build2_loc (loc, EXACT_DIV_EXPR, TREE_TYPE (_o1[0]), _o1[0], _o1[1]);
5905 : 0 : if (EXPR_P (_r1))
5906 : 0 : goto next_after_fail1640;
5907 : 0 : res_op2 = _r1;
5908 : : }
5909 : 0 : tree _r;
5910 : 0 : _r = fold_build3_loc (loc, VEC_COND_EXPR, type, res_op0, res_op1, res_op2);
5911 : 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 889, __FILE__, __LINE__, true);
5912 : 0 : return _r;
5913 : : }
5914 : 0 : next_after_fail1640:;
5915 : : }
5916 : : }
5917 : 0 : break;
5918 : : }
5919 : : default:;
5920 : : }
5921 : : return NULL_TREE;
5922 : : }
5923 : :
5924 : : tree
5925 : 15129070 : generic_simplify_LT_EXPR (location_t ARG_UNUSED (loc), enum tree_code ARG_UNUSED (code), const tree ARG_UNUSED (type), tree _p0, tree _p1)
5926 : : {
5927 : 15129070 : const bool debug_dump = dump_file && (dump_flags & TDF_FOLDING);
5928 : 15129070 : switch (TREE_CODE (_p0))
5929 : : {
5930 : 2188 : case RDIV_EXPR:
5931 : 2188 : {
5932 : 2188 : tree _q20 = TREE_OPERAND (_p0, 0);
5933 : 2188 : tree _q21 = TREE_OPERAND (_p0, 1);
5934 : 2188 : switch (TREE_CODE (_q20))
5935 : : {
5936 : 691 : case REAL_CST:
5937 : 691 : {
5938 : 691 : if (real_zerop (_p1))
5939 : : {
5940 : 400 : {
5941 : 400 : tree captures[3] ATTRIBUTE_UNUSED = { _q20, _q21, _p1 };
5942 : 400 : tree res = generic_simplify_331 (loc, type, _p0, _p1, captures, LT_EXPR, GT_EXPR);
5943 : 400 : if (res) return res;
5944 : : }
5945 : : }
5946 : : break;
5947 : : }
5948 : : default:;
5949 : : }
5950 : : break;
5951 : : }
5952 : 2952 : case TRUNC_MOD_EXPR:
5953 : 2952 : {
5954 : 2952 : tree _q20 = TREE_OPERAND (_p0, 0);
5955 : 2952 : tree _q21 = TREE_OPERAND (_p0, 1);
5956 : 2952 : if ((_p1 == _q21 && ! TREE_SIDE_EFFECTS (_p1)) || (operand_equal_p (_p1, _q21, 0) && types_match (_p1, _q21)))
5957 : : {
5958 : 67 : {
5959 : 67 : tree captures[2] ATTRIBUTE_UNUSED = { _q20, _q21 };
5960 : 67 : tree res = generic_simplify_332 (loc, type, _p0, _p1, captures, LT_EXPR);
5961 : 67 : if (res) return res;
5962 : : }
5963 : : }
5964 : : break;
5965 : : }
5966 : 138042 : case MULT_EXPR:
5967 : 138042 : {
5968 : 138042 : tree _q20 = TREE_OPERAND (_p0, 0);
5969 : 138042 : tree _q21 = TREE_OPERAND (_p0, 1);
5970 : 138042 : switch (TREE_CODE (_p1))
5971 : : {
5972 : 51457 : case MULT_EXPR:
5973 : 51457 : {
5974 : 51457 : tree _q50 = TREE_OPERAND (_p1, 0);
5975 : 51457 : tree _q51 = TREE_OPERAND (_p1, 1);
5976 : 51457 : if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
5977 : : {
5978 : 9772 : {
5979 : 9772 : tree captures[3] ATTRIBUTE_UNUSED = { _q20, _q21, _q50 };
5980 : 9772 : tree res = generic_simplify_333 (loc, type, _p0, _p1, captures, LT_EXPR);
5981 : 9772 : if (res) return res;
5982 : : }
5983 : : }
5984 : 43422 : if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
5985 : : {
5986 : 0 : {
5987 : 0 : tree captures[3] ATTRIBUTE_UNUSED = { _q20, _q21, _q51 };
5988 : 0 : tree res = generic_simplify_333 (loc, type, _p0, _p1, captures, LT_EXPR);
5989 : 0 : if (res) return res;
5990 : : }
5991 : : }
5992 : 43422 : if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
5993 : : {
5994 : 0 : {
5995 : 0 : tree captures[3] ATTRIBUTE_UNUSED = { _q21, _q20, _q50 };
5996 : 0 : tree res = generic_simplify_333 (loc, type, _p0, _p1, captures, LT_EXPR);
5997 : 0 : if (res) return res;
5998 : : }
5999 : : }
6000 : 43422 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
6001 : : {
6002 : 1413 : {
6003 : 1413 : tree captures[3] ATTRIBUTE_UNUSED = { _q21, _q20, _q51 };
6004 : 1413 : tree res = generic_simplify_333 (loc, type, _p0, _p1, captures, LT_EXPR);
6005 : 1413 : if (res) return res;
6006 : : }
6007 : : }
6008 : : break;
6009 : : }
6010 : : default:;
6011 : : }
6012 : : break;
6013 : : }
6014 : 2537846 : CASE_CONVERT:
6015 : 2537846 : {
6016 : 2537846 : tree _q20 = TREE_OPERAND (_p0, 0);
6017 : 2537846 : switch (TREE_CODE (_q20))
6018 : : {
6019 : 97 : case EXACT_DIV_EXPR:
6020 : 97 : {
6021 : 97 : tree _q30 = TREE_OPERAND (_q20, 0);
6022 : 97 : tree _q31 = TREE_OPERAND (_q20, 1);
6023 : 97 : switch (TREE_CODE (_q31))
6024 : : {
6025 : 97 : case INTEGER_CST:
6026 : 97 : {
6027 : 97 : switch (TREE_CODE (_p1))
6028 : : {
6029 : 40 : CASE_CONVERT:
6030 : 40 : {
6031 : 40 : tree _q60 = TREE_OPERAND (_p1, 0);
6032 : 40 : switch (TREE_CODE (_q60))
6033 : : {
6034 : 0 : case EXACT_DIV_EXPR:
6035 : 0 : {
6036 : 0 : tree _q70 = TREE_OPERAND (_q60, 0);
6037 : 0 : tree _q71 = TREE_OPERAND (_q60, 1);
6038 : 0 : if ((_q71 == _q31 && ! TREE_SIDE_EFFECTS (_q71)) || (operand_equal_p (_q71, _q31, 0) && types_match (_q71, _q31)))
6039 : : {
6040 : 0 : {
6041 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _p0, _q30, _q31, _q70 };
6042 : 0 : tree res = generic_simplify_203 (loc, type, _p0, _p1, captures, LT_EXPR);
6043 : 0 : if (res) return res;
6044 : : }
6045 : : }
6046 : : break;
6047 : : }
6048 : : default:;
6049 : : }
6050 : : break;
6051 : : }
6052 : : default:;
6053 : : }
6054 : : break;
6055 : : }
6056 : : default:;
6057 : : }
6058 : : break;
6059 : : }
6060 : : default:;
6061 : : }
6062 : : break;
6063 : : }
6064 : 7078 : case EXACT_DIV_EXPR:
6065 : 7078 : {
6066 : 7078 : tree _q20 = TREE_OPERAND (_p0, 0);
6067 : 7078 : tree _q21 = TREE_OPERAND (_p0, 1);
6068 : 7078 : switch (TREE_CODE (_q21))
6069 : : {
6070 : 7078 : case INTEGER_CST:
6071 : 7078 : {
6072 : 7078 : switch (TREE_CODE (_p1))
6073 : : {
6074 : 2 : case EXACT_DIV_EXPR:
6075 : 2 : {
6076 : 2 : tree _q50 = TREE_OPERAND (_p1, 0);
6077 : 2 : tree _q51 = TREE_OPERAND (_p1, 1);
6078 : 2 : if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
6079 : : {
6080 : 0 : {
6081 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _q50 };
6082 : 0 : tree res = generic_simplify_203 (loc, type, _p0, _p1, captures, LT_EXPR);
6083 : 0 : if (res) return res;
6084 : : }
6085 : : }
6086 : : break;
6087 : : }
6088 : : default:;
6089 : : }
6090 : : break;
6091 : : }
6092 : : default:;
6093 : : }
6094 : : break;
6095 : : }
6096 : 11878 : case TRUNC_DIV_EXPR:
6097 : 11878 : {
6098 : 11878 : tree _q20 = TREE_OPERAND (_p0, 0);
6099 : 11878 : tree _q21 = TREE_OPERAND (_p0, 1);
6100 : 11878 : switch (TREE_CODE (_q21))
6101 : : {
6102 : 3503 : case INTEGER_CST:
6103 : 3503 : {
6104 : 3503 : switch (TREE_CODE (_p1))
6105 : : {
6106 : 1414 : case INTEGER_CST:
6107 : 1414 : {
6108 : 1414 : {
6109 : 1414 : tree captures[4] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1 };
6110 : 1414 : tree res = generic_simplify_206 (loc, type, _p0, _p1, captures, LT_EXPR);
6111 : 1414 : if (res) return res;
6112 : : }
6113 : 689 : break;
6114 : : }
6115 : : default:;
6116 : : }
6117 : : break;
6118 : : }
6119 : : default:;
6120 : : }
6121 : : break;
6122 : : }
6123 : 2125224 : case PLUS_EXPR:
6124 : 2125224 : {
6125 : 2125224 : tree _q20 = TREE_OPERAND (_p0, 0);
6126 : 2125224 : tree _q21 = TREE_OPERAND (_p0, 1);
6127 : 2125224 : switch (TREE_CODE (_p1))
6128 : : {
6129 : 309290 : case PLUS_EXPR:
6130 : 309290 : {
6131 : 309290 : tree _q50 = TREE_OPERAND (_p1, 0);
6132 : 309290 : tree _q51 = TREE_OPERAND (_p1, 1);
6133 : 309290 : if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
6134 : : {
6135 : 127543 : {
6136 : 127543 : tree captures[3] ATTRIBUTE_UNUSED = { _q20, _q21, _q50 };
6137 : 127543 : tree res = generic_simplify_334 (loc, type, _p0, _p1, captures, LT_EXPR);
6138 : 127543 : if (res) return res;
6139 : : }
6140 : : }
6141 : 257503 : if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
6142 : : {
6143 : 8 : {
6144 : 8 : tree captures[3] ATTRIBUTE_UNUSED = { _q20, _q21, _q51 };
6145 : 8 : tree res = generic_simplify_334 (loc, type, _p0, _p1, captures, LT_EXPR);
6146 : 8 : if (res) return res;
6147 : : }
6148 : : }
6149 : 257503 : if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
6150 : : {
6151 : 10 : {
6152 : 10 : tree captures[3] ATTRIBUTE_UNUSED = { _q21, _q20, _q50 };
6153 : 10 : tree res = generic_simplify_334 (loc, type, _p0, _p1, captures, LT_EXPR);
6154 : 10 : if (res) return res;
6155 : : }
6156 : : }
6157 : 257503 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
6158 : : {
6159 : 1692 : {
6160 : 1692 : tree captures[3] ATTRIBUTE_UNUSED = { _q21, _q20, _q51 };
6161 : 1692 : tree res = generic_simplify_334 (loc, type, _p0, _p1, captures, LT_EXPR);
6162 : 1692 : if (res) return res;
6163 : : }
6164 : : }
6165 : : break;
6166 : : }
6167 : 2073111 : default:;
6168 : : }
6169 : 2073111 : switch (TREE_CODE (_q21))
6170 : : {
6171 : 1597549 : case INTEGER_CST:
6172 : 1597549 : {
6173 : 1597549 : switch (TREE_CODE (_p1))
6174 : : {
6175 : 252937 : case PLUS_EXPR:
6176 : 252937 : {
6177 : 252937 : tree _q50 = TREE_OPERAND (_p1, 0);
6178 : 252937 : tree _q51 = TREE_OPERAND (_p1, 1);
6179 : 252937 : if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
6180 : : {
6181 : 75753 : {
6182 : 75753 : tree captures[3] ATTRIBUTE_UNUSED = { _q20, _q21, _q50 };
6183 : 75753 : tree res = generic_simplify_335 (loc, type, _p0, _p1, captures, LT_EXPR);
6184 : 75753 : if (res) return res;
6185 : : }
6186 : : }
6187 : : break;
6188 : : }
6189 : : default:;
6190 : : }
6191 : : break;
6192 : : }
6193 : 2073106 : default:;
6194 : : }
6195 : 2073106 : if ((_p1 == _q21 && ! TREE_SIDE_EFFECTS (_p1)) || (operand_equal_p (_p1, _q21, 0) && types_match (_p1, _q21)))
6196 : : {
6197 : 182060 : {
6198 : 182060 : tree captures[3] ATTRIBUTE_UNUSED = { _p0, _q20, _q21 };
6199 : 182060 : tree res = generic_simplify_336 (loc, type, _p0, _p1, captures, LT_EXPR);
6200 : 182060 : if (res) return res;
6201 : : }
6202 : : }
6203 : 1915279 : if ((_p1 == _q20 && ! TREE_SIDE_EFFECTS (_p1)) || (operand_equal_p (_p1, _q20, 0) && types_match (_p1, _q20)))
6204 : : {
6205 : 50261 : {
6206 : 50261 : tree captures[3] ATTRIBUTE_UNUSED = { _p0, _q21, _q20 };
6207 : 50261 : tree res = generic_simplify_336 (loc, type, _p0, _p1, captures, LT_EXPR);
6208 : 50261 : if (res) return res;
6209 : : }
6210 : : }
6211 : : break;
6212 : : }
6213 : 153446 : case MINUS_EXPR:
6214 : 153446 : {
6215 : 153446 : tree _q20 = TREE_OPERAND (_p0, 0);
6216 : 153446 : tree _q21 = TREE_OPERAND (_p0, 1);
6217 : 153446 : switch (TREE_CODE (_p1))
6218 : : {
6219 : 5012 : case MINUS_EXPR:
6220 : 5012 : {
6221 : 5012 : tree _q50 = TREE_OPERAND (_p1, 0);
6222 : 5012 : tree _q51 = TREE_OPERAND (_p1, 1);
6223 : 5012 : if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
6224 : : {
6225 : 176 : {
6226 : 176 : tree captures[3] ATTRIBUTE_UNUSED = { _q20, _q21, _q50 };
6227 : 176 : tree res = generic_simplify_337 (loc, type, _p0, _p1, captures, LT_EXPR);
6228 : 176 : if (res) return res;
6229 : : }
6230 : : }
6231 : 5012 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
6232 : : {
6233 : 161 : {
6234 : 161 : tree captures[3] ATTRIBUTE_UNUSED = { _q20, _q21, _q51 };
6235 : 161 : tree res = generic_simplify_338 (loc, type, _p0, _p1, captures, LT_EXPR);
6236 : 161 : if (res) return res;
6237 : : }
6238 : : }
6239 : : break;
6240 : : }
6241 : : default:;
6242 : : }
6243 : : break;
6244 : : }
6245 : 50404 : case POINTER_DIFF_EXPR:
6246 : 50404 : {
6247 : 50404 : tree _q20 = TREE_OPERAND (_p0, 0);
6248 : 50404 : tree _q21 = TREE_OPERAND (_p0, 1);
6249 : 50404 : switch (TREE_CODE (_p1))
6250 : : {
6251 : 61 : case POINTER_DIFF_EXPR:
6252 : 61 : {
6253 : 61 : tree _q50 = TREE_OPERAND (_p1, 0);
6254 : 61 : tree _q51 = TREE_OPERAND (_p1, 1);
6255 : 61 : if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
6256 : : {
6257 : 0 : {
6258 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _q50 };
6259 : 0 : tree res = generic_simplify_210 (loc, type, _p0, _p1, captures, LT_EXPR);
6260 : 0 : if (res) return res;
6261 : : }
6262 : : }
6263 : 61 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
6264 : : {
6265 : 0 : {
6266 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _q51 };
6267 : 0 : tree res = generic_simplify_211 (loc, type, _p0, _p1, captures, LT_EXPR);
6268 : 0 : if (res) return res;
6269 : : }
6270 : : }
6271 : : break;
6272 : : }
6273 : : default:;
6274 : : }
6275 : : break;
6276 : : }
6277 : 14910013 : default:;
6278 : : }
6279 : 14910013 : switch (TREE_CODE (_p1))
6280 : : {
6281 : 345493 : case PLUS_EXPR:
6282 : 345493 : {
6283 : 345493 : tree _q30 = TREE_OPERAND (_p1, 0);
6284 : 345493 : tree _q31 = TREE_OPERAND (_p1, 1);
6285 : 345493 : if ((_q31 == _p0 && ! TREE_SIDE_EFFECTS (_q31)) || (operand_equal_p (_q31, _p0, 0) && types_match (_q31, _p0)))
6286 : : {
6287 : 105 : {
6288 : 105 : tree captures[3] ATTRIBUTE_UNUSED = { _p1, _q30, _p0 };
6289 : 105 : tree res = generic_simplify_336 (loc, type, _p0, _p1, captures, GT_EXPR);
6290 : 105 : if (res) return res;
6291 : : }
6292 : : }
6293 : 345388 : if ((_q30 == _p0 && ! TREE_SIDE_EFFECTS (_q30)) || (operand_equal_p (_q30, _p0, 0) && types_match (_q30, _p0)))
6294 : : {
6295 : 80 : {
6296 : 80 : tree captures[3] ATTRIBUTE_UNUSED = { _p1, _q31, _p0 };
6297 : 80 : tree res = generic_simplify_336 (loc, type, _p0, _p1, captures, GT_EXPR);
6298 : 80 : if (res) return res;
6299 : : }
6300 : : }
6301 : : break;
6302 : : }
6303 : 21972 : case MINUS_EXPR:
6304 : 21972 : {
6305 : 21972 : tree _q30 = TREE_OPERAND (_p1, 0);
6306 : 21972 : tree _q31 = TREE_OPERAND (_p1, 1);
6307 : 21972 : if ((_q30 == _p0 && ! TREE_SIDE_EFFECTS (_q30)) || (operand_equal_p (_q30, _p0, 0) && types_match (_q30, _p0)))
6308 : : {
6309 : 0 : {
6310 : 0 : tree captures[3] ATTRIBUTE_UNUSED = { _p0, _p1, _q31 };
6311 : 0 : tree res = generic_simplify_209 (loc, type, _p0, _p1, captures, LT_EXPR);
6312 : 0 : if (res) return res;
6313 : : }
6314 : : }
6315 : : break;
6316 : : }
6317 : 14909908 : default:;
6318 : : }
6319 : 14909908 : switch (TREE_CODE (_p0))
6320 : : {
6321 : 153446 : case MINUS_EXPR:
6322 : 153446 : {
6323 : 153446 : tree _q20 = TREE_OPERAND (_p0, 0);
6324 : 153446 : tree _q21 = TREE_OPERAND (_p0, 1);
6325 : 153446 : if ((_p1 == _q20 && ! TREE_SIDE_EFFECTS (_p1)) || (operand_equal_p (_p1, _q20, 0) && types_match (_p1, _q20)))
6326 : : {
6327 : 1526 : {
6328 : 1526 : tree captures[3] ATTRIBUTE_UNUSED = { _q20, _p0, _q21 };
6329 : 1526 : tree res = generic_simplify_209 (loc, type, _p0, _p1, captures, GT_EXPR);
6330 : 1526 : if (res) return res;
6331 : : }
6332 : : }
6333 : : break;
6334 : : }
6335 : 1566 : case BIT_IOR_EXPR:
6336 : 1566 : {
6337 : 1566 : tree _q20 = TREE_OPERAND (_p0, 0);
6338 : 1566 : tree _q21 = TREE_OPERAND (_p0, 1);
6339 : 1566 : if (tree_expr_nonnegative_p (_q20))
6340 : : {
6341 : 463 : if ((_p1 == _q20 && ! TREE_SIDE_EFFECTS (_p1)) || (operand_equal_p (_p1, _q20, 0) && types_match (_p1, _q20)))
6342 : : {
6343 : 0 : {
6344 : 0 : tree captures[2] ATTRIBUTE_UNUSED = { _q20, _q21 };
6345 : 0 : tree res = generic_simplify_339 (loc, type, _p0, _p1, captures, LT_EXPR, BIT_IOR_EXPR);
6346 : 0 : if (res) return res;
6347 : : }
6348 : : }
6349 : : }
6350 : 1566 : if (tree_expr_nonnegative_p (_q21))
6351 : : {
6352 : 1038 : if ((_p1 == _q21 && ! TREE_SIDE_EFFECTS (_p1)) || (operand_equal_p (_p1, _q21, 0) && types_match (_p1, _q21)))
6353 : : {
6354 : 0 : {
6355 : 0 : tree captures[2] ATTRIBUTE_UNUSED = { _q21, _q20 };
6356 : 0 : tree res = generic_simplify_339 (loc, type, _p0, _p1, captures, LT_EXPR, BIT_IOR_EXPR);
6357 : 0 : if (res) return res;
6358 : : }
6359 : : }
6360 : : }
6361 : : break;
6362 : : }
6363 : 14908684 : default:;
6364 : : }
6365 : 14908684 : switch (TREE_CODE (_p1))
6366 : : {
6367 : 400 : case BIT_AND_EXPR:
6368 : 400 : {
6369 : 400 : tree _q30 = TREE_OPERAND (_p1, 0);
6370 : 400 : tree _q31 = TREE_OPERAND (_p1, 1);
6371 : 400 : if ((_q30 == _p0 && ! TREE_SIDE_EFFECTS (_q30)) || (operand_equal_p (_q30, _p0, 0) && types_match (_q30, _p0)))
6372 : : {
6373 : 0 : if (tree_expr_nonnegative_p (_q30))
6374 : : {
6375 : 0 : {
6376 : 0 : tree captures[2] ATTRIBUTE_UNUSED = { _p0, _q31 };
6377 : 0 : tree res = generic_simplify_339 (loc, type, _p0, _p1, captures, GT_EXPR, BIT_AND_EXPR);
6378 : 0 : if (res) return res;
6379 : : }
6380 : : }
6381 : : }
6382 : 400 : if ((_q31 == _p0 && ! TREE_SIDE_EFFECTS (_q31)) || (operand_equal_p (_q31, _p0, 0) && types_match (_q31, _p0)))
6383 : : {
6384 : 0 : if (tree_expr_nonnegative_p (_q31))
6385 : : {
6386 : 0 : {
6387 : 0 : tree captures[2] ATTRIBUTE_UNUSED = { _p0, _q30 };
6388 : 0 : tree res = generic_simplify_339 (loc, type, _p0, _p1, captures, GT_EXPR, BIT_AND_EXPR);
6389 : 0 : if (res) return res;
6390 : : }
6391 : : }
6392 : : }
6393 : : break;
6394 : : }
6395 : 14908684 : default:;
6396 : : }
6397 : 14908684 : switch (TREE_CODE (_p0))
6398 : : {
6399 : 6168 : case MIN_EXPR:
6400 : 6168 : {
6401 : 6168 : tree _q20 = TREE_OPERAND (_p0, 0);
6402 : 6168 : tree _q21 = TREE_OPERAND (_p0, 1);
6403 : 6168 : if ((_p1 == _q20 && ! TREE_SIDE_EFFECTS (_p1)) || (operand_equal_p (_p1, _q20, 0) && types_match (_p1, _q20)))
6404 : : {
6405 : 1 : {
6406 : 1 : tree captures[2] ATTRIBUTE_UNUSED = { _q20, _q21 };
6407 : 1 : tree res = generic_simplify_219 (loc, type, _p0, _p1, captures, MIN_EXPR, LT_EXPR, GT_EXPR);
6408 : 1 : if (res) return res;
6409 : : }
6410 : : }
6411 : 6167 : if ((_p1 == _q21 && ! TREE_SIDE_EFFECTS (_p1)) || (operand_equal_p (_p1, _q21, 0) && types_match (_p1, _q21)))
6412 : : {
6413 : 5 : {
6414 : 5 : tree captures[2] ATTRIBUTE_UNUSED = { _q21, _q20 };
6415 : 5 : tree res = generic_simplify_219 (loc, type, _p0, _p1, captures, MIN_EXPR, LT_EXPR, GT_EXPR);
6416 : 5 : if (res) return res;
6417 : : }
6418 : : }
6419 : 6165 : switch (TREE_CODE (_q21))
6420 : : {
6421 : 476 : case INTEGER_CST:
6422 : 476 : {
6423 : 476 : switch (TREE_CODE (_p1))
6424 : : {
6425 : 2 : case INTEGER_CST:
6426 : 2 : {
6427 : 2 : {
6428 : 2 : tree captures[3] ATTRIBUTE_UNUSED = { _q20, _q21, _p1 };
6429 : 2 : tree res = generic_simplify_340 (loc, type, _p0, _p1, captures, MIN_EXPR, LT_EXPR, BIT_IOR_EXPR);
6430 : 2 : if (res) return res;
6431 : : }
6432 : 0 : break;
6433 : : }
6434 : : default:;
6435 : : }
6436 : : break;
6437 : : }
6438 : : default:;
6439 : : }
6440 : : break;
6441 : : }
6442 : 14908679 : default:;
6443 : : }
6444 : 14908679 : switch (TREE_CODE (_p1))
6445 : : {
6446 : 665 : case MAX_EXPR:
6447 : 665 : {
6448 : 665 : tree _q30 = TREE_OPERAND (_p1, 0);
6449 : 665 : tree _q31 = TREE_OPERAND (_p1, 1);
6450 : 665 : if ((_q30 == _p0 && ! TREE_SIDE_EFFECTS (_q30)) || (operand_equal_p (_q30, _p0, 0) && types_match (_q30, _p0)))
6451 : : {
6452 : 0 : {
6453 : 0 : tree captures[2] ATTRIBUTE_UNUSED = { _p0, _q31 };
6454 : 0 : tree res = generic_simplify_219 (loc, type, _p0, _p1, captures, MAX_EXPR, GT_EXPR, LT_EXPR);
6455 : 0 : if (res) return res;
6456 : : }
6457 : : }
6458 : 665 : if ((_q31 == _p0 && ! TREE_SIDE_EFFECTS (_q31)) || (operand_equal_p (_q31, _p0, 0) && types_match (_q31, _p0)))
6459 : : {
6460 : 0 : {
6461 : 0 : tree captures[2] ATTRIBUTE_UNUSED = { _p0, _q30 };
6462 : 0 : tree res = generic_simplify_219 (loc, type, _p0, _p1, captures, MAX_EXPR, GT_EXPR, LT_EXPR);
6463 : 0 : if (res) return res;
6464 : : }
6465 : : }
6466 : : break;
6467 : : }
6468 : 5046 : case MIN_EXPR:
6469 : 5046 : {
6470 : 5046 : tree _q30 = TREE_OPERAND (_p1, 0);
6471 : 5046 : tree _q31 = TREE_OPERAND (_p1, 1);
6472 : 5046 : if ((_q30 == _p0 && ! TREE_SIDE_EFFECTS (_q30)) || (operand_equal_p (_q30, _p0, 0) && types_match (_q30, _p0)))
6473 : : {
6474 : 0 : {
6475 : 0 : tree captures[2] ATTRIBUTE_UNUSED = { _p0, _q31 };
6476 : 0 : tree res = generic_simplify_341 (loc, type, _p0, _p1, captures, MIN_EXPR, LT_EXPR);
6477 : 0 : if (res) return res;
6478 : : }
6479 : : }
6480 : 5046 : if ((_q31 == _p0 && ! TREE_SIDE_EFFECTS (_q31)) || (operand_equal_p (_q31, _p0, 0) && types_match (_q31, _p0)))
6481 : : {
6482 : 0 : {
6483 : 0 : tree captures[2] ATTRIBUTE_UNUSED = { _p0, _q30 };
6484 : 0 : tree res = generic_simplify_341 (loc, type, _p0, _p1, captures, MIN_EXPR, LT_EXPR);
6485 : 0 : if (res) return res;
6486 : : }
6487 : : }
6488 : : break;
6489 : : }
6490 : 14908679 : default:;
6491 : : }
6492 : 14908679 : switch (TREE_CODE (_p0))
6493 : : {
6494 : 4841 : case MAX_EXPR:
6495 : 4841 : {
6496 : 4841 : tree _q20 = TREE_OPERAND (_p0, 0);
6497 : 4841 : tree _q21 = TREE_OPERAND (_p0, 1);
6498 : 4841 : if ((_p1 == _q20 && ! TREE_SIDE_EFFECTS (_p1)) || (operand_equal_p (_p1, _q20, 0) && types_match (_p1, _q20)))
6499 : : {
6500 : 1 : {
6501 : 1 : tree captures[2] ATTRIBUTE_UNUSED = { _q20, _q21 };
6502 : 1 : tree res = generic_simplify_341 (loc, type, _p0, _p1, captures, MAX_EXPR, GT_EXPR);
6503 : 1 : if (res) return res;
6504 : : }
6505 : : }
6506 : 4840 : if ((_p1 == _q21 && ! TREE_SIDE_EFFECTS (_p1)) || (operand_equal_p (_p1, _q21, 0) && types_match (_p1, _q21)))
6507 : : {
6508 : 1 : {
6509 : 1 : tree captures[2] ATTRIBUTE_UNUSED = { _q21, _q20 };
6510 : 1 : tree res = generic_simplify_341 (loc, type, _p0, _p1, captures, MAX_EXPR, GT_EXPR);
6511 : 1 : if (res) return res;
6512 : : }
6513 : : }
6514 : 4839 : switch (TREE_CODE (_q21))
6515 : : {
6516 : 4298 : case INTEGER_CST:
6517 : 4298 : {
6518 : 4298 : switch (TREE_CODE (_p1))
6519 : : {
6520 : 1 : case INTEGER_CST:
6521 : 1 : {
6522 : 1 : {
6523 : 1 : tree captures[3] ATTRIBUTE_UNUSED = { _q20, _q21, _p1 };
6524 : 1 : tree res = generic_simplify_340 (loc, type, _p0, _p1, captures, MAX_EXPR, LT_EXPR, BIT_AND_EXPR);
6525 : 1 : if (res) return res;
6526 : : }
6527 : 0 : break;
6528 : : }
6529 : : default:;
6530 : : }
6531 : : break;
6532 : : }
6533 : : default:;
6534 : : }
6535 : : break;
6536 : : }
6537 : 904 : case VEC_COND_EXPR:
6538 : 904 : {
6539 : 904 : tree _q20 = TREE_OPERAND (_p0, 0);
6540 : 904 : tree _q21 = TREE_OPERAND (_p0, 1);
6541 : 904 : tree _q22 = TREE_OPERAND (_p0, 2);
6542 : 904 : switch (TREE_CODE (_p1))
6543 : : {
6544 : 0 : case VEC_COND_EXPR:
6545 : 0 : {
6546 : 0 : tree _q60 = TREE_OPERAND (_p1, 0);
6547 : 0 : tree _q61 = TREE_OPERAND (_p1, 1);
6548 : 0 : tree _q62 = TREE_OPERAND (_p1, 2);
6549 : 0 : if ((_q60 == _q20 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q20, 0) && types_match (_q60, _q20)))
6550 : : {
6551 : 0 : {
6552 : 0 : tree captures[7] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _q22, _p1, _q61, _q62 };
6553 : 0 : if (VECTOR_TYPE_P (type)
6554 : 0 : && (TREE_CODE_CLASS (LT_EXPR) != tcc_comparison
6555 : 0 : || types_match (type, TREE_TYPE (captures[2]))
6556 : 0 : || expand_vec_cond_expr_p (type, TREE_TYPE (captures[1]))
6557 : : || (optimize_vectors_before_lowering_p ()
6558 : 0 : && !expand_vec_cond_expr_p (TREE_TYPE (captures[2]), TREE_TYPE (captures[1]))))
6559 : : )
6560 : : {
6561 : 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1682;
6562 : 0 : {
6563 : 0 : tree res_op0;
6564 : 0 : res_op0 = captures[1];
6565 : 0 : tree res_op1;
6566 : 0 : {
6567 : 0 : tree _o1[2], _r1;
6568 : 0 : _o1[0] = captures[2];
6569 : 0 : _o1[1] = captures[5];
6570 : 0 : _r1 = fold_build2_loc (loc, LT_EXPR, type, _o1[0], _o1[1]);
6571 : 0 : if (EXPR_P (_r1))
6572 : 0 : goto next_after_fail1682;
6573 : 0 : res_op1 = _r1;
6574 : : }
6575 : 0 : tree res_op2;
6576 : 0 : {
6577 : 0 : tree _o1[2], _r1;
6578 : 0 : _o1[0] = captures[3];
6579 : 0 : _o1[1] = captures[6];
6580 : 0 : _r1 = fold_build2_loc (loc, LT_EXPR, type, _o1[0], _o1[1]);
6581 : 0 : if (EXPR_P (_r1))
6582 : 0 : goto next_after_fail1682;
6583 : 0 : res_op2 = _r1;
6584 : : }
6585 : 0 : tree _r;
6586 : 0 : _r = fold_build3_loc (loc, VEC_COND_EXPR, type, res_op0, res_op1, res_op2);
6587 : 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 887, __FILE__, __LINE__, true);
6588 : 0 : return _r;
6589 : : }
6590 : 0 : next_after_fail1682:;
6591 : : }
6592 : : }
6593 : : }
6594 : : break;
6595 : : }
6596 : 904 : default:;
6597 : : }
6598 : 904 : {
6599 : 904 : tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _q22, _p1 };
6600 : 904 : if (VECTOR_TYPE_P (type)
6601 : 904 : && (TREE_CODE_CLASS (LT_EXPR) != tcc_comparison
6602 : 904 : || types_match (type, TREE_TYPE (captures[2]))
6603 : 904 : || expand_vec_cond_expr_p (type, TREE_TYPE (captures[1]))
6604 : : || (optimize_vectors_before_lowering_p ()
6605 : 1 : && !expand_vec_cond_expr_p (TREE_TYPE (captures[2]), TREE_TYPE (captures[1]))))
6606 : : )
6607 : : {
6608 : 904 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1683;
6609 : 904 : {
6610 : 904 : if (! tree_invariant_p (captures[4])) goto next_after_fail1683;
6611 : 36 : tree res_op0;
6612 : 36 : res_op0 = captures[1];
6613 : 36 : tree res_op1;
6614 : 36 : {
6615 : 36 : tree _o1[2], _r1;
6616 : 36 : _o1[0] = captures[2];
6617 : 36 : _o1[1] = unshare_expr (captures[4]);
6618 : 36 : _r1 = fold_build2_loc (loc, LT_EXPR, type, _o1[0], _o1[1]);
6619 : 36 : if (EXPR_P (_r1))
6620 : 35 : goto next_after_fail1683;
6621 : 1 : res_op1 = _r1;
6622 : : }
6623 : 1 : tree res_op2;
6624 : 1 : {
6625 : 1 : tree _o1[2], _r1;
6626 : 1 : _o1[0] = captures[3];
6627 : 1 : _o1[1] = captures[4];
6628 : 1 : _r1 = fold_build2_loc (loc, LT_EXPR, type, _o1[0], _o1[1]);
6629 : 1 : if (EXPR_P (_r1))
6630 : 0 : goto next_after_fail1683;
6631 : 1 : res_op2 = _r1;
6632 : : }
6633 : 1 : tree _r;
6634 : 1 : _r = fold_build3_loc (loc, VEC_COND_EXPR, type, res_op0, res_op1, res_op2);
6635 : 1 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 888, __FILE__, __LINE__, true);
6636 : 1 : return _r;
6637 : : }
6638 : 903 : next_after_fail1683:;
6639 : : }
6640 : : }
6641 : 903 : break;
6642 : : }
6643 : 14908675 : default:;
6644 : : }
6645 : 14908675 : switch (TREE_CODE (_p1))
6646 : : {
6647 : 58 : case VEC_COND_EXPR:
6648 : 58 : {
6649 : 58 : tree _q30 = TREE_OPERAND (_p1, 0);
6650 : 58 : tree _q31 = TREE_OPERAND (_p1, 1);
6651 : 58 : tree _q32 = TREE_OPERAND (_p1, 2);
6652 : 58 : {
6653 : 58 : tree captures[5] ATTRIBUTE_UNUSED = { _p0, _p1, _q30, _q31, _q32 };
6654 : 58 : if (VECTOR_TYPE_P (type)
6655 : 58 : && (TREE_CODE_CLASS (LT_EXPR) != tcc_comparison
6656 : 58 : || types_match (type, TREE_TYPE (captures[3]))
6657 : 58 : || expand_vec_cond_expr_p (type, TREE_TYPE (captures[2]))
6658 : : || (optimize_vectors_before_lowering_p ()
6659 : 0 : && !expand_vec_cond_expr_p (TREE_TYPE (captures[3]), TREE_TYPE (captures[2]))))
6660 : : )
6661 : : {
6662 : 58 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1684;
6663 : 58 : {
6664 : 58 : if (! tree_invariant_p (captures[0])) goto next_after_fail1684;
6665 : 0 : tree res_op0;
6666 : 0 : res_op0 = captures[2];
6667 : 0 : tree res_op1;
6668 : 0 : {
6669 : 0 : tree _o1[2], _r1;
6670 : 0 : _o1[0] = unshare_expr (captures[0]);
6671 : 0 : _o1[1] = captures[3];
6672 : 0 : _r1 = fold_build2_loc (loc, LT_EXPR, type, _o1[0], _o1[1]);
6673 : 0 : if (EXPR_P (_r1))
6674 : 0 : goto next_after_fail1684;
6675 : 0 : res_op1 = _r1;
6676 : : }
6677 : 0 : tree res_op2;
6678 : 0 : {
6679 : 0 : tree _o1[2], _r1;
6680 : 0 : _o1[0] = captures[0];
6681 : 0 : _o1[1] = captures[4];
6682 : 0 : _r1 = fold_build2_loc (loc, LT_EXPR, type, _o1[0], _o1[1]);
6683 : 0 : if (EXPR_P (_r1))
6684 : 0 : goto next_after_fail1684;
6685 : 0 : res_op2 = _r1;
6686 : : }
6687 : 0 : tree _r;
6688 : 0 : _r = fold_build3_loc (loc, VEC_COND_EXPR, type, res_op0, res_op1, res_op2);
6689 : 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 889, __FILE__, __LINE__, true);
6690 : 0 : return _r;
6691 : : }
6692 : 58 : next_after_fail1684:;
6693 : : }
6694 : : }
6695 : 58 : break;
6696 : : }
6697 : 14908675 : default:;
6698 : : }
6699 : 14908675 : if (uniform_integer_cst_p (_p1))
6700 : : {
6701 : 5121229 : {
6702 : 5121229 : tree captures[2] ATTRIBUTE_UNUSED = { _p0, _p1 };
6703 : 5121229 : tree res = generic_simplify_342 (loc, type, _p0, _p1, captures, LT_EXPR, LE_EXPR);
6704 : 5121229 : if (res) return res;
6705 : : }
6706 : : }
6707 : 12727366 : switch (TREE_CODE (_p0))
6708 : : {
6709 : 122432 : case MULT_EXPR:
6710 : 122432 : {
6711 : 122432 : tree _q20 = TREE_OPERAND (_p0, 0);
6712 : 122432 : tree _q21 = TREE_OPERAND (_p0, 1);
6713 : 122432 : switch (TREE_CODE (_q21))
6714 : : {
6715 : 64686 : case INTEGER_CST:
6716 : 64686 : {
6717 : 64686 : if (integer_zerop (_p1))
6718 : : {
6719 : 4379 : {
6720 : 4379 : tree captures[4] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1 };
6721 : 4379 : tree res = generic_simplify_240 (loc, type, _p0, _p1, captures, LT_EXPR, GT_EXPR);
6722 : 4379 : if (res) return res;
6723 : : }
6724 : : }
6725 : : break;
6726 : : }
6727 : : default:;
6728 : : }
6729 : : break;
6730 : : }
6731 : 12725543 : default:;
6732 : : }
6733 : 12725543 : if ((_p1 == _p0 && ! TREE_SIDE_EFFECTS (_p1)) || (operand_equal_p (_p1, _p0, 0) && types_match (_p1, _p0)))
6734 : : {
6735 : 3407 : {
6736 : 3407 : tree captures[1] ATTRIBUTE_UNUSED = { _p0 };
6737 : 3407 : tree res = generic_simplify_292 (loc, type, _p0, _p1, captures, LT_EXPR);
6738 : 3407 : if (res) return res;
6739 : : }
6740 : : }
6741 : 12722136 : switch (TREE_CODE (_p0))
6742 : : {
6743 : 2161 : case BIT_NOT_EXPR:
6744 : 2161 : {
6745 : 2161 : tree _q20 = TREE_OPERAND (_p0, 0);
6746 : 2161 : switch (TREE_CODE (_p1))
6747 : : {
6748 : 7 : case BIT_NOT_EXPR:
6749 : 7 : {
6750 : 7 : tree _q40 = TREE_OPERAND (_p1, 0);
6751 : 7 : {
6752 : 7 : tree captures[5] ATTRIBUTE_UNUSED = { _p0, _p0, _q20, _p1, _q40 };
6753 : 7 : tree res = generic_simplify_244 (loc, type, _p0, _p1, captures, LT_EXPR);
6754 : 7 : if (res) return res;
6755 : : }
6756 : 0 : break;
6757 : : }
6758 : 2154 : default:;
6759 : : }
6760 : 2154 : {
6761 : 2154 : tree _p1_pops[1];
6762 : 2154 : if (tree_nop_convert (_p1, _p1_pops))
6763 : : {
6764 : 24 : tree _q40 = _p1_pops[0];
6765 : 24 : switch (TREE_CODE (_q40))
6766 : : {
6767 : 0 : case BIT_NOT_EXPR:
6768 : 0 : {
6769 : 0 : tree _q50 = TREE_OPERAND (_q40, 0);
6770 : 0 : {
6771 : 0 : tree captures[5] ATTRIBUTE_UNUSED = { _p0, _p0, _q20, _q40, _q50 };
6772 : 0 : tree res = generic_simplify_244 (loc, type, _p0, _p1, captures, LT_EXPR);
6773 : 0 : if (res) return res;
6774 : : }
6775 : 0 : break;
6776 : : }
6777 : : default:;
6778 : : }
6779 : : }
6780 : : }
6781 : 2154 : if (CONSTANT_CLASS_P (_p1))
6782 : : {
6783 : 23 : {
6784 : 23 : tree captures[3] ATTRIBUTE_UNUSED = { _p0, _q20, _p1 };
6785 : 23 : tree res = generic_simplify_245 (loc, type, _p0, _p1, captures, LT_EXPR, GT_EXPR);
6786 : 23 : if (res) return res;
6787 : : }
6788 : : }
6789 : : break;
6790 : : }
6791 : 12722106 : default:;
6792 : : }
6793 : 12722106 : {
6794 : 12722106 : tree _p0_pops[1];
6795 : 12722106 : if (tree_nop_convert (_p0, _p0_pops))
6796 : : {
6797 : 1479660 : tree _q20 = _p0_pops[0];
6798 : 1479660 : switch (TREE_CODE (_q20))
6799 : : {
6800 : 0 : case BIT_NOT_EXPR:
6801 : 0 : {
6802 : 0 : tree _q30 = TREE_OPERAND (_q20, 0);
6803 : 0 : switch (TREE_CODE (_p1))
6804 : : {
6805 : 0 : case BIT_NOT_EXPR:
6806 : 0 : {
6807 : 0 : tree _q50 = TREE_OPERAND (_p1, 0);
6808 : 0 : {
6809 : 0 : tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q20, _q30, _p1, _q50 };
6810 : 0 : tree res = generic_simplify_246 (loc, type, _p0, _p1, captures, LT_EXPR);
6811 : 0 : if (res) return res;
6812 : : }
6813 : 0 : break;
6814 : : }
6815 : 0 : default:;
6816 : : }
6817 : 0 : {
6818 : 0 : tree _p1_pops[1];
6819 : 0 : if (tree_nop_convert (_p1, _p1_pops))
6820 : : {
6821 : 0 : tree _q50 = _p1_pops[0];
6822 : 0 : switch (TREE_CODE (_q50))
6823 : : {
6824 : 0 : case BIT_NOT_EXPR:
6825 : 0 : {
6826 : 0 : tree _q60 = TREE_OPERAND (_q50, 0);
6827 : 0 : {
6828 : 0 : tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q20, _q30, _q50, _q60 };
6829 : 0 : tree res = generic_simplify_246 (loc, type, _p0, _p1, captures, LT_EXPR);
6830 : 0 : if (res) return res;
6831 : : }
6832 : 0 : break;
6833 : : }
6834 : : default:;
6835 : : }
6836 : : }
6837 : : }
6838 : 0 : if (CONSTANT_CLASS_P (_p1))
6839 : : {
6840 : 0 : {
6841 : 0 : tree captures[3] ATTRIBUTE_UNUSED = { _q20, _q30, _p1 };
6842 : 0 : tree res = generic_simplify_245 (loc, type, _p0, _p1, captures, LT_EXPR, GT_EXPR);
6843 : 0 : if (res) return res;
6844 : : }
6845 : : }
6846 : : break;
6847 : : }
6848 : : default:;
6849 : : }
6850 : : }
6851 : : }
6852 : 12722106 : switch (TREE_CODE (_p1))
6853 : : {
6854 : 2997909 : case REAL_CST:
6855 : 2997909 : {
6856 : 2997909 : {
6857 : 2997909 : tree captures[2] ATTRIBUTE_UNUSED = { _p0, _p1 };
6858 : 2997909 : tree res = generic_simplify_247 (loc, type, _p0, _p1, captures, LT_EXPR);
6859 : 2997909 : if (res) return res;
6860 : : }
6861 : 2997811 : break;
6862 : : }
6863 : 12722008 : default:;
6864 : : }
6865 : 12722008 : switch (TREE_CODE (_p0))
6866 : : {
6867 : 1803349 : case PLUS_EXPR:
6868 : 1803349 : {
6869 : 1803349 : tree _q20 = TREE_OPERAND (_p0, 0);
6870 : 1803349 : tree _q21 = TREE_OPERAND (_p0, 1);
6871 : 1803349 : switch (TREE_CODE (_q21))
6872 : : {
6873 : 601 : case REAL_CST:
6874 : 601 : {
6875 : 601 : switch (TREE_CODE (_p1))
6876 : : {
6877 : 259 : case REAL_CST:
6878 : 259 : {
6879 : 259 : {
6880 : 259 : tree captures[3] ATTRIBUTE_UNUSED = { _q20, _q21, _p1 };
6881 : 259 : tree res = generic_simplify_248 (loc, type, _p0, _p1, captures, PLUS_EXPR, LT_EXPR);
6882 : 259 : if (res) return res;
6883 : : }
6884 : 257 : break;
6885 : : }
6886 : : default:;
6887 : : }
6888 : : break;
6889 : : }
6890 : 1335016 : case INTEGER_CST:
6891 : 1335016 : {
6892 : 1335016 : if ((_p1 == _q20 && ! TREE_SIDE_EFFECTS (_p1)) || (operand_equal_p (_p1, _q20, 0) && types_match (_p1, _q20)))
6893 : : {
6894 : 17466 : {
6895 : 17466 : tree captures[5] ATTRIBUTE_UNUSED = { _p0, _p0, _q20, _q20, _q21 };
6896 : 17466 : tree res = generic_simplify_343 (loc, type, _p0, _p1, captures, LT_EXPR, GT_EXPR);
6897 : 17466 : if (res) return res;
6898 : : }
6899 : : }
6900 : : break;
6901 : : }
6902 : : default:;
6903 : : }
6904 : : break;
6905 : : }
6906 : 146933 : case MINUS_EXPR:
6907 : 146933 : {
6908 : 146933 : tree _q20 = TREE_OPERAND (_p0, 0);
6909 : 146933 : tree _q21 = TREE_OPERAND (_p0, 1);
6910 : 146933 : switch (TREE_CODE (_q21))
6911 : : {
6912 : 213 : case REAL_CST:
6913 : 213 : {
6914 : 213 : switch (TREE_CODE (_p1))
6915 : : {
6916 : 203 : case REAL_CST:
6917 : 203 : {
6918 : 203 : {
6919 : 203 : tree captures[3] ATTRIBUTE_UNUSED = { _q20, _q21, _p1 };
6920 : 203 : tree res = generic_simplify_248 (loc, type, _p0, _p1, captures, MINUS_EXPR, LT_EXPR);
6921 : 203 : if (res) return res;
6922 : : }
6923 : 203 : break;
6924 : : }
6925 : : default:;
6926 : : }
6927 : : break;
6928 : : }
6929 : 146933 : default:;
6930 : : }
6931 : 146933 : switch (TREE_CODE (_q20))
6932 : : {
6933 : 19510 : case REAL_CST:
6934 : 19510 : {
6935 : 19510 : switch (TREE_CODE (_p1))
6936 : : {
6937 : 19300 : case REAL_CST:
6938 : 19300 : {
6939 : 19300 : {
6940 : 19300 : tree captures[3] ATTRIBUTE_UNUSED = { _q20, _q21, _p1 };
6941 : 19300 : tree res = generic_simplify_249 (loc, type, _p0, _p1, captures, LT_EXPR);
6942 : 19300 : if (res) return res;
6943 : : }
6944 : 19290 : break;
6945 : : }
6946 : : default:;
6947 : : }
6948 : : break;
6949 : : }
6950 : : default:;
6951 : : }
6952 : : break;
6953 : : }
6954 : 50457 : case FLOAT_EXPR:
6955 : 50457 : {
6956 : 50457 : tree _q20 = TREE_OPERAND (_p0, 0);
6957 : 50457 : switch (TREE_CODE (_p1))
6958 : : {
6959 : 102 : case FLOAT_EXPR:
6960 : 102 : {
6961 : 102 : tree _q40 = TREE_OPERAND (_p1, 0);
6962 : 102 : {
6963 : 102 : tree captures[3] ATTRIBUTE_UNUSED = { _p0, _q20, _q40 };
6964 : 102 : tree res = generic_simplify_252 (loc, type, _p0, _p1, captures, LT_EXPR, LT_EXPR);
6965 : 102 : if (res) return res;
6966 : : }
6967 : 71 : break;
6968 : : }
6969 : 402 : case REAL_CST:
6970 : 402 : {
6971 : 402 : {
6972 : 402 : tree captures[2] ATTRIBUTE_UNUSED = { _q20, _p1 };
6973 : 402 : tree res = generic_simplify_253 (loc, type, _p0, _p1, captures, LT_EXPR, LE_EXPR);
6974 : 402 : if (res) return res;
6975 : : }
6976 : 298 : break;
6977 : : }
6978 : : default:;
6979 : : }
6980 : : break;
6981 : : }
6982 : 6808 : case EXACT_DIV_EXPR:
6983 : 6808 : {
6984 : 6808 : tree _q20 = TREE_OPERAND (_p0, 0);
6985 : 6808 : tree _q21 = TREE_OPERAND (_p0, 1);
6986 : 6808 : switch (TREE_CODE (_q21))
6987 : : {
6988 : 6808 : case INTEGER_CST:
6989 : 6808 : {
6990 : 6808 : switch (TREE_CODE (_p1))
6991 : : {
6992 : 19 : case INTEGER_CST:
6993 : 19 : {
6994 : 19 : {
6995 : 19 : tree captures[3] ATTRIBUTE_UNUSED = { _q20, _q21, _p1 };
6996 : 19 : tree res = generic_simplify_344 (loc, type, _p0, _p1, captures, LT_EXPR);
6997 : 19 : if (res) return res;
6998 : : }
6999 : 0 : break;
7000 : : }
7001 : : default:;
7002 : : }
7003 : : break;
7004 : : }
7005 : : default:;
7006 : : }
7007 : : break;
7008 : : }
7009 : 2174771 : CASE_CONVERT:
7010 : 2174771 : {
7011 : 2174771 : tree _q20 = TREE_OPERAND (_p0, 0);
7012 : 2174771 : switch (TREE_CODE (_q20))
7013 : : {
7014 : 97 : case EXACT_DIV_EXPR:
7015 : 97 : {
7016 : 97 : tree _q30 = TREE_OPERAND (_q20, 0);
7017 : 97 : tree _q31 = TREE_OPERAND (_q20, 1);
7018 : 97 : switch (TREE_CODE (_q31))
7019 : : {
7020 : 97 : case INTEGER_CST:
7021 : 97 : {
7022 : 97 : switch (TREE_CODE (_p1))
7023 : : {
7024 : 0 : case INTEGER_CST:
7025 : 0 : {
7026 : 0 : {
7027 : 0 : tree captures[3] ATTRIBUTE_UNUSED = { _q30, _q31, _p1 };
7028 : 0 : tree res = generic_simplify_345 (loc, type, _p0, _p1, captures, LT_EXPR, GE_EXPR);
7029 : 0 : if (res) return res;
7030 : : }
7031 : 0 : break;
7032 : : }
7033 : : default:;
7034 : : }
7035 : : break;
7036 : : }
7037 : : default:;
7038 : : }
7039 : : break;
7040 : : }
7041 : 2174771 : default:;
7042 : : }
7043 : 2174771 : switch (TREE_CODE (_p1))
7044 : : {
7045 : 1224228 : CASE_CONVERT:
7046 : 1224228 : {
7047 : 1224228 : tree _q40 = TREE_OPERAND (_p1, 0);
7048 : 1224228 : {
7049 : 1224228 : tree captures[4] ATTRIBUTE_UNUSED = { _p0, _q20, _p1, _q40 };
7050 : 1224228 : tree res = generic_simplify_257 (loc, type, _p0, _p1, captures, LT_EXPR);
7051 : 1224228 : if (res) return res;
7052 : : }
7053 : 1002101 : break;
7054 : : }
7055 : 1952644 : default:;
7056 : : }
7057 : 1952644 : {
7058 : 1952644 : tree captures[4] ATTRIBUTE_UNUSED = { _p0, _q20, _p1, _p1 };
7059 : 1952644 : tree res = generic_simplify_258 (loc, type, _p0, _p1, captures, LT_EXPR);
7060 : 1952644 : if (res) return res;
7061 : : }
7062 : 1692231 : switch (TREE_CODE (_q20))
7063 : : {
7064 : 3539 : case ADDR_EXPR:
7065 : 3539 : {
7066 : 3539 : switch (TREE_CODE (_p1))
7067 : : {
7068 : 2307 : CASE_CONVERT:
7069 : 2307 : {
7070 : 2307 : tree _q40 = TREE_OPERAND (_p1, 0);
7071 : 2307 : switch (TREE_CODE (_q40))
7072 : : {
7073 : 1879 : case ADDR_EXPR:
7074 : 1879 : {
7075 : 1879 : {
7076 : 1879 : tree captures[3] ATTRIBUTE_UNUSED = { _p0, _q20, _q40 };
7077 : 1879 : tree res = generic_simplify_275 (loc, type, _p0, _p1, captures, LT_EXPR);
7078 : 1879 : if (res) return res;
7079 : : }
7080 : 308 : break;
7081 : : }
7082 : : default:;
7083 : : }
7084 : : break;
7085 : : }
7086 : 476 : case ADDR_EXPR:
7087 : 476 : {
7088 : 476 : {
7089 : 476 : tree captures[3] ATTRIBUTE_UNUSED = { _p0, _q20, _p1 };
7090 : 476 : tree res = generic_simplify_275 (loc, type, _p0, _p1, captures, LT_EXPR);
7091 : 476 : if (res) return res;
7092 : : }
7093 : 0 : break;
7094 : : }
7095 : : default:;
7096 : : }
7097 : : break;
7098 : : }
7099 : 1690184 : default:;
7100 : : }
7101 : 1690184 : if (uniform_integer_cst_p (_p1))
7102 : : {
7103 : 181886 : {
7104 : 181886 : tree captures[3] ATTRIBUTE_UNUSED = { _p0, _q20, _p1 };
7105 : 181886 : tree res = generic_simplify_346 (loc, type, _p0, _p1, captures, LT_EXPR);
7106 : 181886 : if (res) return res;
7107 : : }
7108 : : }
7109 : : break;
7110 : : }
7111 : 1237 : case NEGATE_EXPR:
7112 : 1237 : {
7113 : 1237 : tree _q20 = TREE_OPERAND (_p0, 0);
7114 : 1237 : switch (TREE_CODE (_p1))
7115 : : {
7116 : 0 : case NEGATE_EXPR:
7117 : 0 : {
7118 : 0 : tree _q40 = TREE_OPERAND (_p1, 0);
7119 : 0 : {
7120 : 0 : tree captures[2] ATTRIBUTE_UNUSED = { _q20, _q40 };
7121 : 0 : tree res = generic_simplify_255 (loc, type, _p0, _p1, captures, LT_EXPR, GT_EXPR);
7122 : 0 : if (res) return res;
7123 : : }
7124 : 0 : break;
7125 : : }
7126 : 1237 : default:;
7127 : : }
7128 : 1237 : if (CONSTANT_CLASS_P (_p1))
7129 : : {
7130 : 249 : {
7131 : 249 : tree captures[2] ATTRIBUTE_UNUSED = { _q20, _p1 };
7132 : 249 : tree res = generic_simplify_256 (loc, type, _p0, _p1, captures, LT_EXPR, GT_EXPR);
7133 : 249 : if (res) return res;
7134 : : }
7135 : : }
7136 : : break;
7137 : : }
7138 : 25518 : case ADDR_EXPR:
7139 : 25518 : {
7140 : 25518 : switch (TREE_CODE (_p1))
7141 : : {
7142 : 6 : CASE_CONVERT:
7143 : 6 : {
7144 : 6 : tree _q30 = TREE_OPERAND (_p1, 0);
7145 : 6 : switch (TREE_CODE (_q30))
7146 : : {
7147 : 0 : case ADDR_EXPR:
7148 : 0 : {
7149 : 0 : {
7150 : 0 : tree captures[3] ATTRIBUTE_UNUSED = { _p0, _p0, _q30 };
7151 : 0 : tree res = generic_simplify_276 (loc, type, _p0, _p1, captures, LT_EXPR);
7152 : 0 : if (res) return res;
7153 : : }
7154 : 0 : break;
7155 : : }
7156 : : default:;
7157 : : }
7158 : : break;
7159 : : }
7160 : 22495 : case ADDR_EXPR:
7161 : 22495 : {
7162 : 22495 : {
7163 : 22495 : tree captures[3] ATTRIBUTE_UNUSED = { _p0, _p0, _p1 };
7164 : 22495 : tree res = generic_simplify_276 (loc, type, _p0, _p1, captures, LT_EXPR);
7165 : 22495 : if (res) return res;
7166 : : }
7167 : 364 : break;
7168 : : }
7169 : : default:;
7170 : : }
7171 : : break;
7172 : : }
7173 : 1248279 : case CALL_EXPR:
7174 : 1248279 : switch (get_call_combined_fn (_p0))
7175 : : {
7176 : 5 : case CFN_BUILT_IN_SQRTF:
7177 : 5 : if (call_expr_nargs (_p0) == 1)
7178 : : {
7179 : 5 : tree _q20 = CALL_EXPR_ARG (_p0, 0);
7180 : 5 : switch (TREE_CODE (_p1))
7181 : : {
7182 : 5 : case REAL_CST:
7183 : 5 : {
7184 : 5 : {
7185 : 5 : tree captures[2] ATTRIBUTE_UNUSED = { _q20, _p1 };
7186 : 5 : tree res = generic_simplify_250 (loc, type, _p0, _p1, captures, CFN_BUILT_IN_SQRTF, LT_EXPR);
7187 : 5 : if (res) return res;
7188 : : }
7189 : 0 : break;
7190 : : }
7191 : 0 : case CALL_EXPR:
7192 : 0 : switch (get_call_combined_fn (_p1))
7193 : : {
7194 : 0 : case CFN_BUILT_IN_SQRTF:
7195 : 0 : if (call_expr_nargs (_p1) == 1)
7196 : : {
7197 : 0 : tree _q40 = CALL_EXPR_ARG (_p1, 0);
7198 : 0 : {
7199 : 0 : tree captures[2] ATTRIBUTE_UNUSED = { _q20, _q40 };
7200 : 0 : tree res = generic_simplify_251 (loc, type, _p0, _p1, captures, CFN_BUILT_IN_SQRTF, LT_EXPR);
7201 : 0 : if (res) return res;
7202 : : }
7203 : : }
7204 : : break;
7205 : : default:;
7206 : : }
7207 : : break;
7208 : : default:;
7209 : : }
7210 : : }
7211 : : break;
7212 : 0 : case CFN_BUILT_IN_SQRTL:
7213 : 0 : if (call_expr_nargs (_p0) == 1)
7214 : : {
7215 : 0 : tree _q20 = CALL_EXPR_ARG (_p0, 0);
7216 : 0 : switch (TREE_CODE (_p1))
7217 : : {
7218 : 0 : case REAL_CST:
7219 : 0 : {
7220 : 0 : {
7221 : 0 : tree captures[2] ATTRIBUTE_UNUSED = { _q20, _p1 };
7222 : 0 : tree res = generic_simplify_250 (loc, type, _p0, _p1, captures, CFN_BUILT_IN_SQRTL, LT_EXPR);
7223 : 0 : if (res) return res;
7224 : : }
7225 : 0 : break;
7226 : : }
7227 : 0 : case CALL_EXPR:
7228 : 0 : switch (get_call_combined_fn (_p1))
7229 : : {
7230 : 0 : case CFN_BUILT_IN_SQRTL:
7231 : 0 : if (call_expr_nargs (_p1) == 1)
7232 : : {
7233 : 0 : tree _q40 = CALL_EXPR_ARG (_p1, 0);
7234 : 0 : {
7235 : 0 : tree captures[2] ATTRIBUTE_UNUSED = { _q20, _q40 };
7236 : 0 : tree res = generic_simplify_251 (loc, type, _p0, _p1, captures, CFN_BUILT_IN_SQRTL, LT_EXPR);
7237 : 0 : if (res) return res;
7238 : : }
7239 : : }
7240 : : break;
7241 : : default:;
7242 : : }
7243 : : break;
7244 : : default:;
7245 : : }
7246 : : }
7247 : : break;
7248 : 4 : case CFN_BUILT_IN_SQRT:
7249 : 4 : if (call_expr_nargs (_p0) == 1)
7250 : : {
7251 : 4 : tree _q20 = CALL_EXPR_ARG (_p0, 0);
7252 : 4 : switch (TREE_CODE (_p1))
7253 : : {
7254 : 4 : case REAL_CST:
7255 : 4 : {
7256 : 4 : {
7257 : 4 : tree captures[2] ATTRIBUTE_UNUSED = { _q20, _p1 };
7258 : 4 : tree res = generic_simplify_250 (loc, type, _p0, _p1, captures, CFN_BUILT_IN_SQRT, LT_EXPR);
7259 : 4 : if (res) return res;
7260 : : }
7261 : 1 : break;
7262 : : }
7263 : 0 : case CALL_EXPR:
7264 : 0 : switch (get_call_combined_fn (_p1))
7265 : : {
7266 : 0 : case CFN_BUILT_IN_SQRT:
7267 : 0 : if (call_expr_nargs (_p1) == 1)
7268 : : {
7269 : 0 : tree _q40 = CALL_EXPR_ARG (_p1, 0);
7270 : 0 : {
7271 : 0 : tree captures[2] ATTRIBUTE_UNUSED = { _q20, _q40 };
7272 : 0 : tree res = generic_simplify_251 (loc, type, _p0, _p1, captures, CFN_BUILT_IN_SQRT, LT_EXPR);
7273 : 0 : if (res) return res;
7274 : : }
7275 : : }
7276 : : break;
7277 : : default:;
7278 : : }
7279 : : break;
7280 : : default:;
7281 : : }
7282 : : }
7283 : : break;
7284 : 0 : case CFN_SQRT:
7285 : 0 : if (call_expr_nargs (_p0) == 1)
7286 : : {
7287 : 0 : tree _q20 = CALL_EXPR_ARG (_p0, 0);
7288 : 0 : switch (TREE_CODE (_p1))
7289 : : {
7290 : 0 : case REAL_CST:
7291 : 0 : {
7292 : 0 : {
7293 : 0 : tree captures[2] ATTRIBUTE_UNUSED = { _q20, _p1 };
7294 : 0 : tree res = generic_simplify_250 (loc, type, _p0, _p1, captures, CFN_SQRT, LT_EXPR);
7295 : 0 : if (res) return res;
7296 : : }
7297 : 0 : break;
7298 : : }
7299 : 0 : case CALL_EXPR:
7300 : 0 : switch (get_call_combined_fn (_p1))
7301 : : {
7302 : 0 : case CFN_SQRT:
7303 : 0 : if (call_expr_nargs (_p1) == 1)
7304 : : {
7305 : 0 : tree _q40 = CALL_EXPR_ARG (_p1, 0);
7306 : 0 : {
7307 : 0 : tree captures[2] ATTRIBUTE_UNUSED = { _q20, _q40 };
7308 : 0 : tree res = generic_simplify_251 (loc, type, _p0, _p1, captures, CFN_SQRT, LT_EXPR);
7309 : 0 : if (res) return res;
7310 : : }
7311 : : }
7312 : : break;
7313 : : default:;
7314 : : }
7315 : : break;
7316 : : default:;
7317 : : }
7318 : : }
7319 : : break;
7320 : : default:;
7321 : : }
7322 : : break;
7323 : 12195022 : default:;
7324 : : }
7325 : 12195022 : switch (TREE_CODE (_p1))
7326 : : {
7327 : 1494238 : CASE_CONVERT:
7328 : 1494238 : {
7329 : 1494238 : tree _q30 = TREE_OPERAND (_p1, 0);
7330 : 1494238 : switch (TREE_CODE (_q30))
7331 : : {
7332 : 0 : case NE_EXPR:
7333 : 0 : {
7334 : 0 : tree _q40 = TREE_OPERAND (_q30, 0);
7335 : 0 : tree _q41 = TREE_OPERAND (_q30, 1);
7336 : 0 : if ((_q40 == _p0 && ! TREE_SIDE_EFFECTS (_q40)) || (operand_equal_p (_q40, _p0, 0) && types_match (_q40, _p0)))
7337 : : {
7338 : 0 : if (integer_zerop (_q41))
7339 : : {
7340 : 0 : {
7341 : 0 : tree captures[1] ATTRIBUTE_UNUSED = { _p0 };
7342 : 0 : if (TYPE_UNSIGNED (TREE_TYPE (captures[0]))
7343 : : )
7344 : : {
7345 : 0 : if (TREE_SIDE_EFFECTS (_p1)) goto next_after_fail1685;
7346 : 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1685;
7347 : 0 : {
7348 : 0 : tree _r;
7349 : 0 : _r = constant_boolean_node (false, type);
7350 : 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 992, __FILE__, __LINE__, true);
7351 : 0 : return _r;
7352 : : }
7353 : : next_after_fail1685:;
7354 : : }
7355 : : }
7356 : : }
7357 : : }
7358 : : break;
7359 : : }
7360 : : default:;
7361 : : }
7362 : : break;
7363 : : }
7364 : 12195022 : default:;
7365 : : }
7366 : 12195022 : if (uniform_integer_cst_p (_p1))
7367 : : {
7368 : 2675490 : {
7369 : 2675490 : tree captures[3] ATTRIBUTE_UNUSED = { _p0, _p0, _p1 };
7370 : 2675490 : tree res = generic_simplify_347 (loc, type, _p0, _p1, captures, LT_EXPR);
7371 : 2675490 : if (res) return res;
7372 : : }
7373 : : }
7374 : 11774280 : switch (TREE_CODE (_p0))
7375 : : {
7376 : 1687087 : CASE_CONVERT:
7377 : 1687087 : {
7378 : 1687087 : tree _q20 = TREE_OPERAND (_p0, 0);
7379 : 1687087 : switch (TREE_CODE (_q20))
7380 : : {
7381 : 107971 : case PLUS_EXPR:
7382 : 107971 : {
7383 : 107971 : tree _q30 = TREE_OPERAND (_q20, 0);
7384 : 107971 : tree _q31 = TREE_OPERAND (_q20, 1);
7385 : 107971 : switch (TREE_CODE (_q30))
7386 : : {
7387 : 57774 : CASE_CONVERT:
7388 : 57774 : {
7389 : 57774 : tree _q40 = TREE_OPERAND (_q30, 0);
7390 : 57774 : switch (TREE_CODE (_q31))
7391 : : {
7392 : 57735 : case INTEGER_CST:
7393 : 57735 : {
7394 : 57735 : if ((_p1 == _q40 && ! TREE_SIDE_EFFECTS (_p1)) || (operand_equal_p (_p1, _q40, 0) && types_match (_p1, _q40)))
7395 : : {
7396 : 21 : {
7397 : 21 : tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q20, _q30, _q40, _q31 };
7398 : 21 : tree res = generic_simplify_348 (loc, type, _p0, _p1, captures, LT_EXPR, GT_EXPR);
7399 : 21 : if (res) return res;
7400 : : }
7401 : : }
7402 : : break;
7403 : : }
7404 : : default:;
7405 : : }
7406 : : break;
7407 : : }
7408 : : default:;
7409 : : }
7410 : : break;
7411 : : }
7412 : : default:;
7413 : : }
7414 : : break;
7415 : : }
7416 : 11774259 : default:;
7417 : : }
7418 : 11774259 : switch (TREE_CODE (_p1))
7419 : : {
7420 : 1494238 : CASE_CONVERT:
7421 : 1494238 : {
7422 : 1494238 : tree _q30 = TREE_OPERAND (_p1, 0);
7423 : 1494238 : switch (TREE_CODE (_q30))
7424 : : {
7425 : 22161 : case PLUS_EXPR:
7426 : 22161 : {
7427 : 22161 : tree _q40 = TREE_OPERAND (_q30, 0);
7428 : 22161 : tree _q41 = TREE_OPERAND (_q30, 1);
7429 : 22161 : switch (TREE_CODE (_q40))
7430 : : {
7431 : 19744 : CASE_CONVERT:
7432 : 19744 : {
7433 : 19744 : tree _q50 = TREE_OPERAND (_q40, 0);
7434 : 19744 : if ((_q50 == _p0 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _p0, 0) && types_match (_q50, _p0)))
7435 : : {
7436 : 0 : switch (TREE_CODE (_q41))
7437 : : {
7438 : 0 : case INTEGER_CST:
7439 : 0 : {
7440 : 0 : {
7441 : 0 : tree captures[5] ATTRIBUTE_UNUSED = { _p1, _q30, _q40, _p0, _q41 };
7442 : 0 : tree res = generic_simplify_348 (loc, type, _p0, _p1, captures, GT_EXPR, LE_EXPR);
7443 : 0 : if (res) return res;
7444 : : }
7445 : 0 : break;
7446 : : }
7447 : : default:;
7448 : : }
7449 : : }
7450 : : break;
7451 : : }
7452 : : default:;
7453 : : }
7454 : : break;
7455 : : }
7456 : : default:;
7457 : : }
7458 : : break;
7459 : : }
7460 : 345388 : case PLUS_EXPR:
7461 : 345388 : {
7462 : 345388 : tree _q30 = TREE_OPERAND (_p1, 0);
7463 : 345388 : tree _q31 = TREE_OPERAND (_p1, 1);
7464 : 345388 : if ((_q30 == _p0 && ! TREE_SIDE_EFFECTS (_q30)) || (operand_equal_p (_q30, _p0, 0) && types_match (_q30, _p0)))
7465 : : {
7466 : 80 : switch (TREE_CODE (_q31))
7467 : : {
7468 : 64 : case INTEGER_CST:
7469 : 64 : {
7470 : 64 : {
7471 : 64 : tree captures[5] ATTRIBUTE_UNUSED = { _p1, _p1, _q30, _p0, _q31 };
7472 : 64 : tree res = generic_simplify_343 (loc, type, _p0, _p1, captures, GT_EXPR, LE_EXPR);
7473 : 64 : if (res) return res;
7474 : : }
7475 : 0 : break;
7476 : : }
7477 : : default:;
7478 : : }
7479 : : }
7480 : : break;
7481 : : }
7482 : 21972 : case MINUS_EXPR:
7483 : 21972 : {
7484 : 21972 : tree _q30 = TREE_OPERAND (_p1, 0);
7485 : 21972 : tree _q31 = TREE_OPERAND (_p1, 1);
7486 : 21972 : if ((_q30 == _p0 && ! TREE_SIDE_EFFECTS (_q30)) || (operand_equal_p (_q30, _p0, 0) && types_match (_q30, _p0)))
7487 : : {
7488 : 0 : {
7489 : 0 : tree captures[3] ATTRIBUTE_UNUSED = { _p1, _p0, _q31 };
7490 : 0 : tree res = generic_simplify_349 (loc, type, _p0, _p1, captures, GT_EXPR);
7491 : 0 : if (res) return res;
7492 : : }
7493 : : }
7494 : : break;
7495 : : }
7496 : 11774195 : default:;
7497 : : }
7498 : 11774195 : switch (TREE_CODE (_p0))
7499 : : {
7500 : 1772986 : case PLUS_EXPR:
7501 : 1772986 : {
7502 : 1772986 : tree _q20 = TREE_OPERAND (_p0, 0);
7503 : 1772986 : tree _q21 = TREE_OPERAND (_p0, 1);
7504 : 1772986 : switch (TREE_CODE (_q20))
7505 : : {
7506 : 9789 : case MINUS_EXPR:
7507 : 9789 : {
7508 : 9789 : tree _q30 = TREE_OPERAND (_q20, 0);
7509 : 9789 : tree _q31 = TREE_OPERAND (_q20, 1);
7510 : 9789 : if (integer_minus_onep (_q21))
7511 : : {
7512 : 49 : if ((_p1 == _q30 && ! TREE_SIDE_EFFECTS (_p1)) || (operand_equal_p (_p1, _q30, 0) && types_match (_p1, _q30)))
7513 : : {
7514 : 1 : {
7515 : 1 : tree captures[2] ATTRIBUTE_UNUSED = { _q30, _q31 };
7516 : 1 : tree res = generic_simplify_350 (loc, type, _p0, _p1, captures, LT_EXPR);
7517 : 1 : if (res) return res;
7518 : : }
7519 : : }
7520 : : }
7521 : : break;
7522 : : }
7523 : : default:;
7524 : : }
7525 : : break;
7526 : : }
7527 : 11774194 : default:;
7528 : : }
7529 : 11774194 : switch (TREE_CODE (_p1))
7530 : : {
7531 : 0 : case REALPART_EXPR:
7532 : 0 : {
7533 : 0 : tree _q30 = TREE_OPERAND (_p1, 0);
7534 : 0 : switch (TREE_CODE (_q30))
7535 : : {
7536 : 0 : case CALL_EXPR:
7537 : 0 : switch (get_call_combined_fn (_q30))
7538 : : {
7539 : 0 : case CFN_SUB_OVERFLOW:
7540 : 0 : if (call_expr_nargs (_q30) == 2)
7541 : : {
7542 : 0 : tree _q40 = CALL_EXPR_ARG (_q30, 0);
7543 : 0 : tree _q41 = CALL_EXPR_ARG (_q30, 1);
7544 : 0 : if ((_q40 == _p0 && ! TREE_SIDE_EFFECTS (_q40)) || (operand_equal_p (_q40, _p0, 0) && types_match (_q40, _p0)))
7545 : : {
7546 : 0 : {
7547 : 0 : tree captures[3] ATTRIBUTE_UNUSED = { _q30, _p0, _q41 };
7548 : 0 : tree res = generic_simplify_351 (loc, type, _p0, _p1, captures, GT_EXPR, NE_EXPR);
7549 : 0 : if (res) return res;
7550 : : }
7551 : : }
7552 : : }
7553 : : break;
7554 : : default:;
7555 : : }
7556 : : break;
7557 : : default:;
7558 : : }
7559 : : break;
7560 : : }
7561 : 11774194 : default:;
7562 : : }
7563 : 11774194 : switch (TREE_CODE (_p0))
7564 : : {
7565 : 20 : case REALPART_EXPR:
7566 : 20 : {
7567 : 20 : tree _q20 = TREE_OPERAND (_p0, 0);
7568 : 20 : switch (TREE_CODE (_q20))
7569 : : {
7570 : 0 : case CALL_EXPR:
7571 : 0 : switch (get_call_combined_fn (_q20))
7572 : : {
7573 : 0 : case CFN_ADD_OVERFLOW:
7574 : 0 : if (call_expr_nargs (_q20) == 2)
7575 : : {
7576 : 0 : tree _q30 = CALL_EXPR_ARG (_q20, 0);
7577 : 0 : tree _q31 = CALL_EXPR_ARG (_q20, 1);
7578 : 0 : if ((_p1 == _q30 && ! TREE_SIDE_EFFECTS (_p1)) || (operand_equal_p (_p1, _q30, 0) && types_match (_p1, _q30)))
7579 : : {
7580 : 0 : {
7581 : 0 : tree captures[3] ATTRIBUTE_UNUSED = { _q20, _q30, _q31 };
7582 : 0 : tree res = generic_simplify_352 (loc, type, _p0, _p1, captures, LT_EXPR, NE_EXPR);
7583 : 0 : if (res) return res;
7584 : : }
7585 : : }
7586 : 0 : if ((_p1 == _q31 && ! TREE_SIDE_EFFECTS (_p1)) || (operand_equal_p (_p1, _q31, 0) && types_match (_p1, _q31)))
7587 : : {
7588 : 0 : {
7589 : 0 : tree captures[3] ATTRIBUTE_UNUSED = { _q20, _q31, _q30 };
7590 : 0 : tree res = generic_simplify_352 (loc, type, _p0, _p1, captures, LT_EXPR, NE_EXPR);
7591 : 0 : if (res) return res;
7592 : : }
7593 : : }
7594 : : }
7595 : : break;
7596 : : default:;
7597 : : }
7598 : : break;
7599 : : default:;
7600 : : }
7601 : : break;
7602 : : }
7603 : 6807 : case TRUNC_DIV_EXPR:
7604 : 6807 : {
7605 : 6807 : tree _q20 = TREE_OPERAND (_p0, 0);
7606 : 6807 : tree _q21 = TREE_OPERAND (_p0, 1);
7607 : 6807 : if (integer_all_onesp (_q20))
7608 : : {
7609 : 970 : {
7610 : 970 : tree captures[3] ATTRIBUTE_UNUSED = { _p0, _q21, _p1 };
7611 : 970 : tree res = generic_simplify_353 (loc, type, _p0, _p1, captures, LT_EXPR, NE_EXPR);
7612 : 970 : if (res) return res;
7613 : : }
7614 : : }
7615 : : break;
7616 : : }
7617 : 115904 : case MULT_EXPR:
7618 : 115904 : {
7619 : 115904 : tree _q20 = TREE_OPERAND (_p0, 0);
7620 : 115904 : tree _q21 = TREE_OPERAND (_p0, 1);
7621 : 115904 : switch (TREE_CODE (_q21))
7622 : : {
7623 : 11779 : case REAL_CST:
7624 : 11779 : {
7625 : 11779 : switch (TREE_CODE (_p1))
7626 : : {
7627 : 516 : case REAL_CST:
7628 : 516 : {
7629 : 516 : {
7630 : 516 : tree captures[3] ATTRIBUTE_UNUSED = { _q20, _q21, _p1 };
7631 : 516 : tree res = generic_simplify_354 (loc, type, _p0, _p1, captures, LT_EXPR, GT_EXPR);
7632 : 516 : if (res) return res;
7633 : : }
7634 : 516 : break;
7635 : : }
7636 : : default:;
7637 : : }
7638 : : break;
7639 : : }
7640 : : default:;
7641 : : }
7642 : : break;
7643 : : }
7644 : 1772985 : case PLUS_EXPR:
7645 : 1772985 : {
7646 : 1772985 : tree _q20 = TREE_OPERAND (_p0, 0);
7647 : 1772985 : tree _q21 = TREE_OPERAND (_p0, 1);
7648 : 1772985 : switch (TREE_CODE (_q21))
7649 : : {
7650 : 1316182 : case INTEGER_CST:
7651 : 1316182 : {
7652 : 1316182 : switch (TREE_CODE (_p1))
7653 : : {
7654 : 210547 : case INTEGER_CST:
7655 : 210547 : {
7656 : 210547 : {
7657 : 210547 : tree captures[4] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1 };
7658 : 210547 : tree res = generic_simplify_355 (loc, type, _p0, _p1, captures, PLUS_EXPR, MINUS_EXPR, LT_EXPR, GT_EXPR);
7659 : 210547 : if (res) return res;
7660 : : }
7661 : 15636 : break;
7662 : : }
7663 : : default:;
7664 : : }
7665 : : break;
7666 : : }
7667 : : default:;
7668 : : }
7669 : : break;
7670 : : }
7671 : 146923 : case MINUS_EXPR:
7672 : 146923 : {
7673 : 146923 : tree _q20 = TREE_OPERAND (_p0, 0);
7674 : 146923 : tree _q21 = TREE_OPERAND (_p0, 1);
7675 : 146923 : switch (TREE_CODE (_q21))
7676 : : {
7677 : 0 : case INTEGER_CST:
7678 : 0 : {
7679 : 0 : switch (TREE_CODE (_p1))
7680 : : {
7681 : 0 : case INTEGER_CST:
7682 : 0 : {
7683 : 0 : {
7684 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1 };
7685 : 0 : tree res = generic_simplify_355 (loc, type, _p0, _p1, captures, MINUS_EXPR, PLUS_EXPR, LT_EXPR, GT_EXPR);
7686 : 0 : if (res) return res;
7687 : : }
7688 : 0 : break;
7689 : : }
7690 : : default:;
7691 : : }
7692 : : break;
7693 : : }
7694 : 146923 : default:;
7695 : : }
7696 : 146923 : switch (TREE_CODE (_q20))
7697 : : {
7698 : 23450 : case INTEGER_CST:
7699 : 23450 : {
7700 : 23450 : switch (TREE_CODE (_p1))
7701 : : {
7702 : 1725 : case INTEGER_CST:
7703 : 1725 : {
7704 : 1725 : {
7705 : 1725 : tree captures[3] ATTRIBUTE_UNUSED = { _q20, _q21, _p1 };
7706 : 1725 : tree res = generic_simplify_282 (loc, type, _p0, _p1, captures, LT_EXPR, GT_EXPR);
7707 : 1725 : if (res) return res;
7708 : : }
7709 : 0 : break;
7710 : : }
7711 : : default:;
7712 : : }
7713 : : break;
7714 : : }
7715 : : default:;
7716 : : }
7717 : : break;
7718 : : }
7719 : 1248241 : case CALL_EXPR:
7720 : 1248241 : switch (get_call_combined_fn (_p0))
7721 : : {
7722 : 3 : case CFN_BUILT_IN_CTZ:
7723 : 3 : if (call_expr_nargs (_p0) == 1)
7724 : : {
7725 : 3 : tree _q20 = CALL_EXPR_ARG (_p0, 0);
7726 : 3 : switch (TREE_CODE (_p1))
7727 : : {
7728 : 3 : case INTEGER_CST:
7729 : 3 : {
7730 : 3 : {
7731 : 3 : tree captures[3] ATTRIBUTE_UNUSED = { _p0, _q20, _p1 };
7732 : 3 : tree res = generic_simplify_356 (loc, type, _p0, _p1, captures, LT_EXPR, NE_EXPR, CFN_BUILT_IN_CTZ);
7733 : 3 : if (res) return res;
7734 : : }
7735 : 0 : break;
7736 : : }
7737 : : default:;
7738 : : }
7739 : : }
7740 : : break;
7741 : 2 : case CFN_BUILT_IN_CTZL:
7742 : 2 : if (call_expr_nargs (_p0) == 1)
7743 : : {
7744 : 2 : tree _q20 = CALL_EXPR_ARG (_p0, 0);
7745 : 2 : switch (TREE_CODE (_p1))
7746 : : {
7747 : 2 : case INTEGER_CST:
7748 : 2 : {
7749 : 2 : {
7750 : 2 : tree captures[3] ATTRIBUTE_UNUSED = { _p0, _q20, _p1 };
7751 : 2 : tree res = generic_simplify_356 (loc, type, _p0, _p1, captures, LT_EXPR, NE_EXPR, CFN_BUILT_IN_CTZL);
7752 : 2 : if (res) return res;
7753 : : }
7754 : 0 : break;
7755 : : }
7756 : : default:;
7757 : : }
7758 : : }
7759 : : break;
7760 : 0 : case CFN_BUILT_IN_CTZIMAX:
7761 : 0 : if (call_expr_nargs (_p0) == 1)
7762 : : {
7763 : 0 : tree _q20 = CALL_EXPR_ARG (_p0, 0);
7764 : 0 : switch (TREE_CODE (_p1))
7765 : : {
7766 : 0 : case INTEGER_CST:
7767 : 0 : {
7768 : 0 : {
7769 : 0 : tree captures[3] ATTRIBUTE_UNUSED = { _p0, _q20, _p1 };
7770 : 0 : tree res = generic_simplify_356 (loc, type, _p0, _p1, captures, LT_EXPR, NE_EXPR, CFN_BUILT_IN_CTZIMAX);
7771 : 0 : if (res) return res;
7772 : : }
7773 : 0 : break;
7774 : : }
7775 : : default:;
7776 : : }
7777 : : }
7778 : : break;
7779 : 0 : case CFN_CTZ:
7780 : 0 : if (call_expr_nargs (_p0) == 1)
7781 : : {
7782 : 0 : tree _q20 = CALL_EXPR_ARG (_p0, 0);
7783 : 0 : switch (TREE_CODE (_p1))
7784 : : {
7785 : 0 : case INTEGER_CST:
7786 : 0 : {
7787 : 0 : {
7788 : 0 : tree captures[3] ATTRIBUTE_UNUSED = { _p0, _q20, _p1 };
7789 : 0 : tree res = generic_simplify_356 (loc, type, _p0, _p1, captures, LT_EXPR, NE_EXPR, CFN_CTZ);
7790 : 0 : if (res) return res;
7791 : : }
7792 : 0 : break;
7793 : : }
7794 : : default:;
7795 : : }
7796 : : }
7797 : 0 : if (call_expr_nargs (_p0) == 2)
7798 : : {
7799 : 0 : tree _q20 = CALL_EXPR_ARG (_p0, 0);
7800 : 0 : tree _q21 = CALL_EXPR_ARG (_p0, 1);
7801 : 0 : switch (TREE_CODE (_p1))
7802 : : {
7803 : 0 : case INTEGER_CST:
7804 : 0 : {
7805 : 0 : {
7806 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1 };
7807 : 0 : tree res = generic_simplify_357 (loc, type, _p0, _p1, captures, LT_EXPR, NE_EXPR);
7808 : 0 : if (res) return res;
7809 : : }
7810 : 0 : break;
7811 : : }
7812 : : default:;
7813 : : }
7814 : : }
7815 : : break;
7816 : 2 : case CFN_BUILT_IN_CTZLL:
7817 : 2 : if (call_expr_nargs (_p0) == 1)
7818 : : {
7819 : 2 : tree _q20 = CALL_EXPR_ARG (_p0, 0);
7820 : 2 : switch (TREE_CODE (_p1))
7821 : : {
7822 : 2 : case INTEGER_CST:
7823 : 2 : {
7824 : 2 : {
7825 : 2 : tree captures[3] ATTRIBUTE_UNUSED = { _p0, _q20, _p1 };
7826 : 2 : tree res = generic_simplify_356 (loc, type, _p0, _p1, captures, LT_EXPR, NE_EXPR, CFN_BUILT_IN_CTZLL);
7827 : 2 : if (res) return res;
7828 : : }
7829 : 0 : break;
7830 : : }
7831 : : default:;
7832 : : }
7833 : : }
7834 : : break;
7835 : : default:;
7836 : : }
7837 : : break;
7838 : : default:;
7839 : : }
7840 : : return NULL_TREE;
7841 : : }
7842 : :
7843 : : tree
7844 : 17820695 : generic_simplify_GT_EXPR (location_t ARG_UNUSED (loc), enum tree_code ARG_UNUSED (code), const tree ARG_UNUSED (type), tree _p0, tree _p1)
7845 : : {
7846 : 17820695 : const bool debug_dump = dump_file && (dump_flags & TDF_FOLDING);
7847 : 17820695 : switch (TREE_CODE (_p0))
7848 : : {
7849 : 1006 : case RDIV_EXPR:
7850 : 1006 : {
7851 : 1006 : tree _q20 = TREE_OPERAND (_p0, 0);
7852 : 1006 : tree _q21 = TREE_OPERAND (_p0, 1);
7853 : 1006 : switch (TREE_CODE (_q20))
7854 : : {
7855 : 26 : case REAL_CST:
7856 : 26 : {
7857 : 26 : if (real_zerop (_p1))
7858 : : {
7859 : 0 : {
7860 : 0 : tree captures[3] ATTRIBUTE_UNUSED = { _q20, _q21, _p1 };
7861 : 0 : tree res = generic_simplify_331 (loc, type, _p0, _p1, captures, GT_EXPR, LT_EXPR);
7862 : 0 : if (res) return res;
7863 : : }
7864 : : }
7865 : : break;
7866 : : }
7867 : : default:;
7868 : : }
7869 : : break;
7870 : : }
7871 : 17820695 : default:;
7872 : : }
7873 : 17820695 : switch (TREE_CODE (_p1))
7874 : : {
7875 : 73 : case TRUNC_MOD_EXPR:
7876 : 73 : {
7877 : 73 : tree _q30 = TREE_OPERAND (_p1, 0);
7878 : 73 : tree _q31 = TREE_OPERAND (_p1, 1);
7879 : 73 : if ((_q31 == _p0 && ! TREE_SIDE_EFFECTS (_q31)) || (operand_equal_p (_q31, _p0, 0) && types_match (_q31, _p0)))
7880 : : {
7881 : 0 : {
7882 : 0 : tree captures[2] ATTRIBUTE_UNUSED = { _q30, _p0 };
7883 : 0 : tree res = generic_simplify_332 (loc, type, _p0, _p1, captures, LT_EXPR);
7884 : 0 : if (res) return res;
7885 : : }
7886 : : }
7887 : : break;
7888 : : }
7889 : 17820695 : default:;
7890 : : }
7891 : 17820695 : switch (TREE_CODE (_p0))
7892 : : {
7893 : 132603 : case MULT_EXPR:
7894 : 132603 : {
7895 : 132603 : tree _q20 = TREE_OPERAND (_p0, 0);
7896 : 132603 : tree _q21 = TREE_OPERAND (_p0, 1);
7897 : 132603 : switch (TREE_CODE (_p1))
7898 : : {
7899 : 6302 : case MULT_EXPR:
7900 : 6302 : {
7901 : 6302 : tree _q50 = TREE_OPERAND (_p1, 0);
7902 : 6302 : tree _q51 = TREE_OPERAND (_p1, 1);
7903 : 6302 : if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
7904 : : {
7905 : 94 : {
7906 : 94 : tree captures[3] ATTRIBUTE_UNUSED = { _q20, _q21, _q50 };
7907 : 94 : tree res = generic_simplify_333 (loc, type, _p0, _p1, captures, GT_EXPR);
7908 : 94 : if (res) return res;
7909 : : }
7910 : : }
7911 : 6298 : if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
7912 : : {
7913 : 8 : {
7914 : 8 : tree captures[3] ATTRIBUTE_UNUSED = { _q20, _q21, _q51 };
7915 : 8 : tree res = generic_simplify_333 (loc, type, _p0, _p1, captures, GT_EXPR);
7916 : 8 : if (res) return res;
7917 : : }
7918 : : }
7919 : 6298 : if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
7920 : : {
7921 : 0 : {
7922 : 0 : tree captures[3] ATTRIBUTE_UNUSED = { _q21, _q20, _q50 };
7923 : 0 : tree res = generic_simplify_333 (loc, type, _p0, _p1, captures, GT_EXPR);
7924 : 0 : if (res) return res;
7925 : : }
7926 : : }
7927 : 6298 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
7928 : : {
7929 : 581 : {
7930 : 581 : tree captures[3] ATTRIBUTE_UNUSED = { _q21, _q20, _q51 };
7931 : 581 : tree res = generic_simplify_333 (loc, type, _p0, _p1, captures, GT_EXPR);
7932 : 581 : if (res) return res;
7933 : : }
7934 : : }
7935 : : break;
7936 : : }
7937 : : default:;
7938 : : }
7939 : : break;
7940 : : }
7941 : 1894337 : case PLUS_EXPR:
7942 : 1894337 : {
7943 : 1894337 : tree _q20 = TREE_OPERAND (_p0, 0);
7944 : 1894337 : tree _q21 = TREE_OPERAND (_p0, 1);
7945 : 1894337 : if (integer_minus_onep (_q21))
7946 : : {
7947 : 523939 : switch (TREE_CODE (_p1))
7948 : : {
7949 : 392128 : case INTEGER_CST:
7950 : 392128 : {
7951 : 392128 : {
7952 : 392128 : tree captures[3] ATTRIBUTE_UNUSED = { _q20, _q21, _p1 };
7953 : 392128 : tree res = generic_simplify_358 (loc, type, _p0, _p1, captures, GT_EXPR, LE_EXPR);
7954 : 392128 : if (res) return res;
7955 : : }
7956 : 386942 : break;
7957 : : }
7958 : : default:;
7959 : : }
7960 : : }
7961 : 1889151 : switch (TREE_CODE (_p1))
7962 : : {
7963 : 55786 : case PLUS_EXPR:
7964 : 55786 : {
7965 : 55786 : tree _q50 = TREE_OPERAND (_p1, 0);
7966 : 55786 : tree _q51 = TREE_OPERAND (_p1, 1);
7967 : 55786 : if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
7968 : : {
7969 : 4244 : {
7970 : 4244 : tree captures[3] ATTRIBUTE_UNUSED = { _q20, _q21, _q50 };
7971 : 4244 : tree res = generic_simplify_334 (loc, type, _p0, _p1, captures, GT_EXPR);
7972 : 4244 : if (res) return res;
7973 : : }
7974 : : }
7975 : 52774 : if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
7976 : : {
7977 : 307 : {
7978 : 307 : tree captures[3] ATTRIBUTE_UNUSED = { _q20, _q21, _q51 };
7979 : 307 : tree res = generic_simplify_334 (loc, type, _p0, _p1, captures, GT_EXPR);
7980 : 307 : if (res) return res;
7981 : : }
7982 : : }
7983 : 52774 : if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
7984 : : {
7985 : 25 : {
7986 : 25 : tree captures[3] ATTRIBUTE_UNUSED = { _q21, _q20, _q50 };
7987 : 25 : tree res = generic_simplify_334 (loc, type, _p0, _p1, captures, GT_EXPR);
7988 : 25 : if (res) return res;
7989 : : }
7990 : : }
7991 : 52774 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
7992 : : {
7993 : 295 : {
7994 : 295 : tree captures[3] ATTRIBUTE_UNUSED = { _q21, _q20, _q51 };
7995 : 295 : tree res = generic_simplify_334 (loc, type, _p0, _p1, captures, GT_EXPR);
7996 : 295 : if (res) return res;
7997 : : }
7998 : : }
7999 : : break;
8000 : : }
8001 : 1886139 : default:;
8002 : : }
8003 : 1886139 : switch (TREE_CODE (_q21))
8004 : : {
8005 : 1751666 : case INTEGER_CST:
8006 : 1751666 : {
8007 : 1751666 : switch (TREE_CODE (_p1))
8008 : : {
8009 : 33087 : case PLUS_EXPR:
8010 : 33087 : {
8011 : 33087 : tree _q50 = TREE_OPERAND (_p1, 0);
8012 : 33087 : tree _q51 = TREE_OPERAND (_p1, 1);
8013 : 33087 : if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
8014 : : {
8015 : 1198 : {
8016 : 1198 : tree captures[3] ATTRIBUTE_UNUSED = { _q20, _q21, _q50 };
8017 : 1198 : tree res = generic_simplify_335 (loc, type, _p0, _p1, captures, GT_EXPR);
8018 : 1198 : if (res) return res;
8019 : : }
8020 : : }
8021 : : break;
8022 : : }
8023 : : default:;
8024 : : }
8025 : : break;
8026 : : }
8027 : 1886139 : default:;
8028 : : }
8029 : 1886139 : if ((_p1 == _q21 && ! TREE_SIDE_EFFECTS (_p1)) || (operand_equal_p (_p1, _q21, 0) && types_match (_p1, _q21)))
8030 : : {
8031 : 53179 : {
8032 : 53179 : tree captures[3] ATTRIBUTE_UNUSED = { _p0, _q20, _q21 };
8033 : 53179 : tree res = generic_simplify_336 (loc, type, _p0, _p1, captures, GT_EXPR);
8034 : 53179 : if (res) return res;
8035 : : }
8036 : : }
8037 : 1851845 : if ((_p1 == _q20 && ! TREE_SIDE_EFFECTS (_p1)) || (operand_equal_p (_p1, _q20, 0) && types_match (_p1, _q20)))
8038 : : {
8039 : 5905 : {
8040 : 5905 : tree captures[3] ATTRIBUTE_UNUSED = { _p0, _q21, _q20 };
8041 : 5905 : tree res = generic_simplify_336 (loc, type, _p0, _p1, captures, GT_EXPR);
8042 : 5905 : if (res) return res;
8043 : : }
8044 : : }
8045 : : break;
8046 : : }
8047 : 1885885 : CASE_CONVERT:
8048 : 1885885 : {
8049 : 1885885 : tree _q20 = TREE_OPERAND (_p0, 0);
8050 : 1885885 : switch (TREE_CODE (_q20))
8051 : : {
8052 : 5 : case EXACT_DIV_EXPR:
8053 : 5 : {
8054 : 5 : tree _q30 = TREE_OPERAND (_q20, 0);
8055 : 5 : tree _q31 = TREE_OPERAND (_q20, 1);
8056 : 5 : switch (TREE_CODE (_q31))
8057 : : {
8058 : 5 : case INTEGER_CST:
8059 : 5 : {
8060 : 5 : switch (TREE_CODE (_p1))
8061 : : {
8062 : 2 : CASE_CONVERT:
8063 : 2 : {
8064 : 2 : tree _q60 = TREE_OPERAND (_p1, 0);
8065 : 2 : switch (TREE_CODE (_q60))
8066 : : {
8067 : 0 : case EXACT_DIV_EXPR:
8068 : 0 : {
8069 : 0 : tree _q70 = TREE_OPERAND (_q60, 0);
8070 : 0 : tree _q71 = TREE_OPERAND (_q60, 1);
8071 : 0 : if ((_q71 == _q31 && ! TREE_SIDE_EFFECTS (_q71)) || (operand_equal_p (_q71, _q31, 0) && types_match (_q71, _q31)))
8072 : : {
8073 : 0 : {
8074 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _p0, _q30, _q31, _q70 };
8075 : 0 : tree res = generic_simplify_203 (loc, type, _p0, _p1, captures, GT_EXPR);
8076 : 0 : if (res) return res;
8077 : : }
8078 : : }
8079 : : break;
8080 : : }
8081 : : default:;
8082 : : }
8083 : : break;
8084 : : }
8085 : : default:;
8086 : : }
8087 : : break;
8088 : : }
8089 : : default:;
8090 : : }
8091 : : break;
8092 : : }
8093 : : default:;
8094 : : }
8095 : : break;
8096 : : }
8097 : 8107 : case EXACT_DIV_EXPR:
8098 : 8107 : {
8099 : 8107 : tree _q20 = TREE_OPERAND (_p0, 0);
8100 : 8107 : tree _q21 = TREE_OPERAND (_p0, 1);
8101 : 8107 : switch (TREE_CODE (_q21))
8102 : : {
8103 : 8107 : case INTEGER_CST:
8104 : 8107 : {
8105 : 8107 : switch (TREE_CODE (_p1))
8106 : : {
8107 : 4 : case EXACT_DIV_EXPR:
8108 : 4 : {
8109 : 4 : tree _q50 = TREE_OPERAND (_p1, 0);
8110 : 4 : tree _q51 = TREE_OPERAND (_p1, 1);
8111 : 4 : if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
8112 : : {
8113 : 0 : {
8114 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _q50 };
8115 : 0 : tree res = generic_simplify_203 (loc, type, _p0, _p1, captures, GT_EXPR);
8116 : 0 : if (res) return res;
8117 : : }
8118 : : }
8119 : : break;
8120 : : }
8121 : : default:;
8122 : : }
8123 : : break;
8124 : : }
8125 : : default:;
8126 : : }
8127 : : break;
8128 : : }
8129 : 1541884 : case TRUNC_DIV_EXPR:
8130 : 1541884 : {
8131 : 1541884 : tree _q20 = TREE_OPERAND (_p0, 0);
8132 : 1541884 : tree _q21 = TREE_OPERAND (_p0, 1);
8133 : 1541884 : switch (TREE_CODE (_q21))
8134 : : {
8135 : 1534072 : case INTEGER_CST:
8136 : 1534072 : {
8137 : 1534072 : switch (TREE_CODE (_p1))
8138 : : {
8139 : 1522650 : case INTEGER_CST:
8140 : 1522650 : {
8141 : 1522650 : {
8142 : 1522650 : tree captures[4] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1 };
8143 : 1522650 : tree res = generic_simplify_206 (loc, type, _p0, _p1, captures, GT_EXPR);
8144 : 1522650 : if (res) return res;
8145 : : }
8146 : 69 : break;
8147 : : }
8148 : : default:;
8149 : : }
8150 : : break;
8151 : : }
8152 : : default:;
8153 : : }
8154 : : break;
8155 : : }
8156 : 613090 : case MINUS_EXPR:
8157 : 613090 : {
8158 : 613090 : tree _q20 = TREE_OPERAND (_p0, 0);
8159 : 613090 : tree _q21 = TREE_OPERAND (_p0, 1);
8160 : 613090 : switch (TREE_CODE (_p1))
8161 : : {
8162 : 1864 : case MINUS_EXPR:
8163 : 1864 : {
8164 : 1864 : tree _q50 = TREE_OPERAND (_p1, 0);
8165 : 1864 : tree _q51 = TREE_OPERAND (_p1, 1);
8166 : 1864 : if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
8167 : : {
8168 : 158 : {
8169 : 158 : tree captures[3] ATTRIBUTE_UNUSED = { _q20, _q21, _q50 };
8170 : 158 : tree res = generic_simplify_337 (loc, type, _p0, _p1, captures, GT_EXPR);
8171 : 158 : if (res) return res;
8172 : : }
8173 : : }
8174 : 1864 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
8175 : : {
8176 : 157 : {
8177 : 157 : tree captures[3] ATTRIBUTE_UNUSED = { _q20, _q21, _q51 };
8178 : 157 : tree res = generic_simplify_338 (loc, type, _p0, _p1, captures, GT_EXPR);
8179 : 157 : if (res) return res;
8180 : : }
8181 : : }
8182 : : break;
8183 : : }
8184 : : default:;
8185 : : }
8186 : : break;
8187 : : }
8188 : 41793 : case POINTER_DIFF_EXPR:
8189 : 41793 : {
8190 : 41793 : tree _q20 = TREE_OPERAND (_p0, 0);
8191 : 41793 : tree _q21 = TREE_OPERAND (_p0, 1);
8192 : 41793 : switch (TREE_CODE (_p1))
8193 : : {
8194 : 482 : case POINTER_DIFF_EXPR:
8195 : 482 : {
8196 : 482 : tree _q50 = TREE_OPERAND (_p1, 0);
8197 : 482 : tree _q51 = TREE_OPERAND (_p1, 1);
8198 : 482 : if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
8199 : : {
8200 : 43 : {
8201 : 43 : tree captures[4] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _q50 };
8202 : 43 : tree res = generic_simplify_210 (loc, type, _p0, _p1, captures, GT_EXPR);
8203 : 43 : if (res) return res;
8204 : : }
8205 : : }
8206 : 439 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
8207 : : {
8208 : 0 : {
8209 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _q51 };
8210 : 0 : tree res = generic_simplify_211 (loc, type, _p0, _p1, captures, GT_EXPR);
8211 : 0 : if (res) return res;
8212 : : }
8213 : : }
8214 : : break;
8215 : : }
8216 : : default:;
8217 : : }
8218 : : break;
8219 : : }
8220 : 16254259 : default:;
8221 : : }
8222 : 16254259 : switch (TREE_CODE (_p1))
8223 : : {
8224 : 103656 : case PLUS_EXPR:
8225 : 103656 : {
8226 : 103656 : tree _q30 = TREE_OPERAND (_p1, 0);
8227 : 103656 : tree _q31 = TREE_OPERAND (_p1, 1);
8228 : 103656 : if ((_q31 == _p0 && ! TREE_SIDE_EFFECTS (_q31)) || (operand_equal_p (_q31, _p0, 0) && types_match (_q31, _p0)))
8229 : : {
8230 : 0 : {
8231 : 0 : tree captures[3] ATTRIBUTE_UNUSED = { _p1, _q30, _p0 };
8232 : 0 : tree res = generic_simplify_336 (loc, type, _p0, _p1, captures, LT_EXPR);
8233 : 0 : if (res) return res;
8234 : : }
8235 : : }
8236 : 103656 : if ((_q30 == _p0 && ! TREE_SIDE_EFFECTS (_q30)) || (operand_equal_p (_q30, _p0, 0) && types_match (_q30, _p0)))
8237 : : {
8238 : 10 : {
8239 : 10 : tree captures[3] ATTRIBUTE_UNUSED = { _p1, _q31, _p0 };
8240 : 10 : tree res = generic_simplify_336 (loc, type, _p0, _p1, captures, LT_EXPR);
8241 : 10 : if (res) return res;
8242 : : }
8243 : : }
8244 : : break;
8245 : : }
8246 : 7767 : case MINUS_EXPR:
8247 : 7767 : {
8248 : 7767 : tree _q30 = TREE_OPERAND (_p1, 0);
8249 : 7767 : tree _q31 = TREE_OPERAND (_p1, 1);
8250 : 7767 : if ((_q30 == _p0 && ! TREE_SIDE_EFFECTS (_q30)) || (operand_equal_p (_q30, _p0, 0) && types_match (_q30, _p0)))
8251 : : {
8252 : 0 : {
8253 : 0 : tree captures[3] ATTRIBUTE_UNUSED = { _p0, _p1, _q31 };
8254 : 0 : tree res = generic_simplify_209 (loc, type, _p0, _p1, captures, GT_EXPR);
8255 : 0 : if (res) return res;
8256 : : }
8257 : : }
8258 : : break;
8259 : : }
8260 : 16254259 : default:;
8261 : : }
8262 : 16254259 : switch (TREE_CODE (_p0))
8263 : : {
8264 : 613090 : case MINUS_EXPR:
8265 : 613090 : {
8266 : 613090 : tree _q20 = TREE_OPERAND (_p0, 0);
8267 : 613090 : tree _q21 = TREE_OPERAND (_p0, 1);
8268 : 613090 : if ((_p1 == _q20 && ! TREE_SIDE_EFFECTS (_p1)) || (operand_equal_p (_p1, _q20, 0) && types_match (_p1, _q20)))
8269 : : {
8270 : 18244 : {
8271 : 18244 : tree captures[3] ATTRIBUTE_UNUSED = { _q20, _p0, _q21 };
8272 : 18244 : tree res = generic_simplify_209 (loc, type, _p0, _p1, captures, LT_EXPR);
8273 : 18244 : if (res) return res;
8274 : : }
8275 : : }
8276 : : break;
8277 : : }
8278 : 19106 : case BIT_AND_EXPR:
8279 : 19106 : {
8280 : 19106 : tree _q20 = TREE_OPERAND (_p0, 0);
8281 : 19106 : tree _q21 = TREE_OPERAND (_p0, 1);
8282 : 19106 : if (tree_expr_nonnegative_p (_q20))
8283 : : {
8284 : 17305 : if ((_p1 == _q20 && ! TREE_SIDE_EFFECTS (_p1)) || (operand_equal_p (_p1, _q20, 0) && types_match (_p1, _q20)))
8285 : : {
8286 : 0 : {
8287 : 0 : tree captures[2] ATTRIBUTE_UNUSED = { _q20, _q21 };
8288 : 0 : tree res = generic_simplify_339 (loc, type, _p0, _p1, captures, GT_EXPR, BIT_AND_EXPR);
8289 : 0 : if (res) return res;
8290 : : }
8291 : : }
8292 : : }
8293 : 19106 : if (tree_expr_nonnegative_p (_q21))
8294 : : {
8295 : 18320 : if ((_p1 == _q21 && ! TREE_SIDE_EFFECTS (_p1)) || (operand_equal_p (_p1, _q21, 0) && types_match (_p1, _q21)))
8296 : : {
8297 : 3936 : {
8298 : 3936 : tree captures[2] ATTRIBUTE_UNUSED = { _q21, _q20 };
8299 : 3936 : tree res = generic_simplify_339 (loc, type, _p0, _p1, captures, GT_EXPR, BIT_AND_EXPR);
8300 : 3936 : if (res) return res;
8301 : : }
8302 : : }
8303 : : }
8304 : : break;
8305 : : }
8306 : 16250280 : default:;
8307 : : }
8308 : 16250280 : switch (TREE_CODE (_p1))
8309 : : {
8310 : 125 : case BIT_IOR_EXPR:
8311 : 125 : {
8312 : 125 : tree _q30 = TREE_OPERAND (_p1, 0);
8313 : 125 : tree _q31 = TREE_OPERAND (_p1, 1);
8314 : 125 : if ((_q30 == _p0 && ! TREE_SIDE_EFFECTS (_q30)) || (operand_equal_p (_q30, _p0, 0) && types_match (_q30, _p0)))
8315 : : {
8316 : 0 : if (tree_expr_nonnegative_p (_q30))
8317 : : {
8318 : 0 : {
8319 : 0 : tree captures[2] ATTRIBUTE_UNUSED = { _p0, _q31 };
8320 : 0 : tree res = generic_simplify_339 (loc, type, _p0, _p1, captures, LT_EXPR, BIT_IOR_EXPR);
8321 : 0 : if (res) return res;
8322 : : }
8323 : : }
8324 : : }
8325 : 125 : if ((_q31 == _p0 && ! TREE_SIDE_EFFECTS (_q31)) || (operand_equal_p (_q31, _p0, 0) && types_match (_q31, _p0)))
8326 : : {
8327 : 0 : if (tree_expr_nonnegative_p (_q31))
8328 : : {
8329 : 0 : {
8330 : 0 : tree captures[2] ATTRIBUTE_UNUSED = { _p0, _q30 };
8331 : 0 : tree res = generic_simplify_339 (loc, type, _p0, _p1, captures, LT_EXPR, BIT_IOR_EXPR);
8332 : 0 : if (res) return res;
8333 : : }
8334 : : }
8335 : : }
8336 : : break;
8337 : : }
8338 : 16250280 : default:;
8339 : : }
8340 : 16250280 : switch (TREE_CODE (_p0))
8341 : : {
8342 : 13366 : case MAX_EXPR:
8343 : 13366 : {
8344 : 13366 : tree _q20 = TREE_OPERAND (_p0, 0);
8345 : 13366 : tree _q21 = TREE_OPERAND (_p0, 1);
8346 : 13366 : if ((_p1 == _q20 && ! TREE_SIDE_EFFECTS (_p1)) || (operand_equal_p (_p1, _q20, 0) && types_match (_p1, _q20)))
8347 : : {
8348 : 1 : {
8349 : 1 : tree captures[2] ATTRIBUTE_UNUSED = { _q20, _q21 };
8350 : 1 : tree res = generic_simplify_219 (loc, type, _p0, _p1, captures, MAX_EXPR, GT_EXPR, LT_EXPR);
8351 : 1 : if (res) return res;
8352 : : }
8353 : : }
8354 : 13365 : if ((_p1 == _q21 && ! TREE_SIDE_EFFECTS (_p1)) || (operand_equal_p (_p1, _q21, 0) && types_match (_p1, _q21)))
8355 : : {
8356 : 12 : {
8357 : 12 : tree captures[2] ATTRIBUTE_UNUSED = { _q21, _q20 };
8358 : 12 : tree res = generic_simplify_219 (loc, type, _p0, _p1, captures, MAX_EXPR, GT_EXPR, LT_EXPR);
8359 : 12 : if (res) return res;
8360 : : }
8361 : : }
8362 : 13356 : switch (TREE_CODE (_q21))
8363 : : {
8364 : 12835 : case INTEGER_CST:
8365 : 12835 : {
8366 : 12835 : switch (TREE_CODE (_p1))
8367 : : {
8368 : 0 : case INTEGER_CST:
8369 : 0 : {
8370 : 0 : {
8371 : 0 : tree captures[3] ATTRIBUTE_UNUSED = { _q20, _q21, _p1 };
8372 : 0 : tree res = generic_simplify_340 (loc, type, _p0, _p1, captures, MAX_EXPR, GT_EXPR, BIT_IOR_EXPR);
8373 : 0 : if (res) return res;
8374 : : }
8375 : 0 : break;
8376 : : }
8377 : : default:;
8378 : : }
8379 : : break;
8380 : : }
8381 : : default:;
8382 : : }
8383 : : break;
8384 : : }
8385 : 16250270 : default:;
8386 : : }
8387 : 16250270 : switch (TREE_CODE (_p1))
8388 : : {
8389 : 98 : case MIN_EXPR:
8390 : 98 : {
8391 : 98 : tree _q30 = TREE_OPERAND (_p1, 0);
8392 : 98 : tree _q31 = TREE_OPERAND (_p1, 1);
8393 : 98 : if ((_q30 == _p0 && ! TREE_SIDE_EFFECTS (_q30)) || (operand_equal_p (_q30, _p0, 0) && types_match (_q30, _p0)))
8394 : : {
8395 : 0 : {
8396 : 0 : tree captures[2] ATTRIBUTE_UNUSED = { _p0, _q31 };
8397 : 0 : tree res = generic_simplify_219 (loc, type, _p0, _p1, captures, MIN_EXPR, LT_EXPR, GT_EXPR);
8398 : 0 : if (res) return res;
8399 : : }
8400 : : }
8401 : 98 : if ((_q31 == _p0 && ! TREE_SIDE_EFFECTS (_q31)) || (operand_equal_p (_q31, _p0, 0) && types_match (_q31, _p0)))
8402 : : {
8403 : 0 : {
8404 : 0 : tree captures[2] ATTRIBUTE_UNUSED = { _p0, _q30 };
8405 : 0 : tree res = generic_simplify_219 (loc, type, _p0, _p1, captures, MIN_EXPR, LT_EXPR, GT_EXPR);
8406 : 0 : if (res) return res;
8407 : : }
8408 : : }
8409 : : break;
8410 : : }
8411 : 484 : case MAX_EXPR:
8412 : 484 : {
8413 : 484 : tree _q30 = TREE_OPERAND (_p1, 0);
8414 : 484 : tree _q31 = TREE_OPERAND (_p1, 1);
8415 : 484 : if ((_q30 == _p0 && ! TREE_SIDE_EFFECTS (_q30)) || (operand_equal_p (_q30, _p0, 0) && types_match (_q30, _p0)))
8416 : : {
8417 : 0 : {
8418 : 0 : tree captures[2] ATTRIBUTE_UNUSED = { _p0, _q31 };
8419 : 0 : tree res = generic_simplify_341 (loc, type, _p0, _p1, captures, MAX_EXPR, GT_EXPR);
8420 : 0 : if (res) return res;
8421 : : }
8422 : : }
8423 : 484 : if ((_q31 == _p0 && ! TREE_SIDE_EFFECTS (_q31)) || (operand_equal_p (_q31, _p0, 0) && types_match (_q31, _p0)))
8424 : : {
8425 : 0 : {
8426 : 0 : tree captures[2] ATTRIBUTE_UNUSED = { _p0, _q30 };
8427 : 0 : tree res = generic_simplify_341 (loc, type, _p0, _p1, captures, MAX_EXPR, GT_EXPR);
8428 : 0 : if (res) return res;
8429 : : }
8430 : : }
8431 : : break;
8432 : : }
8433 : 16250270 : default:;
8434 : : }
8435 : 16250270 : switch (TREE_CODE (_p0))
8436 : : {
8437 : 23357 : case MIN_EXPR:
8438 : 23357 : {
8439 : 23357 : tree _q20 = TREE_OPERAND (_p0, 0);
8440 : 23357 : tree _q21 = TREE_OPERAND (_p0, 1);
8441 : 23357 : if ((_p1 == _q20 && ! TREE_SIDE_EFFECTS (_p1)) || (operand_equal_p (_p1, _q20, 0) && types_match (_p1, _q20)))
8442 : : {
8443 : 1 : {
8444 : 1 : tree captures[2] ATTRIBUTE_UNUSED = { _q20, _q21 };
8445 : 1 : tree res = generic_simplify_341 (loc, type, _p0, _p1, captures, MIN_EXPR, LT_EXPR);
8446 : 1 : if (res) return res;
8447 : : }
8448 : : }
8449 : 23356 : if ((_p1 == _q21 && ! TREE_SIDE_EFFECTS (_p1)) || (operand_equal_p (_p1, _q21, 0) && types_match (_p1, _q21)))
8450 : : {
8451 : 1 : {
8452 : 1 : tree captures[2] ATTRIBUTE_UNUSED = { _q21, _q20 };
8453 : 1 : tree res = generic_simplify_341 (loc, type, _p0, _p1, captures, MIN_EXPR, LT_EXPR);
8454 : 1 : if (res) return res;
8455 : : }
8456 : : }
8457 : 23355 : switch (TREE_CODE (_q21))
8458 : : {
8459 : 11464 : case INTEGER_CST:
8460 : 11464 : {
8461 : 11464 : switch (TREE_CODE (_p1))
8462 : : {
8463 : 61 : case INTEGER_CST:
8464 : 61 : {
8465 : 61 : {
8466 : 61 : tree captures[3] ATTRIBUTE_UNUSED = { _q20, _q21, _p1 };
8467 : 61 : tree res = generic_simplify_340 (loc, type, _p0, _p1, captures, MIN_EXPR, GT_EXPR, BIT_AND_EXPR);
8468 : 61 : if (res) return res;
8469 : : }
8470 : 0 : break;
8471 : : }
8472 : : default:;
8473 : : }
8474 : : break;
8475 : : }
8476 : : default:;
8477 : : }
8478 : : break;
8479 : : }
8480 : 854 : case VEC_COND_EXPR:
8481 : 854 : {
8482 : 854 : tree _q20 = TREE_OPERAND (_p0, 0);
8483 : 854 : tree _q21 = TREE_OPERAND (_p0, 1);
8484 : 854 : tree _q22 = TREE_OPERAND (_p0, 2);
8485 : 854 : switch (TREE_CODE (_p1))
8486 : : {
8487 : 14 : case VEC_COND_EXPR:
8488 : 14 : {
8489 : 14 : tree _q60 = TREE_OPERAND (_p1, 0);
8490 : 14 : tree _q61 = TREE_OPERAND (_p1, 1);
8491 : 14 : tree _q62 = TREE_OPERAND (_p1, 2);
8492 : 14 : if ((_q60 == _q20 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q20, 0) && types_match (_q60, _q20)))
8493 : : {
8494 : 0 : {
8495 : 0 : tree captures[7] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _q22, _p1, _q61, _q62 };
8496 : 0 : if (VECTOR_TYPE_P (type)
8497 : 0 : && (TREE_CODE_CLASS (GT_EXPR) != tcc_comparison
8498 : 0 : || types_match (type, TREE_TYPE (captures[2]))
8499 : 0 : || expand_vec_cond_expr_p (type, TREE_TYPE (captures[1]))
8500 : : || (optimize_vectors_before_lowering_p ()
8501 : 0 : && !expand_vec_cond_expr_p (TREE_TYPE (captures[2]), TREE_TYPE (captures[1]))))
8502 : : )
8503 : : {
8504 : 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1689;
8505 : 0 : {
8506 : 0 : tree res_op0;
8507 : 0 : res_op0 = captures[1];
8508 : 0 : tree res_op1;
8509 : 0 : {
8510 : 0 : tree _o1[2], _r1;
8511 : 0 : _o1[0] = captures[2];
8512 : 0 : _o1[1] = captures[5];
8513 : 0 : _r1 = fold_build2_loc (loc, GT_EXPR, type, _o1[0], _o1[1]);
8514 : 0 : if (EXPR_P (_r1))
8515 : 0 : goto next_after_fail1689;
8516 : 0 : res_op1 = _r1;
8517 : : }
8518 : 0 : tree res_op2;
8519 : 0 : {
8520 : 0 : tree _o1[2], _r1;
8521 : 0 : _o1[0] = captures[3];
8522 : 0 : _o1[1] = captures[6];
8523 : 0 : _r1 = fold_build2_loc (loc, GT_EXPR, type, _o1[0], _o1[1]);
8524 : 0 : if (EXPR_P (_r1))
8525 : 0 : goto next_after_fail1689;
8526 : 0 : res_op2 = _r1;
8527 : : }
8528 : 0 : tree _r;
8529 : 0 : _r = fold_build3_loc (loc, VEC_COND_EXPR, type, res_op0, res_op1, res_op2);
8530 : 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 887, __FILE__, __LINE__, true);
8531 : 0 : return _r;
8532 : : }
8533 : 0 : next_after_fail1689:;
8534 : : }
8535 : : }
8536 : : }
8537 : : break;
8538 : : }
8539 : 854 : default:;
8540 : : }
8541 : 854 : {
8542 : 854 : tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _q22, _p1 };
8543 : 854 : if (VECTOR_TYPE_P (type)
8544 : 854 : && (TREE_CODE_CLASS (GT_EXPR) != tcc_comparison
8545 : 854 : || types_match (type, TREE_TYPE (captures[2]))
8546 : 854 : || expand_vec_cond_expr_p (type, TREE_TYPE (captures[1]))
8547 : : || (optimize_vectors_before_lowering_p ()
8548 : 10 : && !expand_vec_cond_expr_p (TREE_TYPE (captures[2]), TREE_TYPE (captures[1]))))
8549 : : )
8550 : : {
8551 : 854 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1690;
8552 : 854 : {
8553 : 854 : if (! tree_invariant_p (captures[4])) goto next_after_fail1690;
8554 : 9 : tree res_op0;
8555 : 9 : res_op0 = captures[1];
8556 : 9 : tree res_op1;
8557 : 9 : {
8558 : 9 : tree _o1[2], _r1;
8559 : 9 : _o1[0] = captures[2];
8560 : 9 : _o1[1] = unshare_expr (captures[4]);
8561 : 9 : _r1 = fold_build2_loc (loc, GT_EXPR, type, _o1[0], _o1[1]);
8562 : 9 : if (EXPR_P (_r1))
8563 : 6 : goto next_after_fail1690;
8564 : 3 : res_op1 = _r1;
8565 : : }
8566 : 3 : tree res_op2;
8567 : 3 : {
8568 : 3 : tree _o1[2], _r1;
8569 : 3 : _o1[0] = captures[3];
8570 : 3 : _o1[1] = captures[4];
8571 : 3 : _r1 = fold_build2_loc (loc, GT_EXPR, type, _o1[0], _o1[1]);
8572 : 3 : if (EXPR_P (_r1))
8573 : 3 : goto next_after_fail1690;
8574 : 0 : res_op2 = _r1;
8575 : : }
8576 : 0 : tree _r;
8577 : 0 : _r = fold_build3_loc (loc, VEC_COND_EXPR, type, res_op0, res_op1, res_op2);
8578 : 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 888, __FILE__, __LINE__, true);
8579 : 0 : return _r;
8580 : : }
8581 : 854 : next_after_fail1690:;
8582 : : }
8583 : : }
8584 : 854 : break;
8585 : : }
8586 : 16250207 : default:;
8587 : : }
8588 : 16250207 : switch (TREE_CODE (_p1))
8589 : : {
8590 : 74 : case VEC_COND_EXPR:
8591 : 74 : {
8592 : 74 : tree _q30 = TREE_OPERAND (_p1, 0);
8593 : 74 : tree _q31 = TREE_OPERAND (_p1, 1);
8594 : 74 : tree _q32 = TREE_OPERAND (_p1, 2);
8595 : 74 : {
8596 : 74 : tree captures[5] ATTRIBUTE_UNUSED = { _p0, _p1, _q30, _q31, _q32 };
8597 : 74 : if (VECTOR_TYPE_P (type)
8598 : 74 : && (TREE_CODE_CLASS (GT_EXPR) != tcc_comparison
8599 : 74 : || types_match (type, TREE_TYPE (captures[3]))
8600 : 74 : || expand_vec_cond_expr_p (type, TREE_TYPE (captures[2]))
8601 : : || (optimize_vectors_before_lowering_p ()
8602 : 7 : && !expand_vec_cond_expr_p (TREE_TYPE (captures[3]), TREE_TYPE (captures[2]))))
8603 : : )
8604 : : {
8605 : 74 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1691;
8606 : 74 : {
8607 : 74 : if (! tree_invariant_p (captures[0])) goto next_after_fail1691;
8608 : 0 : tree res_op0;
8609 : 0 : res_op0 = captures[2];
8610 : 0 : tree res_op1;
8611 : 0 : {
8612 : 0 : tree _o1[2], _r1;
8613 : 0 : _o1[0] = unshare_expr (captures[0]);
8614 : 0 : _o1[1] = captures[3];
8615 : 0 : _r1 = fold_build2_loc (loc, GT_EXPR, type, _o1[0], _o1[1]);
8616 : 0 : if (EXPR_P (_r1))
8617 : 0 : goto next_after_fail1691;
8618 : 0 : res_op1 = _r1;
8619 : : }
8620 : 0 : tree res_op2;
8621 : 0 : {
8622 : 0 : tree _o1[2], _r1;
8623 : 0 : _o1[0] = captures[0];
8624 : 0 : _o1[1] = captures[4];
8625 : 0 : _r1 = fold_build2_loc (loc, GT_EXPR, type, _o1[0], _o1[1]);
8626 : 0 : if (EXPR_P (_r1))
8627 : 0 : goto next_after_fail1691;
8628 : 0 : res_op2 = _r1;
8629 : : }
8630 : 0 : tree _r;
8631 : 0 : _r = fold_build3_loc (loc, VEC_COND_EXPR, type, res_op0, res_op1, res_op2);
8632 : 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 889, __FILE__, __LINE__, true);
8633 : 0 : return _r;
8634 : : }
8635 : 74 : next_after_fail1691:;
8636 : : }
8637 : : }
8638 : 74 : break;
8639 : : }
8640 : 16250207 : default:;
8641 : : }
8642 : 16250207 : if (uniform_integer_cst_p (_p1))
8643 : : {
8644 : 11442449 : {
8645 : 11442449 : tree captures[2] ATTRIBUTE_UNUSED = { _p0, _p1 };
8646 : 11442449 : tree res = generic_simplify_359 (loc, type, _p0, _p1, captures, GT_EXPR, GE_EXPR);
8647 : 11442449 : if (res) return res;
8648 : : }
8649 : : }
8650 : 16180638 : switch (TREE_CODE (_p0))
8651 : : {
8652 : 132272 : case MULT_EXPR:
8653 : 132272 : {
8654 : 132272 : tree _q20 = TREE_OPERAND (_p0, 0);
8655 : 132272 : tree _q21 = TREE_OPERAND (_p0, 1);
8656 : 132272 : switch (TREE_CODE (_q21))
8657 : : {
8658 : 95240 : case INTEGER_CST:
8659 : 95240 : {
8660 : 95240 : if (integer_zerop (_p1))
8661 : : {
8662 : 7382 : {
8663 : 7382 : tree captures[4] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1 };
8664 : 7382 : tree res = generic_simplify_240 (loc, type, _p0, _p1, captures, GT_EXPR, LT_EXPR);
8665 : 7382 : if (res) return res;
8666 : : }
8667 : : }
8668 : : break;
8669 : : }
8670 : : default:;
8671 : : }
8672 : : break;
8673 : : }
8674 : 16178551 : default:;
8675 : : }
8676 : 16178551 : if ((_p1 == _p0 && ! TREE_SIDE_EFFECTS (_p1)) || (operand_equal_p (_p1, _p0, 0) && types_match (_p1, _p0)))
8677 : : {
8678 : 2556 : {
8679 : 2556 : tree captures[1] ATTRIBUTE_UNUSED = { _p0 };
8680 : 2556 : tree res = generic_simplify_292 (loc, type, _p0, _p1, captures, GT_EXPR);
8681 : 2556 : if (res) return res;
8682 : : }
8683 : : }
8684 : 16175995 : switch (TREE_CODE (_p0))
8685 : : {
8686 : 839963 : case BIT_NOT_EXPR:
8687 : 839963 : {
8688 : 839963 : tree _q20 = TREE_OPERAND (_p0, 0);
8689 : 839963 : switch (TREE_CODE (_p1))
8690 : : {
8691 : 10 : case BIT_NOT_EXPR:
8692 : 10 : {
8693 : 10 : tree _q40 = TREE_OPERAND (_p1, 0);
8694 : 10 : {
8695 : 10 : tree captures[5] ATTRIBUTE_UNUSED = { _p0, _p0, _q20, _p1, _q40 };
8696 : 10 : tree res = generic_simplify_244 (loc, type, _p0, _p1, captures, GT_EXPR);
8697 : 10 : if (res) return res;
8698 : : }
8699 : 0 : break;
8700 : : }
8701 : 839953 : default:;
8702 : : }
8703 : 839953 : {
8704 : 839953 : tree _p1_pops[1];
8705 : 839953 : if (tree_nop_convert (_p1, _p1_pops))
8706 : : {
8707 : 2 : tree _q40 = _p1_pops[0];
8708 : 2 : switch (TREE_CODE (_q40))
8709 : : {
8710 : 0 : case BIT_NOT_EXPR:
8711 : 0 : {
8712 : 0 : tree _q50 = TREE_OPERAND (_q40, 0);
8713 : 0 : {
8714 : 0 : tree captures[5] ATTRIBUTE_UNUSED = { _p0, _p0, _q20, _q40, _q50 };
8715 : 0 : tree res = generic_simplify_244 (loc, type, _p0, _p1, captures, GT_EXPR);
8716 : 0 : if (res) return res;
8717 : : }
8718 : 0 : break;
8719 : : }
8720 : : default:;
8721 : : }
8722 : : }
8723 : : }
8724 : 839953 : if (CONSTANT_CLASS_P (_p1))
8725 : : {
8726 : 839190 : {
8727 : 839190 : tree captures[3] ATTRIBUTE_UNUSED = { _p0, _q20, _p1 };
8728 : 839190 : tree res = generic_simplify_245 (loc, type, _p0, _p1, captures, GT_EXPR, LT_EXPR);
8729 : 839190 : if (res) return res;
8730 : : }
8731 : : }
8732 : : break;
8733 : : }
8734 : 15336795 : default:;
8735 : : }
8736 : 15336795 : {
8737 : 15336795 : tree _p0_pops[1];
8738 : 15336795 : if (tree_nop_convert (_p0, _p0_pops))
8739 : : {
8740 : 674580 : tree _q20 = _p0_pops[0];
8741 : 674580 : switch (TREE_CODE (_q20))
8742 : : {
8743 : 0 : case BIT_NOT_EXPR:
8744 : 0 : {
8745 : 0 : tree _q30 = TREE_OPERAND (_q20, 0);
8746 : 0 : switch (TREE_CODE (_p1))
8747 : : {
8748 : 0 : case BIT_NOT_EXPR:
8749 : 0 : {
8750 : 0 : tree _q50 = TREE_OPERAND (_p1, 0);
8751 : 0 : {
8752 : 0 : tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q20, _q30, _p1, _q50 };
8753 : 0 : tree res = generic_simplify_246 (loc, type, _p0, _p1, captures, GT_EXPR);
8754 : 0 : if (res) return res;
8755 : : }
8756 : 0 : break;
8757 : : }
8758 : 0 : default:;
8759 : : }
8760 : 0 : {
8761 : 0 : tree _p1_pops[1];
8762 : 0 : if (tree_nop_convert (_p1, _p1_pops))
8763 : : {
8764 : 0 : tree _q50 = _p1_pops[0];
8765 : 0 : switch (TREE_CODE (_q50))
8766 : : {
8767 : 0 : case BIT_NOT_EXPR:
8768 : 0 : {
8769 : 0 : tree _q60 = TREE_OPERAND (_q50, 0);
8770 : 0 : {
8771 : 0 : tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q20, _q30, _q50, _q60 };
8772 : 0 : tree res = generic_simplify_246 (loc, type, _p0, _p1, captures, GT_EXPR);
8773 : 0 : if (res) return res;
8774 : : }
8775 : 0 : break;
8776 : : }
8777 : : default:;
8778 : : }
8779 : : }
8780 : : }
8781 : 0 : if (CONSTANT_CLASS_P (_p1))
8782 : : {
8783 : 0 : {
8784 : 0 : tree captures[3] ATTRIBUTE_UNUSED = { _q20, _q30, _p1 };
8785 : 0 : tree res = generic_simplify_245 (loc, type, _p0, _p1, captures, GT_EXPR, LT_EXPR);
8786 : 0 : if (res) return res;
8787 : : }
8788 : : }
8789 : : break;
8790 : : }
8791 : : default:;
8792 : : }
8793 : : }
8794 : : }
8795 : 15336795 : switch (TREE_CODE (_p1))
8796 : : {
8797 : 763029 : case REAL_CST:
8798 : 763029 : {
8799 : 763029 : {
8800 : 763029 : tree captures[2] ATTRIBUTE_UNUSED = { _p0, _p1 };
8801 : 763029 : tree res = generic_simplify_247 (loc, type, _p0, _p1, captures, GT_EXPR);
8802 : 763029 : if (res) return res;
8803 : : }
8804 : 762973 : break;
8805 : : }
8806 : 15336739 : default:;
8807 : : }
8808 : 15336739 : switch (TREE_CODE (_p0))
8809 : : {
8810 : 1849762 : case PLUS_EXPR:
8811 : 1849762 : {
8812 : 1849762 : tree _q20 = TREE_OPERAND (_p0, 0);
8813 : 1849762 : tree _q21 = TREE_OPERAND (_p0, 1);
8814 : 1849762 : switch (TREE_CODE (_q21))
8815 : : {
8816 : 466 : case REAL_CST:
8817 : 466 : {
8818 : 466 : switch (TREE_CODE (_p1))
8819 : : {
8820 : 230 : case REAL_CST:
8821 : 230 : {
8822 : 230 : {
8823 : 230 : tree captures[3] ATTRIBUTE_UNUSED = { _q20, _q21, _p1 };
8824 : 230 : tree res = generic_simplify_248 (loc, type, _p0, _p1, captures, PLUS_EXPR, GT_EXPR);
8825 : 230 : if (res) return res;
8826 : : }
8827 : 230 : break;
8828 : : }
8829 : : default:;
8830 : : }
8831 : : break;
8832 : : }
8833 : 1715999 : case INTEGER_CST:
8834 : 1715999 : {
8835 : 1715999 : if ((_p1 == _q20 && ! TREE_SIDE_EFFECTS (_p1)) || (operand_equal_p (_p1, _q20, 0) && types_match (_p1, _q20)))
8836 : : {
8837 : 1019 : {
8838 : 1019 : tree captures[5] ATTRIBUTE_UNUSED = { _p0, _p0, _q20, _q20, _q21 };
8839 : 1019 : tree res = generic_simplify_343 (loc, type, _p0, _p1, captures, GT_EXPR, LE_EXPR);
8840 : 1019 : if (res) return res;
8841 : : }
8842 : : }
8843 : : break;
8844 : : }
8845 : : default:;
8846 : : }
8847 : : break;
8848 : : }
8849 : 602805 : case MINUS_EXPR:
8850 : 602805 : {
8851 : 602805 : tree _q20 = TREE_OPERAND (_p0, 0);
8852 : 602805 : tree _q21 = TREE_OPERAND (_p0, 1);
8853 : 602805 : switch (TREE_CODE (_q21))
8854 : : {
8855 : 761 : case REAL_CST:
8856 : 761 : {
8857 : 761 : switch (TREE_CODE (_p1))
8858 : : {
8859 : 547 : case REAL_CST:
8860 : 547 : {
8861 : 547 : {
8862 : 547 : tree captures[3] ATTRIBUTE_UNUSED = { _q20, _q21, _p1 };
8863 : 547 : tree res = generic_simplify_248 (loc, type, _p0, _p1, captures, MINUS_EXPR, GT_EXPR);
8864 : 547 : if (res) return res;
8865 : : }
8866 : 545 : break;
8867 : : }
8868 : : default:;
8869 : : }
8870 : : break;
8871 : : }
8872 : 602803 : default:;
8873 : : }
8874 : 602803 : switch (TREE_CODE (_q20))
8875 : : {
8876 : 43 : case REAL_CST:
8877 : 43 : {
8878 : 43 : switch (TREE_CODE (_p1))
8879 : : {
8880 : 37 : case REAL_CST:
8881 : 37 : {
8882 : 37 : {
8883 : 37 : tree captures[3] ATTRIBUTE_UNUSED = { _q20, _q21, _p1 };
8884 : 37 : tree res = generic_simplify_249 (loc, type, _p0, _p1, captures, GT_EXPR);
8885 : 37 : if (res) return res;
8886 : : }
8887 : 35 : break;
8888 : : }
8889 : : default:;
8890 : : }
8891 : : break;
8892 : : }
8893 : : default:;
8894 : : }
8895 : : break;
8896 : : }
8897 : 40692 : case FLOAT_EXPR:
8898 : 40692 : {
8899 : 40692 : tree _q20 = TREE_OPERAND (_p0, 0);
8900 : 40692 : switch (TREE_CODE (_p1))
8901 : : {
8902 : 0 : case FLOAT_EXPR:
8903 : 0 : {
8904 : 0 : tree _q40 = TREE_OPERAND (_p1, 0);
8905 : 0 : {
8906 : 0 : tree captures[3] ATTRIBUTE_UNUSED = { _p0, _q20, _q40 };
8907 : 0 : tree res = generic_simplify_252 (loc, type, _p0, _p1, captures, GT_EXPR, GT_EXPR);
8908 : 0 : if (res) return res;
8909 : : }
8910 : 0 : break;
8911 : : }
8912 : 39131 : case REAL_CST:
8913 : 39131 : {
8914 : 39131 : {
8915 : 39131 : tree captures[2] ATTRIBUTE_UNUSED = { _q20, _p1 };
8916 : 39131 : tree res = generic_simplify_253 (loc, type, _p0, _p1, captures, GT_EXPR, GE_EXPR);
8917 : 39131 : if (res) return res;
8918 : : }
8919 : 19648 : break;
8920 : : }
8921 : : default:;
8922 : : }
8923 : : break;
8924 : : }
8925 : 8107 : case EXACT_DIV_EXPR:
8926 : 8107 : {
8927 : 8107 : tree _q20 = TREE_OPERAND (_p0, 0);
8928 : 8107 : tree _q21 = TREE_OPERAND (_p0, 1);
8929 : 8107 : switch (TREE_CODE (_q21))
8930 : : {
8931 : 8107 : case INTEGER_CST:
8932 : 8107 : {
8933 : 8107 : switch (TREE_CODE (_p1))
8934 : : {
8935 : 2449 : case INTEGER_CST:
8936 : 2449 : {
8937 : 2449 : {
8938 : 2449 : tree captures[3] ATTRIBUTE_UNUSED = { _q20, _q21, _p1 };
8939 : 2449 : tree res = generic_simplify_344 (loc, type, _p0, _p1, captures, GT_EXPR);
8940 : 2449 : if (res) return res;
8941 : : }
8942 : 0 : break;
8943 : : }
8944 : : default:;
8945 : : }
8946 : : break;
8947 : : }
8948 : : default:;
8949 : : }
8950 : : break;
8951 : : }
8952 : 1882565 : CASE_CONVERT:
8953 : 1882565 : {
8954 : 1882565 : tree _q20 = TREE_OPERAND (_p0, 0);
8955 : 1882565 : switch (TREE_CODE (_q20))
8956 : : {
8957 : 5 : case EXACT_DIV_EXPR:
8958 : 5 : {
8959 : 5 : tree _q30 = TREE_OPERAND (_q20, 0);
8960 : 5 : tree _q31 = TREE_OPERAND (_q20, 1);
8961 : 5 : switch (TREE_CODE (_q31))
8962 : : {
8963 : 5 : case INTEGER_CST:
8964 : 5 : {
8965 : 5 : switch (TREE_CODE (_p1))
8966 : : {
8967 : 0 : case INTEGER_CST:
8968 : 0 : {
8969 : 0 : {
8970 : 0 : tree captures[3] ATTRIBUTE_UNUSED = { _q30, _q31, _p1 };
8971 : 0 : tree res = generic_simplify_345 (loc, type, _p0, _p1, captures, GT_EXPR, LT_EXPR);
8972 : 0 : if (res) return res;
8973 : : }
8974 : 0 : break;
8975 : : }
8976 : : default:;
8977 : : }
8978 : : break;
8979 : : }
8980 : : default:;
8981 : : }
8982 : : break;
8983 : : }
8984 : 1882565 : default:;
8985 : : }
8986 : 1882565 : switch (TREE_CODE (_p1))
8987 : : {
8988 : 167501 : CASE_CONVERT:
8989 : 167501 : {
8990 : 167501 : tree _q40 = TREE_OPERAND (_p1, 0);
8991 : 167501 : {
8992 : 167501 : tree captures[4] ATTRIBUTE_UNUSED = { _p0, _q20, _p1, _q40 };
8993 : 167501 : tree res = generic_simplify_257 (loc, type, _p0, _p1, captures, GT_EXPR);
8994 : 167501 : if (res) return res;
8995 : : }
8996 : 138037 : break;
8997 : : }
8998 : 1853101 : default:;
8999 : : }
9000 : 1853101 : {
9001 : 1853101 : tree captures[4] ATTRIBUTE_UNUSED = { _p0, _q20, _p1, _p1 };
9002 : 1853101 : tree res = generic_simplify_258 (loc, type, _p0, _p1, captures, GT_EXPR);
9003 : 1853101 : if (res) return res;
9004 : : }
9005 : 958993 : switch (TREE_CODE (_q20))
9006 : : {
9007 : 1409 : case ADDR_EXPR:
9008 : 1409 : {
9009 : 1409 : switch (TREE_CODE (_p1))
9010 : : {
9011 : 631 : CASE_CONVERT:
9012 : 631 : {
9013 : 631 : tree _q40 = TREE_OPERAND (_p1, 0);
9014 : 631 : switch (TREE_CODE (_q40))
9015 : : {
9016 : 275 : case ADDR_EXPR:
9017 : 275 : {
9018 : 275 : {
9019 : 275 : tree captures[3] ATTRIBUTE_UNUSED = { _p0, _q20, _q40 };
9020 : 275 : tree res = generic_simplify_275 (loc, type, _p0, _p1, captures, GT_EXPR);
9021 : 275 : if (res) return res;
9022 : : }
9023 : 202 : break;
9024 : : }
9025 : : default:;
9026 : : }
9027 : : break;
9028 : : }
9029 : 0 : case ADDR_EXPR:
9030 : 0 : {
9031 : 0 : {
9032 : 0 : tree captures[3] ATTRIBUTE_UNUSED = { _p0, _q20, _p1 };
9033 : 0 : tree res = generic_simplify_275 (loc, type, _p0, _p1, captures, GT_EXPR);
9034 : 0 : if (res) return res;
9035 : : }
9036 : 0 : break;
9037 : : }
9038 : : default:;
9039 : : }
9040 : : break;
9041 : : }
9042 : 958920 : default:;
9043 : : }
9044 : 958920 : if (uniform_integer_cst_p (_p1))
9045 : : {
9046 : 264393 : {
9047 : 264393 : tree captures[3] ATTRIBUTE_UNUSED = { _p0, _q20, _p1 };
9048 : 264393 : tree res = generic_simplify_346 (loc, type, _p0, _p1, captures, GT_EXPR);
9049 : 264393 : if (res) return res;
9050 : : }
9051 : : }
9052 : : break;
9053 : : }
9054 : 15167 : case BIT_AND_EXPR:
9055 : 15167 : {
9056 : 15167 : tree _q20 = TREE_OPERAND (_p0, 0);
9057 : 15167 : tree _q21 = TREE_OPERAND (_p0, 1);
9058 : 15167 : switch (TREE_CODE (_q21))
9059 : : {
9060 : 14271 : case INTEGER_CST:
9061 : 14271 : {
9062 : 14271 : switch (TREE_CODE (_p1))
9063 : : {
9064 : 9120 : case INTEGER_CST:
9065 : 9120 : {
9066 : 9120 : {
9067 : 9120 : tree captures[4] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1 };
9068 : 9120 : tree res = generic_simplify_360 (loc, type, _p0, _p1, captures, GT_EXPR, NE_EXPR);
9069 : 9120 : if (res) return res;
9070 : : }
9071 : 8621 : break;
9072 : : }
9073 : : default:;
9074 : : }
9075 : : break;
9076 : : }
9077 : : default:;
9078 : : }
9079 : : break;
9080 : : }
9081 : 15531 : case NEGATE_EXPR:
9082 : 15531 : {
9083 : 15531 : tree _q20 = TREE_OPERAND (_p0, 0);
9084 : 15531 : switch (TREE_CODE (_p1))
9085 : : {
9086 : 4 : case NEGATE_EXPR:
9087 : 4 : {
9088 : 4 : tree _q40 = TREE_OPERAND (_p1, 0);
9089 : 4 : {
9090 : 4 : tree captures[2] ATTRIBUTE_UNUSED = { _q20, _q40 };
9091 : 4 : tree res = generic_simplify_255 (loc, type, _p0, _p1, captures, GT_EXPR, LT_EXPR);
9092 : 4 : if (res) return res;
9093 : : }
9094 : 4 : break;
9095 : : }
9096 : 15531 : default:;
9097 : : }
9098 : 15531 : if (CONSTANT_CLASS_P (_p1))
9099 : : {
9100 : 689 : {
9101 : 689 : tree captures[2] ATTRIBUTE_UNUSED = { _q20, _p1 };
9102 : 689 : tree res = generic_simplify_256 (loc, type, _p0, _p1, captures, GT_EXPR, LT_EXPR);
9103 : 689 : if (res) return res;
9104 : : }
9105 : : }
9106 : : break;
9107 : : }
9108 : 17646 : case ADDR_EXPR:
9109 : 17646 : {
9110 : 17646 : switch (TREE_CODE (_p1))
9111 : : {
9112 : 298 : CASE_CONVERT:
9113 : 298 : {
9114 : 298 : tree _q30 = TREE_OPERAND (_p1, 0);
9115 : 298 : switch (TREE_CODE (_q30))
9116 : : {
9117 : 0 : case ADDR_EXPR:
9118 : 0 : {
9119 : 0 : {
9120 : 0 : tree captures[3] ATTRIBUTE_UNUSED = { _p0, _p0, _q30 };
9121 : 0 : tree res = generic_simplify_276 (loc, type, _p0, _p1, captures, GT_EXPR);
9122 : 0 : if (res) return res;
9123 : : }
9124 : 0 : break;
9125 : : }
9126 : : default:;
9127 : : }
9128 : : break;
9129 : : }
9130 : 4592 : case ADDR_EXPR:
9131 : 4592 : {
9132 : 4592 : {
9133 : 4592 : tree captures[3] ATTRIBUTE_UNUSED = { _p0, _p0, _p1 };
9134 : 4592 : tree res = generic_simplify_276 (loc, type, _p0, _p1, captures, GT_EXPR);
9135 : 4592 : if (res) return res;
9136 : : }
9137 : 638 : break;
9138 : : }
9139 : : default:;
9140 : : }
9141 : : break;
9142 : : }
9143 : 282952 : case CALL_EXPR:
9144 : 282952 : switch (get_call_combined_fn (_p0))
9145 : : {
9146 : 1 : case CFN_BUILT_IN_SQRTF:
9147 : 1 : if (call_expr_nargs (_p0) == 1)
9148 : : {
9149 : 1 : tree _q20 = CALL_EXPR_ARG (_p0, 0);
9150 : 1 : switch (TREE_CODE (_p1))
9151 : : {
9152 : 1 : case REAL_CST:
9153 : 1 : {
9154 : 1 : {
9155 : 1 : tree captures[2] ATTRIBUTE_UNUSED = { _q20, _p1 };
9156 : 1 : tree res = generic_simplify_250 (loc, type, _p0, _p1, captures, CFN_BUILT_IN_SQRTF, GT_EXPR);
9157 : 1 : if (res) return res;
9158 : : }
9159 : 0 : break;
9160 : : }
9161 : 0 : case CALL_EXPR:
9162 : 0 : switch (get_call_combined_fn (_p1))
9163 : : {
9164 : 0 : case CFN_BUILT_IN_SQRTF:
9165 : 0 : if (call_expr_nargs (_p1) == 1)
9166 : : {
9167 : 0 : tree _q40 = CALL_EXPR_ARG (_p1, 0);
9168 : 0 : {
9169 : 0 : tree captures[2] ATTRIBUTE_UNUSED = { _q20, _q40 };
9170 : 0 : tree res = generic_simplify_251 (loc, type, _p0, _p1, captures, CFN_BUILT_IN_SQRTF, GT_EXPR);
9171 : 0 : if (res) return res;
9172 : : }
9173 : : }
9174 : : break;
9175 : : default:;
9176 : : }
9177 : : break;
9178 : : default:;
9179 : : }
9180 : : }
9181 : : break;
9182 : 0 : case CFN_BUILT_IN_SQRTL:
9183 : 0 : if (call_expr_nargs (_p0) == 1)
9184 : : {
9185 : 0 : tree _q20 = CALL_EXPR_ARG (_p0, 0);
9186 : 0 : switch (TREE_CODE (_p1))
9187 : : {
9188 : 0 : case REAL_CST:
9189 : 0 : {
9190 : 0 : {
9191 : 0 : tree captures[2] ATTRIBUTE_UNUSED = { _q20, _p1 };
9192 : 0 : tree res = generic_simplify_250 (loc, type, _p0, _p1, captures, CFN_BUILT_IN_SQRTL, GT_EXPR);
9193 : 0 : if (res) return res;
9194 : : }
9195 : 0 : break;
9196 : : }
9197 : 0 : case CALL_EXPR:
9198 : 0 : switch (get_call_combined_fn (_p1))
9199 : : {
9200 : 0 : case CFN_BUILT_IN_SQRTL:
9201 : 0 : if (call_expr_nargs (_p1) == 1)
9202 : : {
9203 : 0 : tree _q40 = CALL_EXPR_ARG (_p1, 0);
9204 : 0 : {
9205 : 0 : tree captures[2] ATTRIBUTE_UNUSED = { _q20, _q40 };
9206 : 0 : tree res = generic_simplify_251 (loc, type, _p0, _p1, captures, CFN_BUILT_IN_SQRTL, GT_EXPR);
9207 : 0 : if (res) return res;
9208 : : }
9209 : : }
9210 : : break;
9211 : : default:;
9212 : : }
9213 : : break;
9214 : : default:;
9215 : : }
9216 : : }
9217 : : break;
9218 : 3 : case CFN_BUILT_IN_SQRT:
9219 : 3 : if (call_expr_nargs (_p0) == 1)
9220 : : {
9221 : 3 : tree _q20 = CALL_EXPR_ARG (_p0, 0);
9222 : 3 : switch (TREE_CODE (_p1))
9223 : : {
9224 : 3 : case REAL_CST:
9225 : 3 : {
9226 : 3 : {
9227 : 3 : tree captures[2] ATTRIBUTE_UNUSED = { _q20, _p1 };
9228 : 3 : tree res = generic_simplify_250 (loc, type, _p0, _p1, captures, CFN_BUILT_IN_SQRT, GT_EXPR);
9229 : 3 : if (res) return res;
9230 : : }
9231 : 0 : break;
9232 : : }
9233 : 0 : case CALL_EXPR:
9234 : 0 : switch (get_call_combined_fn (_p1))
9235 : : {
9236 : 0 : case CFN_BUILT_IN_SQRT:
9237 : 0 : if (call_expr_nargs (_p1) == 1)
9238 : : {
9239 : 0 : tree _q40 = CALL_EXPR_ARG (_p1, 0);
9240 : 0 : {
9241 : 0 : tree captures[2] ATTRIBUTE_UNUSED = { _q20, _q40 };
9242 : 0 : tree res = generic_simplify_251 (loc, type, _p0, _p1, captures, CFN_BUILT_IN_SQRT, GT_EXPR);
9243 : 0 : if (res) return res;
9244 : : }
9245 : : }
9246 : : break;
9247 : : default:;
9248 : : }
9249 : : break;
9250 : : default:;
9251 : : }
9252 : : }
9253 : : break;
9254 : 0 : case CFN_SQRT:
9255 : 0 : if (call_expr_nargs (_p0) == 1)
9256 : : {
9257 : 0 : tree _q20 = CALL_EXPR_ARG (_p0, 0);
9258 : 0 : switch (TREE_CODE (_p1))
9259 : : {
9260 : 0 : case REAL_CST:
9261 : 0 : {
9262 : 0 : {
9263 : 0 : tree captures[2] ATTRIBUTE_UNUSED = { _q20, _p1 };
9264 : 0 : tree res = generic_simplify_250 (loc, type, _p0, _p1, captures, CFN_SQRT, GT_EXPR);
9265 : 0 : if (res) return res;
9266 : : }
9267 : 0 : break;
9268 : : }
9269 : 0 : case CALL_EXPR:
9270 : 0 : switch (get_call_combined_fn (_p1))
9271 : : {
9272 : 0 : case CFN_SQRT:
9273 : 0 : if (call_expr_nargs (_p1) == 1)
9274 : : {
9275 : 0 : tree _q40 = CALL_EXPR_ARG (_p1, 0);
9276 : 0 : {
9277 : 0 : tree captures[2] ATTRIBUTE_UNUSED = { _q20, _q40 };
9278 : 0 : tree res = generic_simplify_251 (loc, type, _p0, _p1, captures, CFN_SQRT, GT_EXPR);
9279 : 0 : if (res) return res;
9280 : : }
9281 : : }
9282 : : break;
9283 : : default:;
9284 : : }
9285 : : break;
9286 : : default:;
9287 : : }
9288 : : }
9289 : : break;
9290 : : default:;
9291 : : }
9292 : : break;
9293 : 14363413 : default:;
9294 : : }
9295 : 14363413 : if (uniform_integer_cst_p (_p1))
9296 : : {
9297 : 9612722 : {
9298 : 9612722 : tree captures[3] ATTRIBUTE_UNUSED = { _p0, _p0, _p1 };
9299 : 9612722 : tree res = generic_simplify_347 (loc, type, _p0, _p1, captures, GT_EXPR);
9300 : 9612722 : if (res) return res;
9301 : : }
9302 : : }
9303 : 13689610 : switch (TREE_CODE (_p0))
9304 : : {
9305 : 894928 : CASE_CONVERT:
9306 : 894928 : {
9307 : 894928 : tree _q20 = TREE_OPERAND (_p0, 0);
9308 : 894928 : switch (TREE_CODE (_q20))
9309 : : {
9310 : 1 : case NE_EXPR:
9311 : 1 : {
9312 : 1 : tree _q30 = TREE_OPERAND (_q20, 0);
9313 : 1 : tree _q31 = TREE_OPERAND (_q20, 1);
9314 : 1 : if (integer_zerop (_q31))
9315 : : {
9316 : 1 : if ((_p1 == _q30 && ! TREE_SIDE_EFFECTS (_p1)) || (operand_equal_p (_p1, _q30, 0) && types_match (_p1, _q30)))
9317 : : {
9318 : 1 : {
9319 : 1 : tree captures[1] ATTRIBUTE_UNUSED = { _q30 };
9320 : 1 : if (TYPE_UNSIGNED (TREE_TYPE (captures[0]))
9321 : : )
9322 : : {
9323 : 1 : if (TREE_SIDE_EFFECTS (_p0)) goto next_after_fail1692;
9324 : 1 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1692;
9325 : 1 : {
9326 : 1 : tree _r;
9327 : 1 : _r = constant_boolean_node (false, type);
9328 : 1 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 992, __FILE__, __LINE__, true);
9329 : 1 : return _r;
9330 : : }
9331 : : next_after_fail1692:;
9332 : : }
9333 : : }
9334 : : }
9335 : : }
9336 : : break;
9337 : : }
9338 : 43428 : case PLUS_EXPR:
9339 : 43428 : {
9340 : 43428 : tree _q30 = TREE_OPERAND (_q20, 0);
9341 : 43428 : tree _q31 = TREE_OPERAND (_q20, 1);
9342 : 43428 : switch (TREE_CODE (_q30))
9343 : : {
9344 : 31923 : CASE_CONVERT:
9345 : 31923 : {
9346 : 31923 : tree _q40 = TREE_OPERAND (_q30, 0);
9347 : 31923 : switch (TREE_CODE (_q31))
9348 : : {
9349 : 31919 : case INTEGER_CST:
9350 : 31919 : {
9351 : 31919 : if ((_p1 == _q40 && ! TREE_SIDE_EFFECTS (_p1)) || (operand_equal_p (_p1, _q40, 0) && types_match (_p1, _q40)))
9352 : : {
9353 : 7 : {
9354 : 7 : tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q20, _q30, _q40, _q31 };
9355 : 7 : tree res = generic_simplify_348 (loc, type, _p0, _p1, captures, GT_EXPR, LE_EXPR);
9356 : 7 : if (res) return res;
9357 : : }
9358 : : }
9359 : : break;
9360 : : }
9361 : : default:;
9362 : : }
9363 : : break;
9364 : : }
9365 : : default:;
9366 : : }
9367 : : break;
9368 : : }
9369 : : default:;
9370 : : }
9371 : : break;
9372 : : }
9373 : 13689602 : default:;
9374 : : }
9375 : 13689602 : switch (TREE_CODE (_p1))
9376 : : {
9377 : 522212 : CASE_CONVERT:
9378 : 522212 : {
9379 : 522212 : tree _q30 = TREE_OPERAND (_p1, 0);
9380 : 522212 : switch (TREE_CODE (_q30))
9381 : : {
9382 : 3234 : case PLUS_EXPR:
9383 : 3234 : {
9384 : 3234 : tree _q40 = TREE_OPERAND (_q30, 0);
9385 : 3234 : tree _q41 = TREE_OPERAND (_q30, 1);
9386 : 3234 : switch (TREE_CODE (_q40))
9387 : : {
9388 : 3196 : CASE_CONVERT:
9389 : 3196 : {
9390 : 3196 : tree _q50 = TREE_OPERAND (_q40, 0);
9391 : 3196 : if ((_q50 == _p0 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _p0, 0) && types_match (_q50, _p0)))
9392 : : {
9393 : 0 : switch (TREE_CODE (_q41))
9394 : : {
9395 : 0 : case INTEGER_CST:
9396 : 0 : {
9397 : 0 : {
9398 : 0 : tree captures[5] ATTRIBUTE_UNUSED = { _p1, _q30, _q40, _p0, _q41 };
9399 : 0 : tree res = generic_simplify_348 (loc, type, _p0, _p1, captures, LT_EXPR, GT_EXPR);
9400 : 0 : if (res) return res;
9401 : : }
9402 : 0 : break;
9403 : : }
9404 : : default:;
9405 : : }
9406 : : }
9407 : : break;
9408 : : }
9409 : : default:;
9410 : : }
9411 : : break;
9412 : : }
9413 : : default:;
9414 : : }
9415 : : break;
9416 : : }
9417 : 103656 : case PLUS_EXPR:
9418 : 103656 : {
9419 : 103656 : tree _q30 = TREE_OPERAND (_p1, 0);
9420 : 103656 : tree _q31 = TREE_OPERAND (_p1, 1);
9421 : 103656 : if ((_q30 == _p0 && ! TREE_SIDE_EFFECTS (_q30)) || (operand_equal_p (_q30, _p0, 0) && types_match (_q30, _p0)))
9422 : : {
9423 : 10 : switch (TREE_CODE (_q31))
9424 : : {
9425 : 10 : case INTEGER_CST:
9426 : 10 : {
9427 : 10 : {
9428 : 10 : tree captures[5] ATTRIBUTE_UNUSED = { _p1, _p1, _q30, _p0, _q31 };
9429 : 10 : tree res = generic_simplify_343 (loc, type, _p0, _p1, captures, LT_EXPR, GT_EXPR);
9430 : 10 : if (res) return res;
9431 : : }
9432 : 0 : break;
9433 : : }
9434 : : default:;
9435 : : }
9436 : : }
9437 : : break;
9438 : : }
9439 : 13689592 : default:;
9440 : : }
9441 : 13689592 : switch (TREE_CODE (_p0))
9442 : : {
9443 : 519063 : case MINUS_EXPR:
9444 : 519063 : {
9445 : 519063 : tree _q20 = TREE_OPERAND (_p0, 0);
9446 : 519063 : tree _q21 = TREE_OPERAND (_p0, 1);
9447 : 519063 : if ((_p1 == _q20 && ! TREE_SIDE_EFFECTS (_p1)) || (operand_equal_p (_p1, _q20, 0) && types_match (_p1, _q20)))
9448 : : {
9449 : 6911 : {
9450 : 6911 : tree captures[3] ATTRIBUTE_UNUSED = { _p0, _q20, _q21 };
9451 : 6911 : tree res = generic_simplify_349 (loc, type, _p0, _p1, captures, GT_EXPR);
9452 : 6911 : if (res) return res;
9453 : : }
9454 : : }
9455 : : break;
9456 : : }
9457 : 13682693 : default:;
9458 : : }
9459 : 13682693 : switch (TREE_CODE (_p1))
9460 : : {
9461 : 103646 : case PLUS_EXPR:
9462 : 103646 : {
9463 : 103646 : tree _q30 = TREE_OPERAND (_p1, 0);
9464 : 103646 : tree _q31 = TREE_OPERAND (_p1, 1);
9465 : 103646 : switch (TREE_CODE (_q30))
9466 : : {
9467 : 0 : case MINUS_EXPR:
9468 : 0 : {
9469 : 0 : tree _q40 = TREE_OPERAND (_q30, 0);
9470 : 0 : tree _q41 = TREE_OPERAND (_q30, 1);
9471 : 0 : if ((_q40 == _p0 && ! TREE_SIDE_EFFECTS (_q40)) || (operand_equal_p (_q40, _p0, 0) && types_match (_q40, _p0)))
9472 : : {
9473 : 0 : if (integer_minus_onep (_q31))
9474 : : {
9475 : 0 : {
9476 : 0 : tree captures[2] ATTRIBUTE_UNUSED = { _p0, _q41 };
9477 : 0 : tree res = generic_simplify_361 (loc, type, _p0, _p1, captures, LT_EXPR);
9478 : 0 : if (res) return res;
9479 : : }
9480 : : }
9481 : : }
9482 : : break;
9483 : : }
9484 : : default:;
9485 : : }
9486 : : break;
9487 : : }
9488 : 13682693 : default:;
9489 : : }
9490 : 13682693 : switch (TREE_CODE (_p0))
9491 : : {
9492 : 83 : case REALPART_EXPR:
9493 : 83 : {
9494 : 83 : tree _q20 = TREE_OPERAND (_p0, 0);
9495 : 83 : switch (TREE_CODE (_q20))
9496 : : {
9497 : 0 : case CALL_EXPR:
9498 : 0 : switch (get_call_combined_fn (_q20))
9499 : : {
9500 : 0 : case CFN_SUB_OVERFLOW:
9501 : 0 : if (call_expr_nargs (_q20) == 2)
9502 : : {
9503 : 0 : tree _q30 = CALL_EXPR_ARG (_q20, 0);
9504 : 0 : tree _q31 = CALL_EXPR_ARG (_q20, 1);
9505 : 0 : if ((_p1 == _q30 && ! TREE_SIDE_EFFECTS (_p1)) || (operand_equal_p (_p1, _q30, 0) && types_match (_p1, _q30)))
9506 : : {
9507 : 0 : {
9508 : 0 : tree captures[3] ATTRIBUTE_UNUSED = { _q20, _q30, _q31 };
9509 : 0 : tree res = generic_simplify_362 (loc, type, _p0, _p1, captures, GT_EXPR, NE_EXPR);
9510 : 0 : if (res) return res;
9511 : : }
9512 : : }
9513 : : }
9514 : : break;
9515 : : default:;
9516 : : }
9517 : : break;
9518 : : default:;
9519 : : }
9520 : : break;
9521 : : }
9522 : 13682693 : default:;
9523 : : }
9524 : 13682693 : switch (TREE_CODE (_p1))
9525 : : {
9526 : 20 : case REALPART_EXPR:
9527 : 20 : {
9528 : 20 : tree _q30 = TREE_OPERAND (_p1, 0);
9529 : 20 : switch (TREE_CODE (_q30))
9530 : : {
9531 : 0 : case CALL_EXPR:
9532 : 0 : switch (get_call_combined_fn (_q30))
9533 : : {
9534 : 0 : case CFN_ADD_OVERFLOW:
9535 : 0 : if (call_expr_nargs (_q30) == 2)
9536 : : {
9537 : 0 : tree _q40 = CALL_EXPR_ARG (_q30, 0);
9538 : 0 : tree _q41 = CALL_EXPR_ARG (_q30, 1);
9539 : 0 : if ((_q40 == _p0 && ! TREE_SIDE_EFFECTS (_q40)) || (operand_equal_p (_q40, _p0, 0) && types_match (_q40, _p0)))
9540 : : {
9541 : 0 : {
9542 : 0 : tree captures[3] ATTRIBUTE_UNUSED = { _q30, _p0, _q41 };
9543 : 0 : tree res = generic_simplify_363 (loc, type, _p0, _p1, captures, LT_EXPR, NE_EXPR);
9544 : 0 : if (res) return res;
9545 : : }
9546 : : }
9547 : 0 : if ((_q41 == _p0 && ! TREE_SIDE_EFFECTS (_q41)) || (operand_equal_p (_q41, _p0, 0) && types_match (_q41, _p0)))
9548 : : {
9549 : 0 : {
9550 : 0 : tree captures[3] ATTRIBUTE_UNUSED = { _q30, _p0, _q40 };
9551 : 0 : tree res = generic_simplify_363 (loc, type, _p0, _p1, captures, LT_EXPR, NE_EXPR);
9552 : 0 : if (res) return res;
9553 : : }
9554 : : }
9555 : : }
9556 : : break;
9557 : : default:;
9558 : : }
9559 : : break;
9560 : : default:;
9561 : : }
9562 : : break;
9563 : : }
9564 : 1114 : case TRUNC_DIV_EXPR:
9565 : 1114 : {
9566 : 1114 : tree _q30 = TREE_OPERAND (_p1, 0);
9567 : 1114 : tree _q31 = TREE_OPERAND (_p1, 1);
9568 : 1114 : if (integer_all_onesp (_q30))
9569 : : {
9570 : 0 : {
9571 : 0 : tree captures[3] ATTRIBUTE_UNUSED = { _p1, _q31, _p0 };
9572 : 0 : tree res = generic_simplify_364 (loc, type, _p0, _p1, captures, LT_EXPR, NE_EXPR);
9573 : 0 : if (res) return res;
9574 : : }
9575 : : }
9576 : : break;
9577 : : }
9578 : 13682693 : default:;
9579 : : }
9580 : 13682693 : switch (TREE_CODE (_p0))
9581 : : {
9582 : 122496 : case MULT_EXPR:
9583 : 122496 : {
9584 : 122496 : tree _q20 = TREE_OPERAND (_p0, 0);
9585 : 122496 : tree _q21 = TREE_OPERAND (_p0, 1);
9586 : 122496 : switch (TREE_CODE (_q21))
9587 : : {
9588 : 22482 : case REAL_CST:
9589 : 22482 : {
9590 : 22482 : switch (TREE_CODE (_p1))
9591 : : {
9592 : 57 : case REAL_CST:
9593 : 57 : {
9594 : 57 : {
9595 : 57 : tree captures[3] ATTRIBUTE_UNUSED = { _q20, _q21, _p1 };
9596 : 57 : tree res = generic_simplify_354 (loc, type, _p0, _p1, captures, GT_EXPR, LT_EXPR);
9597 : 57 : if (res) return res;
9598 : : }
9599 : 56 : break;
9600 : : }
9601 : : default:;
9602 : : }
9603 : : break;
9604 : : }
9605 : : default:;
9606 : : }
9607 : : break;
9608 : : }
9609 : 1747387 : case PLUS_EXPR:
9610 : 1747387 : {
9611 : 1747387 : tree _q20 = TREE_OPERAND (_p0, 0);
9612 : 1747387 : tree _q21 = TREE_OPERAND (_p0, 1);
9613 : 1747387 : switch (TREE_CODE (_q21))
9614 : : {
9615 : 1613721 : case INTEGER_CST:
9616 : 1613721 : {
9617 : 1613721 : switch (TREE_CODE (_p1))
9618 : : {
9619 : 1091607 : case INTEGER_CST:
9620 : 1091607 : {
9621 : 1091607 : {
9622 : 1091607 : tree captures[4] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1 };
9623 : 1091607 : tree res = generic_simplify_355 (loc, type, _p0, _p1, captures, PLUS_EXPR, MINUS_EXPR, GT_EXPR, LT_EXPR);
9624 : 1091607 : if (res) return res;
9625 : : }
9626 : 675273 : break;
9627 : : }
9628 : : default:;
9629 : : }
9630 : : break;
9631 : : }
9632 : : default:;
9633 : : }
9634 : : break;
9635 : : }
9636 : 512164 : case MINUS_EXPR:
9637 : 512164 : {
9638 : 512164 : tree _q20 = TREE_OPERAND (_p0, 0);
9639 : 512164 : tree _q21 = TREE_OPERAND (_p0, 1);
9640 : 512164 : switch (TREE_CODE (_q21))
9641 : : {
9642 : 429 : case INTEGER_CST:
9643 : 429 : {
9644 : 429 : switch (TREE_CODE (_p1))
9645 : : {
9646 : 281 : case INTEGER_CST:
9647 : 281 : {
9648 : 281 : {
9649 : 281 : tree captures[4] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1 };
9650 : 281 : tree res = generic_simplify_355 (loc, type, _p0, _p1, captures, MINUS_EXPR, PLUS_EXPR, GT_EXPR, LT_EXPR);
9651 : 281 : if (res) return res;
9652 : : }
9653 : 113 : break;
9654 : : }
9655 : : default:;
9656 : : }
9657 : : break;
9658 : : }
9659 : 511996 : default:;
9660 : : }
9661 : 511996 : switch (TREE_CODE (_q20))
9662 : : {
9663 : 436060 : case INTEGER_CST:
9664 : 436060 : {
9665 : 436060 : switch (TREE_CODE (_p1))
9666 : : {
9667 : 432873 : case INTEGER_CST:
9668 : 432873 : {
9669 : 432873 : {
9670 : 432873 : tree captures[3] ATTRIBUTE_UNUSED = { _q20, _q21, _p1 };
9671 : 432873 : tree res = generic_simplify_282 (loc, type, _p0, _p1, captures, GT_EXPR, LT_EXPR);
9672 : 432873 : if (res) return res;
9673 : : }
9674 : 0 : break;
9675 : : }
9676 : : default:;
9677 : : }
9678 : : break;
9679 : : }
9680 : : default:;
9681 : : }
9682 : : break;
9683 : : }
9684 : 275263 : case CALL_EXPR:
9685 : 275263 : switch (get_call_combined_fn (_p0))
9686 : : {
9687 : 4 : case CFN_BUILT_IN_CTZ:
9688 : 4 : if (call_expr_nargs (_p0) == 1)
9689 : : {
9690 : 4 : tree _q20 = CALL_EXPR_ARG (_p0, 0);
9691 : 4 : switch (TREE_CODE (_p1))
9692 : : {
9693 : 4 : case INTEGER_CST:
9694 : 4 : {
9695 : 4 : {
9696 : 4 : tree captures[3] ATTRIBUTE_UNUSED = { _p0, _q20, _p1 };
9697 : 4 : tree res = generic_simplify_356 (loc, type, _p0, _p1, captures, GT_EXPR, EQ_EXPR, CFN_BUILT_IN_CTZ);
9698 : 4 : if (res) return res;
9699 : : }
9700 : 0 : break;
9701 : : }
9702 : : default:;
9703 : : }
9704 : : }
9705 : : break;
9706 : 12 : case CFN_BUILT_IN_FFS:
9707 : 12 : if (call_expr_nargs (_p0) == 1)
9708 : : {
9709 : 12 : tree _q20 = CALL_EXPR_ARG (_p0, 0);
9710 : 12 : switch (TREE_CODE (_p1))
9711 : : {
9712 : 12 : case INTEGER_CST:
9713 : 12 : {
9714 : 12 : {
9715 : 12 : tree captures[3] ATTRIBUTE_UNUSED = { _p0, _q20, _p1 };
9716 : 12 : tree res = generic_simplify_367 (loc, type, _p0, _p1, captures, GT_EXPR, NE_EXPR, EQ_EXPR, BIT_AND_EXPR, CFN_BUILT_IN_FFS);
9717 : 12 : if (res) return res;
9718 : : }
9719 : 6 : break;
9720 : : }
9721 : : default:;
9722 : : }
9723 : : }
9724 : : break;
9725 : 0 : case CFN_BUILT_IN_FFSIMAX:
9726 : 0 : if (call_expr_nargs (_p0) == 1)
9727 : : {
9728 : 0 : tree _q20 = CALL_EXPR_ARG (_p0, 0);
9729 : 0 : switch (TREE_CODE (_p1))
9730 : : {
9731 : 0 : case INTEGER_CST:
9732 : 0 : {
9733 : 0 : {
9734 : 0 : tree captures[3] ATTRIBUTE_UNUSED = { _p0, _q20, _p1 };
9735 : 0 : tree res = generic_simplify_367 (loc, type, _p0, _p1, captures, GT_EXPR, NE_EXPR, EQ_EXPR, BIT_AND_EXPR, CFN_BUILT_IN_FFSIMAX);
9736 : 0 : if (res) return res;
9737 : : }
9738 : 0 : break;
9739 : : }
9740 : : default:;
9741 : : }
9742 : : }
9743 : : break;
9744 : 75 : case CFN_BUILT_IN_POPCOUNT:
9745 : 75 : if (call_expr_nargs (_p0) == 1)
9746 : : {
9747 : 75 : tree _q20 = CALL_EXPR_ARG (_p0, 0);
9748 : 75 : if (integer_zerop (_p1))
9749 : : {
9750 : 36 : {
9751 : 36 : tree captures[1] ATTRIBUTE_UNUSED = { _q20 };
9752 : 36 : tree res = generic_simplify_287 (loc, type, _p0, _p1, captures, GT_EXPR, NE_EXPR, CFN_BUILT_IN_POPCOUNT);
9753 : 36 : if (res) return res;
9754 : : }
9755 : : }
9756 : : }
9757 : : break;
9758 : 2 : case CFN_BUILT_IN_CTZL:
9759 : 2 : if (call_expr_nargs (_p0) == 1)
9760 : : {
9761 : 2 : tree _q20 = CALL_EXPR_ARG (_p0, 0);
9762 : 2 : switch (TREE_CODE (_p1))
9763 : : {
9764 : 2 : case INTEGER_CST:
9765 : 2 : {
9766 : 2 : {
9767 : 2 : tree captures[3] ATTRIBUTE_UNUSED = { _p0, _q20, _p1 };
9768 : 2 : tree res = generic_simplify_356 (loc, type, _p0, _p1, captures, GT_EXPR, EQ_EXPR, CFN_BUILT_IN_CTZL);
9769 : 2 : if (res) return res;
9770 : : }
9771 : 0 : break;
9772 : : }
9773 : : default:;
9774 : : }
9775 : : }
9776 : : break;
9777 : 8 : case CFN_BUILT_IN_FFSL:
9778 : 8 : if (call_expr_nargs (_p0) == 1)
9779 : : {
9780 : 8 : tree _q20 = CALL_EXPR_ARG (_p0, 0);
9781 : 8 : switch (TREE_CODE (_p1))
9782 : : {
9783 : 8 : case INTEGER_CST:
9784 : 8 : {
9785 : 8 : {
9786 : 8 : tree captures[3] ATTRIBUTE_UNUSED = { _p0, _q20, _p1 };
9787 : 8 : tree res = generic_simplify_367 (loc, type, _p0, _p1, captures, GT_EXPR, NE_EXPR, EQ_EXPR, BIT_AND_EXPR, CFN_BUILT_IN_FFSL);
9788 : 8 : if (res) return res;
9789 : : }
9790 : 4 : break;
9791 : : }
9792 : : default:;
9793 : : }
9794 : : }
9795 : : break;
9796 : 3 : case CFN_BUILT_IN_POPCOUNTLL:
9797 : 3 : if (call_expr_nargs (_p0) == 1)
9798 : : {
9799 : 3 : tree _q20 = CALL_EXPR_ARG (_p0, 0);
9800 : 3 : if (integer_zerop (_p1))
9801 : : {
9802 : 0 : {
9803 : 0 : tree captures[1] ATTRIBUTE_UNUSED = { _q20 };
9804 : 0 : tree res = generic_simplify_287 (loc, type, _p0, _p1, captures, GT_EXPR, NE_EXPR, CFN_BUILT_IN_POPCOUNTLL);
9805 : 0 : if (res) return res;
9806 : : }
9807 : : }
9808 : : }
9809 : : break;
9810 : 0 : case CFN_BUILT_IN_CTZIMAX:
9811 : 0 : if (call_expr_nargs (_p0) == 1)
9812 : : {
9813 : 0 : tree _q20 = CALL_EXPR_ARG (_p0, 0);
9814 : 0 : switch (TREE_CODE (_p1))
9815 : : {
9816 : 0 : case INTEGER_CST:
9817 : 0 : {
9818 : 0 : {
9819 : 0 : tree captures[3] ATTRIBUTE_UNUSED = { _p0, _q20, _p1 };
9820 : 0 : tree res = generic_simplify_356 (loc, type, _p0, _p1, captures, GT_EXPR, EQ_EXPR, CFN_BUILT_IN_CTZIMAX);
9821 : 0 : if (res) return res;
9822 : : }
9823 : 0 : break;
9824 : : }
9825 : : default:;
9826 : : }
9827 : : }
9828 : : break;
9829 : 0 : case CFN_POPCOUNT:
9830 : 0 : if (call_expr_nargs (_p0) == 1)
9831 : : {
9832 : 0 : tree _q20 = CALL_EXPR_ARG (_p0, 0);
9833 : 0 : if (integer_zerop (_p1))
9834 : : {
9835 : 0 : {
9836 : 0 : tree captures[1] ATTRIBUTE_UNUSED = { _q20 };
9837 : 0 : tree res = generic_simplify_287 (loc, type, _p0, _p1, captures, GT_EXPR, NE_EXPR, CFN_POPCOUNT);
9838 : 0 : if (res) return res;
9839 : : }
9840 : : }
9841 : : }
9842 : : break;
9843 : 0 : case CFN_CTZ:
9844 : 0 : if (call_expr_nargs (_p0) == 2)
9845 : : {
9846 : 0 : tree _q20 = CALL_EXPR_ARG (_p0, 0);
9847 : 0 : tree _q21 = CALL_EXPR_ARG (_p0, 1);
9848 : 0 : switch (TREE_CODE (_p1))
9849 : : {
9850 : 0 : case INTEGER_CST:
9851 : 0 : {
9852 : 0 : {
9853 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1 };
9854 : 0 : tree res = generic_simplify_357 (loc, type, _p0, _p1, captures, GT_EXPR, EQ_EXPR);
9855 : 0 : if (res) return res;
9856 : : }
9857 : 0 : break;
9858 : : }
9859 : : default:;
9860 : : }
9861 : : }
9862 : 0 : if (call_expr_nargs (_p0) == 1)
9863 : : {
9864 : 0 : tree _q20 = CALL_EXPR_ARG (_p0, 0);
9865 : 0 : switch (TREE_CODE (_p1))
9866 : : {
9867 : 0 : case INTEGER_CST:
9868 : 0 : {
9869 : 0 : {
9870 : 0 : tree captures[3] ATTRIBUTE_UNUSED = { _p0, _q20, _p1 };
9871 : 0 : tree res = generic_simplify_356 (loc, type, _p0, _p1, captures, GT_EXPR, EQ_EXPR, CFN_CTZ);
9872 : 0 : if (res) return res;
9873 : : }
9874 : 0 : break;
9875 : : }
9876 : : default:;
9877 : : }
9878 : : }
9879 : : break;
9880 : 0 : case CFN_FFS:
9881 : 0 : if (call_expr_nargs (_p0) == 1)
9882 : : {
9883 : 0 : tree _q20 = CALL_EXPR_ARG (_p0, 0);
9884 : 0 : switch (TREE_CODE (_p1))
9885 : : {
9886 : 0 : case INTEGER_CST:
9887 : 0 : {
9888 : 0 : {
9889 : 0 : tree captures[3] ATTRIBUTE_UNUSED = { _p0, _q20, _p1 };
9890 : 0 : tree res = generic_simplify_367 (loc, type, _p0, _p1, captures, GT_EXPR, NE_EXPR, EQ_EXPR, BIT_AND_EXPR, CFN_FFS);
9891 : 0 : if (res) return res;
9892 : : }
9893 : 0 : break;
9894 : : }
9895 : : default:;
9896 : : }
9897 : : }
9898 : : break;
9899 : 0 : case CFN_BUILT_IN_POPCOUNTIMAX:
9900 : 0 : if (call_expr_nargs (_p0) == 1)
9901 : : {
9902 : 0 : tree _q20 = CALL_EXPR_ARG (_p0, 0);
9903 : 0 : if (integer_zerop (_p1))
9904 : : {
9905 : 0 : {
9906 : 0 : tree captures[1] ATTRIBUTE_UNUSED = { _q20 };
9907 : 0 : tree res = generic_simplify_287 (loc, type, _p0, _p1, captures, GT_EXPR, NE_EXPR, CFN_BUILT_IN_POPCOUNTIMAX);
9908 : 0 : if (res) return res;
9909 : : }
9910 : : }
9911 : : }
9912 : : break;
9913 : 3 : case CFN_BUILT_IN_POPCOUNTL:
9914 : 3 : if (call_expr_nargs (_p0) == 1)
9915 : : {
9916 : 3 : tree _q20 = CALL_EXPR_ARG (_p0, 0);
9917 : 3 : if (integer_zerop (_p1))
9918 : : {
9919 : 0 : {
9920 : 0 : tree captures[1] ATTRIBUTE_UNUSED = { _q20 };
9921 : 0 : tree res = generic_simplify_287 (loc, type, _p0, _p1, captures, GT_EXPR, NE_EXPR, CFN_BUILT_IN_POPCOUNTL);
9922 : 0 : if (res) return res;
9923 : : }
9924 : : }
9925 : : }
9926 : : break;
9927 : 18 : case CFN_BUILT_IN_CTZLL:
9928 : 18 : if (call_expr_nargs (_p0) == 1)
9929 : : {
9930 : 18 : tree _q20 = CALL_EXPR_ARG (_p0, 0);
9931 : 18 : switch (TREE_CODE (_p1))
9932 : : {
9933 : 18 : case INTEGER_CST:
9934 : 18 : {
9935 : 18 : {
9936 : 18 : tree captures[3] ATTRIBUTE_UNUSED = { _p0, _q20, _p1 };
9937 : 18 : tree res = generic_simplify_356 (loc, type, _p0, _p1, captures, GT_EXPR, EQ_EXPR, CFN_BUILT_IN_CTZLL);
9938 : 18 : if (res) return res;
9939 : : }
9940 : 16 : break;
9941 : : }
9942 : : default:;
9943 : : }
9944 : : }
9945 : : break;
9946 : 9 : case CFN_BUILT_IN_FFSLL:
9947 : 9 : if (call_expr_nargs (_p0) == 1)
9948 : : {
9949 : 9 : tree _q20 = CALL_EXPR_ARG (_p0, 0);
9950 : 9 : switch (TREE_CODE (_p1))
9951 : : {
9952 : 9 : case INTEGER_CST:
9953 : 9 : {
9954 : 9 : {
9955 : 9 : tree captures[3] ATTRIBUTE_UNUSED = { _p0, _q20, _p1 };
9956 : 9 : tree res = generic_simplify_367 (loc, type, _p0, _p1, captures, GT_EXPR, NE_EXPR, EQ_EXPR, BIT_AND_EXPR, CFN_BUILT_IN_FFSLL);
9957 : 9 : if (res) return res;
9958 : : }
9959 : 4 : break;
9960 : : }
9961 : : default:;
9962 : : }
9963 : : }
9964 : : break;
9965 : : default:;
9966 : : }
9967 : : break;
9968 : : default:;
9969 : : }
9970 : : return NULL_TREE;
9971 : : }
9972 : :
9973 : : tree
9974 : 6039202 : generic_simplify_BIT_AND_EXPR (location_t ARG_UNUSED (loc), enum tree_code ARG_UNUSED (code), const tree ARG_UNUSED (type), tree _p0, tree _p1)
9975 : : {
9976 : 6039202 : const bool debug_dump = dump_file && (dump_flags & TDF_FOLDING);
9977 : 6039202 : switch (TREE_CODE (_p0))
9978 : : {
9979 : 32816 : case LSHIFT_EXPR:
9980 : 32816 : {
9981 : 32816 : tree _q20 = TREE_OPERAND (_p0, 0);
9982 : 32816 : tree _q21 = TREE_OPERAND (_p0, 1);
9983 : 32816 : switch (TREE_CODE (_p1))
9984 : : {
9985 : 1 : case LSHIFT_EXPR:
9986 : 1 : {
9987 : 1 : tree _q50 = TREE_OPERAND (_p1, 0);
9988 : 1 : tree _q51 = TREE_OPERAND (_p1, 1);
9989 : 1 : if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
9990 : : {
9991 : 1 : {
9992 : 1 : tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q50 };
9993 : 1 : tree res = generic_simplify_63 (loc, type, _p0, _p1, captures, BIT_AND_EXPR);
9994 : 1 : if (res) return res;
9995 : : }
9996 : : }
9997 : : break;
9998 : : }
9999 : : default:;
10000 : : }
10001 : : break;
10002 : : }
10003 : 65872 : case RSHIFT_EXPR:
10004 : 65872 : {
10005 : 65872 : tree _q20 = TREE_OPERAND (_p0, 0);
10006 : 65872 : tree _q21 = TREE_OPERAND (_p0, 1);
10007 : 65872 : switch (TREE_CODE (_p1))
10008 : : {
10009 : 2 : case RSHIFT_EXPR:
10010 : 2 : {
10011 : 2 : tree _q50 = TREE_OPERAND (_p1, 0);
10012 : 2 : tree _q51 = TREE_OPERAND (_p1, 1);
10013 : 2 : if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
10014 : : {
10015 : 2 : {
10016 : 2 : tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q50 };
10017 : 2 : tree res = generic_simplify_64 (loc, type, _p0, _p1, captures, BIT_AND_EXPR);
10018 : 2 : if (res) return res;
10019 : : }
10020 : : }
10021 : : break;
10022 : : }
10023 : : default:;
10024 : : }
10025 : : break;
10026 : : }
10027 : 1811775 : CASE_CONVERT:
10028 : 1811775 : {
10029 : 1811775 : tree _q20 = TREE_OPERAND (_p0, 0);
10030 : 1811775 : switch (TREE_CODE (_p1))
10031 : : {
10032 : 732870 : CASE_CONVERT:
10033 : 732870 : {
10034 : 732870 : tree _q40 = TREE_OPERAND (_p1, 0);
10035 : 732870 : {
10036 : 732870 : tree _q40_pops[1];
10037 : 732870 : if (tree_maybe_bit_not (_q40, _q40_pops))
10038 : : {
10039 : 249 : tree _q50 = _q40_pops[0];
10040 : 249 : {
10041 : 249 : tree captures[2] ATTRIBUTE_UNUSED = { _q20, _q50 };
10042 : 249 : tree res = generic_simplify_401 (loc, type, _p0, _p1, captures);
10043 : 249 : if (res) return res;
10044 : : }
10045 : : }
10046 : : }
10047 : 732870 : break;
10048 : : }
10049 : 1811775 : default:;
10050 : : }
10051 : 1811775 : {
10052 : 1811775 : tree _q20_pops[1];
10053 : 1811775 : if (tree_maybe_bit_not (_q20, _q20_pops))
10054 : : {
10055 : 406 : tree _q30 = _q20_pops[0];
10056 : 406 : switch (TREE_CODE (_p1))
10057 : : {
10058 : 248 : CASE_CONVERT:
10059 : 248 : {
10060 : 248 : tree _q50 = TREE_OPERAND (_p1, 0);
10061 : 248 : {
10062 : 248 : tree captures[2] ATTRIBUTE_UNUSED = { _q50, _q30 };
10063 : 248 : tree res = generic_simplify_401 (loc, type, _p0, _p1, captures);
10064 : 248 : if (res) return res;
10065 : : }
10066 : 248 : break;
10067 : : }
10068 : : default:;
10069 : : }
10070 : : }
10071 : : }
10072 : 1811775 : break;
10073 : : }
10074 : 6039199 : default:;
10075 : : }
10076 : 6039199 : {
10077 : 6039199 : tree _p1_pops[1];
10078 : 6039199 : if (tree_maybe_bit_not (_p1, _p1_pops))
10079 : : {
10080 : 4279809 : tree _q30 = _p1_pops[0];
10081 : 4279809 : {
10082 : 4279809 : tree captures[2] ATTRIBUTE_UNUSED = { _p0, _q30 };
10083 : 4279809 : tree res = generic_simplify_401 (loc, type, _p0, _p1, captures);
10084 : 4279809 : if (res) return res;
10085 : : }
10086 : : }
10087 : : }
10088 : 6039183 : {
10089 : 6039183 : tree _p0_pops[1];
10090 : 6039183 : if (tree_maybe_bit_not (_p0, _p0_pops))
10091 : : {
10092 : 40603 : tree _q20 = _p0_pops[0];
10093 : 40603 : {
10094 : 40603 : tree captures[2] ATTRIBUTE_UNUSED = { _p1, _q20 };
10095 : 40603 : tree res = generic_simplify_401 (loc, type, _p0, _p1, captures);
10096 : 40603 : if (res) return res;
10097 : : }
10098 : : }
10099 : : }
10100 : 6039086 : switch (TREE_CODE (_p1))
10101 : : {
10102 : 20604 : case PLUS_EXPR:
10103 : 20604 : {
10104 : 20604 : tree _q30 = TREE_OPERAND (_p1, 0);
10105 : 20604 : tree _q31 = TREE_OPERAND (_p1, 1);
10106 : 20604 : switch (TREE_CODE (_q30))
10107 : : {
10108 : 163 : case LSHIFT_EXPR:
10109 : 163 : {
10110 : 163 : tree _q40 = TREE_OPERAND (_q30, 0);
10111 : 163 : tree _q41 = TREE_OPERAND (_q30, 1);
10112 : 163 : if (integer_onep (_q40))
10113 : : {
10114 : 163 : if (integer_minus_onep (_q31))
10115 : : {
10116 : 163 : {
10117 : 163 : tree captures[4] ATTRIBUTE_UNUSED = { _p0, _p1, _q30, _q41 };
10118 : 163 : if (TYPE_UNSIGNED (type)
10119 : : )
10120 : : {
10121 : 163 : if (TREE_SIDE_EFFECTS (_p1)) goto next_after_fail1724;
10122 : 163 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1724;
10123 : 163 : {
10124 : 163 : tree res_op0;
10125 : 163 : res_op0 = captures[0];
10126 : 163 : tree res_op1;
10127 : 163 : {
10128 : 163 : tree _o1[1], _r1;
10129 : 163 : {
10130 : 163 : tree _o2[2], _r2;
10131 : 163 : _o2[0] = build_all_ones_cst (type);
10132 : 163 : _o2[1] = captures[3];
10133 : 163 : _r2 = fold_build2_loc (loc, LSHIFT_EXPR, TREE_TYPE (_o2[0]), _o2[0], _o2[1]);
10134 : 163 : _o1[0] = _r2;
10135 : : }
10136 : 163 : _r1 = fold_build1_loc (loc, BIT_NOT_EXPR, TREE_TYPE (_o1[0]), _o1[0]);
10137 : 163 : res_op1 = _r1;
10138 : : }
10139 : 163 : tree _r;
10140 : 163 : _r = fold_build2_loc (loc, BIT_AND_EXPR, type, res_op0, res_op1);
10141 : 163 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 1002, __FILE__, __LINE__, true);
10142 : 163 : return _r;
10143 : : }
10144 : 0 : next_after_fail1724:;
10145 : : }
10146 : : }
10147 : : }
10148 : : }
10149 : : break;
10150 : : }
10151 : : default:;
10152 : : }
10153 : : break;
10154 : : }
10155 : 6038923 : default:;
10156 : : }
10157 : 6038923 : switch (TREE_CODE (_p0))
10158 : : {
10159 : 277925 : case PLUS_EXPR:
10160 : 277925 : {
10161 : 277925 : tree _q20 = TREE_OPERAND (_p0, 0);
10162 : 277925 : tree _q21 = TREE_OPERAND (_p0, 1);
10163 : 277925 : switch (TREE_CODE (_q20))
10164 : : {
10165 : 169 : case LSHIFT_EXPR:
10166 : 169 : {
10167 : 169 : tree _q30 = TREE_OPERAND (_q20, 0);
10168 : 169 : tree _q31 = TREE_OPERAND (_q20, 1);
10169 : 169 : if (integer_onep (_q30))
10170 : : {
10171 : 162 : if (integer_minus_onep (_q21))
10172 : : {
10173 : 162 : {
10174 : 162 : tree captures[4] ATTRIBUTE_UNUSED = { _p1, _p0, _q20, _q31 };
10175 : 162 : if (TYPE_UNSIGNED (type)
10176 : : )
10177 : : {
10178 : 134 : if (TREE_SIDE_EFFECTS (_p0)) goto next_after_fail1725;
10179 : 134 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1725;
10180 : 134 : {
10181 : 134 : tree res_op0;
10182 : 134 : res_op0 = captures[0];
10183 : 134 : tree res_op1;
10184 : 134 : {
10185 : 134 : tree _o1[1], _r1;
10186 : 134 : {
10187 : 134 : tree _o2[2], _r2;
10188 : 134 : _o2[0] = build_all_ones_cst (type);
10189 : 134 : _o2[1] = captures[3];
10190 : 134 : _r2 = fold_build2_loc (loc, LSHIFT_EXPR, TREE_TYPE (_o2[0]), _o2[0], _o2[1]);
10191 : 134 : _o1[0] = _r2;
10192 : : }
10193 : 134 : _r1 = fold_build1_loc (loc, BIT_NOT_EXPR, TREE_TYPE (_o1[0]), _o1[0]);
10194 : 134 : res_op1 = _r1;
10195 : : }
10196 : 134 : tree _r;
10197 : 134 : _r = fold_build2_loc (loc, BIT_AND_EXPR, type, res_op0, res_op1);
10198 : 134 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 1002, __FILE__, __LINE__, true);
10199 : 134 : return _r;
10200 : : }
10201 : 28 : next_after_fail1725:;
10202 : : }
10203 : : }
10204 : : }
10205 : : }
10206 : : break;
10207 : : }
10208 : : default:;
10209 : : }
10210 : : break;
10211 : : }
10212 : 722 : case EQ_EXPR:
10213 : 722 : {
10214 : 722 : tree _q20 = TREE_OPERAND (_p0, 0);
10215 : 722 : tree _q21 = TREE_OPERAND (_p0, 1);
10216 : 722 : if (integer_zerop (_q21))
10217 : : {
10218 : 519 : switch (TREE_CODE (_p1))
10219 : : {
10220 : 30 : case EQ_EXPR:
10221 : 30 : {
10222 : 30 : tree _q50 = TREE_OPERAND (_p1, 0);
10223 : 30 : tree _q51 = TREE_OPERAND (_p1, 1);
10224 : 30 : if (integer_zerop (_q51))
10225 : : {
10226 : 8 : {
10227 : 8 : tree captures[3] ATTRIBUTE_UNUSED = { _q20, _q21, _q50 };
10228 : 8 : tree res = generic_simplify_65 (loc, type, _p0, _p1, captures, BIT_AND_EXPR, EQ_EXPR);
10229 : 8 : if (res) return res;
10230 : : }
10231 : : }
10232 : : break;
10233 : : }
10234 : : default:;
10235 : : }
10236 : : }
10237 : 714 : if (integer_all_onesp (_q21))
10238 : : {
10239 : 0 : switch (TREE_CODE (_p1))
10240 : : {
10241 : 0 : case EQ_EXPR:
10242 : 0 : {
10243 : 0 : tree _q50 = TREE_OPERAND (_p1, 0);
10244 : 0 : tree _q51 = TREE_OPERAND (_p1, 1);
10245 : 0 : if (integer_all_onesp (_q51))
10246 : : {
10247 : 0 : {
10248 : 0 : tree captures[3] ATTRIBUTE_UNUSED = { _q20, _q21, _q50 };
10249 : 0 : tree res = generic_simplify_66 (loc, type, _p0, _p1, captures, BIT_AND_EXPR, EQ_EXPR);
10250 : 0 : if (res) return res;
10251 : : }
10252 : : }
10253 : : break;
10254 : : }
10255 : : default:;
10256 : : }
10257 : : }
10258 : 714 : switch (TREE_CODE (_p1))
10259 : : {
10260 : 8 : case BIT_IOR_EXPR:
10261 : 8 : {
10262 : 8 : tree _q50 = TREE_OPERAND (_p1, 0);
10263 : 8 : tree _q51 = TREE_OPERAND (_p1, 1);
10264 : 8 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
10265 : : {
10266 : 0 : if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
10267 : : {
10268 : 0 : {
10269 : 0 : tree captures[2] ATTRIBUTE_UNUSED = { _q20, _q21 };
10270 : 0 : tree res = generic_simplify_402 (loc, type, _p0, _p1, captures);
10271 : 0 : if (res) return res;
10272 : : }
10273 : : }
10274 : : }
10275 : 8 : if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
10276 : : {
10277 : 0 : if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
10278 : : {
10279 : 0 : {
10280 : 0 : tree captures[2] ATTRIBUTE_UNUSED = { _q21, _q20 };
10281 : 0 : tree res = generic_simplify_402 (loc, type, _p0, _p1, captures);
10282 : 0 : if (res) return res;
10283 : : }
10284 : : }
10285 : : }
10286 : : break;
10287 : : }
10288 : 714 : default:;
10289 : : }
10290 : 714 : if ((_p1 == _q20 && ! TREE_SIDE_EFFECTS (_p1)) || (operand_equal_p (_p1, _q20, 0) && types_match (_p1, _q20)))
10291 : : {
10292 : 12 : {
10293 : 12 : tree captures[2] ATTRIBUTE_UNUSED = { _q20, _q21 };
10294 : 12 : tree res = generic_simplify_403 (loc, type, _p0, _p1, captures);
10295 : 12 : if (res) return res;
10296 : : }
10297 : : }
10298 : 714 : if ((_p1 == _q21 && ! TREE_SIDE_EFFECTS (_p1)) || (operand_equal_p (_p1, _q21, 0) && types_match (_p1, _q21)))
10299 : : {
10300 : 8 : {
10301 : 8 : tree captures[2] ATTRIBUTE_UNUSED = { _q21, _q20 };
10302 : 8 : tree res = generic_simplify_403 (loc, type, _p0, _p1, captures);
10303 : 8 : if (res) return res;
10304 : : }
10305 : : }
10306 : : break;
10307 : : }
10308 : 1587 : case BIT_IOR_EXPR:
10309 : 1587 : {
10310 : 1587 : tree _q20 = TREE_OPERAND (_p0, 0);
10311 : 1587 : tree _q21 = TREE_OPERAND (_p0, 1);
10312 : 1587 : switch (TREE_CODE (_p1))
10313 : : {
10314 : 169 : case BIT_NOT_EXPR:
10315 : 169 : {
10316 : 169 : tree _q50 = TREE_OPERAND (_p1, 0);
10317 : 169 : switch (TREE_CODE (_q50))
10318 : : {
10319 : 6 : case BIT_XOR_EXPR:
10320 : 6 : {
10321 : 6 : tree _q60 = TREE_OPERAND (_q50, 0);
10322 : 6 : tree _q61 = TREE_OPERAND (_q50, 1);
10323 : 6 : if ((_q60 == _q20 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q20, 0) && types_match (_q60, _q20)))
10324 : : {
10325 : 0 : if ((_q61 == _q21 && ! TREE_SIDE_EFFECTS (_q61)) || (operand_equal_p (_q61, _q21, 0) && types_match (_q61, _q21)))
10326 : : {
10327 : 0 : {
10328 : 0 : tree captures[2] ATTRIBUTE_UNUSED = { _q20, _q21 };
10329 : 0 : tree res = generic_simplify_404 (loc, type, _p0, _p1, captures);
10330 : 0 : if (res) return res;
10331 : : }
10332 : : }
10333 : : }
10334 : 6 : if ((_q60 == _q21 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q21, 0) && types_match (_q60, _q21)))
10335 : : {
10336 : 0 : if ((_q61 == _q20 && ! TREE_SIDE_EFFECTS (_q61)) || (operand_equal_p (_q61, _q20, 0) && types_match (_q61, _q20)))
10337 : : {
10338 : 0 : {
10339 : 0 : tree captures[2] ATTRIBUTE_UNUSED = { _q20, _q21 };
10340 : 0 : tree res = generic_simplify_404 (loc, type, _p0, _p1, captures);
10341 : 0 : if (res) return res;
10342 : : }
10343 : : }
10344 : : }
10345 : : break;
10346 : : }
10347 : : default:;
10348 : : }
10349 : : break;
10350 : : }
10351 : 24 : case EQ_EXPR:
10352 : 24 : {
10353 : 24 : tree _q50 = TREE_OPERAND (_p1, 0);
10354 : 24 : tree _q51 = TREE_OPERAND (_p1, 1);
10355 : 24 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
10356 : : {
10357 : 8 : if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
10358 : : {
10359 : 8 : {
10360 : 8 : tree captures[2] ATTRIBUTE_UNUSED = { _q20, _q21 };
10361 : 8 : tree res = generic_simplify_402 (loc, type, _p0, _p1, captures);
10362 : 8 : if (res) return res;
10363 : : }
10364 : : }
10365 : : }
10366 : 24 : if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
10367 : : {
10368 : 0 : if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
10369 : : {
10370 : 0 : {
10371 : 0 : tree captures[2] ATTRIBUTE_UNUSED = { _q20, _q21 };
10372 : 0 : tree res = generic_simplify_402 (loc, type, _p0, _p1, captures);
10373 : 0 : if (res) return res;
10374 : : }
10375 : : }
10376 : : }
10377 : : break;
10378 : : }
10379 : 1587 : default:;
10380 : : }
10381 : 1587 : {
10382 : 1587 : tree _p1_pops[1];
10383 : 1587 : if (tree_nop_convert (_p1, _p1_pops))
10384 : : {
10385 : 139 : tree _q50 = _p1_pops[0];
10386 : 139 : switch (TREE_CODE (_q50))
10387 : : {
10388 : 0 : case EQ_EXPR:
10389 : 0 : {
10390 : 0 : tree _q60 = TREE_OPERAND (_q50, 0);
10391 : 0 : tree _q61 = TREE_OPERAND (_q50, 1);
10392 : 0 : if ((_q60 == _q20 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q20, 0) && types_match (_q60, _q20)))
10393 : : {
10394 : 0 : if ((_q61 == _q21 && ! TREE_SIDE_EFFECTS (_q61)) || (operand_equal_p (_q61, _q21, 0) && types_match (_q61, _q21)))
10395 : : {
10396 : 0 : {
10397 : 0 : tree captures[2] ATTRIBUTE_UNUSED = { _q20, _q21 };
10398 : 0 : tree res = generic_simplify_402 (loc, type, _p0, _p1, captures);
10399 : 0 : if (res) return res;
10400 : : }
10401 : : }
10402 : : }
10403 : 0 : if ((_q60 == _q21 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q21, 0) && types_match (_q60, _q21)))
10404 : : {
10405 : 0 : if ((_q61 == _q20 && ! TREE_SIDE_EFFECTS (_q61)) || (operand_equal_p (_q61, _q20, 0) && types_match (_q61, _q20)))
10406 : : {
10407 : 0 : {
10408 : 0 : tree captures[2] ATTRIBUTE_UNUSED = { _q20, _q21 };
10409 : 0 : tree res = generic_simplify_402 (loc, type, _p0, _p1, captures);
10410 : 0 : if (res) return res;
10411 : : }
10412 : : }
10413 : : }
10414 : : break;
10415 : : }
10416 : : default:;
10417 : : }
10418 : : }
10419 : : }
10420 : 1587 : break;
10421 : : }
10422 : 37999 : case BIT_NOT_EXPR:
10423 : 37999 : {
10424 : 37999 : tree _q20 = TREE_OPERAND (_p0, 0);
10425 : 37999 : switch (TREE_CODE (_q20))
10426 : : {
10427 : 140 : case BIT_XOR_EXPR:
10428 : 140 : {
10429 : 140 : tree _q30 = TREE_OPERAND (_q20, 0);
10430 : 140 : tree _q31 = TREE_OPERAND (_q20, 1);
10431 : 140 : switch (TREE_CODE (_p1))
10432 : : {
10433 : 48 : case BIT_IOR_EXPR:
10434 : 48 : {
10435 : 48 : tree _q60 = TREE_OPERAND (_p1, 0);
10436 : 48 : tree _q61 = TREE_OPERAND (_p1, 1);
10437 : 48 : if ((_q60 == _q30 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q30, 0) && types_match (_q60, _q30)))
10438 : : {
10439 : 6 : if ((_q61 == _q31 && ! TREE_SIDE_EFFECTS (_q61)) || (operand_equal_p (_q61, _q31, 0) && types_match (_q61, _q31)))
10440 : : {
10441 : 0 : {
10442 : 0 : tree captures[2] ATTRIBUTE_UNUSED = { _q30, _q31 };
10443 : 0 : tree res = generic_simplify_404 (loc, type, _p0, _p1, captures);
10444 : 0 : if (res) return res;
10445 : : }
10446 : : }
10447 : : }
10448 : 48 : if ((_q60 == _q31 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q31, 0) && types_match (_q60, _q31)))
10449 : : {
10450 : 3 : if ((_q61 == _q30 && ! TREE_SIDE_EFFECTS (_q61)) || (operand_equal_p (_q61, _q30, 0) && types_match (_q61, _q30)))
10451 : : {
10452 : 0 : {
10453 : 0 : tree captures[2] ATTRIBUTE_UNUSED = { _q31, _q30 };
10454 : 0 : tree res = generic_simplify_404 (loc, type, _p0, _p1, captures);
10455 : 0 : if (res) return res;
10456 : : }
10457 : : }
10458 : : }
10459 : : break;
10460 : : }
10461 : 140 : default:;
10462 : : }
10463 : 140 : if ((_p1 == _q30 && ! TREE_SIDE_EFFECTS (_p1)) || (operand_equal_p (_p1, _q30, 0) && types_match (_p1, _q30)))
10464 : : {
10465 : 1 : {
10466 : 1 : tree captures[2] ATTRIBUTE_UNUSED = { _q30, _q31 };
10467 : 1 : tree res = generic_simplify_405 (loc, type, _p0, _p1, captures);
10468 : 1 : if (res) return res;
10469 : : }
10470 : : }
10471 : 139 : if ((_p1 == _q31 && ! TREE_SIDE_EFFECTS (_p1)) || (operand_equal_p (_p1, _q31, 0) && types_match (_p1, _q31)))
10472 : : {
10473 : 0 : {
10474 : 0 : tree captures[2] ATTRIBUTE_UNUSED = { _q31, _q30 };
10475 : 0 : tree res = generic_simplify_405 (loc, type, _p0, _p1, captures);
10476 : 0 : if (res) return res;
10477 : : }
10478 : : }
10479 : : break;
10480 : : }
10481 : : default:;
10482 : : }
10483 : : break;
10484 : : }
10485 : 6038780 : default:;
10486 : : }
10487 : 6038780 : {
10488 : 6038780 : tree _p0_pops[1];
10489 : 6038780 : if (tree_nop_convert (_p0, _p0_pops))
10490 : : {
10491 : 1199277 : tree _q20 = _p0_pops[0];
10492 : 1199277 : switch (TREE_CODE (_q20))
10493 : : {
10494 : 0 : case EQ_EXPR:
10495 : 0 : {
10496 : 0 : tree _q30 = TREE_OPERAND (_q20, 0);
10497 : 0 : tree _q31 = TREE_OPERAND (_q20, 1);
10498 : 0 : switch (TREE_CODE (_p1))
10499 : : {
10500 : 0 : case BIT_IOR_EXPR:
10501 : 0 : {
10502 : 0 : tree _q60 = TREE_OPERAND (_p1, 0);
10503 : 0 : tree _q61 = TREE_OPERAND (_p1, 1);
10504 : 0 : if ((_q60 == _q30 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q30, 0) && types_match (_q60, _q30)))
10505 : : {
10506 : 0 : if ((_q61 == _q31 && ! TREE_SIDE_EFFECTS (_q61)) || (operand_equal_p (_q61, _q31, 0) && types_match (_q61, _q31)))
10507 : : {
10508 : 0 : {
10509 : 0 : tree captures[2] ATTRIBUTE_UNUSED = { _q30, _q31 };
10510 : 0 : tree res = generic_simplify_402 (loc, type, _p0, _p1, captures);
10511 : 0 : if (res) return res;
10512 : : }
10513 : : }
10514 : : }
10515 : 0 : if ((_q60 == _q31 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q31, 0) && types_match (_q60, _q31)))
10516 : : {
10517 : 0 : if ((_q61 == _q30 && ! TREE_SIDE_EFFECTS (_q61)) || (operand_equal_p (_q61, _q30, 0) && types_match (_q61, _q30)))
10518 : : {
10519 : 0 : {
10520 : 0 : tree captures[2] ATTRIBUTE_UNUSED = { _q31, _q30 };
10521 : 0 : tree res = generic_simplify_402 (loc, type, _p0, _p1, captures);
10522 : 0 : if (res) return res;
10523 : : }
10524 : : }
10525 : : }
10526 : : break;
10527 : : }
10528 : 0 : default:;
10529 : : }
10530 : 0 : if ((_p1 == _q30 && ! TREE_SIDE_EFFECTS (_p1)) || (operand_equal_p (_p1, _q30, 0) && types_match (_p1, _q30)))
10531 : : {
10532 : 0 : {
10533 : 0 : tree captures[2] ATTRIBUTE_UNUSED = { _q30, _q31 };
10534 : 0 : tree res = generic_simplify_403 (loc, type, _p0, _p1, captures);
10535 : 0 : if (res) return res;
10536 : : }
10537 : : }
10538 : 0 : if ((_p1 == _q31 && ! TREE_SIDE_EFFECTS (_p1)) || (operand_equal_p (_p1, _q31, 0) && types_match (_p1, _q31)))
10539 : : {
10540 : 0 : {
10541 : 0 : tree captures[2] ATTRIBUTE_UNUSED = { _q31, _q30 };
10542 : 0 : tree res = generic_simplify_403 (loc, type, _p0, _p1, captures);
10543 : 0 : if (res) return res;
10544 : : }
10545 : : }
10546 : : break;
10547 : : }
10548 : : default:;
10549 : : }
10550 : : }
10551 : : }
10552 : 6038780 : switch (TREE_CODE (_p1))
10553 : : {
10554 : 23593 : case BIT_NOT_EXPR:
10555 : 23593 : {
10556 : 23593 : tree _q30 = TREE_OPERAND (_p1, 0);
10557 : 23593 : switch (TREE_CODE (_q30))
10558 : : {
10559 : 6 : case BIT_XOR_EXPR:
10560 : 6 : {
10561 : 6 : tree _q40 = TREE_OPERAND (_q30, 0);
10562 : 6 : tree _q41 = TREE_OPERAND (_q30, 1);
10563 : 6 : if ((_q40 == _p0 && ! TREE_SIDE_EFFECTS (_q40)) || (operand_equal_p (_q40, _p0, 0) && types_match (_q40, _p0)))
10564 : : {
10565 : 0 : {
10566 : 0 : tree captures[2] ATTRIBUTE_UNUSED = { _p0, _q41 };
10567 : 0 : tree res = generic_simplify_405 (loc, type, _p0, _p1, captures);
10568 : 0 : if (res) return res;
10569 : : }
10570 : : }
10571 : 6 : if ((_q41 == _p0 && ! TREE_SIDE_EFFECTS (_q41)) || (operand_equal_p (_q41, _p0, 0) && types_match (_q41, _p0)))
10572 : : {
10573 : 0 : {
10574 : 0 : tree captures[2] ATTRIBUTE_UNUSED = { _p0, _q40 };
10575 : 0 : tree res = generic_simplify_405 (loc, type, _p0, _p1, captures);
10576 : 0 : if (res) return res;
10577 : : }
10578 : : }
10579 : : break;
10580 : : }
10581 : : default:;
10582 : : }
10583 : : break;
10584 : : }
10585 : 6038780 : default:;
10586 : : }
10587 : 6038780 : switch (TREE_CODE (_p0))
10588 : : {
10589 : 277791 : case PLUS_EXPR:
10590 : 277791 : {
10591 : 277791 : tree _q20 = TREE_OPERAND (_p0, 0);
10592 : 277791 : tree _q21 = TREE_OPERAND (_p0, 1);
10593 : 277791 : if (integer_minus_onep (_q21))
10594 : : {
10595 : 108532 : switch (TREE_CODE (_p1))
10596 : : {
10597 : 10641 : case NEGATE_EXPR:
10598 : 10641 : {
10599 : 10641 : tree _q50 = TREE_OPERAND (_p1, 0);
10600 : 10641 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
10601 : : {
10602 : 9 : {
10603 : 9 : tree captures[1] ATTRIBUTE_UNUSED = { _q20 };
10604 : 9 : tree res = generic_simplify_73 (loc, type, _p0, _p1, captures, BIT_AND_EXPR);
10605 : 9 : if (res) return res;
10606 : : }
10607 : : }
10608 : : break;
10609 : : }
10610 : : default:;
10611 : : }
10612 : : }
10613 : : break;
10614 : : }
10615 : 45446 : case NEGATE_EXPR:
10616 : 45446 : {
10617 : 45446 : tree _q20 = TREE_OPERAND (_p0, 0);
10618 : 45446 : switch (TREE_CODE (_p1))
10619 : : {
10620 : 26 : case PLUS_EXPR:
10621 : 26 : {
10622 : 26 : tree _q40 = TREE_OPERAND (_p1, 0);
10623 : 26 : tree _q41 = TREE_OPERAND (_p1, 1);
10624 : 26 : if ((_q40 == _q20 && ! TREE_SIDE_EFFECTS (_q40)) || (operand_equal_p (_q40, _q20, 0) && types_match (_q40, _q20)))
10625 : : {
10626 : 0 : if (integer_minus_onep (_q41))
10627 : : {
10628 : 0 : {
10629 : 0 : tree captures[1] ATTRIBUTE_UNUSED = { _q20 };
10630 : 0 : tree res = generic_simplify_74 (loc, type, _p0, _p1, captures, BIT_AND_EXPR);
10631 : 0 : if (res) return res;
10632 : : }
10633 : : }
10634 : : }
10635 : : break;
10636 : : }
10637 : 0 : case MINUS_EXPR:
10638 : 0 : {
10639 : 0 : tree _q40 = TREE_OPERAND (_p1, 0);
10640 : 0 : tree _q41 = TREE_OPERAND (_p1, 1);
10641 : 0 : if ((_q40 == _q20 && ! TREE_SIDE_EFFECTS (_q40)) || (operand_equal_p (_q40, _q20, 0) && types_match (_q40, _q20)))
10642 : : {
10643 : 0 : if (integer_onep (_q41))
10644 : : {
10645 : 0 : {
10646 : 0 : tree captures[1] ATTRIBUTE_UNUSED = { _q20 };
10647 : 0 : tree res = generic_simplify_75 (loc, type, _p0, _p1, captures, BIT_AND_EXPR);
10648 : 0 : if (res) return res;
10649 : : }
10650 : : }
10651 : : }
10652 : : break;
10653 : : }
10654 : : default:;
10655 : : }
10656 : : break;
10657 : : }
10658 : 590261 : case MINUS_EXPR:
10659 : 590261 : {
10660 : 590261 : tree _q20 = TREE_OPERAND (_p0, 0);
10661 : 590261 : tree _q21 = TREE_OPERAND (_p0, 1);
10662 : 590261 : if (integer_onep (_q21))
10663 : : {
10664 : 919 : switch (TREE_CODE (_p1))
10665 : : {
10666 : 0 : case NEGATE_EXPR:
10667 : 0 : {
10668 : 0 : tree _q50 = TREE_OPERAND (_p1, 0);
10669 : 0 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
10670 : : {
10671 : 0 : {
10672 : 0 : tree captures[1] ATTRIBUTE_UNUSED = { _q20 };
10673 : 0 : tree res = generic_simplify_76 (loc, type, _p0, _p1, captures, BIT_AND_EXPR);
10674 : 0 : if (res) return res;
10675 : : }
10676 : : }
10677 : : break;
10678 : : }
10679 : : default:;
10680 : : }
10681 : : }
10682 : : break;
10683 : : }
10684 : 6038771 : default:;
10685 : : }
10686 : 6038771 : switch (TREE_CODE (_p1))
10687 : : {
10688 : 1338 : case EQ_EXPR:
10689 : 1338 : {
10690 : 1338 : tree _q30 = TREE_OPERAND (_p1, 0);
10691 : 1338 : tree _q31 = TREE_OPERAND (_p1, 1);
10692 : 1338 : if ((_q30 == _p0 && ! TREE_SIDE_EFFECTS (_q30)) || (operand_equal_p (_q30, _p0, 0) && types_match (_q30, _p0)))
10693 : : {
10694 : 0 : {
10695 : 0 : tree captures[2] ATTRIBUTE_UNUSED = { _p0, _q31 };
10696 : 0 : tree res = generic_simplify_403 (loc, type, _p0, _p1, captures);
10697 : 0 : if (res) return res;
10698 : : }
10699 : : }
10700 : 1338 : if ((_q31 == _p0 && ! TREE_SIDE_EFFECTS (_q31)) || (operand_equal_p (_q31, _p0, 0) && types_match (_q31, _p0)))
10701 : : {
10702 : 0 : {
10703 : 0 : tree captures[2] ATTRIBUTE_UNUSED = { _p0, _q30 };
10704 : 0 : tree res = generic_simplify_403 (loc, type, _p0, _p1, captures);
10705 : 0 : if (res) return res;
10706 : : }
10707 : : }
10708 : : break;
10709 : : }
10710 : 257 : case BIT_XOR_EXPR:
10711 : 257 : {
10712 : 257 : tree _q30 = TREE_OPERAND (_p1, 0);
10713 : 257 : tree _q31 = TREE_OPERAND (_p1, 1);
10714 : 257 : {
10715 : 257 : tree captures[3] ATTRIBUTE_UNUSED = { _p0, _q30, _q31 };
10716 : 257 : tree res = generic_simplify_406 (loc, type, _p0, _p1, captures);
10717 : 257 : if (res) return res;
10718 : : }
10719 : 256 : {
10720 : 256 : tree captures[3] ATTRIBUTE_UNUSED = { _p0, _q31, _q30 };
10721 : 256 : tree res = generic_simplify_406 (loc, type, _p0, _p1, captures);
10722 : 256 : if (res) return res;
10723 : : }
10724 : 256 : break;
10725 : : }
10726 : 6038770 : default:;
10727 : : }
10728 : 6038770 : {
10729 : 6038770 : tree _p1_pops[1];
10730 : 6038770 : if (tree_nop_convert (_p1, _p1_pops))
10731 : : {
10732 : 840515 : tree _q30 = _p1_pops[0];
10733 : 840515 : switch (TREE_CODE (_q30))
10734 : : {
10735 : 0 : case EQ_EXPR:
10736 : 0 : {
10737 : 0 : tree _q40 = TREE_OPERAND (_q30, 0);
10738 : 0 : tree _q41 = TREE_OPERAND (_q30, 1);
10739 : 0 : if ((_q40 == _p0 && ! TREE_SIDE_EFFECTS (_q40)) || (operand_equal_p (_q40, _p0, 0) && types_match (_q40, _p0)))
10740 : : {
10741 : 0 : {
10742 : 0 : tree captures[2] ATTRIBUTE_UNUSED = { _p0, _q41 };
10743 : 0 : tree res = generic_simplify_403 (loc, type, _p0, _p1, captures);
10744 : 0 : if (res) return res;
10745 : : }
10746 : : }
10747 : 0 : if ((_q41 == _p0 && ! TREE_SIDE_EFFECTS (_q41)) || (operand_equal_p (_q41, _p0, 0) && types_match (_q41, _p0)))
10748 : : {
10749 : 0 : {
10750 : 0 : tree captures[2] ATTRIBUTE_UNUSED = { _p0, _q40 };
10751 : 0 : tree res = generic_simplify_403 (loc, type, _p0, _p1, captures);
10752 : 0 : if (res) return res;
10753 : : }
10754 : : }
10755 : : break;
10756 : : }
10757 : : default:;
10758 : : }
10759 : : }
10760 : : }
10761 : 6038770 : switch (TREE_CODE (_p0))
10762 : : {
10763 : 18243 : case BIT_XOR_EXPR:
10764 : 18243 : {
10765 : 18243 : tree _q20 = TREE_OPERAND (_p0, 0);
10766 : 18243 : tree _q21 = TREE_OPERAND (_p0, 1);
10767 : 18243 : {
10768 : 18243 : tree captures[3] ATTRIBUTE_UNUSED = { _p1, _q20, _q21 };
10769 : 18243 : tree res = generic_simplify_406 (loc, type, _p0, _p1, captures);
10770 : 18243 : if (res) return res;
10771 : : }
10772 : 18243 : {
10773 : 18243 : tree captures[3] ATTRIBUTE_UNUSED = { _p1, _q21, _q20 };
10774 : 18243 : tree res = generic_simplify_406 (loc, type, _p0, _p1, captures);
10775 : 18243 : if (res) return res;
10776 : : }
10777 : 18243 : switch (TREE_CODE (_p1))
10778 : : {
10779 : 152 : case BIT_XOR_EXPR:
10780 : 152 : {
10781 : 152 : tree _q50 = TREE_OPERAND (_p1, 0);
10782 : 152 : tree _q51 = TREE_OPERAND (_p1, 1);
10783 : 152 : switch (TREE_CODE (_q50))
10784 : : {
10785 : 3 : case BIT_XOR_EXPR:
10786 : 3 : {
10787 : 3 : tree _q60 = TREE_OPERAND (_q50, 0);
10788 : 3 : tree _q61 = TREE_OPERAND (_q50, 1);
10789 : 3 : if ((_q60 == _q21 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q21, 0) && types_match (_q60, _q21)))
10790 : : {
10791 : 2 : if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
10792 : : {
10793 : 1 : {
10794 : 1 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q50, _q61 };
10795 : 1 : tree res = generic_simplify_407 (loc, type, _p0, _p1, captures);
10796 : 1 : if (res) return res;
10797 : : }
10798 : : }
10799 : : }
10800 : 2 : if ((_q61 == _q21 && ! TREE_SIDE_EFFECTS (_q61)) || (operand_equal_p (_q61, _q21, 0) && types_match (_q61, _q21)))
10801 : : {
10802 : 0 : if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
10803 : : {
10804 : 0 : {
10805 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q50, _q60 };
10806 : 0 : tree res = generic_simplify_407 (loc, type, _p0, _p1, captures);
10807 : 0 : if (res) return res;
10808 : : }
10809 : : }
10810 : : }
10811 : 2 : if ((_q60 == _q20 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q20, 0) && types_match (_q60, _q20)))
10812 : : {
10813 : 1 : if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
10814 : : {
10815 : 1 : {
10816 : 1 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q50, _q61 };
10817 : 1 : tree res = generic_simplify_407 (loc, type, _p0, _p1, captures);
10818 : 1 : if (res) return res;
10819 : : }
10820 : : }
10821 : : }
10822 : 1 : if ((_q61 == _q20 && ! TREE_SIDE_EFFECTS (_q61)) || (operand_equal_p (_q61, _q20, 0) && types_match (_q61, _q20)))
10823 : : {
10824 : 1 : if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
10825 : : {
10826 : 0 : {
10827 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q50, _q60 };
10828 : 0 : tree res = generic_simplify_407 (loc, type, _p0, _p1, captures);
10829 : 0 : if (res) return res;
10830 : : }
10831 : : }
10832 : : }
10833 : : break;
10834 : : }
10835 : 150 : default:;
10836 : : }
10837 : 150 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
10838 : : {
10839 : 47 : switch (TREE_CODE (_q51))
10840 : : {
10841 : 0 : case BIT_XOR_EXPR:
10842 : 0 : {
10843 : 0 : tree _q70 = TREE_OPERAND (_q51, 0);
10844 : 0 : tree _q71 = TREE_OPERAND (_q51, 1);
10845 : 0 : if ((_q70 == _q21 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q21, 0) && types_match (_q70, _q21)))
10846 : : {
10847 : 0 : {
10848 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q51, _q71 };
10849 : 0 : tree res = generic_simplify_407 (loc, type, _p0, _p1, captures);
10850 : 0 : if (res) return res;
10851 : : }
10852 : : }
10853 : 0 : if ((_q71 == _q21 && ! TREE_SIDE_EFFECTS (_q71)) || (operand_equal_p (_q71, _q21, 0) && types_match (_q71, _q21)))
10854 : : {
10855 : 0 : {
10856 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q51, _q70 };
10857 : 0 : tree res = generic_simplify_407 (loc, type, _p0, _p1, captures);
10858 : 0 : if (res) return res;
10859 : : }
10860 : : }
10861 : : break;
10862 : : }
10863 : : default:;
10864 : : }
10865 : : }
10866 : 150 : if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
10867 : : {
10868 : 0 : switch (TREE_CODE (_q51))
10869 : : {
10870 : 0 : case BIT_XOR_EXPR:
10871 : 0 : {
10872 : 0 : tree _q70 = TREE_OPERAND (_q51, 0);
10873 : 0 : tree _q71 = TREE_OPERAND (_q51, 1);
10874 : 0 : if ((_q70 == _q20 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q20, 0) && types_match (_q70, _q20)))
10875 : : {
10876 : 0 : {
10877 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q51, _q71 };
10878 : 0 : tree res = generic_simplify_407 (loc, type, _p0, _p1, captures);
10879 : 0 : if (res) return res;
10880 : : }
10881 : : }
10882 : 0 : if ((_q71 == _q20 && ! TREE_SIDE_EFFECTS (_q71)) || (operand_equal_p (_q71, _q20, 0) && types_match (_q71, _q20)))
10883 : : {
10884 : 0 : {
10885 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q51, _q70 };
10886 : 0 : tree res = generic_simplify_407 (loc, type, _p0, _p1, captures);
10887 : 0 : if (res) return res;
10888 : : }
10889 : : }
10890 : : break;
10891 : : }
10892 : : default:;
10893 : : }
10894 : : }
10895 : : break;
10896 : : }
10897 : 18241 : default:;
10898 : : }
10899 : 18241 : switch (TREE_CODE (_q20))
10900 : : {
10901 : 11 : case BIT_XOR_EXPR:
10902 : 11 : {
10903 : 11 : tree _q30 = TREE_OPERAND (_q20, 0);
10904 : 11 : tree _q31 = TREE_OPERAND (_q20, 1);
10905 : 11 : switch (TREE_CODE (_p1))
10906 : : {
10907 : 0 : case BIT_XOR_EXPR:
10908 : 0 : {
10909 : 0 : tree _q70 = TREE_OPERAND (_p1, 0);
10910 : 0 : tree _q71 = TREE_OPERAND (_p1, 1);
10911 : 0 : if ((_q70 == _q21 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q21, 0) && types_match (_q70, _q21)))
10912 : : {
10913 : 0 : if ((_q71 == _q30 && ! TREE_SIDE_EFFECTS (_q71)) || (operand_equal_p (_q71, _q30, 0) && types_match (_q71, _q30)))
10914 : : {
10915 : 0 : {
10916 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q21, _q30, _p0, _q20, _q31 };
10917 : 0 : tree res = generic_simplify_408 (loc, type, _p0, _p1, captures);
10918 : 0 : if (res) return res;
10919 : : }
10920 : : }
10921 : 0 : if ((_q71 == _q31 && ! TREE_SIDE_EFFECTS (_q71)) || (operand_equal_p (_q71, _q31, 0) && types_match (_q71, _q31)))
10922 : : {
10923 : 0 : {
10924 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q21, _q31, _p0, _q20, _q30 };
10925 : 0 : tree res = generic_simplify_408 (loc, type, _p0, _p1, captures);
10926 : 0 : if (res) return res;
10927 : : }
10928 : : }
10929 : : }
10930 : 0 : if ((_q70 == _q30 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q30, 0) && types_match (_q70, _q30)))
10931 : : {
10932 : 0 : if ((_q71 == _q21 && ! TREE_SIDE_EFFECTS (_q71)) || (operand_equal_p (_q71, _q21, 0) && types_match (_q71, _q21)))
10933 : : {
10934 : 0 : {
10935 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q21, _q30, _p0, _q20, _q31 };
10936 : 0 : tree res = generic_simplify_408 (loc, type, _p0, _p1, captures);
10937 : 0 : if (res) return res;
10938 : : }
10939 : : }
10940 : : }
10941 : 0 : if ((_q70 == _q31 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q31, 0) && types_match (_q70, _q31)))
10942 : : {
10943 : 0 : if ((_q71 == _q21 && ! TREE_SIDE_EFFECTS (_q71)) || (operand_equal_p (_q71, _q21, 0) && types_match (_q71, _q21)))
10944 : : {
10945 : 0 : {
10946 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q21, _q31, _p0, _q20, _q30 };
10947 : 0 : tree res = generic_simplify_408 (loc, type, _p0, _p1, captures);
10948 : 0 : if (res) return res;
10949 : : }
10950 : : }
10951 : : }
10952 : : break;
10953 : : }
10954 : : default:;
10955 : : }
10956 : : break;
10957 : : }
10958 : 18241 : default:;
10959 : : }
10960 : 18241 : switch (TREE_CODE (_q21))
10961 : : {
10962 : 0 : case BIT_XOR_EXPR:
10963 : 0 : {
10964 : 0 : tree _q40 = TREE_OPERAND (_q21, 0);
10965 : 0 : tree _q41 = TREE_OPERAND (_q21, 1);
10966 : 0 : switch (TREE_CODE (_p1))
10967 : : {
10968 : 0 : case BIT_XOR_EXPR:
10969 : 0 : {
10970 : 0 : tree _q70 = TREE_OPERAND (_p1, 0);
10971 : 0 : tree _q71 = TREE_OPERAND (_p1, 1);
10972 : 0 : if ((_q70 == _q20 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q20, 0) && types_match (_q70, _q20)))
10973 : : {
10974 : 0 : if ((_q71 == _q40 && ! TREE_SIDE_EFFECTS (_q71)) || (operand_equal_p (_q71, _q40, 0) && types_match (_q71, _q40)))
10975 : : {
10976 : 0 : {
10977 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q20, _q40, _p0, _q21, _q41 };
10978 : 0 : tree res = generic_simplify_408 (loc, type, _p0, _p1, captures);
10979 : 0 : if (res) return res;
10980 : : }
10981 : : }
10982 : 0 : if ((_q71 == _q41 && ! TREE_SIDE_EFFECTS (_q71)) || (operand_equal_p (_q71, _q41, 0) && types_match (_q71, _q41)))
10983 : : {
10984 : 0 : {
10985 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q20, _q41, _p0, _q21, _q40 };
10986 : 0 : tree res = generic_simplify_408 (loc, type, _p0, _p1, captures);
10987 : 0 : if (res) return res;
10988 : : }
10989 : : }
10990 : : }
10991 : 0 : if ((_q70 == _q40 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q40, 0) && types_match (_q70, _q40)))
10992 : : {
10993 : 0 : if ((_q71 == _q20 && ! TREE_SIDE_EFFECTS (_q71)) || (operand_equal_p (_q71, _q20, 0) && types_match (_q71, _q20)))
10994 : : {
10995 : 0 : {
10996 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q20, _q40, _p0, _q21, _q41 };
10997 : 0 : tree res = generic_simplify_408 (loc, type, _p0, _p1, captures);
10998 : 0 : if (res) return res;
10999 : : }
11000 : : }
11001 : : }
11002 : 0 : if ((_q70 == _q41 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q41, 0) && types_match (_q70, _q41)))
11003 : : {
11004 : 0 : if ((_q71 == _q20 && ! TREE_SIDE_EFFECTS (_q71)) || (operand_equal_p (_q71, _q20, 0) && types_match (_q71, _q20)))
11005 : : {
11006 : 0 : {
11007 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q20, _q41, _p0, _q21, _q40 };
11008 : 0 : tree res = generic_simplify_408 (loc, type, _p0, _p1, captures);
11009 : 0 : if (res) return res;
11010 : : }
11011 : : }
11012 : : }
11013 : : break;
11014 : : }
11015 : : default:;
11016 : : }
11017 : : break;
11018 : : }
11019 : : default:;
11020 : : }
11021 : : break;
11022 : : }
11023 : 37997 : case BIT_NOT_EXPR:
11024 : 37997 : {
11025 : 37997 : tree _q20 = TREE_OPERAND (_p0, 0);
11026 : 37997 : switch (TREE_CODE (_q20))
11027 : : {
11028 : 160 : case SSA_NAME:
11029 : 160 : {
11030 : 160 : switch (TREE_CODE (_p1))
11031 : : {
11032 : 160 : case INTEGER_CST:
11033 : 160 : {
11034 : 160 : {
11035 : 160 : tree captures[2] ATTRIBUTE_UNUSED = { _q20, _p1 };
11036 : 320 : if (INTEGRAL_TYPE_P (TREE_TYPE (captures[0]))
11037 : 480 : && wi::bit_and_not (get_nonzero_bits (captures[0]), wi::to_wide (captures[1])) == 0
11038 : : )
11039 : : {
11040 : 13 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1726;
11041 : 13 : {
11042 : 13 : tree res_op0;
11043 : 13 : res_op0 = captures[0];
11044 : 13 : tree res_op1;
11045 : 13 : res_op1 = captures[1];
11046 : 13 : tree _r;
11047 : 13 : _r = fold_build2_loc (loc, BIT_XOR_EXPR, type, res_op0, res_op1);
11048 : 13 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 1003, __FILE__, __LINE__, true);
11049 : 13 : return _r;
11050 : : }
11051 : 0 : next_after_fail1726:;
11052 : : }
11053 : : }
11054 : 147 : break;
11055 : : }
11056 : : default:;
11057 : : }
11058 : : break;
11059 : : }
11060 : : default:;
11061 : : }
11062 : : break;
11063 : : }
11064 : 277782 : case PLUS_EXPR:
11065 : 277782 : {
11066 : 277782 : tree _q20 = TREE_OPERAND (_p0, 0);
11067 : 277782 : tree _q21 = TREE_OPERAND (_p0, 1);
11068 : 277782 : switch (TREE_CODE (_q20))
11069 : : {
11070 : 22 : case BIT_AND_EXPR:
11071 : 22 : {
11072 : 22 : tree _q30 = TREE_OPERAND (_q20, 0);
11073 : 22 : tree _q31 = TREE_OPERAND (_q20, 1);
11074 : 22 : switch (TREE_CODE (_q31))
11075 : : {
11076 : 18 : case INTEGER_CST:
11077 : 18 : {
11078 : 18 : switch (TREE_CODE (_p1))
11079 : : {
11080 : 18 : case INTEGER_CST:
11081 : 18 : {
11082 : 18 : {
11083 : 18 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q30, _q31, _q21, _p1 };
11084 : 18 : tree res = generic_simplify_409 (loc, type, _p0, _p1, captures, BIT_AND_EXPR, PLUS_EXPR);
11085 : 18 : if (res) return res;
11086 : : }
11087 : 12 : break;
11088 : : }
11089 : : default:;
11090 : : }
11091 : : break;
11092 : : }
11093 : : default:;
11094 : : }
11095 : : break;
11096 : : }
11097 : 64 : case BIT_IOR_EXPR:
11098 : 64 : {
11099 : 64 : tree _q30 = TREE_OPERAND (_q20, 0);
11100 : 64 : tree _q31 = TREE_OPERAND (_q20, 1);
11101 : 64 : switch (TREE_CODE (_q31))
11102 : : {
11103 : 52 : case INTEGER_CST:
11104 : 52 : {
11105 : 52 : switch (TREE_CODE (_p1))
11106 : : {
11107 : 52 : case INTEGER_CST:
11108 : 52 : {
11109 : 52 : {
11110 : 52 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q30, _q31, _q21, _p1 };
11111 : 52 : tree res = generic_simplify_409 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR, PLUS_EXPR);
11112 : 52 : if (res) return res;
11113 : : }
11114 : 48 : break;
11115 : : }
11116 : : default:;
11117 : : }
11118 : : break;
11119 : : }
11120 : : default:;
11121 : : }
11122 : : break;
11123 : : }
11124 : 24 : case BIT_XOR_EXPR:
11125 : 24 : {
11126 : 24 : tree _q30 = TREE_OPERAND (_q20, 0);
11127 : 24 : tree _q31 = TREE_OPERAND (_q20, 1);
11128 : 24 : switch (TREE_CODE (_q31))
11129 : : {
11130 : 4 : case INTEGER_CST:
11131 : 4 : {
11132 : 4 : switch (TREE_CODE (_p1))
11133 : : {
11134 : 4 : case INTEGER_CST:
11135 : 4 : {
11136 : 4 : {
11137 : 4 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q30, _q31, _q21, _p1 };
11138 : 4 : tree res = generic_simplify_409 (loc, type, _p0, _p1, captures, BIT_XOR_EXPR, PLUS_EXPR);
11139 : 4 : if (res) return res;
11140 : : }
11141 : 0 : break;
11142 : : }
11143 : : default:;
11144 : : }
11145 : : break;
11146 : : }
11147 : : default:;
11148 : : }
11149 : : break;
11150 : : }
11151 : 277768 : default:;
11152 : : }
11153 : 277768 : switch (TREE_CODE (_q21))
11154 : : {
11155 : 0 : case BIT_AND_EXPR:
11156 : 0 : {
11157 : 0 : tree _q40 = TREE_OPERAND (_q21, 0);
11158 : 0 : tree _q41 = TREE_OPERAND (_q21, 1);
11159 : 0 : switch (TREE_CODE (_q41))
11160 : : {
11161 : 0 : case INTEGER_CST:
11162 : 0 : {
11163 : 0 : switch (TREE_CODE (_p1))
11164 : : {
11165 : 0 : case INTEGER_CST:
11166 : 0 : {
11167 : 0 : {
11168 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _q40, _q41, _p1 };
11169 : 0 : tree res = generic_simplify_410 (loc, type, _p0, _p1, captures, BIT_AND_EXPR, PLUS_EXPR);
11170 : 0 : if (res) return res;
11171 : : }
11172 : 0 : break;
11173 : : }
11174 : : default:;
11175 : : }
11176 : : break;
11177 : : }
11178 : : default:;
11179 : : }
11180 : : break;
11181 : : }
11182 : 0 : case BIT_IOR_EXPR:
11183 : 0 : {
11184 : 0 : tree _q40 = TREE_OPERAND (_q21, 0);
11185 : 0 : tree _q41 = TREE_OPERAND (_q21, 1);
11186 : 0 : switch (TREE_CODE (_q41))
11187 : : {
11188 : 0 : case INTEGER_CST:
11189 : 0 : {
11190 : 0 : switch (TREE_CODE (_p1))
11191 : : {
11192 : 0 : case INTEGER_CST:
11193 : 0 : {
11194 : 0 : {
11195 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _q40, _q41, _p1 };
11196 : 0 : tree res = generic_simplify_410 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR, PLUS_EXPR);
11197 : 0 : if (res) return res;
11198 : : }
11199 : 0 : break;
11200 : : }
11201 : : default:;
11202 : : }
11203 : : break;
11204 : : }
11205 : : default:;
11206 : : }
11207 : : break;
11208 : : }
11209 : 0 : case BIT_XOR_EXPR:
11210 : 0 : {
11211 : 0 : tree _q40 = TREE_OPERAND (_q21, 0);
11212 : 0 : tree _q41 = TREE_OPERAND (_q21, 1);
11213 : 0 : switch (TREE_CODE (_q41))
11214 : : {
11215 : 0 : case INTEGER_CST:
11216 : 0 : {
11217 : 0 : switch (TREE_CODE (_p1))
11218 : : {
11219 : 0 : case INTEGER_CST:
11220 : 0 : {
11221 : 0 : {
11222 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _q40, _q41, _p1 };
11223 : 0 : tree res = generic_simplify_410 (loc, type, _p0, _p1, captures, BIT_XOR_EXPR, PLUS_EXPR);
11224 : 0 : if (res) return res;
11225 : : }
11226 : 0 : break;
11227 : : }
11228 : : default:;
11229 : : }
11230 : : break;
11231 : : }
11232 : : default:;
11233 : : }
11234 : : break;
11235 : : }
11236 : 277768 : default:;
11237 : : }
11238 : 277768 : switch (TREE_CODE (_p1))
11239 : : {
11240 : 193983 : case INTEGER_CST:
11241 : 193983 : {
11242 : 193983 : {
11243 : 193983 : tree captures[4] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1 };
11244 : 193983 : tree res = generic_simplify_411 (loc, type, _p0, _p1, captures, PLUS_EXPR);
11245 : 193983 : if (res) return res;
11246 : : }
11247 : 78892 : break;
11248 : : }
11249 : : default:;
11250 : : }
11251 : : break;
11252 : : }
11253 : 590261 : case MINUS_EXPR:
11254 : 590261 : {
11255 : 590261 : tree _q20 = TREE_OPERAND (_p0, 0);
11256 : 590261 : tree _q21 = TREE_OPERAND (_p0, 1);
11257 : 590261 : switch (TREE_CODE (_q20))
11258 : : {
11259 : 4 : case BIT_AND_EXPR:
11260 : 4 : {
11261 : 4 : tree _q30 = TREE_OPERAND (_q20, 0);
11262 : 4 : tree _q31 = TREE_OPERAND (_q20, 1);
11263 : 4 : switch (TREE_CODE (_q31))
11264 : : {
11265 : 2 : case INTEGER_CST:
11266 : 2 : {
11267 : 2 : switch (TREE_CODE (_p1))
11268 : : {
11269 : 2 : case INTEGER_CST:
11270 : 2 : {
11271 : 2 : {
11272 : 2 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q30, _q31, _q21, _p1 };
11273 : 2 : tree res = generic_simplify_409 (loc, type, _p0, _p1, captures, BIT_AND_EXPR, MINUS_EXPR);
11274 : 2 : if (res) return res;
11275 : : }
11276 : 0 : break;
11277 : : }
11278 : : default:;
11279 : : }
11280 : : break;
11281 : : }
11282 : : default:;
11283 : : }
11284 : : break;
11285 : : }
11286 : 4 : case BIT_IOR_EXPR:
11287 : 4 : {
11288 : 4 : tree _q30 = TREE_OPERAND (_q20, 0);
11289 : 4 : tree _q31 = TREE_OPERAND (_q20, 1);
11290 : 4 : switch (TREE_CODE (_q31))
11291 : : {
11292 : 2 : case INTEGER_CST:
11293 : 2 : {
11294 : 2 : switch (TREE_CODE (_p1))
11295 : : {
11296 : 2 : case INTEGER_CST:
11297 : 2 : {
11298 : 2 : {
11299 : 2 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q30, _q31, _q21, _p1 };
11300 : 2 : tree res = generic_simplify_409 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR, MINUS_EXPR);
11301 : 2 : if (res) return res;
11302 : : }
11303 : 0 : break;
11304 : : }
11305 : : default:;
11306 : : }
11307 : : break;
11308 : : }
11309 : : default:;
11310 : : }
11311 : : break;
11312 : : }
11313 : 4 : case BIT_XOR_EXPR:
11314 : 4 : {
11315 : 4 : tree _q30 = TREE_OPERAND (_q20, 0);
11316 : 4 : tree _q31 = TREE_OPERAND (_q20, 1);
11317 : 4 : switch (TREE_CODE (_q31))
11318 : : {
11319 : 2 : case INTEGER_CST:
11320 : 2 : {
11321 : 2 : switch (TREE_CODE (_p1))
11322 : : {
11323 : 2 : case INTEGER_CST:
11324 : 2 : {
11325 : 2 : {
11326 : 2 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q30, _q31, _q21, _p1 };
11327 : 2 : tree res = generic_simplify_409 (loc, type, _p0, _p1, captures, BIT_XOR_EXPR, MINUS_EXPR);
11328 : 2 : if (res) return res;
11329 : : }
11330 : 0 : break;
11331 : : }
11332 : : default:;
11333 : : }
11334 : : break;
11335 : : }
11336 : : default:;
11337 : : }
11338 : : break;
11339 : : }
11340 : 590255 : default:;
11341 : : }
11342 : 590255 : switch (TREE_CODE (_q21))
11343 : : {
11344 : 164 : case BIT_AND_EXPR:
11345 : 164 : {
11346 : 164 : tree _q40 = TREE_OPERAND (_q21, 0);
11347 : 164 : tree _q41 = TREE_OPERAND (_q21, 1);
11348 : 164 : switch (TREE_CODE (_q41))
11349 : : {
11350 : 162 : case INTEGER_CST:
11351 : 162 : {
11352 : 162 : switch (TREE_CODE (_p1))
11353 : : {
11354 : 162 : case INTEGER_CST:
11355 : 162 : {
11356 : 162 : {
11357 : 162 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _q40, _q41, _p1 };
11358 : 162 : tree res = generic_simplify_410 (loc, type, _p0, _p1, captures, BIT_AND_EXPR, MINUS_EXPR);
11359 : 162 : if (res) return res;
11360 : : }
11361 : 7 : break;
11362 : : }
11363 : : default:;
11364 : : }
11365 : : break;
11366 : : }
11367 : : default:;
11368 : : }
11369 : : break;
11370 : : }
11371 : 4 : case BIT_IOR_EXPR:
11372 : 4 : {
11373 : 4 : tree _q40 = TREE_OPERAND (_q21, 0);
11374 : 4 : tree _q41 = TREE_OPERAND (_q21, 1);
11375 : 4 : switch (TREE_CODE (_q41))
11376 : : {
11377 : 2 : case INTEGER_CST:
11378 : 2 : {
11379 : 2 : switch (TREE_CODE (_p1))
11380 : : {
11381 : 2 : case INTEGER_CST:
11382 : 2 : {
11383 : 2 : {
11384 : 2 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _q40, _q41, _p1 };
11385 : 2 : tree res = generic_simplify_410 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR, MINUS_EXPR);
11386 : 2 : if (res) return res;
11387 : : }
11388 : 0 : break;
11389 : : }
11390 : : default:;
11391 : : }
11392 : : break;
11393 : : }
11394 : : default:;
11395 : : }
11396 : : break;
11397 : : }
11398 : 4 : case BIT_XOR_EXPR:
11399 : 4 : {
11400 : 4 : tree _q40 = TREE_OPERAND (_q21, 0);
11401 : 4 : tree _q41 = TREE_OPERAND (_q21, 1);
11402 : 4 : switch (TREE_CODE (_q41))
11403 : : {
11404 : 2 : case INTEGER_CST:
11405 : 2 : {
11406 : 2 : switch (TREE_CODE (_p1))
11407 : : {
11408 : 2 : case INTEGER_CST:
11409 : 2 : {
11410 : 2 : {
11411 : 2 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _q40, _q41, _p1 };
11412 : 2 : tree res = generic_simplify_410 (loc, type, _p0, _p1, captures, BIT_XOR_EXPR, MINUS_EXPR);
11413 : 2 : if (res) return res;
11414 : : }
11415 : 0 : break;
11416 : : }
11417 : : default:;
11418 : : }
11419 : : break;
11420 : : }
11421 : : default:;
11422 : : }
11423 : : break;
11424 : : }
11425 : 590096 : default:;
11426 : : }
11427 : 590096 : switch (TREE_CODE (_p1))
11428 : : {
11429 : 589896 : case INTEGER_CST:
11430 : 589896 : {
11431 : 589896 : {
11432 : 589896 : tree captures[4] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1 };
11433 : 589896 : tree res = generic_simplify_411 (loc, type, _p0, _p1, captures, MINUS_EXPR);
11434 : 589896 : if (res) return res;
11435 : : }
11436 : 431338 : break;
11437 : : }
11438 : : default:;
11439 : : }
11440 : : break;
11441 : : }
11442 : 45446 : case NEGATE_EXPR:
11443 : 45446 : {
11444 : 45446 : tree _q20 = TREE_OPERAND (_p0, 0);
11445 : 45446 : switch (TREE_CODE (_q20))
11446 : : {
11447 : 26 : case BIT_AND_EXPR:
11448 : 26 : {
11449 : 26 : tree _q30 = TREE_OPERAND (_q20, 0);
11450 : 26 : tree _q31 = TREE_OPERAND (_q20, 1);
11451 : 26 : switch (TREE_CODE (_q31))
11452 : : {
11453 : 22 : case INTEGER_CST:
11454 : 22 : {
11455 : 22 : switch (TREE_CODE (_p1))
11456 : : {
11457 : 12 : case INTEGER_CST:
11458 : 12 : {
11459 : 12 : {
11460 : 12 : tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q20, _q30, _q31, _p1 };
11461 : 12 : tree res = generic_simplify_412 (loc, type, _p0, _p1, captures, BIT_AND_EXPR);
11462 : 12 : if (res) return res;
11463 : : }
11464 : 8 : break;
11465 : : }
11466 : : default:;
11467 : : }
11468 : : break;
11469 : : }
11470 : : default:;
11471 : : }
11472 : : break;
11473 : : }
11474 : 44 : case BIT_IOR_EXPR:
11475 : 44 : {
11476 : 44 : tree _q30 = TREE_OPERAND (_q20, 0);
11477 : 44 : tree _q31 = TREE_OPERAND (_q20, 1);
11478 : 44 : switch (TREE_CODE (_q31))
11479 : : {
11480 : 2 : case INTEGER_CST:
11481 : 2 : {
11482 : 2 : switch (TREE_CODE (_p1))
11483 : : {
11484 : 2 : case INTEGER_CST:
11485 : 2 : {
11486 : 2 : {
11487 : 2 : tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q20, _q30, _q31, _p1 };
11488 : 2 : tree res = generic_simplify_412 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR);
11489 : 2 : if (res) return res;
11490 : : }
11491 : 0 : break;
11492 : : }
11493 : : default:;
11494 : : }
11495 : : break;
11496 : : }
11497 : : default:;
11498 : : }
11499 : : break;
11500 : : }
11501 : 4 : case BIT_XOR_EXPR:
11502 : 4 : {
11503 : 4 : tree _q30 = TREE_OPERAND (_q20, 0);
11504 : 4 : tree _q31 = TREE_OPERAND (_q20, 1);
11505 : 4 : switch (TREE_CODE (_q31))
11506 : : {
11507 : 2 : case INTEGER_CST:
11508 : 2 : {
11509 : 2 : switch (TREE_CODE (_p1))
11510 : : {
11511 : 2 : case INTEGER_CST:
11512 : 2 : {
11513 : 2 : {
11514 : 2 : tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q20, _q30, _q31, _p1 };
11515 : 2 : tree res = generic_simplify_412 (loc, type, _p0, _p1, captures, BIT_XOR_EXPR);
11516 : 2 : if (res) return res;
11517 : : }
11518 : 0 : break;
11519 : : }
11520 : : default:;
11521 : : }
11522 : : break;
11523 : : }
11524 : : default:;
11525 : : }
11526 : : break;
11527 : : }
11528 : 45438 : default:;
11529 : : }
11530 : 45438 : if (tree_zero_one_valued_p (_q20))
11531 : : {
11532 : 18 : {
11533 : 18 : tree captures[2] ATTRIBUTE_UNUSED = { _q20, _p1 };
11534 : 18 : tree res = generic_simplify_413 (loc, type, _p0, _p1, captures);
11535 : 18 : if (res) return res;
11536 : : }
11537 : : }
11538 : : break;
11539 : : }
11540 : 5764901 : default:;
11541 : : }
11542 : 5764901 : if (integer_zerop (_p1))
11543 : : {
11544 : 3803 : {
11545 : 3803 : tree captures[2] ATTRIBUTE_UNUSED = { _p0, _p1 };
11546 : 3803 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1727;
11547 : 3803 : {
11548 : 3803 : tree _r;
11549 : 3803 : _r = captures[1];
11550 : 3803 : if (TREE_SIDE_EFFECTS (captures[0]))
11551 : 49 : _r = build2_loc (loc, COMPOUND_EXPR, type, fold_ignored_result (captures[0]), _r);
11552 : 3803 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 1004, __FILE__, __LINE__, true);
11553 : 3803 : return _r;
11554 : : }
11555 : 0 : next_after_fail1727:;
11556 : : }
11557 : : }
11558 : 5761098 : if (integer_all_onesp (_p1))
11559 : : {
11560 : 28623 : {
11561 : 28623 : tree captures[1] ATTRIBUTE_UNUSED = { _p0 };
11562 : 28623 : if (TREE_SIDE_EFFECTS (_p1)) goto next_after_fail1728;
11563 : 28623 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1728;
11564 : 28623 : {
11565 : 28623 : tree res_op0;
11566 : 28623 : res_op0 = captures[0];
11567 : 28623 : tree _r;
11568 : 28623 : _r = non_lvalue_loc (loc, res_op0);
11569 : 28623 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 1005, __FILE__, __LINE__, true);
11570 : 28623 : return _r;
11571 : : }
11572 : : next_after_fail1728:;
11573 : : }
11574 : : }
11575 : 5732475 : if ((_p1 == _p0 && ! TREE_SIDE_EFFECTS (_p1)) || (operand_equal_p (_p1, _p0, 0) && types_match (_p1, _p0)))
11576 : : {
11577 : 129 : {
11578 : 129 : tree captures[1] ATTRIBUTE_UNUSED = { _p0 };
11579 : 129 : tree res = generic_simplify_87 (loc, type, _p0, _p1, captures, BIT_AND_EXPR);
11580 : 129 : if (res) return res;
11581 : : }
11582 : : }
11583 : 5732346 : switch (TREE_CODE (_p1))
11584 : : {
11585 : 23593 : case BIT_NOT_EXPR:
11586 : 23593 : {
11587 : 23593 : tree _q30 = TREE_OPERAND (_p1, 0);
11588 : 23593 : switch (TREE_CODE (_q30))
11589 : : {
11590 : 13 : case BIT_AND_EXPR:
11591 : 13 : {
11592 : 13 : tree _q40 = TREE_OPERAND (_q30, 0);
11593 : 13 : tree _q41 = TREE_OPERAND (_q30, 1);
11594 : 13 : if ((_q40 == _p0 && ! TREE_SIDE_EFFECTS (_q40)) || (operand_equal_p (_q40, _p0, 0) && types_match (_q40, _p0)))
11595 : : {
11596 : 0 : {
11597 : 0 : tree captures[3] ATTRIBUTE_UNUSED = { _p0, _q30, _q41 };
11598 : 0 : tree res = generic_simplify_88 (loc, type, _p0, _p1, captures, BIT_AND_EXPR);
11599 : 0 : if (res) return res;
11600 : : }
11601 : : }
11602 : 13 : if ((_q41 == _p0 && ! TREE_SIDE_EFFECTS (_q41)) || (operand_equal_p (_q41, _p0, 0) && types_match (_q41, _p0)))
11603 : : {
11604 : 0 : {
11605 : 0 : tree captures[3] ATTRIBUTE_UNUSED = { _p0, _q30, _q40 };
11606 : 0 : tree res = generic_simplify_88 (loc, type, _p0, _p1, captures, BIT_AND_EXPR);
11607 : 0 : if (res) return res;
11608 : : }
11609 : : }
11610 : : break;
11611 : : }
11612 : : default:;
11613 : : }
11614 : : break;
11615 : : }
11616 : 5732346 : default:;
11617 : : }
11618 : 5732346 : switch (TREE_CODE (_p0))
11619 : : {
11620 : 37968 : case BIT_NOT_EXPR:
11621 : 37968 : {
11622 : 37968 : tree _q20 = TREE_OPERAND (_p0, 0);
11623 : 37968 : switch (TREE_CODE (_q20))
11624 : : {
11625 : 28 : case BIT_AND_EXPR:
11626 : 28 : {
11627 : 28 : tree _q30 = TREE_OPERAND (_q20, 0);
11628 : 28 : tree _q31 = TREE_OPERAND (_q20, 1);
11629 : 28 : if ((_p1 == _q30 && ! TREE_SIDE_EFFECTS (_p1)) || (operand_equal_p (_p1, _q30, 0) && types_match (_p1, _q30)))
11630 : : {
11631 : 4 : {
11632 : 4 : tree captures[3] ATTRIBUTE_UNUSED = { _q30, _q20, _q31 };
11633 : 4 : tree res = generic_simplify_88 (loc, type, _p0, _p1, captures, BIT_AND_EXPR);
11634 : 4 : if (res) return res;
11635 : : }
11636 : : }
11637 : 24 : if ((_p1 == _q31 && ! TREE_SIDE_EFFECTS (_p1)) || (operand_equal_p (_p1, _q31, 0) && types_match (_p1, _q31)))
11638 : : {
11639 : 3 : {
11640 : 3 : tree captures[3] ATTRIBUTE_UNUSED = { _q31, _q20, _q30 };
11641 : 3 : tree res = generic_simplify_88 (loc, type, _p0, _p1, captures, BIT_AND_EXPR);
11642 : 3 : if (res) return res;
11643 : : }
11644 : : }
11645 : 21 : switch (TREE_CODE (_p1))
11646 : : {
11647 : 0 : case BIT_IOR_EXPR:
11648 : 0 : {
11649 : 0 : tree _q60 = TREE_OPERAND (_p1, 0);
11650 : 0 : tree _q61 = TREE_OPERAND (_p1, 1);
11651 : 0 : if ((_q60 == _q30 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q30, 0) && types_match (_q60, _q30)))
11652 : : {
11653 : 0 : if ((_q61 == _q31 && ! TREE_SIDE_EFFECTS (_q61)) || (operand_equal_p (_q61, _q31, 0) && types_match (_q61, _q31)))
11654 : : {
11655 : 0 : {
11656 : 0 : tree captures[2] ATTRIBUTE_UNUSED = { _q30, _q31 };
11657 : 0 : tree res = generic_simplify_414 (loc, type, _p0, _p1, captures);
11658 : 0 : if (res) return res;
11659 : : }
11660 : : }
11661 : : }
11662 : : break;
11663 : : }
11664 : : default:;
11665 : : }
11666 : : break;
11667 : : }
11668 : 37961 : default:;
11669 : : }
11670 : 37961 : switch (TREE_CODE (_p1))
11671 : : {
11672 : 334 : CASE_CONVERT:
11673 : 334 : {
11674 : 334 : tree _q40 = TREE_OPERAND (_p1, 0);
11675 : 334 : switch (TREE_CODE (_q40))
11676 : : {
11677 : 0 : case BIT_NOT_EXPR:
11678 : 0 : {
11679 : 0 : tree _q50 = TREE_OPERAND (_q40, 0);
11680 : 0 : {
11681 : 0 : tree captures[2] ATTRIBUTE_UNUSED = { _q20, _q50 };
11682 : 0 : tree res = generic_simplify_92 (loc, type, _p0, _p1, captures, BIT_AND_EXPR, BIT_IOR_EXPR);
11683 : 0 : if (res) return res;
11684 : : }
11685 : 0 : break;
11686 : : }
11687 : : default:;
11688 : : }
11689 : : break;
11690 : : }
11691 : 44 : case BIT_NOT_EXPR:
11692 : 44 : {
11693 : 44 : tree _q40 = TREE_OPERAND (_p1, 0);
11694 : 44 : {
11695 : 44 : tree captures[2] ATTRIBUTE_UNUSED = { _q20, _q40 };
11696 : 44 : tree res = generic_simplify_92 (loc, type, _p0, _p1, captures, BIT_AND_EXPR, BIT_IOR_EXPR);
11697 : 44 : if (res) return res;
11698 : : }
11699 : 0 : break;
11700 : : }
11701 : : default:;
11702 : : }
11703 : : break;
11704 : : }
11705 : 1557 : case BIT_IOR_EXPR:
11706 : 1557 : {
11707 : 1557 : tree _q20 = TREE_OPERAND (_p0, 0);
11708 : 1557 : tree _q21 = TREE_OPERAND (_p0, 1);
11709 : 1557 : switch (TREE_CODE (_p1))
11710 : : {
11711 : 169 : case BIT_NOT_EXPR:
11712 : 169 : {
11713 : 169 : tree _q50 = TREE_OPERAND (_p1, 0);
11714 : 169 : switch (TREE_CODE (_q50))
11715 : : {
11716 : 0 : case BIT_AND_EXPR:
11717 : 0 : {
11718 : 0 : tree _q60 = TREE_OPERAND (_q50, 0);
11719 : 0 : tree _q61 = TREE_OPERAND (_q50, 1);
11720 : 0 : if ((_q60 == _q20 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q20, 0) && types_match (_q60, _q20)))
11721 : : {
11722 : 0 : if ((_q61 == _q21 && ! TREE_SIDE_EFFECTS (_q61)) || (operand_equal_p (_q61, _q21, 0) && types_match (_q61, _q21)))
11723 : : {
11724 : 0 : {
11725 : 0 : tree captures[2] ATTRIBUTE_UNUSED = { _q20, _q21 };
11726 : 0 : tree res = generic_simplify_414 (loc, type, _p0, _p1, captures);
11727 : 0 : if (res) return res;
11728 : : }
11729 : : }
11730 : : }
11731 : : break;
11732 : : }
11733 : : default:;
11734 : : }
11735 : : break;
11736 : : }
11737 : 2 : case BIT_XOR_EXPR:
11738 : 2 : {
11739 : 2 : tree _q50 = TREE_OPERAND (_p1, 0);
11740 : 2 : tree _q51 = TREE_OPERAND (_p1, 1);
11741 : 2 : if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
11742 : : {
11743 : 0 : {
11744 : 0 : tree captures[3] ATTRIBUTE_UNUSED = { _q20, _q21, _q51 };
11745 : 0 : tree res = generic_simplify_415 (loc, type, _p0, _p1, captures);
11746 : 0 : if (res) return res;
11747 : : }
11748 : : }
11749 : 2 : if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
11750 : : {
11751 : 2 : {
11752 : 2 : tree captures[3] ATTRIBUTE_UNUSED = { _q20, _q21, _q50 };
11753 : 2 : tree res = generic_simplify_415 (loc, type, _p0, _p1, captures);
11754 : 2 : if (res) return res;
11755 : : }
11756 : : }
11757 : 2 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
11758 : : {
11759 : 0 : {
11760 : 0 : tree captures[3] ATTRIBUTE_UNUSED = { _q21, _q20, _q51 };
11761 : 0 : tree res = generic_simplify_415 (loc, type, _p0, _p1, captures);
11762 : 0 : if (res) return res;
11763 : : }
11764 : : }
11765 : 2 : if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
11766 : : {
11767 : 0 : {
11768 : 0 : tree captures[3] ATTRIBUTE_UNUSED = { _q21, _q20, _q50 };
11769 : 0 : tree res = generic_simplify_415 (loc, type, _p0, _p1, captures);
11770 : 0 : if (res) return res;
11771 : : }
11772 : : }
11773 : : break;
11774 : : }
11775 : 1557 : default:;
11776 : : }
11777 : 1557 : switch (TREE_CODE (_q20))
11778 : : {
11779 : 127 : case BIT_NOT_EXPR:
11780 : 127 : {
11781 : 127 : tree _q30 = TREE_OPERAND (_q20, 0);
11782 : 127 : switch (TREE_CODE (_p1))
11783 : : {
11784 : 2 : case BIT_IOR_EXPR:
11785 : 2 : {
11786 : 2 : tree _q60 = TREE_OPERAND (_p1, 0);
11787 : 2 : tree _q61 = TREE_OPERAND (_p1, 1);
11788 : 2 : if ((_q60 == _q30 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q30, 0) && types_match (_q60, _q30)))
11789 : : {
11790 : 0 : switch (TREE_CODE (_q61))
11791 : : {
11792 : 0 : case BIT_NOT_EXPR:
11793 : 0 : {
11794 : 0 : tree _q80 = TREE_OPERAND (_q61, 0);
11795 : 0 : if ((_q80 == _q21 && ! TREE_SIDE_EFFECTS (_q80)) || (operand_equal_p (_q80, _q21, 0) && types_match (_q80, _q21)))
11796 : : {
11797 : 0 : {
11798 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _p0, _q30, _q21, _p1 };
11799 : 0 : tree res = generic_simplify_416 (loc, type, _p0, _p1, captures);
11800 : 0 : if (res) return res;
11801 : : }
11802 : : }
11803 : : break;
11804 : : }
11805 : : default:;
11806 : : }
11807 : : }
11808 : 2 : switch (TREE_CODE (_q60))
11809 : : {
11810 : 2 : case BIT_NOT_EXPR:
11811 : 2 : {
11812 : 2 : tree _q70 = TREE_OPERAND (_q60, 0);
11813 : 2 : if ((_q70 == _q21 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q21, 0) && types_match (_q70, _q21)))
11814 : : {
11815 : 2 : if ((_q61 == _q30 && ! TREE_SIDE_EFFECTS (_q61)) || (operand_equal_p (_q61, _q30, 0) && types_match (_q61, _q30)))
11816 : : {
11817 : 2 : {
11818 : 2 : tree captures[4] ATTRIBUTE_UNUSED = { _p0, _q30, _q21, _p1 };
11819 : 2 : tree res = generic_simplify_416 (loc, type, _p0, _p1, captures);
11820 : 2 : if (res) return res;
11821 : : }
11822 : : }
11823 : : }
11824 : : break;
11825 : : }
11826 : : default:;
11827 : : }
11828 : : break;
11829 : : }
11830 : : default:;
11831 : : }
11832 : : break;
11833 : : }
11834 : 1555 : default:;
11835 : : }
11836 : 1555 : switch (TREE_CODE (_q21))
11837 : : {
11838 : 0 : case BIT_NOT_EXPR:
11839 : 0 : {
11840 : 0 : tree _q40 = TREE_OPERAND (_q21, 0);
11841 : 0 : switch (TREE_CODE (_p1))
11842 : : {
11843 : 0 : case BIT_IOR_EXPR:
11844 : 0 : {
11845 : 0 : tree _q60 = TREE_OPERAND (_p1, 0);
11846 : 0 : tree _q61 = TREE_OPERAND (_p1, 1);
11847 : 0 : if ((_q60 == _q40 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q40, 0) && types_match (_q60, _q40)))
11848 : : {
11849 : 0 : switch (TREE_CODE (_q61))
11850 : : {
11851 : 0 : case BIT_NOT_EXPR:
11852 : 0 : {
11853 : 0 : tree _q80 = TREE_OPERAND (_q61, 0);
11854 : 0 : if ((_q80 == _q20 && ! TREE_SIDE_EFFECTS (_q80)) || (operand_equal_p (_q80, _q20, 0) && types_match (_q80, _q20)))
11855 : : {
11856 : 0 : {
11857 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _p0, _q40, _q20, _p1 };
11858 : 0 : tree res = generic_simplify_416 (loc, type, _p0, _p1, captures);
11859 : 0 : if (res) return res;
11860 : : }
11861 : : }
11862 : : break;
11863 : : }
11864 : : default:;
11865 : : }
11866 : : }
11867 : 0 : switch (TREE_CODE (_q60))
11868 : : {
11869 : 0 : case BIT_NOT_EXPR:
11870 : 0 : {
11871 : 0 : tree _q70 = TREE_OPERAND (_q60, 0);
11872 : 0 : if ((_q70 == _q20 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q20, 0) && types_match (_q70, _q20)))
11873 : : {
11874 : 0 : if ((_q61 == _q40 && ! TREE_SIDE_EFFECTS (_q61)) || (operand_equal_p (_q61, _q40, 0) && types_match (_q61, _q40)))
11875 : : {
11876 : 0 : {
11877 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _p0, _q40, _q20, _p1 };
11878 : 0 : tree res = generic_simplify_416 (loc, type, _p0, _p1, captures);
11879 : 0 : if (res) return res;
11880 : : }
11881 : : }
11882 : : }
11883 : : break;
11884 : : }
11885 : : default:;
11886 : : }
11887 : : break;
11888 : : }
11889 : : default:;
11890 : : }
11891 : : break;
11892 : : }
11893 : : default:;
11894 : : }
11895 : : break;
11896 : : }
11897 : 18185 : case BIT_XOR_EXPR:
11898 : 18185 : {
11899 : 18185 : tree _q20 = TREE_OPERAND (_p0, 0);
11900 : 18185 : tree _q21 = TREE_OPERAND (_p0, 1);
11901 : 18185 : switch (TREE_CODE (_p1))
11902 : : {
11903 : 133 : case BIT_IOR_EXPR:
11904 : 133 : {
11905 : 133 : tree _q50 = TREE_OPERAND (_p1, 0);
11906 : 133 : tree _q51 = TREE_OPERAND (_p1, 1);
11907 : 133 : if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
11908 : : {
11909 : 18 : {
11910 : 18 : tree captures[3] ATTRIBUTE_UNUSED = { _q50, _q20, _q21 };
11911 : 18 : tree res = generic_simplify_415 (loc, type, _p0, _p1, captures);
11912 : 18 : if (res) return res;
11913 : : }
11914 : : }
11915 : 133 : if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
11916 : : {
11917 : 33 : {
11918 : 33 : tree captures[3] ATTRIBUTE_UNUSED = { _q50, _q21, _q20 };
11919 : 33 : tree res = generic_simplify_415 (loc, type, _p0, _p1, captures);
11920 : 33 : if (res) return res;
11921 : : }
11922 : : }
11923 : 133 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
11924 : : {
11925 : 30 : {
11926 : 30 : tree captures[3] ATTRIBUTE_UNUSED = { _q51, _q20, _q21 };
11927 : 30 : tree res = generic_simplify_415 (loc, type, _p0, _p1, captures);
11928 : 30 : if (res) return res;
11929 : : }
11930 : : }
11931 : 133 : if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
11932 : : {
11933 : 21 : {
11934 : 21 : tree captures[3] ATTRIBUTE_UNUSED = { _q51, _q21, _q20 };
11935 : 21 : tree res = generic_simplify_415 (loc, type, _p0, _p1, captures);
11936 : 21 : if (res) return res;
11937 : : }
11938 : : }
11939 : : break;
11940 : : }
11941 : 18185 : default:;
11942 : : }
11943 : 18185 : if ((_p1 == _q21 && ! TREE_SIDE_EFFECTS (_p1)) || (operand_equal_p (_p1, _q21, 0) && types_match (_p1, _q21)))
11944 : : {
11945 : 31 : {
11946 : 31 : tree captures[3] ATTRIBUTE_UNUSED = { _p0, _q20, _q21 };
11947 : 31 : tree res = generic_simplify_164 (loc, type, _p0, _p1, captures, BIT_AND_EXPR, BIT_XOR_EXPR);
11948 : 31 : if (res) return res;
11949 : : }
11950 : : }
11951 : 18154 : if ((_p1 == _q20 && ! TREE_SIDE_EFFECTS (_p1)) || (operand_equal_p (_p1, _q20, 0) && types_match (_p1, _q20)))
11952 : : {
11953 : 2 : {
11954 : 2 : tree captures[3] ATTRIBUTE_UNUSED = { _p0, _q21, _q20 };
11955 : 2 : tree res = generic_simplify_164 (loc, type, _p0, _p1, captures, BIT_AND_EXPR, BIT_XOR_EXPR);
11956 : 2 : if (res) return res;
11957 : : }
11958 : : }
11959 : : break;
11960 : : }
11961 : 1788616 : CASE_CONVERT:
11962 : 1788616 : {
11963 : 1788616 : tree _q20 = TREE_OPERAND (_p0, 0);
11964 : 1788616 : switch (TREE_CODE (_q20))
11965 : : {
11966 : 152 : case BIT_NOT_EXPR:
11967 : 152 : {
11968 : 152 : tree _q30 = TREE_OPERAND (_q20, 0);
11969 : 152 : switch (TREE_CODE (_p1))
11970 : : {
11971 : 28 : CASE_CONVERT:
11972 : 28 : {
11973 : 28 : tree _q50 = TREE_OPERAND (_p1, 0);
11974 : 28 : switch (TREE_CODE (_q50))
11975 : : {
11976 : 0 : case BIT_NOT_EXPR:
11977 : 0 : {
11978 : 0 : tree _q60 = TREE_OPERAND (_q50, 0);
11979 : 0 : {
11980 : 0 : tree captures[2] ATTRIBUTE_UNUSED = { _q30, _q60 };
11981 : 0 : tree res = generic_simplify_92 (loc, type, _p0, _p1, captures, BIT_AND_EXPR, BIT_IOR_EXPR);
11982 : 0 : if (res) return res;
11983 : : }
11984 : 0 : break;
11985 : : }
11986 : : default:;
11987 : : }
11988 : : break;
11989 : : }
11990 : 1 : case BIT_NOT_EXPR:
11991 : 1 : {
11992 : 1 : tree _q50 = TREE_OPERAND (_p1, 0);
11993 : 1 : {
11994 : 1 : tree captures[2] ATTRIBUTE_UNUSED = { _q30, _q50 };
11995 : 1 : tree res = generic_simplify_92 (loc, type, _p0, _p1, captures, BIT_AND_EXPR, BIT_IOR_EXPR);
11996 : 1 : if (res) return res;
11997 : : }
11998 : 0 : break;
11999 : : }
12000 : : default:;
12001 : : }
12002 : : break;
12003 : : }
12004 : : default:;
12005 : : }
12006 : : break;
12007 : : }
12008 : 5732259 : default:;
12009 : : }
12010 : 5732259 : switch (TREE_CODE (_p1))
12011 : : {
12012 : 254 : case BIT_XOR_EXPR:
12013 : 254 : {
12014 : 254 : tree _q30 = TREE_OPERAND (_p1, 0);
12015 : 254 : tree _q31 = TREE_OPERAND (_p1, 1);
12016 : 254 : if ((_q31 == _p0 && ! TREE_SIDE_EFFECTS (_q31)) || (operand_equal_p (_q31, _p0, 0) && types_match (_q31, _p0)))
12017 : : {
12018 : 0 : {
12019 : 0 : tree captures[3] ATTRIBUTE_UNUSED = { _p1, _q30, _p0 };
12020 : 0 : tree res = generic_simplify_164 (loc, type, _p0, _p1, captures, BIT_AND_EXPR, BIT_XOR_EXPR);
12021 : 0 : if (res) return res;
12022 : : }
12023 : : }
12024 : 254 : if ((_q30 == _p0 && ! TREE_SIDE_EFFECTS (_q30)) || (operand_equal_p (_q30, _p0, 0) && types_match (_q30, _p0)))
12025 : : {
12026 : 1 : {
12027 : 1 : tree captures[3] ATTRIBUTE_UNUSED = { _p1, _q31, _p0 };
12028 : 1 : tree res = generic_simplify_164 (loc, type, _p0, _p1, captures, BIT_AND_EXPR, BIT_XOR_EXPR);
12029 : 1 : if (res) return res;
12030 : : }
12031 : : }
12032 : : break;
12033 : : }
12034 : 5732258 : default:;
12035 : : }
12036 : 5732258 : switch (TREE_CODE (_p0))
12037 : : {
12038 : 1788615 : CASE_CONVERT:
12039 : 1788615 : {
12040 : 1788615 : tree _q20 = TREE_OPERAND (_p0, 0);
12041 : 1788615 : switch (TREE_CODE (_q20))
12042 : : {
12043 : 171 : case BIT_IOR_EXPR:
12044 : 171 : {
12045 : 171 : tree _q30 = TREE_OPERAND (_q20, 0);
12046 : 171 : tree _q31 = TREE_OPERAND (_q20, 1);
12047 : 171 : switch (TREE_CODE (_p1))
12048 : : {
12049 : 12 : CASE_CONVERT:
12050 : 12 : {
12051 : 12 : tree _q60 = TREE_OPERAND (_p1, 0);
12052 : 12 : switch (TREE_CODE (_q60))
12053 : : {
12054 : 0 : case BIT_IOR_EXPR:
12055 : 0 : {
12056 : 0 : tree _q70 = TREE_OPERAND (_q60, 0);
12057 : 0 : tree _q71 = TREE_OPERAND (_q60, 1);
12058 : 0 : if ((_q70 == _q30 && ! TREE_SIDE_EFFECTS (_q70)) || operand_equal_p (_q70, _q30, 0))
12059 : : {
12060 : 0 : {
12061 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q30, _q31, _q71, _q30 };
12062 : 0 : tree res = generic_simplify_94 (loc, type, _p0, _p1, captures, BIT_AND_EXPR, BIT_IOR_EXPR);
12063 : 0 : if (res) return res;
12064 : : }
12065 : : }
12066 : 0 : if ((_q71 == _q30 && ! TREE_SIDE_EFFECTS (_q71)) || operand_equal_p (_q71, _q30, 0))
12067 : : {
12068 : 0 : {
12069 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q30, _q31, _q70, _q30 };
12070 : 0 : tree res = generic_simplify_94 (loc, type, _p0, _p1, captures, BIT_AND_EXPR, BIT_IOR_EXPR);
12071 : 0 : if (res) return res;
12072 : : }
12073 : : }
12074 : 0 : if ((_q70 == _q31 && ! TREE_SIDE_EFFECTS (_q70)) || operand_equal_p (_q70, _q31, 0))
12075 : : {
12076 : 0 : {
12077 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q31, _q30, _q71, _q31 };
12078 : 0 : tree res = generic_simplify_94 (loc, type, _p0, _p1, captures, BIT_AND_EXPR, BIT_IOR_EXPR);
12079 : 0 : if (res) return res;
12080 : : }
12081 : : }
12082 : 0 : if ((_q71 == _q31 && ! TREE_SIDE_EFFECTS (_q71)) || operand_equal_p (_q71, _q31, 0))
12083 : : {
12084 : 0 : {
12085 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q31, _q30, _q70, _q31 };
12086 : 0 : tree res = generic_simplify_94 (loc, type, _p0, _p1, captures, BIT_AND_EXPR, BIT_IOR_EXPR);
12087 : 0 : if (res) return res;
12088 : : }
12089 : : }
12090 : : break;
12091 : : }
12092 : : default:;
12093 : : }
12094 : : break;
12095 : : }
12096 : : default:;
12097 : : }
12098 : : break;
12099 : : }
12100 : 40 : case BIT_AND_EXPR:
12101 : 40 : {
12102 : 40 : tree _q30 = TREE_OPERAND (_q20, 0);
12103 : 40 : tree _q31 = TREE_OPERAND (_q20, 1);
12104 : 40 : switch (TREE_CODE (_p1))
12105 : : {
12106 : 0 : CASE_CONVERT:
12107 : 0 : {
12108 : 0 : tree _q60 = TREE_OPERAND (_p1, 0);
12109 : 0 : if ((_q60 == _q31 && ! TREE_SIDE_EFFECTS (_q60)) || operand_equal_p (_q60, _q31, 0))
12110 : : {
12111 : 0 : {
12112 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _p0, _q30, _q31, _q31 };
12113 : 0 : tree res = generic_simplify_78 (loc, type, _p0, _p1, captures, BIT_AND_EXPR);
12114 : 0 : if (res) return res;
12115 : : }
12116 : : }
12117 : 0 : if ((_q60 == _q30 && ! TREE_SIDE_EFFECTS (_q60)) || operand_equal_p (_q60, _q30, 0))
12118 : : {
12119 : 0 : {
12120 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _p0, _q31, _q30, _q30 };
12121 : 0 : tree res = generic_simplify_78 (loc, type, _p0, _p1, captures, BIT_AND_EXPR);
12122 : 0 : if (res) return res;
12123 : : }
12124 : : }
12125 : : break;
12126 : : }
12127 : 40 : default:;
12128 : : }
12129 : 40 : if ((_p1 == _q31 && ! TREE_SIDE_EFFECTS (_p1)) || operand_equal_p (_p1, _q31, 0))
12130 : : {
12131 : 0 : {
12132 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _p0, _q30, _q31, _q31 };
12133 : 0 : tree res = generic_simplify_78 (loc, type, _p0, _p1, captures, BIT_AND_EXPR);
12134 : 0 : if (res) return res;
12135 : : }
12136 : : }
12137 : 40 : if ((_p1 == _q30 && ! TREE_SIDE_EFFECTS (_p1)) || operand_equal_p (_p1, _q30, 0))
12138 : : {
12139 : 0 : {
12140 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _p0, _q31, _q30, _q30 };
12141 : 0 : tree res = generic_simplify_78 (loc, type, _p0, _p1, captures, BIT_AND_EXPR);
12142 : 0 : if (res) return res;
12143 : : }
12144 : : }
12145 : : break;
12146 : : }
12147 : 1788615 : default:;
12148 : : }
12149 : 1788615 : switch (TREE_CODE (_p1))
12150 : : {
12151 : 732870 : CASE_CONVERT:
12152 : 732870 : {
12153 : 732870 : tree _q40 = TREE_OPERAND (_p1, 0);
12154 : 732870 : switch (TREE_CODE (_q40))
12155 : : {
12156 : 0 : case BIT_AND_EXPR:
12157 : 0 : {
12158 : 0 : tree _q50 = TREE_OPERAND (_q40, 0);
12159 : 0 : tree _q51 = TREE_OPERAND (_q40, 1);
12160 : 0 : if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || operand_equal_p (_q51, _q20, 0))
12161 : : {
12162 : 0 : {
12163 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _p1, _q50, _q51, _q20 };
12164 : 0 : tree res = generic_simplify_95 (loc, type, _p0, _p1, captures, BIT_AND_EXPR);
12165 : 0 : if (res) return res;
12166 : : }
12167 : : }
12168 : 0 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || operand_equal_p (_q50, _q20, 0))
12169 : : {
12170 : 0 : {
12171 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _p1, _q51, _q50, _q20 };
12172 : 0 : tree res = generic_simplify_95 (loc, type, _p0, _p1, captures, BIT_AND_EXPR);
12173 : 0 : if (res) return res;
12174 : : }
12175 : : }
12176 : : break;
12177 : : }
12178 : : default:;
12179 : : }
12180 : : break;
12181 : : }
12182 : 47 : case BIT_AND_EXPR:
12183 : 47 : {
12184 : 47 : tree _q40 = TREE_OPERAND (_p1, 0);
12185 : 47 : tree _q41 = TREE_OPERAND (_p1, 1);
12186 : 47 : if ((_q41 == _q20 && ! TREE_SIDE_EFFECTS (_q41)) || operand_equal_p (_q41, _q20, 0))
12187 : : {
12188 : 0 : {
12189 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _p1, _q40, _q41, _q20 };
12190 : 0 : tree res = generic_simplify_95 (loc, type, _p0, _p1, captures, BIT_AND_EXPR);
12191 : 0 : if (res) return res;
12192 : : }
12193 : : }
12194 : 47 : if ((_q40 == _q20 && ! TREE_SIDE_EFFECTS (_q40)) || operand_equal_p (_q40, _q20, 0))
12195 : : {
12196 : 0 : {
12197 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _p1, _q41, _q40, _q20 };
12198 : 0 : tree res = generic_simplify_95 (loc, type, _p0, _p1, captures, BIT_AND_EXPR);
12199 : 0 : if (res) return res;
12200 : : }
12201 : : }
12202 : : break;
12203 : : }
12204 : : default:;
12205 : : }
12206 : : break;
12207 : : }
12208 : 1555 : case BIT_IOR_EXPR:
12209 : 1555 : {
12210 : 1555 : tree _q20 = TREE_OPERAND (_p0, 0);
12211 : 1555 : tree _q21 = TREE_OPERAND (_p0, 1);
12212 : 1555 : switch (TREE_CODE (_p1))
12213 : : {
12214 : 9 : case BIT_IOR_EXPR:
12215 : 9 : {
12216 : 9 : tree _q50 = TREE_OPERAND (_p1, 0);
12217 : 9 : tree _q51 = TREE_OPERAND (_p1, 1);
12218 : 9 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || operand_equal_p (_q50, _q20, 0))
12219 : : {
12220 : 0 : {
12221 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q20, _q21, _q51, _q20 };
12222 : 0 : tree res = generic_simplify_94 (loc, type, _p0, _p1, captures, BIT_AND_EXPR, BIT_IOR_EXPR);
12223 : 0 : if (res) return res;
12224 : : }
12225 : : }
12226 : 9 : if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || operand_equal_p (_q51, _q20, 0))
12227 : : {
12228 : 0 : {
12229 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q20, _q21, _q50, _q20 };
12230 : 0 : tree res = generic_simplify_94 (loc, type, _p0, _p1, captures, BIT_AND_EXPR, BIT_IOR_EXPR);
12231 : 0 : if (res) return res;
12232 : : }
12233 : : }
12234 : 9 : if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || operand_equal_p (_q50, _q21, 0))
12235 : : {
12236 : 0 : {
12237 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q21, _q20, _q51, _q21 };
12238 : 0 : tree res = generic_simplify_94 (loc, type, _p0, _p1, captures, BIT_AND_EXPR, BIT_IOR_EXPR);
12239 : 0 : if (res) return res;
12240 : : }
12241 : : }
12242 : 9 : if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || operand_equal_p (_q51, _q21, 0))
12243 : : {
12244 : 0 : {
12245 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q21, _q20, _q50, _q21 };
12246 : 0 : tree res = generic_simplify_94 (loc, type, _p0, _p1, captures, BIT_AND_EXPR, BIT_IOR_EXPR);
12247 : 0 : if (res) return res;
12248 : : }
12249 : : }
12250 : : break;
12251 : : }
12252 : : default:;
12253 : : }
12254 : : break;
12255 : : }
12256 : 5732258 : default:;
12257 : : }
12258 : 5732258 : switch (TREE_CODE (_p1))
12259 : : {
12260 : 823631 : CASE_CONVERT:
12261 : 823631 : {
12262 : 823631 : tree _q30 = TREE_OPERAND (_p1, 0);
12263 : 823631 : switch (TREE_CODE (_q30))
12264 : : {
12265 : 8 : case BIT_AND_EXPR:
12266 : 8 : {
12267 : 8 : tree _q40 = TREE_OPERAND (_q30, 0);
12268 : 8 : tree _q41 = TREE_OPERAND (_q30, 1);
12269 : 8 : if ((_q41 == _p0 && ! TREE_SIDE_EFFECTS (_q41)) || operand_equal_p (_q41, _p0, 0))
12270 : : {
12271 : 0 : {
12272 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _p1, _q40, _q41, _p0 };
12273 : 0 : tree res = generic_simplify_95 (loc, type, _p0, _p1, captures, BIT_AND_EXPR);
12274 : 0 : if (res) return res;
12275 : : }
12276 : : }
12277 : 8 : if ((_q40 == _p0 && ! TREE_SIDE_EFFECTS (_q40)) || operand_equal_p (_q40, _p0, 0))
12278 : : {
12279 : 0 : {
12280 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _p1, _q41, _q40, _p0 };
12281 : 0 : tree res = generic_simplify_95 (loc, type, _p0, _p1, captures, BIT_AND_EXPR);
12282 : 0 : if (res) return res;
12283 : : }
12284 : : }
12285 : : break;
12286 : : }
12287 : : default:;
12288 : : }
12289 : : break;
12290 : : }
12291 : 5732258 : default:;
12292 : : }
12293 : 5732258 : switch (TREE_CODE (_p0))
12294 : : {
12295 : 1621 : case BIT_AND_EXPR:
12296 : 1621 : {
12297 : 1621 : tree _q20 = TREE_OPERAND (_p0, 0);
12298 : 1621 : tree _q21 = TREE_OPERAND (_p0, 1);
12299 : 1621 : switch (TREE_CODE (_p1))
12300 : : {
12301 : 82 : CASE_CONVERT:
12302 : 82 : {
12303 : 82 : tree _q50 = TREE_OPERAND (_p1, 0);
12304 : 82 : if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || operand_equal_p (_q50, _q21, 0))
12305 : : {
12306 : 0 : {
12307 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _q21 };
12308 : 0 : tree res = generic_simplify_78 (loc, type, _p0, _p1, captures, BIT_AND_EXPR);
12309 : 0 : if (res) return res;
12310 : : }
12311 : : }
12312 : 82 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || operand_equal_p (_q50, _q20, 0))
12313 : : {
12314 : 0 : {
12315 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _q20 };
12316 : 0 : tree res = generic_simplify_78 (loc, type, _p0, _p1, captures, BIT_AND_EXPR);
12317 : 0 : if (res) return res;
12318 : : }
12319 : : }
12320 : : break;
12321 : : }
12322 : 1621 : default:;
12323 : : }
12324 : 1621 : if ((_p1 == _q21 && ! TREE_SIDE_EFFECTS (_p1)) || operand_equal_p (_p1, _q21, 0))
12325 : : {
12326 : 0 : {
12327 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _q21 };
12328 : 0 : tree res = generic_simplify_78 (loc, type, _p0, _p1, captures, BIT_AND_EXPR);
12329 : 0 : if (res) return res;
12330 : : }
12331 : : }
12332 : 1621 : if ((_p1 == _q20 && ! TREE_SIDE_EFFECTS (_p1)) || operand_equal_p (_p1, _q20, 0))
12333 : : {
12334 : 0 : {
12335 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _q20 };
12336 : 0 : tree res = generic_simplify_78 (loc, type, _p0, _p1, captures, BIT_AND_EXPR);
12337 : 0 : if (res) return res;
12338 : : }
12339 : : }
12340 : 1621 : {
12341 : 1621 : tree captures[3] ATTRIBUTE_UNUSED = { _q20, _q21, _p1 };
12342 : 1621 : tree res = generic_simplify_417 (loc, type, _p0, _p1, captures);
12343 : 1621 : if (res) return res;
12344 : : }
12345 : 1613 : switch (TREE_CODE (_p1))
12346 : : {
12347 : 82 : CASE_CONVERT:
12348 : 82 : {
12349 : 82 : tree _q50 = TREE_OPERAND (_p1, 0);
12350 : 82 : switch (TREE_CODE (_q50))
12351 : : {
12352 : 8 : case BIT_AND_EXPR:
12353 : 8 : {
12354 : 8 : tree _q60 = TREE_OPERAND (_q50, 0);
12355 : 8 : tree _q61 = TREE_OPERAND (_q50, 1);
12356 : 8 : if ((_q60 == _q20 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q20, 0) && types_match (_q60, _q20)))
12357 : : {
12358 : 0 : {
12359 : 0 : tree captures[7] ATTRIBUTE_UNUSED = { _p0, _p0, _q20, _q21, _p1, _q50, _q61 };
12360 : 0 : tree res = generic_simplify_97 (loc, type, _p0, _p1, captures, BIT_AND_EXPR);
12361 : 0 : if (res) return res;
12362 : : }
12363 : : }
12364 : 8 : if ((_q61 == _q20 && ! TREE_SIDE_EFFECTS (_q61)) || (operand_equal_p (_q61, _q20, 0) && types_match (_q61, _q20)))
12365 : : {
12366 : 0 : {
12367 : 0 : tree captures[7] ATTRIBUTE_UNUSED = { _p0, _p0, _q20, _q21, _p1, _q50, _q60 };
12368 : 0 : tree res = generic_simplify_97 (loc, type, _p0, _p1, captures, BIT_AND_EXPR);
12369 : 0 : if (res) return res;
12370 : : }
12371 : : }
12372 : 8 : if ((_q60 == _q21 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q21, 0) && types_match (_q60, _q21)))
12373 : : {
12374 : 0 : {
12375 : 0 : tree captures[7] ATTRIBUTE_UNUSED = { _p0, _p0, _q21, _q20, _p1, _q50, _q61 };
12376 : 0 : tree res = generic_simplify_97 (loc, type, _p0, _p1, captures, BIT_AND_EXPR);
12377 : 0 : if (res) return res;
12378 : : }
12379 : : }
12380 : 8 : if ((_q61 == _q21 && ! TREE_SIDE_EFFECTS (_q61)) || (operand_equal_p (_q61, _q21, 0) && types_match (_q61, _q21)))
12381 : : {
12382 : 0 : {
12383 : 0 : tree captures[7] ATTRIBUTE_UNUSED = { _p0, _p0, _q21, _q20, _p1, _q50, _q60 };
12384 : 0 : tree res = generic_simplify_97 (loc, type, _p0, _p1, captures, BIT_AND_EXPR);
12385 : 0 : if (res) return res;
12386 : : }
12387 : : }
12388 : : break;
12389 : : }
12390 : : default:;
12391 : : }
12392 : : break;
12393 : : }
12394 : 12 : case BIT_AND_EXPR:
12395 : 12 : {
12396 : 12 : tree _q50 = TREE_OPERAND (_p1, 0);
12397 : 12 : tree _q51 = TREE_OPERAND (_p1, 1);
12398 : 12 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
12399 : : {
12400 : 0 : {
12401 : 0 : tree captures[7] ATTRIBUTE_UNUSED = { _p0, _p0, _q20, _q21, _p1, _p1, _q51 };
12402 : 0 : tree res = generic_simplify_98 (loc, type, _p0, _p1, captures, BIT_AND_EXPR);
12403 : 0 : if (res) return res;
12404 : : }
12405 : : }
12406 : 12 : if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
12407 : : {
12408 : 0 : {
12409 : 0 : tree captures[7] ATTRIBUTE_UNUSED = { _p0, _p0, _q20, _q21, _p1, _p1, _q50 };
12410 : 0 : tree res = generic_simplify_98 (loc, type, _p0, _p1, captures, BIT_AND_EXPR);
12411 : 0 : if (res) return res;
12412 : : }
12413 : : }
12414 : 12 : if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
12415 : : {
12416 : 0 : {
12417 : 0 : tree captures[7] ATTRIBUTE_UNUSED = { _p0, _p0, _q21, _q20, _p1, _p1, _q51 };
12418 : 0 : tree res = generic_simplify_98 (loc, type, _p0, _p1, captures, BIT_AND_EXPR);
12419 : 0 : if (res) return res;
12420 : : }
12421 : : }
12422 : 12 : if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
12423 : : {
12424 : 0 : {
12425 : 0 : tree captures[7] ATTRIBUTE_UNUSED = { _p0, _p0, _q21, _q20, _p1, _p1, _q50 };
12426 : 0 : tree res = generic_simplify_98 (loc, type, _p0, _p1, captures, BIT_AND_EXPR);
12427 : 0 : if (res) return res;
12428 : : }
12429 : : }
12430 : : break;
12431 : : }
12432 : : default:;
12433 : : }
12434 : : break;
12435 : : }
12436 : 5732250 : default:;
12437 : : }
12438 : 5732250 : switch (TREE_CODE (_p1))
12439 : : {
12440 : 76 : case BIT_AND_EXPR:
12441 : 76 : {
12442 : 76 : tree _q30 = TREE_OPERAND (_p1, 0);
12443 : 76 : tree _q31 = TREE_OPERAND (_p1, 1);
12444 : 76 : if ((_q31 == _p0 && ! TREE_SIDE_EFFECTS (_q31)) || operand_equal_p (_q31, _p0, 0))
12445 : : {
12446 : 0 : {
12447 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _p1, _q30, _q31, _p0 };
12448 : 0 : tree res = generic_simplify_95 (loc, type, _p0, _p1, captures, BIT_AND_EXPR);
12449 : 0 : if (res) return res;
12450 : : }
12451 : : }
12452 : 76 : if ((_q30 == _p0 && ! TREE_SIDE_EFFECTS (_q30)) || operand_equal_p (_q30, _p0, 0))
12453 : : {
12454 : 0 : {
12455 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _p1, _q31, _q30, _p0 };
12456 : 0 : tree res = generic_simplify_95 (loc, type, _p0, _p1, captures, BIT_AND_EXPR);
12457 : 0 : if (res) return res;
12458 : : }
12459 : : }
12460 : 76 : {
12461 : 76 : tree captures[3] ATTRIBUTE_UNUSED = { _q30, _q31, _p0 };
12462 : 76 : tree res = generic_simplify_417 (loc, type, _p0, _p1, captures);
12463 : 76 : if (res) return res;
12464 : : }
12465 : 76 : break;
12466 : : }
12467 : 5732250 : default:;
12468 : : }
12469 : 5732250 : switch (TREE_CODE (_p0))
12470 : : {
12471 : 1788615 : CASE_CONVERT:
12472 : 1788615 : {
12473 : 1788615 : tree _q20 = TREE_OPERAND (_p0, 0);
12474 : 1788615 : switch (TREE_CODE (_q20))
12475 : : {
12476 : 40 : case BIT_AND_EXPR:
12477 : 40 : {
12478 : 40 : tree _q30 = TREE_OPERAND (_q20, 0);
12479 : 40 : tree _q31 = TREE_OPERAND (_q20, 1);
12480 : 40 : switch (TREE_CODE (_p1))
12481 : : {
12482 : 0 : CASE_CONVERT:
12483 : 0 : {
12484 : 0 : tree _q60 = TREE_OPERAND (_p1, 0);
12485 : 0 : switch (TREE_CODE (_q60))
12486 : : {
12487 : 0 : case BIT_AND_EXPR:
12488 : 0 : {
12489 : 0 : tree _q70 = TREE_OPERAND (_q60, 0);
12490 : 0 : tree _q71 = TREE_OPERAND (_q60, 1);
12491 : 0 : if ((_q70 == _q30 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q30, 0) && types_match (_q70, _q30)))
12492 : : {
12493 : 0 : {
12494 : 0 : tree captures[7] ATTRIBUTE_UNUSED = { _p0, _q20, _q30, _q31, _p1, _q60, _q71 };
12495 : 0 : tree res = generic_simplify_99 (loc, type, _p0, _p1, captures, BIT_AND_EXPR);
12496 : 0 : if (res) return res;
12497 : : }
12498 : : }
12499 : 0 : if ((_q71 == _q30 && ! TREE_SIDE_EFFECTS (_q71)) || (operand_equal_p (_q71, _q30, 0) && types_match (_q71, _q30)))
12500 : : {
12501 : 0 : {
12502 : 0 : tree captures[7] ATTRIBUTE_UNUSED = { _p0, _q20, _q30, _q31, _p1, _q60, _q70 };
12503 : 0 : tree res = generic_simplify_99 (loc, type, _p0, _p1, captures, BIT_AND_EXPR);
12504 : 0 : if (res) return res;
12505 : : }
12506 : : }
12507 : 0 : if ((_q70 == _q31 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q31, 0) && types_match (_q70, _q31)))
12508 : : {
12509 : 0 : {
12510 : 0 : tree captures[7] ATTRIBUTE_UNUSED = { _p0, _q20, _q31, _q30, _p1, _q60, _q71 };
12511 : 0 : tree res = generic_simplify_99 (loc, type, _p0, _p1, captures, BIT_AND_EXPR);
12512 : 0 : if (res) return res;
12513 : : }
12514 : : }
12515 : 0 : if ((_q71 == _q31 && ! TREE_SIDE_EFFECTS (_q71)) || (operand_equal_p (_q71, _q31, 0) && types_match (_q71, _q31)))
12516 : : {
12517 : 0 : {
12518 : 0 : tree captures[7] ATTRIBUTE_UNUSED = { _p0, _q20, _q31, _q30, _p1, _q60, _q70 };
12519 : 0 : tree res = generic_simplify_99 (loc, type, _p0, _p1, captures, BIT_AND_EXPR);
12520 : 0 : if (res) return res;
12521 : : }
12522 : : }
12523 : : break;
12524 : : }
12525 : : default:;
12526 : : }
12527 : : break;
12528 : : }
12529 : 0 : case BIT_AND_EXPR:
12530 : 0 : {
12531 : 0 : tree _q60 = TREE_OPERAND (_p1, 0);
12532 : 0 : tree _q61 = TREE_OPERAND (_p1, 1);
12533 : 0 : if ((_q60 == _q30 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q30, 0) && types_match (_q60, _q30)))
12534 : : {
12535 : 0 : {
12536 : 0 : tree captures[7] ATTRIBUTE_UNUSED = { _p0, _q20, _q30, _q31, _p1, _p1, _q61 };
12537 : 0 : tree res = generic_simplify_100 (loc, type, _p0, _p1, captures, BIT_AND_EXPR);
12538 : 0 : if (res) return res;
12539 : : }
12540 : : }
12541 : 0 : if ((_q61 == _q30 && ! TREE_SIDE_EFFECTS (_q61)) || (operand_equal_p (_q61, _q30, 0) && types_match (_q61, _q30)))
12542 : : {
12543 : 0 : {
12544 : 0 : tree captures[7] ATTRIBUTE_UNUSED = { _p0, _q20, _q30, _q31, _p1, _p1, _q60 };
12545 : 0 : tree res = generic_simplify_100 (loc, type, _p0, _p1, captures, BIT_AND_EXPR);
12546 : 0 : if (res) return res;
12547 : : }
12548 : : }
12549 : 0 : if ((_q60 == _q31 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q31, 0) && types_match (_q60, _q31)))
12550 : : {
12551 : 0 : {
12552 : 0 : tree captures[7] ATTRIBUTE_UNUSED = { _p0, _q20, _q31, _q30, _p1, _p1, _q61 };
12553 : 0 : tree res = generic_simplify_100 (loc, type, _p0, _p1, captures, BIT_AND_EXPR);
12554 : 0 : if (res) return res;
12555 : : }
12556 : : }
12557 : 0 : if ((_q61 == _q31 && ! TREE_SIDE_EFFECTS (_q61)) || (operand_equal_p (_q61, _q31, 0) && types_match (_q61, _q31)))
12558 : : {
12559 : 0 : {
12560 : 0 : tree captures[7] ATTRIBUTE_UNUSED = { _p0, _q20, _q31, _q30, _p1, _p1, _q60 };
12561 : 0 : tree res = generic_simplify_100 (loc, type, _p0, _p1, captures, BIT_AND_EXPR);
12562 : 0 : if (res) return res;
12563 : : }
12564 : : }
12565 : : break;
12566 : : }
12567 : : default:;
12568 : : }
12569 : : break;
12570 : : }
12571 : 1788615 : default:;
12572 : : }
12573 : 1788615 : switch (TREE_CODE (_p1))
12574 : : {
12575 : 732870 : CASE_CONVERT:
12576 : 732870 : {
12577 : 732870 : tree _q40 = TREE_OPERAND (_p1, 0);
12578 : 732870 : {
12579 : 732870 : tree captures[4] ATTRIBUTE_UNUSED = { _p0, _q20, _p1, _q40 };
12580 : 732870 : tree res = generic_simplify_101 (loc, type, _p0, _p1, captures, BIT_AND_EXPR);
12581 : 732870 : if (res) return res;
12582 : : }
12583 : 732870 : break;
12584 : : }
12585 : 1788615 : default:;
12586 : : }
12587 : 1788615 : {
12588 : 1788615 : tree captures[4] ATTRIBUTE_UNUSED = { _p0, _q20, _p1, _p1 };
12589 : 1788615 : tree res = generic_simplify_102 (loc, type, _p0, _p1, captures, BIT_AND_EXPR);
12590 : 1788615 : if (res) return res;
12591 : : }
12592 : 1788615 : break;
12593 : : }
12594 : 1555 : case BIT_IOR_EXPR:
12595 : 1555 : {
12596 : 1555 : tree _q20 = TREE_OPERAND (_p0, 0);
12597 : 1555 : tree _q21 = TREE_OPERAND (_p0, 1);
12598 : 1555 : if ((_p1 == _q20 && ! TREE_SIDE_EFFECTS (_p1)) || (operand_equal_p (_p1, _q20, 0) && types_match (_p1, _q20)))
12599 : : {
12600 : 2 : {
12601 : 2 : tree captures[2] ATTRIBUTE_UNUSED = { _q20, _q21 };
12602 : 2 : tree res = generic_simplify_103 (loc, type, _p0, _p1, captures, BIT_AND_EXPR, BIT_IOR_EXPR);
12603 : 2 : if (res) return res;
12604 : : }
12605 : : }
12606 : 1553 : if ((_p1 == _q21 && ! TREE_SIDE_EFFECTS (_p1)) || (operand_equal_p (_p1, _q21, 0) && types_match (_p1, _q21)))
12607 : : {
12608 : 4 : {
12609 : 4 : tree captures[2] ATTRIBUTE_UNUSED = { _q21, _q20 };
12610 : 4 : tree res = generic_simplify_103 (loc, type, _p0, _p1, captures, BIT_AND_EXPR, BIT_IOR_EXPR);
12611 : 4 : if (res) return res;
12612 : : }
12613 : : }
12614 : 1549 : {
12615 : 1549 : tree captures[3] ATTRIBUTE_UNUSED = { _q20, _q21, _p1 };
12616 : 1549 : tree res = generic_simplify_104 (loc, type, _p0, _p1, captures, BIT_AND_EXPR, BIT_IOR_EXPR);
12617 : 1549 : if (res) return res;
12618 : : }
12619 : 1544 : {
12620 : 1544 : tree captures[3] ATTRIBUTE_UNUSED = { _q21, _q20, _p1 };
12621 : 1544 : tree res = generic_simplify_104 (loc, type, _p0, _p1, captures, BIT_AND_EXPR, BIT_IOR_EXPR);
12622 : 1544 : if (res) return res;
12623 : : }
12624 : 1544 : switch (TREE_CODE (_p1))
12625 : : {
12626 : 1 : case BIT_AND_EXPR:
12627 : 1 : {
12628 : 1 : tree _q50 = TREE_OPERAND (_p1, 0);
12629 : 1 : tree _q51 = TREE_OPERAND (_p1, 1);
12630 : 1 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
12631 : : {
12632 : 1 : {
12633 : 1 : tree captures[4] ATTRIBUTE_UNUSED = { _q20, _q21, _p1, _q51 };
12634 : 1 : tree res = generic_simplify_105 (loc, type, _p0, _p1, captures, BIT_AND_EXPR, BIT_IOR_EXPR);
12635 : 1 : if (res) return res;
12636 : : }
12637 : : }
12638 : 0 : if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
12639 : : {
12640 : 0 : {
12641 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q20, _q21, _p1, _q50 };
12642 : 0 : tree res = generic_simplify_105 (loc, type, _p0, _p1, captures, BIT_AND_EXPR, BIT_IOR_EXPR);
12643 : 0 : if (res) return res;
12644 : : }
12645 : : }
12646 : 0 : if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
12647 : : {
12648 : 0 : {
12649 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q21, _q20, _p1, _q51 };
12650 : 0 : tree res = generic_simplify_105 (loc, type, _p0, _p1, captures, BIT_AND_EXPR, BIT_IOR_EXPR);
12651 : 0 : if (res) return res;
12652 : : }
12653 : : }
12654 : 0 : if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
12655 : : {
12656 : 0 : {
12657 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q21, _q20, _p1, _q50 };
12658 : 0 : tree res = generic_simplify_105 (loc, type, _p0, _p1, captures, BIT_AND_EXPR, BIT_IOR_EXPR);
12659 : 0 : if (res) return res;
12660 : : }
12661 : : }
12662 : : break;
12663 : : }
12664 : 168 : case BIT_NOT_EXPR:
12665 : 168 : {
12666 : 168 : tree _q50 = TREE_OPERAND (_p1, 0);
12667 : 168 : switch (TREE_CODE (_q50))
12668 : : {
12669 : 9 : case BIT_IOR_EXPR:
12670 : 9 : {
12671 : 9 : tree _q60 = TREE_OPERAND (_q50, 0);
12672 : 9 : tree _q61 = TREE_OPERAND (_q50, 1);
12673 : 9 : if ((_q60 == _q21 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q21, 0) && types_match (_q60, _q21)))
12674 : : {
12675 : 0 : {
12676 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q20, _q21, _p1, _q61 };
12677 : 0 : tree res = generic_simplify_106 (loc, type, _p0, _p1, captures, BIT_AND_EXPR, BIT_IOR_EXPR);
12678 : 0 : if (res) return res;
12679 : : }
12680 : : }
12681 : 9 : if ((_q61 == _q21 && ! TREE_SIDE_EFFECTS (_q61)) || (operand_equal_p (_q61, _q21, 0) && types_match (_q61, _q21)))
12682 : : {
12683 : 1 : {
12684 : 1 : tree captures[4] ATTRIBUTE_UNUSED = { _q20, _q21, _p1, _q60 };
12685 : 1 : tree res = generic_simplify_106 (loc, type, _p0, _p1, captures, BIT_AND_EXPR, BIT_IOR_EXPR);
12686 : 1 : if (res) return res;
12687 : : }
12688 : : }
12689 : 8 : if ((_q60 == _q20 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q20, 0) && types_match (_q60, _q20)))
12690 : : {
12691 : 0 : {
12692 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q21, _q20, _p1, _q61 };
12693 : 0 : tree res = generic_simplify_106 (loc, type, _p0, _p1, captures, BIT_AND_EXPR, BIT_IOR_EXPR);
12694 : 0 : if (res) return res;
12695 : : }
12696 : : }
12697 : 8 : if ((_q61 == _q20 && ! TREE_SIDE_EFFECTS (_q61)) || (operand_equal_p (_q61, _q20, 0) && types_match (_q61, _q20)))
12698 : : {
12699 : 0 : {
12700 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q21, _q20, _p1, _q60 };
12701 : 0 : tree res = generic_simplify_106 (loc, type, _p0, _p1, captures, BIT_AND_EXPR, BIT_IOR_EXPR);
12702 : 0 : if (res) return res;
12703 : : }
12704 : : }
12705 : : break;
12706 : : }
12707 : : default:;
12708 : : }
12709 : : break;
12710 : : }
12711 : : default:;
12712 : : }
12713 : : break;
12714 : : }
12715 : 5732237 : default:;
12716 : : }
12717 : 5732237 : switch (TREE_CODE (_p1))
12718 : : {
12719 : 476 : case BIT_IOR_EXPR:
12720 : 476 : {
12721 : 476 : tree _q30 = TREE_OPERAND (_p1, 0);
12722 : 476 : tree _q31 = TREE_OPERAND (_p1, 1);
12723 : 476 : if ((_q30 == _p0 && ! TREE_SIDE_EFFECTS (_q30)) || (operand_equal_p (_q30, _p0, 0) && types_match (_q30, _p0)))
12724 : : {
12725 : 0 : {
12726 : 0 : tree captures[2] ATTRIBUTE_UNUSED = { _p0, _q31 };
12727 : 0 : tree res = generic_simplify_103 (loc, type, _p0, _p1, captures, BIT_AND_EXPR, BIT_IOR_EXPR);
12728 : 0 : if (res) return res;
12729 : : }
12730 : : }
12731 : 476 : if ((_q31 == _p0 && ! TREE_SIDE_EFFECTS (_q31)) || (operand_equal_p (_q31, _p0, 0) && types_match (_q31, _p0)))
12732 : : {
12733 : 0 : {
12734 : 0 : tree captures[2] ATTRIBUTE_UNUSED = { _p0, _q30 };
12735 : 0 : tree res = generic_simplify_103 (loc, type, _p0, _p1, captures, BIT_AND_EXPR, BIT_IOR_EXPR);
12736 : 0 : if (res) return res;
12737 : : }
12738 : : }
12739 : 476 : {
12740 : 476 : tree captures[3] ATTRIBUTE_UNUSED = { _q30, _q31, _p0 };
12741 : 476 : tree res = generic_simplify_104 (loc, type, _p0, _p1, captures, BIT_AND_EXPR, BIT_IOR_EXPR);
12742 : 476 : if (res) return res;
12743 : : }
12744 : 476 : {
12745 : 476 : tree captures[3] ATTRIBUTE_UNUSED = { _q31, _q30, _p0 };
12746 : 476 : tree res = generic_simplify_104 (loc, type, _p0, _p1, captures, BIT_AND_EXPR, BIT_IOR_EXPR);
12747 : 476 : if (res) return res;
12748 : : }
12749 : 475 : break;
12750 : : }
12751 : 5732236 : default:;
12752 : : }
12753 : 5732236 : switch (TREE_CODE (_p0))
12754 : : {
12755 : 1613 : case BIT_AND_EXPR:
12756 : 1613 : {
12757 : 1613 : tree _q20 = TREE_OPERAND (_p0, 0);
12758 : 1613 : tree _q21 = TREE_OPERAND (_p0, 1);
12759 : 1613 : switch (TREE_CODE (_p1))
12760 : : {
12761 : 16 : case BIT_IOR_EXPR:
12762 : 16 : {
12763 : 16 : tree _q50 = TREE_OPERAND (_p1, 0);
12764 : 16 : tree _q51 = TREE_OPERAND (_p1, 1);
12765 : 16 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
12766 : : {
12767 : 0 : {
12768 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q20, _q51, _p0, _q21 };
12769 : 0 : tree res = generic_simplify_109 (loc, type, _p0, _p1, captures, BIT_AND_EXPR, BIT_IOR_EXPR);
12770 : 0 : if (res) return res;
12771 : : }
12772 : : }
12773 : 16 : if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
12774 : : {
12775 : 0 : {
12776 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q21, _q51, _p0, _q20 };
12777 : 0 : tree res = generic_simplify_109 (loc, type, _p0, _p1, captures, BIT_AND_EXPR, BIT_IOR_EXPR);
12778 : 0 : if (res) return res;
12779 : : }
12780 : : }
12781 : 16 : if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
12782 : : {
12783 : 0 : {
12784 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q20, _q50, _p0, _q21 };
12785 : 0 : tree res = generic_simplify_109 (loc, type, _p0, _p1, captures, BIT_AND_EXPR, BIT_IOR_EXPR);
12786 : 0 : if (res) return res;
12787 : : }
12788 : : }
12789 : 16 : if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
12790 : : {
12791 : 0 : {
12792 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q21, _q50, _p0, _q20 };
12793 : 0 : tree res = generic_simplify_109 (loc, type, _p0, _p1, captures, BIT_AND_EXPR, BIT_IOR_EXPR);
12794 : 0 : if (res) return res;
12795 : : }
12796 : : }
12797 : : break;
12798 : : }
12799 : : default:;
12800 : : }
12801 : : break;
12802 : : }
12803 : 37916 : case BIT_NOT_EXPR:
12804 : 37916 : {
12805 : 37916 : tree _q20 = TREE_OPERAND (_p0, 0);
12806 : 37916 : switch (TREE_CODE (_q20))
12807 : : {
12808 : 11 : case BIT_IOR_EXPR:
12809 : 11 : {
12810 : 11 : tree _q30 = TREE_OPERAND (_q20, 0);
12811 : 11 : tree _q31 = TREE_OPERAND (_q20, 1);
12812 : 11 : switch (TREE_CODE (_p1))
12813 : : {
12814 : 0 : case BIT_IOR_EXPR:
12815 : 0 : {
12816 : 0 : tree _q60 = TREE_OPERAND (_p1, 0);
12817 : 0 : tree _q61 = TREE_OPERAND (_p1, 1);
12818 : 0 : if ((_q61 == _q30 && ! TREE_SIDE_EFFECTS (_q61)) || (operand_equal_p (_q61, _q30, 0) && types_match (_q61, _q30)))
12819 : : {
12820 : 0 : {
12821 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q60, _q30, _p0, _q31 };
12822 : 0 : tree res = generic_simplify_110 (loc, type, _p0, _p1, captures, BIT_AND_EXPR, BIT_IOR_EXPR);
12823 : 0 : if (res) return res;
12824 : : }
12825 : : }
12826 : 0 : if ((_q61 == _q31 && ! TREE_SIDE_EFFECTS (_q61)) || (operand_equal_p (_q61, _q31, 0) && types_match (_q61, _q31)))
12827 : : {
12828 : 0 : {
12829 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q60, _q31, _p0, _q30 };
12830 : 0 : tree res = generic_simplify_110 (loc, type, _p0, _p1, captures, BIT_AND_EXPR, BIT_IOR_EXPR);
12831 : 0 : if (res) return res;
12832 : : }
12833 : : }
12834 : 0 : if ((_q60 == _q30 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q30, 0) && types_match (_q60, _q30)))
12835 : : {
12836 : 0 : {
12837 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q61, _q30, _p0, _q31 };
12838 : 0 : tree res = generic_simplify_110 (loc, type, _p0, _p1, captures, BIT_AND_EXPR, BIT_IOR_EXPR);
12839 : 0 : if (res) return res;
12840 : : }
12841 : : }
12842 : 0 : if ((_q60 == _q31 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q31, 0) && types_match (_q60, _q31)))
12843 : : {
12844 : 0 : {
12845 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q61, _q31, _p0, _q30 };
12846 : 0 : tree res = generic_simplify_110 (loc, type, _p0, _p1, captures, BIT_AND_EXPR, BIT_IOR_EXPR);
12847 : 0 : if (res) return res;
12848 : : }
12849 : : }
12850 : : break;
12851 : : }
12852 : 11 : default:;
12853 : : }
12854 : 11 : if ((_p1 == _q30 && ! TREE_SIDE_EFFECTS (_p1)) || (operand_equal_p (_p1, _q30, 0) && types_match (_p1, _q30)))
12855 : : {
12856 : 0 : {
12857 : 0 : tree captures[2] ATTRIBUTE_UNUSED = { _q30, _q31 };
12858 : 0 : tree res = generic_simplify_111 (loc, type, _p0, _p1, captures, BIT_AND_EXPR, BIT_IOR_EXPR);
12859 : 0 : if (res) return res;
12860 : : }
12861 : : }
12862 : 11 : if ((_p1 == _q31 && ! TREE_SIDE_EFFECTS (_p1)) || (operand_equal_p (_p1, _q31, 0) && types_match (_p1, _q31)))
12863 : : {
12864 : 1 : {
12865 : 1 : tree captures[2] ATTRIBUTE_UNUSED = { _q31, _q30 };
12866 : 1 : tree res = generic_simplify_111 (loc, type, _p0, _p1, captures, BIT_AND_EXPR, BIT_IOR_EXPR);
12867 : 1 : if (res) return res;
12868 : : }
12869 : : }
12870 : : break;
12871 : : }
12872 : : default:;
12873 : : }
12874 : : break;
12875 : : }
12876 : 5732235 : default:;
12877 : : }
12878 : 5732235 : switch (TREE_CODE (_p1))
12879 : : {
12880 : 23546 : case BIT_NOT_EXPR:
12881 : 23546 : {
12882 : 23546 : tree _q30 = TREE_OPERAND (_p1, 0);
12883 : 23546 : switch (TREE_CODE (_q30))
12884 : : {
12885 : 8 : case BIT_IOR_EXPR:
12886 : 8 : {
12887 : 8 : tree _q40 = TREE_OPERAND (_q30, 0);
12888 : 8 : tree _q41 = TREE_OPERAND (_q30, 1);
12889 : 8 : if ((_q40 == _p0 && ! TREE_SIDE_EFFECTS (_q40)) || (operand_equal_p (_q40, _p0, 0) && types_match (_q40, _p0)))
12890 : : {
12891 : 0 : {
12892 : 0 : tree captures[2] ATTRIBUTE_UNUSED = { _p0, _q41 };
12893 : 0 : tree res = generic_simplify_111 (loc, type, _p0, _p1, captures, BIT_AND_EXPR, BIT_IOR_EXPR);
12894 : 0 : if (res) return res;
12895 : : }
12896 : : }
12897 : 8 : if ((_q41 == _p0 && ! TREE_SIDE_EFFECTS (_q41)) || (operand_equal_p (_q41, _p0, 0) && types_match (_q41, _p0)))
12898 : : {
12899 : 0 : {
12900 : 0 : tree captures[2] ATTRIBUTE_UNUSED = { _p0, _q40 };
12901 : 0 : tree res = generic_simplify_111 (loc, type, _p0, _p1, captures, BIT_AND_EXPR, BIT_IOR_EXPR);
12902 : 0 : if (res) return res;
12903 : : }
12904 : : }
12905 : : break;
12906 : : }
12907 : : default:;
12908 : : }
12909 : : break;
12910 : : }
12911 : 5732235 : default:;
12912 : : }
12913 : 5732235 : switch (TREE_CODE (_p0))
12914 : : {
12915 : 1542 : case BIT_IOR_EXPR:
12916 : 1542 : {
12917 : 1542 : tree _q20 = TREE_OPERAND (_p0, 0);
12918 : 1542 : tree _q21 = TREE_OPERAND (_p0, 1);
12919 : 1542 : if (CONSTANT_CLASS_P (_q21))
12920 : : {
12921 : 459 : if (CONSTANT_CLASS_P (_p1))
12922 : : {
12923 : 25 : {
12924 : 25 : tree captures[3] ATTRIBUTE_UNUSED = { _q20, _q21, _p1 };
12925 : 25 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1729;
12926 : 25 : {
12927 : 25 : if (! tree_invariant_p (captures[2])) goto next_after_fail1729;
12928 : 25 : tree res_op0;
12929 : 25 : {
12930 : 25 : tree _o1[2], _r1;
12931 : 25 : _o1[0] = captures[0];
12932 : 25 : _o1[1] = unshare_expr (captures[2]);
12933 : 25 : _r1 = fold_build2_loc (loc, BIT_AND_EXPR, TREE_TYPE (_o1[0]), _o1[0], _o1[1]);
12934 : 25 : res_op0 = _r1;
12935 : : }
12936 : 25 : tree res_op1;
12937 : 25 : {
12938 : 25 : tree _o1[2], _r1;
12939 : 25 : _o1[0] = captures[1];
12940 : 25 : _o1[1] = captures[2];
12941 : 25 : _r1 = fold_build2_loc (loc, BIT_AND_EXPR, TREE_TYPE (_o1[0]), _o1[0], _o1[1]);
12942 : 25 : if (EXPR_P (_r1))
12943 : 0 : goto next_after_fail1729;
12944 : 25 : res_op1 = _r1;
12945 : : }
12946 : 25 : tree _r;
12947 : 25 : _r = fold_build2_loc (loc, BIT_IOR_EXPR, type, res_op0, res_op1);
12948 : 25 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 1006, __FILE__, __LINE__, true);
12949 : 25 : return _r;
12950 : : }
12951 : 0 : next_after_fail1729:;
12952 : : }
12953 : : }
12954 : : }
12955 : : break;
12956 : : }
12957 : 1613 : case BIT_AND_EXPR:
12958 : 1613 : {
12959 : 1613 : tree _q20 = TREE_OPERAND (_p0, 0);
12960 : 1613 : tree _q21 = TREE_OPERAND (_p0, 1);
12961 : 1613 : if (CONSTANT_CLASS_P (_q21))
12962 : : {
12963 : 538 : if (CONSTANT_CLASS_P (_p1))
12964 : : {
12965 : 473 : {
12966 : 473 : tree captures[3] ATTRIBUTE_UNUSED = { _q20, _q21, _p1 };
12967 : 473 : tree res = generic_simplify_117 (loc, type, _p0, _p1, captures, BIT_AND_EXPR);
12968 : 473 : if (res) return res;
12969 : : }
12970 : : }
12971 : : }
12972 : : break;
12973 : : }
12974 : 5731737 : default:;
12975 : : }
12976 : 5731737 : {
12977 : 5731737 : tree _p1_pops[1];
12978 : 5731737 : if (tree_logical_inverted_value (_p1, _p1_pops))
12979 : : {
12980 : 683 : tree _q30 = _p1_pops[0];
12981 : 683 : if ((_q30 == _p0 && ! TREE_SIDE_EFFECTS (_q30)) || (operand_equal_p (_q30, _p0, 0) && types_match (_q30, _p0)))
12982 : : {
12983 : 0 : {
12984 : 0 : tree captures[1] ATTRIBUTE_UNUSED = { _p0 };
12985 : 0 : tree res = generic_simplify_418 (loc, type, _p0, _p1, captures);
12986 : 0 : if (res) return res;
12987 : : }
12988 : : }
12989 : : }
12990 : : }
12991 : 5731737 : switch (TREE_CODE (_p0))
12992 : : {
12993 : 1788615 : CASE_CONVERT:
12994 : 1788615 : {
12995 : 1788615 : tree _q20 = TREE_OPERAND (_p0, 0);
12996 : 1788615 : switch (TREE_CODE (_q20))
12997 : : {
12998 : 6542 : case NEGATE_EXPR:
12999 : 6542 : {
13000 : 6542 : tree _q30 = TREE_OPERAND (_q20, 0);
13001 : 6542 : if (tree_zero_one_valued_p (_q30))
13002 : : {
13003 : 2 : {
13004 : 2 : tree captures[2] ATTRIBUTE_UNUSED = { _q30, _p1 };
13005 : 2 : tree res = generic_simplify_413 (loc, type, _p0, _p1, captures);
13006 : 2 : if (res) return res;
13007 : : }
13008 : : }
13009 : : break;
13010 : : }
13011 : : default:;
13012 : : }
13013 : : break;
13014 : : }
13015 : 5731735 : default:;
13016 : : }
13017 : 5731735 : {
13018 : 5731735 : tree _p0_pops[1];
13019 : 5731735 : if (tree_logical_inverted_value (_p0, _p0_pops))
13020 : : {
13021 : 509 : tree _q20 = _p0_pops[0];
13022 : 509 : if ((_p1 == _q20 && ! TREE_SIDE_EFFECTS (_p1)) || (operand_equal_p (_p1, _q20, 0) && types_match (_p1, _q20)))
13023 : : {
13024 : 12 : {
13025 : 12 : tree captures[1] ATTRIBUTE_UNUSED = { _q20 };
13026 : 12 : tree res = generic_simplify_418 (loc, type, _p0, _p1, captures);
13027 : 12 : if (res) return res;
13028 : : }
13029 : : }
13030 : : }
13031 : : }
13032 : 5731723 : switch (TREE_CODE (_p1))
13033 : : {
13034 : 823631 : CASE_CONVERT:
13035 : 823631 : {
13036 : 823631 : tree _q30 = TREE_OPERAND (_p1, 0);
13037 : 823631 : switch (TREE_CODE (_q30))
13038 : : {
13039 : 108 : case NEGATE_EXPR:
13040 : 108 : {
13041 : 108 : tree _q40 = TREE_OPERAND (_q30, 0);
13042 : 108 : if (tree_zero_one_valued_p (_q40))
13043 : : {
13044 : 18 : {
13045 : 18 : tree captures[2] ATTRIBUTE_UNUSED = { _q40, _p0 };
13046 : 18 : tree res = generic_simplify_413 (loc, type, _p0, _p1, captures);
13047 : 18 : if (res) return res;
13048 : : }
13049 : : }
13050 : : break;
13051 : : }
13052 : : default:;
13053 : : }
13054 : : break;
13055 : : }
13056 : 10780 : case NEGATE_EXPR:
13057 : 10780 : {
13058 : 10780 : tree _q30 = TREE_OPERAND (_p1, 0);
13059 : 10780 : if (tree_zero_one_valued_p (_q30))
13060 : : {
13061 : 24 : {
13062 : 24 : tree captures[2] ATTRIBUTE_UNUSED = { _q30, _p0 };
13063 : 24 : tree res = generic_simplify_413 (loc, type, _p0, _p1, captures);
13064 : 24 : if (res) return res;
13065 : : }
13066 : : }
13067 : : break;
13068 : : }
13069 : 5731681 : default:;
13070 : : }
13071 : 5731681 : switch (TREE_CODE (_p0))
13072 : : {
13073 : 45407 : case NEGATE_EXPR:
13074 : 45407 : {
13075 : 45407 : tree _q20 = TREE_OPERAND (_p0, 0);
13076 : 45407 : switch (TREE_CODE (_q20))
13077 : : {
13078 : 5170 : CASE_CONVERT:
13079 : 5170 : {
13080 : 5170 : tree _q30 = TREE_OPERAND (_q20, 0);
13081 : 5170 : switch (TREE_CODE (_q30))
13082 : : {
13083 : 0 : case LT_EXPR:
13084 : 0 : {
13085 : 0 : tree _q40 = TREE_OPERAND (_q30, 0);
13086 : 0 : tree _q41 = TREE_OPERAND (_q30, 1);
13087 : 0 : {
13088 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q30, _q40, _q41, _p1 };
13089 : 0 : tree res = generic_simplify_419 (loc, type, _p0, _p1, captures, LT_EXPR);
13090 : 0 : if (res) return res;
13091 : : }
13092 : 0 : break;
13093 : : }
13094 : 0 : case LE_EXPR:
13095 : 0 : {
13096 : 0 : tree _q40 = TREE_OPERAND (_q30, 0);
13097 : 0 : tree _q41 = TREE_OPERAND (_q30, 1);
13098 : 0 : {
13099 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q30, _q40, _q41, _p1 };
13100 : 0 : tree res = generic_simplify_419 (loc, type, _p0, _p1, captures, LE_EXPR);
13101 : 0 : if (res) return res;
13102 : : }
13103 : 0 : break;
13104 : : }
13105 : 0 : case EQ_EXPR:
13106 : 0 : {
13107 : 0 : tree _q40 = TREE_OPERAND (_q30, 0);
13108 : 0 : tree _q41 = TREE_OPERAND (_q30, 1);
13109 : 0 : {
13110 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q30, _q40, _q41, _p1 };
13111 : 0 : tree res = generic_simplify_419 (loc, type, _p0, _p1, captures, EQ_EXPR);
13112 : 0 : if (res) return res;
13113 : : }
13114 : 0 : break;
13115 : : }
13116 : 0 : case NE_EXPR:
13117 : 0 : {
13118 : 0 : tree _q40 = TREE_OPERAND (_q30, 0);
13119 : 0 : tree _q41 = TREE_OPERAND (_q30, 1);
13120 : 0 : {
13121 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q30, _q40, _q41, _p1 };
13122 : 0 : tree res = generic_simplify_419 (loc, type, _p0, _p1, captures, NE_EXPR);
13123 : 0 : if (res) return res;
13124 : : }
13125 : 0 : break;
13126 : : }
13127 : 0 : case GE_EXPR:
13128 : 0 : {
13129 : 0 : tree _q40 = TREE_OPERAND (_q30, 0);
13130 : 0 : tree _q41 = TREE_OPERAND (_q30, 1);
13131 : 0 : {
13132 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q30, _q40, _q41, _p1 };
13133 : 0 : tree res = generic_simplify_419 (loc, type, _p0, _p1, captures, GE_EXPR);
13134 : 0 : if (res) return res;
13135 : : }
13136 : 0 : break;
13137 : : }
13138 : 0 : case GT_EXPR:
13139 : 0 : {
13140 : 0 : tree _q40 = TREE_OPERAND (_q30, 0);
13141 : 0 : tree _q41 = TREE_OPERAND (_q30, 1);
13142 : 0 : {
13143 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q30, _q40, _q41, _p1 };
13144 : 0 : tree res = generic_simplify_419 (loc, type, _p0, _p1, captures, GT_EXPR);
13145 : 0 : if (res) return res;
13146 : : }
13147 : 0 : break;
13148 : : }
13149 : 0 : case UNORDERED_EXPR:
13150 : 0 : {
13151 : 0 : tree _q40 = TREE_OPERAND (_q30, 0);
13152 : 0 : tree _q41 = TREE_OPERAND (_q30, 1);
13153 : 0 : {
13154 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q30, _q40, _q41, _p1 };
13155 : 0 : tree res = generic_simplify_419 (loc, type, _p0, _p1, captures, UNORDERED_EXPR);
13156 : 0 : if (res) return res;
13157 : : }
13158 : 0 : break;
13159 : : }
13160 : 0 : case ORDERED_EXPR:
13161 : 0 : {
13162 : 0 : tree _q40 = TREE_OPERAND (_q30, 0);
13163 : 0 : tree _q41 = TREE_OPERAND (_q30, 1);
13164 : 0 : {
13165 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q30, _q40, _q41, _p1 };
13166 : 0 : tree res = generic_simplify_419 (loc, type, _p0, _p1, captures, ORDERED_EXPR);
13167 : 0 : if (res) return res;
13168 : : }
13169 : 0 : break;
13170 : : }
13171 : 0 : case UNLT_EXPR:
13172 : 0 : {
13173 : 0 : tree _q40 = TREE_OPERAND (_q30, 0);
13174 : 0 : tree _q41 = TREE_OPERAND (_q30, 1);
13175 : 0 : {
13176 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q30, _q40, _q41, _p1 };
13177 : 0 : tree res = generic_simplify_419 (loc, type, _p0, _p1, captures, UNLT_EXPR);
13178 : 0 : if (res) return res;
13179 : : }
13180 : 0 : break;
13181 : : }
13182 : 0 : case UNLE_EXPR:
13183 : 0 : {
13184 : 0 : tree _q40 = TREE_OPERAND (_q30, 0);
13185 : 0 : tree _q41 = TREE_OPERAND (_q30, 1);
13186 : 0 : {
13187 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q30, _q40, _q41, _p1 };
13188 : 0 : tree res = generic_simplify_419 (loc, type, _p0, _p1, captures, UNLE_EXPR);
13189 : 0 : if (res) return res;
13190 : : }
13191 : 0 : break;
13192 : : }
13193 : 0 : case UNGT_EXPR:
13194 : 0 : {
13195 : 0 : tree _q40 = TREE_OPERAND (_q30, 0);
13196 : 0 : tree _q41 = TREE_OPERAND (_q30, 1);
13197 : 0 : {
13198 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q30, _q40, _q41, _p1 };
13199 : 0 : tree res = generic_simplify_419 (loc, type, _p0, _p1, captures, UNGT_EXPR);
13200 : 0 : if (res) return res;
13201 : : }
13202 : 0 : break;
13203 : : }
13204 : 0 : case UNGE_EXPR:
13205 : 0 : {
13206 : 0 : tree _q40 = TREE_OPERAND (_q30, 0);
13207 : 0 : tree _q41 = TREE_OPERAND (_q30, 1);
13208 : 0 : {
13209 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q30, _q40, _q41, _p1 };
13210 : 0 : tree res = generic_simplify_419 (loc, type, _p0, _p1, captures, UNGE_EXPR);
13211 : 0 : if (res) return res;
13212 : : }
13213 : 0 : break;
13214 : : }
13215 : 0 : case UNEQ_EXPR:
13216 : 0 : {
13217 : 0 : tree _q40 = TREE_OPERAND (_q30, 0);
13218 : 0 : tree _q41 = TREE_OPERAND (_q30, 1);
13219 : 0 : {
13220 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q30, _q40, _q41, _p1 };
13221 : 0 : tree res = generic_simplify_419 (loc, type, _p0, _p1, captures, UNEQ_EXPR);
13222 : 0 : if (res) return res;
13223 : : }
13224 : 0 : break;
13225 : : }
13226 : 0 : case LTGT_EXPR:
13227 : 0 : {
13228 : 0 : tree _q40 = TREE_OPERAND (_q30, 0);
13229 : 0 : tree _q41 = TREE_OPERAND (_q30, 1);
13230 : 0 : {
13231 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q30, _q40, _q41, _p1 };
13232 : 0 : tree res = generic_simplify_419 (loc, type, _p0, _p1, captures, LTGT_EXPR);
13233 : 0 : if (res) return res;
13234 : : }
13235 : 0 : break;
13236 : : }
13237 : : default:;
13238 : : }
13239 : : break;
13240 : : }
13241 : : default:;
13242 : : }
13243 : : break;
13244 : : }
13245 : 5731681 : default:;
13246 : : }
13247 : 5731681 : switch (TREE_CODE (_p1))
13248 : : {
13249 : 10756 : case NEGATE_EXPR:
13250 : 10756 : {
13251 : 10756 : tree _q30 = TREE_OPERAND (_p1, 0);
13252 : 10756 : switch (TREE_CODE (_q30))
13253 : : {
13254 : 65 : CASE_CONVERT:
13255 : 65 : {
13256 : 65 : tree _q40 = TREE_OPERAND (_q30, 0);
13257 : 65 : switch (TREE_CODE (_q40))
13258 : : {
13259 : 0 : case LT_EXPR:
13260 : 0 : {
13261 : 0 : tree _q50 = TREE_OPERAND (_q40, 0);
13262 : 0 : tree _q51 = TREE_OPERAND (_q40, 1);
13263 : 0 : {
13264 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q40, _q50, _q51, _p0 };
13265 : 0 : tree res = generic_simplify_420 (loc, type, _p0, _p1, captures, LT_EXPR);
13266 : 0 : if (res) return res;
13267 : : }
13268 : 0 : break;
13269 : : }
13270 : 0 : case LE_EXPR:
13271 : 0 : {
13272 : 0 : tree _q50 = TREE_OPERAND (_q40, 0);
13273 : 0 : tree _q51 = TREE_OPERAND (_q40, 1);
13274 : 0 : {
13275 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q40, _q50, _q51, _p0 };
13276 : 0 : tree res = generic_simplify_420 (loc, type, _p0, _p1, captures, LE_EXPR);
13277 : 0 : if (res) return res;
13278 : : }
13279 : 0 : break;
13280 : : }
13281 : 0 : case EQ_EXPR:
13282 : 0 : {
13283 : 0 : tree _q50 = TREE_OPERAND (_q40, 0);
13284 : 0 : tree _q51 = TREE_OPERAND (_q40, 1);
13285 : 0 : {
13286 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q40, _q50, _q51, _p0 };
13287 : 0 : tree res = generic_simplify_420 (loc, type, _p0, _p1, captures, EQ_EXPR);
13288 : 0 : if (res) return res;
13289 : : }
13290 : 0 : break;
13291 : : }
13292 : 0 : case NE_EXPR:
13293 : 0 : {
13294 : 0 : tree _q50 = TREE_OPERAND (_q40, 0);
13295 : 0 : tree _q51 = TREE_OPERAND (_q40, 1);
13296 : 0 : {
13297 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q40, _q50, _q51, _p0 };
13298 : 0 : tree res = generic_simplify_420 (loc, type, _p0, _p1, captures, NE_EXPR);
13299 : 0 : if (res) return res;
13300 : : }
13301 : 0 : break;
13302 : : }
13303 : 0 : case GE_EXPR:
13304 : 0 : {
13305 : 0 : tree _q50 = TREE_OPERAND (_q40, 0);
13306 : 0 : tree _q51 = TREE_OPERAND (_q40, 1);
13307 : 0 : {
13308 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q40, _q50, _q51, _p0 };
13309 : 0 : tree res = generic_simplify_420 (loc, type, _p0, _p1, captures, GE_EXPR);
13310 : 0 : if (res) return res;
13311 : : }
13312 : 0 : break;
13313 : : }
13314 : 0 : case GT_EXPR:
13315 : 0 : {
13316 : 0 : tree _q50 = TREE_OPERAND (_q40, 0);
13317 : 0 : tree _q51 = TREE_OPERAND (_q40, 1);
13318 : 0 : {
13319 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q40, _q50, _q51, _p0 };
13320 : 0 : tree res = generic_simplify_420 (loc, type, _p0, _p1, captures, GT_EXPR);
13321 : 0 : if (res) return res;
13322 : : }
13323 : 0 : break;
13324 : : }
13325 : 0 : case UNORDERED_EXPR:
13326 : 0 : {
13327 : 0 : tree _q50 = TREE_OPERAND (_q40, 0);
13328 : 0 : tree _q51 = TREE_OPERAND (_q40, 1);
13329 : 0 : {
13330 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q40, _q50, _q51, _p0 };
13331 : 0 : tree res = generic_simplify_420 (loc, type, _p0, _p1, captures, UNORDERED_EXPR);
13332 : 0 : if (res) return res;
13333 : : }
13334 : 0 : break;
13335 : : }
13336 : 0 : case ORDERED_EXPR:
13337 : 0 : {
13338 : 0 : tree _q50 = TREE_OPERAND (_q40, 0);
13339 : 0 : tree _q51 = TREE_OPERAND (_q40, 1);
13340 : 0 : {
13341 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q40, _q50, _q51, _p0 };
13342 : 0 : tree res = generic_simplify_420 (loc, type, _p0, _p1, captures, ORDERED_EXPR);
13343 : 0 : if (res) return res;
13344 : : }
13345 : 0 : break;
13346 : : }
13347 : 0 : case UNLT_EXPR:
13348 : 0 : {
13349 : 0 : tree _q50 = TREE_OPERAND (_q40, 0);
13350 : 0 : tree _q51 = TREE_OPERAND (_q40, 1);
13351 : 0 : {
13352 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q40, _q50, _q51, _p0 };
13353 : 0 : tree res = generic_simplify_420 (loc, type, _p0, _p1, captures, UNLT_EXPR);
13354 : 0 : if (res) return res;
13355 : : }
13356 : 0 : break;
13357 : : }
13358 : 0 : case UNLE_EXPR:
13359 : 0 : {
13360 : 0 : tree _q50 = TREE_OPERAND (_q40, 0);
13361 : 0 : tree _q51 = TREE_OPERAND (_q40, 1);
13362 : 0 : {
13363 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q40, _q50, _q51, _p0 };
13364 : 0 : tree res = generic_simplify_420 (loc, type, _p0, _p1, captures, UNLE_EXPR);
13365 : 0 : if (res) return res;
13366 : : }
13367 : 0 : break;
13368 : : }
13369 : 0 : case UNGT_EXPR:
13370 : 0 : {
13371 : 0 : tree _q50 = TREE_OPERAND (_q40, 0);
13372 : 0 : tree _q51 = TREE_OPERAND (_q40, 1);
13373 : 0 : {
13374 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q40, _q50, _q51, _p0 };
13375 : 0 : tree res = generic_simplify_420 (loc, type, _p0, _p1, captures, UNGT_EXPR);
13376 : 0 : if (res) return res;
13377 : : }
13378 : 0 : break;
13379 : : }
13380 : 0 : case UNGE_EXPR:
13381 : 0 : {
13382 : 0 : tree _q50 = TREE_OPERAND (_q40, 0);
13383 : 0 : tree _q51 = TREE_OPERAND (_q40, 1);
13384 : 0 : {
13385 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q40, _q50, _q51, _p0 };
13386 : 0 : tree res = generic_simplify_420 (loc, type, _p0, _p1, captures, UNGE_EXPR);
13387 : 0 : if (res) return res;
13388 : : }
13389 : 0 : break;
13390 : : }
13391 : 0 : case UNEQ_EXPR:
13392 : 0 : {
13393 : 0 : tree _q50 = TREE_OPERAND (_q40, 0);
13394 : 0 : tree _q51 = TREE_OPERAND (_q40, 1);
13395 : 0 : {
13396 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q40, _q50, _q51, _p0 };
13397 : 0 : tree res = generic_simplify_420 (loc, type, _p0, _p1, captures, UNEQ_EXPR);
13398 : 0 : if (res) return res;
13399 : : }
13400 : 0 : break;
13401 : : }
13402 : 0 : case LTGT_EXPR:
13403 : 0 : {
13404 : 0 : tree _q50 = TREE_OPERAND (_q40, 0);
13405 : 0 : tree _q51 = TREE_OPERAND (_q40, 1);
13406 : 0 : {
13407 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q40, _q50, _q51, _p0 };
13408 : 0 : tree res = generic_simplify_420 (loc, type, _p0, _p1, captures, LTGT_EXPR);
13409 : 0 : if (res) return res;
13410 : : }
13411 : 0 : break;
13412 : : }
13413 : : default:;
13414 : : }
13415 : : break;
13416 : : }
13417 : : default:;
13418 : : }
13419 : : break;
13420 : : }
13421 : 5731681 : default:;
13422 : : }
13423 : 5731681 : switch (TREE_CODE (_p0))
13424 : : {
13425 : 1788611 : CASE_CONVERT:
13426 : 1788611 : {
13427 : 1788611 : tree _q20 = TREE_OPERAND (_p0, 0);
13428 : 1788611 : switch (TREE_CODE (_p1))
13429 : : {
13430 : 853920 : case INTEGER_CST:
13431 : 853920 : {
13432 : 853920 : {
13433 : 853920 : tree captures[2] ATTRIBUTE_UNUSED = { _q20, _p1 };
13434 : 853920 : tree res = generic_simplify_421 (loc, type, _p0, _p1, captures);
13435 : 853920 : if (res) return res;
13436 : : }
13437 : 850065 : break;
13438 : : }
13439 : 1784756 : default:;
13440 : : }
13441 : 1784756 : switch (TREE_CODE (_q20))
13442 : : {
13443 : 70351 : case LSHIFT_EXPR:
13444 : 70351 : {
13445 : 70351 : tree _q30 = TREE_OPERAND (_q20, 0);
13446 : 70351 : tree _q31 = TREE_OPERAND (_q20, 1);
13447 : 70351 : switch (TREE_CODE (_q30))
13448 : : {
13449 : 79 : CASE_CONVERT:
13450 : 79 : {
13451 : 79 : tree _q40 = TREE_OPERAND (_q30, 0);
13452 : 79 : switch (TREE_CODE (_q31))
13453 : : {
13454 : 79 : case INTEGER_CST:
13455 : 79 : {
13456 : 79 : switch (TREE_CODE (_p1))
13457 : : {
13458 : 79 : case INTEGER_CST:
13459 : 79 : {
13460 : 79 : {
13461 : 79 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q30, _q40, _q31, _p1 };
13462 : 79 : tree res = generic_simplify_422 (loc, type, _p0, _p1, captures, LSHIFT_EXPR);
13463 : 79 : if (res) return res;
13464 : : }
13465 : 79 : break;
13466 : : }
13467 : : default:;
13468 : : }
13469 : : break;
13470 : : }
13471 : : default:;
13472 : : }
13473 : : break;
13474 : : }
13475 : 70351 : default:;
13476 : : }
13477 : 70351 : switch (TREE_CODE (_q31))
13478 : : {
13479 : 79 : case INTEGER_CST:
13480 : 79 : {
13481 : 79 : switch (TREE_CODE (_p1))
13482 : : {
13483 : 79 : case INTEGER_CST:
13484 : 79 : {
13485 : 79 : {
13486 : 79 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q30, _q30, _q31, _p1 };
13487 : 79 : tree res = generic_simplify_423 (loc, type, _p0, _p1, captures, LSHIFT_EXPR);
13488 : 79 : if (res) return res;
13489 : : }
13490 : 79 : break;
13491 : : }
13492 : : default:;
13493 : : }
13494 : : break;
13495 : : }
13496 : : default:;
13497 : : }
13498 : : break;
13499 : : }
13500 : 64654 : case RSHIFT_EXPR:
13501 : 64654 : {
13502 : 64654 : tree _q30 = TREE_OPERAND (_q20, 0);
13503 : 64654 : tree _q31 = TREE_OPERAND (_q20, 1);
13504 : 64654 : switch (TREE_CODE (_q30))
13505 : : {
13506 : 42025 : CASE_CONVERT:
13507 : 42025 : {
13508 : 42025 : tree _q40 = TREE_OPERAND (_q30, 0);
13509 : 42025 : switch (TREE_CODE (_q31))
13510 : : {
13511 : 41898 : case INTEGER_CST:
13512 : 41898 : {
13513 : 41898 : switch (TREE_CODE (_p1))
13514 : : {
13515 : 41898 : case INTEGER_CST:
13516 : 41898 : {
13517 : 41898 : {
13518 : 41898 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q30, _q40, _q31, _p1 };
13519 : 41898 : tree res = generic_simplify_422 (loc, type, _p0, _p1, captures, RSHIFT_EXPR);
13520 : 41898 : if (res) return res;
13521 : : }
13522 : 41839 : break;
13523 : : }
13524 : : default:;
13525 : : }
13526 : : break;
13527 : : }
13528 : 41966 : default:;
13529 : : }
13530 : 41966 : switch (TREE_CODE (_q40))
13531 : : {
13532 : 2 : case CALL_EXPR:
13533 : 2 : switch (get_call_combined_fn (_q40))
13534 : : {
13535 : 0 : case CFN_BUILT_IN_BSWAP128:
13536 : 0 : if (call_expr_nargs (_q40) == 1)
13537 : : {
13538 : 0 : tree _q50 = CALL_EXPR_ARG (_q40, 0);
13539 : 0 : switch (TREE_CODE (_q31))
13540 : : {
13541 : 0 : case INTEGER_CST:
13542 : 0 : {
13543 : 0 : switch (TREE_CODE (_p1))
13544 : : {
13545 : 0 : case INTEGER_CST:
13546 : 0 : {
13547 : 0 : {
13548 : 0 : tree captures[5] ATTRIBUTE_UNUSED = { _q20, _q40, _q50, _q31, _p1 };
13549 : 0 : tree res = generic_simplify_424 (loc, type, _p0, _p1, captures, CFN_BUILT_IN_BSWAP128);
13550 : 0 : if (res) return res;
13551 : : }
13552 : 0 : break;
13553 : : }
13554 : : default:;
13555 : : }
13556 : : break;
13557 : : }
13558 : : default:;
13559 : : }
13560 : : }
13561 : : break;
13562 : 2 : case CFN_BUILT_IN_BSWAP16:
13563 : 2 : if (call_expr_nargs (_q40) == 1)
13564 : : {
13565 : 2 : tree _q50 = CALL_EXPR_ARG (_q40, 0);
13566 : 2 : switch (TREE_CODE (_q31))
13567 : : {
13568 : 2 : case INTEGER_CST:
13569 : 2 : {
13570 : 2 : switch (TREE_CODE (_p1))
13571 : : {
13572 : 2 : case INTEGER_CST:
13573 : 2 : {
13574 : 2 : {
13575 : 2 : tree captures[5] ATTRIBUTE_UNUSED = { _q20, _q40, _q50, _q31, _p1 };
13576 : 2 : tree res = generic_simplify_424 (loc, type, _p0, _p1, captures, CFN_BUILT_IN_BSWAP16);
13577 : 2 : if (res) return res;
13578 : : }
13579 : 0 : break;
13580 : : }
13581 : : default:;
13582 : : }
13583 : : break;
13584 : : }
13585 : : default:;
13586 : : }
13587 : : }
13588 : : break;
13589 : 0 : case CFN_BUILT_IN_BSWAP32:
13590 : 0 : if (call_expr_nargs (_q40) == 1)
13591 : : {
13592 : 0 : tree _q50 = CALL_EXPR_ARG (_q40, 0);
13593 : 0 : switch (TREE_CODE (_q31))
13594 : : {
13595 : 0 : case INTEGER_CST:
13596 : 0 : {
13597 : 0 : switch (TREE_CODE (_p1))
13598 : : {
13599 : 0 : case INTEGER_CST:
13600 : 0 : {
13601 : 0 : {
13602 : 0 : tree captures[5] ATTRIBUTE_UNUSED = { _q20, _q40, _q50, _q31, _p1 };
13603 : 0 : tree res = generic_simplify_424 (loc, type, _p0, _p1, captures, CFN_BUILT_IN_BSWAP32);
13604 : 0 : if (res) return res;
13605 : : }
13606 : 0 : break;
13607 : : }
13608 : : default:;
13609 : : }
13610 : : break;
13611 : : }
13612 : : default:;
13613 : : }
13614 : : }
13615 : : break;
13616 : 0 : case CFN_BUILT_IN_BSWAP64:
13617 : 0 : if (call_expr_nargs (_q40) == 1)
13618 : : {
13619 : 0 : tree _q50 = CALL_EXPR_ARG (_q40, 0);
13620 : 0 : switch (TREE_CODE (_q31))
13621 : : {
13622 : 0 : case INTEGER_CST:
13623 : 0 : {
13624 : 0 : switch (TREE_CODE (_p1))
13625 : : {
13626 : 0 : case INTEGER_CST:
13627 : 0 : {
13628 : 0 : {
13629 : 0 : tree captures[5] ATTRIBUTE_UNUSED = { _q20, _q40, _q50, _q31, _p1 };
13630 : 0 : tree res = generic_simplify_424 (loc, type, _p0, _p1, captures, CFN_BUILT_IN_BSWAP64);
13631 : 0 : if (res) return res;
13632 : : }
13633 : 0 : break;
13634 : : }
13635 : : default:;
13636 : : }
13637 : : break;
13638 : : }
13639 : : default:;
13640 : : }
13641 : : }
13642 : : break;
13643 : : default:;
13644 : : }
13645 : : break;
13646 : : default:;
13647 : : }
13648 : : break;
13649 : : }
13650 : 64593 : default:;
13651 : : }
13652 : 64593 : switch (TREE_CODE (_q31))
13653 : : {
13654 : 47663 : case INTEGER_CST:
13655 : 47663 : {
13656 : 47663 : switch (TREE_CODE (_p1))
13657 : : {
13658 : 47591 : case INTEGER_CST:
13659 : 47591 : {
13660 : 47591 : {
13661 : 47591 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q30, _q30, _q31, _p1 };
13662 : 47591 : tree res = generic_simplify_423 (loc, type, _p0, _p1, captures, RSHIFT_EXPR);
13663 : 47591 : if (res) return res;
13664 : : }
13665 : 47553 : break;
13666 : : }
13667 : : default:;
13668 : : }
13669 : : break;
13670 : : }
13671 : 64555 : default:;
13672 : : }
13673 : 64555 : switch (TREE_CODE (_q30))
13674 : : {
13675 : 80 : case CALL_EXPR:
13676 : 80 : switch (get_call_combined_fn (_q30))
13677 : : {
13678 : 0 : case CFN_BUILT_IN_BSWAP128:
13679 : 0 : if (call_expr_nargs (_q30) == 1)
13680 : : {
13681 : 0 : tree _q40 = CALL_EXPR_ARG (_q30, 0);
13682 : 0 : switch (TREE_CODE (_q31))
13683 : : {
13684 : 0 : case INTEGER_CST:
13685 : 0 : {
13686 : 0 : switch (TREE_CODE (_p1))
13687 : : {
13688 : 0 : case INTEGER_CST:
13689 : 0 : {
13690 : 0 : {
13691 : 0 : tree captures[5] ATTRIBUTE_UNUSED = { _q20, _q30, _q40, _q31, _p1 };
13692 : 0 : tree res = generic_simplify_424 (loc, type, _p0, _p1, captures, CFN_BUILT_IN_BSWAP128);
13693 : 0 : if (res) return res;
13694 : : }
13695 : 0 : break;
13696 : : }
13697 : : default:;
13698 : : }
13699 : : break;
13700 : : }
13701 : : default:;
13702 : : }
13703 : : }
13704 : : break;
13705 : 9 : case CFN_BUILT_IN_BSWAP16:
13706 : 9 : if (call_expr_nargs (_q30) == 1)
13707 : : {
13708 : 9 : tree _q40 = CALL_EXPR_ARG (_q30, 0);
13709 : 9 : switch (TREE_CODE (_q31))
13710 : : {
13711 : 9 : case INTEGER_CST:
13712 : 9 : {
13713 : 9 : switch (TREE_CODE (_p1))
13714 : : {
13715 : 9 : case INTEGER_CST:
13716 : 9 : {
13717 : 9 : {
13718 : 9 : tree captures[5] ATTRIBUTE_UNUSED = { _q20, _q30, _q40, _q31, _p1 };
13719 : 9 : tree res = generic_simplify_424 (loc, type, _p0, _p1, captures, CFN_BUILT_IN_BSWAP16);
13720 : 9 : if (res) return res;
13721 : : }
13722 : 0 : break;
13723 : : }
13724 : : default:;
13725 : : }
13726 : : break;
13727 : : }
13728 : : default:;
13729 : : }
13730 : : }
13731 : : break;
13732 : 0 : case CFN_BUILT_IN_BSWAP32:
13733 : 0 : if (call_expr_nargs (_q30) == 1)
13734 : : {
13735 : 0 : tree _q40 = CALL_EXPR_ARG (_q30, 0);
13736 : 0 : switch (TREE_CODE (_q31))
13737 : : {
13738 : 0 : case INTEGER_CST:
13739 : 0 : {
13740 : 0 : switch (TREE_CODE (_p1))
13741 : : {
13742 : 0 : case INTEGER_CST:
13743 : 0 : {
13744 : 0 : {
13745 : 0 : tree captures[5] ATTRIBUTE_UNUSED = { _q20, _q30, _q40, _q31, _p1 };
13746 : 0 : tree res = generic_simplify_424 (loc, type, _p0, _p1, captures, CFN_BUILT_IN_BSWAP32);
13747 : 0 : if (res) return res;
13748 : : }
13749 : 0 : break;
13750 : : }
13751 : : default:;
13752 : : }
13753 : : break;
13754 : : }
13755 : : default:;
13756 : : }
13757 : : }
13758 : : break;
13759 : 71 : case CFN_BUILT_IN_BSWAP64:
13760 : 71 : if (call_expr_nargs (_q30) == 1)
13761 : : {
13762 : 71 : tree _q40 = CALL_EXPR_ARG (_q30, 0);
13763 : 71 : switch (TREE_CODE (_q31))
13764 : : {
13765 : 70 : case INTEGER_CST:
13766 : 70 : {
13767 : 70 : switch (TREE_CODE (_p1))
13768 : : {
13769 : 70 : case INTEGER_CST:
13770 : 70 : {
13771 : 70 : {
13772 : 70 : tree captures[5] ATTRIBUTE_UNUSED = { _q20, _q30, _q40, _q31, _p1 };
13773 : 70 : tree res = generic_simplify_424 (loc, type, _p0, _p1, captures, CFN_BUILT_IN_BSWAP64);
13774 : 70 : if (res) return res;
13775 : : }
13776 : 0 : break;
13777 : : }
13778 : : default:;
13779 : : }
13780 : : break;
13781 : : }
13782 : : default:;
13783 : : }
13784 : : }
13785 : : break;
13786 : : default:;
13787 : : }
13788 : : break;
13789 : : default:;
13790 : : }
13791 : : break;
13792 : : }
13793 : 30628 : case CALL_EXPR:
13794 : 30628 : switch (get_call_combined_fn (_q20))
13795 : : {
13796 : 0 : case CFN_BUILT_IN_BSWAP128:
13797 : 0 : if (call_expr_nargs (_q20) == 1)
13798 : : {
13799 : 0 : tree _q30 = CALL_EXPR_ARG (_q20, 0);
13800 : 0 : switch (TREE_CODE (_p1))
13801 : : {
13802 : 0 : case INTEGER_CST:
13803 : 0 : {
13804 : 0 : {
13805 : 0 : tree captures[3] ATTRIBUTE_UNUSED = { _q20, _q30, _p1 };
13806 : 0 : tree res = generic_simplify_425 (loc, type, _p0, _p1, captures, CFN_BUILT_IN_BSWAP128);
13807 : 0 : if (res) return res;
13808 : : }
13809 : 0 : break;
13810 : : }
13811 : : default:;
13812 : : }
13813 : : }
13814 : : break;
13815 : 10 : case CFN_BUILT_IN_BSWAP16:
13816 : 10 : if (call_expr_nargs (_q20) == 1)
13817 : : {
13818 : 10 : tree _q30 = CALL_EXPR_ARG (_q20, 0);
13819 : 10 : switch (TREE_CODE (_p1))
13820 : : {
13821 : 10 : case INTEGER_CST:
13822 : 10 : {
13823 : 10 : {
13824 : 10 : tree captures[3] ATTRIBUTE_UNUSED = { _q20, _q30, _p1 };
13825 : 10 : tree res = generic_simplify_425 (loc, type, _p0, _p1, captures, CFN_BUILT_IN_BSWAP16);
13826 : 10 : if (res) return res;
13827 : : }
13828 : 0 : break;
13829 : : }
13830 : : default:;
13831 : : }
13832 : : }
13833 : : break;
13834 : 4 : case CFN_BUILT_IN_BSWAP32:
13835 : 4 : if (call_expr_nargs (_q20) == 1)
13836 : : {
13837 : 4 : tree _q30 = CALL_EXPR_ARG (_q20, 0);
13838 : 4 : switch (TREE_CODE (_p1))
13839 : : {
13840 : 4 : case INTEGER_CST:
13841 : 4 : {
13842 : 4 : {
13843 : 4 : tree captures[3] ATTRIBUTE_UNUSED = { _q20, _q30, _p1 };
13844 : 4 : tree res = generic_simplify_425 (loc, type, _p0, _p1, captures, CFN_BUILT_IN_BSWAP32);
13845 : 4 : if (res) return res;
13846 : : }
13847 : 0 : break;
13848 : : }
13849 : : default:;
13850 : : }
13851 : : }
13852 : : break;
13853 : 4 : case CFN_BUILT_IN_BSWAP64:
13854 : 4 : if (call_expr_nargs (_q20) == 1)
13855 : : {
13856 : 4 : tree _q30 = CALL_EXPR_ARG (_q20, 0);
13857 : 4 : switch (TREE_CODE (_p1))
13858 : : {
13859 : 4 : case INTEGER_CST:
13860 : 4 : {
13861 : 4 : {
13862 : 4 : tree captures[3] ATTRIBUTE_UNUSED = { _q20, _q30, _p1 };
13863 : 4 : tree res = generic_simplify_425 (loc, type, _p0, _p1, captures, CFN_BUILT_IN_BSWAP64);
13864 : 4 : if (res) return res;
13865 : : }
13866 : 0 : break;
13867 : : }
13868 : : default:;
13869 : : }
13870 : : }
13871 : : break;
13872 : : default:;
13873 : : }
13874 : : break;
13875 : : default:;
13876 : : }
13877 : : break;
13878 : : }
13879 : 5727630 : default:;
13880 : : }
13881 : 5727630 : switch (TREE_CODE (_p1))
13882 : : {
13883 : 3942179 : case INTEGER_CST:
13884 : 3942179 : {
13885 : 3942179 : {
13886 : 3942179 : tree captures[2] ATTRIBUTE_UNUSED = { _p0, _p1 };
13887 : 3942179 : tree res = generic_simplify_421 (loc, type, _p0, _p1, captures);
13888 : 3942179 : if (res) return res;
13889 : : }
13890 : 3942179 : break;
13891 : : }
13892 : 5727630 : default:;
13893 : : }
13894 : 5727630 : switch (TREE_CODE (_p0))
13895 : : {
13896 : 323 : case GT_EXPR:
13897 : 323 : {
13898 : 323 : tree _q20 = TREE_OPERAND (_p0, 0);
13899 : 323 : tree _q21 = TREE_OPERAND (_p0, 1);
13900 : 323 : switch (TREE_CODE (_p1))
13901 : : {
13902 : 34 : case EQ_EXPR:
13903 : 34 : {
13904 : 34 : tree _q50 = TREE_OPERAND (_p1, 0);
13905 : 34 : tree _q51 = TREE_OPERAND (_p1, 1);
13906 : 34 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
13907 : : {
13908 : 4 : if (tree_min_value (_q51))
13909 : : {
13910 : 0 : {
13911 : 0 : tree captures[3] ATTRIBUTE_UNUSED = { _p0, _q20, _q21 };
13912 : 0 : tree res = generic_simplify_426 (loc, type, _p0, _p1, captures, EQ_EXPR);
13913 : 0 : if (res) return res;
13914 : : }
13915 : : }
13916 : : }
13917 : 34 : if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
13918 : : {
13919 : 0 : if (tree_max_value (_q51))
13920 : : {
13921 : 0 : {
13922 : 0 : tree captures[3] ATTRIBUTE_UNUSED = { _p0, _q21, _q20 };
13923 : 0 : tree res = generic_simplify_427 (loc, type, _p0, _p1, captures, EQ_EXPR);
13924 : 0 : if (res) return res;
13925 : : }
13926 : : }
13927 : : }
13928 : : break;
13929 : : }
13930 : 0 : case NE_EXPR:
13931 : 0 : {
13932 : 0 : tree _q50 = TREE_OPERAND (_p1, 0);
13933 : 0 : tree _q51 = TREE_OPERAND (_p1, 1);
13934 : 0 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
13935 : : {
13936 : 0 : if (tree_min_value (_q51))
13937 : : {
13938 : 0 : {
13939 : 0 : tree captures[3] ATTRIBUTE_UNUSED = { _p0, _q20, _q21 };
13940 : 0 : tree res = generic_simplify_426 (loc, type, _p0, _p1, captures, NE_EXPR);
13941 : 0 : if (res) return res;
13942 : : }
13943 : : }
13944 : : }
13945 : 0 : if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
13946 : : {
13947 : 0 : if (tree_max_value (_q51))
13948 : : {
13949 : 0 : {
13950 : 0 : tree captures[3] ATTRIBUTE_UNUSED = { _p0, _q21, _q20 };
13951 : 0 : tree res = generic_simplify_427 (loc, type, _p0, _p1, captures, NE_EXPR);
13952 : 0 : if (res) return res;
13953 : : }
13954 : : }
13955 : : }
13956 : : break;
13957 : : }
13958 : 323 : default:;
13959 : : }
13960 : 323 : switch (TREE_CODE (_q20))
13961 : : {
13962 : 0 : CASE_CONVERT:
13963 : 0 : {
13964 : 0 : tree _q30 = TREE_OPERAND (_q20, 0);
13965 : 0 : switch (TREE_CODE (_p1))
13966 : : {
13967 : 0 : case EQ_EXPR:
13968 : 0 : {
13969 : 0 : tree _q60 = TREE_OPERAND (_p1, 0);
13970 : 0 : tree _q61 = TREE_OPERAND (_p1, 1);
13971 : 0 : if ((_q60 == _q30 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q30, 0) && types_match (_q60, _q30)))
13972 : : {
13973 : 0 : {
13974 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q30, _q61, _p0, _q20, _q21 };
13975 : 0 : tree res = generic_simplify_428 (loc, type, _p0, _p1, captures, GT_EXPR, EQ_EXPR);
13976 : 0 : if (res) return res;
13977 : : }
13978 : : }
13979 : 0 : if ((_q61 == _q30 && ! TREE_SIDE_EFFECTS (_q61)) || (operand_equal_p (_q61, _q30, 0) && types_match (_q61, _q30)))
13980 : : {
13981 : 0 : {
13982 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q30, _q60, _p0, _q20, _q21 };
13983 : 0 : tree res = generic_simplify_428 (loc, type, _p0, _p1, captures, GT_EXPR, EQ_EXPR);
13984 : 0 : if (res) return res;
13985 : : }
13986 : : }
13987 : : break;
13988 : : }
13989 : 0 : case NE_EXPR:
13990 : 0 : {
13991 : 0 : tree _q60 = TREE_OPERAND (_p1, 0);
13992 : 0 : tree _q61 = TREE_OPERAND (_p1, 1);
13993 : 0 : if ((_q60 == _q30 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q30, 0) && types_match (_q60, _q30)))
13994 : : {
13995 : 0 : {
13996 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q30, _q61, _p0, _q20, _q21 };
13997 : 0 : tree res = generic_simplify_428 (loc, type, _p0, _p1, captures, GT_EXPR, NE_EXPR);
13998 : 0 : if (res) return res;
13999 : : }
14000 : : }
14001 : 0 : if ((_q61 == _q30 && ! TREE_SIDE_EFFECTS (_q61)) || (operand_equal_p (_q61, _q30, 0) && types_match (_q61, _q30)))
14002 : : {
14003 : 0 : {
14004 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q30, _q60, _p0, _q20, _q21 };
14005 : 0 : tree res = generic_simplify_428 (loc, type, _p0, _p1, captures, GT_EXPR, NE_EXPR);
14006 : 0 : if (res) return res;
14007 : : }
14008 : : }
14009 : : break;
14010 : : }
14011 : : default:;
14012 : : }
14013 : : break;
14014 : : }
14015 : 323 : default:;
14016 : : }
14017 : 323 : switch (TREE_CODE (_q21))
14018 : : {
14019 : 0 : CASE_CONVERT:
14020 : 0 : {
14021 : 0 : tree _q40 = TREE_OPERAND (_q21, 0);
14022 : 0 : switch (TREE_CODE (_p1))
14023 : : {
14024 : 0 : case EQ_EXPR:
14025 : 0 : {
14026 : 0 : tree _q60 = TREE_OPERAND (_p1, 0);
14027 : 0 : tree _q61 = TREE_OPERAND (_p1, 1);
14028 : 0 : if ((_q60 == _q40 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q40, 0) && types_match (_q60, _q40)))
14029 : : {
14030 : 0 : {
14031 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q40, _q61, _p0, _q21, _q20 };
14032 : 0 : tree res = generic_simplify_428 (loc, type, _p0, _p1, captures, LT_EXPR, EQ_EXPR);
14033 : 0 : if (res) return res;
14034 : : }
14035 : : }
14036 : 0 : if ((_q61 == _q40 && ! TREE_SIDE_EFFECTS (_q61)) || (operand_equal_p (_q61, _q40, 0) && types_match (_q61, _q40)))
14037 : : {
14038 : 0 : {
14039 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q40, _q60, _p0, _q21, _q20 };
14040 : 0 : tree res = generic_simplify_428 (loc, type, _p0, _p1, captures, LT_EXPR, EQ_EXPR);
14041 : 0 : if (res) return res;
14042 : : }
14043 : : }
14044 : : break;
14045 : : }
14046 : 0 : case NE_EXPR:
14047 : 0 : {
14048 : 0 : tree _q60 = TREE_OPERAND (_p1, 0);
14049 : 0 : tree _q61 = TREE_OPERAND (_p1, 1);
14050 : 0 : if ((_q60 == _q40 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q40, 0) && types_match (_q60, _q40)))
14051 : : {
14052 : 0 : {
14053 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q40, _q61, _p0, _q21, _q20 };
14054 : 0 : tree res = generic_simplify_428 (loc, type, _p0, _p1, captures, LT_EXPR, NE_EXPR);
14055 : 0 : if (res) return res;
14056 : : }
14057 : : }
14058 : 0 : if ((_q61 == _q40 && ! TREE_SIDE_EFFECTS (_q61)) || (operand_equal_p (_q61, _q40, 0) && types_match (_q61, _q40)))
14059 : : {
14060 : 0 : {
14061 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q40, _q60, _p0, _q21, _q20 };
14062 : 0 : tree res = generic_simplify_428 (loc, type, _p0, _p1, captures, LT_EXPR, NE_EXPR);
14063 : 0 : if (res) return res;
14064 : : }
14065 : : }
14066 : : break;
14067 : : }
14068 : : default:;
14069 : : }
14070 : : break;
14071 : : }
14072 : 323 : default:;
14073 : : }
14074 : 323 : switch (TREE_CODE (_p1))
14075 : : {
14076 : 34 : case EQ_EXPR:
14077 : 34 : {
14078 : 34 : tree _q50 = TREE_OPERAND (_p1, 0);
14079 : 34 : tree _q51 = TREE_OPERAND (_p1, 1);
14080 : 34 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
14081 : : {
14082 : 4 : {
14083 : 4 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q20, _q51, _p0, _q20, _q21 };
14084 : 4 : tree res = generic_simplify_429 (loc, type, _p0, _p1, captures, GT_EXPR, EQ_EXPR);
14085 : 4 : if (res) return res;
14086 : : }
14087 : : }
14088 : 34 : if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
14089 : : {
14090 : 0 : {
14091 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q21, _q51, _p0, _q21, _q20 };
14092 : 0 : tree res = generic_simplify_429 (loc, type, _p0, _p1, captures, LT_EXPR, EQ_EXPR);
14093 : 0 : if (res) return res;
14094 : : }
14095 : : }
14096 : 34 : if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
14097 : : {
14098 : 0 : {
14099 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q20, _q50, _p0, _q20, _q21 };
14100 : 0 : tree res = generic_simplify_429 (loc, type, _p0, _p1, captures, GT_EXPR, EQ_EXPR);
14101 : 0 : if (res) return res;
14102 : : }
14103 : : }
14104 : 34 : if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
14105 : : {
14106 : 0 : {
14107 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q21, _q50, _p0, _q21, _q20 };
14108 : 0 : tree res = generic_simplify_429 (loc, type, _p0, _p1, captures, LT_EXPR, EQ_EXPR);
14109 : 0 : if (res) return res;
14110 : : }
14111 : : }
14112 : : break;
14113 : : }
14114 : 0 : case NE_EXPR:
14115 : 0 : {
14116 : 0 : tree _q50 = TREE_OPERAND (_p1, 0);
14117 : 0 : tree _q51 = TREE_OPERAND (_p1, 1);
14118 : 0 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
14119 : : {
14120 : 0 : {
14121 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q20, _q51, _p0, _q20, _q21 };
14122 : 0 : tree res = generic_simplify_429 (loc, type, _p0, _p1, captures, GT_EXPR, NE_EXPR);
14123 : 0 : if (res) return res;
14124 : : }
14125 : : }
14126 : 0 : if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
14127 : : {
14128 : 0 : {
14129 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q21, _q51, _p0, _q21, _q20 };
14130 : 0 : tree res = generic_simplify_429 (loc, type, _p0, _p1, captures, LT_EXPR, NE_EXPR);
14131 : 0 : if (res) return res;
14132 : : }
14133 : : }
14134 : 0 : if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
14135 : : {
14136 : 0 : {
14137 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q20, _q50, _p0, _q20, _q21 };
14138 : 0 : tree res = generic_simplify_429 (loc, type, _p0, _p1, captures, GT_EXPR, NE_EXPR);
14139 : 0 : if (res) return res;
14140 : : }
14141 : : }
14142 : 0 : if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
14143 : : {
14144 : 0 : {
14145 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q21, _q50, _p0, _q21, _q20 };
14146 : 0 : tree res = generic_simplify_429 (loc, type, _p0, _p1, captures, LT_EXPR, NE_EXPR);
14147 : 0 : if (res) return res;
14148 : : }
14149 : : }
14150 : : break;
14151 : : }
14152 : 67 : case LT_EXPR:
14153 : 67 : {
14154 : 67 : tree _q50 = TREE_OPERAND (_p1, 0);
14155 : 67 : tree _q51 = TREE_OPERAND (_p1, 1);
14156 : 67 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
14157 : : {
14158 : 4 : {
14159 : 4 : tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q51 };
14160 : 4 : tree res = generic_simplify_430 (loc, type, _p0, _p1, captures, LT_EXPR, GT_EXPR);
14161 : 4 : if (res) return res;
14162 : : }
14163 : : }
14164 : 67 : if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
14165 : : {
14166 : 0 : {
14167 : 0 : tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q50 };
14168 : 0 : tree res = generic_simplify_430 (loc, type, _p0, _p1, captures, GT_EXPR, GT_EXPR);
14169 : 0 : if (res) return res;
14170 : : }
14171 : : }
14172 : 67 : if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
14173 : : {
14174 : 0 : {
14175 : 0 : tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q51 };
14176 : 0 : tree res = generic_simplify_430 (loc, type, _p0, _p1, captures, LT_EXPR, LT_EXPR);
14177 : 0 : if (res) return res;
14178 : : }
14179 : : }
14180 : 67 : if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
14181 : : {
14182 : 4 : {
14183 : 4 : tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q50 };
14184 : 4 : tree res = generic_simplify_430 (loc, type, _p0, _p1, captures, GT_EXPR, LT_EXPR);
14185 : 4 : if (res) return res;
14186 : : }
14187 : : }
14188 : : break;
14189 : : }
14190 : 72 : case LE_EXPR:
14191 : 72 : {
14192 : 72 : tree _q50 = TREE_OPERAND (_p1, 0);
14193 : 72 : tree _q51 = TREE_OPERAND (_p1, 1);
14194 : 72 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
14195 : : {
14196 : 23 : {
14197 : 23 : tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q51 };
14198 : 23 : tree res = generic_simplify_430 (loc, type, _p0, _p1, captures, LE_EXPR, GT_EXPR);
14199 : 23 : if (res) return res;
14200 : : }
14201 : : }
14202 : 72 : if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
14203 : : {
14204 : 0 : {
14205 : 0 : tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q50 };
14206 : 0 : tree res = generic_simplify_430 (loc, type, _p0, _p1, captures, GE_EXPR, GT_EXPR);
14207 : 0 : if (res) return res;
14208 : : }
14209 : : }
14210 : 72 : if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
14211 : : {
14212 : 0 : {
14213 : 0 : tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q51 };
14214 : 0 : tree res = generic_simplify_430 (loc, type, _p0, _p1, captures, LE_EXPR, LT_EXPR);
14215 : 0 : if (res) return res;
14216 : : }
14217 : : }
14218 : 72 : if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
14219 : : {
14220 : 0 : {
14221 : 0 : tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q50 };
14222 : 0 : tree res = generic_simplify_430 (loc, type, _p0, _p1, captures, GE_EXPR, LT_EXPR);
14223 : 0 : if (res) return res;
14224 : : }
14225 : : }
14226 : : break;
14227 : : }
14228 : 81 : case GT_EXPR:
14229 : 81 : {
14230 : 81 : tree _q50 = TREE_OPERAND (_p1, 0);
14231 : 81 : tree _q51 = TREE_OPERAND (_p1, 1);
14232 : 81 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
14233 : : {
14234 : 0 : {
14235 : 0 : tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q51 };
14236 : 0 : tree res = generic_simplify_430 (loc, type, _p0, _p1, captures, GT_EXPR, GT_EXPR);
14237 : 0 : if (res) return res;
14238 : : }
14239 : : }
14240 : 81 : if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
14241 : : {
14242 : 0 : {
14243 : 0 : tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q50 };
14244 : 0 : tree res = generic_simplify_430 (loc, type, _p0, _p1, captures, LT_EXPR, GT_EXPR);
14245 : 0 : if (res) return res;
14246 : : }
14247 : : }
14248 : 81 : if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
14249 : : {
14250 : 0 : {
14251 : 0 : tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q51 };
14252 : 0 : tree res = generic_simplify_430 (loc, type, _p0, _p1, captures, GT_EXPR, LT_EXPR);
14253 : 0 : if (res) return res;
14254 : : }
14255 : : }
14256 : 81 : if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
14257 : : {
14258 : 31 : {
14259 : 31 : tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q50 };
14260 : 31 : tree res = generic_simplify_430 (loc, type, _p0, _p1, captures, LT_EXPR, LT_EXPR);
14261 : 31 : if (res) return res;
14262 : : }
14263 : : }
14264 : : break;
14265 : : }
14266 : 0 : case GE_EXPR:
14267 : 0 : {
14268 : 0 : tree _q50 = TREE_OPERAND (_p1, 0);
14269 : 0 : tree _q51 = TREE_OPERAND (_p1, 1);
14270 : 0 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
14271 : : {
14272 : 0 : {
14273 : 0 : tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q51 };
14274 : 0 : tree res = generic_simplify_430 (loc, type, _p0, _p1, captures, GE_EXPR, GT_EXPR);
14275 : 0 : if (res) return res;
14276 : : }
14277 : : }
14278 : 0 : if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
14279 : : {
14280 : 0 : {
14281 : 0 : tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q50 };
14282 : 0 : tree res = generic_simplify_430 (loc, type, _p0, _p1, captures, LE_EXPR, GT_EXPR);
14283 : 0 : if (res) return res;
14284 : : }
14285 : : }
14286 : 0 : if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
14287 : : {
14288 : 0 : {
14289 : 0 : tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q51 };
14290 : 0 : tree res = generic_simplify_430 (loc, type, _p0, _p1, captures, GE_EXPR, LT_EXPR);
14291 : 0 : if (res) return res;
14292 : : }
14293 : : }
14294 : 0 : if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
14295 : : {
14296 : 0 : {
14297 : 0 : tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q50 };
14298 : 0 : tree res = generic_simplify_430 (loc, type, _p0, _p1, captures, LE_EXPR, LT_EXPR);
14299 : 0 : if (res) return res;
14300 : : }
14301 : : }
14302 : : break;
14303 : : }
14304 : : default:;
14305 : : }
14306 : : break;
14307 : : }
14308 : 53 : case LT_EXPR:
14309 : 53 : {
14310 : 53 : tree _q20 = TREE_OPERAND (_p0, 0);
14311 : 53 : tree _q21 = TREE_OPERAND (_p0, 1);
14312 : 53 : switch (TREE_CODE (_p1))
14313 : : {
14314 : 4 : case EQ_EXPR:
14315 : 4 : {
14316 : 4 : tree _q50 = TREE_OPERAND (_p1, 0);
14317 : 4 : tree _q51 = TREE_OPERAND (_p1, 1);
14318 : 4 : if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
14319 : : {
14320 : 0 : if (tree_min_value (_q51))
14321 : : {
14322 : 0 : {
14323 : 0 : tree captures[3] ATTRIBUTE_UNUSED = { _p0, _q21, _q20 };
14324 : 0 : tree res = generic_simplify_426 (loc, type, _p0, _p1, captures, EQ_EXPR);
14325 : 0 : if (res) return res;
14326 : : }
14327 : : }
14328 : : }
14329 : 4 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
14330 : : {
14331 : 0 : if (tree_max_value (_q51))
14332 : : {
14333 : 0 : {
14334 : 0 : tree captures[3] ATTRIBUTE_UNUSED = { _p0, _q20, _q21 };
14335 : 0 : tree res = generic_simplify_427 (loc, type, _p0, _p1, captures, EQ_EXPR);
14336 : 0 : if (res) return res;
14337 : : }
14338 : : }
14339 : : }
14340 : : break;
14341 : : }
14342 : 2 : case NE_EXPR:
14343 : 2 : {
14344 : 2 : tree _q50 = TREE_OPERAND (_p1, 0);
14345 : 2 : tree _q51 = TREE_OPERAND (_p1, 1);
14346 : 2 : if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
14347 : : {
14348 : 0 : if (tree_min_value (_q51))
14349 : : {
14350 : 0 : {
14351 : 0 : tree captures[3] ATTRIBUTE_UNUSED = { _p0, _q21, _q20 };
14352 : 0 : tree res = generic_simplify_426 (loc, type, _p0, _p1, captures, NE_EXPR);
14353 : 0 : if (res) return res;
14354 : : }
14355 : : }
14356 : : }
14357 : 2 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
14358 : : {
14359 : 0 : if (tree_max_value (_q51))
14360 : : {
14361 : 0 : {
14362 : 0 : tree captures[3] ATTRIBUTE_UNUSED = { _p0, _q20, _q21 };
14363 : 0 : tree res = generic_simplify_427 (loc, type, _p0, _p1, captures, NE_EXPR);
14364 : 0 : if (res) return res;
14365 : : }
14366 : : }
14367 : : }
14368 : : break;
14369 : : }
14370 : 53 : default:;
14371 : : }
14372 : 53 : switch (TREE_CODE (_q20))
14373 : : {
14374 : 8 : CASE_CONVERT:
14375 : 8 : {
14376 : 8 : tree _q30 = TREE_OPERAND (_q20, 0);
14377 : 8 : switch (TREE_CODE (_p1))
14378 : : {
14379 : 0 : case EQ_EXPR:
14380 : 0 : {
14381 : 0 : tree _q60 = TREE_OPERAND (_p1, 0);
14382 : 0 : tree _q61 = TREE_OPERAND (_p1, 1);
14383 : 0 : if ((_q60 == _q30 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q30, 0) && types_match (_q60, _q30)))
14384 : : {
14385 : 0 : {
14386 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q30, _q61, _p0, _q20, _q21 };
14387 : 0 : tree res = generic_simplify_428 (loc, type, _p0, _p1, captures, LT_EXPR, EQ_EXPR);
14388 : 0 : if (res) return res;
14389 : : }
14390 : : }
14391 : 0 : if ((_q61 == _q30 && ! TREE_SIDE_EFFECTS (_q61)) || (operand_equal_p (_q61, _q30, 0) && types_match (_q61, _q30)))
14392 : : {
14393 : 0 : {
14394 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q30, _q60, _p0, _q20, _q21 };
14395 : 0 : tree res = generic_simplify_428 (loc, type, _p0, _p1, captures, LT_EXPR, EQ_EXPR);
14396 : 0 : if (res) return res;
14397 : : }
14398 : : }
14399 : : break;
14400 : : }
14401 : 0 : case NE_EXPR:
14402 : 0 : {
14403 : 0 : tree _q60 = TREE_OPERAND (_p1, 0);
14404 : 0 : tree _q61 = TREE_OPERAND (_p1, 1);
14405 : 0 : if ((_q60 == _q30 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q30, 0) && types_match (_q60, _q30)))
14406 : : {
14407 : 0 : {
14408 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q30, _q61, _p0, _q20, _q21 };
14409 : 0 : tree res = generic_simplify_428 (loc, type, _p0, _p1, captures, LT_EXPR, NE_EXPR);
14410 : 0 : if (res) return res;
14411 : : }
14412 : : }
14413 : 0 : if ((_q61 == _q30 && ! TREE_SIDE_EFFECTS (_q61)) || (operand_equal_p (_q61, _q30, 0) && types_match (_q61, _q30)))
14414 : : {
14415 : 0 : {
14416 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q30, _q60, _p0, _q20, _q21 };
14417 : 0 : tree res = generic_simplify_428 (loc, type, _p0, _p1, captures, LT_EXPR, NE_EXPR);
14418 : 0 : if (res) return res;
14419 : : }
14420 : : }
14421 : : break;
14422 : : }
14423 : : default:;
14424 : : }
14425 : : break;
14426 : : }
14427 : 53 : default:;
14428 : : }
14429 : 53 : switch (TREE_CODE (_q21))
14430 : : {
14431 : 2 : CASE_CONVERT:
14432 : 2 : {
14433 : 2 : tree _q40 = TREE_OPERAND (_q21, 0);
14434 : 2 : switch (TREE_CODE (_p1))
14435 : : {
14436 : 0 : case EQ_EXPR:
14437 : 0 : {
14438 : 0 : tree _q60 = TREE_OPERAND (_p1, 0);
14439 : 0 : tree _q61 = TREE_OPERAND (_p1, 1);
14440 : 0 : if ((_q60 == _q40 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q40, 0) && types_match (_q60, _q40)))
14441 : : {
14442 : 0 : {
14443 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q40, _q61, _p0, _q21, _q20 };
14444 : 0 : tree res = generic_simplify_428 (loc, type, _p0, _p1, captures, GT_EXPR, EQ_EXPR);
14445 : 0 : if (res) return res;
14446 : : }
14447 : : }
14448 : 0 : if ((_q61 == _q40 && ! TREE_SIDE_EFFECTS (_q61)) || (operand_equal_p (_q61, _q40, 0) && types_match (_q61, _q40)))
14449 : : {
14450 : 0 : {
14451 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q40, _q60, _p0, _q21, _q20 };
14452 : 0 : tree res = generic_simplify_428 (loc, type, _p0, _p1, captures, GT_EXPR, EQ_EXPR);
14453 : 0 : if (res) return res;
14454 : : }
14455 : : }
14456 : : break;
14457 : : }
14458 : 0 : case NE_EXPR:
14459 : 0 : {
14460 : 0 : tree _q60 = TREE_OPERAND (_p1, 0);
14461 : 0 : tree _q61 = TREE_OPERAND (_p1, 1);
14462 : 0 : if ((_q60 == _q40 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q40, 0) && types_match (_q60, _q40)))
14463 : : {
14464 : 0 : {
14465 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q40, _q61, _p0, _q21, _q20 };
14466 : 0 : tree res = generic_simplify_428 (loc, type, _p0, _p1, captures, GT_EXPR, NE_EXPR);
14467 : 0 : if (res) return res;
14468 : : }
14469 : : }
14470 : 0 : if ((_q61 == _q40 && ! TREE_SIDE_EFFECTS (_q61)) || (operand_equal_p (_q61, _q40, 0) && types_match (_q61, _q40)))
14471 : : {
14472 : 0 : {
14473 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q40, _q60, _p0, _q21, _q20 };
14474 : 0 : tree res = generic_simplify_428 (loc, type, _p0, _p1, captures, GT_EXPR, NE_EXPR);
14475 : 0 : if (res) return res;
14476 : : }
14477 : : }
14478 : : break;
14479 : : }
14480 : : default:;
14481 : : }
14482 : : break;
14483 : : }
14484 : 53 : default:;
14485 : : }
14486 : 53 : switch (TREE_CODE (_p1))
14487 : : {
14488 : 4 : case EQ_EXPR:
14489 : 4 : {
14490 : 4 : tree _q50 = TREE_OPERAND (_p1, 0);
14491 : 4 : tree _q51 = TREE_OPERAND (_p1, 1);
14492 : 4 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
14493 : : {
14494 : 0 : {
14495 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q20, _q51, _p0, _q20, _q21 };
14496 : 0 : tree res = generic_simplify_429 (loc, type, _p0, _p1, captures, LT_EXPR, EQ_EXPR);
14497 : 0 : if (res) return res;
14498 : : }
14499 : : }
14500 : 4 : if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
14501 : : {
14502 : 0 : {
14503 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q21, _q51, _p0, _q21, _q20 };
14504 : 0 : tree res = generic_simplify_429 (loc, type, _p0, _p1, captures, GT_EXPR, EQ_EXPR);
14505 : 0 : if (res) return res;
14506 : : }
14507 : : }
14508 : 4 : if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
14509 : : {
14510 : 0 : {
14511 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q20, _q50, _p0, _q20, _q21 };
14512 : 0 : tree res = generic_simplify_429 (loc, type, _p0, _p1, captures, LT_EXPR, EQ_EXPR);
14513 : 0 : if (res) return res;
14514 : : }
14515 : : }
14516 : 4 : if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
14517 : : {
14518 : 0 : {
14519 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q21, _q50, _p0, _q21, _q20 };
14520 : 0 : tree res = generic_simplify_429 (loc, type, _p0, _p1, captures, GT_EXPR, EQ_EXPR);
14521 : 0 : if (res) return res;
14522 : : }
14523 : : }
14524 : : break;
14525 : : }
14526 : 2 : case NE_EXPR:
14527 : 2 : {
14528 : 2 : tree _q50 = TREE_OPERAND (_p1, 0);
14529 : 2 : tree _q51 = TREE_OPERAND (_p1, 1);
14530 : 2 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
14531 : : {
14532 : 0 : {
14533 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q20, _q51, _p0, _q20, _q21 };
14534 : 0 : tree res = generic_simplify_429 (loc, type, _p0, _p1, captures, LT_EXPR, NE_EXPR);
14535 : 0 : if (res) return res;
14536 : : }
14537 : : }
14538 : 2 : if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
14539 : : {
14540 : 0 : {
14541 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q21, _q51, _p0, _q21, _q20 };
14542 : 0 : tree res = generic_simplify_429 (loc, type, _p0, _p1, captures, GT_EXPR, NE_EXPR);
14543 : 0 : if (res) return res;
14544 : : }
14545 : : }
14546 : 2 : if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
14547 : : {
14548 : 0 : {
14549 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q20, _q50, _p0, _q20, _q21 };
14550 : 0 : tree res = generic_simplify_429 (loc, type, _p0, _p1, captures, LT_EXPR, NE_EXPR);
14551 : 0 : if (res) return res;
14552 : : }
14553 : : }
14554 : 2 : if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
14555 : : {
14556 : 2 : {
14557 : 2 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q21, _q50, _p0, _q21, _q20 };
14558 : 2 : tree res = generic_simplify_429 (loc, type, _p0, _p1, captures, GT_EXPR, NE_EXPR);
14559 : 2 : if (res) return res;
14560 : : }
14561 : : }
14562 : : break;
14563 : : }
14564 : 8 : case LT_EXPR:
14565 : 8 : {
14566 : 8 : tree _q50 = TREE_OPERAND (_p1, 0);
14567 : 8 : tree _q51 = TREE_OPERAND (_p1, 1);
14568 : 8 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
14569 : : {
14570 : 0 : {
14571 : 0 : tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q51 };
14572 : 0 : tree res = generic_simplify_430 (loc, type, _p0, _p1, captures, LT_EXPR, LT_EXPR);
14573 : 0 : if (res) return res;
14574 : : }
14575 : : }
14576 : 8 : if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
14577 : : {
14578 : 0 : {
14579 : 0 : tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q50 };
14580 : 0 : tree res = generic_simplify_430 (loc, type, _p0, _p1, captures, GT_EXPR, LT_EXPR);
14581 : 0 : if (res) return res;
14582 : : }
14583 : : }
14584 : 8 : if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
14585 : : {
14586 : 0 : {
14587 : 0 : tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q51 };
14588 : 0 : tree res = generic_simplify_430 (loc, type, _p0, _p1, captures, LT_EXPR, GT_EXPR);
14589 : 0 : if (res) return res;
14590 : : }
14591 : : }
14592 : 8 : if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
14593 : : {
14594 : 0 : {
14595 : 0 : tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q50 };
14596 : 0 : tree res = generic_simplify_430 (loc, type, _p0, _p1, captures, GT_EXPR, GT_EXPR);
14597 : 0 : if (res) return res;
14598 : : }
14599 : : }
14600 : : break;
14601 : : }
14602 : 0 : case LE_EXPR:
14603 : 0 : {
14604 : 0 : tree _q50 = TREE_OPERAND (_p1, 0);
14605 : 0 : tree _q51 = TREE_OPERAND (_p1, 1);
14606 : 0 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
14607 : : {
14608 : 0 : {
14609 : 0 : tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q51 };
14610 : 0 : tree res = generic_simplify_430 (loc, type, _p0, _p1, captures, LE_EXPR, LT_EXPR);
14611 : 0 : if (res) return res;
14612 : : }
14613 : : }
14614 : 0 : if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
14615 : : {
14616 : 0 : {
14617 : 0 : tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q50 };
14618 : 0 : tree res = generic_simplify_430 (loc, type, _p0, _p1, captures, GE_EXPR, LT_EXPR);
14619 : 0 : if (res) return res;
14620 : : }
14621 : : }
14622 : 0 : if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
14623 : : {
14624 : 0 : {
14625 : 0 : tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q51 };
14626 : 0 : tree res = generic_simplify_430 (loc, type, _p0, _p1, captures, LE_EXPR, GT_EXPR);
14627 : 0 : if (res) return res;
14628 : : }
14629 : : }
14630 : 0 : if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
14631 : : {
14632 : 0 : {
14633 : 0 : tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q50 };
14634 : 0 : tree res = generic_simplify_430 (loc, type, _p0, _p1, captures, GE_EXPR, GT_EXPR);
14635 : 0 : if (res) return res;
14636 : : }
14637 : : }
14638 : : break;
14639 : : }
14640 : 1 : case GT_EXPR:
14641 : 1 : {
14642 : 1 : tree _q50 = TREE_OPERAND (_p1, 0);
14643 : 1 : tree _q51 = TREE_OPERAND (_p1, 1);
14644 : 1 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
14645 : : {
14646 : 0 : {
14647 : 0 : tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q51 };
14648 : 0 : tree res = generic_simplify_430 (loc, type, _p0, _p1, captures, GT_EXPR, LT_EXPR);
14649 : 0 : if (res) return res;
14650 : : }
14651 : : }
14652 : 1 : if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
14653 : : {
14654 : 0 : {
14655 : 0 : tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q50 };
14656 : 0 : tree res = generic_simplify_430 (loc, type, _p0, _p1, captures, LT_EXPR, LT_EXPR);
14657 : 0 : if (res) return res;
14658 : : }
14659 : : }
14660 : 1 : if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
14661 : : {
14662 : 0 : {
14663 : 0 : tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q51 };
14664 : 0 : tree res = generic_simplify_430 (loc, type, _p0, _p1, captures, GT_EXPR, GT_EXPR);
14665 : 0 : if (res) return res;
14666 : : }
14667 : : }
14668 : 1 : if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
14669 : : {
14670 : 0 : {
14671 : 0 : tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q50 };
14672 : 0 : tree res = generic_simplify_430 (loc, type, _p0, _p1, captures, LT_EXPR, GT_EXPR);
14673 : 0 : if (res) return res;
14674 : : }
14675 : : }
14676 : : break;
14677 : : }
14678 : 0 : case GE_EXPR:
14679 : 0 : {
14680 : 0 : tree _q50 = TREE_OPERAND (_p1, 0);
14681 : 0 : tree _q51 = TREE_OPERAND (_p1, 1);
14682 : 0 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
14683 : : {
14684 : 0 : {
14685 : 0 : tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q51 };
14686 : 0 : tree res = generic_simplify_430 (loc, type, _p0, _p1, captures, GE_EXPR, LT_EXPR);
14687 : 0 : if (res) return res;
14688 : : }
14689 : : }
14690 : 0 : if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
14691 : : {
14692 : 0 : {
14693 : 0 : tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q50 };
14694 : 0 : tree res = generic_simplify_430 (loc, type, _p0, _p1, captures, LE_EXPR, LT_EXPR);
14695 : 0 : if (res) return res;
14696 : : }
14697 : : }
14698 : 0 : if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
14699 : : {
14700 : 0 : {
14701 : 0 : tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q51 };
14702 : 0 : tree res = generic_simplify_430 (loc, type, _p0, _p1, captures, GE_EXPR, GT_EXPR);
14703 : 0 : if (res) return res;
14704 : : }
14705 : : }
14706 : 0 : if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
14707 : : {
14708 : 0 : {
14709 : 0 : tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q50 };
14710 : 0 : tree res = generic_simplify_430 (loc, type, _p0, _p1, captures, LE_EXPR, GT_EXPR);
14711 : 0 : if (res) return res;
14712 : : }
14713 : : }
14714 : : break;
14715 : : }
14716 : : default:;
14717 : : }
14718 : : break;
14719 : : }
14720 : 579 : case EQ_EXPR:
14721 : 579 : {
14722 : 579 : tree _q20 = TREE_OPERAND (_p0, 0);
14723 : 579 : tree _q21 = TREE_OPERAND (_p0, 1);
14724 : 579 : if (tree_min_value (_q21))
14725 : : {
14726 : 40 : switch (TREE_CODE (_p1))
14727 : : {
14728 : 0 : case GT_EXPR:
14729 : 0 : {
14730 : 0 : tree _q50 = TREE_OPERAND (_p1, 0);
14731 : 0 : tree _q51 = TREE_OPERAND (_p1, 1);
14732 : 0 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
14733 : : {
14734 : 0 : {
14735 : 0 : tree captures[3] ATTRIBUTE_UNUSED = { _p1, _q20, _q51 };
14736 : 0 : tree res = generic_simplify_431 (loc, type, _p0, _p1, captures, EQ_EXPR);
14737 : 0 : if (res) return res;
14738 : : }
14739 : : }
14740 : : break;
14741 : : }
14742 : 14 : case LT_EXPR:
14743 : 14 : {
14744 : 14 : tree _q50 = TREE_OPERAND (_p1, 0);
14745 : 14 : tree _q51 = TREE_OPERAND (_p1, 1);
14746 : 14 : if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
14747 : : {
14748 : 0 : {
14749 : 0 : tree captures[3] ATTRIBUTE_UNUSED = { _p1, _q20, _q50 };
14750 : 0 : tree res = generic_simplify_431 (loc, type, _p0, _p1, captures, EQ_EXPR);
14751 : 0 : if (res) return res;
14752 : : }
14753 : : }
14754 : : break;
14755 : : }
14756 : 0 : case LE_EXPR:
14757 : 0 : {
14758 : 0 : tree _q50 = TREE_OPERAND (_p1, 0);
14759 : 0 : tree _q51 = TREE_OPERAND (_p1, 1);
14760 : 0 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
14761 : : {
14762 : 0 : {
14763 : 0 : tree captures[3] ATTRIBUTE_UNUSED = { _q20, _q51, _p0 };
14764 : 0 : tree res = generic_simplify_432 (loc, type, _p0, _p1, captures);
14765 : 0 : if (res) return res;
14766 : : }
14767 : : }
14768 : : break;
14769 : : }
14770 : 0 : case GE_EXPR:
14771 : 0 : {
14772 : 0 : tree _q50 = TREE_OPERAND (_p1, 0);
14773 : 0 : tree _q51 = TREE_OPERAND (_p1, 1);
14774 : 0 : if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
14775 : : {
14776 : 0 : {
14777 : 0 : tree captures[3] ATTRIBUTE_UNUSED = { _q20, _q50, _p0 };
14778 : 0 : tree res = generic_simplify_432 (loc, type, _p0, _p1, captures);
14779 : 0 : if (res) return res;
14780 : : }
14781 : : }
14782 : : break;
14783 : : }
14784 : : default:;
14785 : : }
14786 : : }
14787 : 579 : if (tree_max_value (_q21))
14788 : : {
14789 : 0 : switch (TREE_CODE (_p1))
14790 : : {
14791 : 0 : case LT_EXPR:
14792 : 0 : {
14793 : 0 : tree _q50 = TREE_OPERAND (_p1, 0);
14794 : 0 : tree _q51 = TREE_OPERAND (_p1, 1);
14795 : 0 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
14796 : : {
14797 : 0 : {
14798 : 0 : tree captures[3] ATTRIBUTE_UNUSED = { _p1, _q20, _q51 };
14799 : 0 : tree res = generic_simplify_433 (loc, type, _p0, _p1, captures, EQ_EXPR);
14800 : 0 : if (res) return res;
14801 : : }
14802 : : }
14803 : : break;
14804 : : }
14805 : 0 : case GT_EXPR:
14806 : 0 : {
14807 : 0 : tree _q50 = TREE_OPERAND (_p1, 0);
14808 : 0 : tree _q51 = TREE_OPERAND (_p1, 1);
14809 : 0 : if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
14810 : : {
14811 : 0 : {
14812 : 0 : tree captures[3] ATTRIBUTE_UNUSED = { _p1, _q20, _q50 };
14813 : 0 : tree res = generic_simplify_433 (loc, type, _p0, _p1, captures, EQ_EXPR);
14814 : 0 : if (res) return res;
14815 : : }
14816 : : }
14817 : : break;
14818 : : }
14819 : 0 : case GE_EXPR:
14820 : 0 : {
14821 : 0 : tree _q50 = TREE_OPERAND (_p1, 0);
14822 : 0 : tree _q51 = TREE_OPERAND (_p1, 1);
14823 : 0 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
14824 : : {
14825 : 0 : {
14826 : 0 : tree captures[3] ATTRIBUTE_UNUSED = { _q20, _q51, _p0 };
14827 : 0 : tree res = generic_simplify_434 (loc, type, _p0, _p1, captures);
14828 : 0 : if (res) return res;
14829 : : }
14830 : : }
14831 : : break;
14832 : : }
14833 : 0 : case LE_EXPR:
14834 : 0 : {
14835 : 0 : tree _q50 = TREE_OPERAND (_p1, 0);
14836 : 0 : tree _q51 = TREE_OPERAND (_p1, 1);
14837 : 0 : if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
14838 : : {
14839 : 0 : {
14840 : 0 : tree captures[3] ATTRIBUTE_UNUSED = { _q20, _q50, _p0 };
14841 : 0 : tree res = generic_simplify_434 (loc, type, _p0, _p1, captures);
14842 : 0 : if (res) return res;
14843 : : }
14844 : : }
14845 : : break;
14846 : : }
14847 : : default:;
14848 : : }
14849 : : }
14850 : 579 : switch (TREE_CODE (_p1))
14851 : : {
14852 : 72 : case EQ_EXPR:
14853 : 72 : {
14854 : 72 : tree _q50 = TREE_OPERAND (_p1, 0);
14855 : 72 : tree _q51 = TREE_OPERAND (_p1, 1);
14856 : 72 : switch (TREE_CODE (_q50))
14857 : : {
14858 : 0 : CASE_CONVERT:
14859 : 0 : {
14860 : 0 : tree _q60 = TREE_OPERAND (_q50, 0);
14861 : 0 : if ((_q60 == _q20 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q20, 0) && types_match (_q60, _q20)))
14862 : : {
14863 : 0 : {
14864 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q50, _q51 };
14865 : 0 : tree res = generic_simplify_435 (loc, type, _p0, _p1, captures, EQ_EXPR, EQ_EXPR);
14866 : 0 : if (res) return res;
14867 : : }
14868 : : }
14869 : 0 : if ((_q60 == _q21 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q21, 0) && types_match (_q60, _q21)))
14870 : : {
14871 : 0 : {
14872 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q50, _q51 };
14873 : 0 : tree res = generic_simplify_435 (loc, type, _p0, _p1, captures, EQ_EXPR, EQ_EXPR);
14874 : 0 : if (res) return res;
14875 : : }
14876 : : }
14877 : : break;
14878 : : }
14879 : 72 : default:;
14880 : : }
14881 : 72 : switch (TREE_CODE (_q51))
14882 : : {
14883 : 0 : CASE_CONVERT:
14884 : 0 : {
14885 : 0 : tree _q70 = TREE_OPERAND (_q51, 0);
14886 : 0 : if ((_q70 == _q20 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q20, 0) && types_match (_q70, _q20)))
14887 : : {
14888 : 0 : {
14889 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q51, _q50 };
14890 : 0 : tree res = generic_simplify_435 (loc, type, _p0, _p1, captures, EQ_EXPR, EQ_EXPR);
14891 : 0 : if (res) return res;
14892 : : }
14893 : : }
14894 : 0 : if ((_q70 == _q21 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q21, 0) && types_match (_q70, _q21)))
14895 : : {
14896 : 0 : {
14897 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q51, _q50 };
14898 : 0 : tree res = generic_simplify_435 (loc, type, _p0, _p1, captures, EQ_EXPR, EQ_EXPR);
14899 : 0 : if (res) return res;
14900 : : }
14901 : : }
14902 : : break;
14903 : : }
14904 : : default:;
14905 : : }
14906 : : break;
14907 : : }
14908 : 33 : case NE_EXPR:
14909 : 33 : {
14910 : 33 : tree _q50 = TREE_OPERAND (_p1, 0);
14911 : 33 : tree _q51 = TREE_OPERAND (_p1, 1);
14912 : 33 : switch (TREE_CODE (_q50))
14913 : : {
14914 : 0 : CASE_CONVERT:
14915 : 0 : {
14916 : 0 : tree _q60 = TREE_OPERAND (_q50, 0);
14917 : 0 : if ((_q60 == _q20 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q20, 0) && types_match (_q60, _q20)))
14918 : : {
14919 : 0 : {
14920 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q50, _q51 };
14921 : 0 : tree res = generic_simplify_435 (loc, type, _p0, _p1, captures, NE_EXPR, EQ_EXPR);
14922 : 0 : if (res) return res;
14923 : : }
14924 : : }
14925 : 0 : if ((_q60 == _q21 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q21, 0) && types_match (_q60, _q21)))
14926 : : {
14927 : 0 : {
14928 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q50, _q51 };
14929 : 0 : tree res = generic_simplify_435 (loc, type, _p0, _p1, captures, NE_EXPR, EQ_EXPR);
14930 : 0 : if (res) return res;
14931 : : }
14932 : : }
14933 : : break;
14934 : : }
14935 : 33 : default:;
14936 : : }
14937 : 33 : switch (TREE_CODE (_q51))
14938 : : {
14939 : 0 : CASE_CONVERT:
14940 : 0 : {
14941 : 0 : tree _q70 = TREE_OPERAND (_q51, 0);
14942 : 0 : if ((_q70 == _q20 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q20, 0) && types_match (_q70, _q20)))
14943 : : {
14944 : 0 : {
14945 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q51, _q50 };
14946 : 0 : tree res = generic_simplify_435 (loc, type, _p0, _p1, captures, NE_EXPR, EQ_EXPR);
14947 : 0 : if (res) return res;
14948 : : }
14949 : : }
14950 : 0 : if ((_q70 == _q21 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q21, 0) && types_match (_q70, _q21)))
14951 : : {
14952 : 0 : {
14953 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q51, _q50 };
14954 : 0 : tree res = generic_simplify_435 (loc, type, _p0, _p1, captures, NE_EXPR, EQ_EXPR);
14955 : 0 : if (res) return res;
14956 : : }
14957 : : }
14958 : : break;
14959 : : }
14960 : : default:;
14961 : : }
14962 : : break;
14963 : : }
14964 : 19 : case LT_EXPR:
14965 : 19 : {
14966 : 19 : tree _q50 = TREE_OPERAND (_p1, 0);
14967 : 19 : tree _q51 = TREE_OPERAND (_p1, 1);
14968 : 19 : switch (TREE_CODE (_q50))
14969 : : {
14970 : 0 : CASE_CONVERT:
14971 : 0 : {
14972 : 0 : tree _q60 = TREE_OPERAND (_q50, 0);
14973 : 0 : if ((_q60 == _q20 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q20, 0) && types_match (_q60, _q20)))
14974 : : {
14975 : 0 : {
14976 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q50, _q51 };
14977 : 0 : tree res = generic_simplify_435 (loc, type, _p0, _p1, captures, LT_EXPR, EQ_EXPR);
14978 : 0 : if (res) return res;
14979 : : }
14980 : : }
14981 : 0 : if ((_q60 == _q21 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q21, 0) && types_match (_q60, _q21)))
14982 : : {
14983 : 0 : {
14984 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q50, _q51 };
14985 : 0 : tree res = generic_simplify_435 (loc, type, _p0, _p1, captures, LT_EXPR, EQ_EXPR);
14986 : 0 : if (res) return res;
14987 : : }
14988 : : }
14989 : : break;
14990 : : }
14991 : 19 : default:;
14992 : : }
14993 : 19 : switch (TREE_CODE (_q51))
14994 : : {
14995 : 0 : CASE_CONVERT:
14996 : 0 : {
14997 : 0 : tree _q70 = TREE_OPERAND (_q51, 0);
14998 : 0 : if ((_q70 == _q20 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q20, 0) && types_match (_q70, _q20)))
14999 : : {
15000 : 0 : {
15001 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q51, _q50 };
15002 : 0 : tree res = generic_simplify_435 (loc, type, _p0, _p1, captures, GT_EXPR, EQ_EXPR);
15003 : 0 : if (res) return res;
15004 : : }
15005 : : }
15006 : 0 : if ((_q70 == _q21 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q21, 0) && types_match (_q70, _q21)))
15007 : : {
15008 : 0 : {
15009 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q51, _q50 };
15010 : 0 : tree res = generic_simplify_435 (loc, type, _p0, _p1, captures, GT_EXPR, EQ_EXPR);
15011 : 0 : if (res) return res;
15012 : : }
15013 : : }
15014 : : break;
15015 : : }
15016 : : default:;
15017 : : }
15018 : : break;
15019 : : }
15020 : 12 : case GT_EXPR:
15021 : 12 : {
15022 : 12 : tree _q50 = TREE_OPERAND (_p1, 0);
15023 : 12 : tree _q51 = TREE_OPERAND (_p1, 1);
15024 : 12 : switch (TREE_CODE (_q50))
15025 : : {
15026 : 0 : CASE_CONVERT:
15027 : 0 : {
15028 : 0 : tree _q60 = TREE_OPERAND (_q50, 0);
15029 : 0 : if ((_q60 == _q20 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q20, 0) && types_match (_q60, _q20)))
15030 : : {
15031 : 0 : {
15032 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q50, _q51 };
15033 : 0 : tree res = generic_simplify_435 (loc, type, _p0, _p1, captures, GT_EXPR, EQ_EXPR);
15034 : 0 : if (res) return res;
15035 : : }
15036 : : }
15037 : 0 : if ((_q60 == _q21 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q21, 0) && types_match (_q60, _q21)))
15038 : : {
15039 : 0 : {
15040 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q50, _q51 };
15041 : 0 : tree res = generic_simplify_435 (loc, type, _p0, _p1, captures, GT_EXPR, EQ_EXPR);
15042 : 0 : if (res) return res;
15043 : : }
15044 : : }
15045 : : break;
15046 : : }
15047 : 12 : default:;
15048 : : }
15049 : 12 : switch (TREE_CODE (_q51))
15050 : : {
15051 : 0 : CASE_CONVERT:
15052 : 0 : {
15053 : 0 : tree _q70 = TREE_OPERAND (_q51, 0);
15054 : 0 : if ((_q70 == _q20 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q20, 0) && types_match (_q70, _q20)))
15055 : : {
15056 : 0 : {
15057 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q51, _q50 };
15058 : 0 : tree res = generic_simplify_435 (loc, type, _p0, _p1, captures, LT_EXPR, EQ_EXPR);
15059 : 0 : if (res) return res;
15060 : : }
15061 : : }
15062 : 0 : if ((_q70 == _q21 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q21, 0) && types_match (_q70, _q21)))
15063 : : {
15064 : 0 : {
15065 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q51, _q50 };
15066 : 0 : tree res = generic_simplify_435 (loc, type, _p0, _p1, captures, LT_EXPR, EQ_EXPR);
15067 : 0 : if (res) return res;
15068 : : }
15069 : : }
15070 : : break;
15071 : : }
15072 : : default:;
15073 : : }
15074 : : break;
15075 : : }
15076 : 12 : case LE_EXPR:
15077 : 12 : {
15078 : 12 : tree _q50 = TREE_OPERAND (_p1, 0);
15079 : 12 : tree _q51 = TREE_OPERAND (_p1, 1);
15080 : 12 : switch (TREE_CODE (_q50))
15081 : : {
15082 : 0 : CASE_CONVERT:
15083 : 0 : {
15084 : 0 : tree _q60 = TREE_OPERAND (_q50, 0);
15085 : 0 : if ((_q60 == _q20 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q20, 0) && types_match (_q60, _q20)))
15086 : : {
15087 : 0 : {
15088 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q50, _q51 };
15089 : 0 : tree res = generic_simplify_435 (loc, type, _p0, _p1, captures, LE_EXPR, EQ_EXPR);
15090 : 0 : if (res) return res;
15091 : : }
15092 : : }
15093 : 0 : if ((_q60 == _q21 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q21, 0) && types_match (_q60, _q21)))
15094 : : {
15095 : 0 : {
15096 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q50, _q51 };
15097 : 0 : tree res = generic_simplify_435 (loc, type, _p0, _p1, captures, LE_EXPR, EQ_EXPR);
15098 : 0 : if (res) return res;
15099 : : }
15100 : : }
15101 : : break;
15102 : : }
15103 : 12 : default:;
15104 : : }
15105 : 12 : switch (TREE_CODE (_q51))
15106 : : {
15107 : 0 : CASE_CONVERT:
15108 : 0 : {
15109 : 0 : tree _q70 = TREE_OPERAND (_q51, 0);
15110 : 0 : if ((_q70 == _q20 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q20, 0) && types_match (_q70, _q20)))
15111 : : {
15112 : 0 : {
15113 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q51, _q50 };
15114 : 0 : tree res = generic_simplify_435 (loc, type, _p0, _p1, captures, GE_EXPR, EQ_EXPR);
15115 : 0 : if (res) return res;
15116 : : }
15117 : : }
15118 : 0 : if ((_q70 == _q21 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q21, 0) && types_match (_q70, _q21)))
15119 : : {
15120 : 0 : {
15121 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q51, _q50 };
15122 : 0 : tree res = generic_simplify_435 (loc, type, _p0, _p1, captures, GE_EXPR, EQ_EXPR);
15123 : 0 : if (res) return res;
15124 : : }
15125 : : }
15126 : : break;
15127 : : }
15128 : : default:;
15129 : : }
15130 : : break;
15131 : : }
15132 : 4 : case GE_EXPR:
15133 : 4 : {
15134 : 4 : tree _q50 = TREE_OPERAND (_p1, 0);
15135 : 4 : tree _q51 = TREE_OPERAND (_p1, 1);
15136 : 4 : switch (TREE_CODE (_q50))
15137 : : {
15138 : 0 : CASE_CONVERT:
15139 : 0 : {
15140 : 0 : tree _q60 = TREE_OPERAND (_q50, 0);
15141 : 0 : if ((_q60 == _q20 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q20, 0) && types_match (_q60, _q20)))
15142 : : {
15143 : 0 : {
15144 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q50, _q51 };
15145 : 0 : tree res = generic_simplify_435 (loc, type, _p0, _p1, captures, GE_EXPR, EQ_EXPR);
15146 : 0 : if (res) return res;
15147 : : }
15148 : : }
15149 : 0 : if ((_q60 == _q21 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q21, 0) && types_match (_q60, _q21)))
15150 : : {
15151 : 0 : {
15152 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q50, _q51 };
15153 : 0 : tree res = generic_simplify_435 (loc, type, _p0, _p1, captures, GE_EXPR, EQ_EXPR);
15154 : 0 : if (res) return res;
15155 : : }
15156 : : }
15157 : : break;
15158 : : }
15159 : 4 : default:;
15160 : : }
15161 : 4 : switch (TREE_CODE (_q51))
15162 : : {
15163 : 0 : CASE_CONVERT:
15164 : 0 : {
15165 : 0 : tree _q70 = TREE_OPERAND (_q51, 0);
15166 : 0 : if ((_q70 == _q20 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q20, 0) && types_match (_q70, _q20)))
15167 : : {
15168 : 0 : {
15169 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q51, _q50 };
15170 : 0 : tree res = generic_simplify_435 (loc, type, _p0, _p1, captures, LE_EXPR, EQ_EXPR);
15171 : 0 : if (res) return res;
15172 : : }
15173 : : }
15174 : 0 : if ((_q70 == _q21 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q21, 0) && types_match (_q70, _q21)))
15175 : : {
15176 : 0 : {
15177 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q51, _q50 };
15178 : 0 : tree res = generic_simplify_435 (loc, type, _p0, _p1, captures, LE_EXPR, EQ_EXPR);
15179 : 0 : if (res) return res;
15180 : : }
15181 : : }
15182 : : break;
15183 : : }
15184 : : default:;
15185 : : }
15186 : : break;
15187 : : }
15188 : 579 : default:;
15189 : : }
15190 : 579 : switch (TREE_CODE (_q20))
15191 : : {
15192 : 0 : CASE_CONVERT:
15193 : 0 : {
15194 : 0 : tree _q30 = TREE_OPERAND (_q20, 0);
15195 : 0 : switch (TREE_CODE (_p1))
15196 : : {
15197 : 0 : case EQ_EXPR:
15198 : 0 : {
15199 : 0 : tree _q60 = TREE_OPERAND (_p1, 0);
15200 : 0 : tree _q61 = TREE_OPERAND (_p1, 1);
15201 : 0 : if ((_q60 == _q30 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q30, 0) && types_match (_q60, _q30)))
15202 : : {
15203 : 0 : {
15204 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q30, _q61, _p0, _q20, _q21 };
15205 : 0 : tree res = generic_simplify_428 (loc, type, _p0, _p1, captures, EQ_EXPR, EQ_EXPR);
15206 : 0 : if (res) return res;
15207 : : }
15208 : : }
15209 : 0 : if ((_q61 == _q30 && ! TREE_SIDE_EFFECTS (_q61)) || (operand_equal_p (_q61, _q30, 0) && types_match (_q61, _q30)))
15210 : : {
15211 : 0 : {
15212 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q30, _q60, _p0, _q20, _q21 };
15213 : 0 : tree res = generic_simplify_428 (loc, type, _p0, _p1, captures, EQ_EXPR, EQ_EXPR);
15214 : 0 : if (res) return res;
15215 : : }
15216 : : }
15217 : : break;
15218 : : }
15219 : 0 : case NE_EXPR:
15220 : 0 : {
15221 : 0 : tree _q60 = TREE_OPERAND (_p1, 0);
15222 : 0 : tree _q61 = TREE_OPERAND (_p1, 1);
15223 : 0 : if ((_q60 == _q30 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q30, 0) && types_match (_q60, _q30)))
15224 : : {
15225 : 0 : {
15226 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q30, _q61, _p0, _q20, _q21 };
15227 : 0 : tree res = generic_simplify_428 (loc, type, _p0, _p1, captures, EQ_EXPR, NE_EXPR);
15228 : 0 : if (res) return res;
15229 : : }
15230 : : }
15231 : 0 : if ((_q61 == _q30 && ! TREE_SIDE_EFFECTS (_q61)) || (operand_equal_p (_q61, _q30, 0) && types_match (_q61, _q30)))
15232 : : {
15233 : 0 : {
15234 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q30, _q60, _p0, _q20, _q21 };
15235 : 0 : tree res = generic_simplify_428 (loc, type, _p0, _p1, captures, EQ_EXPR, NE_EXPR);
15236 : 0 : if (res) return res;
15237 : : }
15238 : : }
15239 : : break;
15240 : : }
15241 : : default:;
15242 : : }
15243 : : break;
15244 : : }
15245 : 579 : default:;
15246 : : }
15247 : 579 : switch (TREE_CODE (_q21))
15248 : : {
15249 : 0 : CASE_CONVERT:
15250 : 0 : {
15251 : 0 : tree _q40 = TREE_OPERAND (_q21, 0);
15252 : 0 : switch (TREE_CODE (_p1))
15253 : : {
15254 : 0 : case EQ_EXPR:
15255 : 0 : {
15256 : 0 : tree _q60 = TREE_OPERAND (_p1, 0);
15257 : 0 : tree _q61 = TREE_OPERAND (_p1, 1);
15258 : 0 : if ((_q60 == _q40 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q40, 0) && types_match (_q60, _q40)))
15259 : : {
15260 : 0 : {
15261 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q40, _q61, _p0, _q21, _q20 };
15262 : 0 : tree res = generic_simplify_428 (loc, type, _p0, _p1, captures, EQ_EXPR, EQ_EXPR);
15263 : 0 : if (res) return res;
15264 : : }
15265 : : }
15266 : 0 : if ((_q61 == _q40 && ! TREE_SIDE_EFFECTS (_q61)) || (operand_equal_p (_q61, _q40, 0) && types_match (_q61, _q40)))
15267 : : {
15268 : 0 : {
15269 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q40, _q60, _p0, _q21, _q20 };
15270 : 0 : tree res = generic_simplify_428 (loc, type, _p0, _p1, captures, EQ_EXPR, EQ_EXPR);
15271 : 0 : if (res) return res;
15272 : : }
15273 : : }
15274 : : break;
15275 : : }
15276 : 0 : case NE_EXPR:
15277 : 0 : {
15278 : 0 : tree _q60 = TREE_OPERAND (_p1, 0);
15279 : 0 : tree _q61 = TREE_OPERAND (_p1, 1);
15280 : 0 : if ((_q60 == _q40 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q40, 0) && types_match (_q60, _q40)))
15281 : : {
15282 : 0 : {
15283 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q40, _q61, _p0, _q21, _q20 };
15284 : 0 : tree res = generic_simplify_428 (loc, type, _p0, _p1, captures, EQ_EXPR, NE_EXPR);
15285 : 0 : if (res) return res;
15286 : : }
15287 : : }
15288 : 0 : if ((_q61 == _q40 && ! TREE_SIDE_EFFECTS (_q61)) || (operand_equal_p (_q61, _q40, 0) && types_match (_q61, _q40)))
15289 : : {
15290 : 0 : {
15291 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q40, _q60, _p0, _q21, _q20 };
15292 : 0 : tree res = generic_simplify_428 (loc, type, _p0, _p1, captures, EQ_EXPR, NE_EXPR);
15293 : 0 : if (res) return res;
15294 : : }
15295 : : }
15296 : : break;
15297 : : }
15298 : : default:;
15299 : : }
15300 : : break;
15301 : : }
15302 : 579 : default:;
15303 : : }
15304 : 579 : switch (TREE_CODE (_p1))
15305 : : {
15306 : 72 : case EQ_EXPR:
15307 : 72 : {
15308 : 72 : tree _q50 = TREE_OPERAND (_p1, 0);
15309 : 72 : tree _q51 = TREE_OPERAND (_p1, 1);
15310 : 72 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
15311 : : {
15312 : 0 : {
15313 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q50, _q51 };
15314 : 0 : tree res = generic_simplify_436 (loc, type, _p0, _p1, captures, EQ_EXPR, EQ_EXPR);
15315 : 0 : if (res) return res;
15316 : : }
15317 : 0 : {
15318 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q20, _q51, _p0, _q20, _q21 };
15319 : 0 : tree res = generic_simplify_429 (loc, type, _p0, _p1, captures, EQ_EXPR, EQ_EXPR);
15320 : 0 : if (res) return res;
15321 : : }
15322 : : }
15323 : 72 : if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
15324 : : {
15325 : 0 : {
15326 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q51, _q50 };
15327 : 0 : tree res = generic_simplify_436 (loc, type, _p0, _p1, captures, EQ_EXPR, EQ_EXPR);
15328 : 0 : if (res) return res;
15329 : : }
15330 : : }
15331 : 72 : if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
15332 : : {
15333 : 0 : {
15334 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q50, _q51 };
15335 : 0 : tree res = generic_simplify_436 (loc, type, _p0, _p1, captures, EQ_EXPR, EQ_EXPR);
15336 : 0 : if (res) return res;
15337 : : }
15338 : 0 : {
15339 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q21, _q51, _p0, _q21, _q20 };
15340 : 0 : tree res = generic_simplify_429 (loc, type, _p0, _p1, captures, EQ_EXPR, EQ_EXPR);
15341 : 0 : if (res) return res;
15342 : : }
15343 : : }
15344 : 72 : if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
15345 : : {
15346 : 19 : {
15347 : 19 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q51, _q50 };
15348 : 19 : tree res = generic_simplify_436 (loc, type, _p0, _p1, captures, EQ_EXPR, EQ_EXPR);
15349 : 19 : if (res) return res;
15350 : : }
15351 : 19 : {
15352 : 19 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q21, _q50, _p0, _q21, _q20 };
15353 : 19 : tree res = generic_simplify_429 (loc, type, _p0, _p1, captures, EQ_EXPR, EQ_EXPR);
15354 : 19 : if (res) return res;
15355 : : }
15356 : : }
15357 : 72 : if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
15358 : : {
15359 : 0 : {
15360 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q20, _q50, _p0, _q20, _q21 };
15361 : 0 : tree res = generic_simplify_429 (loc, type, _p0, _p1, captures, EQ_EXPR, EQ_EXPR);
15362 : 0 : if (res) return res;
15363 : : }
15364 : : }
15365 : : break;
15366 : : }
15367 : 33 : case NE_EXPR:
15368 : 33 : {
15369 : 33 : tree _q50 = TREE_OPERAND (_p1, 0);
15370 : 33 : tree _q51 = TREE_OPERAND (_p1, 1);
15371 : 33 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
15372 : : {
15373 : 0 : {
15374 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q50, _q51 };
15375 : 0 : tree res = generic_simplify_436 (loc, type, _p0, _p1, captures, NE_EXPR, EQ_EXPR);
15376 : 0 : if (res) return res;
15377 : : }
15378 : 0 : {
15379 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q20, _q51, _p0, _q20, _q21 };
15380 : 0 : tree res = generic_simplify_429 (loc, type, _p0, _p1, captures, EQ_EXPR, NE_EXPR);
15381 : 0 : if (res) return res;
15382 : : }
15383 : : }
15384 : 33 : if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
15385 : : {
15386 : 0 : {
15387 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q51, _q50 };
15388 : 0 : tree res = generic_simplify_436 (loc, type, _p0, _p1, captures, NE_EXPR, EQ_EXPR);
15389 : 0 : if (res) return res;
15390 : : }
15391 : : }
15392 : 33 : if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
15393 : : {
15394 : 0 : {
15395 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q50, _q51 };
15396 : 0 : tree res = generic_simplify_436 (loc, type, _p0, _p1, captures, NE_EXPR, EQ_EXPR);
15397 : 0 : if (res) return res;
15398 : : }
15399 : 0 : {
15400 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q21, _q51, _p0, _q21, _q20 };
15401 : 0 : tree res = generic_simplify_429 (loc, type, _p0, _p1, captures, EQ_EXPR, NE_EXPR);
15402 : 0 : if (res) return res;
15403 : : }
15404 : : }
15405 : 33 : if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
15406 : : {
15407 : 11 : {
15408 : 11 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q51, _q50 };
15409 : 11 : tree res = generic_simplify_436 (loc, type, _p0, _p1, captures, NE_EXPR, EQ_EXPR);
15410 : 11 : if (res) return res;
15411 : : }
15412 : 11 : {
15413 : 11 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q21, _q50, _p0, _q21, _q20 };
15414 : 11 : tree res = generic_simplify_429 (loc, type, _p0, _p1, captures, EQ_EXPR, NE_EXPR);
15415 : 11 : if (res) return res;
15416 : : }
15417 : : }
15418 : 33 : if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
15419 : : {
15420 : 0 : {
15421 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q20, _q50, _p0, _q20, _q21 };
15422 : 0 : tree res = generic_simplify_429 (loc, type, _p0, _p1, captures, EQ_EXPR, NE_EXPR);
15423 : 0 : if (res) return res;
15424 : : }
15425 : : }
15426 : : break;
15427 : : }
15428 : 19 : case LT_EXPR:
15429 : 19 : {
15430 : 19 : tree _q50 = TREE_OPERAND (_p1, 0);
15431 : 19 : tree _q51 = TREE_OPERAND (_p1, 1);
15432 : 19 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
15433 : : {
15434 : 0 : {
15435 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q50, _q51 };
15436 : 0 : tree res = generic_simplify_436 (loc, type, _p0, _p1, captures, LT_EXPR, EQ_EXPR);
15437 : 0 : if (res) return res;
15438 : : }
15439 : : }
15440 : 19 : if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
15441 : : {
15442 : 0 : {
15443 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q51, _q50 };
15444 : 0 : tree res = generic_simplify_436 (loc, type, _p0, _p1, captures, GT_EXPR, EQ_EXPR);
15445 : 0 : if (res) return res;
15446 : : }
15447 : : }
15448 : 19 : if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
15449 : : {
15450 : 0 : {
15451 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q50, _q51 };
15452 : 0 : tree res = generic_simplify_436 (loc, type, _p0, _p1, captures, LT_EXPR, EQ_EXPR);
15453 : 0 : if (res) return res;
15454 : : }
15455 : : }
15456 : 19 : if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
15457 : : {
15458 : 0 : {
15459 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q51, _q50 };
15460 : 0 : tree res = generic_simplify_436 (loc, type, _p0, _p1, captures, GT_EXPR, EQ_EXPR);
15461 : 0 : if (res) return res;
15462 : : }
15463 : : }
15464 : : break;
15465 : : }
15466 : 12 : case GT_EXPR:
15467 : 12 : {
15468 : 12 : tree _q50 = TREE_OPERAND (_p1, 0);
15469 : 12 : tree _q51 = TREE_OPERAND (_p1, 1);
15470 : 12 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
15471 : : {
15472 : 0 : {
15473 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q50, _q51 };
15474 : 0 : tree res = generic_simplify_436 (loc, type, _p0, _p1, captures, GT_EXPR, EQ_EXPR);
15475 : 0 : if (res) return res;
15476 : : }
15477 : : }
15478 : 12 : if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
15479 : : {
15480 : 0 : {
15481 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q51, _q50 };
15482 : 0 : tree res = generic_simplify_436 (loc, type, _p0, _p1, captures, LT_EXPR, EQ_EXPR);
15483 : 0 : if (res) return res;
15484 : : }
15485 : : }
15486 : 12 : if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
15487 : : {
15488 : 0 : {
15489 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q50, _q51 };
15490 : 0 : tree res = generic_simplify_436 (loc, type, _p0, _p1, captures, GT_EXPR, EQ_EXPR);
15491 : 0 : if (res) return res;
15492 : : }
15493 : : }
15494 : 12 : if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
15495 : : {
15496 : 0 : {
15497 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q51, _q50 };
15498 : 0 : tree res = generic_simplify_436 (loc, type, _p0, _p1, captures, LT_EXPR, EQ_EXPR);
15499 : 0 : if (res) return res;
15500 : : }
15501 : : }
15502 : : break;
15503 : : }
15504 : 12 : case LE_EXPR:
15505 : 12 : {
15506 : 12 : tree _q50 = TREE_OPERAND (_p1, 0);
15507 : 12 : tree _q51 = TREE_OPERAND (_p1, 1);
15508 : 12 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
15509 : : {
15510 : 0 : {
15511 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q50, _q51 };
15512 : 0 : tree res = generic_simplify_436 (loc, type, _p0, _p1, captures, LE_EXPR, EQ_EXPR);
15513 : 0 : if (res) return res;
15514 : : }
15515 : : }
15516 : 12 : if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
15517 : : {
15518 : 0 : {
15519 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q51, _q50 };
15520 : 0 : tree res = generic_simplify_436 (loc, type, _p0, _p1, captures, GE_EXPR, EQ_EXPR);
15521 : 0 : if (res) return res;
15522 : : }
15523 : : }
15524 : 12 : if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
15525 : : {
15526 : 0 : {
15527 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q50, _q51 };
15528 : 0 : tree res = generic_simplify_436 (loc, type, _p0, _p1, captures, LE_EXPR, EQ_EXPR);
15529 : 0 : if (res) return res;
15530 : : }
15531 : : }
15532 : 12 : if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
15533 : : {
15534 : 0 : {
15535 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q51, _q50 };
15536 : 0 : tree res = generic_simplify_436 (loc, type, _p0, _p1, captures, GE_EXPR, EQ_EXPR);
15537 : 0 : if (res) return res;
15538 : : }
15539 : : }
15540 : : break;
15541 : : }
15542 : 4 : case GE_EXPR:
15543 : 4 : {
15544 : 4 : tree _q50 = TREE_OPERAND (_p1, 0);
15545 : 4 : tree _q51 = TREE_OPERAND (_p1, 1);
15546 : 4 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
15547 : : {
15548 : 0 : {
15549 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q50, _q51 };
15550 : 0 : tree res = generic_simplify_436 (loc, type, _p0, _p1, captures, GE_EXPR, EQ_EXPR);
15551 : 0 : if (res) return res;
15552 : : }
15553 : : }
15554 : 4 : if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
15555 : : {
15556 : 0 : {
15557 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q51, _q50 };
15558 : 0 : tree res = generic_simplify_436 (loc, type, _p0, _p1, captures, LE_EXPR, EQ_EXPR);
15559 : 0 : if (res) return res;
15560 : : }
15561 : : }
15562 : 4 : if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
15563 : : {
15564 : 0 : {
15565 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q50, _q51 };
15566 : 0 : tree res = generic_simplify_436 (loc, type, _p0, _p1, captures, GE_EXPR, EQ_EXPR);
15567 : 0 : if (res) return res;
15568 : : }
15569 : : }
15570 : 4 : if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
15571 : : {
15572 : 0 : {
15573 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q51, _q50 };
15574 : 0 : tree res = generic_simplify_436 (loc, type, _p0, _p1, captures, LE_EXPR, EQ_EXPR);
15575 : 0 : if (res) return res;
15576 : : }
15577 : : }
15578 : : break;
15579 : : }
15580 : : default:;
15581 : : }
15582 : : break;
15583 : : }
15584 : 130 : case NE_EXPR:
15585 : 130 : {
15586 : 130 : tree _q20 = TREE_OPERAND (_p0, 0);
15587 : 130 : tree _q21 = TREE_OPERAND (_p0, 1);
15588 : 130 : if (tree_min_value (_q21))
15589 : : {
15590 : 16 : switch (TREE_CODE (_p1))
15591 : : {
15592 : 0 : case GT_EXPR:
15593 : 0 : {
15594 : 0 : tree _q50 = TREE_OPERAND (_p1, 0);
15595 : 0 : tree _q51 = TREE_OPERAND (_p1, 1);
15596 : 0 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
15597 : : {
15598 : 0 : {
15599 : 0 : tree captures[3] ATTRIBUTE_UNUSED = { _p1, _q20, _q51 };
15600 : 0 : tree res = generic_simplify_431 (loc, type, _p0, _p1, captures, NE_EXPR);
15601 : 0 : if (res) return res;
15602 : : }
15603 : : }
15604 : : break;
15605 : : }
15606 : 0 : case LT_EXPR:
15607 : 0 : {
15608 : 0 : tree _q50 = TREE_OPERAND (_p1, 0);
15609 : 0 : tree _q51 = TREE_OPERAND (_p1, 1);
15610 : 0 : if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
15611 : : {
15612 : 0 : {
15613 : 0 : tree captures[3] ATTRIBUTE_UNUSED = { _p1, _q20, _q50 };
15614 : 0 : tree res = generic_simplify_431 (loc, type, _p0, _p1, captures, NE_EXPR);
15615 : 0 : if (res) return res;
15616 : : }
15617 : : }
15618 : : break;
15619 : : }
15620 : 3 : case GE_EXPR:
15621 : 3 : {
15622 : 3 : tree _q50 = TREE_OPERAND (_p1, 0);
15623 : 3 : tree _q51 = TREE_OPERAND (_p1, 1);
15624 : 3 : if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
15625 : : {
15626 : 3 : {
15627 : 3 : tree captures[4] ATTRIBUTE_UNUSED = { _p0, _q20, _p1, _q50 };
15628 : 3 : tree res = generic_simplify_437 (loc, type, _p0, _p1, captures);
15629 : 3 : if (res) return res;
15630 : : }
15631 : : }
15632 : : break;
15633 : : }
15634 : 0 : case LE_EXPR:
15635 : 0 : {
15636 : 0 : tree _q50 = TREE_OPERAND (_p1, 0);
15637 : 0 : tree _q51 = TREE_OPERAND (_p1, 1);
15638 : 0 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
15639 : : {
15640 : 0 : {
15641 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _p0, _q20, _p1, _q51 };
15642 : 0 : tree res = generic_simplify_437 (loc, type, _p0, _p1, captures);
15643 : 0 : if (res) return res;
15644 : : }
15645 : : }
15646 : : break;
15647 : : }
15648 : : default:;
15649 : : }
15650 : : }
15651 : 127 : if (tree_max_value (_q21))
15652 : : {
15653 : 0 : switch (TREE_CODE (_p1))
15654 : : {
15655 : 0 : case LT_EXPR:
15656 : 0 : {
15657 : 0 : tree _q50 = TREE_OPERAND (_p1, 0);
15658 : 0 : tree _q51 = TREE_OPERAND (_p1, 1);
15659 : 0 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
15660 : : {
15661 : 0 : {
15662 : 0 : tree captures[3] ATTRIBUTE_UNUSED = { _p1, _q20, _q51 };
15663 : 0 : tree res = generic_simplify_433 (loc, type, _p0, _p1, captures, NE_EXPR);
15664 : 0 : if (res) return res;
15665 : : }
15666 : : }
15667 : : break;
15668 : : }
15669 : 0 : case GT_EXPR:
15670 : 0 : {
15671 : 0 : tree _q50 = TREE_OPERAND (_p1, 0);
15672 : 0 : tree _q51 = TREE_OPERAND (_p1, 1);
15673 : 0 : if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
15674 : : {
15675 : 0 : {
15676 : 0 : tree captures[3] ATTRIBUTE_UNUSED = { _p1, _q20, _q50 };
15677 : 0 : tree res = generic_simplify_433 (loc, type, _p0, _p1, captures, NE_EXPR);
15678 : 0 : if (res) return res;
15679 : : }
15680 : : }
15681 : : break;
15682 : : }
15683 : : default:;
15684 : : }
15685 : : }
15686 : 127 : switch (TREE_CODE (_p1))
15687 : : {
15688 : 12 : case EQ_EXPR:
15689 : 12 : {
15690 : 12 : tree _q50 = TREE_OPERAND (_p1, 0);
15691 : 12 : tree _q51 = TREE_OPERAND (_p1, 1);
15692 : 12 : switch (TREE_CODE (_q50))
15693 : : {
15694 : 0 : CASE_CONVERT:
15695 : 0 : {
15696 : 0 : tree _q60 = TREE_OPERAND (_q50, 0);
15697 : 0 : if ((_q60 == _q20 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q20, 0) && types_match (_q60, _q20)))
15698 : : {
15699 : 0 : {
15700 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q50, _q51 };
15701 : 0 : tree res = generic_simplify_435 (loc, type, _p0, _p1, captures, EQ_EXPR, NE_EXPR);
15702 : 0 : if (res) return res;
15703 : : }
15704 : : }
15705 : 0 : if ((_q60 == _q21 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q21, 0) && types_match (_q60, _q21)))
15706 : : {
15707 : 0 : {
15708 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q50, _q51 };
15709 : 0 : tree res = generic_simplify_435 (loc, type, _p0, _p1, captures, EQ_EXPR, NE_EXPR);
15710 : 0 : if (res) return res;
15711 : : }
15712 : : }
15713 : : break;
15714 : : }
15715 : 12 : default:;
15716 : : }
15717 : 12 : switch (TREE_CODE (_q51))
15718 : : {
15719 : 0 : CASE_CONVERT:
15720 : 0 : {
15721 : 0 : tree _q70 = TREE_OPERAND (_q51, 0);
15722 : 0 : if ((_q70 == _q20 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q20, 0) && types_match (_q70, _q20)))
15723 : : {
15724 : 0 : {
15725 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q51, _q50 };
15726 : 0 : tree res = generic_simplify_435 (loc, type, _p0, _p1, captures, EQ_EXPR, NE_EXPR);
15727 : 0 : if (res) return res;
15728 : : }
15729 : : }
15730 : 0 : if ((_q70 == _q21 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q21, 0) && types_match (_q70, _q21)))
15731 : : {
15732 : 0 : {
15733 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q51, _q50 };
15734 : 0 : tree res = generic_simplify_435 (loc, type, _p0, _p1, captures, EQ_EXPR, NE_EXPR);
15735 : 0 : if (res) return res;
15736 : : }
15737 : : }
15738 : : break;
15739 : : }
15740 : : default:;
15741 : : }
15742 : : break;
15743 : : }
15744 : 2 : case NE_EXPR:
15745 : 2 : {
15746 : 2 : tree _q50 = TREE_OPERAND (_p1, 0);
15747 : 2 : tree _q51 = TREE_OPERAND (_p1, 1);
15748 : 2 : switch (TREE_CODE (_q50))
15749 : : {
15750 : 0 : CASE_CONVERT:
15751 : 0 : {
15752 : 0 : tree _q60 = TREE_OPERAND (_q50, 0);
15753 : 0 : if ((_q60 == _q20 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q20, 0) && types_match (_q60, _q20)))
15754 : : {
15755 : 0 : {
15756 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q50, _q51 };
15757 : 0 : tree res = generic_simplify_435 (loc, type, _p0, _p1, captures, NE_EXPR, NE_EXPR);
15758 : 0 : if (res) return res;
15759 : : }
15760 : : }
15761 : 0 : if ((_q60 == _q21 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q21, 0) && types_match (_q60, _q21)))
15762 : : {
15763 : 0 : {
15764 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q50, _q51 };
15765 : 0 : tree res = generic_simplify_435 (loc, type, _p0, _p1, captures, NE_EXPR, NE_EXPR);
15766 : 0 : if (res) return res;
15767 : : }
15768 : : }
15769 : : break;
15770 : : }
15771 : 2 : default:;
15772 : : }
15773 : 2 : switch (TREE_CODE (_q51))
15774 : : {
15775 : 0 : CASE_CONVERT:
15776 : 0 : {
15777 : 0 : tree _q70 = TREE_OPERAND (_q51, 0);
15778 : 0 : if ((_q70 == _q20 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q20, 0) && types_match (_q70, _q20)))
15779 : : {
15780 : 0 : {
15781 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q51, _q50 };
15782 : 0 : tree res = generic_simplify_435 (loc, type, _p0, _p1, captures, NE_EXPR, NE_EXPR);
15783 : 0 : if (res) return res;
15784 : : }
15785 : : }
15786 : 0 : if ((_q70 == _q21 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q21, 0) && types_match (_q70, _q21)))
15787 : : {
15788 : 0 : {
15789 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q51, _q50 };
15790 : 0 : tree res = generic_simplify_435 (loc, type, _p0, _p1, captures, NE_EXPR, NE_EXPR);
15791 : 0 : if (res) return res;
15792 : : }
15793 : : }
15794 : : break;
15795 : : }
15796 : : default:;
15797 : : }
15798 : : break;
15799 : : }
15800 : 0 : case LT_EXPR:
15801 : 0 : {
15802 : 0 : tree _q50 = TREE_OPERAND (_p1, 0);
15803 : 0 : tree _q51 = TREE_OPERAND (_p1, 1);
15804 : 0 : switch (TREE_CODE (_q50))
15805 : : {
15806 : 0 : CASE_CONVERT:
15807 : 0 : {
15808 : 0 : tree _q60 = TREE_OPERAND (_q50, 0);
15809 : 0 : if ((_q60 == _q20 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q20, 0) && types_match (_q60, _q20)))
15810 : : {
15811 : 0 : {
15812 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q50, _q51 };
15813 : 0 : tree res = generic_simplify_435 (loc, type, _p0, _p1, captures, LT_EXPR, NE_EXPR);
15814 : 0 : if (res) return res;
15815 : : }
15816 : : }
15817 : 0 : if ((_q60 == _q21 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q21, 0) && types_match (_q60, _q21)))
15818 : : {
15819 : 0 : {
15820 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q50, _q51 };
15821 : 0 : tree res = generic_simplify_435 (loc, type, _p0, _p1, captures, LT_EXPR, NE_EXPR);
15822 : 0 : if (res) return res;
15823 : : }
15824 : : }
15825 : : break;
15826 : : }
15827 : 0 : default:;
15828 : : }
15829 : 0 : switch (TREE_CODE (_q51))
15830 : : {
15831 : 0 : CASE_CONVERT:
15832 : 0 : {
15833 : 0 : tree _q70 = TREE_OPERAND (_q51, 0);
15834 : 0 : if ((_q70 == _q20 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q20, 0) && types_match (_q70, _q20)))
15835 : : {
15836 : 0 : {
15837 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q51, _q50 };
15838 : 0 : tree res = generic_simplify_435 (loc, type, _p0, _p1, captures, GT_EXPR, NE_EXPR);
15839 : 0 : if (res) return res;
15840 : : }
15841 : : }
15842 : 0 : if ((_q70 == _q21 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q21, 0) && types_match (_q70, _q21)))
15843 : : {
15844 : 0 : {
15845 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q51, _q50 };
15846 : 0 : tree res = generic_simplify_435 (loc, type, _p0, _p1, captures, GT_EXPR, NE_EXPR);
15847 : 0 : if (res) return res;
15848 : : }
15849 : : }
15850 : : break;
15851 : : }
15852 : : default:;
15853 : : }
15854 : : break;
15855 : : }
15856 : 4 : case GT_EXPR:
15857 : 4 : {
15858 : 4 : tree _q50 = TREE_OPERAND (_p1, 0);
15859 : 4 : tree _q51 = TREE_OPERAND (_p1, 1);
15860 : 4 : switch (TREE_CODE (_q50))
15861 : : {
15862 : 0 : CASE_CONVERT:
15863 : 0 : {
15864 : 0 : tree _q60 = TREE_OPERAND (_q50, 0);
15865 : 0 : if ((_q60 == _q20 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q20, 0) && types_match (_q60, _q20)))
15866 : : {
15867 : 0 : {
15868 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q50, _q51 };
15869 : 0 : tree res = generic_simplify_435 (loc, type, _p0, _p1, captures, GT_EXPR, NE_EXPR);
15870 : 0 : if (res) return res;
15871 : : }
15872 : : }
15873 : 0 : if ((_q60 == _q21 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q21, 0) && types_match (_q60, _q21)))
15874 : : {
15875 : 0 : {
15876 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q50, _q51 };
15877 : 0 : tree res = generic_simplify_435 (loc, type, _p0, _p1, captures, GT_EXPR, NE_EXPR);
15878 : 0 : if (res) return res;
15879 : : }
15880 : : }
15881 : : break;
15882 : : }
15883 : 4 : default:;
15884 : : }
15885 : 4 : switch (TREE_CODE (_q51))
15886 : : {
15887 : 0 : CASE_CONVERT:
15888 : 0 : {
15889 : 0 : tree _q70 = TREE_OPERAND (_q51, 0);
15890 : 0 : if ((_q70 == _q20 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q20, 0) && types_match (_q70, _q20)))
15891 : : {
15892 : 0 : {
15893 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q51, _q50 };
15894 : 0 : tree res = generic_simplify_435 (loc, type, _p0, _p1, captures, LT_EXPR, NE_EXPR);
15895 : 0 : if (res) return res;
15896 : : }
15897 : : }
15898 : 0 : if ((_q70 == _q21 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q21, 0) && types_match (_q70, _q21)))
15899 : : {
15900 : 0 : {
15901 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q51, _q50 };
15902 : 0 : tree res = generic_simplify_435 (loc, type, _p0, _p1, captures, LT_EXPR, NE_EXPR);
15903 : 0 : if (res) return res;
15904 : : }
15905 : : }
15906 : : break;
15907 : : }
15908 : : default:;
15909 : : }
15910 : : break;
15911 : : }
15912 : 0 : case LE_EXPR:
15913 : 0 : {
15914 : 0 : tree _q50 = TREE_OPERAND (_p1, 0);
15915 : 0 : tree _q51 = TREE_OPERAND (_p1, 1);
15916 : 0 : switch (TREE_CODE (_q50))
15917 : : {
15918 : 0 : CASE_CONVERT:
15919 : 0 : {
15920 : 0 : tree _q60 = TREE_OPERAND (_q50, 0);
15921 : 0 : if ((_q60 == _q20 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q20, 0) && types_match (_q60, _q20)))
15922 : : {
15923 : 0 : {
15924 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q50, _q51 };
15925 : 0 : tree res = generic_simplify_435 (loc, type, _p0, _p1, captures, LE_EXPR, NE_EXPR);
15926 : 0 : if (res) return res;
15927 : : }
15928 : : }
15929 : 0 : if ((_q60 == _q21 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q21, 0) && types_match (_q60, _q21)))
15930 : : {
15931 : 0 : {
15932 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q50, _q51 };
15933 : 0 : tree res = generic_simplify_435 (loc, type, _p0, _p1, captures, LE_EXPR, NE_EXPR);
15934 : 0 : if (res) return res;
15935 : : }
15936 : : }
15937 : : break;
15938 : : }
15939 : 0 : default:;
15940 : : }
15941 : 0 : switch (TREE_CODE (_q51))
15942 : : {
15943 : 0 : CASE_CONVERT:
15944 : 0 : {
15945 : 0 : tree _q70 = TREE_OPERAND (_q51, 0);
15946 : 0 : if ((_q70 == _q20 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q20, 0) && types_match (_q70, _q20)))
15947 : : {
15948 : 0 : {
15949 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q51, _q50 };
15950 : 0 : tree res = generic_simplify_435 (loc, type, _p0, _p1, captures, GE_EXPR, NE_EXPR);
15951 : 0 : if (res) return res;
15952 : : }
15953 : : }
15954 : 0 : if ((_q70 == _q21 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q21, 0) && types_match (_q70, _q21)))
15955 : : {
15956 : 0 : {
15957 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q51, _q50 };
15958 : 0 : tree res = generic_simplify_435 (loc, type, _p0, _p1, captures, GE_EXPR, NE_EXPR);
15959 : 0 : if (res) return res;
15960 : : }
15961 : : }
15962 : : break;
15963 : : }
15964 : : default:;
15965 : : }
15966 : : break;
15967 : : }
15968 : 14 : case GE_EXPR:
15969 : 14 : {
15970 : 14 : tree _q50 = TREE_OPERAND (_p1, 0);
15971 : 14 : tree _q51 = TREE_OPERAND (_p1, 1);
15972 : 14 : switch (TREE_CODE (_q50))
15973 : : {
15974 : 0 : CASE_CONVERT:
15975 : 0 : {
15976 : 0 : tree _q60 = TREE_OPERAND (_q50, 0);
15977 : 0 : if ((_q60 == _q20 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q20, 0) && types_match (_q60, _q20)))
15978 : : {
15979 : 0 : {
15980 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q50, _q51 };
15981 : 0 : tree res = generic_simplify_435 (loc, type, _p0, _p1, captures, GE_EXPR, NE_EXPR);
15982 : 0 : if (res) return res;
15983 : : }
15984 : : }
15985 : 0 : if ((_q60 == _q21 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q21, 0) && types_match (_q60, _q21)))
15986 : : {
15987 : 0 : {
15988 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q50, _q51 };
15989 : 0 : tree res = generic_simplify_435 (loc, type, _p0, _p1, captures, GE_EXPR, NE_EXPR);
15990 : 0 : if (res) return res;
15991 : : }
15992 : : }
15993 : : break;
15994 : : }
15995 : 14 : default:;
15996 : : }
15997 : 14 : switch (TREE_CODE (_q51))
15998 : : {
15999 : 0 : CASE_CONVERT:
16000 : 0 : {
16001 : 0 : tree _q70 = TREE_OPERAND (_q51, 0);
16002 : 0 : if ((_q70 == _q20 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q20, 0) && types_match (_q70, _q20)))
16003 : : {
16004 : 0 : {
16005 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q51, _q50 };
16006 : 0 : tree res = generic_simplify_435 (loc, type, _p0, _p1, captures, LE_EXPR, NE_EXPR);
16007 : 0 : if (res) return res;
16008 : : }
16009 : : }
16010 : 0 : if ((_q70 == _q21 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q21, 0) && types_match (_q70, _q21)))
16011 : : {
16012 : 0 : {
16013 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q51, _q50 };
16014 : 0 : tree res = generic_simplify_435 (loc, type, _p0, _p1, captures, LE_EXPR, NE_EXPR);
16015 : 0 : if (res) return res;
16016 : : }
16017 : : }
16018 : : break;
16019 : : }
16020 : : default:;
16021 : : }
16022 : : break;
16023 : : }
16024 : 127 : default:;
16025 : : }
16026 : 127 : switch (TREE_CODE (_q20))
16027 : : {
16028 : 0 : CASE_CONVERT:
16029 : 0 : {
16030 : 0 : tree _q30 = TREE_OPERAND (_q20, 0);
16031 : 0 : switch (TREE_CODE (_p1))
16032 : : {
16033 : 0 : case EQ_EXPR:
16034 : 0 : {
16035 : 0 : tree _q60 = TREE_OPERAND (_p1, 0);
16036 : 0 : tree _q61 = TREE_OPERAND (_p1, 1);
16037 : 0 : if ((_q60 == _q30 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q30, 0) && types_match (_q60, _q30)))
16038 : : {
16039 : 0 : {
16040 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q30, _q61, _p0, _q20, _q21 };
16041 : 0 : tree res = generic_simplify_428 (loc, type, _p0, _p1, captures, NE_EXPR, EQ_EXPR);
16042 : 0 : if (res) return res;
16043 : : }
16044 : : }
16045 : 0 : if ((_q61 == _q30 && ! TREE_SIDE_EFFECTS (_q61)) || (operand_equal_p (_q61, _q30, 0) && types_match (_q61, _q30)))
16046 : : {
16047 : 0 : {
16048 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q30, _q60, _p0, _q20, _q21 };
16049 : 0 : tree res = generic_simplify_428 (loc, type, _p0, _p1, captures, NE_EXPR, EQ_EXPR);
16050 : 0 : if (res) return res;
16051 : : }
16052 : : }
16053 : : break;
16054 : : }
16055 : 0 : case NE_EXPR:
16056 : 0 : {
16057 : 0 : tree _q60 = TREE_OPERAND (_p1, 0);
16058 : 0 : tree _q61 = TREE_OPERAND (_p1, 1);
16059 : 0 : if ((_q60 == _q30 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q30, 0) && types_match (_q60, _q30)))
16060 : : {
16061 : 0 : {
16062 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q30, _q61, _p0, _q20, _q21 };
16063 : 0 : tree res = generic_simplify_428 (loc, type, _p0, _p1, captures, NE_EXPR, NE_EXPR);
16064 : 0 : if (res) return res;
16065 : : }
16066 : : }
16067 : 0 : if ((_q61 == _q30 && ! TREE_SIDE_EFFECTS (_q61)) || (operand_equal_p (_q61, _q30, 0) && types_match (_q61, _q30)))
16068 : : {
16069 : 0 : {
16070 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q30, _q60, _p0, _q20, _q21 };
16071 : 0 : tree res = generic_simplify_428 (loc, type, _p0, _p1, captures, NE_EXPR, NE_EXPR);
16072 : 0 : if (res) return res;
16073 : : }
16074 : : }
16075 : : break;
16076 : : }
16077 : : default:;
16078 : : }
16079 : : break;
16080 : : }
16081 : 127 : default:;
16082 : : }
16083 : 127 : switch (TREE_CODE (_q21))
16084 : : {
16085 : 0 : CASE_CONVERT:
16086 : 0 : {
16087 : 0 : tree _q40 = TREE_OPERAND (_q21, 0);
16088 : 0 : switch (TREE_CODE (_p1))
16089 : : {
16090 : 0 : case EQ_EXPR:
16091 : 0 : {
16092 : 0 : tree _q60 = TREE_OPERAND (_p1, 0);
16093 : 0 : tree _q61 = TREE_OPERAND (_p1, 1);
16094 : 0 : if ((_q60 == _q40 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q40, 0) && types_match (_q60, _q40)))
16095 : : {
16096 : 0 : {
16097 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q40, _q61, _p0, _q21, _q20 };
16098 : 0 : tree res = generic_simplify_428 (loc, type, _p0, _p1, captures, NE_EXPR, EQ_EXPR);
16099 : 0 : if (res) return res;
16100 : : }
16101 : : }
16102 : 0 : if ((_q61 == _q40 && ! TREE_SIDE_EFFECTS (_q61)) || (operand_equal_p (_q61, _q40, 0) && types_match (_q61, _q40)))
16103 : : {
16104 : 0 : {
16105 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q40, _q60, _p0, _q21, _q20 };
16106 : 0 : tree res = generic_simplify_428 (loc, type, _p0, _p1, captures, NE_EXPR, EQ_EXPR);
16107 : 0 : if (res) return res;
16108 : : }
16109 : : }
16110 : : break;
16111 : : }
16112 : 0 : case NE_EXPR:
16113 : 0 : {
16114 : 0 : tree _q60 = TREE_OPERAND (_p1, 0);
16115 : 0 : tree _q61 = TREE_OPERAND (_p1, 1);
16116 : 0 : if ((_q60 == _q40 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q40, 0) && types_match (_q60, _q40)))
16117 : : {
16118 : 0 : {
16119 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q40, _q61, _p0, _q21, _q20 };
16120 : 0 : tree res = generic_simplify_428 (loc, type, _p0, _p1, captures, NE_EXPR, NE_EXPR);
16121 : 0 : if (res) return res;
16122 : : }
16123 : : }
16124 : 0 : if ((_q61 == _q40 && ! TREE_SIDE_EFFECTS (_q61)) || (operand_equal_p (_q61, _q40, 0) && types_match (_q61, _q40)))
16125 : : {
16126 : 0 : {
16127 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q40, _q60, _p0, _q21, _q20 };
16128 : 0 : tree res = generic_simplify_428 (loc, type, _p0, _p1, captures, NE_EXPR, NE_EXPR);
16129 : 0 : if (res) return res;
16130 : : }
16131 : : }
16132 : : break;
16133 : : }
16134 : : default:;
16135 : : }
16136 : : break;
16137 : : }
16138 : 127 : default:;
16139 : : }
16140 : 127 : switch (TREE_CODE (_p1))
16141 : : {
16142 : 12 : case EQ_EXPR:
16143 : 12 : {
16144 : 12 : tree _q50 = TREE_OPERAND (_p1, 0);
16145 : 12 : tree _q51 = TREE_OPERAND (_p1, 1);
16146 : 12 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
16147 : : {
16148 : 0 : {
16149 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q50, _q51 };
16150 : 0 : tree res = generic_simplify_436 (loc, type, _p0, _p1, captures, EQ_EXPR, NE_EXPR);
16151 : 0 : if (res) return res;
16152 : : }
16153 : 0 : {
16154 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q20, _q51, _p0, _q20, _q21 };
16155 : 0 : tree res = generic_simplify_429 (loc, type, _p0, _p1, captures, NE_EXPR, EQ_EXPR);
16156 : 0 : if (res) return res;
16157 : : }
16158 : : }
16159 : 12 : if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
16160 : : {
16161 : 0 : {
16162 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q51, _q50 };
16163 : 0 : tree res = generic_simplify_436 (loc, type, _p0, _p1, captures, EQ_EXPR, NE_EXPR);
16164 : 0 : if (res) return res;
16165 : : }
16166 : : }
16167 : 12 : if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
16168 : : {
16169 : 0 : {
16170 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q50, _q51 };
16171 : 0 : tree res = generic_simplify_436 (loc, type, _p0, _p1, captures, EQ_EXPR, NE_EXPR);
16172 : 0 : if (res) return res;
16173 : : }
16174 : 0 : {
16175 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q21, _q51, _p0, _q21, _q20 };
16176 : 0 : tree res = generic_simplify_429 (loc, type, _p0, _p1, captures, NE_EXPR, EQ_EXPR);
16177 : 0 : if (res) return res;
16178 : : }
16179 : : }
16180 : 12 : if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
16181 : : {
16182 : 4 : {
16183 : 4 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q51, _q50 };
16184 : 4 : tree res = generic_simplify_436 (loc, type, _p0, _p1, captures, EQ_EXPR, NE_EXPR);
16185 : 4 : if (res) return res;
16186 : : }
16187 : 4 : {
16188 : 4 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q21, _q50, _p0, _q21, _q20 };
16189 : 4 : tree res = generic_simplify_429 (loc, type, _p0, _p1, captures, NE_EXPR, EQ_EXPR);
16190 : 4 : if (res) return res;
16191 : : }
16192 : : }
16193 : 12 : if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
16194 : : {
16195 : 0 : {
16196 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q20, _q50, _p0, _q20, _q21 };
16197 : 0 : tree res = generic_simplify_429 (loc, type, _p0, _p1, captures, NE_EXPR, EQ_EXPR);
16198 : 0 : if (res) return res;
16199 : : }
16200 : : }
16201 : : break;
16202 : : }
16203 : 2 : case NE_EXPR:
16204 : 2 : {
16205 : 2 : tree _q50 = TREE_OPERAND (_p1, 0);
16206 : 2 : tree _q51 = TREE_OPERAND (_p1, 1);
16207 : 2 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
16208 : : {
16209 : 2 : {
16210 : 2 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q50, _q51 };
16211 : 2 : tree res = generic_simplify_436 (loc, type, _p0, _p1, captures, NE_EXPR, NE_EXPR);
16212 : 2 : if (res) return res;
16213 : : }
16214 : 2 : {
16215 : 2 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q20, _q51, _p0, _q20, _q21 };
16216 : 2 : tree res = generic_simplify_429 (loc, type, _p0, _p1, captures, NE_EXPR, NE_EXPR);
16217 : 2 : if (res) return res;
16218 : : }
16219 : : }
16220 : 2 : if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
16221 : : {
16222 : 0 : {
16223 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q51, _q50 };
16224 : 0 : tree res = generic_simplify_436 (loc, type, _p0, _p1, captures, NE_EXPR, NE_EXPR);
16225 : 0 : if (res) return res;
16226 : : }
16227 : : }
16228 : 2 : if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
16229 : : {
16230 : 0 : {
16231 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q50, _q51 };
16232 : 0 : tree res = generic_simplify_436 (loc, type, _p0, _p1, captures, NE_EXPR, NE_EXPR);
16233 : 0 : if (res) return res;
16234 : : }
16235 : 0 : {
16236 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q21, _q51, _p0, _q21, _q20 };
16237 : 0 : tree res = generic_simplify_429 (loc, type, _p0, _p1, captures, NE_EXPR, NE_EXPR);
16238 : 0 : if (res) return res;
16239 : : }
16240 : : }
16241 : 2 : if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
16242 : : {
16243 : 0 : {
16244 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q51, _q50 };
16245 : 0 : tree res = generic_simplify_436 (loc, type, _p0, _p1, captures, NE_EXPR, NE_EXPR);
16246 : 0 : if (res) return res;
16247 : : }
16248 : 0 : {
16249 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q21, _q50, _p0, _q21, _q20 };
16250 : 0 : tree res = generic_simplify_429 (loc, type, _p0, _p1, captures, NE_EXPR, NE_EXPR);
16251 : 0 : if (res) return res;
16252 : : }
16253 : : }
16254 : 2 : if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
16255 : : {
16256 : 0 : {
16257 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q20, _q50, _p0, _q20, _q21 };
16258 : 0 : tree res = generic_simplify_429 (loc, type, _p0, _p1, captures, NE_EXPR, NE_EXPR);
16259 : 0 : if (res) return res;
16260 : : }
16261 : : }
16262 : : break;
16263 : : }
16264 : 0 : case LT_EXPR:
16265 : 0 : {
16266 : 0 : tree _q50 = TREE_OPERAND (_p1, 0);
16267 : 0 : tree _q51 = TREE_OPERAND (_p1, 1);
16268 : 0 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
16269 : : {
16270 : 0 : {
16271 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q50, _q51 };
16272 : 0 : tree res = generic_simplify_436 (loc, type, _p0, _p1, captures, LT_EXPR, NE_EXPR);
16273 : 0 : if (res) return res;
16274 : : }
16275 : : }
16276 : 0 : if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
16277 : : {
16278 : 0 : {
16279 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q51, _q50 };
16280 : 0 : tree res = generic_simplify_436 (loc, type, _p0, _p1, captures, GT_EXPR, NE_EXPR);
16281 : 0 : if (res) return res;
16282 : : }
16283 : : }
16284 : 0 : if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
16285 : : {
16286 : 0 : {
16287 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q50, _q51 };
16288 : 0 : tree res = generic_simplify_436 (loc, type, _p0, _p1, captures, LT_EXPR, NE_EXPR);
16289 : 0 : if (res) return res;
16290 : : }
16291 : : }
16292 : 0 : if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
16293 : : {
16294 : 0 : {
16295 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q51, _q50 };
16296 : 0 : tree res = generic_simplify_436 (loc, type, _p0, _p1, captures, GT_EXPR, NE_EXPR);
16297 : 0 : if (res) return res;
16298 : : }
16299 : : }
16300 : : break;
16301 : : }
16302 : 4 : case GT_EXPR:
16303 : 4 : {
16304 : 4 : tree _q50 = TREE_OPERAND (_p1, 0);
16305 : 4 : tree _q51 = TREE_OPERAND (_p1, 1);
16306 : 4 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
16307 : : {
16308 : 4 : {
16309 : 4 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q50, _q51 };
16310 : 4 : tree res = generic_simplify_436 (loc, type, _p0, _p1, captures, GT_EXPR, NE_EXPR);
16311 : 4 : if (res) return res;
16312 : : }
16313 : : }
16314 : 4 : if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
16315 : : {
16316 : 0 : {
16317 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q51, _q50 };
16318 : 0 : tree res = generic_simplify_436 (loc, type, _p0, _p1, captures, LT_EXPR, NE_EXPR);
16319 : 0 : if (res) return res;
16320 : : }
16321 : : }
16322 : 4 : if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
16323 : : {
16324 : 0 : {
16325 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q50, _q51 };
16326 : 0 : tree res = generic_simplify_436 (loc, type, _p0, _p1, captures, GT_EXPR, NE_EXPR);
16327 : 0 : if (res) return res;
16328 : : }
16329 : : }
16330 : 4 : if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
16331 : : {
16332 : 0 : {
16333 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q51, _q50 };
16334 : 0 : tree res = generic_simplify_436 (loc, type, _p0, _p1, captures, LT_EXPR, NE_EXPR);
16335 : 0 : if (res) return res;
16336 : : }
16337 : : }
16338 : : break;
16339 : : }
16340 : 0 : case LE_EXPR:
16341 : 0 : {
16342 : 0 : tree _q50 = TREE_OPERAND (_p1, 0);
16343 : 0 : tree _q51 = TREE_OPERAND (_p1, 1);
16344 : 0 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
16345 : : {
16346 : 0 : {
16347 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q50, _q51 };
16348 : 0 : tree res = generic_simplify_436 (loc, type, _p0, _p1, captures, LE_EXPR, NE_EXPR);
16349 : 0 : if (res) return res;
16350 : : }
16351 : : }
16352 : 0 : if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
16353 : : {
16354 : 0 : {
16355 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q51, _q50 };
16356 : 0 : tree res = generic_simplify_436 (loc, type, _p0, _p1, captures, GE_EXPR, NE_EXPR);
16357 : 0 : if (res) return res;
16358 : : }
16359 : : }
16360 : 0 : if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
16361 : : {
16362 : 0 : {
16363 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q50, _q51 };
16364 : 0 : tree res = generic_simplify_436 (loc, type, _p0, _p1, captures, LE_EXPR, NE_EXPR);
16365 : 0 : if (res) return res;
16366 : : }
16367 : : }
16368 : 0 : if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
16369 : : {
16370 : 0 : {
16371 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q51, _q50 };
16372 : 0 : tree res = generic_simplify_436 (loc, type, _p0, _p1, captures, GE_EXPR, NE_EXPR);
16373 : 0 : if (res) return res;
16374 : : }
16375 : : }
16376 : : break;
16377 : : }
16378 : 14 : case GE_EXPR:
16379 : 14 : {
16380 : 14 : tree _q50 = TREE_OPERAND (_p1, 0);
16381 : 14 : tree _q51 = TREE_OPERAND (_p1, 1);
16382 : 14 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
16383 : : {
16384 : 0 : {
16385 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q50, _q51 };
16386 : 0 : tree res = generic_simplify_436 (loc, type, _p0, _p1, captures, GE_EXPR, NE_EXPR);
16387 : 0 : if (res) return res;
16388 : : }
16389 : : }
16390 : 14 : if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
16391 : : {
16392 : 0 : {
16393 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q51, _q50 };
16394 : 0 : tree res = generic_simplify_436 (loc, type, _p0, _p1, captures, LE_EXPR, NE_EXPR);
16395 : 0 : if (res) return res;
16396 : : }
16397 : : }
16398 : 14 : if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
16399 : : {
16400 : 0 : {
16401 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q50, _q51 };
16402 : 0 : tree res = generic_simplify_436 (loc, type, _p0, _p1, captures, GE_EXPR, NE_EXPR);
16403 : 0 : if (res) return res;
16404 : : }
16405 : : }
16406 : 14 : if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
16407 : : {
16408 : 14 : {
16409 : 14 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q51, _q50 };
16410 : 14 : tree res = generic_simplify_436 (loc, type, _p0, _p1, captures, LE_EXPR, NE_EXPR);
16411 : 14 : if (res) return res;
16412 : : }
16413 : : }
16414 : : break;
16415 : : }
16416 : : default:;
16417 : : }
16418 : : break;
16419 : : }
16420 : 31 : case LE_EXPR:
16421 : 31 : {
16422 : 31 : tree _q20 = TREE_OPERAND (_p0, 0);
16423 : 31 : tree _q21 = TREE_OPERAND (_p0, 1);
16424 : 31 : switch (TREE_CODE (_p1))
16425 : : {
16426 : 12 : case EQ_EXPR:
16427 : 12 : {
16428 : 12 : tree _q50 = TREE_OPERAND (_p1, 0);
16429 : 12 : tree _q51 = TREE_OPERAND (_p1, 1);
16430 : 12 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
16431 : : {
16432 : 0 : if (tree_min_value (_q51))
16433 : : {
16434 : 0 : {
16435 : 0 : tree captures[3] ATTRIBUTE_UNUSED = { _q20, _q21, _p1 };
16436 : 0 : tree res = generic_simplify_438 (loc, type, _p0, _p1, captures);
16437 : 0 : if (res) return res;
16438 : : }
16439 : : }
16440 : : }
16441 : 12 : if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
16442 : : {
16443 : 0 : if (tree_max_value (_q51))
16444 : : {
16445 : 0 : {
16446 : 0 : tree captures[3] ATTRIBUTE_UNUSED = { _q21, _q20, _p1 };
16447 : 0 : tree res = generic_simplify_439 (loc, type, _p0, _p1, captures);
16448 : 0 : if (res) return res;
16449 : : }
16450 : : }
16451 : : }
16452 : : break;
16453 : : }
16454 : 0 : case NE_EXPR:
16455 : 0 : {
16456 : 0 : tree _q50 = TREE_OPERAND (_p1, 0);
16457 : 0 : tree _q51 = TREE_OPERAND (_p1, 1);
16458 : 0 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
16459 : : {
16460 : 0 : if (tree_min_value (_q51))
16461 : : {
16462 : 0 : {
16463 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _p1, _q20, _p0, _q21 };
16464 : 0 : tree res = generic_simplify_440 (loc, type, _p0, _p1, captures);
16465 : 0 : if (res) return res;
16466 : : }
16467 : : }
16468 : : }
16469 : : break;
16470 : : }
16471 : 31 : default:;
16472 : : }
16473 : 31 : switch (TREE_CODE (_q20))
16474 : : {
16475 : 0 : CASE_CONVERT:
16476 : 0 : {
16477 : 0 : tree _q30 = TREE_OPERAND (_q20, 0);
16478 : 0 : switch (TREE_CODE (_p1))
16479 : : {
16480 : 0 : case EQ_EXPR:
16481 : 0 : {
16482 : 0 : tree _q60 = TREE_OPERAND (_p1, 0);
16483 : 0 : tree _q61 = TREE_OPERAND (_p1, 1);
16484 : 0 : if ((_q60 == _q30 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q30, 0) && types_match (_q60, _q30)))
16485 : : {
16486 : 0 : {
16487 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q30, _q61, _p0, _q20, _q21 };
16488 : 0 : tree res = generic_simplify_428 (loc, type, _p0, _p1, captures, LE_EXPR, EQ_EXPR);
16489 : 0 : if (res) return res;
16490 : : }
16491 : : }
16492 : 0 : if ((_q61 == _q30 && ! TREE_SIDE_EFFECTS (_q61)) || (operand_equal_p (_q61, _q30, 0) && types_match (_q61, _q30)))
16493 : : {
16494 : 0 : {
16495 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q30, _q60, _p0, _q20, _q21 };
16496 : 0 : tree res = generic_simplify_428 (loc, type, _p0, _p1, captures, LE_EXPR, EQ_EXPR);
16497 : 0 : if (res) return res;
16498 : : }
16499 : : }
16500 : : break;
16501 : : }
16502 : 0 : case NE_EXPR:
16503 : 0 : {
16504 : 0 : tree _q60 = TREE_OPERAND (_p1, 0);
16505 : 0 : tree _q61 = TREE_OPERAND (_p1, 1);
16506 : 0 : if ((_q60 == _q30 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q30, 0) && types_match (_q60, _q30)))
16507 : : {
16508 : 0 : {
16509 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q30, _q61, _p0, _q20, _q21 };
16510 : 0 : tree res = generic_simplify_428 (loc, type, _p0, _p1, captures, LE_EXPR, NE_EXPR);
16511 : 0 : if (res) return res;
16512 : : }
16513 : : }
16514 : 0 : if ((_q61 == _q30 && ! TREE_SIDE_EFFECTS (_q61)) || (operand_equal_p (_q61, _q30, 0) && types_match (_q61, _q30)))
16515 : : {
16516 : 0 : {
16517 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q30, _q60, _p0, _q20, _q21 };
16518 : 0 : tree res = generic_simplify_428 (loc, type, _p0, _p1, captures, LE_EXPR, NE_EXPR);
16519 : 0 : if (res) return res;
16520 : : }
16521 : : }
16522 : : break;
16523 : : }
16524 : : default:;
16525 : : }
16526 : : break;
16527 : : }
16528 : 31 : default:;
16529 : : }
16530 : 31 : switch (TREE_CODE (_q21))
16531 : : {
16532 : 0 : CASE_CONVERT:
16533 : 0 : {
16534 : 0 : tree _q40 = TREE_OPERAND (_q21, 0);
16535 : 0 : switch (TREE_CODE (_p1))
16536 : : {
16537 : 0 : case EQ_EXPR:
16538 : 0 : {
16539 : 0 : tree _q60 = TREE_OPERAND (_p1, 0);
16540 : 0 : tree _q61 = TREE_OPERAND (_p1, 1);
16541 : 0 : if ((_q60 == _q40 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q40, 0) && types_match (_q60, _q40)))
16542 : : {
16543 : 0 : {
16544 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q40, _q61, _p0, _q21, _q20 };
16545 : 0 : tree res = generic_simplify_428 (loc, type, _p0, _p1, captures, GE_EXPR, EQ_EXPR);
16546 : 0 : if (res) return res;
16547 : : }
16548 : : }
16549 : 0 : if ((_q61 == _q40 && ! TREE_SIDE_EFFECTS (_q61)) || (operand_equal_p (_q61, _q40, 0) && types_match (_q61, _q40)))
16550 : : {
16551 : 0 : {
16552 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q40, _q60, _p0, _q21, _q20 };
16553 : 0 : tree res = generic_simplify_428 (loc, type, _p0, _p1, captures, GE_EXPR, EQ_EXPR);
16554 : 0 : if (res) return res;
16555 : : }
16556 : : }
16557 : : break;
16558 : : }
16559 : 0 : case NE_EXPR:
16560 : 0 : {
16561 : 0 : tree _q60 = TREE_OPERAND (_p1, 0);
16562 : 0 : tree _q61 = TREE_OPERAND (_p1, 1);
16563 : 0 : if ((_q60 == _q40 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q40, 0) && types_match (_q60, _q40)))
16564 : : {
16565 : 0 : {
16566 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q40, _q61, _p0, _q21, _q20 };
16567 : 0 : tree res = generic_simplify_428 (loc, type, _p0, _p1, captures, GE_EXPR, NE_EXPR);
16568 : 0 : if (res) return res;
16569 : : }
16570 : : }
16571 : 0 : if ((_q61 == _q40 && ! TREE_SIDE_EFFECTS (_q61)) || (operand_equal_p (_q61, _q40, 0) && types_match (_q61, _q40)))
16572 : : {
16573 : 0 : {
16574 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q40, _q60, _p0, _q21, _q20 };
16575 : 0 : tree res = generic_simplify_428 (loc, type, _p0, _p1, captures, GE_EXPR, NE_EXPR);
16576 : 0 : if (res) return res;
16577 : : }
16578 : : }
16579 : : break;
16580 : : }
16581 : : default:;
16582 : : }
16583 : : break;
16584 : : }
16585 : 31 : default:;
16586 : : }
16587 : 31 : switch (TREE_CODE (_p1))
16588 : : {
16589 : 12 : case EQ_EXPR:
16590 : 12 : {
16591 : 12 : tree _q50 = TREE_OPERAND (_p1, 0);
16592 : 12 : tree _q51 = TREE_OPERAND (_p1, 1);
16593 : 12 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
16594 : : {
16595 : 0 : {
16596 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q20, _q51, _p0, _q20, _q21 };
16597 : 0 : tree res = generic_simplify_429 (loc, type, _p0, _p1, captures, LE_EXPR, EQ_EXPR);
16598 : 0 : if (res) return res;
16599 : : }
16600 : : }
16601 : 12 : if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
16602 : : {
16603 : 0 : {
16604 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q21, _q51, _p0, _q21, _q20 };
16605 : 0 : tree res = generic_simplify_429 (loc, type, _p0, _p1, captures, GE_EXPR, EQ_EXPR);
16606 : 0 : if (res) return res;
16607 : : }
16608 : : }
16609 : 12 : if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
16610 : : {
16611 : 0 : {
16612 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q20, _q50, _p0, _q20, _q21 };
16613 : 0 : tree res = generic_simplify_429 (loc, type, _p0, _p1, captures, LE_EXPR, EQ_EXPR);
16614 : 0 : if (res) return res;
16615 : : }
16616 : : }
16617 : 12 : if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
16618 : : {
16619 : 0 : {
16620 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q21, _q50, _p0, _q21, _q20 };
16621 : 0 : tree res = generic_simplify_429 (loc, type, _p0, _p1, captures, GE_EXPR, EQ_EXPR);
16622 : 0 : if (res) return res;
16623 : : }
16624 : : }
16625 : : break;
16626 : : }
16627 : 0 : case NE_EXPR:
16628 : 0 : {
16629 : 0 : tree _q50 = TREE_OPERAND (_p1, 0);
16630 : 0 : tree _q51 = TREE_OPERAND (_p1, 1);
16631 : 0 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
16632 : : {
16633 : 0 : {
16634 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q20, _q51, _p0, _q20, _q21 };
16635 : 0 : tree res = generic_simplify_429 (loc, type, _p0, _p1, captures, LE_EXPR, NE_EXPR);
16636 : 0 : if (res) return res;
16637 : : }
16638 : : }
16639 : 0 : if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
16640 : : {
16641 : 0 : {
16642 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q21, _q51, _p0, _q21, _q20 };
16643 : 0 : tree res = generic_simplify_429 (loc, type, _p0, _p1, captures, GE_EXPR, NE_EXPR);
16644 : 0 : if (res) return res;
16645 : : }
16646 : : }
16647 : 0 : if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
16648 : : {
16649 : 0 : {
16650 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q20, _q50, _p0, _q20, _q21 };
16651 : 0 : tree res = generic_simplify_429 (loc, type, _p0, _p1, captures, LE_EXPR, NE_EXPR);
16652 : 0 : if (res) return res;
16653 : : }
16654 : : }
16655 : 0 : if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
16656 : : {
16657 : 0 : {
16658 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q21, _q50, _p0, _q21, _q20 };
16659 : 0 : tree res = generic_simplify_429 (loc, type, _p0, _p1, captures, GE_EXPR, NE_EXPR);
16660 : 0 : if (res) return res;
16661 : : }
16662 : : }
16663 : : break;
16664 : : }
16665 : 0 : case LT_EXPR:
16666 : 0 : {
16667 : 0 : tree _q50 = TREE_OPERAND (_p1, 0);
16668 : 0 : tree _q51 = TREE_OPERAND (_p1, 1);
16669 : 0 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
16670 : : {
16671 : 0 : {
16672 : 0 : tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q51 };
16673 : 0 : tree res = generic_simplify_430 (loc, type, _p0, _p1, captures, LT_EXPR, LE_EXPR);
16674 : 0 : if (res) return res;
16675 : : }
16676 : : }
16677 : 0 : if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
16678 : : {
16679 : 0 : {
16680 : 0 : tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q50 };
16681 : 0 : tree res = generic_simplify_430 (loc, type, _p0, _p1, captures, GT_EXPR, LE_EXPR);
16682 : 0 : if (res) return res;
16683 : : }
16684 : : }
16685 : 0 : if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
16686 : : {
16687 : 0 : {
16688 : 0 : tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q51 };
16689 : 0 : tree res = generic_simplify_430 (loc, type, _p0, _p1, captures, LT_EXPR, GE_EXPR);
16690 : 0 : if (res) return res;
16691 : : }
16692 : : }
16693 : 0 : if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
16694 : : {
16695 : 0 : {
16696 : 0 : tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q50 };
16697 : 0 : tree res = generic_simplify_430 (loc, type, _p0, _p1, captures, GT_EXPR, GE_EXPR);
16698 : 0 : if (res) return res;
16699 : : }
16700 : : }
16701 : : break;
16702 : : }
16703 : 4 : case LE_EXPR:
16704 : 4 : {
16705 : 4 : tree _q50 = TREE_OPERAND (_p1, 0);
16706 : 4 : tree _q51 = TREE_OPERAND (_p1, 1);
16707 : 4 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
16708 : : {
16709 : 0 : {
16710 : 0 : tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q51 };
16711 : 0 : tree res = generic_simplify_430 (loc, type, _p0, _p1, captures, LE_EXPR, LE_EXPR);
16712 : 0 : if (res) return res;
16713 : : }
16714 : : }
16715 : 4 : if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
16716 : : {
16717 : 0 : {
16718 : 0 : tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q50 };
16719 : 0 : tree res = generic_simplify_430 (loc, type, _p0, _p1, captures, GE_EXPR, LE_EXPR);
16720 : 0 : if (res) return res;
16721 : : }
16722 : : }
16723 : 4 : if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
16724 : : {
16725 : 0 : {
16726 : 0 : tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q51 };
16727 : 0 : tree res = generic_simplify_430 (loc, type, _p0, _p1, captures, LE_EXPR, GE_EXPR);
16728 : 0 : if (res) return res;
16729 : : }
16730 : : }
16731 : 4 : if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
16732 : : {
16733 : 4 : {
16734 : 4 : tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q50 };
16735 : 4 : tree res = generic_simplify_430 (loc, type, _p0, _p1, captures, GE_EXPR, GE_EXPR);
16736 : 4 : if (res) return res;
16737 : : }
16738 : : }
16739 : : break;
16740 : : }
16741 : 4 : case GT_EXPR:
16742 : 4 : {
16743 : 4 : tree _q50 = TREE_OPERAND (_p1, 0);
16744 : 4 : tree _q51 = TREE_OPERAND (_p1, 1);
16745 : 4 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
16746 : : {
16747 : 0 : {
16748 : 0 : tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q51 };
16749 : 0 : tree res = generic_simplify_430 (loc, type, _p0, _p1, captures, GT_EXPR, LE_EXPR);
16750 : 0 : if (res) return res;
16751 : : }
16752 : : }
16753 : 4 : if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
16754 : : {
16755 : 0 : {
16756 : 0 : tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q50 };
16757 : 0 : tree res = generic_simplify_430 (loc, type, _p0, _p1, captures, LT_EXPR, LE_EXPR);
16758 : 0 : if (res) return res;
16759 : : }
16760 : : }
16761 : 4 : if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
16762 : : {
16763 : 0 : {
16764 : 0 : tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q51 };
16765 : 0 : tree res = generic_simplify_430 (loc, type, _p0, _p1, captures, GT_EXPR, GE_EXPR);
16766 : 0 : if (res) return res;
16767 : : }
16768 : : }
16769 : 4 : if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
16770 : : {
16771 : 0 : {
16772 : 0 : tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q50 };
16773 : 0 : tree res = generic_simplify_430 (loc, type, _p0, _p1, captures, LT_EXPR, GE_EXPR);
16774 : 0 : if (res) return res;
16775 : : }
16776 : : }
16777 : : break;
16778 : : }
16779 : 0 : case GE_EXPR:
16780 : 0 : {
16781 : 0 : tree _q50 = TREE_OPERAND (_p1, 0);
16782 : 0 : tree _q51 = TREE_OPERAND (_p1, 1);
16783 : 0 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
16784 : : {
16785 : 0 : {
16786 : 0 : tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q51 };
16787 : 0 : tree res = generic_simplify_430 (loc, type, _p0, _p1, captures, GE_EXPR, LE_EXPR);
16788 : 0 : if (res) return res;
16789 : : }
16790 : : }
16791 : 0 : if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
16792 : : {
16793 : 0 : {
16794 : 0 : tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q50 };
16795 : 0 : tree res = generic_simplify_430 (loc, type, _p0, _p1, captures, LE_EXPR, LE_EXPR);
16796 : 0 : if (res) return res;
16797 : : }
16798 : : }
16799 : 0 : if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
16800 : : {
16801 : 0 : {
16802 : 0 : tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q51 };
16803 : 0 : tree res = generic_simplify_430 (loc, type, _p0, _p1, captures, GE_EXPR, GE_EXPR);
16804 : 0 : if (res) return res;
16805 : : }
16806 : : }
16807 : 0 : if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
16808 : : {
16809 : 0 : {
16810 : 0 : tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q50 };
16811 : 0 : tree res = generic_simplify_430 (loc, type, _p0, _p1, captures, LE_EXPR, GE_EXPR);
16812 : 0 : if (res) return res;
16813 : : }
16814 : : }
16815 : : break;
16816 : : }
16817 : : default:;
16818 : : }
16819 : : break;
16820 : : }
16821 : 53 : case GE_EXPR:
16822 : 53 : {
16823 : 53 : tree _q20 = TREE_OPERAND (_p0, 0);
16824 : 53 : tree _q21 = TREE_OPERAND (_p0, 1);
16825 : 53 : switch (TREE_CODE (_p1))
16826 : : {
16827 : 6 : case EQ_EXPR:
16828 : 6 : {
16829 : 6 : tree _q50 = TREE_OPERAND (_p1, 0);
16830 : 6 : tree _q51 = TREE_OPERAND (_p1, 1);
16831 : 6 : if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
16832 : : {
16833 : 0 : if (tree_min_value (_q51))
16834 : : {
16835 : 0 : {
16836 : 0 : tree captures[3] ATTRIBUTE_UNUSED = { _q21, _q20, _p1 };
16837 : 0 : tree res = generic_simplify_438 (loc, type, _p0, _p1, captures);
16838 : 0 : if (res) return res;
16839 : : }
16840 : : }
16841 : : }
16842 : 6 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
16843 : : {
16844 : 0 : if (tree_max_value (_q51))
16845 : : {
16846 : 0 : {
16847 : 0 : tree captures[3] ATTRIBUTE_UNUSED = { _q20, _q21, _p1 };
16848 : 0 : tree res = generic_simplify_439 (loc, type, _p0, _p1, captures);
16849 : 0 : if (res) return res;
16850 : : }
16851 : : }
16852 : : }
16853 : : break;
16854 : : }
16855 : 0 : case NE_EXPR:
16856 : 0 : {
16857 : 0 : tree _q50 = TREE_OPERAND (_p1, 0);
16858 : 0 : tree _q51 = TREE_OPERAND (_p1, 1);
16859 : 0 : if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
16860 : : {
16861 : 0 : if (tree_min_value (_q51))
16862 : : {
16863 : 0 : {
16864 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _p1, _q21, _p0, _q20 };
16865 : 0 : tree res = generic_simplify_440 (loc, type, _p0, _p1, captures);
16866 : 0 : if (res) return res;
16867 : : }
16868 : : }
16869 : : }
16870 : : break;
16871 : : }
16872 : 53 : default:;
16873 : : }
16874 : 53 : switch (TREE_CODE (_q20))
16875 : : {
16876 : 4 : CASE_CONVERT:
16877 : 4 : {
16878 : 4 : tree _q30 = TREE_OPERAND (_q20, 0);
16879 : 4 : switch (TREE_CODE (_p1))
16880 : : {
16881 : 0 : case EQ_EXPR:
16882 : 0 : {
16883 : 0 : tree _q60 = TREE_OPERAND (_p1, 0);
16884 : 0 : tree _q61 = TREE_OPERAND (_p1, 1);
16885 : 0 : if ((_q60 == _q30 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q30, 0) && types_match (_q60, _q30)))
16886 : : {
16887 : 0 : {
16888 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q30, _q61, _p0, _q20, _q21 };
16889 : 0 : tree res = generic_simplify_428 (loc, type, _p0, _p1, captures, GE_EXPR, EQ_EXPR);
16890 : 0 : if (res) return res;
16891 : : }
16892 : : }
16893 : 0 : if ((_q61 == _q30 && ! TREE_SIDE_EFFECTS (_q61)) || (operand_equal_p (_q61, _q30, 0) && types_match (_q61, _q30)))
16894 : : {
16895 : 0 : {
16896 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q30, _q60, _p0, _q20, _q21 };
16897 : 0 : tree res = generic_simplify_428 (loc, type, _p0, _p1, captures, GE_EXPR, EQ_EXPR);
16898 : 0 : if (res) return res;
16899 : : }
16900 : : }
16901 : : break;
16902 : : }
16903 : 0 : case NE_EXPR:
16904 : 0 : {
16905 : 0 : tree _q60 = TREE_OPERAND (_p1, 0);
16906 : 0 : tree _q61 = TREE_OPERAND (_p1, 1);
16907 : 0 : if ((_q60 == _q30 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q30, 0) && types_match (_q60, _q30)))
16908 : : {
16909 : 0 : {
16910 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q30, _q61, _p0, _q20, _q21 };
16911 : 0 : tree res = generic_simplify_428 (loc, type, _p0, _p1, captures, GE_EXPR, NE_EXPR);
16912 : 0 : if (res) return res;
16913 : : }
16914 : : }
16915 : 0 : if ((_q61 == _q30 && ! TREE_SIDE_EFFECTS (_q61)) || (operand_equal_p (_q61, _q30, 0) && types_match (_q61, _q30)))
16916 : : {
16917 : 0 : {
16918 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q30, _q60, _p0, _q20, _q21 };
16919 : 0 : tree res = generic_simplify_428 (loc, type, _p0, _p1, captures, GE_EXPR, NE_EXPR);
16920 : 0 : if (res) return res;
16921 : : }
16922 : : }
16923 : : break;
16924 : : }
16925 : : default:;
16926 : : }
16927 : : break;
16928 : : }
16929 : 53 : default:;
16930 : : }
16931 : 53 : switch (TREE_CODE (_q21))
16932 : : {
16933 : 0 : CASE_CONVERT:
16934 : 0 : {
16935 : 0 : tree _q40 = TREE_OPERAND (_q21, 0);
16936 : 0 : switch (TREE_CODE (_p1))
16937 : : {
16938 : 0 : case EQ_EXPR:
16939 : 0 : {
16940 : 0 : tree _q60 = TREE_OPERAND (_p1, 0);
16941 : 0 : tree _q61 = TREE_OPERAND (_p1, 1);
16942 : 0 : if ((_q60 == _q40 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q40, 0) && types_match (_q60, _q40)))
16943 : : {
16944 : 0 : {
16945 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q40, _q61, _p0, _q21, _q20 };
16946 : 0 : tree res = generic_simplify_428 (loc, type, _p0, _p1, captures, LE_EXPR, EQ_EXPR);
16947 : 0 : if (res) return res;
16948 : : }
16949 : : }
16950 : 0 : if ((_q61 == _q40 && ! TREE_SIDE_EFFECTS (_q61)) || (operand_equal_p (_q61, _q40, 0) && types_match (_q61, _q40)))
16951 : : {
16952 : 0 : {
16953 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q40, _q60, _p0, _q21, _q20 };
16954 : 0 : tree res = generic_simplify_428 (loc, type, _p0, _p1, captures, LE_EXPR, EQ_EXPR);
16955 : 0 : if (res) return res;
16956 : : }
16957 : : }
16958 : : break;
16959 : : }
16960 : 0 : case NE_EXPR:
16961 : 0 : {
16962 : 0 : tree _q60 = TREE_OPERAND (_p1, 0);
16963 : 0 : tree _q61 = TREE_OPERAND (_p1, 1);
16964 : 0 : if ((_q60 == _q40 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q40, 0) && types_match (_q60, _q40)))
16965 : : {
16966 : 0 : {
16967 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q40, _q61, _p0, _q21, _q20 };
16968 : 0 : tree res = generic_simplify_428 (loc, type, _p0, _p1, captures, LE_EXPR, NE_EXPR);
16969 : 0 : if (res) return res;
16970 : : }
16971 : : }
16972 : 0 : if ((_q61 == _q40 && ! TREE_SIDE_EFFECTS (_q61)) || (operand_equal_p (_q61, _q40, 0) && types_match (_q61, _q40)))
16973 : : {
16974 : 0 : {
16975 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q40, _q60, _p0, _q21, _q20 };
16976 : 0 : tree res = generic_simplify_428 (loc, type, _p0, _p1, captures, LE_EXPR, NE_EXPR);
16977 : 0 : if (res) return res;
16978 : : }
16979 : : }
16980 : : break;
16981 : : }
16982 : : default:;
16983 : : }
16984 : : break;
16985 : : }
16986 : 53 : default:;
16987 : : }
16988 : 53 : switch (TREE_CODE (_p1))
16989 : : {
16990 : 6 : case EQ_EXPR:
16991 : 6 : {
16992 : 6 : tree _q50 = TREE_OPERAND (_p1, 0);
16993 : 6 : tree _q51 = TREE_OPERAND (_p1, 1);
16994 : 6 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
16995 : : {
16996 : 0 : {
16997 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q20, _q51, _p0, _q20, _q21 };
16998 : 0 : tree res = generic_simplify_429 (loc, type, _p0, _p1, captures, GE_EXPR, EQ_EXPR);
16999 : 0 : if (res) return res;
17000 : : }
17001 : : }
17002 : 6 : if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
17003 : : {
17004 : 0 : {
17005 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q21, _q51, _p0, _q21, _q20 };
17006 : 0 : tree res = generic_simplify_429 (loc, type, _p0, _p1, captures, LE_EXPR, EQ_EXPR);
17007 : 0 : if (res) return res;
17008 : : }
17009 : : }
17010 : 6 : if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
17011 : : {
17012 : 0 : {
17013 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q20, _q50, _p0, _q20, _q21 };
17014 : 0 : tree res = generic_simplify_429 (loc, type, _p0, _p1, captures, GE_EXPR, EQ_EXPR);
17015 : 0 : if (res) return res;
17016 : : }
17017 : : }
17018 : 6 : if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
17019 : : {
17020 : 0 : {
17021 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q21, _q50, _p0, _q21, _q20 };
17022 : 0 : tree res = generic_simplify_429 (loc, type, _p0, _p1, captures, LE_EXPR, EQ_EXPR);
17023 : 0 : if (res) return res;
17024 : : }
17025 : : }
17026 : : break;
17027 : : }
17028 : 0 : case NE_EXPR:
17029 : 0 : {
17030 : 0 : tree _q50 = TREE_OPERAND (_p1, 0);
17031 : 0 : tree _q51 = TREE_OPERAND (_p1, 1);
17032 : 0 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
17033 : : {
17034 : 0 : {
17035 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q20, _q51, _p0, _q20, _q21 };
17036 : 0 : tree res = generic_simplify_429 (loc, type, _p0, _p1, captures, GE_EXPR, NE_EXPR);
17037 : 0 : if (res) return res;
17038 : : }
17039 : : }
17040 : 0 : if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
17041 : : {
17042 : 0 : {
17043 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q21, _q51, _p0, _q21, _q20 };
17044 : 0 : tree res = generic_simplify_429 (loc, type, _p0, _p1, captures, LE_EXPR, NE_EXPR);
17045 : 0 : if (res) return res;
17046 : : }
17047 : : }
17048 : 0 : if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
17049 : : {
17050 : 0 : {
17051 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q20, _q50, _p0, _q20, _q21 };
17052 : 0 : tree res = generic_simplify_429 (loc, type, _p0, _p1, captures, GE_EXPR, NE_EXPR);
17053 : 0 : if (res) return res;
17054 : : }
17055 : : }
17056 : 0 : if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
17057 : : {
17058 : 0 : {
17059 : 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q21, _q50, _p0, _q21, _q20 };
17060 : 0 : tree res = generic_simplify_429 (loc, type, _p0, _p1, captures, LE_EXPR, NE_EXPR);
17061 : 0 : if (res) return res;
17062 : : }
17063 : : }
17064 : : break;
17065 : : }
17066 : 0 : case LT_EXPR:
17067 : 0 : {
17068 : 0 : tree _q50 = TREE_OPERAND (_p1, 0);
17069 : 0 : tree _q51 = TREE_OPERAND (_p1, 1);
17070 : 0 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
17071 : : {
17072 : 0 : {
17073 : 0 : tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q51 };
17074 : 0 : tree res = generic_simplify_430 (loc, type, _p0, _p1, captures, LT_EXPR, GE_EXPR);
17075 : 0 : if (res) return res;
17076 : : }
17077 : : }
17078 : 0 : if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
17079 : : {
17080 : 0 : {
17081 : 0 : tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q50 };
17082 : 0 : tree res = generic_simplify_430 (loc, type, _p0, _p1, captures, GT_EXPR, GE_EXPR);
17083 : 0 : if (res) return res;
17084 : : }
17085 : : }
17086 : 0 : if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
17087 : : {
17088 : 0 : {
17089 : 0 : tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q51 };
17090 : 0 : tree res = generic_simplify_430 (loc, type, _p0, _p1, captures, LT_EXPR, LE_EXPR);
17091 : 0 : if (res) return res;
17092 : : }
17093 : : }
17094 : 0 : if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
17095 : : {
17096 : 0 : {
17097 : 0 : tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q50 };
17098 : 0 : tree res = generic_simplify_430 (loc, type, _p0, _p1, captures, GT_EXPR, LE_EXPR);
17099 : 0 : if (res) return res;
17100 : : }
17101 : : }
17102 : : break;
17103 : : }
17104 : 8 : case LE_EXPR:
17105 : 8 : {
17106 : 8 : tree _q50 = TREE_OPERAND (_p1, 0);
17107 : 8 : tree _q51 = TREE_OPERAND (_p1, 1);
17108 : 8 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
17109 : : {
17110 : 7 : {
17111 : 7 : tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q51 };
17112 : 7 : tree res = generic_simplify_430 (loc, type, _p0, _p1, captures, LE_EXPR, GE_EXPR);
17113 : 7 : if (res) return res;
17114 : : }
17115 : : }
17116 : 8 : if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
17117 : : {
17118 : 0 : {
17119 : 0 : tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q50 };
17120 : 0 : tree res = generic_simplify_430 (loc, type, _p0, _p1, captures, GE_EXPR, GE_EXPR);
17121 : 0 : if (res) return res;
17122 : : }
17123 : : }
17124 : 8 : if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
17125 : : {
17126 : 0 : {
17127 : 0 : tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q51 };
17128 : 0 : tree res = generic_simplify_430 (loc, type, _p0, _p1, captures, LE_EXPR, LE_EXPR);
17129 : 0 : if (res) return res;
17130 : : }
17131 : : }
17132 : 8 : if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
17133 : : {
17134 : 0 : {
17135 : 0 : tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q50 };
17136 : 0 : tree res = generic_simplify_430 (loc, type, _p0, _p1, captures, GE_EXPR, LE_EXPR);
17137 : 0 : if (res) return res;
17138 : : }
17139 : : }
17140 : : break;
17141 : : }
17142 : 0 : case GT_EXPR:
17143 : 0 : {
17144 : 0 : tree _q50 = TREE_OPERAND (_p1, 0);
17145 : 0 : tree _q51 = TREE_OPERAND (_p1, 1);
17146 : 0 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
17147 : : {
17148 : 0 : {
17149 : 0 : tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q51 };
17150 : 0 : tree res = generic_simplify_430 (loc, type, _p0, _p1, captures, GT_EXPR, GE_EXPR);
17151 : 0 : if (res) return res;
17152 : : }
17153 : : }
17154 : 0 : if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
17155 : : {
17156 : 0 : {
17157 : 0 : tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q50 };
17158 : 0 : tree res = generic_simplify_430 (loc, type, _p0, _p1, captures, LT_EXPR, GE_EXPR);
17159 : 0 : if (res) return res;
17160 : : }
17161 : : }
17162 : 0 : if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
17163 : : {
17164 : 0 : {
17165 : 0 : tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q51 };
17166 : 0 : tree res = generic_simplify_430 (loc, type, _p0, _p1, captures, GT_EXPR, LE_EXPR);
17167 : 0 : if (res) return res;
17168 : : }
17169 : : }
17170 : 0 : if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
17171 : : {
17172 : 0 : {
17173 : 0 : tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q50 };
17174 : 0 : tree res = generic_simplify_430 (loc, type, _p0, _p1, captures, LT_EXPR, LE_EXPR);
17175 : 0 : if (res) return res;
17176 : : }
17177 : : }
17178 : : break;
17179 : : }
17180 : 11 : case GE_EXPR:
17181 : 11 : {
17182 : 11 : tree _q50 = TREE_OPERAND (_p1, 0);
17183 : 11 : tree _q51 = TREE_OPERAND (_p1, 1);
17184 : 11 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
17185 : : {
17186 : 7 : {
17187 : 7 : tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q51 };
17188 : 7 : tree res = generic_simplify_430 (loc, type, _p0, _p1, captures, GE_EXPR, GE_EXPR);
17189 : 7 : if (res) return res;
17190 : : }
17191 : : }
17192 : 11 : if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
17193 : : {
17194 : 0 : {
17195 : 0 : tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q50 };
17196 : 0 : tree res = generic_simplify_430 (loc, type, _p0, _p1, captures, LE_EXPR, GE_EXPR);
17197 : 0 : if (res) return res;
17198 : : }
17199 : : }
17200 : 11 : if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
17201 : : {
17202 : 4 : {
17203 : 4 : tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q51 };
17204 : 4 : tree res = generic_simplify_430 (loc, type, _p0, _p1, captures, GE_EXPR, LE_EXPR);
17205 : 4 : if (res) return res;
17206 : : }
17207 : : }
17208 : 11 : if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
17209 : : {
17210 : 0 : {
17211 : 0 : tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q50 };
17212 : 0 : tree res = generic_simplify_430 (loc, type, _p0, _p1, captures, LE_EXPR, LE_EXPR);
17213 : 0 : if (res) return res;
17214 : : }
17215 : : }
17216 : : break;
17217 : : }
17218 : : default:;
17219 : : }
17220 : : break;
17221 : : }
17222 : 0 : case MIN_EXPR:
17223 : 0 : {
17224 : 0 : tree _q20 = TREE_OPERAND (_p0, 0);
17225 : 0 : tree _q21 = TREE_OPERAND (_p0, 1);
17226 : 0 : switch (TREE_CODE (_p1))
17227 : : {
17228 : 0 : case MAX_EXPR:
17229 : 0 : {
17230 : 0 : tree _q50 = TREE_OPERAND (_p1, 0);
17231 : 0 : tree _q51 = TREE_OPERAND (_p1, 1);
17232 : 0 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
17233 : : {
17234 : 0 : if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
17235 : : {
17236 : 0 : {
17237 : 0 : tree captures[2] ATTRIBUTE_UNUSED = { _q20, _q21 };
17238 : 0 : if (!HONOR_NANS (captures[0])
17239 : : )
17240 : : {
17241 : 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1730;
17242 : 0 : {
17243 : 0 : tree res_op0;
17244 : 0 : res_op0 = captures[0];
17245 : 0 : tree res_op1;
17246 : 0 : res_op1 = captures[1];
17247 : 0 : tree _r;
17248 : 0 : _r = fold_build2_loc (loc, BIT_AND_EXPR, type, res_op0, res_op1);
17249 : 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 883, __FILE__, __LINE__, true);
17250 : 0 : return _r;
17251 : : }
17252 : 0 : next_after_fail1730:;
17253 : : }
17254 : : }
17255 : : }
17256 : : }
17257 : 0 : if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
17258 : : {
17259 : 0 : if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
17260 : : {
17261 : 0 : {
17262 : 0 : tree captures[2] ATTRIBUTE_UNUSED = { _q21, _q20 };
17263 : 0 : if (!HONOR_NANS (captures[0])
17264 : : )
17265 : : {
17266 : 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1731;
17267 : 0 : {
17268 : 0 : tree res_op0;
17269 : 0 : res_op0 = captures[0];
17270 : 0 : tree res_op1;
17271 : 0 : res_op1 = captures[1];
17272 : 0 : tree _r;
17273 : 0 : _r = fold_build2_loc (loc, BIT_AND_EXPR, type, res_op0, res_op1);
17274 : 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 883, __FILE__, __LINE__, true);
17275 : 0 : return _r;
17276 : : }
17277 : 0 : next_after_fail1731:;
17278 : : }
17279 : : }
17280 : : }
17281 : : }
17282 : : break;
17283 : : }
17284 : : default:;
17285 : : }
17286 : : break;
17287 : : }
17288 : 80 : case MAX_EXPR:
17289 : 80 : {
17290 : 80 : tree _q20 = TREE_OPERAND (_p0, 0);
17291 : 80 : tree _q21 = TREE_OPERAND (_p0, 1);
17292 : 80 : switch (TREE_CODE (_p1))
17293 : : {
17294 : 0 : case MIN_EXPR:
17295 : 0 : {
17296 : 0 : tree _q50 = TREE_OPERAND (_p1, 0);
17297 : 0 : tree _q51 = TREE_OPERAND (_p1, 1);
17298 : 0 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
17299 : : {
17300 : 0 : if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
17301 : : {
17302 : 0 : {
17303 : 0 : tree captures[2] ATTRIBUTE_UNUSED = { _q20, _q21 };
17304 : 0 : if (!HONOR_NANS (captures[0])
17305 : : )
17306 : : {
17307 : 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1732;
17308 : 0 : {
17309 : 0 : tree res_op0;
17310 : 0 : res_op0 = captures[0];
17311 : 0 : tree res_op1;
17312 : 0 : res_op1 = captures[1];
17313 : 0 : tree _r;
17314 : 0 : _r = fold_build2_loc (loc, BIT_AND_EXPR, type, res_op0, res_op1);
17315 : 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 883, __FILE__, __LINE__, true);
17316 : 0 : return _r;
17317 : : }
17318 : 0 : next_after_fail1732:;
17319 : : }
17320 : : }
17321 : : }
17322 : : }
17323 : 0 : if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
17324 : : {
17325 : 0 : if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
17326 : : {
17327 : 0 : {
17328 : 0 : tree captures[2] ATTRIBUTE_UNUSED = { _q20, _q21 };
17329 : 0 : if (!HONOR_NANS (captures[0])
17330 : : )
17331 : : {
17332 : 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1733;
17333 : 0 : {
17334 : 0 : tree res_op0;
17335 : 0 : res_op0 = captures[0];
17336 : 0 : tree res_op1;
17337 : 0 : res_op1 = captures[1];
17338 : 0 : tree _r;
17339 : 0 : _r = fold_build2_loc (loc, BIT_AND_EXPR, type, res_op0, res_op1);
17340 : 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 883, __FILE__, __LINE__, true);
17341 : 0 : return _r;
17342 : : }
17343 : 0 : next_after_fail1733:;
17344 : : }
17345 : : }
17346 : : }
17347 : : }
17348 : : break;
17349 : : }
17350 : : default:;
17351 : : }
17352 : : break;
17353 : : }
17354 : 32164 : case LSHIFT_EXPR:
17355 : 32164 : {
17356 : 32164 : tree _q20 = TREE_OPERAND (_p0, 0);
17357 : 32164 : tree _q21 = TREE_OPERAND (_p0, 1);
17358 : 32164 : switch (TREE_CODE (_q20))
17359 : : {
17360 : 5508 : case INTEGER_CST:
17361 : 5508 : {
17362 : 5508 : if (integer_onep (_p1))
17363 : : {
17364 : 44 : {
17365 : 44 : tree captures[2] ATTRIBUTE_UNUSED = { _q20, _q21 };
17366 : 44 : if ((wi::to_wide (captures[0]) & 1) != 0
17367 : : )
17368 : : {
17369 : 40 : if (TREE_SIDE_EFFECTS (_p1)) goto next_after_fail1734;
17370 : 40 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1734;
17371 : 40 : {
17372 : 40 : tree res_op0;
17373 : 40 : {
17374 : 40 : tree _o1[2], _r1;
17375 : 40 : _o1[0] = captures[1];
17376 : 40 : _o1[1] = build_zero_cst (TREE_TYPE (captures[1]));
17377 : 40 : _r1 = fold_build2_loc (loc, EQ_EXPR, boolean_type_node, _o1[0], _o1[1]);
17378 : 40 : res_op0 = _r1;
17379 : : }
17380 : 40 : tree _r;
17381 : 40 : _r = fold_build1_loc (loc, NOP_EXPR, type, res_op0);
17382 : 40 : if (TREE_SIDE_EFFECTS (captures[0]))
17383 : 0 : _r = build2_loc (loc, COMPOUND_EXPR, type, fold_ignored_result (captures[0]), _r);
17384 : 40 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 1007, __FILE__, __LINE__, true);
17385 : 40 : return _r;
17386 : : }
17387 : 0 : next_after_fail1734:;
17388 : : }
17389 : : else
17390 : : {
17391 : 4 : if (TREE_SIDE_EFFECTS (_p1)) goto next_after_fail1735;
17392 : 4 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1735;
17393 : 4 : {
17394 : 4 : tree _r;
17395 : 4 : _r = build_zero_cst (type);
17396 : 4 : if (TREE_SIDE_EFFECTS (captures[0]))
17397 : 0 : _r = build2_loc (loc, COMPOUND_EXPR, type, fold_ignored_result (captures[0]), _r);
17398 : 4 : if (TREE_SIDE_EFFECTS (captures[1]))
17399 : 0 : _r = build2_loc (loc, COMPOUND_EXPR, type, fold_ignored_result (captures[1]), _r);
17400 : 4 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 1008, __FILE__, __LINE__, true);
17401 : 4 : return _r;
17402 : : }
17403 : 0 : next_after_fail1735:;
17404 : : }
17405 : : }
17406 : : }
17407 : : break;
17408 : : }
17409 : 4244 : CASE_CONVERT:
17410 : 4244 : {
17411 : 4244 : tree _q30 = TREE_OPERAND (_q20, 0);
17412 : 4244 : switch (TREE_CODE (_q21))
17413 : : {
17414 : 4157 : case INTEGER_CST:
17415 : 4157 : {
17416 : 4157 : switch (TREE_CODE (_p1))
17417 : : {
17418 : 4157 : case INTEGER_CST:
17419 : 4157 : {
17420 : 4157 : {
17421 : 4157 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _p0, _q20, _q30, _q21, _p1 };
17422 : 4157 : tree res = generic_simplify_441 (loc, type, _p0, _p1, captures, LSHIFT_EXPR);
17423 : 4157 : if (res) return res;
17424 : : }
17425 : 3541 : break;
17426 : : }
17427 : : default:;
17428 : : }
17429 : : break;
17430 : : }
17431 : : default:;
17432 : : }
17433 : : break;
17434 : : }
17435 : 31504 : default:;
17436 : : }
17437 : 31504 : switch (TREE_CODE (_q21))
17438 : : {
17439 : 25669 : case INTEGER_CST:
17440 : 25669 : {
17441 : 25669 : switch (TREE_CODE (_p1))
17442 : : {
17443 : 25632 : case INTEGER_CST:
17444 : 25632 : {
17445 : 25632 : {
17446 : 25632 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _p0, _q20, _q20, _q21, _p1 };
17447 : 25632 : tree res = generic_simplify_442 (loc, type, _p0, _p1, captures, LSHIFT_EXPR);
17448 : 25632 : if (res) return res;
17449 : : }
17450 : 15201 : break;
17451 : : }
17452 : : default:;
17453 : : }
17454 : : break;
17455 : : }
17456 : : default:;
17457 : : }
17458 : : break;
17459 : : }
17460 : 64245 : case RSHIFT_EXPR:
17461 : 64245 : {
17462 : 64245 : tree _q20 = TREE_OPERAND (_p0, 0);
17463 : 64245 : tree _q21 = TREE_OPERAND (_p0, 1);
17464 : 64245 : switch (TREE_CODE (_q20))
17465 : : {
17466 : 42392 : CASE_CONVERT:
17467 : 42392 : {
17468 : 42392 : tree _q30 = TREE_OPERAND (_q20, 0);
17469 : 42392 : switch (TREE_CODE (_q21))
17470 : : {
17471 : 41647 : case INTEGER_CST:
17472 : 41647 : {
17473 : 41647 : switch (TREE_CODE (_p1))
17474 : : {
17475 : 41647 : case INTEGER_CST:
17476 : 41647 : {
17477 : 41647 : {
17478 : 41647 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _p0, _q20, _q30, _q21, _p1 };
17479 : 41647 : tree res = generic_simplify_441 (loc, type, _p0, _p1, captures, RSHIFT_EXPR);
17480 : 41647 : if (res) return res;
17481 : : }
17482 : 41402 : break;
17483 : : }
17484 : : default:;
17485 : : }
17486 : : break;
17487 : : }
17488 : 42147 : default:;
17489 : : }
17490 : 42147 : switch (TREE_CODE (_q30))
17491 : : {
17492 : 22 : case CALL_EXPR:
17493 : 22 : switch (get_call_combined_fn (_q30))
17494 : : {
17495 : 0 : case CFN_BUILT_IN_BSWAP128:
17496 : 0 : if (call_expr_nargs (_q30) == 1)
17497 : : {
17498 : 0 : tree _q40 = CALL_EXPR_ARG (_q30, 0);
17499 : 0 : switch (TREE_CODE (_q21))
17500 : : {
17501 : 0 : case INTEGER_CST:
17502 : 0 : {
17503 : 0 : switch (TREE_CODE (_p1))
17504 : : {
17505 : 0 : case INTEGER_CST:
17506 : 0 : {
17507 : 0 : {
17508 : 0 : tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q30, _q40, _q21, _p1 };
17509 : 0 : tree res = generic_simplify_424 (loc, type, _p0, _p1, captures, CFN_BUILT_IN_BSWAP128);
17510 : 0 : if (res) return res;
17511 : : }
17512 : 0 : break;
17513 : : }
17514 : : default:;
17515 : : }
17516 : : break;
17517 : : }
17518 : : default:;
17519 : : }
17520 : : }
17521 : : break;
17522 : 1 : case CFN_BUILT_IN_BSWAP16:
17523 : 1 : if (call_expr_nargs (_q30) == 1)
17524 : : {
17525 : 1 : tree _q40 = CALL_EXPR_ARG (_q30, 0);
17526 : 1 : switch (TREE_CODE (_q21))
17527 : : {
17528 : 0 : case INTEGER_CST:
17529 : 0 : {
17530 : 0 : switch (TREE_CODE (_p1))
17531 : : {
17532 : 0 : case INTEGER_CST:
17533 : 0 : {
17534 : 0 : {
17535 : 0 : tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q30, _q40, _q21, _p1 };
17536 : 0 : tree res = generic_simplify_424 (loc, type, _p0, _p1, captures, CFN_BUILT_IN_BSWAP16);
17537 : 0 : if (res) return res;
17538 : : }
17539 : 0 : break;
17540 : : }
17541 : : default:;
17542 : : }
17543 : : break;
17544 : : }
17545 : : default:;
17546 : : }
17547 : : }
17548 : : break;
17549 : 9 : case CFN_BUILT_IN_BSWAP32:
17550 : 9 : if (call_expr_nargs (_q30) == 1)
17551 : : {
17552 : 9 : tree _q40 = CALL_EXPR_ARG (_q30, 0);
17553 : 9 : switch (TREE_CODE (_q21))
17554 : : {
17555 : 9 : case INTEGER_CST:
17556 : 9 : {
17557 : 9 : switch (TREE_CODE (_p1))
17558 : : {
17559 : 9 : case INTEGER_CST:
17560 : 9 : {
17561 : 9 : {
17562 : 9 : tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q30, _q40, _q21, _p1 };
17563 : 9 : tree res = generic_simplify_424 (loc, type, _p0, _p1, captures, CFN_BUILT_IN_BSWAP32);
17564 : 9 : if (res) return res;
17565 : : }
17566 : 0 : break;
17567 : : }
17568 : : default:;
17569 : : }
17570 : : break;
17571 : : }
17572 : : default:;
17573 : : }
17574 : : }
17575 : : break;
17576 : 12 : case CFN_BUILT_IN_BSWAP64:
17577 : 12 : if (call_expr_nargs (_q30) == 1)
17578 : : {
17579 : 12 : tree _q40 = CALL_EXPR_ARG (_q30, 0);
17580 : 12 : switch (TREE_CODE (_q21))
17581 : : {
17582 : 12 : case INTEGER_CST:
17583 : 12 : {
17584 : 12 : switch (TREE_CODE (_p1))
17585 : : {
17586 : 12 : case INTEGER_CST:
17587 : 12 : {
17588 : 12 : {
17589 : 12 : tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q30, _q40, _q21, _p1 };
17590 : 12 : tree res = generic_simplify_424 (loc, type, _p0, _p1, captures, CFN_BUILT_IN_BSWAP64);
17591 : 12 : if (res) return res;
17592 : : }
17593 : 0 : break;
17594 : : }
17595 : : default:;
17596 : : }
17597 : : break;
17598 : : }
17599 : : default:;
17600 : : }
17601 : : }
17602 : : break;
17603 : : default:;
17604 : : }
17605 : : break;
17606 : : default:;
17607 : : }
17608 : : break;
17609 : : }
17610 : 63979 : default:;
17611 : : }
17612 : 63979 : switch (TREE_CODE (_q21))
17613 : : {
17614 : 49751 : case INTEGER_CST:
17615 : 49751 : {
17616 : 49751 : switch (TREE_CODE (_p1))
17617 : : {
17618 : 49606 : case INTEGER_CST:
17619 : 49606 : {
17620 : 49606 : {
17621 : 49606 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _p0, _q20, _q20, _q21, _p1 };
17622 : 49606 : tree res = generic_simplify_442 (loc, type, _p0, _p1, captures, RSHIFT_EXPR);
17623 : 49606 : if (res) return res;
17624 : : }
17625 : 48127 : break;
17626 : : }
17627 : : default:;
17628 : : }
17629 : : break;
17630 : : }
17631 : 62500 : default:;
17632 : : }
17633 : 62500 : switch (TREE_CODE (_q20))
17634 : : {
17635 : 140 : case CALL_EXPR:
17636 : 140 : switch (get_call_combined_fn (_q20))
17637 : : {
17638 : 0 : case CFN_BUILT_IN_BSWAP128:
17639 : 0 : if (call_expr_nargs (_q20) == 1)
17640 : : {
17641 : 0 : tree _q30 = CALL_EXPR_ARG (_q20, 0);
17642 : 0 : switch (TREE_CODE (_q21))
17643 : : {
17644 : 0 : case INTEGER_CST:
17645 : 0 : {
17646 : 0 : switch (TREE_CODE (_p1))
17647 : : {
17648 : 0 : case INTEGER_CST:
17649 : 0 : {
17650 : 0 : {
17651 : 0 : tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q20, _q30, _q21, _p1 };
17652 : 0 : tree res = generic_simplify_424 (loc, type, _p0, _p1, captures, CFN_BUILT_IN_BSWAP128);
17653 : 0 : if (res) return res;
17654 : : }
17655 : 0 : break;
17656 : : }
17657 : : default:;
17658 : : }
17659 : : break;
17660 : : }
17661 : : default:;
17662 : : }
17663 : : }
17664 : : break;
17665 : 0 : case CFN_BUILT_IN_BSWAP16:
17666 : 0 : if (call_expr_nargs (_q20) == 1)
17667 : : {
17668 : 0 : tree _q30 = CALL_EXPR_ARG (_q20, 0);
17669 : 0 : switch (TREE_CODE (_q21))
17670 : : {
17671 : 0 : case INTEGER_CST:
17672 : 0 : {
17673 : 0 : switch (TREE_CODE (_p1))
17674 : : {
17675 : 0 : case INTEGER_CST:
17676 : 0 : {
17677 : 0 : {
17678 : 0 : tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q20, _q30, _q21, _p1 };
17679 : 0 : tree res = generic_simplify_424 (loc, type, _p0, _p1, captures, CFN_BUILT_IN_BSWAP16);
17680 : 0 : if (res) return res;
17681 : : }
17682 : 0 : break;
17683 : : }
17684 : : default:;
17685 : : }
17686 : : break;
17687 : : }
17688 : : default:;
17689 : : }
17690 : : }
17691 : : break;
17692 : 60 : case CFN_BUILT_IN_BSWAP32:
17693 : 60 : if (call_expr_nargs (_q20) == 1)
17694 : : {
17695 : 60 : tree _q30 = CALL_EXPR_ARG (_q20, 0);
17696 : 60 : switch (TREE_CODE (_q21))
17697 : : {
17698 : 59 : case INTEGER_CST:
17699 : 59 : {
17700 : 59 : switch (TREE_CODE (_p1))
17701 : : {
17702 : 59 : case INTEGER_CST:
17703 : 59 : {
17704 : 59 : {
17705 : 59 : tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q20, _q30, _q21, _p1 };
17706 : 59 : tree res = generic_simplify_424 (loc, type, _p0, _p1, captures, CFN_BUILT_IN_BSWAP32);
17707 : 59 : if (res) return res;
17708 : : }
17709 : 0 : break;
17710 : : }
17711 : : default:;
17712 : : }
17713 : : break;
17714 : : }
17715 : : default:;
17716 : : }
17717 : : }
17718 : : break;
17719 : 73 : case CFN_BUILT_IN_BSWAP64:
17720 : 73 : if (call_expr_nargs (_q20) == 1)
17721 : : {
17722 : 73 : tree _q30 = CALL_EXPR_ARG (_q20, 0);
17723 : 73 : switch (TREE_CODE (_q21))
17724 : : {
17725 : 73 : case INTEGER_CST:
17726 : 73 : {
17727 : 73 : switch (TREE_CODE (_p1))
17728 : : {
17729 : 73 : case INTEGER_CST:
17730 : 73 : {
17731 : 73 : {
17732 : 73 : tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q20, _q30, _q21, _p1 };
17733 : 73 : tree res = generic_simplify_424 (loc, type, _p0, _p1, captures, CFN_BUILT_IN_BSWAP64);
17734 : 73 : if (res) return res;
17735 : : }
17736 : 0 : break;
17737 : : }
17738 : : default:;
17739 : : }
17740 : : break;
17741 : : }
17742 : : default:;
17743 : : }
17744 : : }
17745 : : break;
17746 : : default:;
17747 : : }
17748 : : break;
17749 : : default:;
17750 : : }
17751 : : break;
17752 : : }
17753 : 65 : case VEC_COND_EXPR:
17754 : 65 : {
17755 : 65 : tree _q20 = TREE_OPERAND (_p0, 0);
17756 : 65 : tree _q21 = TREE_OPERAND (_p0, 1);
17757 : 65 : tree _q22 = TREE_OPERAND (_p0, 2);
17758 : 65 : switch (TREE_CODE (_p1))
17759 : : {
17760 : 47 : case VEC_COND_EXPR:
17761 : 47 : {
17762 : 47 : tree _q60 = TREE_OPERAND (_p1, 0);
17763 : 47 : tree _q61 = TREE_OPERAND (_p1, 1);
17764 : 47 : tree _q62 = TREE_OPERAND (_p1, 2);
17765 : 47 : if ((_q60 == _q20 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q20, 0) && types_match (_q60, _q20)))
17766 : : {
17767 : 0 : {
17768 : 0 : tree captures[7] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _q22, _p1, _q61, _q62 };
17769 : 0 : if (VECTOR_TYPE_P (type)
17770 : 0 : && (TREE_CODE_CLASS (BIT_AND_EXPR) != tcc_comparison
17771 : : || types_match (type, TREE_TYPE (captures[2]))
17772 : : || expand_vec_cond_expr_p (type, TREE_TYPE (captures[1]))
17773 : : || (optimize_vectors_before_lowering_p ()
17774 : : && !expand_vec_cond_expr_p (TREE_TYPE (captures[2]), TREE_TYPE (captures[1]))))
17775 : : )
17776 : : {
17777 : 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1736;
17778 : 0 : {
17779 : 0 : tree res_op0;
17780 : 0 : res_op0 = captures[1];
17781 : 0 : tree res_op1;
17782 : 0 : {
17783 : 0 : tree _o1[2], _r1;
17784 : 0 : _o1[0] = captures[2];
17785 : 0 : _o1[1] = captures[5];
17786 : 0 : _r1 = fold_build2_loc (loc, BIT_AND_EXPR, TREE_TYPE (_o1[0]), _o1[0], _o1[1]);
17787 : 0 : if (EXPR_P (_r1))
17788 : 0 : goto next_after_fail1736;
17789 : 0 : res_op1 = _r1;
17790 : : }
17791 : 0 : tree res_op2;
17792 : 0 : {
17793 : 0 : tree _o1[2], _r1;
17794 : 0 : _o1[0] = captures[3];
17795 : 0 : _o1[1] = captures[6];
17796 : 0 : _r1 = fold_build2_loc (loc, BIT_AND_EXPR, TREE_TYPE (_o1[0]), _o1[0], _o1[1]);
17797 : 0 : if (EXPR_P (_r1))
17798 : 0 : goto next_after_fail1736;
17799 : 0 : res_op2 = _r1;
17800 : : }
17801 : 0 : tree _r;
17802 : 0 : _r = fold_build3_loc (loc, VEC_COND_EXPR, type, res_op0, res_op1, res_op2);
17803 : 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 887, __FILE__, __LINE__, true);
17804 : 0 : return _r;
17805 : : }
17806 : 0 : next_after_fail1736:;
17807 : : }
17808 : : }
17809 : : }
17810 : : break;
17811 : : }
17812 : 65 : default:;
17813 : : }
17814 : 65 : {
17815 : 65 : tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _q22, _p1 };
17816 : 65 : if (VECTOR_TYPE_P (type)
17817 : 65 : && (TREE_CODE_CLASS (BIT_AND_EXPR) != tcc_comparison
17818 : : || types_match (type, TREE_TYPE (captures[2]))
17819 : : || expand_vec_cond_expr_p (type, TREE_TYPE (captures[1]))
17820 : : || (optimize_vectors_before_lowering_p ()
17821 : : && !expand_vec_cond_expr_p (TREE_TYPE (captures[2]), TREE_TYPE (captures[1]))))
17822 : : )
17823 : : {
17824 : 65 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1737;
17825 : 65 : {
17826 : 65 : if (! tree_invariant_p (captures[4])) goto next_after_fail1737;
17827 : 14 : tree res_op0;
17828 : 14 : res_op0 = captures[1];
17829 : 14 : tree res_op1;
17830 : 14 : {
17831 : 14 : tree _o1[2], _r1;
17832 : 14 : _o1[0] = captures[2];
17833 : 14 : _o1[1] = unshare_expr (captures[4]);
17834 : 14 : _r1 = fold_build2_loc (loc, BIT_AND_EXPR, TREE_TYPE (_o1[0]), _o1[0], _o1[1]);
17835 : 14 : if (EXPR_P (_r1))
17836 : 0 : goto next_after_fail1737;
17837 : 14 : res_op1 = _r1;
17838 : : }
17839 : 14 : tree res_op2;
17840 : 14 : {
17841 : 14 : tree _o1[2], _r1;
17842 : 14 : _o1[0] = captures[3];
17843 : 14 : _o1[1] = captures[4];
17844 : 14 : _r1 = fold_build2_loc (loc, BIT_AND_EXPR, TREE_TYPE (_o1[0]), _o1[0], _o1[1]);
17845 : 14 : if (EXPR_P (_r1))
17846 : 0 : goto next_after_fail1737;
17847 : 14 : res_op2 = _r1;
17848 : : }
17849 : 14 : tree _r;
17850 : 14 : _r = fold_build3_loc (loc, VEC_COND_EXPR, type, res_op0, res_op1, res_op2);
17851 : 14 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 888, __FILE__, __LINE__, true);
17852 : 14 : return _r;
17853 : : }
17854 : 51 : next_after_fail1737:;
17855 : : }
17856 : : }
17857 : 51 : break;
17858 : : }
17859 : 130659 : case CALL_EXPR:
17860 : 130659 : switch (get_call_combined_fn (_p0))
17861 : : {
17862 : 0 : case CFN_BUILT_IN_BSWAP128:
17863 : 0 : if (call_expr_nargs (_p0) == 1)
17864 : : {
17865 : 0 : tree _q20 = CALL_EXPR_ARG (_p0, 0);
17866 : 0 : switch (TREE_CODE (_p1))
17867 : : {
17868 : 0 : case INTEGER_CST:
17869 : 0 : {
17870 : 0 : {
17871 : 0 : tree captures[3] ATTRIBUTE_UNUSED = { _p0, _q20, _p1 };
17872 : 0 : tree res = generic_simplify_425 (loc, type, _p0, _p1, captures, CFN_BUILT_IN_BSWAP128);
17873 : 0 : if (res) return res;
17874 : : }
17875 : 0 : break;
17876 : : }
17877 : : default:;
17878 : : }
17879 : : }
17880 : : break;
17881 : 0 : case CFN_BUILT_IN_BSWAP16:
17882 : 0 : if (call_expr_nargs (_p0) == 1)
17883 : : {
17884 : 0 : tree _q20 = CALL_EXPR_ARG (_p0, 0);
17885 : 0 : switch (TREE_CODE (_p1))
17886 : : {
17887 : 0 : case INTEGER_CST:
17888 : 0 : {
17889 : 0 : {
17890 : 0 : tree captures[3] ATTRIBUTE_UNUSED = { _p0, _q20, _p1 };
17891 : 0 : tree res = generic_simplify_425 (loc, type, _p0, _p1, captures, CFN_BUILT_IN_BSWAP16);
17892 : 0 : if (res) return res;
17893 : : }
17894 : 0 : break;
17895 : : }
17896 : : default:;
17897 : : }
17898 : : }
17899 : : break;
17900 : 10 : case CFN_BUILT_IN_BSWAP32:
17901 : 10 : if (call_expr_nargs (_p0) == 1)
17902 : : {
17903 : 10 : tree _q20 = CALL_EXPR_ARG (_p0, 0);
17904 : 10 : switch (TREE_CODE (_p1))
17905 : : {
17906 : 9 : case INTEGER_CST:
17907 : 9 : {
17908 : 9 : {
17909 : 9 : tree captures[3] ATTRIBUTE_UNUSED = { _p0, _q20, _p1 };
17910 : 9 : tree res = generic_simplify_425 (loc, type, _p0, _p1, captures, CFN_BUILT_IN_BSWAP32);
17911 : 9 : if (res) return res;
17912 : : }
17913 : 1 : break;
17914 : : }
17915 : : default:;
17916 : : }
17917 : : }
17918 : : break;
17919 : 8 : case CFN_BUILT_IN_BSWAP64:
17920 : 8 : if (call_expr_nargs (_p0) == 1)
17921 : : {
17922 : 8 : tree _q20 = CALL_EXPR_ARG (_p0, 0);
17923 : 8 : switch (TREE_CODE (_p1))
17924 : : {
17925 : 7 : case INTEGER_CST:
17926 : 7 : {
17927 : 7 : {
17928 : 7 : tree captures[3] ATTRIBUTE_UNUSED = { _p0, _q20, _p1 };
17929 : 7 : tree res = generic_simplify_425 (loc, type, _p0, _p1, captures, CFN_BUILT_IN_BSWAP64);
17930 : 7 : if (res) return res;
17931 : : }
17932 : 1 : break;
17933 : : }
17934 : : default:;
17935 : : }
17936 : : }
17937 : : break;
17938 : : default:;
17939 : : }
17940 : : break;
17941 : 5714631 : default:;
17942 : : }
17943 : 5714631 : switch (TREE_CODE (_p1))
17944 : : {
17945 : 48 : case VEC_COND_EXPR:
17946 : 48 : {
17947 : 48 : tree _q30 = TREE_OPERAND (_p1, 0);
17948 : 48 : tree _q31 = TREE_OPERAND (_p1, 1);
17949 : 48 : tree _q32 = TREE_OPERAND (_p1, 2);
17950 : 48 : {
17951 : 48 : tree captures[5] ATTRIBUTE_UNUSED = { _p0, _p1, _q30, _q31, _q32 };
17952 : 48 : if (VECTOR_TYPE_P (type)
17953 : 48 : && (TREE_CODE_CLASS (BIT_AND_EXPR) != tcc_comparison
17954 : : || types_match (type, TREE_TYPE (captures[3]))
17955 : : || expand_vec_cond_expr_p (type, TREE_TYPE (captures[2]))
17956 : : || (optimize_vectors_before_lowering_p ()
17957 : : && !expand_vec_cond_expr_p (TREE_TYPE (captures[3]), TREE_TYPE (captures[2]))))
17958 : : )
17959 : : {
17960 : 48 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1738;
17961 : 48 : {
17962 : 48 : if (! tree_invariant_p (captures[0])) goto next_after_fail1738;
17963 : 0 : tree res_op0;
17964 : 0 : res_op0 = captures[2];
17965 : 0 : tree res_op1;
17966 : 0 : {
17967 : 0 : tree _o1[2], _r1;
17968 : 0 : _o1[0] = unshare_expr (captures[0]);
17969 : 0 : _o1[1] = captures[3];
17970 : 0 : _r1 = fold_build2_loc (loc, BIT_AND_EXPR, TREE_TYPE (_o1[0]), _o1[0], _o1[1]);
17971 : 0 : if (EXPR_P (_r1))
17972 : 0 : goto next_after_fail1738;
17973 : 0 : res_op1 = _r1;
17974 : : }
17975 : 0 : tree res_op2;
17976 : 0 : {
17977 : 0 : tree _o1[2], _r1;
17978 : 0 : _o1[0] = captures[0];
17979 : 0 : _o1[1] = captures[4];
17980 : 0 : _r1 = fold_build2_loc (loc, BIT_AND_EXPR, TREE_TYPE (_o1[0]), _o1[0], _o1[1]);
17981 : 0 : if (EXPR_P (_r1))
17982 : 0 : goto next_after_fail1738;
17983 : 0 : res_op2 = _r1;
17984 : : }
17985 : 0 : tree _r;
17986 : 0 : _r = fold_build3_loc (loc, VEC_COND_EXPR, type, res_op0, res_op1, res_op2);
17987 : 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 889, __FILE__, __LINE__, true);
17988 : 0 : return _r;
17989 : : }
17990 : 48 : next_after_fail1738:;
17991 : : }
17992 : : }
17993 : 48 : break;
17994 : : }
17995 : 5714631 : default:;
17996 : : }
17997 : 5714631 : switch (TREE_CODE (_p0))
17998 : : {
17999 : 0 : case ORDERED_EXPR:
18000 : 0 : {
18001 : 0 : tree _q20 = TREE_OPERAND (_p0, 0);
18002 : 0 : tree _q21 = TREE_OPERAND (_p0, 1);
18003 : 0 : switch (TREE_CODE (_p1))
18004 : : {
18005 : 0 : case NE_EXPR:
18006 : 0 : {
18007 : 0 : tree _q50 = TREE_OPERAND (_p1, 0);
18008 : 0 : tree _q51 = TREE_OPERAND (_p1, 1);
18009 : 0 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
18010 : : {
18011 : 0 : if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
18012 : : {
18013 : 0 : {
18014 : 0 : tree captures[2] ATTRIBUTE_UNUSED = { _q20, _q21 };
18015 : 0 : tree res = generic_simplify_443 (loc, type, _p0, _p1, captures);
18016 : 0 : if (res) return res;
18017 : : }
18018 : : }
18019 : : }
18020 : : break;
18021 : : }
18022 : 0 : default:;
18023 : : }
18024 : 0 : if ((_q21 == _q20 && ! TREE_SIDE_EFFECTS (_q21)) || (operand_equal_p (_q21, _q20, 0) && types_match (_q21, _q20)))
18025 : : {
18026 : 0 : switch (TREE_CODE (_p1))
18027 : : {
18028 : 0 : case ORDERED_EXPR:
18029 : 0 : {
18030 : 0 : tree _q50 = TREE_OPERAND (_p1, 0);
18031 : 0 : tree _q51 = TREE_OPERAND (_p1, 1);
18032 : 0 : if ((_q51 == _q50 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q50, 0) && types_match (_q51, _q50)))
18033 : : {
18034 : 0 : {
18035 : 0 : tree captures[2] ATTRIBUTE_UNUSED = { _q20, _q50 };
18036 : 0 : if (types_match (captures[0], captures[1])
18037 : : )
18038 : : {
18039 : 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1739;
18040 : 0 : {
18041 : 0 : tree res_op0;
18042 : 0 : res_op0 = captures[0];
18043 : 0 : tree res_op1;
18044 : 0 : res_op1 = captures[1];
18045 : 0 : tree _r;
18046 : 0 : _r = fold_build2_loc (loc, ORDERED_EXPR, type, res_op0, res_op1);
18047 : 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 1009, __FILE__, __LINE__, true);
18048 : 0 : return _r;
18049 : : }
18050 : 0 : next_after_fail1739:;
18051 : : }
18052 : : }
18053 : : }
18054 : 0 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
18055 : : {
18056 : 0 : {
18057 : 0 : tree captures[3] ATTRIBUTE_UNUSED = { _q20, _p1, _q51 };
18058 : 0 : tree res = generic_simplify_444 (loc, type, _p0, _p1, captures);
18059 : 0 : if (res) return res;
18060 : : }
18061 : : }
18062 : 0 : if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
18063 : : {
18064 : 0 : {
18065 : 0 : tree captures[3] ATTRIBUTE_UNUSED = { _q20, _p1, _q50 };
18066 : 0 : tree res = generic_simplify_444 (loc, type, _p0, _p1, captures);
18067 : 0 : if (res) return res;
18068 : : }
18069 : : }
18070 : : break;
18071 : : }
18072 : : default:;
18073 : : }
18074 : : }
18075 : 0 : switch (TREE_CODE (_p1))
18076 : : {
18077 : 0 : case ORDERED_EXPR:
18078 : 0 : {
18079 : 0 : tree _q50 = TREE_OPERAND (_p1, 0);
18080 : 0 : tree _q51 = TREE_OPERAND (_p1, 1);
18081 : 0 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
18082 : : {
18083 : 0 : if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
18084 : : {
18085 : 0 : {
18086 : 0 : tree captures[3] ATTRIBUTE_UNUSED = { _q20, _p0, _q21 };
18087 : 0 : tree res = generic_simplify_445 (loc, type, _p0, _p1, captures);
18088 : 0 : if (res) return res;
18089 : : }
18090 : : }
18091 : : }
18092 : 0 : if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
18093 : : {
18094 : 0 : if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
18095 : : {
18096 : 0 : {
18097 : 0 : tree captures[3] ATTRIBUTE_UNUSED = { _q21, _p0, _q20 };
18098 : 0 : tree res = generic_simplify_445 (loc, type, _p0, _p1, captures);
18099 : 0 : if (res) return res;
18100 : : }
18101 : : }
18102 : : }
18103 : : break;
18104 : : }
18105 : : default:;
18106 : : }
18107 : : break;
18108 : : }
18109 : 127 : case NE_EXPR:
18110 : 127 : {
18111 : 127 : tree _q20 = TREE_OPERAND (_p0, 0);
18112 : 127 : tree _q21 = TREE_OPERAND (_p0, 1);
18113 : 127 : switch (TREE_CODE (_p1))
18114 : : {
18115 : 0 : case ORDERED_EXPR:
18116 : 0 : {
18117 : 0 : tree _q50 = TREE_OPERAND (_p1, 0);
18118 : 0 : tree _q51 = TREE_OPERAND (_p1, 1);
18119 : 0 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
18120 : : {
18121 : 0 : if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
18122 : : {
18123 : 0 : {
18124 : 0 : tree captures[2] ATTRIBUTE_UNUSED = { _q20, _q21 };
18125 : 0 : tree res = generic_simplify_443 (loc, type, _p0, _p1, captures);
18126 : 0 : if (res) return res;
18127 : : }
18128 : : }
18129 : : }
18130 : : break;
18131 : : }
18132 : : default:;
18133 : : }
18134 : : break;
18135 : : }
18136 : 431502 : case MINUS_EXPR:
18137 : 431502 : {
18138 : 431502 : tree _q20 = TREE_OPERAND (_p0, 0);
18139 : 431502 : tree _q21 = TREE_OPERAND (_p0, 1);
18140 : 431502 : switch (TREE_CODE (_q20))
18141 : : {
18142 : 370843 : CASE_CONVERT:
18143 : 370843 : {
18144 : 370843 : tree _q30 = TREE_OPERAND (_q20, 0);
18145 : 370843 : switch (TREE_CODE (_q21))
18146 : : {
18147 : 366561 : CASE_CONVERT:
18148 : 366561 : {
18149 : 366561 : tree _q50 = TREE_OPERAND (_q21, 0);
18150 : 366561 : switch (TREE_CODE (_p1))
18151 : : {
18152 : 366537 : case INTEGER_CST:
18153 : 366537 : {
18154 : 366537 : {
18155 : 366537 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q30, _q21, _q50, _p1 };
18156 : 366537 : tree res = generic_simplify_446 (loc, type, _p0, _p1, captures, MINUS_EXPR);
18157 : 366537 : if (res) return res;
18158 : : }
18159 : 366527 : break;
18160 : : }
18161 : : default:;
18162 : : }
18163 : : break;
18164 : : }
18165 : : default:;
18166 : : }
18167 : : break;
18168 : : }
18169 : : default:;
18170 : : }
18171 : : break;
18172 : : }
18173 : 161487 : case PLUS_EXPR:
18174 : 161487 : {
18175 : 161487 : tree _q20 = TREE_OPERAND (_p0, 0);
18176 : 161487 : tree _q21 = TREE_OPERAND (_p0, 1);
18177 : 161487 : switch (TREE_CODE (_q20))
18178 : : {
18179 : 45114 : CASE_CONVERT:
18180 : 45114 : {
18181 : 45114 : tree _q30 = TREE_OPERAND (_q20, 0);
18182 : 45114 : switch (TREE_CODE (_q21))
18183 : : {
18184 : 117 : CASE_CONVERT:
18185 : 117 : {
18186 : 117 : tree _q50 = TREE_OPERAND (_q21, 0);
18187 : 117 : switch (TREE_CODE (_p1))
18188 : : {
18189 : 60 : case INTEGER_CST:
18190 : 60 : {
18191 : 60 : {
18192 : 60 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q30, _q21, _q50, _p1 };
18193 : 60 : tree res = generic_simplify_446 (loc, type, _p0, _p1, captures, PLUS_EXPR);
18194 : 60 : if (res) return res;
18195 : : }
18196 : 45 : break;
18197 : : }
18198 : : default:;
18199 : : }
18200 : : break;
18201 : : }
18202 : : default:;
18203 : : }
18204 : : break;
18205 : : }
18206 : : default:;
18207 : : }
18208 : : break;
18209 : : }
18210 : 53 : case LT_EXPR:
18211 : 53 : {
18212 : 53 : tree _q20 = TREE_OPERAND (_p0, 0);
18213 : 53 : tree _q21 = TREE_OPERAND (_p0, 1);
18214 : 53 : switch (TREE_CODE (_p1))
18215 : : {
18216 : 8 : case LT_EXPR:
18217 : 8 : {
18218 : 8 : tree _q50 = TREE_OPERAND (_p1, 0);
18219 : 8 : tree _q51 = TREE_OPERAND (_p1, 1);
18220 : 8 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
18221 : : {
18222 : 0 : {
18223 : 0 : tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q51 };
18224 : 0 : tree res = generic_simplify_148 (loc, type, _p0, _p1, captures, BIT_AND_EXPR, LT_EXPR, MIN_EXPR);
18225 : 0 : if (res) return res;
18226 : : }
18227 : : }
18228 : 8 : if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
18229 : : {
18230 : 0 : {
18231 : 0 : tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q50 };
18232 : 0 : tree res = generic_simplify_148 (loc, type, _p0, _p1, captures, BIT_AND_EXPR, GT_EXPR, MAX_EXPR);
18233 : 0 : if (res) return res;
18234 : : }
18235 : : }
18236 : : break;
18237 : : }
18238 : 1 : case GT_EXPR:
18239 : 1 : {
18240 : 1 : tree _q50 = TREE_OPERAND (_p1, 0);
18241 : 1 : tree _q51 = TREE_OPERAND (_p1, 1);
18242 : 1 : if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
18243 : : {
18244 : 0 : {
18245 : 0 : tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q50 };
18246 : 0 : tree res = generic_simplify_148 (loc, type, _p0, _p1, captures, BIT_AND_EXPR, LT_EXPR, MIN_EXPR);
18247 : 0 : if (res) return res;
18248 : : }
18249 : : }
18250 : 1 : if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
18251 : : {
18252 : 0 : {
18253 : 0 : tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q51 };
18254 : 0 : tree res = generic_simplify_148 (loc, type, _p0, _p1, captures, BIT_AND_EXPR, GT_EXPR, MAX_EXPR);
18255 : 0 : if (res) return res;
18256 : : }
18257 : : }
18258 : : break;
18259 : : }
18260 : : default:;
18261 : : }
18262 : : break;
18263 : : }
18264 : 31 : case LE_EXPR:
18265 : 31 : {
18266 : 31 : tree _q20 = TREE_OPERAND (_p0, 0);
18267 : 31 : tree _q21 = TREE_OPERAND (_p0, 1);
18268 : 31 : switch (TREE_CODE (_p1))
18269 : : {
18270 : 4 : case LE_EXPR:
18271 : 4 : {
18272 : 4 : tree _q50 = TREE_OPERAND (_p1, 0);
18273 : 4 : tree _q51 = TREE_OPERAND (_p1, 1);
18274 : 4 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
18275 : : {
18276 : 0 : {
18277 : 0 : tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q51 };
18278 : 0 : tree res = generic_simplify_148 (loc, type, _p0, _p1, captures, BIT_AND_EXPR, LE_EXPR, MIN_EXPR);
18279 : 0 : if (res) return res;
18280 : : }
18281 : : }
18282 : 4 : if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
18283 : : {
18284 : 4 : {
18285 : 4 : tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q50 };
18286 : 4 : tree res = generic_simplify_148 (loc, type, _p0, _p1, captures, BIT_AND_EXPR, GE_EXPR, MAX_EXPR);
18287 : 4 : if (res) return res;
18288 : : }
18289 : : }
18290 : : break;
18291 : : }
18292 : 0 : case GE_EXPR:
18293 : 0 : {
18294 : 0 : tree _q50 = TREE_OPERAND (_p1, 0);
18295 : 0 : tree _q51 = TREE_OPERAND (_p1, 1);
18296 : 0 : if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
18297 : : {
18298 : 0 : {
18299 : 0 : tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q50 };
18300 : 0 : tree res = generic_simplify_148 (loc, type, _p0, _p1, captures, BIT_AND_EXPR, LE_EXPR, MIN_EXPR);
18301 : 0 : if (res) return res;
18302 : : }
18303 : : }
18304 : 0 : if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
18305 : : {
18306 : 0 : {
18307 : 0 : tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q51 };
18308 : 0 : tree res = generic_simplify_148 (loc, type, _p0, _p1, captures, BIT_AND_EXPR, GE_EXPR, MAX_EXPR);
18309 : 0 : if (res) return res;
18310 : : }
18311 : : }
18312 : : break;
18313 : : }
18314 : : default:;
18315 : : }
18316 : : break;
18317 : : }
18318 : 323 : case GT_EXPR:
18319 : 323 : {
18320 : 323 : tree _q20 = TREE_OPERAND (_p0, 0);
18321 : 323 : tree _q21 = TREE_OPERAND (_p0, 1);
18322 : 323 : switch (TREE_CODE (_p1))
18323 : : {
18324 : 81 : case GT_EXPR:
18325 : 81 : {
18326 : 81 : tree _q50 = TREE_OPERAND (_p1, 0);
18327 : 81 : tree _q51 = TREE_OPERAND (_p1, 1);
18328 : 81 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
18329 : : {
18330 : 0 : {
18331 : 0 : tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q51 };
18332 : 0 : tree res = generic_simplify_148 (loc, type, _p0, _p1, captures, BIT_AND_EXPR, GT_EXPR, MAX_EXPR);
18333 : 0 : if (res) return res;
18334 : : }
18335 : : }
18336 : 81 : if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
18337 : : {
18338 : 31 : {
18339 : 31 : tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q50 };
18340 : 31 : tree res = generic_simplify_148 (loc, type, _p0, _p1, captures, BIT_AND_EXPR, LT_EXPR, MIN_EXPR);
18341 : 31 : if (res) return res;
18342 : : }
18343 : : }
18344 : : break;
18345 : : }
18346 : 67 : case LT_EXPR:
18347 : 67 : {
18348 : 67 : tree _q50 = TREE_OPERAND (_p1, 0);
18349 : 67 : tree _q51 = TREE_OPERAND (_p1, 1);
18350 : 67 : if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
18351 : : {
18352 : 0 : {
18353 : 0 : tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q50 };
18354 : 0 : tree res = generic_simplify_148 (loc, type, _p0, _p1, captures, BIT_AND_EXPR, GT_EXPR, MAX_EXPR);
18355 : 0 : if (res) return res;
18356 : : }
18357 : : }
18358 : 67 : if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
18359 : : {
18360 : 0 : {
18361 : 0 : tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q51 };
18362 : 0 : tree res = generic_simplify_148 (loc, type, _p0, _p1, captures, BIT_AND_EXPR, LT_EXPR, MIN_EXPR);
18363 : 0 : if (res) return res;
18364 : : }
18365 : : }
18366 : : break;
18367 : : }
18368 : : default:;
18369 : : }
18370 : : break;
18371 : : }
18372 : 53 : case GE_EXPR:
18373 : 53 : {
18374 : 53 : tree _q20 = TREE_OPERAND (_p0, 0);
18375 : 53 : tree _q21 = TREE_OPERAND (_p0, 1);
18376 : 53 : switch (TREE_CODE (_p1))
18377 : : {
18378 : 11 : case GE_EXPR:
18379 : 11 : {
18380 : 11 : tree _q50 = TREE_OPERAND (_p1, 0);
18381 : 11 : tree _q51 = TREE_OPERAND (_p1, 1);
18382 : 11 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
18383 : : {
18384 : 7 : {
18385 : 7 : tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q51 };
18386 : 7 : tree res = generic_simplify_148 (loc, type, _p0, _p1, captures, BIT_AND_EXPR, GE_EXPR, MAX_EXPR);
18387 : 7 : if (res) return res;
18388 : : }
18389 : : }
18390 : 11 : if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
18391 : : {
18392 : 0 : {
18393 : 0 : tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q50 };
18394 : 0 : tree res = generic_simplify_148 (loc, type, _p0, _p1, captures, BIT_AND_EXPR, LE_EXPR, MIN_EXPR);
18395 : 0 : if (res) return res;
18396 : : }
18397 : : }
18398 : : break;
18399 : : }
18400 : 8 : case LE_EXPR:
18401 : 8 : {
18402 : 8 : tree _q50 = TREE_OPERAND (_p1, 0);
18403 : 8 : tree _q51 = TREE_OPERAND (_p1, 1);
18404 : 8 : if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
18405 : : {
18406 : 0 : {
18407 : 0 : tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q50 };
18408 : 0 : tree res = generic_simplify_148 (loc, type, _p0, _p1, captures, BIT_AND_EXPR, GE_EXPR, MAX_EXPR);
18409 : 0 : if (res) return res;
18410 : : }
18411 : : }
18412 : 8 : if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
18413 : : {
18414 : 0 : {
18415 : 0 : tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q51 };
18416 : 0 : tree res = generic_simplify_148 (loc, type, _p0, _p1, captures, BIT_AND_EXPR, LE_EXPR, MIN_EXPR);
18417 : 0 : if (res) return res;
18418 : : }
18419 : : }
18420 : : break;
18421 : : }
18422 : : default:;
18423 : : }
18424 : : break;
18425 : : }
18426 : 45407 : case NEGATE_EXPR:
18427 : 45407 : {
18428 : 45407 : tree _q20 = TREE_OPERAND (_p0, 0);
18429 : 45407 : if (integer_onep (_p1))
18430 : : {
18431 : 1700 : {
18432 : 1700 : tree captures[2] ATTRIBUTE_UNUSED = { _q20, _p1 };
18433 : 1700 : if (!TYPE_OVERFLOW_SANITIZED (type)
18434 : : )
18435 : : {
18436 : 1687 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1740;
18437 : 1687 : {
18438 : 1687 : tree res_op0;
18439 : 1687 : res_op0 = captures[0];
18440 : 1687 : tree res_op1;
18441 : 1687 : res_op1 = captures[1];
18442 : 1687 : tree _r;
18443 : 1687 : _r = fold_build2_loc (loc, BIT_AND_EXPR, type, res_op0, res_op1);
18444 : 1687 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 1010, __FILE__, __LINE__, true);
18445 : 1687 : return _r;
18446 : : }
18447 : 0 : next_after_fail1740:;
18448 : : }
18449 : : }
18450 : : }
18451 : : break;
18452 : : }
18453 : 1 : case VEC_PERM_EXPR:
18454 : 1 : {
18455 : 1 : tree _q20 = TREE_OPERAND (_p0, 0);
18456 : 1 : tree _q21 = TREE_OPERAND (_p0, 1);
18457 : 1 : tree _q22 = TREE_OPERAND (_p0, 2);
18458 : 1 : if ((_q21 == _q20 && ! TREE_SIDE_EFFECTS (_q21)) || (operand_equal_p (_q21, _q20, 0) && types_match (_q21, _q20)))
18459 : : {
18460 : 0 : switch (TREE_CODE (_p1))
18461 : : {
18462 : 0 : case VEC_PERM_EXPR:
18463 : 0 : {
18464 : 0 : tree _q60 = TREE_OPERAND (_p1, 0);
18465 : 0 : tree _q61 = TREE_OPERAND (_p1, 1);
18466 : 0 : tree _q62 = TREE_OPERAND (_p1, 2);
18467 : 0 : if ((_q61 == _q60 && ! TREE_SIDE_EFFECTS (_q61)) || (operand_equal_p (_q61, _q60, 0) && types_match (_q61, _q60)))
18468 : : {
18469 : 0 : if ((_q62 == _q22 && ! TREE_SIDE_EFFECTS (_q62)) || (operand_equal_p (_q62, _q22, 0) && types_match (_q62, _q22)))
18470 : : {
18471 : 0 : {
18472 : 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q20, _q22, _q60 };
18473 : 0 : if (VECTOR_INTEGER_TYPE_P (type)
18474 : : )
18475 : : {
18476 : 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1741;
18477 : 0 : {
18478 : 0 : tree res_op0;
18479 : 0 : {
18480 : 0 : tree _o1[2], _r1;
18481 : 0 : _o1[0] = captures[0];
18482 : 0 : _o1[1] = captures[2];
18483 : 0 : _r1 = fold_build2_loc (loc, BIT_AND_EXPR, TREE_TYPE (_o1[0]), _o1[0], _o1[1]);
18484 : 0 : captures[3] = _r1;
18485 : : }
18486 : 0 : res_op0 = unshare_expr (captures[3]);
18487 : 0 : tree res_op1;
18488 : 0 : res_op1 = captures[3];
18489 : 0 : tree res_op2;
18490 : 0 : res_op2 = captures[1];
18491 : 0 : tree _r;
18492 : 0 : _r = fold_build3_loc (loc, VEC_PERM_EXPR, type, res_op0, res_op1, res_op2);
18493 : 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 890, __FILE__, __LINE__, true);
18494 : 0 : return _r;
18495 : : }
18496 : 0 : next_after_fail1741:;
18497 : : }
18498 : : }
18499 : : }
18500 : : }
18501 : : break;
18502 : : }
18503 : : default:;
18504 : : }
18505 : : }
18506 : : break;
18507 : : }
18508 : 130645 : case CALL_EXPR:
18509 : 130645 : switch (get_call_combined_fn (_p0))
18510 : : {
18511 : 1 : case CFN_BUILT_IN_POPCOUNT:
18512 : 1 : if (call_expr_nargs (_p0) == 1)
18513 : : {
18514 : 1 : tree _q20 = CALL_EXPR_ARG (_p0, 0);
18515 : 1 : if (integer_onep (_p1))
18516 : : {
18517 : 1 : {
18518 : 1 : tree captures[1] ATTRIBUTE_UNUSED = { _q20 };
18519 : 1 : tree res = generic_simplify_447 (loc, type, _p0, _p1, captures, CFN_BUILT_IN_POPCOUNT, CFN_BUILT_IN_PARITY);
18520 : 1 : if (res) return res;
18521 : : }
18522 : : }
18523 : : }
18524 : : break;
18525 : 1 : case CFN_BUILT_IN_POPCOUNTLL:
18526 : 1 : if (call_expr_nargs (_p0) == 1)
18527 : : {
18528 : 1 : tree _q20 = CALL_EXPR_ARG (_p0, 0);
18529 : 1 : if (integer_onep (_p1))
18530 : : {
18531 : 1 : {
18532 : 1 : tree captures[1] ATTRIBUTE_UNUSED = { _q20 };
18533 : 1 : tree res = generic_simplify_447 (loc, type, _p0, _p1, captures, CFN_BUILT_IN_POPCOUNTLL, CFN_BUILT_IN_PARITYLL);
18534 : 1 : if (res) return res;
18535 : : }
18536 : : }
18537 : : }
18538 : : break;
18539 : 0 : case CFN_POPCOUNT:
18540 : 0 : if (call_expr_nargs (_p0) == 1)
18541 : : {
18542 : 0 : tree _q20 = CALL_EXPR_ARG (_p0, 0);
18543 : 0 : if (integer_onep (_p1))
18544 : : {
18545 : 0 : {
18546 : 0 : tree captures[1] ATTRIBUTE_UNUSED = { _q20 };
18547 : 0 : tree res = generic_simplify_447 (loc, type, _p0, _p1, captures, CFN_POPCOUNT, CFN_PARITY);
18548 : 0 : if (res) return res;
18549 : : }
18550 : : }
18551 : : }
18552 : : break;
18553 : 0 : case CFN_BUILT_IN_POPCOUNTIMAX:
18554 : 0 : if (call_expr_nargs (_p0) == 1)
18555 : : {
18556 : 0 : tree _q20 = CALL_EXPR_ARG (_p0, 0);
18557 : 0 : if (integer_onep (_p1))
18558 : : {
18559 : 0 : {
18560 : 0 : tree captures[1] ATTRIBUTE_UNUSED = { _q20 };
18561 : 0 : tree res = generic_simplify_447 (loc, type, _p0, _p1, captures, CFN_BUILT_IN_POPCOUNTIMAX, CFN_BUILT_IN_PARITYIMAX);
18562 : 0 : if (res) return res;
18563 : : }
18564 : : }
18565 : : }
18566 : : break;
18567 : 1 : case CFN_BUILT_IN_POPCOUNTL:
18568 : 1 : if (call_expr_nargs (_p0) == 1)
18569 : : {
18570 : 1 : tree _q20 = CALL_EXPR_ARG (_p0, 0);
18571 : 1 : if (integer_onep (_p1))
18572 : : {
18573 : 1 : {
18574 : 1 : tree captures[1] ATTRIBUTE_UNUSED = { _q20 };
18575 : 1 : tree res = generic_simplify_447 (loc, type, _p0, _p1, captures, CFN_BUILT_IN_POPCOUNTL, CFN_BUILT_IN_PARITYL);
18576 : 1 : if (res) return res;
18577 : : }
18578 : : }
18579 : : }
18580 : : break;
18581 : : default:;
18582 : : }
18583 : : break;
18584 : : default:;
18585 : : }
18586 : : return NULL_TREE;
18587 : : }
18588 : : #pragma GCC diagnostic pop
|