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 106748362 : tree_bit_xor_cst (tree t, tree *res_ops)
11 : {
12 106748362 : const tree type = TREE_TYPE (t);
13 106748362 : const bool debug_dump = dump_file && (dump_flags & TDF_FOLDING);
14 106748362 : if (TREE_SIDE_EFFECTS (t)) return false;
15 106748362 : switch (TREE_CODE (t))
16 : {
17 94528 : case BIT_XOR_EXPR:
18 94528 : {
19 94528 : tree _p0 = TREE_OPERAND (t, 0);
20 94528 : tree _p1 = TREE_OPERAND (t, 1);
21 94528 : if (uniform_integer_cst_p (_p1))
22 : {
23 1601 : {
24 1601 : tree captures[2] ATTRIBUTE_UNUSED = { _p0, _p1 };
25 1601 : {
26 1601 : res_ops[0] = captures[0];
27 1601 : res_ops[1] = captures[1];
28 1601 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 4, __FILE__, __LINE__, false);
29 1601 : return true;
30 : }
31 : }
32 : }
33 : break;
34 : }
35 : default:;
36 : }
37 : return false;
38 : }
39 :
40 : bool
41 76415056 : tree_with_possible_nonzero_bits_1 (tree t)
42 : {
43 76415056 : const tree type = TREE_TYPE (t);
44 76415056 : const bool debug_dump = dump_file && (dump_flags & TDF_FOLDING);
45 76415056 : if (TREE_SIDE_EFFECTS (t)) return false;
46 76415056 : switch (TREE_CODE (t))
47 : {
48 16633238 : case INTEGER_CST:
49 16633238 : {
50 16633238 : {
51 16633238 : tree captures[1] ATTRIBUTE_UNUSED = { t };
52 16633238 : {
53 16633238 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 32, __FILE__, __LINE__, false);
54 16633238 : return true;
55 : }
56 : }
57 0 : break;
58 : }
59 0 : case POLY_INT_CST:
60 0 : {
61 0 : {
62 0 : tree captures[1] ATTRIBUTE_UNUSED = { t };
63 0 : {
64 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 33, __FILE__, __LINE__, false);
65 0 : return true;
66 : }
67 : }
68 26371191 : break;
69 : }
70 26371191 : case SSA_NAME:
71 26371191 : {
72 26371191 : {
73 26371191 : tree captures[1] ATTRIBUTE_UNUSED = { t };
74 26371191 : if (INTEGRAL_TYPE_P (TREE_TYPE (captures[0])) || POINTER_TYPE_P (TREE_TYPE (captures[0]))
75 : )
76 : {
77 25856204 : {
78 25856204 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 34, __FILE__, __LINE__, false);
79 25856204 : return true;
80 : }
81 : }
82 : }
83 : break;
84 : }
85 : default:;
86 : }
87 : return false;
88 : }
89 :
90 : bool
91 2403 : tree_max_value (tree t)
92 : {
93 2403 : const tree type = TREE_TYPE (t);
94 2403 : const bool debug_dump = dump_file && (dump_flags & TDF_FOLDING);
95 2403 : if (TREE_SIDE_EFFECTS (t)) return false;
96 2395 : if (uniform_integer_cst_p (t))
97 : {
98 2130 : {
99 2130 : {
100 2130 : tree int_cst = uniform_integer_cst_p (t);
101 2130 : tree itype = TREE_TYPE (int_cst);
102 4260 : if ((INTEGRAL_TYPE_P (itype)
103 17 : || POINTER_TYPE_P (itype))
104 4277 : && wi::eq_p (wi::to_wide (int_cst), wi::max_value (itype))
105 : )
106 : {
107 24 : {
108 24 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 42, __FILE__, __LINE__, false);
109 24 : return true;
110 : }
111 : }
112 : }
113 : }
114 : }
115 : return false;
116 : }
117 :
118 : tree
119 72220 : generic_simplify_5 (location_t ARG_UNUSED (loc), const tree ARG_UNUSED (type),
120 : tree ARG_UNUSED (_p0), tree ARG_UNUSED (_p1), tree *ARG_UNUSED (captures),
121 : const enum tree_code ARG_UNUSED (op))
122 : {
123 72220 : const bool debug_dump = dump_file && (dump_flags & TDF_FOLDING);
124 72220 : {
125 72220 : bool wascmp0, wascmp1;
126 72220 : if (bitwise_inverted_equal_p (captures[1], captures[3], wascmp0)
127 1194 : && bitwise_inverted_equal_p (captures[0], captures[2], wascmp1)
128 72224 : && ((!wascmp0 && !wascmp1)
129 0 : || element_precision (type) == 1)
130 : )
131 : {
132 4 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail76;
133 4 : {
134 4 : tree res_op0;
135 4 : res_op0 = captures[0];
136 4 : tree res_op1;
137 4 : res_op1 = captures[3];
138 4 : tree _r;
139 4 : _r = fold_build2_loc (loc, BIT_XOR_EXPR, type, res_op0, res_op1);
140 4 : if (TREE_SIDE_EFFECTS (captures[1]))
141 0 : _r = build2_loc (loc, COMPOUND_EXPR, type, fold_ignored_result (captures[1]), _r);
142 4 : if (TREE_SIDE_EFFECTS (captures[2]))
143 0 : _r = build2_loc (loc, COMPOUND_EXPR, type, fold_ignored_result (captures[2]), _r);
144 4 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 53, __FILE__, __LINE__, true);
145 4 : return _r;
146 : }
147 0 : next_after_fail76:;
148 : }
149 : }
150 72216 : return NULL_TREE;
151 : }
152 :
153 : tree
154 1 : generic_simplify_16 (location_t ARG_UNUSED (loc), const tree ARG_UNUSED (type),
155 : tree ARG_UNUSED (_p0), tree ARG_UNUSED (_p1), tree *ARG_UNUSED (captures))
156 : {
157 1 : const bool debug_dump = dump_file && (dump_flags & TDF_FOLDING);
158 1 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail91;
159 1 : {
160 1 : tree res_op0;
161 1 : res_op0 = captures[0];
162 1 : tree _r;
163 1 : _r = fold_build1_loc (loc, BIT_NOT_EXPR, type, res_op0);
164 1 : if (TREE_SIDE_EFFECTS (captures[1]))
165 0 : _r = build2_loc (loc, COMPOUND_EXPR, type, fold_ignored_result (captures[1]), _r);
166 1 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 64, __FILE__, __LINE__, true);
167 : return _r;
168 : }
169 0 : next_after_fail91:;
170 0 : return NULL_TREE;
171 : }
172 :
173 : tree
174 8 : generic_simplify_22 (location_t ARG_UNUSED (loc), const tree ARG_UNUSED (type),
175 : tree ARG_UNUSED (_p0), tree ARG_UNUSED (_p1), tree *ARG_UNUSED (captures))
176 : {
177 8 : const bool debug_dump = dump_file && (dump_flags & TDF_FOLDING);
178 8 : if (tree_nop_conversion_p (type, TREE_TYPE (captures[0]))
179 : )
180 : {
181 8 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail97;
182 8 : {
183 8 : tree res_op0;
184 8 : {
185 8 : tree _o1[2], _r1;
186 8 : _o1[0] = captures[1];
187 8 : {
188 8 : tree _o2[1], _r2;
189 8 : _o2[0] = captures[0];
190 8 : _r2 = fold_build1_loc (loc, BIT_NOT_EXPR, TREE_TYPE (_o2[0]), _o2[0]);
191 8 : _o1[1] = _r2;
192 : }
193 8 : _r1 = fold_build2_loc (loc, BIT_AND_EXPR, TREE_TYPE (_o1[0]), _o1[0], _o1[1]);
194 8 : res_op0 = _r1;
195 : }
196 8 : tree _r;
197 8 : _r = fold_build1_loc (loc, NOP_EXPR, type, res_op0);
198 8 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 70, __FILE__, __LINE__, true);
199 8 : return _r;
200 : }
201 0 : next_after_fail97:;
202 : }
203 : return NULL_TREE;
204 : }
205 :
206 : tree
207 1986308 : generic_simplify_32 (location_t ARG_UNUSED (loc), const tree ARG_UNUSED (type),
208 : tree ARG_UNUSED (_p0), tree ARG_UNUSED (_p1), tree *ARG_UNUSED (captures),
209 : const enum tree_code ARG_UNUSED (bitop))
210 : {
211 1986308 : const bool debug_dump = dump_file && (dump_flags & TDF_FOLDING);
212 1986308 : if (((TREE_CODE (captures[3]) == INTEGER_CST
213 0 : && INTEGRAL_TYPE_P (TREE_TYPE (captures[1]))
214 0 : && (int_fits_type_p (captures[3], TREE_TYPE (captures[1]))
215 0 : || tree_nop_conversion_p (TREE_TYPE (captures[1]), type)))
216 1986308 : || types_match (captures[1], captures[3]))
217 1852591 : && !POINTER_TYPE_P (TREE_TYPE (captures[1]))
218 1852328 : && !VECTOR_TYPE_P (TREE_TYPE (captures[1]))
219 1852265 : && TREE_CODE (TREE_TYPE (captures[1])) != OFFSET_TYPE
220 1852265 : && (bitop != BIT_AND_EXPR ||
221 :
222 : )
223 1986308 : && (
224 1079061 : TYPE_PRECISION (TREE_TYPE (captures[1])) < TYPE_PRECISION (type)
225 : || (
226 :
227 : && TYPE_PRECISION (TREE_TYPE (captures[1])) == TYPE_PRECISION (type))
228 990671 : || GET_MODE_CLASS (TYPE_MODE (type)) != MODE_INT
229 990671 : || !type_has_mode_precision_p (type)
230 990671 : || (
231 :
232 : && TREE_CODE (captures[3]) != INTEGER_CST
233 : && tree_nop_conversion_p (type, TREE_TYPE (captures[1]))
234 : && single_use (captures[0])
235 : && single_use (captures[2])))
236 : )
237 : {
238 88390 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail107;
239 88390 : {
240 88390 : tree res_op0;
241 88390 : {
242 88390 : tree _o1[2], _r1;
243 88390 : _o1[0] = captures[1];
244 88390 : {
245 88390 : tree _o2[1], _r2;
246 88390 : _o2[0] = captures[3];
247 88390 : if (TREE_TYPE (_o2[0]) != TREE_TYPE (_o1[0]))
248 : {
249 50804 : _r2 = fold_build1_loc (loc, NOP_EXPR, TREE_TYPE (_o1[0]), _o2[0]);
250 : }
251 : else
252 : _r2 = _o2[0];
253 88390 : _o1[1] = _r2;
254 : }
255 88390 : _r1 = fold_build2_loc (loc, bitop, TREE_TYPE (_o1[0]), _o1[0], _o1[1]);
256 88390 : res_op0 = _r1;
257 : }
258 88390 : tree _r;
259 88390 : _r = fold_build1_loc (loc, NOP_EXPR, type, res_op0);
260 88390 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 80, __FILE__, __LINE__, true);
261 88390 : return _r;
262 : }
263 0 : next_after_fail107:;
264 : }
265 : return NULL_TREE;
266 : }
267 :
268 : tree
269 18 : generic_simplify_46 (location_t ARG_UNUSED (loc), const tree ARG_UNUSED (type),
270 : tree ARG_UNUSED (_p0), tree ARG_UNUSED (_p1), tree *ARG_UNUSED (captures),
271 : const enum tree_code ARG_UNUSED (op))
272 : {
273 18 : const bool debug_dump = dump_file && (dump_flags & TDF_FOLDING);
274 36 : if (INTEGRAL_TYPE_P (type)
275 54 : && (tree_nonzero_bits (captures[0]) & tree_nonzero_bits (captures[2])) == 0
276 : )
277 : {
278 0 : {
279 0 : tree t = type;
280 0 : if (!TYPE_OVERFLOW_WRAPS (t))
281 0 : t = unsigned_type_for (t);
282 0 : wide_int c = wi::add (wi::to_wide (captures[3]), 1);
283 0 : if (TREE_SIDE_EFFECTS (captures[3])) goto next_after_fail124;
284 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail124;
285 0 : {
286 0 : tree res_op0;
287 0 : {
288 0 : tree _o1[2], _r1;
289 0 : {
290 0 : tree _o2[1], _r2;
291 0 : _o2[0] = captures[2];
292 0 : if (TREE_TYPE (_o2[0]) != t)
293 : {
294 0 : _r2 = fold_build1_loc (loc, NOP_EXPR, t, _o2[0]);
295 : }
296 : else
297 : _r2 = _o2[0];
298 0 : _o1[0] = _r2;
299 : }
300 0 : _o1[1] = wide_int_to_tree (t, c);
301 0 : _r1 = fold_build2_loc (loc, MULT_EXPR, t, _o1[0], _o1[1]);
302 0 : res_op0 = _r1;
303 : }
304 0 : tree _r;
305 0 : _r = fold_build1_loc (loc, NOP_EXPR, type, res_op0);
306 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 90, __FILE__, __LINE__, true);
307 0 : return _r;
308 : }
309 0 : next_after_fail124:;
310 0 : }
311 : }
312 : return NULL_TREE;
313 : }
314 :
315 : tree
316 66 : generic_simplify_56 (location_t ARG_UNUSED (loc), const tree ARG_UNUSED (type),
317 : tree ARG_UNUSED (_p0), tree ARG_UNUSED (_p1), tree *ARG_UNUSED (captures))
318 : {
319 66 : const bool debug_dump = dump_file && (dump_flags & TDF_FOLDING);
320 66 : if (ANY_INTEGRAL_TYPE_P (type) && TYPE_OVERFLOW_UNDEFINED (type)
321 : )
322 : {
323 66 : if (TREE_SIDE_EFFECTS (_p0)) goto next_after_fail137;
324 66 : if (TREE_SIDE_EFFECTS (_p1)) goto next_after_fail137;
325 66 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail137;
326 66 : {
327 66 : tree res_op0;
328 66 : res_op0 = captures[0];
329 66 : tree _r;
330 66 : _r = fold_build1_loc (loc, ABS_EXPR, type, res_op0);
331 66 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 105, __FILE__, __LINE__, true);
332 66 : return _r;
333 : }
334 : next_after_fail137:;
335 : }
336 : return NULL_TREE;
337 : }
338 :
339 : tree
340 2 : generic_simplify_60 (location_t ARG_UNUSED (loc), const tree ARG_UNUSED (type),
341 : tree ARG_UNUSED (_p0), tree ARG_UNUSED (_p1), tree *ARG_UNUSED (captures))
342 : {
343 2 : const bool debug_dump = dump_file && (dump_flags & TDF_FOLDING);
344 2 : if (!TYPE_OVERFLOW_SANITIZED (type) && !TYPE_OVERFLOW_TRAPS (type)
345 2 : && !TYPE_SATURATING (type) && !TYPE_OVERFLOW_SANITIZED (TREE_TYPE (captures[0]))
346 2 : && !TYPE_OVERFLOW_TRAPS (TREE_TYPE (captures[0]))
347 4 : && !TYPE_SATURATING (TREE_TYPE (captures[0]))
348 : )
349 : {
350 2 : if (TREE_SIDE_EFFECTS (_p1)) goto next_after_fail141;
351 2 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail141;
352 2 : {
353 2 : tree res_op0;
354 2 : {
355 2 : tree _o1[1], _r1;
356 2 : {
357 2 : tree _o2[2], _r2;
358 2 : _o2[0] = captures[1];
359 2 : _o2[1] = captures[2];
360 2 : _r2 = fold_build2_loc (loc, BIT_XOR_EXPR, TREE_TYPE (_o2[0]), _o2[0], _o2[1]);
361 2 : _o1[0] = _r2;
362 : }
363 2 : if (TREE_TYPE (_o1[0]) != type)
364 : {
365 1 : _r1 = fold_build1_loc (loc, NOP_EXPR, type, _o1[0]);
366 : }
367 : else
368 : _r1 = _o1[0];
369 2 : res_op0 = _r1;
370 : }
371 2 : tree _r;
372 2 : _r = fold_build1_loc (loc, BIT_NOT_EXPR, type, res_op0);
373 2 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 109, __FILE__, __LINE__, true);
374 2 : return _r;
375 : }
376 : next_after_fail141:;
377 : }
378 : return NULL_TREE;
379 : }
380 :
381 : tree
382 2294278 : generic_simplify_71 (location_t ARG_UNUSED (loc), const tree ARG_UNUSED (type),
383 : tree ARG_UNUSED (_p0), tree ARG_UNUSED (_p1), tree *ARG_UNUSED (captures),
384 : const enum tree_code ARG_UNUSED (plusminus))
385 : {
386 2294278 : const bool debug_dump = dump_file && (dump_flags & TDF_FOLDING);
387 2294278 : if (!TYPE_SATURATING (type)
388 2294278 : && (!FLOAT_TYPE_P (type) || flag_associative_math)
389 : )
390 : {
391 110 : if (!ANY_INTEGRAL_TYPE_P (type)
392 2294054 : || TYPE_OVERFLOW_WRAPS (type)
393 4006471 : || (INTEGRAL_TYPE_P (type)
394 1712307 : && tree_expr_nonzero_p (captures[1])
395 3211019 : && expr_not_equal_to (captures[1], wi::minus_one (TYPE_PRECISION (type)),
396 : gimple_match_ctx (captures[0])))
397 : )
398 : {
399 1498408 : if (single_use (captures[0]) || single_use (captures[3])
400 : )
401 : {
402 1498408 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail160;
403 1498408 : {
404 1498408 : tree res_op0;
405 1498408 : {
406 1498408 : tree _o1[2], _r1;
407 1498408 : _o1[0] = captures[2];
408 1498408 : _o1[1] = captures[4];
409 1498408 : _r1 = fold_build2_loc (loc, plusminus, TREE_TYPE (_o1[0]), _o1[0], _o1[1]);
410 1498408 : res_op0 = _r1;
411 : }
412 1498408 : tree res_op1;
413 1498408 : res_op1 = captures[1];
414 1498408 : tree _r;
415 1498408 : _r = fold_build2_loc (loc, MULT_EXPR, type, res_op0, res_op1);
416 1498408 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 128, __FILE__, __LINE__, true);
417 1498408 : return _r;
418 : }
419 0 : next_after_fail160:;
420 : }
421 : else
422 : {
423 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail161;
424 : {
425 : tree res_op0;
426 : {
427 : tree _o1[2], _r1;
428 : _o1[0] = captures[2];
429 : _o1[1] = captures[4];
430 : _r1 = fold_build2_loc (loc, plusminus, TREE_TYPE (_o1[0]), _o1[0], _o1[1]);
431 : res_op0 = _r1;
432 : }
433 : tree res_op1;
434 : res_op1 = captures[1];
435 : tree _r;
436 : _r = fold_build2_loc (loc, MULT_EXPR, type, res_op0, res_op1);
437 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 129, __FILE__, __LINE__, true);
438 : return _r;
439 : }
440 : next_after_fail161:;
441 : }
442 : }
443 : }
444 : return NULL_TREE;
445 : }
446 :
447 : tree
448 4 : generic_simplify_82 (location_t ARG_UNUSED (loc), const tree ARG_UNUSED (type),
449 : tree ARG_UNUSED (_p0), tree ARG_UNUSED (_p1), tree *ARG_UNUSED (captures),
450 : const combined_fn ARG_UNUSED (POPCOUNT))
451 : {
452 4 : const bool debug_dump = dump_file && (dump_flags & TDF_FOLDING);
453 4 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail173;
454 4 : {
455 4 : tree res_op0;
456 4 : {
457 4 : tree _o1[1], _r1;
458 4 : _o1[0] = captures[2];
459 4 : _r1 = maybe_build_call_expr_loc (loc, POPCOUNT, type, 1, _o1[0]);
460 4 : if (!_r1)
461 0 : goto next_after_fail173;
462 4 : res_op0 = _r1;
463 : }
464 4 : tree res_op1;
465 4 : {
466 4 : tree _o1[1], _r1;
467 4 : _o1[0] = captures[3];
468 4 : _r1 = maybe_build_call_expr_loc (loc, POPCOUNT, type, 1, _o1[0]);
469 4 : if (!_r1)
470 0 : goto next_after_fail173;
471 4 : res_op1 = _r1;
472 : }
473 4 : tree _r;
474 4 : _r = fold_build2_loc (loc, PLUS_EXPR, type, res_op0, res_op1);
475 4 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 141, __FILE__, __LINE__, true);
476 : return _r;
477 : }
478 : next_after_fail173:;
479 : return NULL_TREE;
480 : }
481 :
482 : tree
483 2 : generic_simplify_90 (location_t ARG_UNUSED (loc), const tree ARG_UNUSED (type),
484 : tree ARG_UNUSED (_p0), tree ARG_UNUSED (_p1), tree *ARG_UNUSED (captures))
485 : {
486 2 : const bool debug_dump = dump_file && (dump_flags & TDF_FOLDING);
487 2 : if (!TYPE_OVERFLOW_SANITIZED (type) && !TYPE_OVERFLOW_TRAPS (type)
488 2 : && !TYPE_SATURATING (type) && !TYPE_OVERFLOW_SANITIZED (TREE_TYPE (captures[2]))
489 2 : && !TYPE_OVERFLOW_TRAPS (TREE_TYPE (captures[2]))
490 4 : && !TYPE_SATURATING (TREE_TYPE (captures[2]))
491 : )
492 : {
493 2 : if (TREE_SIDE_EFFECTS (_p1)) goto next_after_fail181;
494 2 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail181;
495 2 : {
496 2 : tree res_op0;
497 2 : {
498 2 : tree _o1[1], _r1;
499 2 : {
500 2 : tree _o2[2], _r2;
501 2 : _o2[0] = captures[0];
502 2 : _o2[1] = captures[1];
503 2 : _r2 = fold_build2_loc (loc, BIT_XOR_EXPR, TREE_TYPE (_o2[0]), _o2[0], _o2[1]);
504 2 : _o1[0] = _r2;
505 : }
506 2 : if (TREE_TYPE (_o1[0]) != type)
507 : {
508 0 : _r1 = fold_build1_loc (loc, NOP_EXPR, type, _o1[0]);
509 : }
510 : else
511 : _r1 = _o1[0];
512 2 : res_op0 = _r1;
513 : }
514 2 : tree _r;
515 2 : _r = fold_build1_loc (loc, BIT_NOT_EXPR, type, res_op0);
516 2 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 149, __FILE__, __LINE__, true);
517 2 : return _r;
518 : }
519 : next_after_fail181:;
520 : }
521 : return NULL_TREE;
522 : }
523 :
524 : tree
525 0 : generic_simplify_100 (location_t ARG_UNUSED (loc), const tree ARG_UNUSED (type),
526 : tree ARG_UNUSED (_p0), tree ARG_UNUSED (_p1), tree *ARG_UNUSED (captures))
527 : {
528 0 : const bool debug_dump = dump_file && (dump_flags & TDF_FOLDING);
529 0 : if (!TYPE_SATURATING (type)
530 : )
531 : {
532 0 : if ((!FLOAT_TYPE_P (type) || flag_associative_math)
533 0 : && !FIXED_POINT_TYPE_P (type)
534 : )
535 : {
536 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail193;
537 0 : {
538 0 : tree res_op0;
539 0 : res_op0 = captures[1];
540 0 : tree res_op1;
541 0 : res_op1 = captures[2];
542 0 : tree _r;
543 0 : _r = fold_build2_loc (loc, PLUS_EXPR, type, res_op0, res_op1);
544 0 : if (TREE_SIDE_EFFECTS (captures[0]))
545 0 : _r = build2_loc (loc, COMPOUND_EXPR, type, fold_ignored_result (captures[0]), _r);
546 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 160, __FILE__, __LINE__, true);
547 0 : return _r;
548 : }
549 0 : next_after_fail193:;
550 : }
551 : }
552 : return NULL_TREE;
553 : }
554 :
555 : tree
556 0 : generic_simplify_107 (location_t ARG_UNUSED (loc), const tree ARG_UNUSED (type),
557 : tree ARG_UNUSED (_p0), tree ARG_UNUSED (_p1), tree *ARG_UNUSED (captures))
558 : {
559 0 : const bool debug_dump = dump_file && (dump_flags & TDF_FOLDING);
560 0 : if (VECTOR_TYPE_P (type)
561 0 : && known_eq (TYPE_VECTOR_SUBPARTS (type),
562 : TYPE_VECTOR_SUBPARTS (TREE_TYPE (captures[3])))
563 0 : && (TYPE_MODE (TREE_TYPE (type))
564 0 : == TYPE_MODE (TREE_TYPE (TREE_TYPE (captures[3]))))
565 : )
566 : {
567 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail204;
568 0 : {
569 0 : tree res_op0;
570 0 : res_op0 = captures[0];
571 0 : tree res_op1;
572 0 : {
573 0 : tree _o1[1], _r1;
574 0 : {
575 0 : tree _o2[3], _r2;
576 0 : _o2[0] = captures[2];
577 0 : {
578 0 : tree _o3[1], _r3;
579 0 : _o3[0] = captures[3];
580 0 : _r3 = fold_build1_loc (loc, NEGATE_EXPR, TREE_TYPE (_o3[0]), _o3[0]);
581 0 : _o2[1] = _r3;
582 : }
583 0 : _o2[2] = captures[4];
584 0 : _r2 = fold_build3_loc (loc, VEC_COND_EXPR, TREE_TYPE (_o2[1]), _o2[0], _o2[1], _o2[2]);
585 0 : _o1[0] = _r2;
586 : }
587 0 : if (TREE_TYPE (_o1[0]) != type)
588 : {
589 0 : _r1 = fold_build1_loc (loc, VIEW_CONVERT_EXPR, type, _o1[0]);
590 : }
591 : else
592 : _r1 = _o1[0];
593 0 : res_op1 = _r1;
594 : }
595 0 : tree _r;
596 0 : _r = fold_build2_loc (loc, PLUS_EXPR, type, res_op0, res_op1);
597 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 171, __FILE__, __LINE__, true);
598 0 : return _r;
599 : }
600 0 : next_after_fail204:;
601 : }
602 : return NULL_TREE;
603 : }
604 :
605 : tree
606 0 : generic_simplify_114 (location_t ARG_UNUSED (loc), const tree ARG_UNUSED (type),
607 : tree ARG_UNUSED (_p0), tree ARG_UNUSED (_p1), tree *ARG_UNUSED (captures))
608 : {
609 0 : const bool debug_dump = dump_file && (dump_flags & TDF_FOLDING);
610 0 : if (TREE_SIDE_EFFECTS (_p0)) goto next_after_fail211;
611 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail211;
612 0 : {
613 0 : tree _r;
614 0 : _r = captures[2];
615 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 178, __FILE__, __LINE__, true);
616 : return _r;
617 : }
618 : next_after_fail211:;
619 : return NULL_TREE;
620 : }
621 :
622 : tree
623 0 : generic_simplify_120 (location_t ARG_UNUSED (loc), const tree ARG_UNUSED (type),
624 : tree ARG_UNUSED (_p0), tree ARG_UNUSED (_p1), tree *ARG_UNUSED (captures),
625 : const enum tree_code ARG_UNUSED (op))
626 : {
627 0 : const bool debug_dump = dump_file && (dump_flags & TDF_FOLDING);
628 0 : if (TREE_SIDE_EFFECTS (_p0)) goto next_after_fail217;
629 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail217;
630 0 : {
631 0 : tree _r;
632 0 : _r = captures[0];
633 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 183, __FILE__, __LINE__, true);
634 : return _r;
635 : }
636 : next_after_fail217:;
637 : return NULL_TREE;
638 : }
639 :
640 : tree
641 0 : generic_simplify_127 (location_t ARG_UNUSED (loc), const tree ARG_UNUSED (type),
642 : tree ARG_UNUSED (_p0), tree ARG_UNUSED (_p1), tree *ARG_UNUSED (captures))
643 : {
644 0 : const bool debug_dump = dump_file && (dump_flags & TDF_FOLDING);
645 0 : if (INTEGRAL_TYPE_P (TREE_TYPE (captures[0]))
646 0 : && TYPE_PRECISION (TREE_TYPE (captures[0])) == 1
647 : )
648 : {
649 0 : if (TREE_SIDE_EFFECTS (_p0)) goto next_after_fail224;
650 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail224;
651 0 : {
652 0 : tree _r;
653 0 : _r = captures[2];
654 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 185, __FILE__, __LINE__, true);
655 0 : return _r;
656 : }
657 : next_after_fail224:;
658 : }
659 : return NULL_TREE;
660 : }
661 :
662 : tree
663 0 : generic_simplify_138 (location_t ARG_UNUSED (loc), const tree ARG_UNUSED (type),
664 : tree ARG_UNUSED (_p0), tree ARG_UNUSED (_p1), tree *ARG_UNUSED (captures),
665 : const enum tree_code ARG_UNUSED (op))
666 : {
667 0 : const bool debug_dump = dump_file && (dump_flags & TDF_FOLDING);
668 0 : if (tree_nop_conversion_p (type, TREE_TYPE (captures[3]))
669 0 : && tree_nop_conversion_p (type, TREE_TYPE (captures[6]))
670 : )
671 : {
672 0 : if (single_use (captures[4]) && single_use (captures[5])
673 : )
674 : {
675 0 : if (TREE_SIDE_EFFECTS (_p0)) goto next_after_fail236;
676 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail236;
677 0 : {
678 0 : tree res_op0;
679 0 : res_op0 = captures[0];
680 0 : tree res_op1;
681 0 : {
682 0 : tree _o1[1], _r1;
683 0 : _o1[0] = captures[6];
684 0 : if (TREE_TYPE (_o1[0]) != type)
685 : {
686 0 : _r1 = fold_build1_loc (loc, NOP_EXPR, type, _o1[0]);
687 : }
688 : else
689 : _r1 = _o1[0];
690 0 : res_op1 = _r1;
691 : }
692 0 : tree _r;
693 0 : _r = fold_build2_loc (loc, op, type, res_op0, res_op1);
694 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 194, __FILE__, __LINE__, true);
695 0 : return _r;
696 : }
697 : next_after_fail236:;
698 : }
699 : else
700 : {
701 : if (single_use (captures[0]) && single_use (captures[1])
702 : )
703 : {
704 : if (TREE_SIDE_EFFECTS (_p1)) goto next_after_fail237;
705 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail237;
706 : {
707 : tree res_op0;
708 : {
709 : tree _o1[1], _r1;
710 : _o1[0] = captures[3];
711 : if (TREE_TYPE (_o1[0]) != type)
712 : {
713 : _r1 = fold_build1_loc (loc, NOP_EXPR, type, _o1[0]);
714 : }
715 : else
716 : _r1 = _o1[0];
717 : res_op0 = _r1;
718 : }
719 : tree res_op1;
720 : res_op1 = captures[4];
721 : tree _r;
722 : _r = fold_build2_loc (loc, op, type, res_op0, res_op1);
723 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 195, __FILE__, __LINE__, true);
724 : return _r;
725 : }
726 : next_after_fail237:;
727 : }
728 : }
729 : }
730 : return NULL_TREE;
731 : }
732 :
733 : tree
734 300 : generic_simplify_153 (location_t ARG_UNUSED (loc), const tree ARG_UNUSED (type),
735 : tree ARG_UNUSED (_p0), tree ARG_UNUSED (_p1), tree *ARG_UNUSED (captures))
736 : {
737 300 : const bool debug_dump = dump_file && (dump_flags & TDF_FOLDING);
738 300 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail258;
739 300 : {
740 300 : if (! tree_invariant_p (captures[1])) goto next_after_fail258;
741 0 : tree res_op0;
742 0 : {
743 0 : tree _o1[2], _r1;
744 0 : {
745 0 : tree _o2[2], _r2;
746 0 : _o2[0] = unshare_expr (captures[1]);
747 0 : _o2[1] = captures[4];
748 0 : _r2 = fold_build2_loc (loc, BIT_XOR_EXPR, TREE_TYPE (_o2[0]), _o2[0], _o2[1]);
749 0 : _o1[0] = _r2;
750 : }
751 0 : _o1[1] = captures[2];
752 0 : _r1 = fold_build2_loc (loc, BIT_AND_EXPR, TREE_TYPE (_o1[0]), _o1[0], _o1[1]);
753 0 : res_op0 = _r1;
754 : }
755 0 : tree res_op1;
756 0 : res_op1 = captures[1];
757 0 : tree _r;
758 0 : _r = fold_build2_loc (loc, BIT_XOR_EXPR, type, res_op0, res_op1);
759 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 207, __FILE__, __LINE__, true);
760 : return _r;
761 : }
762 : next_after_fail258:;
763 : return NULL_TREE;
764 : }
765 :
766 : tree
767 0 : generic_simplify_162 (location_t ARG_UNUSED (loc), const tree ARG_UNUSED (type),
768 : tree ARG_UNUSED (_p0), tree ARG_UNUSED (_p1), tree *ARG_UNUSED (captures))
769 : {
770 0 : const bool debug_dump = dump_file && (dump_flags & TDF_FOLDING);
771 0 : if (TREE_SIDE_EFFECTS (_p0)) goto next_after_fail285;
772 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail285;
773 0 : {
774 0 : tree _r;
775 0 : _r = captures[2];
776 0 : if (TREE_SIDE_EFFECTS (captures[1]))
777 0 : _r = build2_loc (loc, COMPOUND_EXPR, type, fold_ignored_result (captures[1]), _r);
778 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 208, __FILE__, __LINE__, true);
779 : return _r;
780 : }
781 : next_after_fail285:;
782 : return NULL_TREE;
783 : }
784 :
785 : tree
786 0 : generic_simplify_166 (location_t ARG_UNUSED (loc), const tree ARG_UNUSED (type),
787 : tree ARG_UNUSED (_p0), tree ARG_UNUSED (_p1), tree *ARG_UNUSED (captures),
788 : const enum tree_code ARG_UNUSED (code2),
789 : const enum tree_code ARG_UNUSED (code1))
790 : {
791 0 : const bool debug_dump = dump_file && (dump_flags & TDF_FOLDING);
792 0 : if ((TREE_CODE (captures[2]) == INTEGER_CST
793 0 : && TREE_CODE (captures[5]) == INTEGER_CST)
794 0 : || ((INTEGRAL_TYPE_P (TREE_TYPE (captures[2]))
795 0 : || (VECTOR_TYPE_P (TREE_TYPE (captures[2])))
796 0 : || POINTER_TYPE_P (TREE_TYPE (captures[2])))
797 0 : && bitwise_equal_p (captures[2], captures[5]))
798 : )
799 : {
800 0 : {
801 0 : bool one_before = false;
802 0 : bool one_after = false;
803 0 : int cmp = 0;
804 0 : bool allbits = true;
805 0 : if (TREE_CODE (captures[2]) == INTEGER_CST
806 0 : && TREE_CODE (captures[5]) == INTEGER_CST)
807 : {
808 0 : allbits = TYPE_PRECISION (TREE_TYPE (captures[2])) <= TYPE_PRECISION (TREE_TYPE (captures[5]));
809 0 : auto t1 = wi::to_wide (fold_convert (TREE_TYPE (captures[5]), captures[2]));
810 0 : auto t2 = wi::to_wide (captures[5]);
811 0 : cmp = wi::cmp (t1, t2, TYPE_SIGN (TREE_TYPE (captures[5])));
812 0 : if (cmp < 0
813 0 : && t1 == t2 - 1)
814 : one_before = true;
815 0 : if (cmp > 0
816 0 : && t1 == t2 + 1)
817 : one_after = true;
818 : }
819 0 : bool val;
820 0 : switch (code2)
821 : {
822 0 : case EQ_EXPR: val = (cmp == 0); break;
823 0 : case NE_EXPR: val = (cmp != 0); break;
824 0 : case LT_EXPR: val = (cmp < 0); break;
825 0 : case GT_EXPR: val = (cmp > 0); break;
826 0 : case LE_EXPR: val = (cmp <= 0); break;
827 0 : case GE_EXPR: val = (cmp >= 0); break;
828 0 : default: gcc_unreachable ();
829 : }
830 0 : if (code1 == EQ_EXPR && val
831 : )
832 : {
833 0 : if (TREE_SIDE_EFFECTS (_p1)) goto next_after_fail290;
834 0 : if (TREE_SIDE_EFFECTS (captures[2])) goto next_after_fail290;
835 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail290;
836 0 : {
837 0 : tree _r;
838 0 : _r = captures[3];
839 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 211, __FILE__, __LINE__, true);
840 0 : return _r;
841 : }
842 : next_after_fail290:;
843 : }
844 : else
845 : {
846 0 : if (code1 == NE_EXPR && val && allbits
847 : )
848 : {
849 0 : if (TREE_SIDE_EFFECTS (captures[2])) goto next_after_fail291;
850 0 : if (TREE_SIDE_EFFECTS (captures[5])) goto next_after_fail291;
851 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail291;
852 0 : {
853 0 : tree _r;
854 0 : _r = constant_boolean_node (true, type);
855 0 : if (TREE_SIDE_EFFECTS (captures[1]))
856 0 : _r = build2_loc (loc, COMPOUND_EXPR, type, fold_ignored_result (captures[1]), _r);
857 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 212, __FILE__, __LINE__, true);
858 0 : return _r;
859 : }
860 : next_after_fail291:;
861 : }
862 : else
863 : {
864 0 : if (code1 == NE_EXPR && !val && allbits
865 : )
866 : {
867 0 : if (TREE_SIDE_EFFECTS (_p0)) goto next_after_fail292;
868 0 : if (TREE_SIDE_EFFECTS (captures[5])) goto next_after_fail292;
869 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail292;
870 0 : {
871 0 : tree _r;
872 0 : _r = captures[0];
873 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 213, __FILE__, __LINE__, true);
874 0 : return _r;
875 : }
876 : next_after_fail292:;
877 : }
878 : else
879 : {
880 0 : if (code1 == EQ_EXPR
881 0 : && code2 == GT_EXPR
882 0 : && cmp == 0
883 0 : && allbits
884 0 : && ((VECTOR_BOOLEAN_TYPE_P (type)
885 0 : && expand_vec_cmp_expr_p (TREE_TYPE (captures[2]), type, GE_EXPR))
886 0 : || !VECTOR_TYPE_P (TREE_TYPE (captures[2])))
887 : )
888 : {
889 0 : if (TREE_SIDE_EFFECTS (_p1)) goto next_after_fail293;
890 0 : if (TREE_SIDE_EFFECTS (captures[2])) goto next_after_fail293;
891 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail293;
892 0 : {
893 0 : tree res_op0;
894 0 : res_op0 = captures[4];
895 0 : tree res_op1;
896 0 : res_op1 = captures[5];
897 0 : tree _r;
898 0 : _r = fold_build2_loc (loc, GE_EXPR, type, res_op0, res_op1);
899 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 214, __FILE__, __LINE__, true);
900 0 : return _r;
901 : }
902 : next_after_fail293:;
903 : }
904 : else
905 : {
906 0 : if (code1 == EQ_EXPR
907 0 : && code2 == LT_EXPR
908 0 : && cmp == 0
909 0 : && allbits
910 0 : && ((VECTOR_BOOLEAN_TYPE_P (type)
911 0 : && expand_vec_cmp_expr_p (TREE_TYPE (captures[2]), type, LE_EXPR))
912 0 : || !VECTOR_TYPE_P (TREE_TYPE (captures[2])))
913 : )
914 : {
915 0 : if (TREE_SIDE_EFFECTS (_p1)) goto next_after_fail294;
916 0 : if (TREE_SIDE_EFFECTS (captures[2])) goto next_after_fail294;
917 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail294;
918 0 : {
919 0 : tree res_op0;
920 0 : res_op0 = captures[4];
921 0 : tree res_op1;
922 0 : res_op1 = captures[5];
923 0 : tree _r;
924 0 : _r = fold_build2_loc (loc, LE_EXPR, type, res_op0, res_op1);
925 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 215, __FILE__, __LINE__, true);
926 0 : return _r;
927 : }
928 : next_after_fail294:;
929 : }
930 : else
931 : {
932 0 : if (code1 == EQ_EXPR
933 0 : && code2 == GE_EXPR
934 : && one_before
935 0 : && allbits
936 0 : && ((VECTOR_BOOLEAN_TYPE_P (type)
937 0 : && expand_vec_cmp_expr_p (TREE_TYPE (captures[2]), type, GE_EXPR))
938 0 : || !VECTOR_TYPE_P (TREE_TYPE (captures[2])))
939 : )
940 : {
941 0 : if (TREE_SIDE_EFFECTS (_p1)) goto next_after_fail295;
942 0 : if (TREE_SIDE_EFFECTS (captures[2])) goto next_after_fail295;
943 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail295;
944 0 : {
945 0 : tree res_op0;
946 0 : res_op0 = captures[4];
947 0 : tree res_op1;
948 0 : {
949 0 : tree _o1[1], _r1;
950 0 : _o1[0] = captures[2];
951 0 : if (TREE_TYPE (_o1[0]) != TREE_TYPE (res_op0))
952 : {
953 0 : _r1 = fold_build1_loc (loc, NOP_EXPR, TREE_TYPE (res_op0), _o1[0]);
954 : }
955 : else
956 : _r1 = _o1[0];
957 0 : res_op1 = _r1;
958 : }
959 0 : tree _r;
960 0 : _r = fold_build2_loc (loc, GE_EXPR, type, res_op0, res_op1);
961 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 216, __FILE__, __LINE__, true);
962 0 : return _r;
963 : }
964 : next_after_fail295:;
965 : }
966 : else
967 : {
968 0 : if (code1 == EQ_EXPR
969 0 : && code2 == LE_EXPR
970 : && one_after
971 0 : && allbits
972 0 : && ((VECTOR_BOOLEAN_TYPE_P (type)
973 0 : && expand_vec_cmp_expr_p (TREE_TYPE (captures[2]), type, LE_EXPR))
974 0 : || !VECTOR_TYPE_P (TREE_TYPE (captures[2])))
975 : )
976 : {
977 0 : if (TREE_SIDE_EFFECTS (_p1)) goto next_after_fail296;
978 0 : if (TREE_SIDE_EFFECTS (captures[2])) goto next_after_fail296;
979 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail296;
980 0 : {
981 0 : tree res_op0;
982 0 : res_op0 = captures[4];
983 0 : tree res_op1;
984 0 : {
985 0 : tree _o1[1], _r1;
986 0 : _o1[0] = captures[2];
987 0 : if (TREE_TYPE (_o1[0]) != TREE_TYPE (res_op0))
988 : {
989 0 : _r1 = fold_build1_loc (loc, NOP_EXPR, TREE_TYPE (res_op0), _o1[0]);
990 : }
991 : else
992 : _r1 = _o1[0];
993 0 : res_op1 = _r1;
994 : }
995 0 : tree _r;
996 0 : _r = fold_build2_loc (loc, LE_EXPR, type, res_op0, res_op1);
997 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 217, __FILE__, __LINE__, true);
998 0 : return _r;
999 : }
1000 : next_after_fail296:;
1001 : }
1002 : }
1003 : }
1004 : }
1005 : }
1006 : }
1007 : }
1008 : }
1009 : }
1010 : return NULL_TREE;
1011 : }
1012 :
1013 : tree
1014 98125 : generic_simplify_208 (location_t ARG_UNUSED (loc), const tree ARG_UNUSED (type),
1015 : tree ARG_UNUSED (_p0), tree ARG_UNUSED (_p1), tree *ARG_UNUSED (captures),
1016 : const enum tree_code ARG_UNUSED (op))
1017 : {
1018 98125 : const bool debug_dump = dump_file && (dump_flags & TDF_FOLDING);
1019 196250 : if (ANY_INTEGRAL_TYPE_P (TREE_TYPE (captures[2]))
1020 194666 : && (TYPE_OVERFLOW_UNDEFINED (TREE_TYPE (captures[2]))
1021 93978 : || TYPE_OVERFLOW_WRAPS (TREE_TYPE (captures[2])))
1022 : && (CONSTANT_CLASS_P (captures[2]) || (single_use (captures[1]) && single_use (captures[0])))
1023 97329 : && tree_nop_conversion_p (TREE_TYPE (captures[0]), TREE_TYPE (captures[1]))
1024 292787 : && tree_nop_conversion_p (TREE_TYPE (captures[0]), TREE_TYPE (captures[3]))
1025 : )
1026 : {
1027 97321 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail351;
1028 97321 : {
1029 97321 : tree res_op0;
1030 97321 : res_op0 = captures[2];
1031 97321 : tree res_op1;
1032 97321 : res_op1 = build_zero_cst (TREE_TYPE (captures[2]));
1033 97321 : tree _r;
1034 97321 : _r = fold_build2_loc (loc, op, type, res_op0, res_op1);
1035 97321 : if (TREE_SIDE_EFFECTS (captures[3]))
1036 0 : _r = build2_loc (loc, COMPOUND_EXPR, type, fold_ignored_result (captures[3]), _r);
1037 97321 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 261, __FILE__, __LINE__, true);
1038 97321 : return _r;
1039 : }
1040 0 : next_after_fail351:;
1041 : }
1042 : return NULL_TREE;
1043 : }
1044 :
1045 : tree
1046 26448 : generic_simplify_219 (location_t ARG_UNUSED (loc), const tree ARG_UNUSED (type),
1047 : tree ARG_UNUSED (_p0), tree ARG_UNUSED (_p1), tree *ARG_UNUSED (captures),
1048 : const enum tree_code ARG_UNUSED (op))
1049 : {
1050 26448 : const bool debug_dump = dump_file && (dump_flags & TDF_FOLDING);
1051 52896 : if (ANY_INTEGRAL_TYPE_P (TREE_TYPE (captures[0]))
1052 52782 : && (TYPE_OVERFLOW_UNDEFINED (TREE_TYPE (captures[0]))
1053 23898 : || ((op == EQ_EXPR || op == NE_EXPR)
1054 1764 : && TYPE_OVERFLOW_WRAPS (TREE_TYPE (captures[0]))))
1055 52839 : && (CONSTANT_CLASS_P (captures[2]) || single_use (captures[1]))
1056 : )
1057 : {
1058 4257 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail375;
1059 4257 : {
1060 4257 : tree res_op0;
1061 4257 : res_op0 = captures[2];
1062 4257 : tree res_op1;
1063 4257 : res_op1 = build_zero_cst (TREE_TYPE (captures[2]));
1064 4257 : tree _r;
1065 4257 : _r = fold_build2_loc (loc, op, type, res_op0, res_op1);
1066 4257 : if (TREE_SIDE_EFFECTS (captures[0]))
1067 0 : _r = build2_loc (loc, COMPOUND_EXPR, type, fold_ignored_result (captures[0]), _r);
1068 4257 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 289, __FILE__, __LINE__, true);
1069 4257 : return _r;
1070 : }
1071 0 : next_after_fail375:;
1072 : }
1073 : return NULL_TREE;
1074 : }
1075 :
1076 : tree
1077 39569378 : generic_simplify_227 (location_t ARG_UNUSED (loc), const tree ARG_UNUSED (type),
1078 : tree ARG_UNUSED (_p0), tree ARG_UNUSED (_p1), tree *ARG_UNUSED (captures),
1079 : const enum tree_code ARG_UNUSED (cmp))
1080 : {
1081 39569378 : const bool debug_dump = dump_file && (dump_flags & TDF_FOLDING);
1082 79138918 : if (wi::bit_and_not (get_known_nonzero_bits (captures[1]),
1083 118708134 : get_nonzero_bits (captures[0])) != 0
1084 : )
1085 : {
1086 80395 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail383;
1087 80395 : {
1088 80395 : tree _r;
1089 80395 : _r = constant_boolean_node (cmp == NE_EXPR, type);
1090 80395 : if (TREE_SIDE_EFFECTS (captures[0]))
1091 0 : _r = build2_loc (loc, COMPOUND_EXPR, type, fold_ignored_result (captures[0]), _r);
1092 80395 : if (TREE_SIDE_EFFECTS (captures[1]))
1093 0 : _r = build2_loc (loc, COMPOUND_EXPR, type, fold_ignored_result (captures[1]), _r);
1094 80395 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 296, __FILE__, __LINE__, true);
1095 80395 : return _r;
1096 : }
1097 0 : next_after_fail383:;
1098 : }
1099 : return NULL_TREE;
1100 : }
1101 :
1102 : tree
1103 0 : generic_simplify_235 (location_t ARG_UNUSED (loc), const tree ARG_UNUSED (type),
1104 : tree ARG_UNUSED (_p0), tree ARG_UNUSED (_p1), tree *ARG_UNUSED (captures),
1105 : const enum tree_code ARG_UNUSED (cmp),
1106 : const enum tree_code ARG_UNUSED (icmp))
1107 : {
1108 0 : const bool debug_dump = dump_file && (dump_flags & TDF_FOLDING);
1109 0 : if (INTEGRAL_TYPE_P (TREE_TYPE (captures[0]))
1110 : )
1111 : {
1112 0 : if (TREE_SIDE_EFFECTS (_p0)) goto next_after_fail395;
1113 0 : if (TREE_SIDE_EFFECTS (_p1)) goto next_after_fail395;
1114 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail395;
1115 0 : {
1116 0 : tree res_op0;
1117 0 : res_op0 = captures[0];
1118 0 : tree res_op1;
1119 0 : res_op1 = wide_int_to_tree (TREE_TYPE (captures[0]),
1120 0 : wi::exact_log2 (wi::to_wide (captures[1])));
1121 0 : tree _r;
1122 0 : _r = fold_build2_loc (loc, icmp, type, res_op0, res_op1);
1123 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 308, __FILE__, __LINE__, true);
1124 0 : return _r;
1125 : }
1126 : next_after_fail395:;
1127 : }
1128 : return NULL_TREE;
1129 : }
1130 :
1131 : tree
1132 0 : generic_simplify_239 (location_t ARG_UNUSED (loc), const tree ARG_UNUSED (type),
1133 : tree ARG_UNUSED (_p0), tree ARG_UNUSED (_p1), tree *ARG_UNUSED (captures),
1134 : const enum tree_code ARG_UNUSED (rotate),
1135 : const enum tree_code ARG_UNUSED (invrot),
1136 : const enum tree_code ARG_UNUSED (cmp))
1137 : {
1138 0 : const bool debug_dump = dump_file && (dump_flags & TDF_FOLDING);
1139 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail407;
1140 0 : {
1141 0 : tree res_op0;
1142 0 : res_op0 = captures[0];
1143 0 : tree res_op1;
1144 0 : res_op1 = captures[2];
1145 0 : tree _r;
1146 0 : _r = fold_build2_loc (loc, cmp, type, res_op0, res_op1);
1147 0 : if (TREE_SIDE_EFFECTS (captures[1]))
1148 0 : _r = build2_loc (loc, COMPOUND_EXPR, type, fold_ignored_result (captures[1]), _r);
1149 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 320, __FILE__, __LINE__, true);
1150 : return _r;
1151 : }
1152 0 : next_after_fail407:;
1153 0 : return NULL_TREE;
1154 : }
1155 :
1156 : tree
1157 27 : generic_simplify_244 (location_t ARG_UNUSED (loc), const tree ARG_UNUSED (type),
1158 : tree ARG_UNUSED (_p0), tree ARG_UNUSED (_p1), tree *ARG_UNUSED (captures),
1159 : const enum tree_code ARG_UNUSED (cmp),
1160 : const combined_fn ARG_UNUSED (bswap))
1161 : {
1162 27 : const bool debug_dump = dump_file && (dump_flags & TDF_FOLDING);
1163 27 : {
1164 27 : tree ctype = TREE_TYPE (captures[1]);
1165 27 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail412;
1166 27 : {
1167 27 : tree res_op0;
1168 27 : {
1169 27 : tree _o1[1], _r1;
1170 27 : _o1[0] = captures[0];
1171 27 : if (TREE_TYPE (_o1[0]) != ctype)
1172 : {
1173 0 : _r1 = fold_build1_loc (loc, NOP_EXPR, ctype, _o1[0]);
1174 : }
1175 : else
1176 : _r1 = _o1[0];
1177 27 : res_op0 = _r1;
1178 : }
1179 27 : tree res_op1;
1180 27 : {
1181 27 : tree _o1[1], _r1;
1182 27 : _o1[0] = captures[1];
1183 27 : _r1 = maybe_build_call_expr_loc (loc, bswap, TREE_TYPE (_o1[0]), 1, _o1[0]);
1184 27 : if (!_r1)
1185 0 : goto next_after_fail412;
1186 27 : if (EXPR_P (_r1))
1187 27 : goto next_after_fail412;
1188 0 : res_op1 = _r1;
1189 : }
1190 0 : tree _r;
1191 0 : _r = fold_build2_loc (loc, cmp, type, res_op0, res_op1);
1192 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 325, __FILE__, __LINE__, true);
1193 : return _r;
1194 : }
1195 : next_after_fail412:;
1196 : }
1197 : return NULL_TREE;
1198 : }
1199 :
1200 : tree
1201 0 : generic_simplify_253 (location_t ARG_UNUSED (loc), const tree ARG_UNUSED (type),
1202 : tree ARG_UNUSED (_p0), tree ARG_UNUSED (_p1), tree *ARG_UNUSED (captures),
1203 : const enum tree_code ARG_UNUSED (cmp))
1204 : {
1205 0 : const bool debug_dump = dump_file && (dump_flags & TDF_FOLDING);
1206 0 : if (single_use (captures[1]) && single_use (captures[3])
1207 : )
1208 : {
1209 0 : {
1210 0 : tree otype = TREE_TYPE (captures[0]);
1211 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail427;
1212 0 : {
1213 0 : tree res_op0;
1214 0 : {
1215 0 : tree _o1[1], _r1;
1216 0 : _o1[0] = captures[4];
1217 0 : if (TREE_TYPE (_o1[0]) != otype)
1218 : {
1219 0 : _r1 = fold_build1_loc (loc, NOP_EXPR, otype, _o1[0]);
1220 : }
1221 : else
1222 : _r1 = _o1[0];
1223 0 : res_op0 = _r1;
1224 : }
1225 0 : tree res_op1;
1226 0 : {
1227 0 : tree _o1[1], _r1;
1228 0 : _o1[0] = captures[2];
1229 0 : if (TREE_TYPE (_o1[0]) != otype)
1230 : {
1231 0 : _r1 = fold_build1_loc (loc, NOP_EXPR, otype, _o1[0]);
1232 : }
1233 : else
1234 : _r1 = _o1[0];
1235 0 : res_op1 = _r1;
1236 : }
1237 0 : tree _r;
1238 0 : _r = fold_build2_loc (loc, cmp, type, res_op0, res_op1);
1239 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 339, __FILE__, __LINE__, true);
1240 0 : return _r;
1241 : }
1242 0 : next_after_fail427:;
1243 : }
1244 : }
1245 0 : return NULL_TREE;
1246 : }
1247 :
1248 : tree
1249 22 : generic_simplify_259 (location_t ARG_UNUSED (loc), const tree ARG_UNUSED (type),
1250 : tree ARG_UNUSED (_p0), tree ARG_UNUSED (_p1), tree *ARG_UNUSED (captures),
1251 : const combined_fn ARG_UNUSED (sq),
1252 : const enum tree_code ARG_UNUSED (cmp))
1253 : {
1254 22 : const bool debug_dump = dump_file && (dump_flags & TDF_FOLDING);
1255 22 : if (flag_unsafe_math_optimizations && ! flag_errno_math
1256 : )
1257 : {
1258 20 : if (REAL_VALUE_NEGATIVE (TREE_REAL_CST (captures[1]))
1259 : )
1260 : {
1261 2 : if (cmp == EQ_EXPR || cmp == LT_EXPR || cmp == LE_EXPR
1262 : )
1263 : {
1264 1 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail447;
1265 1 : {
1266 1 : tree _r;
1267 1 : _r = constant_boolean_node (false, type);
1268 1 : if (TREE_SIDE_EFFECTS (captures[0]))
1269 0 : _r = build2_loc (loc, COMPOUND_EXPR, type, fold_ignored_result (captures[0]), _r);
1270 1 : if (TREE_SIDE_EFFECTS (captures[1]))
1271 0 : _r = build2_loc (loc, COMPOUND_EXPR, type, fold_ignored_result (captures[1]), _r);
1272 1 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 358, __FILE__, __LINE__, true);
1273 1 : return _r;
1274 : }
1275 0 : next_after_fail447:;
1276 0 : }
1277 : else
1278 : {
1279 1 : if (cmp == NE_EXPR || !HONOR_NANS (captures[0])
1280 : )
1281 : {
1282 1 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail448;
1283 1 : {
1284 1 : tree _r;
1285 1 : _r = constant_boolean_node (true, type);
1286 1 : if (TREE_SIDE_EFFECTS (captures[0]))
1287 0 : _r = build2_loc (loc, COMPOUND_EXPR, type, fold_ignored_result (captures[0]), _r);
1288 1 : if (TREE_SIDE_EFFECTS (captures[1]))
1289 0 : _r = build2_loc (loc, COMPOUND_EXPR, type, fold_ignored_result (captures[1]), _r);
1290 1 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 359, __FILE__, __LINE__, true);
1291 1 : return _r;
1292 : }
1293 0 : next_after_fail448:;
1294 : }
1295 : else
1296 : {
1297 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail449;
1298 0 : {
1299 0 : tree res_op0;
1300 0 : res_op0 = captures[0];
1301 0 : tree res_op1;
1302 0 : res_op1 = build_real (TREE_TYPE (captures[0]), dconst0);
1303 0 : tree _r;
1304 0 : _r = fold_build2_loc (loc, GE_EXPR, type, res_op0, res_op1);
1305 0 : if (TREE_SIDE_EFFECTS (captures[1]))
1306 0 : _r = build2_loc (loc, COMPOUND_EXPR, type, fold_ignored_result (captures[1]), _r);
1307 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 360, __FILE__, __LINE__, true);
1308 0 : return _r;
1309 : }
1310 0 : next_after_fail449:;
1311 : }
1312 : }
1313 : }
1314 : else
1315 : {
1316 18 : if (real_equal (TREE_REAL_CST_PTR (captures[1]), &dconst0)
1317 : )
1318 : {
1319 0 : if (cmp == LT_EXPR
1320 : )
1321 : {
1322 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail450;
1323 0 : {
1324 0 : tree _r;
1325 0 : _r = constant_boolean_node (false, type);
1326 0 : if (TREE_SIDE_EFFECTS (captures[0]))
1327 0 : _r = build2_loc (loc, COMPOUND_EXPR, type, fold_ignored_result (captures[0]), _r);
1328 0 : if (TREE_SIDE_EFFECTS (captures[1]))
1329 0 : _r = build2_loc (loc, COMPOUND_EXPR, type, fold_ignored_result (captures[1]), _r);
1330 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 361, __FILE__, __LINE__, true);
1331 0 : return _r;
1332 : }
1333 0 : next_after_fail450:;
1334 : }
1335 : else
1336 : {
1337 0 : if (cmp == GE_EXPR && !HONOR_NANS (captures[0])
1338 : )
1339 : {
1340 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail451;
1341 0 : {
1342 0 : tree _r;
1343 0 : _r = constant_boolean_node (true, type);
1344 0 : if (TREE_SIDE_EFFECTS (captures[0]))
1345 0 : _r = build2_loc (loc, COMPOUND_EXPR, type, fold_ignored_result (captures[0]), _r);
1346 0 : if (TREE_SIDE_EFFECTS (captures[1]))
1347 0 : _r = build2_loc (loc, COMPOUND_EXPR, type, fold_ignored_result (captures[1]), _r);
1348 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 362, __FILE__, __LINE__, true);
1349 0 : return _r;
1350 : }
1351 0 : next_after_fail451:;
1352 : }
1353 : else
1354 : {
1355 0 : if (cmp == LE_EXPR
1356 : )
1357 : {
1358 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail452;
1359 0 : {
1360 0 : tree res_op0;
1361 0 : res_op0 = captures[0];
1362 0 : tree res_op1;
1363 0 : res_op1 = captures[1];
1364 0 : tree _r;
1365 0 : _r = fold_build2_loc (loc, EQ_EXPR, type, res_op0, res_op1);
1366 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 363, __FILE__, __LINE__, true);
1367 0 : return _r;
1368 : }
1369 0 : next_after_fail452:;
1370 : }
1371 : else
1372 : {
1373 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail453;
1374 0 : {
1375 0 : tree res_op0;
1376 0 : res_op0 = captures[0];
1377 0 : tree res_op1;
1378 0 : res_op1 = captures[1];
1379 0 : tree _r;
1380 0 : _r = fold_build2_loc (loc, cmp, type, res_op0, res_op1);
1381 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 364, __FILE__, __LINE__, true);
1382 0 : return _r;
1383 : }
1384 0 : next_after_fail453:;
1385 : }
1386 : }
1387 : }
1388 : }
1389 : else
1390 : {
1391 18 : if ((cmp == LT_EXPR
1392 : || cmp == LE_EXPR
1393 : || cmp == GT_EXPR
1394 18 : || cmp == GE_EXPR)
1395 16 : && !REAL_VALUE_ISNAN (TREE_REAL_CST (captures[1]))
1396 34 : && !HONOR_SIGN_DEPENDENT_ROUNDING (TREE_TYPE (captures[0]))
1397 : )
1398 : {
1399 16 : {
1400 16 : REAL_VALUE_TYPE c2;
1401 16 : enum tree_code ncmp = cmp;
1402 16 : const real_format *fmt
1403 16 : = REAL_MODE_FORMAT (TYPE_MODE (TREE_TYPE (captures[0])));
1404 32 : real_arithmetic (&c2, MULT_EXPR,
1405 16 : &TREE_REAL_CST (captures[1]), &TREE_REAL_CST (captures[1]));
1406 16 : real_convert (&c2, fmt, &c2);
1407 16 : if (!REAL_VALUE_ISINF (c2))
1408 : {
1409 13 : tree c3 = fold_const_call (CFN_SQRT, TREE_TYPE (captures[0]),
1410 13 : build_real (TREE_TYPE (captures[0]), c2));
1411 13 : if (c3 == NULL_TREE || TREE_CODE (c3) != REAL_CST)
1412 : ncmp = ERROR_MARK;
1413 13 : else if ((cmp == LT_EXPR || cmp == GE_EXPR)
1414 13 : && real_less (&TREE_REAL_CST (c3), &TREE_REAL_CST (captures[1])))
1415 4 : ncmp = cmp == LT_EXPR ? LE_EXPR : GT_EXPR;
1416 9 : else if ((cmp == LE_EXPR || cmp == GT_EXPR)
1417 13 : && real_less (&TREE_REAL_CST (captures[1]), &TREE_REAL_CST (c3)))
1418 1 : ncmp = cmp == LE_EXPR ? LT_EXPR : GE_EXPR;
1419 : else
1420 : {
1421 8 : REAL_VALUE_TYPE c2alt, tow;
1422 8 : if (cmp == LT_EXPR || cmp == GE_EXPR)
1423 5 : tow = dconst0;
1424 : else
1425 3 : tow = dconstinf;
1426 8 : real_nextafter (&c2alt, fmt, &c2, &tow);
1427 8 : real_convert (&c2alt, fmt, &c2alt);
1428 8 : if (REAL_VALUE_ISINF (c2alt))
1429 : ncmp = ERROR_MARK;
1430 : else
1431 : {
1432 8 : c3 = fold_const_call (CFN_SQRT, TREE_TYPE (captures[0]),
1433 8 : build_real (TREE_TYPE (captures[0]), c2alt));
1434 8 : if (c3 == NULL_TREE || TREE_CODE (c3) != REAL_CST)
1435 : ncmp = ERROR_MARK;
1436 8 : else if (real_equal (&TREE_REAL_CST (c3),
1437 8 : &TREE_REAL_CST (captures[1])))
1438 8 : c2 = c2alt;
1439 : }
1440 : }
1441 : }
1442 12 : if (cmp == GT_EXPR || cmp == GE_EXPR
1443 : )
1444 : {
1445 5 : if (REAL_VALUE_ISINF (c2)
1446 : )
1447 : {
1448 1 : if (HONOR_INFINITIES (captures[0])
1449 : )
1450 : {
1451 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail454;
1452 0 : {
1453 0 : tree res_op0;
1454 0 : res_op0 = captures[0];
1455 0 : tree res_op1;
1456 0 : res_op1 = build_real (TREE_TYPE (captures[0]), c2);
1457 0 : tree _r;
1458 0 : _r = fold_build2_loc (loc, EQ_EXPR, type, res_op0, res_op1);
1459 0 : if (TREE_SIDE_EFFECTS (captures[1]))
1460 0 : _r = build2_loc (loc, COMPOUND_EXPR, type, fold_ignored_result (captures[1]), _r);
1461 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 365, __FILE__, __LINE__, true);
1462 14 : return _r;
1463 : }
1464 0 : next_after_fail454:;
1465 : }
1466 : else
1467 : {
1468 1 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail455;
1469 1 : {
1470 1 : tree _r;
1471 1 : _r = constant_boolean_node (false, type);
1472 1 : if (TREE_SIDE_EFFECTS (captures[0]))
1473 0 : _r = build2_loc (loc, COMPOUND_EXPR, type, fold_ignored_result (captures[0]), _r);
1474 1 : if (TREE_SIDE_EFFECTS (captures[1]))
1475 0 : _r = build2_loc (loc, COMPOUND_EXPR, type, fold_ignored_result (captures[1]), _r);
1476 1 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 366, __FILE__, __LINE__, true);
1477 1 : return _r;
1478 : }
1479 0 : next_after_fail455:;
1480 : }
1481 : }
1482 : else
1483 : {
1484 4 : if (ncmp != ERROR_MARK
1485 : )
1486 : {
1487 4 : if (ncmp == GE_EXPR
1488 : )
1489 : {
1490 1 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail456;
1491 1 : {
1492 1 : tree res_op0;
1493 1 : res_op0 = captures[0];
1494 1 : tree res_op1;
1495 1 : res_op1 = build_real (TREE_TYPE (captures[0]), c2);
1496 1 : tree _r;
1497 1 : _r = fold_build2_loc (loc, GE_EXPR, type, res_op0, res_op1);
1498 1 : if (TREE_SIDE_EFFECTS (captures[1]))
1499 0 : _r = build2_loc (loc, COMPOUND_EXPR, type, fold_ignored_result (captures[1]), _r);
1500 1 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 367, __FILE__, __LINE__, true);
1501 1 : return _r;
1502 : }
1503 0 : next_after_fail456:;
1504 : }
1505 : else
1506 : {
1507 3 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail457;
1508 3 : {
1509 3 : tree res_op0;
1510 3 : res_op0 = captures[0];
1511 3 : tree res_op1;
1512 3 : res_op1 = build_real (TREE_TYPE (captures[0]), c2);
1513 3 : tree _r;
1514 3 : _r = fold_build2_loc (loc, GT_EXPR, type, res_op0, res_op1);
1515 3 : if (TREE_SIDE_EFFECTS (captures[1]))
1516 0 : _r = build2_loc (loc, COMPOUND_EXPR, type, fold_ignored_result (captures[1]), _r);
1517 3 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 368, __FILE__, __LINE__, true);
1518 3 : return _r;
1519 : }
1520 0 : next_after_fail457:;
1521 : }
1522 : }
1523 : }
1524 : }
1525 : else
1526 : {
1527 11 : if (REAL_VALUE_ISINF (c2)
1528 : )
1529 : {
1530 2 : if (! HONOR_NANS (captures[0]) && ! HONOR_INFINITIES (captures[0])
1531 : )
1532 : {
1533 1 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail458;
1534 1 : {
1535 1 : tree _r;
1536 1 : _r = constant_boolean_node (true, type);
1537 1 : if (TREE_SIDE_EFFECTS (captures[0]))
1538 0 : _r = build2_loc (loc, COMPOUND_EXPR, type, fold_ignored_result (captures[0]), _r);
1539 1 : if (TREE_SIDE_EFFECTS (captures[1]))
1540 0 : _r = build2_loc (loc, COMPOUND_EXPR, type, fold_ignored_result (captures[1]), _r);
1541 1 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 369, __FILE__, __LINE__, true);
1542 1 : return _r;
1543 : }
1544 0 : next_after_fail458:;
1545 : }
1546 : else
1547 : {
1548 1 : if (! HONOR_NANS (captures[0])
1549 : )
1550 : {
1551 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail459;
1552 0 : {
1553 0 : tree res_op0;
1554 0 : res_op0 = captures[0];
1555 0 : tree res_op1;
1556 0 : res_op1 = build_real (TREE_TYPE (captures[0]), c2);
1557 0 : tree _r;
1558 0 : _r = fold_build2_loc (loc, NE_EXPR, type, res_op0, res_op1);
1559 0 : if (TREE_SIDE_EFFECTS (captures[1]))
1560 0 : _r = build2_loc (loc, COMPOUND_EXPR, type, fold_ignored_result (captures[1]), _r);
1561 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 370, __FILE__, __LINE__, true);
1562 0 : return _r;
1563 : }
1564 0 : next_after_fail459:;
1565 : }
1566 : else
1567 : {
1568 1 : if (! HONOR_INFINITIES (captures[0])
1569 : )
1570 : {
1571 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail460;
1572 0 : {
1573 0 : tree res_op0;
1574 0 : res_op0 = captures[0];
1575 0 : tree res_op1;
1576 0 : res_op1 = build_real (TREE_TYPE (captures[0]), dconst0);
1577 0 : tree _r;
1578 0 : _r = fold_build2_loc (loc, GE_EXPR, type, res_op0, res_op1);
1579 0 : if (TREE_SIDE_EFFECTS (captures[1]))
1580 0 : _r = build2_loc (loc, COMPOUND_EXPR, type, fold_ignored_result (captures[1]), _r);
1581 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 371, __FILE__, __LINE__, true);
1582 0 : return _r;
1583 : }
1584 0 : next_after_fail460:;
1585 : }
1586 : else
1587 : {
1588 1 : if (1
1589 : )
1590 : {
1591 1 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail461;
1592 1 : {
1593 1 : if (! tree_invariant_p (captures[0])) goto next_after_fail461;
1594 0 : tree res_op0;
1595 0 : {
1596 0 : tree _o1[2], _r1;
1597 0 : _o1[0] = unshare_expr (captures[0]);
1598 0 : _o1[1] = build_real (TREE_TYPE (captures[0]), dconst0);
1599 0 : _r1 = fold_build2_loc (loc, GE_EXPR, type, _o1[0], _o1[1]);
1600 0 : res_op0 = _r1;
1601 : }
1602 0 : tree res_op1;
1603 0 : {
1604 0 : tree _o1[2], _r1;
1605 0 : _o1[0] = captures[0];
1606 0 : _o1[1] = build_real (TREE_TYPE (captures[0]), c2);
1607 0 : _r1 = fold_build2_loc (loc, NE_EXPR, type, _o1[0], _o1[1]);
1608 0 : res_op1 = _r1;
1609 : }
1610 0 : tree _r;
1611 0 : _r = fold_build2_loc (loc, TRUTH_ANDIF_EXPR, type, res_op0, res_op1);
1612 0 : if (TREE_SIDE_EFFECTS (captures[1]))
1613 0 : _r = build2_loc (loc, COMPOUND_EXPR, type, fold_ignored_result (captures[1]), _r);
1614 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 372, __FILE__, __LINE__, true);
1615 0 : return _r;
1616 : }
1617 2 : next_after_fail461:;
1618 : }
1619 : }
1620 : }
1621 : }
1622 : }
1623 : else
1624 : {
1625 9 : if (ncmp != ERROR_MARK && ! HONOR_NANS (captures[0])
1626 : )
1627 : {
1628 8 : if (ncmp == LT_EXPR
1629 : )
1630 : {
1631 4 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail462;
1632 4 : {
1633 4 : tree res_op0;
1634 4 : res_op0 = captures[0];
1635 4 : tree res_op1;
1636 4 : res_op1 = build_real (TREE_TYPE (captures[0]), c2);
1637 4 : tree _r;
1638 4 : _r = fold_build2_loc (loc, LT_EXPR, type, res_op0, res_op1);
1639 4 : if (TREE_SIDE_EFFECTS (captures[1]))
1640 0 : _r = build2_loc (loc, COMPOUND_EXPR, type, fold_ignored_result (captures[1]), _r);
1641 4 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 373, __FILE__, __LINE__, true);
1642 4 : return _r;
1643 : }
1644 0 : next_after_fail462:;
1645 : }
1646 : else
1647 : {
1648 4 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail463;
1649 4 : {
1650 4 : tree res_op0;
1651 4 : res_op0 = captures[0];
1652 4 : tree res_op1;
1653 4 : res_op1 = build_real (TREE_TYPE (captures[0]), c2);
1654 4 : tree _r;
1655 4 : _r = fold_build2_loc (loc, LE_EXPR, type, res_op0, res_op1);
1656 4 : if (TREE_SIDE_EFFECTS (captures[1]))
1657 0 : _r = build2_loc (loc, COMPOUND_EXPR, type, fold_ignored_result (captures[1]), _r);
1658 4 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 374, __FILE__, __LINE__, true);
1659 4 : return _r;
1660 : }
1661 0 : next_after_fail463:;
1662 : }
1663 : }
1664 : else
1665 : {
1666 1 : if (ncmp != ERROR_MARK &&
1667 : 1
1668 : )
1669 : {
1670 1 : if (ncmp == LT_EXPR
1671 : )
1672 : {
1673 1 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail464;
1674 1 : {
1675 1 : if (! tree_invariant_p (captures[0])) goto next_after_fail464;
1676 0 : tree res_op0;
1677 0 : {
1678 0 : tree _o1[2], _r1;
1679 0 : _o1[0] = unshare_expr (captures[0]);
1680 0 : _o1[1] = build_real (TREE_TYPE (captures[0]), dconst0);
1681 0 : _r1 = fold_build2_loc (loc, GE_EXPR, type, _o1[0], _o1[1]);
1682 0 : res_op0 = _r1;
1683 : }
1684 0 : tree res_op1;
1685 0 : {
1686 0 : tree _o1[2], _r1;
1687 0 : _o1[0] = captures[0];
1688 0 : _o1[1] = build_real (TREE_TYPE (captures[0]), c2);
1689 0 : _r1 = fold_build2_loc (loc, LT_EXPR, type, _o1[0], _o1[1]);
1690 0 : res_op1 = _r1;
1691 : }
1692 0 : tree _r;
1693 0 : _r = fold_build2_loc (loc, TRUTH_ANDIF_EXPR, type, res_op0, res_op1);
1694 0 : if (TREE_SIDE_EFFECTS (captures[1]))
1695 0 : _r = build2_loc (loc, COMPOUND_EXPR, type, fold_ignored_result (captures[1]), _r);
1696 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 375, __FILE__, __LINE__, true);
1697 0 : return _r;
1698 : }
1699 2 : next_after_fail464:;
1700 : }
1701 : else
1702 : {
1703 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail465;
1704 0 : {
1705 0 : if (! tree_invariant_p (captures[0])) goto next_after_fail465;
1706 0 : tree res_op0;
1707 0 : {
1708 0 : tree _o1[2], _r1;
1709 0 : _o1[0] = unshare_expr (captures[0]);
1710 0 : _o1[1] = build_real (TREE_TYPE (captures[0]), dconst0);
1711 0 : _r1 = fold_build2_loc (loc, GE_EXPR, type, _o1[0], _o1[1]);
1712 0 : res_op0 = _r1;
1713 : }
1714 0 : tree res_op1;
1715 0 : {
1716 0 : tree _o1[2], _r1;
1717 0 : _o1[0] = captures[0];
1718 0 : _o1[1] = build_real (TREE_TYPE (captures[0]), c2);
1719 0 : _r1 = fold_build2_loc (loc, LE_EXPR, type, _o1[0], _o1[1]);
1720 0 : res_op1 = _r1;
1721 : }
1722 0 : tree _r;
1723 0 : _r = fold_build2_loc (loc, TRUTH_ANDIF_EXPR, type, res_op0, res_op1);
1724 0 : if (TREE_SIDE_EFFECTS (captures[1]))
1725 0 : _r = build2_loc (loc, COMPOUND_EXPR, type, fold_ignored_result (captures[1]), _r);
1726 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 376, __FILE__, __LINE__, true);
1727 0 : return _r;
1728 : }
1729 2 : next_after_fail465:;
1730 : }
1731 : }
1732 : }
1733 : }
1734 : }
1735 : }
1736 : }
1737 : }
1738 : }
1739 : }
1740 : return NULL_TREE;
1741 : }
1742 :
1743 : tree
1744 0 : generic_simplify_332 (location_t ARG_UNUSED (loc), const tree ARG_UNUSED (type),
1745 : tree ARG_UNUSED (_p0), tree ARG_UNUSED (_p1), tree *ARG_UNUSED (captures),
1746 : const combined_fn ARG_UNUSED (SQRT))
1747 : {
1748 0 : const bool debug_dump = dump_file && (dump_flags & TDF_FOLDING);
1749 0 : if (flag_unsafe_math_optimizations
1750 : )
1751 : {
1752 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail603;
1753 0 : {
1754 0 : tree res_op0;
1755 0 : res_op0 = captures[0];
1756 0 : tree _r;
1757 0 : _r = maybe_build_call_expr_loc (loc, SQRT, type, 1, res_op0);
1758 0 : if (!_r)
1759 0 : goto next_after_fail603;
1760 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 494, __FILE__, __LINE__, true);
1761 0 : return _r;
1762 : }
1763 : next_after_fail603:;
1764 : }
1765 : return NULL_TREE;
1766 : }
1767 :
1768 : tree
1769 4 : generic_simplify_339 (location_t ARG_UNUSED (loc), const tree ARG_UNUSED (type),
1770 : tree ARG_UNUSED (_p0), tree ARG_UNUSED (_p1), tree *ARG_UNUSED (captures),
1771 : const combined_fn ARG_UNUSED (POW))
1772 : {
1773 4 : const bool debug_dump = dump_file && (dump_flags & TDF_FOLDING);
1774 4 : if (flag_unsafe_math_optimizations && canonicalize_math_p ()
1775 : )
1776 : {
1777 4 : if (!TREE_OVERFLOW (captures[2])
1778 : )
1779 : {
1780 4 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail610;
1781 4 : {
1782 4 : tree res_op0;
1783 4 : res_op0 = captures[1];
1784 4 : tree res_op1;
1785 4 : {
1786 4 : tree _o1[2], _r1;
1787 4 : _o1[0] = captures[2];
1788 4 : _o1[1] = build_one_cst (type);
1789 4 : _r1 = fold_build2_loc (loc, MINUS_EXPR, TREE_TYPE (_o1[0]), _o1[0], _o1[1]);
1790 4 : res_op1 = _r1;
1791 : }
1792 4 : tree _r;
1793 4 : _r = maybe_build_call_expr_loc (loc, POW, type, 2, res_op0, res_op1);
1794 4 : if (!_r)
1795 0 : goto next_after_fail610;
1796 4 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 501, __FILE__, __LINE__, true);
1797 4 : return _r;
1798 : }
1799 : next_after_fail610:;
1800 : }
1801 : }
1802 : return NULL_TREE;
1803 : }
1804 :
1805 : tree
1806 0 : generic_simplify_347 (location_t ARG_UNUSED (loc), const tree ARG_UNUSED (type),
1807 : tree ARG_UNUSED (_p0), tree ARG_UNUSED (_p1), tree ARG_UNUSED (_p2), tree *ARG_UNUSED (captures),
1808 : const enum tree_code ARG_UNUSED (cmp),
1809 : const enum tree_code ARG_UNUSED (minmax))
1810 : {
1811 0 : const bool debug_dump = dump_file && (dump_flags & TDF_FOLDING);
1812 0 : if (!TYPE_UNSIGNED (TREE_TYPE (captures[1]))
1813 0 : && TYPE_UNSIGNED (TREE_TYPE (captures[0]))
1814 : )
1815 : {
1816 0 : {
1817 0 : tree_code code;
1818 0 : widest_int c1 = wi::mask<widest_int>(TYPE_PRECISION (type) - 1, 0);
1819 0 : tree_code ncmp = cmp == GE_EXPR ? LE_EXPR : GT_EXPR;
1820 0 : code = minmax_from_comparison (ncmp, captures[0], c1, wi::to_widest (captures[4]));
1821 0 : if (ncmp == LE_EXPR
1822 0 : && code == MIN_EXPR
1823 0 : && wi::le_p (wi::to_wide (captures[3]),
1824 0 : wi::to_wide (captures[4]),
1825 0 : TYPE_SIGN (type))
1826 : )
1827 : {
1828 0 : if (TREE_SIDE_EFFECTS (_p1)) goto next_after_fail623;
1829 0 : if (TREE_SIDE_EFFECTS (captures[4])) goto next_after_fail623;
1830 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail623;
1831 0 : {
1832 0 : tree res_op0;
1833 0 : res_op0 = captures[2];
1834 0 : tree res_op1;
1835 0 : res_op1 = captures[4];
1836 0 : tree _r;
1837 0 : _r = fold_build2_loc (loc, MIN_EXPR, type, res_op0, res_op1);
1838 0 : if (TREE_SIDE_EFFECTS (captures[1]))
1839 0 : _r = build2_loc (loc, COMPOUND_EXPR, type, fold_ignored_result (captures[1]), _r);
1840 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 514, __FILE__, __LINE__, true);
1841 0 : return _r;
1842 : }
1843 0 : next_after_fail623:;
1844 : }
1845 : else
1846 : {
1847 0 : if (ncmp == GT_EXPR
1848 0 : && code == MAX_EXPR
1849 0 : && wi::ge_p (wi::to_wide (captures[3]),
1850 0 : wi::to_wide (captures[4]),
1851 0 : TYPE_SIGN (type))
1852 : )
1853 : {
1854 0 : if (TREE_SIDE_EFFECTS (_p1)) goto next_after_fail624;
1855 0 : if (TREE_SIDE_EFFECTS (captures[4])) goto next_after_fail624;
1856 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail624;
1857 0 : {
1858 0 : tree res_op0;
1859 0 : res_op0 = captures[2];
1860 0 : tree res_op1;
1861 0 : res_op1 = captures[4];
1862 0 : tree _r;
1863 0 : _r = fold_build2_loc (loc, MAX_EXPR, type, res_op0, res_op1);
1864 0 : if (TREE_SIDE_EFFECTS (captures[1]))
1865 0 : _r = build2_loc (loc, COMPOUND_EXPR, type, fold_ignored_result (captures[1]), _r);
1866 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 515, __FILE__, __LINE__, true);
1867 0 : return _r;
1868 : }
1869 0 : next_after_fail624:;
1870 : }
1871 : }
1872 0 : }
1873 : }
1874 : return NULL_TREE;
1875 : }
1876 :
1877 : tree
1878 0 : generic_simplify_364 (location_t ARG_UNUSED (loc), const tree ARG_UNUSED (type),
1879 : tree ARG_UNUSED (_p0), tree ARG_UNUSED (_p1), tree ARG_UNUSED (_p2), tree *ARG_UNUSED (captures),
1880 : const enum tree_code ARG_UNUSED (op))
1881 : {
1882 0 : const bool debug_dump = dump_file && (dump_flags & TDF_FOLDING);
1883 0 : if (TREE_SIDE_EFFECTS (_p1)) goto next_after_fail641;
1884 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail641;
1885 0 : {
1886 0 : tree _r;
1887 0 : _r = captures[2];
1888 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 532, __FILE__, __LINE__, true);
1889 : return _r;
1890 : }
1891 : next_after_fail641:;
1892 : return NULL_TREE;
1893 : }
1894 :
1895 : tree
1896 3 : generic_simplify_370 (location_t ARG_UNUSED (loc), const tree ARG_UNUSED (type),
1897 : tree ARG_UNUSED (_p0), tree ARG_UNUSED (_p1), tree ARG_UNUSED (_p2), tree *ARG_UNUSED (captures),
1898 : const combined_fn ARG_UNUSED (func))
1899 : {
1900 3 : const bool debug_dump = dump_file && (dump_flags & TDF_FOLDING);
1901 3 : if (wi::to_widest (captures[4]) == TYPE_PRECISION (TREE_TYPE (captures[3])) - 1
1902 : )
1903 : {
1904 3 : if (TREE_SIDE_EFFECTS (_p1)) goto next_after_fail648;
1905 3 : if (TREE_SIDE_EFFECTS (captures[4])) goto next_after_fail648;
1906 3 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail648;
1907 3 : {
1908 3 : tree _r;
1909 3 : _r = captures[2];
1910 3 : if (TREE_SIDE_EFFECTS (captures[1]))
1911 0 : _r = build2_loc (loc, COMPOUND_EXPR, type, fold_ignored_result (captures[1]), _r);
1912 3 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 538, __FILE__, __LINE__, true);
1913 3 : return _r;
1914 : }
1915 : next_after_fail648:;
1916 : }
1917 : return NULL_TREE;
1918 : }
1919 :
1920 : tree
1921 161865 : generic_simplify_378 (location_t ARG_UNUSED (loc), const tree ARG_UNUSED (type),
1922 : tree ARG_UNUSED (_p0), tree ARG_UNUSED (_p1), tree *ARG_UNUSED (captures),
1923 : const enum tree_code ARG_UNUSED (op))
1924 : {
1925 161865 : const bool debug_dump = dump_file && (dump_flags & TDF_FOLDING);
1926 323730 : if (ANY_INTEGRAL_TYPE_P (TREE_TYPE (captures[0]))
1927 323730 : && TYPE_OVERFLOW_UNDEFINED (TREE_TYPE (captures[0]))
1928 : )
1929 : {
1930 68196 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail660;
1931 68196 : {
1932 68196 : tree res_op0;
1933 68196 : res_op0 = captures[0];
1934 68196 : tree res_op1;
1935 68196 : res_op1 = captures[2];
1936 68196 : tree _r;
1937 68196 : _r = fold_build2_loc (loc, op, type, res_op0, res_op1);
1938 68196 : if (TREE_SIDE_EFFECTS (captures[1]))
1939 0 : _r = build2_loc (loc, COMPOUND_EXPR, type, fold_ignored_result (captures[1]), _r);
1940 68196 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 549, __FILE__, __LINE__, true);
1941 68196 : return _r;
1942 : }
1943 0 : next_after_fail660:;
1944 : }
1945 : return NULL_TREE;
1946 : }
1947 :
1948 : tree
1949 3936 : generic_simplify_383 (location_t ARG_UNUSED (loc), const tree ARG_UNUSED (type),
1950 : tree ARG_UNUSED (_p0), tree ARG_UNUSED (_p1), tree *ARG_UNUSED (captures),
1951 : const enum tree_code ARG_UNUSED (cmp),
1952 : const enum tree_code ARG_UNUSED (bitop))
1953 : {
1954 3936 : const bool debug_dump = dump_file && (dump_flags & TDF_FOLDING);
1955 3936 : if (INTEGRAL_TYPE_P (TREE_TYPE (captures[0]))
1956 : )
1957 : {
1958 3936 : if (bitop == BIT_AND_EXPR || tree_expr_nonnegative_p (captures[1])
1959 : )
1960 : {
1961 3936 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail665;
1962 3936 : {
1963 3936 : tree _r;
1964 3936 : _r = constant_boolean_node (cmp == GE_EXPR || cmp == LE_EXPR, type);
1965 3936 : if (TREE_SIDE_EFFECTS (captures[0]))
1966 0 : _r = build2_loc (loc, COMPOUND_EXPR, type, fold_ignored_result (captures[0]), _r);
1967 3936 : if (TREE_SIDE_EFFECTS (captures[1]))
1968 0 : _r = build2_loc (loc, COMPOUND_EXPR, type, fold_ignored_result (captures[1]), _r);
1969 3936 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 554, __FILE__, __LINE__, true);
1970 3936 : return _r;
1971 : }
1972 0 : next_after_fail665:;
1973 : }
1974 : else
1975 : {
1976 0 : if (TREE_CODE (captures[1]) == INTEGER_CST && wi::neg_p (wi::to_wide (captures[1]))
1977 : )
1978 : {
1979 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail666;
1980 0 : {
1981 0 : tree _r;
1982 0 : _r = constant_boolean_node (cmp == LT_EXPR, type);
1983 0 : if (TREE_SIDE_EFFECTS (captures[0]))
1984 0 : _r = build2_loc (loc, COMPOUND_EXPR, type, fold_ignored_result (captures[0]), _r);
1985 0 : if (TREE_SIDE_EFFECTS (captures[1]))
1986 0 : _r = build2_loc (loc, COMPOUND_EXPR, type, fold_ignored_result (captures[1]), _r);
1987 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 555, __FILE__, __LINE__, true);
1988 0 : return _r;
1989 : }
1990 0 : next_after_fail666:;
1991 : }
1992 : }
1993 : }
1994 : return NULL_TREE;
1995 : }
1996 :
1997 : tree
1998 2 : generic_simplify_397 (location_t ARG_UNUSED (loc), const tree ARG_UNUSED (type),
1999 : tree ARG_UNUSED (_p0), tree ARG_UNUSED (_p1), tree *ARG_UNUSED (captures),
2000 : const enum tree_code ARG_UNUSED (cmp))
2001 : {
2002 2 : const bool debug_dump = dump_file && (dump_flags & TDF_FOLDING);
2003 4 : if (ANY_INTEGRAL_TYPE_P (TREE_TYPE (captures[0]))
2004 4 : && TYPE_UNSIGNED (TREE_TYPE (captures[0]))
2005 : )
2006 : {
2007 2 : if (TREE_SIDE_EFFECTS (_p0)) goto next_after_fail712;
2008 2 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail712;
2009 2 : {
2010 2 : tree res_op0;
2011 2 : res_op0 = captures[1];
2012 2 : tree res_op1;
2013 2 : res_op1 = captures[0];
2014 2 : tree _r;
2015 2 : _r = fold_build2_loc (loc, cmp, type, res_op0, res_op1);
2016 2 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 584, __FILE__, __LINE__, true);
2017 2 : return _r;
2018 : }
2019 : next_after_fail712:;
2020 : }
2021 : return NULL_TREE;
2022 : }
2023 :
2024 : tree
2025 2461916 : generic_simplify_402 (location_t ARG_UNUSED (loc), const tree ARG_UNUSED (type),
2026 : tree ARG_UNUSED (_p0), tree ARG_UNUSED (_p1), tree *ARG_UNUSED (captures),
2027 : const enum tree_code ARG_UNUSED (op),
2028 : const enum tree_code ARG_UNUSED (rop),
2029 : const enum tree_code ARG_UNUSED (cmp),
2030 : const enum tree_code ARG_UNUSED (rcmp))
2031 : {
2032 2461916 : const bool debug_dump = dump_file && (dump_flags & TDF_FOLDING);
2033 4923818 : if (!TREE_OVERFLOW (captures[2]) && !TREE_OVERFLOW (captures[3])
2034 4923806 : && TYPE_OVERFLOW_UNDEFINED (TREE_TYPE (captures[1]))
2035 : )
2036 : {
2037 889678 : {
2038 889678 : tree res = int_const_binop (rop, captures[3], captures[2]);
2039 889678 : if (TREE_OVERFLOW (res)
2040 : )
2041 : {
2042 12964 : if (TREE_SIDE_EFFECTS (captures[2])) goto next_after_fail718;
2043 12964 : if (TREE_SIDE_EFFECTS (captures[3])) goto next_after_fail718;
2044 12964 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail718;
2045 12964 : {
2046 12964 : tree _r;
2047 12964 : bool less = cmp == LE_EXPR || cmp == LT_EXPR;
2048 12964 : bool ovf_high = wi::lt_p (wi::to_wide (captures[2]), 0,
2049 12964 : TYPE_SIGN (TREE_TYPE (captures[2])))
2050 12964 : != (op == MINUS_EXPR); _r =
2051 12964 : constant_boolean_node (less == ovf_high, type);
2052 12964 : if (TREE_SIDE_EFFECTS (captures[1]))
2053 0 : _r = build2_loc (loc, COMPOUND_EXPR, type, fold_ignored_result (captures[1]), _r);
2054 12964 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 590, __FILE__, __LINE__, true);
2055 12964 : return _r;
2056 : }
2057 : next_after_fail718:;
2058 : }
2059 : else
2060 : {
2061 876714 : if (single_use (captures[0])
2062 : )
2063 : {
2064 876714 : if (TREE_SIDE_EFFECTS (captures[2])) goto next_after_fail719;
2065 876714 : if (TREE_SIDE_EFFECTS (captures[3])) goto next_after_fail719;
2066 876714 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail719;
2067 876714 : {
2068 876714 : tree res_op0;
2069 876714 : res_op0 = captures[1];
2070 876714 : tree res_op1;
2071 876714 : res_op1 = res;
2072 876714 : tree _r;
2073 876714 : _r = fold_build2_loc (loc, cmp, type, res_op0, res_op1);
2074 876714 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 591, __FILE__, __LINE__, true);
2075 876714 : return _r;
2076 : }
2077 : next_after_fail719:;
2078 : }
2079 : }
2080 : }
2081 : }
2082 : else
2083 : {
2084 1572238 : if (TYPE_OVERFLOW_WRAPS (TREE_TYPE (captures[1]))
2085 : )
2086 : {
2087 1572115 : {
2088 1572115 : wide_int max = wi::max_value (TREE_TYPE (captures[1]));
2089 1572115 : wide_int min = wi::min_value (TREE_TYPE (captures[1]));
2090 1572115 : wide_int c2 = rop == PLUS_EXPR
2091 1572115 : ? wi::add (wi::to_wide (captures[3]), wi::to_wide (captures[2]))
2092 1572115 : : wi::sub (wi::to_wide (captures[3]), wi::to_wide (captures[2]));
2093 1500422 : if (((cmp == LE_EXPR || cmp == GT_EXPR) && wi::eq_p (c2, max))
2094 3057593 : || ((cmp == LT_EXPR || cmp == GE_EXPR) && wi::eq_p (c2, min))
2095 : )
2096 : {
2097 15102 : {
2098 15102 : wide_int c1 = rop == PLUS_EXPR
2099 15102 : ? wi::add (wi::bit_not (c2), wi::to_wide (captures[2]))
2100 30204 : : wi::sub (wi::bit_not (c2), wi::to_wide (captures[2]));
2101 15102 : tree c1_cst = wide_int_to_tree (TREE_TYPE (captures[1]), c1);
2102 15102 : if (TREE_SIDE_EFFECTS (captures[2])) goto next_after_fail720;
2103 15102 : if (TREE_SIDE_EFFECTS (captures[3])) goto next_after_fail720;
2104 15102 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail720;
2105 15102 : {
2106 15102 : tree res_op0;
2107 15102 : res_op0 = captures[1];
2108 15102 : tree res_op1;
2109 15102 : res_op1 = c1_cst;
2110 15102 : tree _r;
2111 15102 : _r = fold_build2_loc (loc, rcmp, type, res_op0, res_op1);
2112 15102 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 592, __FILE__, __LINE__, true);
2113 15102 : return _r;
2114 : }
2115 0 : next_after_fail720:;
2116 15102 : }
2117 : }
2118 1572117 : }
2119 : }
2120 : }
2121 : return NULL_TREE;
2122 : }
2123 :
2124 : tree
2125 2561 : generic_simplify_419 (location_t ARG_UNUSED (loc), const tree ARG_UNUSED (type),
2126 : tree ARG_UNUSED (_p0), tree ARG_UNUSED (_p1), tree *ARG_UNUSED (captures),
2127 : const enum tree_code ARG_UNUSED (shiftrotate))
2128 : {
2129 2561 : const bool debug_dump = dump_file && (dump_flags & TDF_FOLDING);
2130 2561 : if (TREE_SIDE_EFFECTS (_p1)) goto next_after_fail745;
2131 2561 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail745;
2132 2561 : {
2133 2561 : tree res_op0;
2134 2561 : res_op0 = captures[0];
2135 2561 : tree _r;
2136 2561 : _r = non_lvalue_loc (loc, res_op0);
2137 2561 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 613, __FILE__, __LINE__, true);
2138 : return _r;
2139 : }
2140 : next_after_fail745:;
2141 : return NULL_TREE;
2142 : }
2143 :
2144 : tree
2145 86 : generic_simplify_423 (location_t ARG_UNUSED (loc), const tree ARG_UNUSED (type),
2146 : tree ARG_UNUSED (_p0), tree ARG_UNUSED (_p1), tree *ARG_UNUSED (captures),
2147 : const enum tree_code ARG_UNUSED (op))
2148 : {
2149 86 : const bool debug_dump = dump_file && (dump_flags & TDF_FOLDING);
2150 86 : {
2151 86 : unsigned int prec = element_precision (type);
2152 86 : if (wi::ge_p (wi::to_wide (captures[1]), 0, TYPE_SIGN (TREE_TYPE (captures[1])))
2153 86 : && wi::lt_p (wi::to_wide (captures[1]), prec, TYPE_SIGN (TREE_TYPE (captures[1])))
2154 86 : && wi::ge_p (wi::to_wide (captures[2]), 0, TYPE_SIGN (TREE_TYPE (captures[2])))
2155 172 : && wi::lt_p (wi::to_wide (captures[2]), prec, TYPE_SIGN (TREE_TYPE (captures[2])))
2156 : )
2157 : {
2158 86 : {
2159 86 : unsigned int low = (tree_to_uhwi (captures[1])
2160 86 : + tree_to_uhwi (captures[2]));
2161 86 : if (low >= prec
2162 : )
2163 : {
2164 25 : if (op == LROTATE_EXPR || op == RROTATE_EXPR
2165 : )
2166 : {
2167 0 : if (TREE_SIDE_EFFECTS (captures[1])) goto next_after_fail749;
2168 0 : if (TREE_SIDE_EFFECTS (captures[2])) goto next_after_fail749;
2169 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail749;
2170 0 : {
2171 0 : tree res_op0;
2172 0 : res_op0 = captures[0];
2173 0 : tree res_op1;
2174 0 : res_op1 = build_int_cst (TREE_TYPE (captures[1]), low % prec);
2175 0 : tree _r;
2176 0 : _r = fold_build2_loc (loc, op, type, res_op0, res_op1);
2177 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 616, __FILE__, __LINE__, true);
2178 86 : return _r;
2179 : }
2180 : next_after_fail749:;
2181 : }
2182 : else
2183 : {
2184 25 : if (TYPE_UNSIGNED (type) || op == LSHIFT_EXPR
2185 : )
2186 : {
2187 24 : if (TREE_SIDE_EFFECTS (captures[1])) goto next_after_fail750;
2188 24 : if (TREE_SIDE_EFFECTS (captures[2])) goto next_after_fail750;
2189 24 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail750;
2190 24 : {
2191 24 : tree _r;
2192 24 : _r = build_zero_cst (type);
2193 24 : if (TREE_SIDE_EFFECTS (captures[0]))
2194 14 : _r = build2_loc (loc, COMPOUND_EXPR, type, fold_ignored_result (captures[0]), _r);
2195 24 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 617, __FILE__, __LINE__, true);
2196 24 : return _r;
2197 : }
2198 : next_after_fail750:;
2199 : }
2200 : else
2201 : {
2202 1 : if (TREE_SIDE_EFFECTS (captures[1])) goto next_after_fail751;
2203 1 : if (TREE_SIDE_EFFECTS (captures[2])) goto next_after_fail751;
2204 1 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail751;
2205 1 : {
2206 1 : tree res_op0;
2207 1 : res_op0 = captures[0];
2208 1 : tree res_op1;
2209 1 : res_op1 = build_int_cst (TREE_TYPE (captures[1]), prec - 1);
2210 1 : tree _r;
2211 1 : _r = fold_build2_loc (loc, op, type, res_op0, res_op1);
2212 1 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 618, __FILE__, __LINE__, true);
2213 1 : return _r;
2214 : }
2215 : next_after_fail751:;
2216 : }
2217 : }
2218 : }
2219 : else
2220 : {
2221 61 : if (TREE_SIDE_EFFECTS (captures[1])) goto next_after_fail752;
2222 61 : if (TREE_SIDE_EFFECTS (captures[2])) goto next_after_fail752;
2223 61 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail752;
2224 61 : {
2225 61 : tree res_op0;
2226 61 : res_op0 = captures[0];
2227 61 : tree res_op1;
2228 61 : res_op1 = build_int_cst (TREE_TYPE (captures[1]), low);
2229 61 : tree _r;
2230 61 : _r = fold_build2_loc (loc, op, type, res_op0, res_op1);
2231 61 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 619, __FILE__, __LINE__, true);
2232 61 : return _r;
2233 : }
2234 : next_after_fail752:;
2235 : }
2236 : }
2237 : }
2238 : }
2239 0 : return NULL_TREE;
2240 : }
2241 :
2242 : tree
2243 0 : generic_simplify_438 (location_t ARG_UNUSED (loc), const tree ARG_UNUSED (type),
2244 : tree ARG_UNUSED (_p0), tree *ARG_UNUSED (captures),
2245 : const combined_fn ARG_UNUSED (coss),
2246 : const combined_fn ARG_UNUSED (atans),
2247 : const combined_fn ARG_UNUSED (sqrts),
2248 : const combined_fn ARG_UNUSED (copysigns))
2249 : {
2250 0 : const bool debug_dump = dump_file && (dump_flags & TDF_FOLDING);
2251 0 : {
2252 0 : REAL_VALUE_TYPE r_cst;
2253 0 : build_sinatan_real (&r_cst, type);
2254 0 : tree t_cst = build_real (type, r_cst);
2255 0 : tree t_one = build_one_cst (type);
2256 0 : tree t_zero = build_zero_cst (type);
2257 0 : if (SCALAR_FLOAT_TYPE_P (type)
2258 : )
2259 : {
2260 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail785;
2261 0 : {
2262 0 : if (! tree_invariant_p (captures[1])) goto next_after_fail785;
2263 0 : tree res_op0;
2264 0 : {
2265 0 : tree _o1[2], _r1;
2266 0 : {
2267 0 : tree _o2[1], _r2;
2268 0 : _o2[0] = unshare_expr (captures[1]);
2269 0 : _r2 = fold_build1_loc (loc, ABS_EXPR, TREE_TYPE (_o2[0]), _o2[0]);
2270 0 : _o1[0] = _r2;
2271 : }
2272 0 : _o1[1] = t_cst;
2273 0 : _r1 = fold_build2_loc (loc, LT_EXPR, boolean_type_node, _o1[0], _o1[1]);
2274 0 : res_op0 = _r1;
2275 : }
2276 0 : tree res_op1;
2277 0 : {
2278 0 : tree _o1[2], _r1;
2279 0 : _o1[0] = t_one;
2280 0 : {
2281 0 : tree _o2[1], _r2;
2282 0 : {
2283 0 : tree _o3[2], _r3;
2284 0 : {
2285 0 : tree _o4[2], _r4;
2286 0 : _o4[0] = unshare_expr (captures[1]);
2287 0 : _o4[1] = unshare_expr (captures[1]);
2288 0 : _r4 = fold_build2_loc (loc, MULT_EXPR, TREE_TYPE (_o4[0]), _o4[0], _o4[1]);
2289 0 : _o3[0] = _r4;
2290 : }
2291 0 : _o3[1] = t_one;
2292 0 : _r3 = fold_build2_loc (loc, PLUS_EXPR, TREE_TYPE (_o3[0]), _o3[0], _o3[1]);
2293 0 : _o2[0] = _r3;
2294 : }
2295 0 : _r2 = maybe_build_call_expr_loc (loc, sqrts, TREE_TYPE (_o2[0]), 1, _o2[0]);
2296 0 : if (!_r2)
2297 0 : goto next_after_fail785;
2298 0 : _o1[1] = _r2;
2299 : }
2300 0 : _r1 = fold_build2_loc (loc, RDIV_EXPR, TREE_TYPE (_o1[0]), _o1[0], _o1[1]);
2301 0 : res_op1 = _r1;
2302 : }
2303 0 : tree res_op2;
2304 0 : {
2305 0 : tree _o1[2], _r1;
2306 0 : _o1[0] = t_zero;
2307 0 : _o1[1] = captures[1];
2308 0 : _r1 = maybe_build_call_expr_loc (loc, copysigns, TREE_TYPE (_o1[0]), 2, _o1[0], _o1[1]);
2309 0 : if (!_r1)
2310 0 : goto next_after_fail785;
2311 0 : res_op2 = _r1;
2312 : }
2313 0 : tree _r;
2314 0 : _r = fold_build3_loc (loc, COND_EXPR, type, res_op0, res_op1, res_op2);
2315 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 639, __FILE__, __LINE__, true);
2316 0 : return _r;
2317 : }
2318 0 : next_after_fail785:;
2319 : }
2320 : }
2321 0 : return NULL_TREE;
2322 : }
2323 :
2324 : tree
2325 0 : generic_simplify_444 (location_t ARG_UNUSED (loc), const tree ARG_UNUSED (type),
2326 : tree ARG_UNUSED (_p0), tree ARG_UNUSED (_p1), tree *ARG_UNUSED (captures))
2327 : {
2328 0 : const bool debug_dump = dump_file && (dump_flags & TDF_FOLDING);
2329 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail791;
2330 0 : {
2331 0 : tree _r;
2332 0 : _r = captures[0];
2333 0 : if (TREE_SIDE_EFFECTS (captures[1]))
2334 0 : _r = build2_loc (loc, COMPOUND_EXPR, type, fold_ignored_result (captures[1]), _r);
2335 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 645, __FILE__, __LINE__, true);
2336 : return _r;
2337 : }
2338 0 : next_after_fail791:;
2339 0 : return NULL_TREE;
2340 : }
2341 :
2342 : tree
2343 0 : generic_simplify_448 (location_t ARG_UNUSED (loc), const tree ARG_UNUSED (type),
2344 : tree ARG_UNUSED (_p0), tree ARG_UNUSED (_p1), tree *ARG_UNUSED (captures),
2345 : const combined_fn ARG_UNUSED (HYPOT))
2346 : {
2347 0 : const bool debug_dump = dump_file && (dump_flags & TDF_FOLDING);
2348 0 : if (flag_unsafe_math_optimizations && canonicalize_math_p ()
2349 : )
2350 : {
2351 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail795;
2352 0 : {
2353 0 : tree res_op0;
2354 0 : {
2355 0 : tree _o1[1], _r1;
2356 0 : _o1[0] = captures[0];
2357 0 : _r1 = fold_build1_loc (loc, ABS_EXPR, TREE_TYPE (_o1[0]), _o1[0]);
2358 0 : res_op0 = _r1;
2359 : }
2360 0 : tree res_op1;
2361 0 : res_op1 = build_real_truncate (type, dconst_sqrt2 ());
2362 0 : tree _r;
2363 0 : _r = fold_build2_loc (loc, MULT_EXPR, type, res_op0, res_op1);
2364 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 649, __FILE__, __LINE__, true);
2365 0 : return _r;
2366 : }
2367 0 : next_after_fail795:;
2368 : }
2369 : return NULL_TREE;
2370 : }
2371 :
2372 : tree
2373 1 : generic_simplify_453 (location_t ARG_UNUSED (loc), const tree ARG_UNUSED (type),
2374 : tree ARG_UNUSED (_p0), tree ARG_UNUSED (_p1), tree *ARG_UNUSED (captures))
2375 : {
2376 1 : const bool debug_dump = dump_file && (dump_flags & TDF_FOLDING);
2377 1 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail800;
2378 1 : {
2379 1 : tree res_op0;
2380 1 : res_op0 = captures[0];
2381 1 : tree res_op1;
2382 1 : res_op1 = captures[1];
2383 1 : tree _r;
2384 1 : _r = fold_build2_loc (loc, BIT_AND_EXPR, type, res_op0, res_op1);
2385 1 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 654, __FILE__, __LINE__, true);
2386 : return _r;
2387 : }
2388 0 : next_after_fail800:;
2389 0 : return NULL_TREE;
2390 : }
2391 :
2392 : tree
2393 904910 : generic_simplify_459 (location_t ARG_UNUSED (loc), const tree ARG_UNUSED (type),
2394 : tree ARG_UNUSED (_p0), tree ARG_UNUSED (_p1), tree *ARG_UNUSED (captures),
2395 : const enum tree_code ARG_UNUSED (op))
2396 : {
2397 904910 : const bool debug_dump = dump_file && (dump_flags & TDF_FOLDING);
2398 904910 : {
2399 904910 : tree pmop[2];
2400 904910 : tree utype = fold_bit_and_mask (TREE_TYPE (captures[1]), captures[3], op, captures[1], ERROR_MARK,
2401 : NULL_TREE, NULL_TREE, captures[2], ERROR_MARK,
2402 : NULL_TREE, NULL_TREE, pmop);
2403 904910 : if (utype
2404 : )
2405 : {
2406 320880 : if (TREE_SIDE_EFFECTS (captures[1])) goto next_after_fail806;
2407 320880 : if (TREE_SIDE_EFFECTS (captures[2])) goto next_after_fail806;
2408 320880 : if (TREE_SIDE_EFFECTS (captures[3])) goto next_after_fail806;
2409 320880 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail806;
2410 320880 : {
2411 320880 : tree res_op0;
2412 320880 : {
2413 320880 : tree _o1[2], _r1;
2414 320880 : {
2415 320880 : tree _o2[2], _r2;
2416 320880 : {
2417 320880 : tree _o3[1], _r3;
2418 320880 : _o3[0] = pmop[0];
2419 320880 : if (TREE_TYPE (_o3[0]) != utype)
2420 : {
2421 202 : _r3 = fold_build1_loc (loc, NOP_EXPR, utype, _o3[0]);
2422 : }
2423 : else
2424 : _r3 = _o3[0];
2425 320880 : _o2[0] = _r3;
2426 : }
2427 320880 : {
2428 320880 : tree _o3[1], _r3;
2429 320880 : _o3[0] = pmop[1];
2430 320880 : if (TREE_TYPE (_o3[0]) != utype)
2431 : {
2432 202 : _r3 = fold_build1_loc (loc, NOP_EXPR, utype, _o3[0]);
2433 : }
2434 : else
2435 : _r3 = _o3[0];
2436 320880 : _o2[1] = _r3;
2437 : }
2438 320880 : _r2 = fold_build2_loc (loc, op, TREE_TYPE (_o2[0]), _o2[0], _o2[1]);
2439 320880 : _o1[0] = _r2;
2440 : }
2441 320880 : {
2442 320880 : tree _o2[1], _r2;
2443 320880 : _o2[0] = captures[3];
2444 320880 : if (TREE_TYPE (_o2[0]) != utype)
2445 : {
2446 202 : _r2 = fold_build1_loc (loc, NOP_EXPR, utype, _o2[0]);
2447 : }
2448 : else
2449 : _r2 = _o2[0];
2450 320880 : _o1[1] = _r2;
2451 : }
2452 320880 : _r1 = fold_build2_loc (loc, BIT_AND_EXPR, TREE_TYPE (_o1[0]), _o1[0], _o1[1]);
2453 320880 : res_op0 = _r1;
2454 : }
2455 320880 : tree _r;
2456 320880 : _r = fold_build1_loc (loc, NOP_EXPR, type, res_op0);
2457 320880 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 659, __FILE__, __LINE__, true);
2458 320880 : return _r;
2459 : }
2460 584030 : next_after_fail806:;
2461 : }
2462 : }
2463 584030 : return NULL_TREE;
2464 : }
2465 :
2466 : tree
2467 0 : generic_simplify_475 (location_t ARG_UNUSED (loc), const tree ARG_UNUSED (type),
2468 : tree ARG_UNUSED (_p0), tree ARG_UNUSED (_p1), tree *ARG_UNUSED (captures),
2469 : const enum tree_code ARG_UNUSED (eqne))
2470 : {
2471 0 : const bool debug_dump = dump_file && (dump_flags & TDF_FOLDING);
2472 0 : if (eqne == EQ_EXPR
2473 : )
2474 : {
2475 0 : if (TREE_SIDE_EFFECTS (_p0)) goto next_after_fail842;
2476 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail842;
2477 0 : {
2478 0 : tree _r;
2479 0 : _r = constant_boolean_node (false, type);
2480 0 : if (TREE_SIDE_EFFECTS (captures[2]))
2481 0 : _r = build2_loc (loc, COMPOUND_EXPR, type, fold_ignored_result (captures[2]), _r);
2482 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 669, __FILE__, __LINE__, true);
2483 0 : return _r;
2484 : }
2485 : next_after_fail842:;
2486 : }
2487 : else
2488 : {
2489 0 : if (eqne == NE_EXPR
2490 : )
2491 : {
2492 0 : if (TREE_SIDE_EFFECTS (_p0)) goto next_after_fail843;
2493 0 : if (TREE_SIDE_EFFECTS (_p1)) goto next_after_fail843;
2494 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail843;
2495 0 : {
2496 0 : tree _r;
2497 0 : _r = captures[0];
2498 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 670, __FILE__, __LINE__, true);
2499 0 : return _r;
2500 : }
2501 : next_after_fail843:;
2502 : }
2503 : }
2504 : return NULL_TREE;
2505 : }
2506 :
2507 : tree
2508 0 : generic_simplify_484 (location_t ARG_UNUSED (loc), const tree ARG_UNUSED (type),
2509 : tree ARG_UNUSED (_p0), tree ARG_UNUSED (_p1), tree *ARG_UNUSED (captures))
2510 : {
2511 0 : const bool debug_dump = dump_file && (dump_flags & TDF_FOLDING);
2512 0 : if (INTEGRAL_TYPE_P (TREE_TYPE (captures[1]))
2513 0 : && TYPE_OVERFLOW_WRAPS (TREE_TYPE (captures[1]))
2514 : )
2515 : {
2516 0 : if (TREE_SIDE_EFFECTS (_p1)) goto next_after_fail865;
2517 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail865;
2518 0 : {
2519 0 : tree res_op0;
2520 0 : res_op0 = captures[3];
2521 0 : tree res_op1;
2522 0 : {
2523 0 : tree _o1[2], _r1;
2524 0 : _o1[0] = captures[1];
2525 0 : _o1[1] = build_int_cst (TREE_TYPE (captures[1]), 1);
2526 0 : _r1 = fold_build2_loc (loc, MINUS_EXPR, TREE_TYPE (_o1[0]), _o1[0], _o1[1]);
2527 0 : res_op1 = _r1;
2528 : }
2529 0 : tree _r;
2530 0 : _r = fold_build2_loc (loc, GT_EXPR, type, res_op0, res_op1);
2531 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 689, __FILE__, __LINE__, true);
2532 0 : return _r;
2533 : }
2534 : next_after_fail865:;
2535 : }
2536 : return NULL_TREE;
2537 : }
2538 :
2539 : tree
2540 39024 : generic_simplify_489 (location_t ARG_UNUSED (loc), const tree ARG_UNUSED (type),
2541 : tree ARG_UNUSED (_p0), tree ARG_UNUSED (_p1), tree *ARG_UNUSED (captures),
2542 : const enum tree_code ARG_UNUSED (shift))
2543 : {
2544 39024 : const bool debug_dump = dump_file && (dump_flags & TDF_FOLDING);
2545 39024 : if (tree_nop_conversion_p (TREE_TYPE (captures[0]), TREE_TYPE (captures[1]))
2546 23574 : && TYPE_PRECISION (type) <= HOST_BITS_PER_WIDE_INT
2547 23574 : && tree_fits_uhwi_p (captures[4])
2548 23574 : && tree_to_uhwi (captures[4]) > 0
2549 62596 : && tree_to_uhwi (captures[4]) < TYPE_PRECISION (type)
2550 : )
2551 : {
2552 23572 : {
2553 23572 : unsigned int shiftc = tree_to_uhwi (captures[4]);
2554 23572 : unsigned HOST_WIDE_INT mask = TREE_INT_CST_LOW (captures[5]);
2555 23572 : unsigned HOST_WIDE_INT newmask, zerobits = 0;
2556 23572 : tree shift_type = TREE_TYPE (captures[2]);
2557 23572 : unsigned int prec;
2558 23572 : if (shift == LSHIFT_EXPR)
2559 0 : zerobits = ((HOST_WIDE_INT_1U << shiftc) - 1);
2560 23572 : else if (shift == RSHIFT_EXPR
2561 23572 : && type_has_mode_precision_p (shift_type))
2562 : {
2563 23572 : prec = TYPE_PRECISION (TREE_TYPE (captures[2]));
2564 23572 : tree arg00 = captures[3];
2565 23572 : if (captures[2] != captures[3]
2566 23572 : && TYPE_UNSIGNED (TREE_TYPE (captures[3])))
2567 : {
2568 0 : tree inner_type = TREE_TYPE (captures[3]);
2569 0 : if (type_has_mode_precision_p (inner_type)
2570 0 : && TYPE_PRECISION (inner_type) < prec)
2571 : {
2572 0 : prec = TYPE_PRECISION (inner_type);
2573 0 : if (shiftc < prec)
2574 0 : shift_type = inner_type;
2575 : }
2576 : }
2577 23572 : zerobits = HOST_WIDE_INT_M1U;
2578 23572 : if (shiftc < prec)
2579 : {
2580 23572 : zerobits >>= HOST_BITS_PER_WIDE_INT - shiftc;
2581 23572 : zerobits <<= prec - shiftc;
2582 : }
2583 23572 : if (!TYPE_UNSIGNED (TREE_TYPE (captures[2]))
2584 23572 : && prec == TYPE_PRECISION (TREE_TYPE (captures[2])))
2585 : {
2586 98 : if ((mask & zerobits) == 0)
2587 82 : shift_type = unsigned_type_for (TREE_TYPE (captures[2]));
2588 : else
2589 : zerobits = 0;
2590 : }
2591 : }
2592 23556 : if ((mask & zerobits) == mask
2593 : )
2594 : {
2595 0 : if (TREE_SIDE_EFFECTS (captures[2])) goto next_after_fail876;
2596 0 : if (TREE_SIDE_EFFECTS (captures[4])) goto next_after_fail876;
2597 0 : if (TREE_SIDE_EFFECTS (captures[5])) goto next_after_fail876;
2598 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail876;
2599 0 : {
2600 0 : tree _r;
2601 0 : _r = build_int_cst (type, 0);
2602 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 691, __FILE__, __LINE__, true);
2603 0 : return _r;
2604 : }
2605 : next_after_fail876:;
2606 : }
2607 : else
2608 : {
2609 23572 : {
2610 23572 : newmask = mask | zerobits;
2611 23572 : if (newmask != mask && (newmask & (newmask + 1)) == 0
2612 : )
2613 : {
2614 : {
2615 109 : for (prec = BITS_PER_UNIT;
2616 181 : prec < HOST_BITS_PER_WIDE_INT; prec <<= 1)
2617 171 : if (newmask == (HOST_WIDE_INT_1U << prec) - 1)
2618 : break;
2619 72 : if (prec < HOST_BITS_PER_WIDE_INT
2620 10 : || newmask == HOST_WIDE_INT_M1U
2621 : )
2622 : {
2623 72 : {
2624 72 : tree newmaskt = build_int_cst_type (TREE_TYPE (captures[5]), newmask);
2625 72 : if (!tree_int_cst_equal (newmaskt, captures[5])
2626 : )
2627 : {
2628 72 : if (shift_type != TREE_TYPE (captures[2])
2629 : )
2630 : {
2631 11 : if (TREE_SIDE_EFFECTS (captures[2])) goto next_after_fail877;
2632 11 : if (TREE_SIDE_EFFECTS (captures[4])) goto next_after_fail877;
2633 11 : if (TREE_SIDE_EFFECTS (captures[5])) goto next_after_fail877;
2634 11 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail877;
2635 11 : {
2636 11 : tree res_op0;
2637 11 : {
2638 11 : tree _o1[1], _r1;
2639 11 : {
2640 11 : tree _o2[2], _r2;
2641 11 : {
2642 11 : tree _o3[1], _r3;
2643 11 : _o3[0] = captures[2];
2644 11 : if (TREE_TYPE (_o3[0]) != shift_type)
2645 : {
2646 11 : _r3 = fold_build1_loc (loc, NOP_EXPR, shift_type, _o3[0]);
2647 : }
2648 : else
2649 : _r3 = _o3[0];
2650 11 : _o2[0] = _r3;
2651 : }
2652 11 : _o2[1] = captures[4];
2653 11 : _r2 = fold_build2_loc (loc, shift, shift_type, _o2[0], _o2[1]);
2654 11 : _o1[0] = _r2;
2655 : }
2656 11 : if (TREE_TYPE (_o1[0]) != type)
2657 : {
2658 11 : _r1 = fold_build1_loc (loc, NOP_EXPR, type, _o1[0]);
2659 : }
2660 : else
2661 : _r1 = _o1[0];
2662 11 : res_op0 = _r1;
2663 : }
2664 11 : tree res_op1;
2665 11 : res_op1 = newmaskt;
2666 11 : tree _r;
2667 11 : _r = fold_build2_loc (loc, BIT_AND_EXPR, type, res_op0, res_op1);
2668 11 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 692, __FILE__, __LINE__, true);
2669 11 : return _r;
2670 : }
2671 : next_after_fail877:;
2672 : }
2673 : else
2674 : {
2675 61 : if (TREE_SIDE_EFFECTS (_p0)) goto next_after_fail878;
2676 61 : if (TREE_SIDE_EFFECTS (captures[5])) goto next_after_fail878;
2677 61 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail878;
2678 61 : {
2679 61 : tree res_op0;
2680 61 : res_op0 = captures[0];
2681 61 : tree res_op1;
2682 61 : res_op1 = newmaskt;
2683 61 : tree _r;
2684 61 : _r = fold_build2_loc (loc, BIT_AND_EXPR, type, res_op0, res_op1);
2685 61 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 693, __FILE__, __LINE__, true);
2686 61 : return _r;
2687 : }
2688 : next_after_fail878:;
2689 : }
2690 : }
2691 : }
2692 : }
2693 : }
2694 : }
2695 : }
2696 : }
2697 : }
2698 : }
2699 : return NULL_TREE;
2700 : }
2701 :
2702 : tree
2703 28 : generic_simplify_499 (location_t ARG_UNUSED (loc), const tree ARG_UNUSED (type),
2704 : tree ARG_UNUSED (_p0), tree *ARG_UNUSED (captures))
2705 : {
2706 28 : const bool debug_dump = dump_file && (dump_flags & TDF_FOLDING);
2707 28 : if (element_precision (type) <= element_precision (TREE_TYPE (captures[0]))
2708 28 : || !TYPE_UNSIGNED (TREE_TYPE (captures[0]))
2709 : )
2710 : {
2711 28 : if (TREE_SIDE_EFFECTS (_p0)) goto next_after_fail890;
2712 28 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail890;
2713 28 : {
2714 28 : tree res_op0;
2715 28 : {
2716 28 : tree _o1[1], _r1;
2717 28 : _o1[0] = captures[0];
2718 28 : _r1 = fold_build1_loc (loc, NEGATE_EXPR, TREE_TYPE (_o1[0]), _o1[0]);
2719 28 : res_op0 = _r1;
2720 : }
2721 28 : tree _r;
2722 28 : _r = fold_build1_loc (loc, NOP_EXPR, type, res_op0);
2723 28 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 704, __FILE__, __LINE__, true);
2724 28 : return _r;
2725 : }
2726 : next_after_fail890:;
2727 : }
2728 : return NULL_TREE;
2729 : }
2730 :
2731 : tree
2732 0 : generic_simplify_507 (location_t ARG_UNUSED (loc), const tree ARG_UNUSED (type),
2733 : tree ARG_UNUSED (_p0), tree *ARG_UNUSED (captures),
2734 : const enum tree_code ARG_UNUSED (rotate))
2735 : {
2736 0 : const bool debug_dump = dump_file && (dump_flags & TDF_FOLDING);
2737 0 : if ((element_precision (TREE_TYPE (captures[2]))
2738 0 : <= element_precision (TREE_TYPE (captures[3]))
2739 0 : || !TYPE_UNSIGNED (TREE_TYPE (captures[3])))
2740 0 : && (element_precision (type) <= element_precision (TREE_TYPE (captures[2]))
2741 0 : || !TYPE_UNSIGNED (TREE_TYPE (captures[2])))
2742 : )
2743 : {
2744 0 : {
2745 0 : tree rotate_type = TREE_TYPE (captures[2]);
2746 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail898;
2747 0 : {
2748 0 : tree res_op0;
2749 0 : {
2750 0 : tree _o1[2], _r1;
2751 0 : {
2752 0 : tree _o2[1], _r2;
2753 0 : _o2[0] = captures[3];
2754 0 : if (TREE_TYPE (_o2[0]) != rotate_type)
2755 : {
2756 0 : _r2 = fold_build1_loc (loc, NOP_EXPR, rotate_type, _o2[0]);
2757 : }
2758 : else
2759 : _r2 = _o2[0];
2760 0 : _o1[0] = _r2;
2761 : }
2762 0 : _o1[1] = captures[4];
2763 0 : _r1 = fold_build2_loc (loc, rotate, TREE_TYPE (_o1[0]), _o1[0], _o1[1]);
2764 0 : res_op0 = _r1;
2765 : }
2766 0 : tree _r;
2767 0 : _r = fold_build1_loc (loc, NOP_EXPR, type, res_op0);
2768 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 711, __FILE__, __LINE__, true);
2769 0 : return _r;
2770 : }
2771 0 : next_after_fail898:;
2772 : }
2773 : }
2774 : return NULL_TREE;
2775 : }
2776 :
2777 : tree
2778 0 : generic_simplify_518 (location_t ARG_UNUSED (loc), const tree ARG_UNUSED (type),
2779 : tree ARG_UNUSED (_p0), tree ARG_UNUSED (_p1), tree *ARG_UNUSED (captures),
2780 : const enum tree_code ARG_UNUSED (minmax))
2781 : {
2782 0 : const bool debug_dump = dump_file && (dump_flags & TDF_FOLDING);
2783 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail911;
2784 0 : {
2785 0 : tree _r;
2786 0 : _r = captures[0];
2787 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 723, __FILE__, __LINE__, true);
2788 : return _r;
2789 : }
2790 0 : next_after_fail911:;
2791 0 : return NULL_TREE;
2792 : }
2793 :
2794 : tree
2795 0 : generic_simplify_525 (location_t ARG_UNUSED (loc), const tree ARG_UNUSED (type),
2796 : tree ARG_UNUSED (_p0), tree ARG_UNUSED (_p1), tree *ARG_UNUSED (captures),
2797 : const enum tree_code ARG_UNUSED (minmax))
2798 : {
2799 0 : const bool debug_dump = dump_file && (dump_flags & TDF_FOLDING);
2800 0 : if (TYPE_UNSIGNED (type)
2801 0 : || (tree_int_cst_sgn (captures[2]) == tree_int_cst_sgn (captures[4]))
2802 : )
2803 : {
2804 0 : {
2805 0 : auto andvalue = wi::to_wide (captures[2]) & wi::to_wide (captures[4]);
2806 0 : if (andvalue == ((minmax == MIN_EXPR)
2807 0 : ? wi::to_wide (captures[2]) : wi::to_wide (captures[4]))
2808 : )
2809 : {
2810 0 : if (TREE_SIDE_EFFECTS (_p0)) goto next_after_fail918;
2811 0 : if (TREE_SIDE_EFFECTS (captures[4])) goto next_after_fail918;
2812 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail918;
2813 0 : {
2814 0 : tree _r;
2815 0 : _r = captures[0];
2816 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 729, __FILE__, __LINE__, true);
2817 0 : return _r;
2818 : }
2819 0 : next_after_fail918:;
2820 : }
2821 : else
2822 : {
2823 0 : if (andvalue == ((minmax != MIN_EXPR)
2824 0 : ? wi::to_wide (captures[2]) : wi::to_wide (captures[4]))
2825 : )
2826 : {
2827 0 : if (TREE_SIDE_EFFECTS (_p1)) goto next_after_fail919;
2828 0 : if (TREE_SIDE_EFFECTS (captures[2])) goto next_after_fail919;
2829 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail919;
2830 0 : {
2831 0 : tree _r;
2832 0 : _r = captures[3];
2833 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 730, __FILE__, __LINE__, true);
2834 0 : return _r;
2835 : }
2836 0 : next_after_fail919:;
2837 : }
2838 : }
2839 0 : }
2840 : }
2841 : return NULL_TREE;
2842 : }
2843 :
2844 : tree
2845 6 : generic_simplify_539 (location_t ARG_UNUSED (loc), const tree ARG_UNUSED (type),
2846 : tree ARG_UNUSED (_p0), tree ARG_UNUSED (_p1), tree ARG_UNUSED (_p2), tree *ARG_UNUSED (captures))
2847 : {
2848 6 : const bool debug_dump = dump_file && (dump_flags & TDF_FOLDING);
2849 6 : if (TREE_SIDE_EFFECTS (_p1)) goto next_after_fail946;
2850 6 : if (TREE_SIDE_EFFECTS (_p2)) goto next_after_fail946;
2851 6 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail946;
2852 6 : {
2853 6 : tree _r;
2854 6 : _r = captures[2];
2855 6 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 530, __FILE__, __LINE__, true);
2856 : return _r;
2857 : }
2858 : next_after_fail946:;
2859 : return NULL_TREE;
2860 : }
2861 :
2862 : tree
2863 0 : generic_simplify_542 (location_t ARG_UNUSED (loc), const tree ARG_UNUSED (type),
2864 : tree ARG_UNUSED (_p0), tree ARG_UNUSED (_p1), tree ARG_UNUSED (_p2), tree *ARG_UNUSED (captures),
2865 : const enum tree_code ARG_UNUSED (cmp))
2866 : {
2867 0 : const bool debug_dump = dump_file && (dump_flags & TDF_FOLDING);
2868 0 : if (TREE_SIDE_EFFECTS (_p0)) goto next_after_fail949;
2869 0 : if (TREE_SIDE_EFFECTS (_p1)) goto next_after_fail949;
2870 0 : if (TREE_SIDE_EFFECTS (_p2)) goto next_after_fail949;
2871 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail949;
2872 0 : {
2873 0 : tree _r;
2874 0 : _r = captures[3];
2875 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 533, __FILE__, __LINE__, true);
2876 : return _r;
2877 : }
2878 : next_after_fail949:;
2879 : return NULL_TREE;
2880 : }
2881 :
2882 : tree
2883 0 : generic_simplify_552 (location_t ARG_UNUSED (loc), const tree ARG_UNUSED (type),
2884 : tree ARG_UNUSED (_p0), tree ARG_UNUSED (_p1), tree ARG_UNUSED (_p2), tree *ARG_UNUSED (captures),
2885 : const combined_fn ARG_UNUSED (cond_op))
2886 : {
2887 0 : const bool debug_dump = dump_file && (dump_flags & TDF_FOLDING);
2888 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail959;
2889 0 : {
2890 0 : tree res_op0;
2891 0 : {
2892 0 : tree _o1[2], _r1;
2893 0 : _o1[0] = captures[2];
2894 0 : _o1[1] = captures[0];
2895 0 : _r1 = fold_build2_loc (loc, BIT_AND_EXPR, TREE_TYPE (_o1[0]), _o1[0], _o1[1]);
2896 0 : res_op0 = _r1;
2897 : }
2898 0 : tree res_op1;
2899 0 : res_op1 = captures[3];
2900 0 : tree res_op2;
2901 0 : res_op2 = captures[4];
2902 0 : tree res_op3;
2903 0 : res_op3 = captures[5];
2904 0 : tree _r;
2905 0 : _r = maybe_build_call_expr_loc (loc, cond_op, type, 4, res_op0, res_op1, res_op2, res_op3);
2906 0 : if (!_r)
2907 0 : goto next_after_fail959;
2908 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 753, __FILE__, __LINE__, true);
2909 : return _r;
2910 : }
2911 : next_after_fail959:;
2912 : return NULL_TREE;
2913 : }
2914 :
2915 : tree
2916 1 : generic_simplify_557 (location_t ARG_UNUSED (loc), const tree ARG_UNUSED (type),
2917 : tree ARG_UNUSED (_p0), tree *ARG_UNUSED (captures))
2918 : {
2919 1 : const bool debug_dump = dump_file && (dump_flags & TDF_FOLDING);
2920 1 : if (tree_nop_conversion_p (TREE_TYPE (captures[0]), type)
2921 : )
2922 : {
2923 1 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail967;
2924 1 : {
2925 1 : tree res_op0;
2926 1 : {
2927 1 : tree _o1[1], _r1;
2928 1 : _o1[0] = captures[0];
2929 1 : if (TREE_TYPE (_o1[0]) != type)
2930 : {
2931 0 : _r1 = fold_build1_loc (loc, NOP_EXPR, type, _o1[0]);
2932 : }
2933 : else
2934 : _r1 = _o1[0];
2935 1 : res_op0 = _r1;
2936 : }
2937 1 : tree _r;
2938 1 : _r = non_lvalue_loc (loc, res_op0);
2939 1 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 761, __FILE__, __LINE__, true);
2940 1 : return _r;
2941 : }
2942 0 : next_after_fail967:;
2943 : }
2944 : return NULL_TREE;
2945 : }
2946 :
2947 : tree
2948 0 : generic_simplify_567 (location_t ARG_UNUSED (loc), const tree ARG_UNUSED (type),
2949 : tree ARG_UNUSED (_p0), tree *ARG_UNUSED (captures),
2950 : const combined_fn ARG_UNUSED (logs))
2951 : {
2952 0 : const bool debug_dump = dump_file && (dump_flags & TDF_FOLDING);
2953 0 : if (flag_unsafe_math_optimizations
2954 : )
2955 : {
2956 0 : if (! HONOR_SIGN_DEPENDENT_ROUNDING (type)
2957 0 : && ! HONOR_NANS (type) && ! HONOR_INFINITIES (type)
2958 0 : && ! flag_trapping_math
2959 0 : && ! flag_errno_math
2960 : )
2961 : {
2962 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail977;
2963 0 : {
2964 0 : tree res_op0;
2965 0 : {
2966 0 : tree _o1[1], _r1;
2967 0 : _o1[0] = captures[1];
2968 0 : _r1 = maybe_build_call_expr_loc (loc, logs, TREE_TYPE (_o1[0]), 1, _o1[0]);
2969 0 : if (!_r1)
2970 0 : goto next_after_fail977;
2971 0 : if (EXPR_P (_r1))
2972 0 : goto next_after_fail977;
2973 0 : res_op0 = _r1;
2974 : }
2975 0 : tree res_op1;
2976 0 : {
2977 0 : tree _o1[1], _r1;
2978 0 : _o1[0] = captures[2];
2979 0 : _r1 = maybe_build_call_expr_loc (loc, logs, TREE_TYPE (_o1[0]), 1, _o1[0]);
2980 0 : if (!_r1)
2981 0 : goto next_after_fail977;
2982 0 : res_op1 = _r1;
2983 : }
2984 0 : tree _r;
2985 0 : _r = fold_build2_loc (loc, MINUS_EXPR, type, res_op0, res_op1);
2986 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 771, __FILE__, __LINE__, true);
2987 0 : return _r;
2988 : }
2989 : next_after_fail977:;
2990 : }
2991 : }
2992 : return NULL_TREE;
2993 : }
2994 :
2995 : tree
2996 0 : generic_simplify_579 (location_t ARG_UNUSED (loc), const tree ARG_UNUSED (type),
2997 : tree ARG_UNUSED (_p0), tree *ARG_UNUSED (captures),
2998 : const combined_fn ARG_UNUSED (froms),
2999 : const combined_fn ARG_UNUSED (tos))
3000 : {
3001 0 : const bool debug_dump = dump_file && (dump_flags & TDF_FOLDING);
3002 0 : if (optimize && canonicalize_math_p ()
3003 : )
3004 : {
3005 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail989;
3006 0 : {
3007 0 : tree res_op0;
3008 0 : res_op0 = captures[0];
3009 0 : tree _r;
3010 0 : _r = maybe_build_call_expr_loc (loc, tos, type, 1, res_op0);
3011 0 : if (!_r)
3012 0 : goto next_after_fail989;
3013 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 783, __FILE__, __LINE__, true);
3014 0 : return _r;
3015 : }
3016 : next_after_fail989:;
3017 : }
3018 : return NULL_TREE;
3019 : }
3020 :
3021 : tree
3022 0 : generic_simplify_586 (location_t ARG_UNUSED (loc), const tree ARG_UNUSED (type),
3023 : tree ARG_UNUSED (_p0), tree *ARG_UNUSED (captures),
3024 : const combined_fn ARG_UNUSED (SIGNBIT))
3025 : {
3026 0 : const bool debug_dump = dump_file && (dump_flags & TDF_FOLDING);
3027 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail996;
3028 0 : {
3029 0 : tree _r;
3030 0 : _r = integer_zero_node;
3031 0 : if (TREE_SIDE_EFFECTS (captures[0]))
3032 0 : _r = build2_loc (loc, COMPOUND_EXPR, type, fold_ignored_result (captures[0]), _r);
3033 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 790, __FILE__, __LINE__, true);
3034 : return _r;
3035 : }
3036 0 : next_after_fail996:;
3037 0 : return NULL_TREE;
3038 : }
3039 :
3040 : tree
3041 0 : generic_simplify_594 (location_t ARG_UNUSED (loc), const tree ARG_UNUSED (type),
3042 : tree ARG_UNUSED (_p0), tree ARG_UNUSED (_p1), tree ARG_UNUSED (_p2), tree *ARG_UNUSED (captures))
3043 : {
3044 0 : const bool debug_dump = dump_file && (dump_flags & TDF_FOLDING);
3045 0 : if (canonicalize_math_after_vectorization_p ()
3046 : )
3047 : {
3048 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1004;
3049 : {
3050 : tree res_op0;
3051 : res_op0 = captures[0];
3052 : tree res_op1;
3053 : res_op1 = captures[1];
3054 : tree res_op2;
3055 : res_op2 = captures[2];
3056 : tree _r;
3057 : _r = maybe_build_call_expr_loc (loc, CFN_FMA, type, 3, res_op0, res_op1, res_op2);
3058 : if (!_r)
3059 : goto next_after_fail1004;
3060 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 798, __FILE__, __LINE__, true);
3061 : return _r;
3062 : }
3063 0 : next_after_fail1004:;
3064 : }
3065 0 : return NULL_TREE;
3066 : }
3067 :
3068 : tree
3069 0 : generic_simplify_603 (location_t ARG_UNUSED (loc), const tree ARG_UNUSED (type),
3070 : tree ARG_UNUSED (_p0), tree ARG_UNUSED (_p1), tree ARG_UNUSED (_p2), tree ARG_UNUSED (_p3), tree ARG_UNUSED (_p4), tree *ARG_UNUSED (captures))
3071 : {
3072 0 : const bool debug_dump = dump_file && (dump_flags & TDF_FOLDING);
3073 0 : if (canonicalize_math_after_vectorization_p ()
3074 : )
3075 : {
3076 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1013;
3077 : {
3078 : tree res_op0;
3079 : res_op0 = captures[0];
3080 : tree res_op1;
3081 : res_op1 = captures[1];
3082 : tree res_op2;
3083 : res_op2 = captures[2];
3084 : tree res_op3;
3085 : res_op3 = captures[3];
3086 : tree res_op4;
3087 : res_op4 = captures[4];
3088 : tree _r;
3089 : _r = maybe_build_call_expr_loc (loc, CFN_COND_FMS, type, 5, res_op0, res_op1, res_op2, res_op3, res_op4);
3090 : if (!_r)
3091 : goto next_after_fail1013;
3092 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 807, __FILE__, __LINE__, true);
3093 : return _r;
3094 : }
3095 0 : next_after_fail1013:;
3096 : }
3097 0 : return NULL_TREE;
3098 : }
3099 :
3100 : tree
3101 0 : generic_simplify_612 (location_t ARG_UNUSED (loc), const tree ARG_UNUSED (type),
3102 : tree ARG_UNUSED (_p0), tree *ARG_UNUSED (captures),
3103 : const combined_fn ARG_UNUSED (POPCOUNT))
3104 : {
3105 0 : const bool debug_dump = dump_file && (dump_flags & TDF_FOLDING);
3106 0 : {
3107 0 : tree type0 = TREE_TYPE (captures[1]);
3108 0 : tree type2 = TREE_TYPE (captures[0]);
3109 0 : if (INTEGRAL_TYPE_P (type0)
3110 0 : && TYPE_PRECISION (type2) <= TYPE_PRECISION (type0)
3111 : )
3112 : {
3113 0 : if (TREE_SIDE_EFFECTS (_p0)) goto next_after_fail1022;
3114 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1022;
3115 0 : {
3116 0 : tree res_op0;
3117 0 : {
3118 0 : tree _o1[2], _r1;
3119 0 : {
3120 0 : tree _o2[1], _r2;
3121 0 : _o2[0] = captures[2];
3122 0 : if (TREE_TYPE (_o2[0]) != type2)
3123 : {
3124 0 : _r2 = fold_build1_loc (loc, NOP_EXPR, type2, _o2[0]);
3125 : }
3126 : else
3127 : _r2 = _o2[0];
3128 0 : _o1[0] = _r2;
3129 : }
3130 0 : _o1[1] = build_zero_cst (type2);
3131 0 : _r1 = fold_build2_loc (loc, NE_EXPR, boolean_type_node, _o1[0], _o1[1]);
3132 0 : res_op0 = _r1;
3133 : }
3134 0 : tree _r;
3135 0 : _r = fold_build1_loc (loc, NOP_EXPR, type, res_op0);
3136 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 813, __FILE__, __LINE__, true);
3137 0 : return _r;
3138 : }
3139 : next_after_fail1022:;
3140 : }
3141 : }
3142 : return NULL_TREE;
3143 : }
3144 :
3145 : tree
3146 0 : generic_simplify_621 (location_t ARG_UNUSED (loc), const tree ARG_UNUSED (type),
3147 : tree ARG_UNUSED (_p0), tree *ARG_UNUSED (captures),
3148 : const combined_fn ARG_UNUSED (reduc))
3149 : {
3150 0 : const bool debug_dump = dump_file && (dump_flags & TDF_FOLDING);
3151 0 : {
3152 0 : int i = single_nonzero_element (captures[1]);
3153 0 : if (i >= 0
3154 : )
3155 : {
3156 0 : {
3157 0 : tree elt = vector_cst_elt (captures[1], i);
3158 0 : tree elt_type = TREE_TYPE (elt);
3159 0 : unsigned int elt_bits = tree_to_uhwi (TYPE_SIZE (elt_type));
3160 0 : tree size = bitsize_int (elt_bits);
3161 0 : tree pos = bitsize_int (elt_bits * i);
3162 0 : if (compare_tree_int (TYPE_SIZE (type), elt_bits) == 0
3163 : )
3164 : {
3165 0 : if (TREE_SIDE_EFFECTS (captures[1])) goto next_after_fail1032;
3166 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1032;
3167 0 : {
3168 0 : tree res_op0;
3169 0 : {
3170 0 : tree _o1[2], _r1;
3171 0 : {
3172 0 : tree _o2[3], _r2;
3173 0 : _o2[0] = captures[0];
3174 0 : _o2[1] = size;
3175 0 : _o2[2] = pos;
3176 0 : _r2 = fold_build3_loc (loc, BIT_FIELD_REF, elt_type, _o2[0], _o2[1], _o2[2]);
3177 0 : _o1[0] = _r2;
3178 : }
3179 0 : _o1[1] = elt;
3180 0 : _r1 = fold_build2_loc (loc, BIT_AND_EXPR, elt_type, _o1[0], _o1[1]);
3181 0 : res_op0 = _r1;
3182 : }
3183 0 : tree _r;
3184 0 : _r = fold_build1_loc (loc, VIEW_CONVERT_EXPR, type, res_op0);
3185 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 819, __FILE__, __LINE__, true);
3186 0 : return _r;
3187 : }
3188 : next_after_fail1032:;
3189 : }
3190 : }
3191 : }
3192 : }
3193 : return NULL_TREE;
3194 : }
3195 :
3196 : tree
3197 498723 : generic_simplify_FIX_TRUNC_EXPR (location_t ARG_UNUSED (loc), enum tree_code ARG_UNUSED (code), const tree ARG_UNUSED (type), tree _p0)
3198 : {
3199 498723 : const bool debug_dump = dump_file && (dump_flags & TDF_FOLDING);
3200 498723 : {
3201 498723 : tree captures[1] ATTRIBUTE_UNUSED = { _p0 };
3202 997446 : if ((
3203 :
3204 : && useless_type_conversion_p (type, TREE_TYPE (captures[0])))
3205 : || (
3206 : 1
3207 498723 : && type == TREE_TYPE (captures[0]))
3208 : )
3209 : {
3210 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1115;
3211 0 : {
3212 0 : tree _r;
3213 0 : _r = captures[0];
3214 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 834, __FILE__, __LINE__, true);
3215 0 : return _r;
3216 : }
3217 0 : next_after_fail1115:;
3218 : }
3219 : }
3220 498723 : switch (TREE_CODE (_p0))
3221 : {
3222 14978 : CASE_CONVERT:
3223 14978 : {
3224 14978 : tree _q20 = TREE_OPERAND (_p0, 0);
3225 14978 : {
3226 14978 : tree captures[2] ATTRIBUTE_UNUSED = { _p0, _q20 };
3227 14978 : {
3228 14978 : tree inside_type = TREE_TYPE (captures[1]);
3229 14978 : tree inter_type = TREE_TYPE (captures[0]);
3230 14978 : int inside_int = INTEGRAL_TYPE_P (inside_type);
3231 14978 : int inside_ptr = POINTER_TYPE_P (inside_type);
3232 14978 : int inside_float = FLOAT_TYPE_P (inside_type);
3233 14978 : int inside_vec = VECTOR_TYPE_P (inside_type);
3234 14978 : unsigned int inside_prec = element_precision (inside_type);
3235 14978 : int inside_unsignedp = TYPE_UNSIGNED (inside_type);
3236 14978 : int inter_int = INTEGRAL_TYPE_P (inter_type);
3237 14978 : int inter_ptr = POINTER_TYPE_P (inter_type);
3238 14978 : int inter_float = FLOAT_TYPE_P (inter_type);
3239 14978 : int inter_vec = VECTOR_TYPE_P (inter_type);
3240 14978 : unsigned int inter_prec = element_precision (inter_type);
3241 14978 : int inter_unsignedp = TYPE_UNSIGNED (inter_type);
3242 14978 : int final_int = INTEGRAL_TYPE_P (type);
3243 14978 : int final_ptr = POINTER_TYPE_P (type);
3244 14978 : int final_float = FLOAT_TYPE_P (type);
3245 14978 : int final_vec = VECTOR_TYPE_P (type);
3246 14978 : unsigned int final_prec = element_precision (type);
3247 14978 : int final_unsignedp = TYPE_UNSIGNED (type);
3248 14978 : if (((
3249 :
3250 : && useless_type_conversion_p (type, inside_type))
3251 : || (
3252 : 1
3253 14978 : && TYPE_MAIN_VARIANT (type) == TYPE_MAIN_VARIANT (inside_type)))
3254 0 : && (((inter_int || inter_ptr) && final_int)
3255 0 : || (inter_float && final_float))
3256 14978 : && inter_prec >= final_prec
3257 : )
3258 : {
3259 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1116;
3260 0 : {
3261 0 : tree res_op0;
3262 0 : res_op0 = captures[1];
3263 0 : tree _r;
3264 0 : _r = fold_build1_loc (loc, FIX_TRUNC_EXPR, type, res_op0);
3265 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 835, __FILE__, __LINE__, true);
3266 0 : return _r;
3267 : }
3268 0 : next_after_fail1116:;
3269 : }
3270 : else
3271 : {
3272 14978 : if (((inter_int && inside_int) || (inter_float && inside_float))
3273 14978 : && (final_int || final_float)
3274 14978 : && inter_prec >= inside_prec
3275 14760 : && (inter_float || inter_unsignedp == inside_unsignedp)
3276 : )
3277 : {
3278 14760 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1117;
3279 14760 : {
3280 14760 : tree res_op0;
3281 14760 : res_op0 = captures[1];
3282 14760 : tree _r;
3283 14760 : _r = fold_build1_loc (loc, FIX_TRUNC_EXPR, type, res_op0);
3284 14760 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 836, __FILE__, __LINE__, true);
3285 14760 : return _r;
3286 : }
3287 0 : next_after_fail1117:;
3288 0 : }
3289 : else
3290 : {
3291 218 : if (inside_int && inter_int && final_int
3292 0 : && ((inside_prec < inter_prec && inter_prec < final_prec
3293 0 : && inside_unsignedp && !inter_unsignedp)
3294 0 : || final_prec == inter_prec
3295 0 : || (inside_prec < inter_prec && inter_prec > final_prec
3296 0 : && !inside_unsignedp && inter_unsignedp))
3297 : )
3298 : {
3299 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1118;
3300 0 : {
3301 0 : tree res_op0;
3302 0 : res_op0 = captures[1];
3303 0 : tree _r;
3304 0 : _r = fold_build1_loc (loc, FIX_TRUNC_EXPR, type, res_op0);
3305 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 837, __FILE__, __LINE__, true);
3306 0 : return _r;
3307 : }
3308 0 : next_after_fail1118:;
3309 0 : }
3310 : else
3311 : {
3312 218 : if (! inside_float && ! inter_float && ! final_float
3313 : && ! inside_vec && ! inter_vec && ! final_vec
3314 0 : && (inter_prec >= inside_prec || inter_prec >= final_prec)
3315 0 : && ! (inside_int && inter_int
3316 0 : && inter_unsignedp != inside_unsignedp
3317 0 : && inter_prec < final_prec)
3318 0 : && ((inter_unsignedp && inter_prec > inside_prec)
3319 0 : == (final_unsignedp && final_prec > inter_prec))
3320 0 : && ! (inside_ptr && inter_prec != final_prec)
3321 0 : && ! (final_ptr && inside_prec != inter_prec)
3322 : )
3323 : {
3324 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1119;
3325 0 : {
3326 0 : tree res_op0;
3327 0 : res_op0 = captures[1];
3328 0 : tree _r;
3329 0 : _r = fold_build1_loc (loc, FIX_TRUNC_EXPR, type, res_op0);
3330 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 838, __FILE__, __LINE__, true);
3331 0 : return _r;
3332 : }
3333 0 : next_after_fail1119:;
3334 0 : }
3335 : else
3336 : {
3337 218 : if (inside_int && inter_int && final_int
3338 0 : && final_prec <= inside_prec
3339 0 : && inter_prec >= inside_prec
3340 : )
3341 : {
3342 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1120;
3343 0 : {
3344 0 : tree res_op0;
3345 0 : res_op0 = captures[1];
3346 0 : tree _r;
3347 0 : _r = fold_build1_loc (loc, NOP_EXPR, type, res_op0);
3348 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 839, __FILE__, __LINE__, true);
3349 0 : return _r;
3350 : }
3351 0 : next_after_fail1120:;
3352 0 : }
3353 : else
3354 : {
3355 : if (0
3356 : && final_int && inter_int && inside_int
3357 : && final_prec >= inside_prec
3358 : && inside_prec > inter_prec
3359 : && inter_unsignedp
3360 : )
3361 : {
3362 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1121;
3363 : {
3364 : tree res_op0;
3365 : {
3366 : tree _o1[2], _r1;
3367 : _o1[0] = captures[1];
3368 : _o1[1] = wide_int_to_tree
3369 : (inside_type,
3370 : wi::mask (inter_prec, false,
3371 : TYPE_PRECISION (inside_type)));
3372 : _r1 = fold_build2_loc (loc, BIT_AND_EXPR, TREE_TYPE (_o1[0]), _o1[0], _o1[1]);
3373 : res_op0 = _r1;
3374 : }
3375 : tree _r;
3376 : _r = fold_build1_loc (loc, NOP_EXPR, type, res_op0);
3377 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 840, __FILE__, __LINE__, true);
3378 : return _r;
3379 : }
3380 : next_after_fail1121:;
3381 : }
3382 : else
3383 : {
3384 : if (0
3385 : && inside_int && inter_float && final_int &&
3386 : (unsigned) significand_size (TYPE_MODE (inter_type))
3387 : >= inside_prec - !inside_unsignedp
3388 : )
3389 : {
3390 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1122;
3391 : {
3392 : tree res_op0;
3393 : res_op0 = captures[1];
3394 : tree _r;
3395 : _r = fold_build1_loc (loc, NOP_EXPR, type, res_op0);
3396 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 841, __FILE__, __LINE__, true);
3397 : return _r;
3398 : }
3399 : next_after_fail1122:;
3400 : }
3401 : }
3402 : }
3403 : }
3404 : }
3405 : }
3406 : }
3407 : }
3408 : }
3409 218 : break;
3410 : }
3411 596 : case FLOAT_EXPR:
3412 596 : {
3413 596 : tree _q20 = TREE_OPERAND (_p0, 0);
3414 596 : {
3415 596 : tree captures[2] ATTRIBUTE_UNUSED = { _p0, _q20 };
3416 596 : {
3417 596 : tree inside_type = TREE_TYPE (captures[1]);
3418 596 : tree inter_type = TREE_TYPE (captures[0]);
3419 596 : int inside_int = INTEGRAL_TYPE_P (inside_type);
3420 596 : int inside_ptr = POINTER_TYPE_P (inside_type);
3421 596 : int inside_float = FLOAT_TYPE_P (inside_type);
3422 596 : int inside_vec = VECTOR_TYPE_P (inside_type);
3423 596 : unsigned int inside_prec = element_precision (inside_type);
3424 596 : int inside_unsignedp = TYPE_UNSIGNED (inside_type);
3425 596 : int inter_int = INTEGRAL_TYPE_P (inter_type);
3426 596 : int inter_ptr = POINTER_TYPE_P (inter_type);
3427 596 : int inter_float = FLOAT_TYPE_P (inter_type);
3428 596 : int inter_vec = VECTOR_TYPE_P (inter_type);
3429 596 : unsigned int inter_prec = element_precision (inter_type);
3430 596 : int inter_unsignedp = TYPE_UNSIGNED (inter_type);
3431 596 : int final_int = INTEGRAL_TYPE_P (type);
3432 596 : int final_ptr = POINTER_TYPE_P (type);
3433 596 : int final_float = FLOAT_TYPE_P (type);
3434 596 : int final_vec = VECTOR_TYPE_P (type);
3435 596 : unsigned int final_prec = element_precision (type);
3436 596 : int final_unsignedp = TYPE_UNSIGNED (type);
3437 596 : if (((
3438 :
3439 : && useless_type_conversion_p (type, inside_type))
3440 : || (
3441 : 1
3442 596 : && TYPE_MAIN_VARIANT (type) == TYPE_MAIN_VARIANT (inside_type)))
3443 50 : && (((inter_int || inter_ptr) && final_int)
3444 50 : || (inter_float && final_float))
3445 596 : && inter_prec >= final_prec
3446 : )
3447 : {
3448 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1123;
3449 0 : {
3450 0 : tree res_op0;
3451 0 : res_op0 = captures[1];
3452 0 : tree _r;
3453 0 : _r = fold_build1_loc (loc, FIX_TRUNC_EXPR, type, res_op0);
3454 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 835, __FILE__, __LINE__, true);
3455 0 : return _r;
3456 : }
3457 0 : next_after_fail1123:;
3458 : }
3459 : else
3460 : {
3461 596 : if (((inter_int && inside_int) || (inter_float && inside_float))
3462 0 : && (final_int || final_float)
3463 0 : && inter_prec >= inside_prec
3464 0 : && (inter_float || inter_unsignedp == inside_unsignedp)
3465 : )
3466 : {
3467 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1124;
3468 0 : {
3469 0 : tree res_op0;
3470 0 : res_op0 = captures[1];
3471 0 : tree _r;
3472 0 : _r = fold_build1_loc (loc, FIX_TRUNC_EXPR, type, res_op0);
3473 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 836, __FILE__, __LINE__, true);
3474 0 : return _r;
3475 : }
3476 0 : next_after_fail1124:;
3477 0 : }
3478 : else
3479 : {
3480 596 : if (inside_int && inter_int && final_int
3481 0 : && ((inside_prec < inter_prec && inter_prec < final_prec
3482 0 : && inside_unsignedp && !inter_unsignedp)
3483 0 : || final_prec == inter_prec
3484 0 : || (inside_prec < inter_prec && inter_prec > final_prec
3485 0 : && !inside_unsignedp && inter_unsignedp))
3486 : )
3487 : {
3488 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1125;
3489 0 : {
3490 0 : tree res_op0;
3491 0 : res_op0 = captures[1];
3492 0 : tree _r;
3493 0 : _r = fold_build1_loc (loc, FIX_TRUNC_EXPR, type, res_op0);
3494 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 837, __FILE__, __LINE__, true);
3495 0 : return _r;
3496 : }
3497 0 : next_after_fail1125:;
3498 0 : }
3499 : else
3500 : {
3501 596 : if (! inside_float && ! inter_float && ! final_float
3502 : && ! inside_vec && ! inter_vec && ! final_vec
3503 0 : && (inter_prec >= inside_prec || inter_prec >= final_prec)
3504 0 : && ! (inside_int && inter_int
3505 0 : && inter_unsignedp != inside_unsignedp
3506 0 : && inter_prec < final_prec)
3507 0 : && ((inter_unsignedp && inter_prec > inside_prec)
3508 0 : == (final_unsignedp && final_prec > inter_prec))
3509 0 : && ! (inside_ptr && inter_prec != final_prec)
3510 0 : && ! (final_ptr && inside_prec != inter_prec)
3511 : )
3512 : {
3513 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1126;
3514 0 : {
3515 0 : tree res_op0;
3516 0 : res_op0 = captures[1];
3517 0 : tree _r;
3518 0 : _r = fold_build1_loc (loc, FIX_TRUNC_EXPR, type, res_op0);
3519 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 838, __FILE__, __LINE__, true);
3520 0 : return _r;
3521 : }
3522 0 : next_after_fail1126:;
3523 0 : }
3524 : else
3525 : {
3526 596 : if (inside_int && inter_int && final_int
3527 0 : && final_prec <= inside_prec
3528 0 : && inter_prec >= inside_prec
3529 : )
3530 : {
3531 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1127;
3532 0 : {
3533 0 : tree res_op0;
3534 0 : res_op0 = captures[1];
3535 0 : tree _r;
3536 0 : _r = fold_build1_loc (loc, NOP_EXPR, type, res_op0);
3537 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 839, __FILE__, __LINE__, true);
3538 0 : return _r;
3539 : }
3540 0 : next_after_fail1127:;
3541 0 : }
3542 : else
3543 : {
3544 : if (0
3545 : && final_int && inter_int && inside_int
3546 : && final_prec >= inside_prec
3547 : && inside_prec > inter_prec
3548 : && inter_unsignedp
3549 : )
3550 : {
3551 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1128;
3552 : {
3553 : tree res_op0;
3554 : {
3555 : tree _o1[2], _r1;
3556 : _o1[0] = captures[1];
3557 : _o1[1] = wide_int_to_tree
3558 : (inside_type,
3559 : wi::mask (inter_prec, false,
3560 : TYPE_PRECISION (inside_type)));
3561 : _r1 = fold_build2_loc (loc, BIT_AND_EXPR, TREE_TYPE (_o1[0]), _o1[0], _o1[1]);
3562 : res_op0 = _r1;
3563 : }
3564 : tree _r;
3565 : _r = fold_build1_loc (loc, NOP_EXPR, type, res_op0);
3566 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 840, __FILE__, __LINE__, true);
3567 : return _r;
3568 : }
3569 : next_after_fail1128:;
3570 : }
3571 : else
3572 : {
3573 : if (0
3574 : && inside_int && inter_float && final_int &&
3575 : (unsigned) significand_size (TYPE_MODE (inter_type))
3576 : >= inside_prec - !inside_unsignedp
3577 : )
3578 : {
3579 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1129;
3580 : {
3581 : tree res_op0;
3582 : res_op0 = captures[1];
3583 : tree _r;
3584 : _r = fold_build1_loc (loc, NOP_EXPR, type, res_op0);
3585 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 841, __FILE__, __LINE__, true);
3586 : return _r;
3587 : }
3588 : next_after_fail1129:;
3589 : }
3590 : }
3591 : }
3592 : }
3593 : }
3594 : }
3595 : }
3596 : }
3597 : }
3598 596 : break;
3599 : }
3600 : default:;
3601 : }
3602 : return NULL_TREE;
3603 : }
3604 :
3605 : tree
3606 1851440 : generic_simplify_BIT_IOR_EXPR (location_t ARG_UNUSED (loc), enum tree_code ARG_UNUSED (code), const tree ARG_UNUSED (type), tree _p0, tree _p1)
3607 : {
3608 1851440 : const bool debug_dump = dump_file && (dump_flags & TDF_FOLDING);
3609 1851440 : if (integer_zerop (_p1))
3610 : {
3611 3559 : {
3612 3559 : tree captures[1] ATTRIBUTE_UNUSED = { _p0 };
3613 3559 : if (TREE_SIDE_EFFECTS (_p1)) goto next_after_fail1305;
3614 3559 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1305;
3615 3559 : {
3616 3559 : tree res_op0;
3617 3559 : res_op0 = captures[0];
3618 3559 : tree _r;
3619 3559 : _r = non_lvalue_loc (loc, res_op0);
3620 3559 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 886, __FILE__, __LINE__, true);
3621 3559 : return _r;
3622 : }
3623 : next_after_fail1305:;
3624 : }
3625 : }
3626 1847881 : switch (TREE_CODE (_p0))
3627 : {
3628 381977 : case LSHIFT_EXPR:
3629 381977 : {
3630 381977 : tree _q20 = TREE_OPERAND (_p0, 0);
3631 381977 : tree _q21 = TREE_OPERAND (_p0, 1);
3632 381977 : switch (TREE_CODE (_p1))
3633 : {
3634 1135 : case LSHIFT_EXPR:
3635 1135 : {
3636 1135 : tree _q50 = TREE_OPERAND (_p1, 0);
3637 1135 : tree _q51 = TREE_OPERAND (_p1, 1);
3638 1135 : if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
3639 : {
3640 1 : {
3641 1 : tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q50 };
3642 1 : tree res = generic_simplify_3 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR);
3643 1 : if (res) return res;
3644 : }
3645 : }
3646 : break;
3647 : }
3648 : default:;
3649 : }
3650 : break;
3651 : }
3652 19091 : case RSHIFT_EXPR:
3653 19091 : {
3654 19091 : tree _q20 = TREE_OPERAND (_p0, 0);
3655 19091 : tree _q21 = TREE_OPERAND (_p0, 1);
3656 19091 : switch (TREE_CODE (_p1))
3657 : {
3658 21 : case RSHIFT_EXPR:
3659 21 : {
3660 21 : tree _q50 = TREE_OPERAND (_p1, 0);
3661 21 : tree _q51 = TREE_OPERAND (_p1, 1);
3662 21 : if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
3663 : {
3664 3 : {
3665 3 : tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q50 };
3666 3 : tree res = generic_simplify_4 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR);
3667 3 : if (res) return res;
3668 : }
3669 : }
3670 : break;
3671 : }
3672 : default:;
3673 : }
3674 : break;
3675 : }
3676 274 : case NE_EXPR:
3677 274 : {
3678 274 : tree _q20 = TREE_OPERAND (_p0, 0);
3679 274 : tree _q21 = TREE_OPERAND (_p0, 1);
3680 274 : if (integer_zerop (_q21))
3681 : {
3682 91 : switch (TREE_CODE (_p1))
3683 : {
3684 8 : case NE_EXPR:
3685 8 : {
3686 8 : tree _q50 = TREE_OPERAND (_p1, 0);
3687 8 : tree _q51 = TREE_OPERAND (_p1, 1);
3688 8 : if (integer_zerop (_q51))
3689 : {
3690 7 : {
3691 7 : tree captures[3] ATTRIBUTE_UNUSED = { _q20, _q21, _q50 };
3692 7 : tree res = generic_simplify_111 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR, NE_EXPR);
3693 7 : if (res) return res;
3694 : }
3695 : }
3696 : break;
3697 : }
3698 : default:;
3699 : }
3700 : }
3701 267 : if (integer_all_onesp (_q21))
3702 : {
3703 0 : switch (TREE_CODE (_p1))
3704 : {
3705 0 : case NE_EXPR:
3706 0 : {
3707 0 : tree _q50 = TREE_OPERAND (_p1, 0);
3708 0 : tree _q51 = TREE_OPERAND (_p1, 1);
3709 0 : if (integer_all_onesp (_q51))
3710 : {
3711 0 : {
3712 0 : tree captures[3] ATTRIBUTE_UNUSED = { _q20, _q21, _q50 };
3713 0 : tree res = generic_simplify_112 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR, NE_EXPR);
3714 0 : if (res) return res;
3715 : }
3716 : }
3717 : break;
3718 : }
3719 : default:;
3720 : }
3721 : }
3722 : break;
3723 : }
3724 79215 : case BIT_AND_EXPR:
3725 79215 : {
3726 79215 : tree _q20 = TREE_OPERAND (_p0, 0);
3727 79215 : tree _q21 = TREE_OPERAND (_p0, 1);
3728 79215 : switch (TREE_CODE (_p1))
3729 : {
3730 17403 : case BIT_AND_EXPR:
3731 17403 : {
3732 17403 : tree _q50 = TREE_OPERAND (_p1, 0);
3733 17403 : tree _q51 = TREE_OPERAND (_p1, 1);
3734 17403 : {
3735 17403 : tree captures[4] ATTRIBUTE_UNUSED = { _q20, _q21, _q50, _q51 };
3736 17403 : tree res = generic_simplify_5 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR);
3737 17403 : if (res) return res;
3738 : }
3739 17403 : {
3740 17403 : tree captures[4] ATTRIBUTE_UNUSED = { _q20, _q21, _q51, _q50 };
3741 17403 : tree res = generic_simplify_5 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR);
3742 17403 : if (res) return res;
3743 : }
3744 17399 : {
3745 17399 : tree captures[4] ATTRIBUTE_UNUSED = { _q21, _q20, _q50, _q51 };
3746 17399 : tree res = generic_simplify_5 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR);
3747 17399 : if (res) return res;
3748 : }
3749 17399 : {
3750 17399 : tree captures[4] ATTRIBUTE_UNUSED = { _q21, _q20, _q51, _q50 };
3751 17399 : tree res = generic_simplify_5 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR);
3752 17399 : if (res) return res;
3753 : }
3754 17399 : break;
3755 : }
3756 : default:;
3757 : }
3758 : break;
3759 : }
3760 9698 : case BIT_XOR_EXPR:
3761 9698 : {
3762 9698 : tree _q20 = TREE_OPERAND (_p0, 0);
3763 9698 : tree _q21 = TREE_OPERAND (_p0, 1);
3764 9698 : if ((_p1 == _q20 && ! TREE_SIDE_EFFECTS (_p1)) || (operand_equal_p (_p1, _q20, 0) && types_match (_p1, _q20)))
3765 : {
3766 1 : {
3767 1 : tree captures[2] ATTRIBUTE_UNUSED = { _q20, _q21 };
3768 1 : tree res = generic_simplify_113 (loc, type, _p0, _p1, captures);
3769 1 : if (res) return res;
3770 : }
3771 : }
3772 9697 : if ((_p1 == _q21 && ! TREE_SIDE_EFFECTS (_p1)) || (operand_equal_p (_p1, _q21, 0) && types_match (_p1, _q21)))
3773 : {
3774 0 : {
3775 0 : tree captures[2] ATTRIBUTE_UNUSED = { _q21, _q20 };
3776 0 : tree res = generic_simplify_113 (loc, type, _p0, _p1, captures);
3777 0 : if (res) return res;
3778 : }
3779 : }
3780 9697 : switch (TREE_CODE (_p1))
3781 : {
3782 102 : case BIT_AND_EXPR:
3783 102 : {
3784 102 : tree _q50 = TREE_OPERAND (_p1, 0);
3785 102 : tree _q51 = TREE_OPERAND (_p1, 1);
3786 102 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
3787 : {
3788 30 : switch (TREE_CODE (_q51))
3789 : {
3790 0 : case BIT_NOT_EXPR:
3791 0 : {
3792 0 : tree _q70 = TREE_OPERAND (_q51, 0);
3793 0 : if ((_q70 == _q21 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q21, 0) && types_match (_q70, _q21)))
3794 : {
3795 0 : {
3796 0 : tree captures[3] ATTRIBUTE_UNUSED = { _q20, _q21, _p0 };
3797 0 : tree res = generic_simplify_114 (loc, type, _p0, _p1, captures);
3798 0 : if (res) return res;
3799 : }
3800 : }
3801 : break;
3802 : }
3803 : default:;
3804 : }
3805 : }
3806 102 : if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
3807 : {
3808 9 : switch (TREE_CODE (_q51))
3809 : {
3810 0 : case BIT_NOT_EXPR:
3811 0 : {
3812 0 : tree _q70 = TREE_OPERAND (_q51, 0);
3813 0 : if ((_q70 == _q20 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q20, 0) && types_match (_q70, _q20)))
3814 : {
3815 0 : {
3816 0 : tree captures[3] ATTRIBUTE_UNUSED = { _q21, _q20, _p0 };
3817 0 : tree res = generic_simplify_114 (loc, type, _p0, _p1, captures);
3818 0 : if (res) return res;
3819 : }
3820 : }
3821 : break;
3822 : }
3823 : default:;
3824 : }
3825 : }
3826 102 : switch (TREE_CODE (_q50))
3827 : {
3828 16 : case BIT_NOT_EXPR:
3829 16 : {
3830 16 : tree _q60 = TREE_OPERAND (_q50, 0);
3831 16 : if ((_q60 == _q21 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q21, 0) && types_match (_q60, _q21)))
3832 : {
3833 0 : if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
3834 : {
3835 0 : {
3836 0 : tree captures[3] ATTRIBUTE_UNUSED = { _q20, _q21, _p0 };
3837 0 : tree res = generic_simplify_114 (loc, type, _p0, _p1, captures);
3838 0 : if (res) return res;
3839 : }
3840 : }
3841 : }
3842 16 : if ((_q60 == _q20 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q20, 0) && types_match (_q60, _q20)))
3843 : {
3844 0 : if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
3845 : {
3846 0 : {
3847 0 : tree captures[3] ATTRIBUTE_UNUSED = { _q21, _q20, _p0 };
3848 0 : tree res = generic_simplify_114 (loc, type, _p0, _p1, captures);
3849 0 : if (res) return res;
3850 : }
3851 : }
3852 : }
3853 : break;
3854 : }
3855 : default:;
3856 : }
3857 : break;
3858 : }
3859 9697 : default:;
3860 : }
3861 9697 : {
3862 9697 : tree captures[4] ATTRIBUTE_UNUSED = { _p1, _p0, _q20, _q21 };
3863 9697 : tree res = generic_simplify_115 (loc, type, _p0, _p1, captures);
3864 9697 : if (res) return res;
3865 : }
3866 9697 : {
3867 9697 : tree captures[4] ATTRIBUTE_UNUSED = { _p1, _p0, _q21, _q20 };
3868 9697 : tree res = generic_simplify_115 (loc, type, _p0, _p1, captures);
3869 9697 : if (res) return res;
3870 : }
3871 9697 : break;
3872 : }
3873 1847865 : default:;
3874 : }
3875 1847865 : switch (TREE_CODE (_p1))
3876 : {
3877 227 : case BIT_XOR_EXPR:
3878 227 : {
3879 227 : tree _q30 = TREE_OPERAND (_p1, 0);
3880 227 : tree _q31 = TREE_OPERAND (_p1, 1);
3881 227 : if ((_q30 == _p0 && ! TREE_SIDE_EFFECTS (_q30)) || (operand_equal_p (_q30, _p0, 0) && types_match (_q30, _p0)))
3882 : {
3883 15 : {
3884 15 : tree captures[2] ATTRIBUTE_UNUSED = { _p0, _q31 };
3885 15 : tree res = generic_simplify_113 (loc, type, _p0, _p1, captures);
3886 15 : if (res) return res;
3887 : }
3888 : }
3889 212 : if ((_q31 == _p0 && ! TREE_SIDE_EFFECTS (_q31)) || (operand_equal_p (_q31, _p0, 0) && types_match (_q31, _p0)))
3890 : {
3891 0 : {
3892 0 : tree captures[2] ATTRIBUTE_UNUSED = { _p0, _q30 };
3893 0 : tree res = generic_simplify_113 (loc, type, _p0, _p1, captures);
3894 0 : if (res) return res;
3895 : }
3896 : }
3897 : break;
3898 : }
3899 1847850 : default:;
3900 : }
3901 1847850 : switch (TREE_CODE (_p0))
3902 : {
3903 79211 : case BIT_AND_EXPR:
3904 79211 : {
3905 79211 : tree _q20 = TREE_OPERAND (_p0, 0);
3906 79211 : tree _q21 = TREE_OPERAND (_p0, 1);
3907 79211 : switch (TREE_CODE (_q21))
3908 : {
3909 74 : case BIT_NOT_EXPR:
3910 74 : {
3911 74 : tree _q40 = TREE_OPERAND (_q21, 0);
3912 74 : switch (TREE_CODE (_p1))
3913 : {
3914 0 : case BIT_XOR_EXPR:
3915 0 : {
3916 0 : tree _q60 = TREE_OPERAND (_p1, 0);
3917 0 : tree _q61 = TREE_OPERAND (_p1, 1);
3918 0 : if ((_q60 == _q20 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q20, 0) && types_match (_q60, _q20)))
3919 : {
3920 0 : if ((_q61 == _q40 && ! TREE_SIDE_EFFECTS (_q61)) || (operand_equal_p (_q61, _q40, 0) && types_match (_q61, _q40)))
3921 : {
3922 0 : {
3923 0 : tree captures[3] ATTRIBUTE_UNUSED = { _q20, _q40, _p1 };
3924 0 : tree res = generic_simplify_116 (loc, type, _p0, _p1, captures);
3925 0 : if (res) return res;
3926 : }
3927 : }
3928 : }
3929 0 : if ((_q60 == _q40 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q40, 0) && types_match (_q60, _q40)))
3930 : {
3931 0 : if ((_q61 == _q20 && ! TREE_SIDE_EFFECTS (_q61)) || (operand_equal_p (_q61, _q20, 0) && types_match (_q61, _q20)))
3932 : {
3933 0 : {
3934 0 : tree captures[3] ATTRIBUTE_UNUSED = { _q20, _q40, _p1 };
3935 0 : tree res = generic_simplify_116 (loc, type, _p0, _p1, captures);
3936 0 : if (res) return res;
3937 : }
3938 : }
3939 : }
3940 : break;
3941 : }
3942 : default:;
3943 : }
3944 : break;
3945 : }
3946 79211 : default:;
3947 : }
3948 79211 : switch (TREE_CODE (_q20))
3949 : {
3950 348 : case BIT_NOT_EXPR:
3951 348 : {
3952 348 : tree _q30 = TREE_OPERAND (_q20, 0);
3953 348 : switch (TREE_CODE (_p1))
3954 : {
3955 54 : case BIT_XOR_EXPR:
3956 54 : {
3957 54 : tree _q60 = TREE_OPERAND (_p1, 0);
3958 54 : tree _q61 = TREE_OPERAND (_p1, 1);
3959 54 : if ((_q60 == _q21 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q21, 0) && types_match (_q60, _q21)))
3960 : {
3961 18 : if ((_q61 == _q30 && ! TREE_SIDE_EFFECTS (_q61)) || (operand_equal_p (_q61, _q30, 0) && types_match (_q61, _q30)))
3962 : {
3963 0 : {
3964 0 : tree captures[3] ATTRIBUTE_UNUSED = { _q21, _q30, _p1 };
3965 0 : tree res = generic_simplify_116 (loc, type, _p0, _p1, captures);
3966 0 : if (res) return res;
3967 : }
3968 : }
3969 : }
3970 54 : if ((_q60 == _q30 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q30, 0) && types_match (_q60, _q30)))
3971 : {
3972 9 : if ((_q61 == _q21 && ! TREE_SIDE_EFFECTS (_q61)) || (operand_equal_p (_q61, _q21, 0) && types_match (_q61, _q21)))
3973 : {
3974 0 : {
3975 0 : tree captures[3] ATTRIBUTE_UNUSED = { _q21, _q30, _p1 };
3976 0 : tree res = generic_simplify_116 (loc, type, _p0, _p1, captures);
3977 0 : if (res) return res;
3978 : }
3979 : }
3980 : }
3981 : break;
3982 : }
3983 : default:;
3984 : }
3985 : break;
3986 : }
3987 : default:;
3988 : }
3989 : break;
3990 : }
3991 1847850 : default:;
3992 : }
3993 1847850 : switch (TREE_CODE (_p1))
3994 : {
3995 416 : case BIT_NOT_EXPR:
3996 416 : {
3997 416 : tree _q30 = TREE_OPERAND (_p1, 0);
3998 416 : switch (TREE_CODE (_q30))
3999 : {
4000 40 : case BIT_XOR_EXPR:
4001 40 : {
4002 40 : tree _q40 = TREE_OPERAND (_q30, 0);
4003 40 : tree _q41 = TREE_OPERAND (_q30, 1);
4004 40 : if ((_q40 == _p0 && ! TREE_SIDE_EFFECTS (_q40)) || (operand_equal_p (_q40, _p0, 0) && types_match (_q40, _p0)))
4005 : {
4006 0 : {
4007 0 : tree captures[3] ATTRIBUTE_UNUSED = { _p0, _p1, _q41 };
4008 0 : tree res = generic_simplify_117 (loc, type, _p0, _p1, captures);
4009 0 : if (res) return res;
4010 : }
4011 : }
4012 40 : if ((_q41 == _p0 && ! TREE_SIDE_EFFECTS (_q41)) || (operand_equal_p (_q41, _p0, 0) && types_match (_q41, _p0)))
4013 : {
4014 0 : {
4015 0 : tree captures[3] ATTRIBUTE_UNUSED = { _p0, _p1, _q40 };
4016 0 : tree res = generic_simplify_117 (loc, type, _p0, _p1, captures);
4017 0 : if (res) return res;
4018 : }
4019 : }
4020 : break;
4021 : }
4022 : default:;
4023 : }
4024 : break;
4025 : }
4026 1847850 : default:;
4027 : }
4028 1847850 : switch (TREE_CODE (_p0))
4029 : {
4030 21903 : case BIT_NOT_EXPR:
4031 21903 : {
4032 21903 : tree _q20 = TREE_OPERAND (_p0, 0);
4033 21903 : switch (TREE_CODE (_q20))
4034 : {
4035 123 : case BIT_XOR_EXPR:
4036 123 : {
4037 123 : tree _q30 = TREE_OPERAND (_q20, 0);
4038 123 : tree _q31 = TREE_OPERAND (_q20, 1);
4039 123 : if ((_p1 == _q30 && ! TREE_SIDE_EFFECTS (_p1)) || (operand_equal_p (_p1, _q30, 0) && types_match (_p1, _q30)))
4040 : {
4041 0 : {
4042 0 : tree captures[3] ATTRIBUTE_UNUSED = { _q30, _p0, _q31 };
4043 0 : tree res = generic_simplify_117 (loc, type, _p0, _p1, captures);
4044 0 : if (res) return res;
4045 : }
4046 : }
4047 123 : if ((_p1 == _q31 && ! TREE_SIDE_EFFECTS (_p1)) || (operand_equal_p (_p1, _q31, 0) && types_match (_p1, _q31)))
4048 : {
4049 0 : {
4050 0 : tree captures[3] ATTRIBUTE_UNUSED = { _q31, _p0, _q30 };
4051 0 : tree res = generic_simplify_117 (loc, type, _p0, _p1, captures);
4052 0 : if (res) return res;
4053 : }
4054 : }
4055 : break;
4056 : }
4057 : default:;
4058 : }
4059 : break;
4060 : }
4061 1847850 : default:;
4062 : }
4063 1847850 : {
4064 1847850 : tree _p1_pops[1];
4065 1847850 : if (tree_nop_convert (_p1, _p1_pops))
4066 : {
4067 942396 : tree _q30 = _p1_pops[0];
4068 942396 : switch (TREE_CODE (_q30))
4069 : {
4070 0 : case EQ_EXPR:
4071 0 : {
4072 0 : tree _q40 = TREE_OPERAND (_q30, 0);
4073 0 : tree _q41 = TREE_OPERAND (_q30, 1);
4074 0 : if ((_q40 == _p0 && ! TREE_SIDE_EFFECTS (_q40)) || (operand_equal_p (_q40, _p0, 0) && types_match (_q40, _p0)))
4075 : {
4076 0 : {
4077 0 : tree captures[2] ATTRIBUTE_UNUSED = { _p0, _q41 };
4078 0 : tree res = generic_simplify_118 (loc, type, _p0, _p1, captures);
4079 0 : if (res) return res;
4080 : }
4081 : }
4082 0 : if ((_q41 == _p0 && ! TREE_SIDE_EFFECTS (_q41)) || (operand_equal_p (_q41, _p0, 0) && types_match (_q41, _p0)))
4083 : {
4084 0 : {
4085 0 : tree captures[2] ATTRIBUTE_UNUSED = { _p0, _q40 };
4086 0 : tree res = generic_simplify_118 (loc, type, _p0, _p1, captures);
4087 0 : if (res) return res;
4088 : }
4089 : }
4090 : break;
4091 : }
4092 : default:;
4093 : }
4094 : }
4095 : }
4096 1847850 : {
4097 1847850 : tree _p0_pops[1];
4098 1847850 : if (tree_nop_convert (_p0, _p0_pops))
4099 : {
4100 565332 : tree _q20 = _p0_pops[0];
4101 565332 : switch (TREE_CODE (_q20))
4102 : {
4103 0 : case EQ_EXPR:
4104 0 : {
4105 0 : tree _q30 = TREE_OPERAND (_q20, 0);
4106 0 : tree _q31 = TREE_OPERAND (_q20, 1);
4107 0 : if ((_p1 == _q30 && ! TREE_SIDE_EFFECTS (_p1)) || (operand_equal_p (_p1, _q30, 0) && types_match (_p1, _q30)))
4108 : {
4109 0 : {
4110 0 : tree captures[2] ATTRIBUTE_UNUSED = { _q30, _q31 };
4111 0 : tree res = generic_simplify_118 (loc, type, _p0, _p1, captures);
4112 0 : if (res) return res;
4113 : }
4114 : }
4115 0 : if ((_p1 == _q31 && ! TREE_SIDE_EFFECTS (_p1)) || (operand_equal_p (_p1, _q31, 0) && types_match (_p1, _q31)))
4116 : {
4117 0 : {
4118 0 : tree captures[2] ATTRIBUTE_UNUSED = { _q31, _q30 };
4119 0 : tree res = generic_simplify_118 (loc, type, _p0, _p1, captures);
4120 0 : if (res) return res;
4121 : }
4122 : }
4123 : break;
4124 : }
4125 : default:;
4126 : }
4127 : }
4128 : }
4129 1847850 : switch (TREE_CODE (_p1))
4130 : {
4131 862 : case EQ_EXPR:
4132 862 : {
4133 862 : tree _q30 = TREE_OPERAND (_p1, 0);
4134 862 : tree _q31 = TREE_OPERAND (_p1, 1);
4135 862 : if ((_q30 == _p0 && ! TREE_SIDE_EFFECTS (_q30)) || (operand_equal_p (_q30, _p0, 0) && types_match (_q30, _p0)))
4136 : {
4137 0 : {
4138 0 : tree captures[2] ATTRIBUTE_UNUSED = { _p0, _q31 };
4139 0 : tree res = generic_simplify_118 (loc, type, _p0, _p1, captures);
4140 0 : if (res) return res;
4141 : }
4142 : }
4143 862 : if ((_q31 == _p0 && ! TREE_SIDE_EFFECTS (_q31)) || (operand_equal_p (_q31, _p0, 0) && types_match (_q31, _p0)))
4144 : {
4145 8 : {
4146 8 : tree captures[2] ATTRIBUTE_UNUSED = { _p0, _q30 };
4147 8 : tree res = generic_simplify_118 (loc, type, _p0, _p1, captures);
4148 8 : if (res) return res;
4149 : }
4150 : }
4151 : break;
4152 : }
4153 1847850 : default:;
4154 : }
4155 1847850 : switch (TREE_CODE (_p0))
4156 : {
4157 905 : case EQ_EXPR:
4158 905 : {
4159 905 : tree _q20 = TREE_OPERAND (_p0, 0);
4160 905 : tree _q21 = TREE_OPERAND (_p0, 1);
4161 905 : if ((_p1 == _q20 && ! TREE_SIDE_EFFECTS (_p1)) || (operand_equal_p (_p1, _q20, 0) && types_match (_p1, _q20)))
4162 : {
4163 8 : {
4164 8 : tree captures[2] ATTRIBUTE_UNUSED = { _q20, _q21 };
4165 8 : tree res = generic_simplify_118 (loc, type, _p0, _p1, captures);
4166 8 : if (res) return res;
4167 : }
4168 : }
4169 905 : if ((_p1 == _q21 && ! TREE_SIDE_EFFECTS (_p1)) || (operand_equal_p (_p1, _q21, 0) && types_match (_p1, _q21)))
4170 : {
4171 0 : {
4172 0 : tree captures[2] ATTRIBUTE_UNUSED = { _q21, _q20 };
4173 0 : tree res = generic_simplify_118 (loc, type, _p0, _p1, captures);
4174 0 : if (res) return res;
4175 : }
4176 : }
4177 : break;
4178 : }
4179 1847850 : default:;
4180 : }
4181 1847850 : switch (TREE_CODE (_p1))
4182 : {
4183 212 : case BIT_XOR_EXPR:
4184 212 : {
4185 212 : tree _q30 = TREE_OPERAND (_p1, 0);
4186 212 : tree _q31 = TREE_OPERAND (_p1, 1);
4187 212 : {
4188 212 : tree captures[4] ATTRIBUTE_UNUSED = { _p0, _p1, _q30, _q31 };
4189 212 : tree res = generic_simplify_115 (loc, type, _p0, _p1, captures);
4190 212 : if (res) return res;
4191 : }
4192 211 : {
4193 211 : tree captures[4] ATTRIBUTE_UNUSED = { _p0, _p1, _q31, _q30 };
4194 211 : tree res = generic_simplify_115 (loc, type, _p0, _p1, captures);
4195 211 : if (res) return res;
4196 : }
4197 211 : break;
4198 : }
4199 1847849 : default:;
4200 : }
4201 1847849 : switch (TREE_CODE (_p0))
4202 : {
4203 21998 : case PLUS_EXPR:
4204 21998 : {
4205 21998 : tree _q20 = TREE_OPERAND (_p0, 0);
4206 21998 : tree _q21 = TREE_OPERAND (_p0, 1);
4207 21998 : if (integer_minus_onep (_q21))
4208 : {
4209 10552 : switch (TREE_CODE (_p1))
4210 : {
4211 9 : case NEGATE_EXPR:
4212 9 : {
4213 9 : tree _q50 = TREE_OPERAND (_p1, 0);
4214 9 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
4215 : {
4216 9 : {
4217 9 : tree captures[1] ATTRIBUTE_UNUSED = { _q20 };
4218 9 : tree res = generic_simplify_8 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR);
4219 9 : if (res) return res;
4220 : }
4221 : }
4222 : break;
4223 : }
4224 : default:;
4225 : }
4226 : }
4227 : break;
4228 : }
4229 204 : case NEGATE_EXPR:
4230 204 : {
4231 204 : tree _q20 = TREE_OPERAND (_p0, 0);
4232 204 : switch (TREE_CODE (_p1))
4233 : {
4234 8 : case PLUS_EXPR:
4235 8 : {
4236 8 : tree _q40 = TREE_OPERAND (_p1, 0);
4237 8 : tree _q41 = TREE_OPERAND (_p1, 1);
4238 8 : if ((_q40 == _q20 && ! TREE_SIDE_EFFECTS (_q40)) || (operand_equal_p (_q40, _q20, 0) && types_match (_q40, _q20)))
4239 : {
4240 0 : if (integer_minus_onep (_q41))
4241 : {
4242 0 : {
4243 0 : tree captures[1] ATTRIBUTE_UNUSED = { _q20 };
4244 0 : tree res = generic_simplify_9 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR);
4245 0 : if (res) return res;
4246 : }
4247 : }
4248 : }
4249 : break;
4250 : }
4251 0 : case MINUS_EXPR:
4252 0 : {
4253 0 : tree _q40 = TREE_OPERAND (_p1, 0);
4254 0 : tree _q41 = TREE_OPERAND (_p1, 1);
4255 0 : if ((_q40 == _q20 && ! TREE_SIDE_EFFECTS (_q40)) || (operand_equal_p (_q40, _q20, 0) && types_match (_q40, _q20)))
4256 : {
4257 0 : if (integer_onep (_q41))
4258 : {
4259 0 : {
4260 0 : tree captures[1] ATTRIBUTE_UNUSED = { _q20 };
4261 0 : tree res = generic_simplify_10 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR);
4262 0 : if (res) return res;
4263 : }
4264 : }
4265 : }
4266 : break;
4267 : }
4268 : default:;
4269 : }
4270 : break;
4271 : }
4272 10497 : case MINUS_EXPR:
4273 10497 : {
4274 10497 : tree _q20 = TREE_OPERAND (_p0, 0);
4275 10497 : tree _q21 = TREE_OPERAND (_p0, 1);
4276 10497 : if (integer_onep (_q21))
4277 : {
4278 0 : switch (TREE_CODE (_p1))
4279 : {
4280 0 : case NEGATE_EXPR:
4281 0 : {
4282 0 : tree _q50 = TREE_OPERAND (_p1, 0);
4283 0 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
4284 : {
4285 0 : {
4286 0 : tree captures[1] ATTRIBUTE_UNUSED = { _q20 };
4287 0 : tree res = generic_simplify_11 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR);
4288 0 : if (res) return res;
4289 : }
4290 : }
4291 : break;
4292 : }
4293 : default:;
4294 : }
4295 : }
4296 : break;
4297 : }
4298 17913 : case BIT_IOR_EXPR:
4299 17913 : {
4300 17913 : tree _q20 = TREE_OPERAND (_p0, 0);
4301 17913 : tree _q21 = TREE_OPERAND (_p0, 1);
4302 17913 : switch (TREE_CODE (_p1))
4303 : {
4304 5533 : case BIT_AND_EXPR:
4305 5533 : {
4306 5533 : tree _q50 = TREE_OPERAND (_p1, 0);
4307 5533 : tree _q51 = TREE_OPERAND (_p1, 1);
4308 5533 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
4309 : {
4310 0 : if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
4311 : {
4312 0 : {
4313 0 : tree captures[3] ATTRIBUTE_UNUSED = { _p0, _q20, _q21 };
4314 0 : tree res = generic_simplify_119 (loc, type, _p0, _p1, captures, BIT_AND_EXPR);
4315 0 : if (res) return res;
4316 : }
4317 : }
4318 : }
4319 5533 : if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
4320 : {
4321 0 : if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
4322 : {
4323 0 : {
4324 0 : tree captures[3] ATTRIBUTE_UNUSED = { _p0, _q20, _q21 };
4325 0 : tree res = generic_simplify_119 (loc, type, _p0, _p1, captures, BIT_AND_EXPR);
4326 0 : if (res) return res;
4327 : }
4328 : }
4329 : }
4330 : break;
4331 : }
4332 2 : case BIT_XOR_EXPR:
4333 2 : {
4334 2 : tree _q50 = TREE_OPERAND (_p1, 0);
4335 2 : tree _q51 = TREE_OPERAND (_p1, 1);
4336 2 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
4337 : {
4338 0 : if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
4339 : {
4340 0 : {
4341 0 : tree captures[3] ATTRIBUTE_UNUSED = { _p0, _q20, _q21 };
4342 0 : tree res = generic_simplify_119 (loc, type, _p0, _p1, captures, BIT_XOR_EXPR);
4343 0 : if (res) return res;
4344 : }
4345 : }
4346 : }
4347 2 : if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
4348 : {
4349 0 : if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
4350 : {
4351 0 : {
4352 0 : tree captures[3] ATTRIBUTE_UNUSED = { _p0, _q20, _q21 };
4353 0 : tree res = generic_simplify_119 (loc, type, _p0, _p1, captures, BIT_XOR_EXPR);
4354 0 : if (res) return res;
4355 : }
4356 : }
4357 : }
4358 : break;
4359 : }
4360 1923 : CASE_CONVERT:
4361 1923 : {
4362 1923 : tree _q50 = TREE_OPERAND (_p1, 0);
4363 1923 : if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || operand_equal_p (_q50, _q21, 0))
4364 : {
4365 0 : {
4366 0 : tree captures[4] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _q21 };
4367 0 : tree res = generic_simplify_120 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR);
4368 0 : if (res) return res;
4369 : }
4370 : }
4371 1923 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || operand_equal_p (_q50, _q20, 0))
4372 : {
4373 0 : {
4374 0 : tree captures[4] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _q20 };
4375 0 : tree res = generic_simplify_120 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR);
4376 0 : if (res) return res;
4377 : }
4378 : }
4379 : break;
4380 : }
4381 17913 : default:;
4382 : }
4383 17913 : if ((_p1 == _q21 && ! TREE_SIDE_EFFECTS (_p1)) || operand_equal_p (_p1, _q21, 0))
4384 : {
4385 0 : {
4386 0 : tree captures[4] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _q21 };
4387 0 : tree res = generic_simplify_120 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR);
4388 0 : if (res) return res;
4389 : }
4390 : }
4391 17913 : if ((_p1 == _q20 && ! TREE_SIDE_EFFECTS (_p1)) || operand_equal_p (_p1, _q20, 0))
4392 : {
4393 0 : {
4394 0 : tree captures[4] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _q20 };
4395 0 : tree res = generic_simplify_120 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR);
4396 0 : if (res) return res;
4397 : }
4398 : }
4399 : break;
4400 : }
4401 79211 : case BIT_AND_EXPR:
4402 79211 : {
4403 79211 : tree _q20 = TREE_OPERAND (_p0, 0);
4404 79211 : tree _q21 = TREE_OPERAND (_p0, 1);
4405 79211 : switch (TREE_CODE (_p1))
4406 : {
4407 1 : case BIT_IOR_EXPR:
4408 1 : {
4409 1 : tree _q50 = TREE_OPERAND (_p1, 0);
4410 1 : tree _q51 = TREE_OPERAND (_p1, 1);
4411 1 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
4412 : {
4413 1 : if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
4414 : {
4415 0 : {
4416 0 : tree captures[3] ATTRIBUTE_UNUSED = { _p1, _q20, _q21 };
4417 0 : tree res = generic_simplify_121 (loc, type, _p0, _p1, captures, BIT_AND_EXPR);
4418 0 : if (res) return res;
4419 : }
4420 : }
4421 : }
4422 1 : if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
4423 : {
4424 0 : if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
4425 : {
4426 0 : {
4427 0 : tree captures[3] ATTRIBUTE_UNUSED = { _p1, _q21, _q20 };
4428 0 : tree res = generic_simplify_121 (loc, type, _p0, _p1, captures, BIT_AND_EXPR);
4429 0 : if (res) return res;
4430 : }
4431 : }
4432 : }
4433 : break;
4434 : }
4435 73 : case BIT_NOT_EXPR:
4436 73 : {
4437 73 : tree _q50 = TREE_OPERAND (_p1, 0);
4438 73 : switch (TREE_CODE (_q50))
4439 : {
4440 0 : case BIT_XOR_EXPR:
4441 0 : {
4442 0 : tree _q60 = TREE_OPERAND (_q50, 0);
4443 0 : tree _q61 = TREE_OPERAND (_q50, 1);
4444 0 : if ((_q60 == _q20 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q20, 0) && types_match (_q60, _q20)))
4445 : {
4446 0 : if ((_q61 == _q21 && ! TREE_SIDE_EFFECTS (_q61)) || (operand_equal_p (_q61, _q21, 0) && types_match (_q61, _q21)))
4447 : {
4448 0 : {
4449 0 : tree captures[3] ATTRIBUTE_UNUSED = { _q20, _q21, _p1 };
4450 0 : tree res = generic_simplify_122 (loc, type, _p0, _p1, captures);
4451 0 : if (res) return res;
4452 : }
4453 : }
4454 : }
4455 0 : if ((_q60 == _q21 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q21, 0) && types_match (_q60, _q21)))
4456 : {
4457 0 : if ((_q61 == _q20 && ! TREE_SIDE_EFFECTS (_q61)) || (operand_equal_p (_q61, _q20, 0) && types_match (_q61, _q20)))
4458 : {
4459 0 : {
4460 0 : tree captures[3] ATTRIBUTE_UNUSED = { _q21, _q20, _p1 };
4461 0 : tree res = generic_simplify_122 (loc, type, _p0, _p1, captures);
4462 0 : if (res) return res;
4463 : }
4464 : }
4465 : }
4466 : break;
4467 : }
4468 : default:;
4469 : }
4470 : break;
4471 : }
4472 24 : case EQ_EXPR:
4473 24 : {
4474 24 : tree _q50 = TREE_OPERAND (_p1, 0);
4475 24 : tree _q51 = TREE_OPERAND (_p1, 1);
4476 24 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
4477 : {
4478 8 : if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
4479 : {
4480 8 : {
4481 8 : tree captures[3] ATTRIBUTE_UNUSED = { _q20, _q21, _p1 };
4482 8 : tree res = generic_simplify_123 (loc, type, _p0, _p1, captures);
4483 8 : if (res) return res;
4484 : }
4485 : }
4486 : }
4487 24 : if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
4488 : {
4489 0 : if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
4490 : {
4491 0 : {
4492 0 : tree captures[3] ATTRIBUTE_UNUSED = { _q21, _q20, _p1 };
4493 0 : tree res = generic_simplify_123 (loc, type, _p0, _p1, captures);
4494 0 : if (res) return res;
4495 : }
4496 : }
4497 : }
4498 : break;
4499 : }
4500 79211 : default:;
4501 : }
4502 79211 : {
4503 79211 : tree _p1_pops[1];
4504 79211 : if (tree_nop_convert (_p1, _p1_pops))
4505 : {
4506 261 : tree _q50 = _p1_pops[0];
4507 261 : switch (TREE_CODE (_q50))
4508 : {
4509 0 : case EQ_EXPR:
4510 0 : {
4511 0 : tree _q60 = TREE_OPERAND (_q50, 0);
4512 0 : tree _q61 = TREE_OPERAND (_q50, 1);
4513 0 : if ((_q60 == _q20 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q20, 0) && types_match (_q60, _q20)))
4514 : {
4515 0 : if ((_q61 == _q21 && ! TREE_SIDE_EFFECTS (_q61)) || (operand_equal_p (_q61, _q21, 0) && types_match (_q61, _q21)))
4516 : {
4517 0 : {
4518 0 : tree captures[3] ATTRIBUTE_UNUSED = { _q20, _q21, _p1 };
4519 0 : tree res = generic_simplify_123 (loc, type, _p0, _p1, captures);
4520 0 : if (res) return res;
4521 : }
4522 : }
4523 : }
4524 0 : if ((_q60 == _q21 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q21, 0) && types_match (_q60, _q21)))
4525 : {
4526 0 : if ((_q61 == _q20 && ! TREE_SIDE_EFFECTS (_q61)) || (operand_equal_p (_q61, _q20, 0) && types_match (_q61, _q20)))
4527 : {
4528 0 : {
4529 0 : tree captures[3] ATTRIBUTE_UNUSED = { _q21, _q20, _p1 };
4530 0 : tree res = generic_simplify_123 (loc, type, _p0, _p1, captures);
4531 0 : if (res) return res;
4532 : }
4533 : }
4534 : }
4535 : break;
4536 : }
4537 : default:;
4538 : }
4539 : }
4540 : }
4541 79211 : break;
4542 : }
4543 9696 : case BIT_XOR_EXPR:
4544 9696 : {
4545 9696 : tree _q20 = TREE_OPERAND (_p0, 0);
4546 9696 : tree _q21 = TREE_OPERAND (_p0, 1);
4547 9696 : switch (TREE_CODE (_p1))
4548 : {
4549 0 : case BIT_IOR_EXPR:
4550 0 : {
4551 0 : tree _q50 = TREE_OPERAND (_p1, 0);
4552 0 : tree _q51 = TREE_OPERAND (_p1, 1);
4553 0 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
4554 : {
4555 0 : if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
4556 : {
4557 0 : {
4558 0 : tree captures[3] ATTRIBUTE_UNUSED = { _p1, _q20, _q21 };
4559 0 : tree res = generic_simplify_121 (loc, type, _p0, _p1, captures, BIT_XOR_EXPR);
4560 0 : if (res) return res;
4561 : }
4562 : }
4563 : }
4564 0 : if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
4565 : {
4566 0 : if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
4567 : {
4568 0 : {
4569 0 : tree captures[3] ATTRIBUTE_UNUSED = { _p1, _q21, _q20 };
4570 0 : tree res = generic_simplify_121 (loc, type, _p0, _p1, captures, BIT_XOR_EXPR);
4571 0 : if (res) return res;
4572 : }
4573 : }
4574 : }
4575 : break;
4576 : }
4577 41 : case BIT_XOR_EXPR:
4578 41 : {
4579 41 : tree _q50 = TREE_OPERAND (_p1, 0);
4580 41 : tree _q51 = TREE_OPERAND (_p1, 1);
4581 41 : switch (TREE_CODE (_q50))
4582 : {
4583 2 : case BIT_XOR_EXPR:
4584 2 : {
4585 2 : tree _q60 = TREE_OPERAND (_q50, 0);
4586 2 : tree _q61 = TREE_OPERAND (_q50, 1);
4587 2 : if ((_q60 == _q21 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q21, 0) && types_match (_q60, _q21)))
4588 : {
4589 1 : if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
4590 : {
4591 1 : {
4592 1 : tree captures[4] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _q61 };
4593 1 : tree res = generic_simplify_124 (loc, type, _p0, _p1, captures);
4594 1 : if (res) return res;
4595 : }
4596 : }
4597 : }
4598 1 : if ((_q61 == _q21 && ! TREE_SIDE_EFFECTS (_q61)) || (operand_equal_p (_q61, _q21, 0) && types_match (_q61, _q21)))
4599 : {
4600 0 : if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
4601 : {
4602 0 : {
4603 0 : tree captures[4] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _q60 };
4604 0 : tree res = generic_simplify_124 (loc, type, _p0, _p1, captures);
4605 0 : if (res) return res;
4606 : }
4607 : }
4608 : }
4609 1 : if ((_q60 == _q20 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q20, 0) && types_match (_q60, _q20)))
4610 : {
4611 1 : if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
4612 : {
4613 1 : {
4614 1 : tree captures[4] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _q61 };
4615 1 : tree res = generic_simplify_124 (loc, type, _p0, _p1, captures);
4616 1 : if (res) return res;
4617 : }
4618 : }
4619 : }
4620 0 : if ((_q61 == _q20 && ! TREE_SIDE_EFFECTS (_q61)) || (operand_equal_p (_q61, _q20, 0) && types_match (_q61, _q20)))
4621 : {
4622 0 : if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
4623 : {
4624 0 : {
4625 0 : tree captures[4] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _q60 };
4626 0 : tree res = generic_simplify_124 (loc, type, _p0, _p1, captures);
4627 0 : if (res) return res;
4628 : }
4629 : }
4630 : }
4631 : break;
4632 : }
4633 39 : default:;
4634 : }
4635 39 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
4636 : {
4637 3 : switch (TREE_CODE (_q51))
4638 : {
4639 0 : case BIT_XOR_EXPR:
4640 0 : {
4641 0 : tree _q70 = TREE_OPERAND (_q51, 0);
4642 0 : tree _q71 = TREE_OPERAND (_q51, 1);
4643 0 : if ((_q70 == _q21 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q21, 0) && types_match (_q70, _q21)))
4644 : {
4645 0 : {
4646 0 : tree captures[4] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _q71 };
4647 0 : tree res = generic_simplify_124 (loc, type, _p0, _p1, captures);
4648 0 : if (res) return res;
4649 : }
4650 : }
4651 0 : if ((_q71 == _q21 && ! TREE_SIDE_EFFECTS (_q71)) || (operand_equal_p (_q71, _q21, 0) && types_match (_q71, _q21)))
4652 : {
4653 0 : {
4654 0 : tree captures[4] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _q70 };
4655 0 : tree res = generic_simplify_124 (loc, type, _p0, _p1, captures);
4656 0 : if (res) return res;
4657 : }
4658 : }
4659 : break;
4660 : }
4661 : default:;
4662 : }
4663 : }
4664 39 : if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
4665 : {
4666 0 : switch (TREE_CODE (_q51))
4667 : {
4668 0 : case BIT_XOR_EXPR:
4669 0 : {
4670 0 : tree _q70 = TREE_OPERAND (_q51, 0);
4671 0 : tree _q71 = TREE_OPERAND (_q51, 1);
4672 0 : if ((_q70 == _q20 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q20, 0) && types_match (_q70, _q20)))
4673 : {
4674 0 : {
4675 0 : tree captures[4] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _q71 };
4676 0 : tree res = generic_simplify_124 (loc, type, _p0, _p1, captures);
4677 0 : if (res) return res;
4678 : }
4679 : }
4680 0 : if ((_q71 == _q20 && ! TREE_SIDE_EFFECTS (_q71)) || (operand_equal_p (_q71, _q20, 0) && types_match (_q71, _q20)))
4681 : {
4682 0 : {
4683 0 : tree captures[4] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _q70 };
4684 0 : tree res = generic_simplify_124 (loc, type, _p0, _p1, captures);
4685 0 : if (res) return res;
4686 : }
4687 : }
4688 : break;
4689 : }
4690 : default:;
4691 : }
4692 : }
4693 : break;
4694 : }
4695 9694 : default:;
4696 : }
4697 9694 : switch (TREE_CODE (_q20))
4698 : {
4699 18 : case BIT_XOR_EXPR:
4700 18 : {
4701 18 : tree _q30 = TREE_OPERAND (_q20, 0);
4702 18 : tree _q31 = TREE_OPERAND (_q20, 1);
4703 18 : switch (TREE_CODE (_p1))
4704 : {
4705 0 : case BIT_XOR_EXPR:
4706 0 : {
4707 0 : tree _q70 = TREE_OPERAND (_p1, 0);
4708 0 : tree _q71 = TREE_OPERAND (_p1, 1);
4709 0 : if ((_q70 == _q21 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q21, 0) && types_match (_q70, _q21)))
4710 : {
4711 0 : if ((_q71 == _q30 && ! TREE_SIDE_EFFECTS (_q71)) || (operand_equal_p (_q71, _q30, 0) && types_match (_q71, _q30)))
4712 : {
4713 0 : {
4714 0 : tree captures[4] ATTRIBUTE_UNUSED = { _p1, _q21, _q30, _q31 };
4715 0 : tree res = generic_simplify_125 (loc, type, _p0, _p1, captures);
4716 0 : if (res) return res;
4717 : }
4718 : }
4719 0 : if ((_q71 == _q31 && ! TREE_SIDE_EFFECTS (_q71)) || (operand_equal_p (_q71, _q31, 0) && types_match (_q71, _q31)))
4720 : {
4721 0 : {
4722 0 : tree captures[4] ATTRIBUTE_UNUSED = { _p1, _q21, _q31, _q30 };
4723 0 : tree res = generic_simplify_125 (loc, type, _p0, _p1, captures);
4724 0 : if (res) return res;
4725 : }
4726 : }
4727 : }
4728 0 : if ((_q70 == _q30 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q30, 0) && types_match (_q70, _q30)))
4729 : {
4730 0 : if ((_q71 == _q21 && ! TREE_SIDE_EFFECTS (_q71)) || (operand_equal_p (_q71, _q21, 0) && types_match (_q71, _q21)))
4731 : {
4732 0 : {
4733 0 : tree captures[4] ATTRIBUTE_UNUSED = { _p1, _q21, _q30, _q31 };
4734 0 : tree res = generic_simplify_125 (loc, type, _p0, _p1, captures);
4735 0 : if (res) return res;
4736 : }
4737 : }
4738 : }
4739 0 : if ((_q70 == _q31 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q31, 0) && types_match (_q70, _q31)))
4740 : {
4741 0 : if ((_q71 == _q21 && ! TREE_SIDE_EFFECTS (_q71)) || (operand_equal_p (_q71, _q21, 0) && types_match (_q71, _q21)))
4742 : {
4743 0 : {
4744 0 : tree captures[4] ATTRIBUTE_UNUSED = { _p1, _q21, _q31, _q30 };
4745 0 : tree res = generic_simplify_125 (loc, type, _p0, _p1, captures);
4746 0 : if (res) return res;
4747 : }
4748 : }
4749 : }
4750 : break;
4751 : }
4752 : default:;
4753 : }
4754 : break;
4755 : }
4756 9694 : default:;
4757 : }
4758 9694 : switch (TREE_CODE (_q21))
4759 : {
4760 0 : case BIT_XOR_EXPR:
4761 0 : {
4762 0 : tree _q40 = TREE_OPERAND (_q21, 0);
4763 0 : tree _q41 = TREE_OPERAND (_q21, 1);
4764 0 : switch (TREE_CODE (_p1))
4765 : {
4766 0 : case BIT_XOR_EXPR:
4767 0 : {
4768 0 : tree _q70 = TREE_OPERAND (_p1, 0);
4769 0 : tree _q71 = TREE_OPERAND (_p1, 1);
4770 0 : if ((_q70 == _q20 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q20, 0) && types_match (_q70, _q20)))
4771 : {
4772 0 : if ((_q71 == _q40 && ! TREE_SIDE_EFFECTS (_q71)) || (operand_equal_p (_q71, _q40, 0) && types_match (_q71, _q40)))
4773 : {
4774 0 : {
4775 0 : tree captures[4] ATTRIBUTE_UNUSED = { _p1, _q20, _q40, _q41 };
4776 0 : tree res = generic_simplify_125 (loc, type, _p0, _p1, captures);
4777 0 : if (res) return res;
4778 : }
4779 : }
4780 0 : if ((_q71 == _q41 && ! TREE_SIDE_EFFECTS (_q71)) || (operand_equal_p (_q71, _q41, 0) && types_match (_q71, _q41)))
4781 : {
4782 0 : {
4783 0 : tree captures[4] ATTRIBUTE_UNUSED = { _p1, _q20, _q41, _q40 };
4784 0 : tree res = generic_simplify_125 (loc, type, _p0, _p1, captures);
4785 0 : if (res) return res;
4786 : }
4787 : }
4788 : }
4789 0 : if ((_q70 == _q40 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q40, 0) && types_match (_q70, _q40)))
4790 : {
4791 0 : if ((_q71 == _q20 && ! TREE_SIDE_EFFECTS (_q71)) || (operand_equal_p (_q71, _q20, 0) && types_match (_q71, _q20)))
4792 : {
4793 0 : {
4794 0 : tree captures[4] ATTRIBUTE_UNUSED = { _p1, _q20, _q40, _q41 };
4795 0 : tree res = generic_simplify_125 (loc, type, _p0, _p1, captures);
4796 0 : if (res) return res;
4797 : }
4798 : }
4799 : }
4800 0 : if ((_q70 == _q41 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q41, 0) && types_match (_q70, _q41)))
4801 : {
4802 0 : if ((_q71 == _q20 && ! TREE_SIDE_EFFECTS (_q71)) || (operand_equal_p (_q71, _q20, 0) && types_match (_q71, _q20)))
4803 : {
4804 0 : {
4805 0 : tree captures[4] ATTRIBUTE_UNUSED = { _p1, _q20, _q41, _q40 };
4806 0 : tree res = generic_simplify_125 (loc, type, _p0, _p1, captures);
4807 0 : if (res) return res;
4808 : }
4809 : }
4810 : }
4811 : break;
4812 : }
4813 : default:;
4814 : }
4815 : break;
4816 : }
4817 : default:;
4818 : }
4819 : break;
4820 : }
4821 21902 : case BIT_NOT_EXPR:
4822 21902 : {
4823 21902 : tree _q20 = TREE_OPERAND (_p0, 0);
4824 21902 : switch (TREE_CODE (_q20))
4825 : {
4826 123 : case BIT_XOR_EXPR:
4827 123 : {
4828 123 : tree _q30 = TREE_OPERAND (_q20, 0);
4829 123 : tree _q31 = TREE_OPERAND (_q20, 1);
4830 123 : switch (TREE_CODE (_p1))
4831 : {
4832 44 : case BIT_AND_EXPR:
4833 44 : {
4834 44 : tree _q60 = TREE_OPERAND (_p1, 0);
4835 44 : tree _q61 = TREE_OPERAND (_p1, 1);
4836 44 : if ((_q60 == _q30 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q30, 0) && types_match (_q60, _q30)))
4837 : {
4838 6 : if ((_q61 == _q31 && ! TREE_SIDE_EFFECTS (_q61)) || (operand_equal_p (_q61, _q31, 0) && types_match (_q61, _q31)))
4839 : {
4840 0 : {
4841 0 : tree captures[3] ATTRIBUTE_UNUSED = { _q30, _q31, _p0 };
4842 0 : tree res = generic_simplify_126 (loc, type, _p0, _p1, captures);
4843 0 : if (res) return res;
4844 : }
4845 : }
4846 : }
4847 44 : if ((_q60 == _q31 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q31, 0) && types_match (_q60, _q31)))
4848 : {
4849 9 : if ((_q61 == _q30 && ! TREE_SIDE_EFFECTS (_q61)) || (operand_equal_p (_q61, _q30, 0) && types_match (_q61, _q30)))
4850 : {
4851 0 : {
4852 0 : tree captures[3] ATTRIBUTE_UNUSED = { _q30, _q31, _p0 };
4853 0 : tree res = generic_simplify_126 (loc, type, _p0, _p1, captures);
4854 0 : if (res) return res;
4855 : }
4856 : }
4857 : }
4858 : break;
4859 : }
4860 : default:;
4861 : }
4862 : break;
4863 : }
4864 : default:;
4865 : }
4866 : break;
4867 : }
4868 905 : case EQ_EXPR:
4869 905 : {
4870 905 : tree _q20 = TREE_OPERAND (_p0, 0);
4871 905 : tree _q21 = TREE_OPERAND (_p0, 1);
4872 905 : switch (TREE_CODE (_p1))
4873 : {
4874 8 : case BIT_AND_EXPR:
4875 8 : {
4876 8 : tree _q50 = TREE_OPERAND (_p1, 0);
4877 8 : tree _q51 = TREE_OPERAND (_p1, 1);
4878 8 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
4879 : {
4880 0 : if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
4881 : {
4882 0 : {
4883 0 : tree captures[3] ATTRIBUTE_UNUSED = { _q20, _q21, _p0 };
4884 0 : tree res = generic_simplify_127 (loc, type, _p0, _p1, captures);
4885 0 : if (res) return res;
4886 : }
4887 : }
4888 : }
4889 8 : if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
4890 : {
4891 0 : if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
4892 : {
4893 0 : {
4894 0 : tree captures[3] ATTRIBUTE_UNUSED = { _q20, _q21, _p0 };
4895 0 : tree res = generic_simplify_127 (loc, type, _p0, _p1, captures);
4896 0 : if (res) return res;
4897 : }
4898 : }
4899 : }
4900 : break;
4901 : }
4902 : default:;
4903 : }
4904 : break;
4905 : }
4906 1847838 : default:;
4907 : }
4908 1847838 : {
4909 1847838 : tree _p0_pops[1];
4910 1847838 : if (tree_nop_convert (_p0, _p0_pops))
4911 : {
4912 565332 : tree _q20 = _p0_pops[0];
4913 565332 : switch (TREE_CODE (_q20))
4914 : {
4915 0 : case EQ_EXPR:
4916 0 : {
4917 0 : tree _q30 = TREE_OPERAND (_q20, 0);
4918 0 : tree _q31 = TREE_OPERAND (_q20, 1);
4919 0 : switch (TREE_CODE (_p1))
4920 : {
4921 0 : case BIT_AND_EXPR:
4922 0 : {
4923 0 : tree _q60 = TREE_OPERAND (_p1, 0);
4924 0 : tree _q61 = TREE_OPERAND (_p1, 1);
4925 0 : if ((_q60 == _q30 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q30, 0) && types_match (_q60, _q30)))
4926 : {
4927 0 : if ((_q61 == _q31 && ! TREE_SIDE_EFFECTS (_q61)) || (operand_equal_p (_q61, _q31, 0) && types_match (_q61, _q31)))
4928 : {
4929 0 : {
4930 0 : tree captures[3] ATTRIBUTE_UNUSED = { _q30, _q31, _p0 };
4931 0 : tree res = generic_simplify_127 (loc, type, _p0, _p1, captures);
4932 0 : if (res) return res;
4933 : }
4934 : }
4935 : }
4936 0 : if ((_q60 == _q31 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q31, 0) && types_match (_q60, _q31)))
4937 : {
4938 0 : if ((_q61 == _q30 && ! TREE_SIDE_EFFECTS (_q61)) || (operand_equal_p (_q61, _q30, 0) && types_match (_q61, _q30)))
4939 : {
4940 0 : {
4941 0 : tree captures[3] ATTRIBUTE_UNUSED = { _q30, _q31, _p0 };
4942 0 : tree res = generic_simplify_127 (loc, type, _p0, _p1, captures);
4943 0 : if (res) return res;
4944 : }
4945 : }
4946 : }
4947 : break;
4948 : }
4949 : default:;
4950 : }
4951 : break;
4952 : }
4953 : default:;
4954 : }
4955 : }
4956 : }
4957 1847838 : if (integer_all_onesp (_p1))
4958 : {
4959 99 : {
4960 99 : tree captures[2] ATTRIBUTE_UNUSED = { _p0, _p1 };
4961 99 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1306;
4962 99 : {
4963 99 : tree _r;
4964 99 : _r = captures[1];
4965 99 : if (TREE_SIDE_EFFECTS (captures[0]))
4966 0 : _r = build2_loc (loc, COMPOUND_EXPR, type, fold_ignored_result (captures[0]), _r);
4967 99 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 940, __FILE__, __LINE__, true);
4968 99 : return _r;
4969 : }
4970 0 : next_after_fail1306:;
4971 : }
4972 : }
4973 1847739 : if (integer_zerop (_p1))
4974 : {
4975 0 : {
4976 0 : tree captures[1] ATTRIBUTE_UNUSED = { _p0 };
4977 0 : if (TREE_SIDE_EFFECTS (_p1)) goto next_after_fail1307;
4978 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1307;
4979 0 : {
4980 0 : tree _r;
4981 0 : _r = captures[0];
4982 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 941, __FILE__, __LINE__, true);
4983 0 : return _r;
4984 : }
4985 : next_after_fail1307:;
4986 : }
4987 : }
4988 1847739 : switch (TREE_CODE (_p0))
4989 : {
4990 565906 : CASE_CONVERT:
4991 565906 : {
4992 565906 : tree _q20 = TREE_OPERAND (_p0, 0);
4993 565906 : switch (TREE_CODE (_p1))
4994 : {
4995 543725 : CASE_CONVERT:
4996 543725 : {
4997 543725 : tree _q40 = TREE_OPERAND (_p1, 0);
4998 543725 : {
4999 543725 : tree _q40_pops[1];
5000 543725 : if (tree_maybe_bit_not (_q40, _q40_pops))
5001 : {
5002 9 : tree _q50 = _q40_pops[0];
5003 9 : {
5004 9 : tree captures[2] ATTRIBUTE_UNUSED = { _q20, _q50 };
5005 9 : tree res = generic_simplify_15 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR);
5006 9 : if (res) return res;
5007 : }
5008 : }
5009 : }
5010 543725 : break;
5011 : }
5012 565906 : default:;
5013 : }
5014 565906 : {
5015 565906 : tree _q20_pops[1];
5016 565906 : if (tree_maybe_bit_not (_q20, _q20_pops))
5017 : {
5018 91 : tree _q30 = _q20_pops[0];
5019 91 : switch (TREE_CODE (_p1))
5020 : {
5021 19 : CASE_CONVERT:
5022 19 : {
5023 19 : tree _q50 = TREE_OPERAND (_p1, 0);
5024 19 : {
5025 19 : tree captures[2] ATTRIBUTE_UNUSED = { _q50, _q30 };
5026 19 : tree res = generic_simplify_15 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR);
5027 19 : if (res) return res;
5028 : }
5029 16 : break;
5030 : }
5031 : default:;
5032 : }
5033 : }
5034 : }
5035 565903 : break;
5036 : }
5037 1847736 : default:;
5038 : }
5039 1847736 : {
5040 1847736 : tree _p1_pops[1];
5041 1847736 : if (tree_maybe_bit_not (_p1, _p1_pops))
5042 : {
5043 128909 : tree _q30 = _p1_pops[0];
5044 128909 : {
5045 128909 : tree captures[2] ATTRIBUTE_UNUSED = { _p0, _q30 };
5046 128909 : tree res = generic_simplify_15 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR);
5047 128909 : if (res) return res;
5048 : }
5049 : }
5050 : }
5051 1847724 : {
5052 1847724 : tree _p0_pops[1];
5053 1847724 : if (tree_maybe_bit_not (_p0, _p0_pops))
5054 : {
5055 23680 : tree _q20 = _p0_pops[0];
5056 23680 : {
5057 23680 : tree captures[2] ATTRIBUTE_UNUSED = { _p1, _q20 };
5058 23680 : tree res = generic_simplify_15 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR);
5059 23680 : if (res) return res;
5060 : }
5061 : }
5062 : }
5063 1847713 : if ((_p1 == _p0 && ! TREE_SIDE_EFFECTS (_p1)) || (operand_equal_p (_p1, _p0, 0) && types_match (_p1, _p0)))
5064 : {
5065 122 : {
5066 122 : tree captures[1] ATTRIBUTE_UNUSED = { _p0 };
5067 122 : tree res = generic_simplify_128 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR);
5068 122 : if (res) return res;
5069 : }
5070 : }
5071 1847591 : switch (TREE_CODE (_p1))
5072 : {
5073 411 : case BIT_NOT_EXPR:
5074 411 : {
5075 411 : tree _q30 = TREE_OPERAND (_p1, 0);
5076 411 : switch (TREE_CODE (_q30))
5077 : {
5078 60 : case BIT_IOR_EXPR:
5079 60 : {
5080 60 : tree _q40 = TREE_OPERAND (_q30, 0);
5081 60 : tree _q41 = TREE_OPERAND (_q30, 1);
5082 60 : if ((_q40 == _p0 && ! TREE_SIDE_EFFECTS (_q40)) || (operand_equal_p (_q40, _p0, 0) && types_match (_q40, _p0)))
5083 : {
5084 0 : {
5085 0 : tree captures[3] ATTRIBUTE_UNUSED = { _p0, _q30, _q41 };
5086 0 : tree res = generic_simplify_129 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR);
5087 0 : if (res) return res;
5088 : }
5089 : }
5090 60 : if ((_q41 == _p0 && ! TREE_SIDE_EFFECTS (_q41)) || (operand_equal_p (_q41, _p0, 0) && types_match (_q41, _p0)))
5091 : {
5092 0 : {
5093 0 : tree captures[3] ATTRIBUTE_UNUSED = { _p0, _q30, _q40 };
5094 0 : tree res = generic_simplify_129 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR);
5095 0 : if (res) return res;
5096 : }
5097 : }
5098 : break;
5099 : }
5100 : default:;
5101 : }
5102 : break;
5103 : }
5104 1847591 : default:;
5105 : }
5106 1847591 : switch (TREE_CODE (_p0))
5107 : {
5108 21891 : case BIT_NOT_EXPR:
5109 21891 : {
5110 21891 : tree _q20 = TREE_OPERAND (_p0, 0);
5111 21891 : switch (TREE_CODE (_q20))
5112 : {
5113 101 : case BIT_IOR_EXPR:
5114 101 : {
5115 101 : tree _q30 = TREE_OPERAND (_q20, 0);
5116 101 : tree _q31 = TREE_OPERAND (_q20, 1);
5117 101 : if ((_p1 == _q30 && ! TREE_SIDE_EFFECTS (_p1)) || (operand_equal_p (_p1, _q30, 0) && types_match (_p1, _q30)))
5118 : {
5119 5 : {
5120 5 : tree captures[3] ATTRIBUTE_UNUSED = { _q30, _q20, _q31 };
5121 5 : tree res = generic_simplify_129 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR);
5122 5 : if (res) return res;
5123 : }
5124 : }
5125 96 : if ((_p1 == _q31 && ! TREE_SIDE_EFFECTS (_p1)) || (operand_equal_p (_p1, _q31, 0) && types_match (_p1, _q31)))
5126 : {
5127 3 : {
5128 3 : tree captures[3] ATTRIBUTE_UNUSED = { _q31, _q20, _q30 };
5129 3 : tree res = generic_simplify_129 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR);
5130 3 : if (res) return res;
5131 : }
5132 : }
5133 93 : switch (TREE_CODE (_p1))
5134 : {
5135 20 : case BIT_AND_EXPR:
5136 20 : {
5137 20 : tree _q60 = TREE_OPERAND (_p1, 0);
5138 20 : tree _q61 = TREE_OPERAND (_p1, 1);
5139 20 : switch (TREE_CODE (_q60))
5140 : {
5141 1 : case BIT_NOT_EXPR:
5142 1 : {
5143 1 : tree _q70 = TREE_OPERAND (_q60, 0);
5144 1 : if ((_q70 == _q30 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q30, 0) && types_match (_q70, _q30)))
5145 : {
5146 1 : if ((_q61 == _q31 && ! TREE_SIDE_EFFECTS (_q61)) || (operand_equal_p (_q61, _q31, 0) && types_match (_q61, _q31)))
5147 : {
5148 1 : {
5149 1 : tree captures[3] ATTRIBUTE_UNUSED = { _q60, _q30, _q31 };
5150 1 : tree res = generic_simplify_130 (loc, type, _p0, _p1, captures);
5151 1 : if (res) return res;
5152 : }
5153 : }
5154 : }
5155 0 : if ((_q70 == _q31 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q31, 0) && types_match (_q70, _q31)))
5156 : {
5157 0 : if ((_q61 == _q30 && ! TREE_SIDE_EFFECTS (_q61)) || (operand_equal_p (_q61, _q30, 0) && types_match (_q61, _q30)))
5158 : {
5159 0 : {
5160 0 : tree captures[3] ATTRIBUTE_UNUSED = { _q60, _q31, _q30 };
5161 0 : tree res = generic_simplify_130 (loc, type, _p0, _p1, captures);
5162 0 : if (res) return res;
5163 : }
5164 : }
5165 : }
5166 : break;
5167 : }
5168 19 : default:;
5169 : }
5170 19 : if ((_q60 == _q31 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q31, 0) && types_match (_q60, _q31)))
5171 : {
5172 3 : switch (TREE_CODE (_q61))
5173 : {
5174 0 : case BIT_NOT_EXPR:
5175 0 : {
5176 0 : tree _q80 = TREE_OPERAND (_q61, 0);
5177 0 : if ((_q80 == _q30 && ! TREE_SIDE_EFFECTS (_q80)) || (operand_equal_p (_q80, _q30, 0) && types_match (_q80, _q30)))
5178 : {
5179 0 : {
5180 0 : tree captures[3] ATTRIBUTE_UNUSED = { _q61, _q30, _q31 };
5181 0 : tree res = generic_simplify_130 (loc, type, _p0, _p1, captures);
5182 0 : if (res) return res;
5183 : }
5184 : }
5185 : break;
5186 : }
5187 : default:;
5188 : }
5189 : }
5190 19 : if ((_q60 == _q30 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q30, 0) && types_match (_q60, _q30)))
5191 : {
5192 7 : switch (TREE_CODE (_q61))
5193 : {
5194 0 : case BIT_NOT_EXPR:
5195 0 : {
5196 0 : tree _q80 = TREE_OPERAND (_q61, 0);
5197 0 : if ((_q80 == _q31 && ! TREE_SIDE_EFFECTS (_q80)) || (operand_equal_p (_q80, _q31, 0) && types_match (_q80, _q31)))
5198 : {
5199 0 : {
5200 0 : tree captures[3] ATTRIBUTE_UNUSED = { _q61, _q31, _q30 };
5201 0 : tree res = generic_simplify_130 (loc, type, _p0, _p1, captures);
5202 0 : if (res) return res;
5203 : }
5204 : }
5205 : break;
5206 : }
5207 7 : default:;
5208 : }
5209 7 : if ((_q61 == _q31 && ! TREE_SIDE_EFFECTS (_q61)) || (operand_equal_p (_q61, _q31, 0) && types_match (_q61, _q31)))
5210 : {
5211 1 : {
5212 1 : tree captures[5] ATTRIBUTE_UNUSED = { _p1, _q30, _q31, _p0, _q20 };
5213 1 : tree res = generic_simplify_131 (loc, type, _p0, _p1, captures);
5214 1 : if (res) return res;
5215 : }
5216 : }
5217 : }
5218 : break;
5219 : }
5220 27 : case BIT_XOR_EXPR:
5221 27 : {
5222 27 : tree _q60 = TREE_OPERAND (_p1, 0);
5223 27 : tree _q61 = TREE_OPERAND (_p1, 1);
5224 27 : if ((_q60 == _q30 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q30, 0) && types_match (_q60, _q30)))
5225 : {
5226 6 : if ((_q61 == _q31 && ! TREE_SIDE_EFFECTS (_q61)) || (operand_equal_p (_q61, _q31, 0) && types_match (_q61, _q31)))
5227 : {
5228 0 : {
5229 0 : tree captures[5] ATTRIBUTE_UNUSED = { _p1, _q30, _q31, _p0, _q20 };
5230 0 : tree res = generic_simplify_132 (loc, type, _p0, _p1, captures);
5231 0 : if (res) return res;
5232 : }
5233 : }
5234 : }
5235 : break;
5236 : }
5237 : default:;
5238 : }
5239 : break;
5240 : }
5241 21881 : default:;
5242 : }
5243 21881 : switch (TREE_CODE (_p1))
5244 : {
5245 89 : CASE_CONVERT:
5246 89 : {
5247 89 : tree _q40 = TREE_OPERAND (_p1, 0);
5248 89 : switch (TREE_CODE (_q40))
5249 : {
5250 0 : case BIT_NOT_EXPR:
5251 0 : {
5252 0 : tree _q50 = TREE_OPERAND (_q40, 0);
5253 0 : {
5254 0 : tree captures[2] ATTRIBUTE_UNUSED = { _q20, _q50 };
5255 0 : tree res = generic_simplify_133 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR, BIT_AND_EXPR);
5256 0 : if (res) return res;
5257 : }
5258 0 : break;
5259 : }
5260 : default:;
5261 : }
5262 : break;
5263 : }
5264 16 : case BIT_NOT_EXPR:
5265 16 : {
5266 16 : tree _q40 = TREE_OPERAND (_p1, 0);
5267 16 : {
5268 16 : tree captures[2] ATTRIBUTE_UNUSED = { _q20, _q40 };
5269 16 : tree res = generic_simplify_133 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR, BIT_AND_EXPR);
5270 16 : if (res) return res;
5271 : }
5272 0 : break;
5273 : }
5274 : default:;
5275 : }
5276 : break;
5277 : }
5278 79211 : case BIT_AND_EXPR:
5279 79211 : {
5280 79211 : tree _q20 = TREE_OPERAND (_p0, 0);
5281 79211 : tree _q21 = TREE_OPERAND (_p0, 1);
5282 79211 : switch (TREE_CODE (_q20))
5283 : {
5284 348 : case BIT_NOT_EXPR:
5285 348 : {
5286 348 : tree _q30 = TREE_OPERAND (_q20, 0);
5287 348 : switch (TREE_CODE (_p1))
5288 : {
5289 18 : case BIT_NOT_EXPR:
5290 18 : {
5291 18 : tree _q60 = TREE_OPERAND (_p1, 0);
5292 18 : switch (TREE_CODE (_q60))
5293 : {
5294 0 : case BIT_IOR_EXPR:
5295 0 : {
5296 0 : tree _q70 = TREE_OPERAND (_q60, 0);
5297 0 : tree _q71 = TREE_OPERAND (_q60, 1);
5298 0 : if ((_q70 == _q30 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q30, 0) && types_match (_q70, _q30)))
5299 : {
5300 0 : if ((_q71 == _q21 && ! TREE_SIDE_EFFECTS (_q71)) || (operand_equal_p (_q71, _q21, 0) && types_match (_q71, _q21)))
5301 : {
5302 0 : {
5303 0 : tree captures[3] ATTRIBUTE_UNUSED = { _q20, _q30, _q21 };
5304 0 : tree res = generic_simplify_134 (loc, type, _p0, _p1, captures);
5305 0 : if (res) return res;
5306 : }
5307 : }
5308 : }
5309 0 : if ((_q70 == _q21 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q21, 0) && types_match (_q70, _q21)))
5310 : {
5311 0 : if ((_q71 == _q30 && ! TREE_SIDE_EFFECTS (_q71)) || (operand_equal_p (_q71, _q30, 0) && types_match (_q71, _q30)))
5312 : {
5313 0 : {
5314 0 : tree captures[3] ATTRIBUTE_UNUSED = { _q20, _q30, _q21 };
5315 0 : tree res = generic_simplify_134 (loc, type, _p0, _p1, captures);
5316 0 : if (res) return res;
5317 : }
5318 : }
5319 : }
5320 : break;
5321 : }
5322 : default:;
5323 : }
5324 : break;
5325 : }
5326 : default:;
5327 : }
5328 : break;
5329 : }
5330 79211 : default:;
5331 : }
5332 79211 : switch (TREE_CODE (_q21))
5333 : {
5334 74 : case BIT_NOT_EXPR:
5335 74 : {
5336 74 : tree _q40 = TREE_OPERAND (_q21, 0);
5337 74 : switch (TREE_CODE (_p1))
5338 : {
5339 0 : case BIT_NOT_EXPR:
5340 0 : {
5341 0 : tree _q60 = TREE_OPERAND (_p1, 0);
5342 0 : switch (TREE_CODE (_q60))
5343 : {
5344 0 : case BIT_IOR_EXPR:
5345 0 : {
5346 0 : tree _q70 = TREE_OPERAND (_q60, 0);
5347 0 : tree _q71 = TREE_OPERAND (_q60, 1);
5348 0 : if ((_q70 == _q40 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q40, 0) && types_match (_q70, _q40)))
5349 : {
5350 0 : if ((_q71 == _q20 && ! TREE_SIDE_EFFECTS (_q71)) || (operand_equal_p (_q71, _q20, 0) && types_match (_q71, _q20)))
5351 : {
5352 0 : {
5353 0 : tree captures[3] ATTRIBUTE_UNUSED = { _q21, _q40, _q20 };
5354 0 : tree res = generic_simplify_134 (loc, type, _p0, _p1, captures);
5355 0 : if (res) return res;
5356 : }
5357 : }
5358 : }
5359 0 : if ((_q70 == _q20 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q20, 0) && types_match (_q70, _q20)))
5360 : {
5361 0 : if ((_q71 == _q40 && ! TREE_SIDE_EFFECTS (_q71)) || (operand_equal_p (_q71, _q40, 0) && types_match (_q71, _q40)))
5362 : {
5363 0 : {
5364 0 : tree captures[3] ATTRIBUTE_UNUSED = { _q21, _q40, _q20 };
5365 0 : tree res = generic_simplify_134 (loc, type, _p0, _p1, captures);
5366 0 : if (res) return res;
5367 : }
5368 : }
5369 : }
5370 : break;
5371 : }
5372 : default:;
5373 : }
5374 : break;
5375 : }
5376 : default:;
5377 : }
5378 : break;
5379 : }
5380 79211 : default:;
5381 : }
5382 79211 : switch (TREE_CODE (_p1))
5383 : {
5384 73 : case BIT_NOT_EXPR:
5385 73 : {
5386 73 : tree _q50 = TREE_OPERAND (_p1, 0);
5387 73 : switch (TREE_CODE (_q50))
5388 : {
5389 9 : case BIT_IOR_EXPR:
5390 9 : {
5391 9 : tree _q60 = TREE_OPERAND (_q50, 0);
5392 9 : tree _q61 = TREE_OPERAND (_q50, 1);
5393 9 : if ((_q60 == _q20 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q20, 0) && types_match (_q60, _q20)))
5394 : {
5395 0 : if ((_q61 == _q21 && ! TREE_SIDE_EFFECTS (_q61)) || (operand_equal_p (_q61, _q21, 0) && types_match (_q61, _q21)))
5396 : {
5397 0 : {
5398 0 : tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q50 };
5399 0 : tree res = generic_simplify_131 (loc, type, _p0, _p1, captures);
5400 0 : if (res) return res;
5401 : }
5402 : }
5403 : }
5404 : break;
5405 : }
5406 : default:;
5407 : }
5408 : break;
5409 : }
5410 62 : case BIT_XOR_EXPR:
5411 62 : {
5412 62 : tree _q50 = TREE_OPERAND (_p1, 0);
5413 62 : tree _q51 = TREE_OPERAND (_p1, 1);
5414 62 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
5415 : {
5416 8 : if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
5417 : {
5418 0 : {
5419 0 : tree captures[2] ATTRIBUTE_UNUSED = { _q20, _q21 };
5420 0 : tree res = generic_simplify_23 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR);
5421 0 : if (res) return res;
5422 : }
5423 : }
5424 : }
5425 : break;
5426 : }
5427 17399 : case BIT_AND_EXPR:
5428 17399 : {
5429 17399 : tree _q50 = TREE_OPERAND (_p1, 0);
5430 17399 : tree _q51 = TREE_OPERAND (_p1, 1);
5431 17399 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || operand_equal_p (_q50, _q20, 0))
5432 : {
5433 159 : {
5434 159 : tree captures[4] ATTRIBUTE_UNUSED = { _q20, _q21, _q51, _q20 };
5435 159 : tree res = generic_simplify_30 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR, BIT_AND_EXPR);
5436 159 : if (res) return res;
5437 : }
5438 : }
5439 17240 : if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || operand_equal_p (_q51, _q20, 0))
5440 : {
5441 0 : {
5442 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q20, _q21, _q50, _q20 };
5443 0 : tree res = generic_simplify_30 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR, BIT_AND_EXPR);
5444 0 : if (res) return res;
5445 : }
5446 : }
5447 17240 : if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || operand_equal_p (_q50, _q21, 0))
5448 : {
5449 0 : {
5450 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q21, _q20, _q51, _q21 };
5451 0 : tree res = generic_simplify_30 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR, BIT_AND_EXPR);
5452 0 : if (res) return res;
5453 : }
5454 : }
5455 17240 : if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || operand_equal_p (_q51, _q21, 0))
5456 : {
5457 9 : {
5458 9 : tree captures[4] ATTRIBUTE_UNUSED = { _q21, _q20, _q50, _q21 };
5459 9 : tree res = generic_simplify_30 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR, BIT_AND_EXPR);
5460 9 : if (res) return res;
5461 : }
5462 : }
5463 : break;
5464 : }
5465 : default:;
5466 : }
5467 : break;
5468 : }
5469 9694 : case BIT_XOR_EXPR:
5470 9694 : {
5471 9694 : tree _q20 = TREE_OPERAND (_p0, 0);
5472 9694 : tree _q21 = TREE_OPERAND (_p0, 1);
5473 9694 : switch (TREE_CODE (_p1))
5474 : {
5475 54 : case BIT_NOT_EXPR:
5476 54 : {
5477 54 : tree _q50 = TREE_OPERAND (_p1, 0);
5478 54 : switch (TREE_CODE (_q50))
5479 : {
5480 19 : case BIT_IOR_EXPR:
5481 19 : {
5482 19 : tree _q60 = TREE_OPERAND (_q50, 0);
5483 19 : tree _q61 = TREE_OPERAND (_q50, 1);
5484 19 : if ((_q60 == _q20 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q20, 0) && types_match (_q60, _q20)))
5485 : {
5486 1 : if ((_q61 == _q21 && ! TREE_SIDE_EFFECTS (_q61)) || (operand_equal_p (_q61, _q21, 0) && types_match (_q61, _q21)))
5487 : {
5488 1 : {
5489 1 : tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q50 };
5490 1 : tree res = generic_simplify_132 (loc, type, _p0, _p1, captures);
5491 1 : if (res) return res;
5492 : }
5493 : }
5494 : }
5495 : break;
5496 : }
5497 : default:;
5498 : }
5499 : break;
5500 : }
5501 102 : case BIT_AND_EXPR:
5502 102 : {
5503 102 : tree _q50 = TREE_OPERAND (_p1, 0);
5504 102 : tree _q51 = TREE_OPERAND (_p1, 1);
5505 102 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
5506 : {
5507 30 : if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
5508 : {
5509 0 : {
5510 0 : tree captures[2] ATTRIBUTE_UNUSED = { _q20, _q21 };
5511 0 : tree res = generic_simplify_23 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR);
5512 0 : if (res) return res;
5513 : }
5514 : }
5515 : }
5516 : break;
5517 : }
5518 : default:;
5519 : }
5520 : break;
5521 : }
5522 565897 : CASE_CONVERT:
5523 565897 : {
5524 565897 : tree _q20 = TREE_OPERAND (_p0, 0);
5525 565897 : switch (TREE_CODE (_q20))
5526 : {
5527 72 : case BIT_NOT_EXPR:
5528 72 : {
5529 72 : tree _q30 = TREE_OPERAND (_q20, 0);
5530 72 : switch (TREE_CODE (_p1))
5531 : {
5532 8 : CASE_CONVERT:
5533 8 : {
5534 8 : tree _q50 = TREE_OPERAND (_p1, 0);
5535 8 : switch (TREE_CODE (_q50))
5536 : {
5537 0 : case BIT_NOT_EXPR:
5538 0 : {
5539 0 : tree _q60 = TREE_OPERAND (_q50, 0);
5540 0 : {
5541 0 : tree captures[2] ATTRIBUTE_UNUSED = { _q30, _q60 };
5542 0 : tree res = generic_simplify_133 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR, BIT_AND_EXPR);
5543 0 : if (res) return res;
5544 : }
5545 0 : break;
5546 : }
5547 : default:;
5548 : }
5549 : break;
5550 : }
5551 32 : case BIT_NOT_EXPR:
5552 32 : {
5553 32 : tree _q50 = TREE_OPERAND (_p1, 0);
5554 32 : {
5555 32 : tree captures[2] ATTRIBUTE_UNUSED = { _q30, _q50 };
5556 32 : tree res = generic_simplify_133 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR, BIT_AND_EXPR);
5557 32 : if (res) return res;
5558 : }
5559 32 : break;
5560 : }
5561 : default:;
5562 : }
5563 : break;
5564 : }
5565 124 : case BIT_AND_EXPR:
5566 124 : {
5567 124 : tree _q30 = TREE_OPERAND (_q20, 0);
5568 124 : tree _q31 = TREE_OPERAND (_q20, 1);
5569 124 : switch (TREE_CODE (_p1))
5570 : {
5571 6 : CASE_CONVERT:
5572 6 : {
5573 6 : tree _q60 = TREE_OPERAND (_p1, 0);
5574 6 : switch (TREE_CODE (_q60))
5575 : {
5576 0 : case BIT_AND_EXPR:
5577 0 : {
5578 0 : tree _q70 = TREE_OPERAND (_q60, 0);
5579 0 : tree _q71 = TREE_OPERAND (_q60, 1);
5580 0 : if ((_q70 == _q30 && ! TREE_SIDE_EFFECTS (_q70)) || operand_equal_p (_q70, _q30, 0))
5581 : {
5582 0 : {
5583 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q30, _q31, _q71, _q30 };
5584 0 : tree res = generic_simplify_30 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR, BIT_AND_EXPR);
5585 0 : if (res) return res;
5586 : }
5587 : }
5588 0 : if ((_q71 == _q30 && ! TREE_SIDE_EFFECTS (_q71)) || operand_equal_p (_q71, _q30, 0))
5589 : {
5590 0 : {
5591 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q30, _q31, _q70, _q30 };
5592 0 : tree res = generic_simplify_30 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR, BIT_AND_EXPR);
5593 0 : if (res) return res;
5594 : }
5595 : }
5596 0 : if ((_q70 == _q31 && ! TREE_SIDE_EFFECTS (_q70)) || operand_equal_p (_q70, _q31, 0))
5597 : {
5598 0 : {
5599 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q31, _q30, _q71, _q31 };
5600 0 : tree res = generic_simplify_30 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR, BIT_AND_EXPR);
5601 0 : if (res) return res;
5602 : }
5603 : }
5604 0 : if ((_q71 == _q31 && ! TREE_SIDE_EFFECTS (_q71)) || operand_equal_p (_q71, _q31, 0))
5605 : {
5606 0 : {
5607 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q31, _q30, _q70, _q31 };
5608 0 : tree res = generic_simplify_30 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR, BIT_AND_EXPR);
5609 0 : if (res) return res;
5610 : }
5611 : }
5612 : break;
5613 : }
5614 : default:;
5615 : }
5616 : break;
5617 : }
5618 : default:;
5619 : }
5620 : break;
5621 : }
5622 98 : case BIT_IOR_EXPR:
5623 98 : {
5624 98 : tree _q30 = TREE_OPERAND (_q20, 0);
5625 98 : tree _q31 = TREE_OPERAND (_q20, 1);
5626 98 : switch (TREE_CODE (_p1))
5627 : {
5628 4 : CASE_CONVERT:
5629 4 : {
5630 4 : tree _q60 = TREE_OPERAND (_p1, 0);
5631 4 : if ((_q60 == _q31 && ! TREE_SIDE_EFFECTS (_q60)) || operand_equal_p (_q60, _q31, 0))
5632 : {
5633 0 : {
5634 0 : tree captures[4] ATTRIBUTE_UNUSED = { _p0, _q30, _q31, _q31 };
5635 0 : tree res = generic_simplify_120 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR);
5636 0 : if (res) return res;
5637 : }
5638 : }
5639 4 : if ((_q60 == _q30 && ! TREE_SIDE_EFFECTS (_q60)) || operand_equal_p (_q60, _q30, 0))
5640 : {
5641 0 : {
5642 0 : tree captures[4] ATTRIBUTE_UNUSED = { _p0, _q31, _q30, _q30 };
5643 0 : tree res = generic_simplify_120 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR);
5644 0 : if (res) return res;
5645 : }
5646 : }
5647 : break;
5648 : }
5649 98 : default:;
5650 : }
5651 98 : if ((_p1 == _q31 && ! TREE_SIDE_EFFECTS (_p1)) || operand_equal_p (_p1, _q31, 0))
5652 : {
5653 0 : {
5654 0 : tree captures[4] ATTRIBUTE_UNUSED = { _p0, _q30, _q31, _q31 };
5655 0 : tree res = generic_simplify_120 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR);
5656 0 : if (res) return res;
5657 : }
5658 : }
5659 98 : if ((_p1 == _q30 && ! TREE_SIDE_EFFECTS (_p1)) || operand_equal_p (_p1, _q30, 0))
5660 : {
5661 0 : {
5662 0 : tree captures[4] ATTRIBUTE_UNUSED = { _p0, _q31, _q30, _q30 };
5663 0 : tree res = generic_simplify_120 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR);
5664 0 : if (res) return res;
5665 : }
5666 : }
5667 : break;
5668 : }
5669 565897 : default:;
5670 : }
5671 565897 : switch (TREE_CODE (_p1))
5672 : {
5673 543721 : CASE_CONVERT:
5674 543721 : {
5675 543721 : tree _q40 = TREE_OPERAND (_p1, 0);
5676 543721 : switch (TREE_CODE (_q40))
5677 : {
5678 0 : case BIT_IOR_EXPR:
5679 0 : {
5680 0 : tree _q50 = TREE_OPERAND (_q40, 0);
5681 0 : tree _q51 = TREE_OPERAND (_q40, 1);
5682 0 : if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || operand_equal_p (_q51, _q20, 0))
5683 : {
5684 0 : {
5685 0 : tree captures[4] ATTRIBUTE_UNUSED = { _p1, _q50, _q51, _q20 };
5686 0 : tree res = generic_simplify_135 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR);
5687 0 : if (res) return res;
5688 : }
5689 : }
5690 0 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || operand_equal_p (_q50, _q20, 0))
5691 : {
5692 0 : {
5693 0 : tree captures[4] ATTRIBUTE_UNUSED = { _p1, _q51, _q50, _q20 };
5694 0 : tree res = generic_simplify_135 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR);
5695 0 : if (res) return res;
5696 : }
5697 : }
5698 : break;
5699 : }
5700 : default:;
5701 : }
5702 : break;
5703 : }
5704 8 : case BIT_IOR_EXPR:
5705 8 : {
5706 8 : tree _q40 = TREE_OPERAND (_p1, 0);
5707 8 : tree _q41 = TREE_OPERAND (_p1, 1);
5708 8 : if ((_q41 == _q20 && ! TREE_SIDE_EFFECTS (_q41)) || operand_equal_p (_q41, _q20, 0))
5709 : {
5710 0 : {
5711 0 : tree captures[4] ATTRIBUTE_UNUSED = { _p1, _q40, _q41, _q20 };
5712 0 : tree res = generic_simplify_135 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR);
5713 0 : if (res) return res;
5714 : }
5715 : }
5716 8 : if ((_q40 == _q20 && ! TREE_SIDE_EFFECTS (_q40)) || operand_equal_p (_q40, _q20, 0))
5717 : {
5718 0 : {
5719 0 : tree captures[4] ATTRIBUTE_UNUSED = { _p1, _q41, _q40, _q20 };
5720 0 : tree res = generic_simplify_135 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR);
5721 0 : if (res) return res;
5722 : }
5723 : }
5724 : break;
5725 : }
5726 : default:;
5727 : }
5728 : break;
5729 : }
5730 1847396 : default:;
5731 : }
5732 1847396 : switch (TREE_CODE (_p1))
5733 : {
5734 929453 : CASE_CONVERT:
5735 929453 : {
5736 929453 : tree _q30 = TREE_OPERAND (_p1, 0);
5737 929453 : switch (TREE_CODE (_q30))
5738 : {
5739 45 : case BIT_IOR_EXPR:
5740 45 : {
5741 45 : tree _q40 = TREE_OPERAND (_q30, 0);
5742 45 : tree _q41 = TREE_OPERAND (_q30, 1);
5743 45 : if ((_q41 == _p0 && ! TREE_SIDE_EFFECTS (_q41)) || operand_equal_p (_q41, _p0, 0))
5744 : {
5745 0 : {
5746 0 : tree captures[4] ATTRIBUTE_UNUSED = { _p1, _q40, _q41, _p0 };
5747 0 : tree res = generic_simplify_135 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR);
5748 0 : if (res) return res;
5749 : }
5750 : }
5751 45 : if ((_q40 == _p0 && ! TREE_SIDE_EFFECTS (_q40)) || operand_equal_p (_q40, _p0, 0))
5752 : {
5753 0 : {
5754 0 : tree captures[4] ATTRIBUTE_UNUSED = { _p1, _q41, _q40, _p0 };
5755 0 : tree res = generic_simplify_135 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR);
5756 0 : if (res) return res;
5757 : }
5758 : }
5759 : break;
5760 : }
5761 : default:;
5762 : }
5763 : break;
5764 : }
5765 486 : case BIT_IOR_EXPR:
5766 486 : {
5767 486 : tree _q30 = TREE_OPERAND (_p1, 0);
5768 486 : tree _q31 = TREE_OPERAND (_p1, 1);
5769 486 : if ((_q31 == _p0 && ! TREE_SIDE_EFFECTS (_q31)) || operand_equal_p (_q31, _p0, 0))
5770 : {
5771 0 : {
5772 0 : tree captures[4] ATTRIBUTE_UNUSED = { _p1, _q30, _q31, _p0 };
5773 0 : tree res = generic_simplify_135 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR);
5774 0 : if (res) return res;
5775 : }
5776 : }
5777 486 : if ((_q30 == _p0 && ! TREE_SIDE_EFFECTS (_q30)) || operand_equal_p (_q30, _p0, 0))
5778 : {
5779 0 : {
5780 0 : tree captures[4] ATTRIBUTE_UNUSED = { _p1, _q31, _q30, _p0 };
5781 0 : tree res = generic_simplify_135 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR);
5782 0 : if (res) return res;
5783 : }
5784 : }
5785 : break;
5786 : }
5787 1847396 : default:;
5788 : }
5789 1847396 : switch (TREE_CODE (_p0))
5790 : {
5791 17913 : case BIT_IOR_EXPR:
5792 17913 : {
5793 17913 : tree _q20 = TREE_OPERAND (_p0, 0);
5794 17913 : tree _q21 = TREE_OPERAND (_p0, 1);
5795 17913 : {
5796 17913 : tree captures[3] ATTRIBUTE_UNUSED = { _q20, _q21, _p1 };
5797 17913 : tree res = generic_simplify_136 (loc, type, _p0, _p1, captures);
5798 17913 : if (res) return res;
5799 : }
5800 17913 : switch (TREE_CODE (_p1))
5801 : {
5802 1923 : CASE_CONVERT:
5803 1923 : {
5804 1923 : tree _q50 = TREE_OPERAND (_p1, 0);
5805 1923 : switch (TREE_CODE (_q50))
5806 : {
5807 0 : case BIT_IOR_EXPR:
5808 0 : {
5809 0 : tree _q60 = TREE_OPERAND (_q50, 0);
5810 0 : tree _q61 = TREE_OPERAND (_q50, 1);
5811 0 : if ((_q60 == _q20 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q20, 0) && types_match (_q60, _q20)))
5812 : {
5813 0 : {
5814 0 : tree captures[7] ATTRIBUTE_UNUSED = { _p0, _p0, _q20, _q21, _p1, _q50, _q61 };
5815 0 : tree res = generic_simplify_137 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR);
5816 0 : if (res) return res;
5817 : }
5818 : }
5819 0 : if ((_q61 == _q20 && ! TREE_SIDE_EFFECTS (_q61)) || (operand_equal_p (_q61, _q20, 0) && types_match (_q61, _q20)))
5820 : {
5821 0 : {
5822 0 : tree captures[7] ATTRIBUTE_UNUSED = { _p0, _p0, _q20, _q21, _p1, _q50, _q60 };
5823 0 : tree res = generic_simplify_137 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR);
5824 0 : if (res) return res;
5825 : }
5826 : }
5827 0 : if ((_q60 == _q21 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q21, 0) && types_match (_q60, _q21)))
5828 : {
5829 0 : {
5830 0 : tree captures[7] ATTRIBUTE_UNUSED = { _p0, _p0, _q21, _q20, _p1, _q50, _q61 };
5831 0 : tree res = generic_simplify_137 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR);
5832 0 : if (res) return res;
5833 : }
5834 : }
5835 0 : if ((_q61 == _q21 && ! TREE_SIDE_EFFECTS (_q61)) || (operand_equal_p (_q61, _q21, 0) && types_match (_q61, _q21)))
5836 : {
5837 0 : {
5838 0 : tree captures[7] ATTRIBUTE_UNUSED = { _p0, _p0, _q21, _q20, _p1, _q50, _q60 };
5839 0 : tree res = generic_simplify_137 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR);
5840 0 : if (res) return res;
5841 : }
5842 : }
5843 : break;
5844 : }
5845 : default:;
5846 : }
5847 : break;
5848 : }
5849 1 : case BIT_IOR_EXPR:
5850 1 : {
5851 1 : tree _q50 = TREE_OPERAND (_p1, 0);
5852 1 : tree _q51 = TREE_OPERAND (_p1, 1);
5853 1 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
5854 : {
5855 0 : {
5856 0 : tree captures[7] ATTRIBUTE_UNUSED = { _p0, _p0, _q20, _q21, _p1, _p1, _q51 };
5857 0 : tree res = generic_simplify_138 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR);
5858 0 : if (res) return res;
5859 : }
5860 : }
5861 1 : if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
5862 : {
5863 0 : {
5864 0 : tree captures[7] ATTRIBUTE_UNUSED = { _p0, _p0, _q20, _q21, _p1, _p1, _q50 };
5865 0 : tree res = generic_simplify_138 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR);
5866 0 : if (res) return res;
5867 : }
5868 : }
5869 1 : if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
5870 : {
5871 0 : {
5872 0 : tree captures[7] ATTRIBUTE_UNUSED = { _p0, _p0, _q21, _q20, _p1, _p1, _q51 };
5873 0 : tree res = generic_simplify_138 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR);
5874 0 : if (res) return res;
5875 : }
5876 : }
5877 1 : if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
5878 : {
5879 0 : {
5880 0 : tree captures[7] ATTRIBUTE_UNUSED = { _p0, _p0, _q21, _q20, _p1, _p1, _q50 };
5881 0 : tree res = generic_simplify_138 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR);
5882 0 : if (res) return res;
5883 : }
5884 : }
5885 : break;
5886 : }
5887 : default:;
5888 : }
5889 : break;
5890 : }
5891 1847396 : default:;
5892 : }
5893 1847396 : switch (TREE_CODE (_p1))
5894 : {
5895 486 : case BIT_IOR_EXPR:
5896 486 : {
5897 486 : tree _q30 = TREE_OPERAND (_p1, 0);
5898 486 : tree _q31 = TREE_OPERAND (_p1, 1);
5899 486 : {
5900 486 : tree captures[3] ATTRIBUTE_UNUSED = { _q30, _q31, _p0 };
5901 486 : tree res = generic_simplify_136 (loc, type, _p0, _p1, captures);
5902 486 : if (res) return res;
5903 : }
5904 486 : break;
5905 : }
5906 1847396 : default:;
5907 : }
5908 1847396 : switch (TREE_CODE (_p0))
5909 : {
5910 565897 : CASE_CONVERT:
5911 565897 : {
5912 565897 : tree _q20 = TREE_OPERAND (_p0, 0);
5913 565897 : switch (TREE_CODE (_q20))
5914 : {
5915 98 : case BIT_IOR_EXPR:
5916 98 : {
5917 98 : tree _q30 = TREE_OPERAND (_q20, 0);
5918 98 : tree _q31 = TREE_OPERAND (_q20, 1);
5919 98 : switch (TREE_CODE (_p1))
5920 : {
5921 4 : CASE_CONVERT:
5922 4 : {
5923 4 : tree _q60 = TREE_OPERAND (_p1, 0);
5924 4 : switch (TREE_CODE (_q60))
5925 : {
5926 0 : case BIT_IOR_EXPR:
5927 0 : {
5928 0 : tree _q70 = TREE_OPERAND (_q60, 0);
5929 0 : tree _q71 = TREE_OPERAND (_q60, 1);
5930 0 : if ((_q70 == _q30 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q30, 0) && types_match (_q70, _q30)))
5931 : {
5932 0 : {
5933 0 : tree captures[7] ATTRIBUTE_UNUSED = { _p0, _q20, _q30, _q31, _p1, _q60, _q71 };
5934 0 : tree res = generic_simplify_139 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR);
5935 0 : if (res) return res;
5936 : }
5937 : }
5938 0 : if ((_q71 == _q30 && ! TREE_SIDE_EFFECTS (_q71)) || (operand_equal_p (_q71, _q30, 0) && types_match (_q71, _q30)))
5939 : {
5940 0 : {
5941 0 : tree captures[7] ATTRIBUTE_UNUSED = { _p0, _q20, _q30, _q31, _p1, _q60, _q70 };
5942 0 : tree res = generic_simplify_139 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR);
5943 0 : if (res) return res;
5944 : }
5945 : }
5946 0 : if ((_q70 == _q31 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q31, 0) && types_match (_q70, _q31)))
5947 : {
5948 0 : {
5949 0 : tree captures[7] ATTRIBUTE_UNUSED = { _p0, _q20, _q31, _q30, _p1, _q60, _q71 };
5950 0 : tree res = generic_simplify_139 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR);
5951 0 : if (res) return res;
5952 : }
5953 : }
5954 0 : if ((_q71 == _q31 && ! TREE_SIDE_EFFECTS (_q71)) || (operand_equal_p (_q71, _q31, 0) && types_match (_q71, _q31)))
5955 : {
5956 0 : {
5957 0 : tree captures[7] ATTRIBUTE_UNUSED = { _p0, _q20, _q31, _q30, _p1, _q60, _q70 };
5958 0 : tree res = generic_simplify_139 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR);
5959 0 : if (res) return res;
5960 : }
5961 : }
5962 : break;
5963 : }
5964 : default:;
5965 : }
5966 : break;
5967 : }
5968 0 : case BIT_IOR_EXPR:
5969 0 : {
5970 0 : tree _q60 = TREE_OPERAND (_p1, 0);
5971 0 : tree _q61 = TREE_OPERAND (_p1, 1);
5972 0 : if ((_q60 == _q30 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q30, 0) && types_match (_q60, _q30)))
5973 : {
5974 0 : {
5975 0 : tree captures[7] ATTRIBUTE_UNUSED = { _p0, _q20, _q30, _q31, _p1, _p1, _q61 };
5976 0 : tree res = generic_simplify_140 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR);
5977 0 : if (res) return res;
5978 : }
5979 : }
5980 0 : if ((_q61 == _q30 && ! TREE_SIDE_EFFECTS (_q61)) || (operand_equal_p (_q61, _q30, 0) && types_match (_q61, _q30)))
5981 : {
5982 0 : {
5983 0 : tree captures[7] ATTRIBUTE_UNUSED = { _p0, _q20, _q30, _q31, _p1, _p1, _q60 };
5984 0 : tree res = generic_simplify_140 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR);
5985 0 : if (res) return res;
5986 : }
5987 : }
5988 0 : if ((_q60 == _q31 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q31, 0) && types_match (_q60, _q31)))
5989 : {
5990 0 : {
5991 0 : tree captures[7] ATTRIBUTE_UNUSED = { _p0, _q20, _q31, _q30, _p1, _p1, _q61 };
5992 0 : tree res = generic_simplify_140 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR);
5993 0 : if (res) return res;
5994 : }
5995 : }
5996 0 : if ((_q61 == _q31 && ! TREE_SIDE_EFFECTS (_q61)) || (operand_equal_p (_q61, _q31, 0) && types_match (_q61, _q31)))
5997 : {
5998 0 : {
5999 0 : tree captures[7] ATTRIBUTE_UNUSED = { _p0, _q20, _q31, _q30, _p1, _p1, _q60 };
6000 0 : tree res = generic_simplify_140 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR);
6001 0 : if (res) return res;
6002 : }
6003 : }
6004 : break;
6005 : }
6006 : default:;
6007 : }
6008 : break;
6009 : }
6010 565897 : default:;
6011 : }
6012 565897 : switch (TREE_CODE (_p1))
6013 : {
6014 543721 : CASE_CONVERT:
6015 543721 : {
6016 543721 : tree _q40 = TREE_OPERAND (_p1, 0);
6017 543721 : {
6018 543721 : tree captures[4] ATTRIBUTE_UNUSED = { _p0, _q20, _p1, _q40 };
6019 543721 : tree res = generic_simplify_32 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR);
6020 543721 : if (res) return res;
6021 : }
6022 542842 : break;
6023 : }
6024 565018 : default:;
6025 : }
6026 565018 : {
6027 565018 : tree captures[4] ATTRIBUTE_UNUSED = { _p0, _q20, _p1, _p1 };
6028 565018 : tree res = generic_simplify_33 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR);
6029 565018 : if (res) return res;
6030 : }
6031 564001 : break;
6032 : }
6033 79043 : case BIT_AND_EXPR:
6034 79043 : {
6035 79043 : tree _q20 = TREE_OPERAND (_p0, 0);
6036 79043 : tree _q21 = TREE_OPERAND (_p0, 1);
6037 79043 : if ((_p1 == _q20 && ! TREE_SIDE_EFFECTS (_p1)) || (operand_equal_p (_p1, _q20, 0) && types_match (_p1, _q20)))
6038 : {
6039 2 : {
6040 2 : tree captures[2] ATTRIBUTE_UNUSED = { _q20, _q21 };
6041 2 : tree res = generic_simplify_141 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR, BIT_AND_EXPR);
6042 2 : if (res) return res;
6043 : }
6044 : }
6045 79041 : if ((_p1 == _q21 && ! TREE_SIDE_EFFECTS (_p1)) || (operand_equal_p (_p1, _q21, 0) && types_match (_p1, _q21)))
6046 : {
6047 13 : {
6048 13 : tree captures[2] ATTRIBUTE_UNUSED = { _q21, _q20 };
6049 13 : tree res = generic_simplify_141 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR, BIT_AND_EXPR);
6050 13 : if (res) return res;
6051 : }
6052 : }
6053 79028 : switch (TREE_CODE (_p1))
6054 : {
6055 1 : case BIT_IOR_EXPR:
6056 1 : {
6057 1 : tree _q50 = TREE_OPERAND (_p1, 0);
6058 1 : tree _q51 = TREE_OPERAND (_p1, 1);
6059 1 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
6060 : {
6061 1 : {
6062 1 : tree captures[4] ATTRIBUTE_UNUSED = { _q20, _q21, _p1, _q51 };
6063 1 : tree res = generic_simplify_142 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR, BIT_AND_EXPR);
6064 1 : if (res) return res;
6065 : }
6066 : }
6067 0 : if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
6068 : {
6069 0 : {
6070 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q20, _q21, _p1, _q50 };
6071 0 : tree res = generic_simplify_142 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR, BIT_AND_EXPR);
6072 0 : if (res) return res;
6073 : }
6074 : }
6075 0 : if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
6076 : {
6077 0 : {
6078 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q21, _q20, _p1, _q51 };
6079 0 : tree res = generic_simplify_142 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR, BIT_AND_EXPR);
6080 0 : if (res) return res;
6081 : }
6082 : }
6083 0 : if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
6084 : {
6085 0 : {
6086 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q21, _q20, _p1, _q50 };
6087 0 : tree res = generic_simplify_142 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR, BIT_AND_EXPR);
6088 0 : if (res) return res;
6089 : }
6090 : }
6091 : break;
6092 : }
6093 73 : case BIT_NOT_EXPR:
6094 73 : {
6095 73 : tree _q50 = TREE_OPERAND (_p1, 0);
6096 73 : switch (TREE_CODE (_q50))
6097 : {
6098 1 : case BIT_AND_EXPR:
6099 1 : {
6100 1 : tree _q60 = TREE_OPERAND (_q50, 0);
6101 1 : tree _q61 = TREE_OPERAND (_q50, 1);
6102 1 : if ((_q60 == _q21 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q21, 0) && types_match (_q60, _q21)))
6103 : {
6104 0 : {
6105 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q20, _q21, _p1, _q61 };
6106 0 : tree res = generic_simplify_143 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR, BIT_AND_EXPR);
6107 0 : if (res) return res;
6108 : }
6109 : }
6110 1 : if ((_q61 == _q21 && ! TREE_SIDE_EFFECTS (_q61)) || (operand_equal_p (_q61, _q21, 0) && types_match (_q61, _q21)))
6111 : {
6112 1 : {
6113 1 : tree captures[4] ATTRIBUTE_UNUSED = { _q20, _q21, _p1, _q60 };
6114 1 : tree res = generic_simplify_143 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR, BIT_AND_EXPR);
6115 1 : if (res) return res;
6116 : }
6117 : }
6118 0 : if ((_q60 == _q20 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q20, 0) && types_match (_q60, _q20)))
6119 : {
6120 0 : {
6121 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q21, _q20, _p1, _q61 };
6122 0 : tree res = generic_simplify_143 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR, BIT_AND_EXPR);
6123 0 : if (res) return res;
6124 : }
6125 : }
6126 0 : if ((_q61 == _q20 && ! TREE_SIDE_EFFECTS (_q61)) || (operand_equal_p (_q61, _q20, 0) && types_match (_q61, _q20)))
6127 : {
6128 0 : {
6129 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q21, _q20, _p1, _q60 };
6130 0 : tree res = generic_simplify_143 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR, BIT_AND_EXPR);
6131 0 : if (res) return res;
6132 : }
6133 : }
6134 : break;
6135 : }
6136 : default:;
6137 : }
6138 : break;
6139 : }
6140 : default:;
6141 : }
6142 : break;
6143 : }
6144 1845483 : default:;
6145 : }
6146 1845483 : switch (TREE_CODE (_p1))
6147 : {
6148 35653 : case BIT_AND_EXPR:
6149 35653 : {
6150 35653 : tree _q30 = TREE_OPERAND (_p1, 0);
6151 35653 : tree _q31 = TREE_OPERAND (_p1, 1);
6152 35653 : if ((_q30 == _p0 && ! TREE_SIDE_EFFECTS (_q30)) || (operand_equal_p (_q30, _p0, 0) && types_match (_q30, _p0)))
6153 : {
6154 0 : {
6155 0 : tree captures[2] ATTRIBUTE_UNUSED = { _p0, _q31 };
6156 0 : tree res = generic_simplify_141 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR, BIT_AND_EXPR);
6157 0 : if (res) return res;
6158 : }
6159 : }
6160 35653 : if ((_q31 == _p0 && ! TREE_SIDE_EFFECTS (_q31)) || (operand_equal_p (_q31, _p0, 0) && types_match (_q31, _p0)))
6161 : {
6162 0 : {
6163 0 : tree captures[2] ATTRIBUTE_UNUSED = { _p0, _q30 };
6164 0 : tree res = generic_simplify_141 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR, BIT_AND_EXPR);
6165 0 : if (res) return res;
6166 : }
6167 : }
6168 : break;
6169 : }
6170 1845483 : default:;
6171 : }
6172 1845483 : switch (TREE_CODE (_p0))
6173 : {
6174 17913 : case BIT_IOR_EXPR:
6175 17913 : {
6176 17913 : tree _q20 = TREE_OPERAND (_p0, 0);
6177 17913 : tree _q21 = TREE_OPERAND (_p0, 1);
6178 17913 : switch (TREE_CODE (_p1))
6179 : {
6180 5533 : case BIT_AND_EXPR:
6181 5533 : {
6182 5533 : tree _q50 = TREE_OPERAND (_p1, 0);
6183 5533 : tree _q51 = TREE_OPERAND (_p1, 1);
6184 5533 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
6185 : {
6186 0 : {
6187 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q20, _q51, _p0, _q21 };
6188 0 : tree res = generic_simplify_144 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR, BIT_AND_EXPR);
6189 0 : if (res) return res;
6190 : }
6191 : }
6192 5533 : if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
6193 : {
6194 0 : {
6195 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q21, _q51, _p0, _q20 };
6196 0 : tree res = generic_simplify_144 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR, BIT_AND_EXPR);
6197 0 : if (res) return res;
6198 : }
6199 : }
6200 5533 : if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
6201 : {
6202 0 : {
6203 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q20, _q50, _p0, _q21 };
6204 0 : tree res = generic_simplify_144 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR, BIT_AND_EXPR);
6205 0 : if (res) return res;
6206 : }
6207 : }
6208 5533 : if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
6209 : {
6210 0 : {
6211 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q21, _q50, _p0, _q20 };
6212 0 : tree res = generic_simplify_144 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR, BIT_AND_EXPR);
6213 0 : if (res) return res;
6214 : }
6215 : }
6216 : break;
6217 : }
6218 : default:;
6219 : }
6220 : break;
6221 : }
6222 21865 : case BIT_NOT_EXPR:
6223 21865 : {
6224 21865 : tree _q20 = TREE_OPERAND (_p0, 0);
6225 21865 : switch (TREE_CODE (_q20))
6226 : {
6227 12 : case BIT_AND_EXPR:
6228 12 : {
6229 12 : tree _q30 = TREE_OPERAND (_q20, 0);
6230 12 : tree _q31 = TREE_OPERAND (_q20, 1);
6231 12 : switch (TREE_CODE (_p1))
6232 : {
6233 1 : case BIT_AND_EXPR:
6234 1 : {
6235 1 : tree _q60 = TREE_OPERAND (_p1, 0);
6236 1 : tree _q61 = TREE_OPERAND (_p1, 1);
6237 1 : if ((_q61 == _q30 && ! TREE_SIDE_EFFECTS (_q61)) || (operand_equal_p (_q61, _q30, 0) && types_match (_q61, _q30)))
6238 : {
6239 0 : {
6240 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q60, _q30, _p0, _q31 };
6241 0 : tree res = generic_simplify_145 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR, BIT_AND_EXPR);
6242 0 : if (res) return res;
6243 : }
6244 : }
6245 1 : if ((_q61 == _q31 && ! TREE_SIDE_EFFECTS (_q61)) || (operand_equal_p (_q61, _q31, 0) && types_match (_q61, _q31)))
6246 : {
6247 0 : {
6248 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q60, _q31, _p0, _q30 };
6249 0 : tree res = generic_simplify_145 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR, BIT_AND_EXPR);
6250 0 : if (res) return res;
6251 : }
6252 : }
6253 1 : if ((_q60 == _q30 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q30, 0) && types_match (_q60, _q30)))
6254 : {
6255 0 : {
6256 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q61, _q30, _p0, _q31 };
6257 0 : tree res = generic_simplify_145 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR, BIT_AND_EXPR);
6258 0 : if (res) return res;
6259 : }
6260 : }
6261 1 : if ((_q60 == _q31 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q31, 0) && types_match (_q60, _q31)))
6262 : {
6263 0 : {
6264 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q61, _q31, _p0, _q30 };
6265 0 : tree res = generic_simplify_145 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR, BIT_AND_EXPR);
6266 0 : if (res) return res;
6267 : }
6268 : }
6269 : break;
6270 : }
6271 12 : default:;
6272 : }
6273 12 : if ((_p1 == _q30 && ! TREE_SIDE_EFFECTS (_p1)) || (operand_equal_p (_p1, _q30, 0) && types_match (_p1, _q30)))
6274 : {
6275 0 : {
6276 0 : tree captures[2] ATTRIBUTE_UNUSED = { _q30, _q31 };
6277 0 : tree res = generic_simplify_146 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR, BIT_AND_EXPR);
6278 0 : if (res) return res;
6279 : }
6280 : }
6281 12 : if ((_p1 == _q31 && ! TREE_SIDE_EFFECTS (_p1)) || (operand_equal_p (_p1, _q31, 0) && types_match (_p1, _q31)))
6282 : {
6283 1 : {
6284 1 : tree captures[2] ATTRIBUTE_UNUSED = { _q31, _q30 };
6285 1 : tree res = generic_simplify_146 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR, BIT_AND_EXPR);
6286 1 : if (res) return res;
6287 : }
6288 : }
6289 : break;
6290 : }
6291 : default:;
6292 : }
6293 : break;
6294 : }
6295 1845482 : default:;
6296 : }
6297 1845482 : switch (TREE_CODE (_p1))
6298 : {
6299 393 : case BIT_NOT_EXPR:
6300 393 : {
6301 393 : tree _q30 = TREE_OPERAND (_p1, 0);
6302 393 : switch (TREE_CODE (_q30))
6303 : {
6304 0 : case BIT_AND_EXPR:
6305 0 : {
6306 0 : tree _q40 = TREE_OPERAND (_q30, 0);
6307 0 : tree _q41 = TREE_OPERAND (_q30, 1);
6308 0 : if ((_q40 == _p0 && ! TREE_SIDE_EFFECTS (_q40)) || (operand_equal_p (_q40, _p0, 0) && types_match (_q40, _p0)))
6309 : {
6310 0 : {
6311 0 : tree captures[2] ATTRIBUTE_UNUSED = { _p0, _q41 };
6312 0 : tree res = generic_simplify_146 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR, BIT_AND_EXPR);
6313 0 : if (res) return res;
6314 : }
6315 : }
6316 0 : if ((_q41 == _p0 && ! TREE_SIDE_EFFECTS (_q41)) || (operand_equal_p (_q41, _p0, 0) && types_match (_q41, _p0)))
6317 : {
6318 0 : {
6319 0 : tree captures[2] ATTRIBUTE_UNUSED = { _p0, _q40 };
6320 0 : tree res = generic_simplify_146 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR, BIT_AND_EXPR);
6321 0 : if (res) return res;
6322 : }
6323 : }
6324 : break;
6325 : }
6326 : default:;
6327 : }
6328 : break;
6329 : }
6330 1845482 : default:;
6331 : }
6332 1845482 : switch (TREE_CODE (_p0))
6333 : {
6334 79026 : case BIT_AND_EXPR:
6335 79026 : {
6336 79026 : tree _q20 = TREE_OPERAND (_p0, 0);
6337 79026 : tree _q21 = TREE_OPERAND (_p0, 1);
6338 79026 : {
6339 79026 : tree captures[3] ATTRIBUTE_UNUSED = { _q20, _q21, _p1 };
6340 79026 : tree res = generic_simplify_34 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR, BIT_AND_EXPR, BIT_IOR_EXPR);
6341 79026 : if (res) return res;
6342 : }
6343 79022 : {
6344 79022 : tree captures[3] ATTRIBUTE_UNUSED = { _q21, _q20, _p1 };
6345 79022 : tree res = generic_simplify_34 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR, BIT_AND_EXPR, BIT_IOR_EXPR);
6346 79022 : if (res) return res;
6347 : }
6348 79020 : {
6349 79020 : tree _q20_pops[1];
6350 79020 : if (tree_nop_convert (_q20, _q20_pops))
6351 : {
6352 6373 : tree _q30 = _q20_pops[0];
6353 6373 : switch (TREE_CODE (_q30))
6354 : {
6355 0 : case BIT_IOR_EXPR:
6356 0 : {
6357 0 : tree _q40 = TREE_OPERAND (_q30, 0);
6358 0 : tree _q41 = TREE_OPERAND (_q30, 1);
6359 0 : {
6360 0 : tree captures[8] ATTRIBUTE_UNUSED = { _p0, _p0, _q20, _q30, _q40, _q41, _q21, _p1 };
6361 0 : tree res = generic_simplify_147 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR);
6362 0 : if (res) return res;
6363 : }
6364 0 : {
6365 0 : tree captures[8] ATTRIBUTE_UNUSED = { _p0, _p0, _q20, _q30, _q41, _q40, _q21, _p1 };
6366 0 : tree res = generic_simplify_147 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR);
6367 0 : if (res) return res;
6368 : }
6369 0 : break;
6370 : }
6371 48 : case BIT_XOR_EXPR:
6372 48 : {
6373 48 : tree _q40 = TREE_OPERAND (_q30, 0);
6374 48 : tree _q41 = TREE_OPERAND (_q30, 1);
6375 48 : {
6376 48 : tree captures[8] ATTRIBUTE_UNUSED = { _p0, _p0, _q20, _q30, _q40, _q41, _q21, _p1 };
6377 48 : tree res = generic_simplify_147 (loc, type, _p0, _p1, captures, BIT_XOR_EXPR);
6378 48 : if (res) return res;
6379 : }
6380 32 : {
6381 32 : tree captures[8] ATTRIBUTE_UNUSED = { _p0, _p0, _q20, _q30, _q41, _q40, _q21, _p1 };
6382 32 : tree res = generic_simplify_147 (loc, type, _p0, _p1, captures, BIT_XOR_EXPR);
6383 32 : if (res) return res;
6384 : }
6385 32 : break;
6386 : }
6387 : default:;
6388 : }
6389 : }
6390 : }
6391 79004 : {
6392 79004 : tree _q21_pops[1];
6393 79004 : if (tree_nop_convert (_q21, _q21_pops))
6394 : {
6395 139 : tree _q40 = _q21_pops[0];
6396 139 : switch (TREE_CODE (_q40))
6397 : {
6398 0 : case BIT_IOR_EXPR:
6399 0 : {
6400 0 : tree _q50 = TREE_OPERAND (_q40, 0);
6401 0 : tree _q51 = TREE_OPERAND (_q40, 1);
6402 0 : {
6403 0 : tree captures[8] ATTRIBUTE_UNUSED = { _p0, _p0, _q21, _q40, _q50, _q51, _q20, _p1 };
6404 0 : tree res = generic_simplify_147 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR);
6405 0 : if (res) return res;
6406 : }
6407 0 : {
6408 0 : tree captures[8] ATTRIBUTE_UNUSED = { _p0, _p0, _q21, _q40, _q51, _q50, _q20, _p1 };
6409 0 : tree res = generic_simplify_147 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR);
6410 0 : if (res) return res;
6411 : }
6412 0 : break;
6413 : }
6414 0 : case BIT_XOR_EXPR:
6415 0 : {
6416 0 : tree _q50 = TREE_OPERAND (_q40, 0);
6417 0 : tree _q51 = TREE_OPERAND (_q40, 1);
6418 0 : {
6419 0 : tree captures[8] ATTRIBUTE_UNUSED = { _p0, _p0, _q21, _q40, _q50, _q51, _q20, _p1 };
6420 0 : tree res = generic_simplify_147 (loc, type, _p0, _p1, captures, BIT_XOR_EXPR);
6421 0 : if (res) return res;
6422 : }
6423 0 : {
6424 0 : tree captures[8] ATTRIBUTE_UNUSED = { _p0, _p0, _q21, _q40, _q51, _q50, _q20, _p1 };
6425 0 : tree res = generic_simplify_147 (loc, type, _p0, _p1, captures, BIT_XOR_EXPR);
6426 0 : if (res) return res;
6427 : }
6428 0 : break;
6429 : }
6430 : default:;
6431 : }
6432 : }
6433 : }
6434 79004 : switch (TREE_CODE (_q20))
6435 : {
6436 38 : case BIT_IOR_EXPR:
6437 38 : {
6438 38 : tree _q30 = TREE_OPERAND (_q20, 0);
6439 38 : tree _q31 = TREE_OPERAND (_q20, 1);
6440 38 : {
6441 38 : tree captures[8] ATTRIBUTE_UNUSED = { _p0, _p0, _q20, _q20, _q30, _q31, _q21, _p1 };
6442 38 : tree res = generic_simplify_148 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR);
6443 38 : if (res) return res;
6444 : }
6445 38 : {
6446 38 : tree captures[8] ATTRIBUTE_UNUSED = { _p0, _p0, _q20, _q20, _q31, _q30, _q21, _p1 };
6447 38 : tree res = generic_simplify_148 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR);
6448 38 : if (res) return res;
6449 : }
6450 38 : break;
6451 : }
6452 58 : case BIT_XOR_EXPR:
6453 58 : {
6454 58 : tree _q30 = TREE_OPERAND (_q20, 0);
6455 58 : tree _q31 = TREE_OPERAND (_q20, 1);
6456 58 : {
6457 58 : tree captures[8] ATTRIBUTE_UNUSED = { _p0, _p0, _q20, _q20, _q30, _q31, _q21, _p1 };
6458 58 : tree res = generic_simplify_148 (loc, type, _p0, _p1, captures, BIT_XOR_EXPR);
6459 58 : if (res) return res;
6460 : }
6461 18 : {
6462 18 : tree captures[8] ATTRIBUTE_UNUSED = { _p0, _p0, _q20, _q20, _q31, _q30, _q21, _p1 };
6463 18 : tree res = generic_simplify_148 (loc, type, _p0, _p1, captures, BIT_XOR_EXPR);
6464 18 : if (res) return res;
6465 : }
6466 18 : break;
6467 : }
6468 78964 : default:;
6469 : }
6470 78964 : switch (TREE_CODE (_q21))
6471 : {
6472 0 : case BIT_IOR_EXPR:
6473 0 : {
6474 0 : tree _q40 = TREE_OPERAND (_q21, 0);
6475 0 : tree _q41 = TREE_OPERAND (_q21, 1);
6476 0 : {
6477 0 : tree captures[8] ATTRIBUTE_UNUSED = { _p0, _p0, _q21, _q21, _q40, _q41, _q20, _p1 };
6478 0 : tree res = generic_simplify_148 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR);
6479 0 : if (res) return res;
6480 : }
6481 0 : {
6482 0 : tree captures[8] ATTRIBUTE_UNUSED = { _p0, _p0, _q21, _q21, _q41, _q40, _q20, _p1 };
6483 0 : tree res = generic_simplify_148 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR);
6484 0 : if (res) return res;
6485 : }
6486 0 : break;
6487 : }
6488 0 : case BIT_XOR_EXPR:
6489 0 : {
6490 0 : tree _q40 = TREE_OPERAND (_q21, 0);
6491 0 : tree _q41 = TREE_OPERAND (_q21, 1);
6492 0 : {
6493 0 : tree captures[8] ATTRIBUTE_UNUSED = { _p0, _p0, _q21, _q21, _q40, _q41, _q20, _p1 };
6494 0 : tree res = generic_simplify_148 (loc, type, _p0, _p1, captures, BIT_XOR_EXPR);
6495 0 : if (res) return res;
6496 : }
6497 0 : {
6498 0 : tree captures[8] ATTRIBUTE_UNUSED = { _p0, _p0, _q21, _q21, _q41, _q40, _q20, _p1 };
6499 0 : tree res = generic_simplify_148 (loc, type, _p0, _p1, captures, BIT_XOR_EXPR);
6500 0 : if (res) return res;
6501 : }
6502 0 : break;
6503 : }
6504 : default:;
6505 : }
6506 : break;
6507 : }
6508 1845420 : default:;
6509 : }
6510 1845420 : switch (TREE_CODE (_p1))
6511 : {
6512 35653 : case BIT_AND_EXPR:
6513 35653 : {
6514 35653 : tree _q30 = TREE_OPERAND (_p1, 0);
6515 35653 : tree _q31 = TREE_OPERAND (_p1, 1);
6516 35653 : {
6517 35653 : tree captures[3] ATTRIBUTE_UNUSED = { _q30, _q31, _p0 };
6518 35653 : tree res = generic_simplify_34 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR, BIT_AND_EXPR, BIT_IOR_EXPR);
6519 35653 : if (res) return res;
6520 : }
6521 35653 : {
6522 35653 : tree captures[3] ATTRIBUTE_UNUSED = { _q31, _q30, _p0 };
6523 35653 : tree res = generic_simplify_34 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR, BIT_AND_EXPR, BIT_IOR_EXPR);
6524 35653 : if (res) return res;
6525 : }
6526 35653 : break;
6527 : }
6528 1845420 : default:;
6529 : }
6530 1845420 : {
6531 1845420 : tree _p0_pops[1];
6532 1845420 : if (tree_nop_convert (_p0, _p0_pops))
6533 : {
6534 565326 : tree _q20 = _p0_pops[0];
6535 565326 : switch (TREE_CODE (_q20))
6536 : {
6537 98 : case BIT_AND_EXPR:
6538 98 : {
6539 98 : tree _q30 = TREE_OPERAND (_q20, 0);
6540 98 : tree _q31 = TREE_OPERAND (_q20, 1);
6541 98 : {
6542 98 : tree _q30_pops[1];
6543 98 : if (tree_nop_convert (_q30, _q30_pops))
6544 : {
6545 16 : tree _q40 = _q30_pops[0];
6546 16 : switch (TREE_CODE (_q40))
6547 : {
6548 0 : case BIT_IOR_EXPR:
6549 0 : {
6550 0 : tree _q50 = TREE_OPERAND (_q40, 0);
6551 0 : tree _q51 = TREE_OPERAND (_q40, 1);
6552 0 : {
6553 0 : tree captures[8] ATTRIBUTE_UNUSED = { _p0, _q20, _q30, _q40, _q50, _q51, _q31, _p1 };
6554 0 : tree res = generic_simplify_149 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR);
6555 0 : if (res) return res;
6556 : }
6557 0 : {
6558 0 : tree captures[8] ATTRIBUTE_UNUSED = { _p0, _q20, _q30, _q40, _q51, _q50, _q31, _p1 };
6559 0 : tree res = generic_simplify_149 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR);
6560 0 : if (res) return res;
6561 : }
6562 0 : break;
6563 : }
6564 0 : case BIT_XOR_EXPR:
6565 0 : {
6566 0 : tree _q50 = TREE_OPERAND (_q40, 0);
6567 0 : tree _q51 = TREE_OPERAND (_q40, 1);
6568 0 : {
6569 0 : tree captures[8] ATTRIBUTE_UNUSED = { _p0, _q20, _q30, _q40, _q50, _q51, _q31, _p1 };
6570 0 : tree res = generic_simplify_149 (loc, type, _p0, _p1, captures, BIT_XOR_EXPR);
6571 0 : if (res) return res;
6572 : }
6573 0 : {
6574 0 : tree captures[8] ATTRIBUTE_UNUSED = { _p0, _q20, _q30, _q40, _q51, _q50, _q31, _p1 };
6575 0 : tree res = generic_simplify_149 (loc, type, _p0, _p1, captures, BIT_XOR_EXPR);
6576 0 : if (res) return res;
6577 : }
6578 0 : break;
6579 : }
6580 : default:;
6581 : }
6582 : }
6583 : }
6584 98 : {
6585 98 : tree _q31_pops[1];
6586 98 : if (tree_nop_convert (_q31, _q31_pops))
6587 : {
6588 74 : tree _q50 = _q31_pops[0];
6589 74 : switch (TREE_CODE (_q50))
6590 : {
6591 0 : case BIT_IOR_EXPR:
6592 0 : {
6593 0 : tree _q60 = TREE_OPERAND (_q50, 0);
6594 0 : tree _q61 = TREE_OPERAND (_q50, 1);
6595 0 : {
6596 0 : tree captures[8] ATTRIBUTE_UNUSED = { _p0, _q20, _q31, _q50, _q60, _q61, _q30, _p1 };
6597 0 : tree res = generic_simplify_149 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR);
6598 0 : if (res) return res;
6599 : }
6600 0 : {
6601 0 : tree captures[8] ATTRIBUTE_UNUSED = { _p0, _q20, _q31, _q50, _q61, _q60, _q30, _p1 };
6602 0 : tree res = generic_simplify_149 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR);
6603 0 : if (res) return res;
6604 : }
6605 0 : break;
6606 : }
6607 0 : case BIT_XOR_EXPR:
6608 0 : {
6609 0 : tree _q60 = TREE_OPERAND (_q50, 0);
6610 0 : tree _q61 = TREE_OPERAND (_q50, 1);
6611 0 : {
6612 0 : tree captures[8] ATTRIBUTE_UNUSED = { _p0, _q20, _q31, _q50, _q60, _q61, _q30, _p1 };
6613 0 : tree res = generic_simplify_149 (loc, type, _p0, _p1, captures, BIT_XOR_EXPR);
6614 0 : if (res) return res;
6615 : }
6616 0 : {
6617 0 : tree captures[8] ATTRIBUTE_UNUSED = { _p0, _q20, _q31, _q50, _q61, _q60, _q30, _p1 };
6618 0 : tree res = generic_simplify_149 (loc, type, _p0, _p1, captures, BIT_XOR_EXPR);
6619 0 : if (res) return res;
6620 : }
6621 0 : break;
6622 : }
6623 : default:;
6624 : }
6625 : }
6626 : }
6627 98 : switch (TREE_CODE (_q30))
6628 : {
6629 0 : case BIT_IOR_EXPR:
6630 0 : {
6631 0 : tree _q40 = TREE_OPERAND (_q30, 0);
6632 0 : tree _q41 = TREE_OPERAND (_q30, 1);
6633 0 : {
6634 0 : tree captures[8] ATTRIBUTE_UNUSED = { _p0, _q20, _q30, _q30, _q40, _q41, _q31, _p1 };
6635 0 : tree res = generic_simplify_150 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR);
6636 0 : if (res) return res;
6637 : }
6638 0 : {
6639 0 : tree captures[8] ATTRIBUTE_UNUSED = { _p0, _q20, _q30, _q30, _q41, _q40, _q31, _p1 };
6640 0 : tree res = generic_simplify_150 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR);
6641 0 : if (res) return res;
6642 : }
6643 0 : break;
6644 : }
6645 0 : case BIT_XOR_EXPR:
6646 0 : {
6647 0 : tree _q40 = TREE_OPERAND (_q30, 0);
6648 0 : tree _q41 = TREE_OPERAND (_q30, 1);
6649 0 : {
6650 0 : tree captures[8] ATTRIBUTE_UNUSED = { _p0, _q20, _q30, _q30, _q40, _q41, _q31, _p1 };
6651 0 : tree res = generic_simplify_150 (loc, type, _p0, _p1, captures, BIT_XOR_EXPR);
6652 0 : if (res) return res;
6653 : }
6654 0 : {
6655 0 : tree captures[8] ATTRIBUTE_UNUSED = { _p0, _q20, _q30, _q30, _q41, _q40, _q31, _p1 };
6656 0 : tree res = generic_simplify_150 (loc, type, _p0, _p1, captures, BIT_XOR_EXPR);
6657 0 : if (res) return res;
6658 : }
6659 0 : break;
6660 : }
6661 98 : default:;
6662 : }
6663 98 : switch (TREE_CODE (_q31))
6664 : {
6665 0 : case BIT_IOR_EXPR:
6666 0 : {
6667 0 : tree _q50 = TREE_OPERAND (_q31, 0);
6668 0 : tree _q51 = TREE_OPERAND (_q31, 1);
6669 0 : {
6670 0 : tree captures[8] ATTRIBUTE_UNUSED = { _p0, _q20, _q31, _q31, _q50, _q51, _q30, _p1 };
6671 0 : tree res = generic_simplify_150 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR);
6672 0 : if (res) return res;
6673 : }
6674 0 : {
6675 0 : tree captures[8] ATTRIBUTE_UNUSED = { _p0, _q20, _q31, _q31, _q51, _q50, _q30, _p1 };
6676 0 : tree res = generic_simplify_150 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR);
6677 0 : if (res) return res;
6678 : }
6679 0 : break;
6680 : }
6681 0 : case BIT_XOR_EXPR:
6682 0 : {
6683 0 : tree _q50 = TREE_OPERAND (_q31, 0);
6684 0 : tree _q51 = TREE_OPERAND (_q31, 1);
6685 0 : {
6686 0 : tree captures[8] ATTRIBUTE_UNUSED = { _p0, _q20, _q31, _q31, _q50, _q51, _q30, _p1 };
6687 0 : tree res = generic_simplify_150 (loc, type, _p0, _p1, captures, BIT_XOR_EXPR);
6688 0 : if (res) return res;
6689 : }
6690 0 : {
6691 0 : tree captures[8] ATTRIBUTE_UNUSED = { _p0, _q20, _q31, _q31, _q51, _q50, _q30, _p1 };
6692 0 : tree res = generic_simplify_150 (loc, type, _p0, _p1, captures, BIT_XOR_EXPR);
6693 0 : if (res) return res;
6694 : }
6695 0 : break;
6696 : }
6697 : default:;
6698 : }
6699 : break;
6700 : }
6701 14 : case MULT_EXPR:
6702 14 : {
6703 14 : tree _q30 = TREE_OPERAND (_q20, 0);
6704 14 : tree _q31 = TREE_OPERAND (_q20, 1);
6705 14 : {
6706 14 : tree _q30_pops[1];
6707 14 : if (tree_nop_convert (_q30, _q30_pops))
6708 : {
6709 0 : tree _q40 = _q30_pops[0];
6710 0 : switch (TREE_CODE (_q31))
6711 : {
6712 0 : case INTEGER_CST:
6713 0 : {
6714 0 : switch (TREE_CODE (_p1))
6715 : {
6716 0 : case LSHIFT_EXPR:
6717 0 : {
6718 0 : tree _q70 = TREE_OPERAND (_p1, 0);
6719 0 : tree _q71 = TREE_OPERAND (_p1, 1);
6720 0 : if ((_q70 == _q40 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q40, 0) && types_match (_q70, _q40)))
6721 : {
6722 0 : switch (TREE_CODE (_q71))
6723 : {
6724 0 : case INTEGER_CST:
6725 0 : {
6726 0 : {
6727 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q40, _q31, _p1, _q71 };
6728 0 : tree res = generic_simplify_41 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR);
6729 0 : if (res) return res;
6730 : }
6731 0 : break;
6732 : }
6733 : default:;
6734 : }
6735 : }
6736 : break;
6737 : }
6738 0 : default:;
6739 : }
6740 0 : {
6741 0 : tree _p1_pops[1];
6742 0 : if (tree_nop_convert (_p1, _p1_pops))
6743 : {
6744 0 : tree _q70 = _p1_pops[0];
6745 0 : switch (TREE_CODE (_q70))
6746 : {
6747 0 : case MULT_EXPR:
6748 0 : {
6749 0 : tree _q80 = TREE_OPERAND (_q70, 0);
6750 0 : tree _q81 = TREE_OPERAND (_q70, 1);
6751 0 : {
6752 0 : tree _q80_pops[1];
6753 0 : if (tree_nop_convert (_q80, _q80_pops))
6754 : {
6755 0 : tree _q90 = _q80_pops[0];
6756 0 : switch (TREE_CODE (_q81))
6757 : {
6758 0 : case INTEGER_CST:
6759 0 : {
6760 0 : {
6761 0 : tree captures[8] ATTRIBUTE_UNUSED = { _p0, _q20, _q40, _q31, _p1, _q70, _q90, _q81 };
6762 0 : tree res = generic_simplify_40 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR);
6763 0 : if (res) return res;
6764 : }
6765 0 : break;
6766 : }
6767 : default:;
6768 : }
6769 : }
6770 : }
6771 0 : break;
6772 : }
6773 : default:;
6774 : }
6775 : }
6776 : }
6777 0 : if ((_p1 == _q40 && ! TREE_SIDE_EFFECTS (_p1)) || (operand_equal_p (_p1, _q40, 0) && types_match (_p1, _q40)))
6778 : {
6779 0 : {
6780 0 : tree captures[4] ATTRIBUTE_UNUSED = { _p0, _q20, _q40, _q31 };
6781 0 : tree res = generic_simplify_42 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR);
6782 0 : if (res) return res;
6783 : }
6784 : }
6785 : break;
6786 : }
6787 : default:;
6788 : }
6789 : }
6790 : }
6791 14 : break;
6792 : }
6793 : default:;
6794 : }
6795 : }
6796 : }
6797 1845420 : switch (TREE_CODE (_p1))
6798 : {
6799 35653 : case BIT_AND_EXPR:
6800 35653 : {
6801 35653 : tree _q30 = TREE_OPERAND (_p1, 0);
6802 35653 : tree _q31 = TREE_OPERAND (_p1, 1);
6803 35653 : {
6804 35653 : tree _q30_pops[1];
6805 35653 : if (tree_nop_convert (_q30, _q30_pops))
6806 : {
6807 145 : tree _q40 = _q30_pops[0];
6808 145 : switch (TREE_CODE (_q40))
6809 : {
6810 0 : case BIT_IOR_EXPR:
6811 0 : {
6812 0 : tree _q50 = TREE_OPERAND (_q40, 0);
6813 0 : tree _q51 = TREE_OPERAND (_q40, 1);
6814 0 : {
6815 0 : tree captures[8] ATTRIBUTE_UNUSED = { _p1, _p1, _q30, _q40, _q50, _q51, _q31, _p0 };
6816 0 : tree res = generic_simplify_147 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR);
6817 0 : if (res) return res;
6818 : }
6819 0 : {
6820 0 : tree captures[8] ATTRIBUTE_UNUSED = { _p1, _p1, _q30, _q40, _q51, _q50, _q31, _p0 };
6821 0 : tree res = generic_simplify_147 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR);
6822 0 : if (res) return res;
6823 : }
6824 0 : break;
6825 : }
6826 0 : case BIT_XOR_EXPR:
6827 0 : {
6828 0 : tree _q50 = TREE_OPERAND (_q40, 0);
6829 0 : tree _q51 = TREE_OPERAND (_q40, 1);
6830 0 : {
6831 0 : tree captures[8] ATTRIBUTE_UNUSED = { _p1, _p1, _q30, _q40, _q50, _q51, _q31, _p0 };
6832 0 : tree res = generic_simplify_147 (loc, type, _p0, _p1, captures, BIT_XOR_EXPR);
6833 0 : if (res) return res;
6834 : }
6835 0 : {
6836 0 : tree captures[8] ATTRIBUTE_UNUSED = { _p1, _p1, _q30, _q40, _q51, _q50, _q31, _p0 };
6837 0 : tree res = generic_simplify_147 (loc, type, _p0, _p1, captures, BIT_XOR_EXPR);
6838 0 : if (res) return res;
6839 : }
6840 0 : break;
6841 : }
6842 : default:;
6843 : }
6844 : }
6845 : }
6846 35653 : {
6847 35653 : tree _q31_pops[1];
6848 35653 : if (tree_nop_convert (_q31, _q31_pops))
6849 : {
6850 113 : tree _q50 = _q31_pops[0];
6851 113 : switch (TREE_CODE (_q50))
6852 : {
6853 0 : case BIT_IOR_EXPR:
6854 0 : {
6855 0 : tree _q60 = TREE_OPERAND (_q50, 0);
6856 0 : tree _q61 = TREE_OPERAND (_q50, 1);
6857 0 : {
6858 0 : tree captures[8] ATTRIBUTE_UNUSED = { _p1, _p1, _q31, _q50, _q60, _q61, _q30, _p0 };
6859 0 : tree res = generic_simplify_147 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR);
6860 0 : if (res) return res;
6861 : }
6862 0 : {
6863 0 : tree captures[8] ATTRIBUTE_UNUSED = { _p1, _p1, _q31, _q50, _q61, _q60, _q30, _p0 };
6864 0 : tree res = generic_simplify_147 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR);
6865 0 : if (res) return res;
6866 : }
6867 0 : break;
6868 : }
6869 1 : case BIT_XOR_EXPR:
6870 1 : {
6871 1 : tree _q60 = TREE_OPERAND (_q50, 0);
6872 1 : tree _q61 = TREE_OPERAND (_q50, 1);
6873 1 : {
6874 1 : tree captures[8] ATTRIBUTE_UNUSED = { _p1, _p1, _q31, _q50, _q60, _q61, _q30, _p0 };
6875 1 : tree res = generic_simplify_147 (loc, type, _p0, _p1, captures, BIT_XOR_EXPR);
6876 1 : if (res) return res;
6877 : }
6878 1 : {
6879 1 : tree captures[8] ATTRIBUTE_UNUSED = { _p1, _p1, _q31, _q50, _q61, _q60, _q30, _p0 };
6880 1 : tree res = generic_simplify_147 (loc, type, _p0, _p1, captures, BIT_XOR_EXPR);
6881 1 : if (res) return res;
6882 : }
6883 1 : break;
6884 : }
6885 : default:;
6886 : }
6887 : }
6888 : }
6889 35653 : switch (TREE_CODE (_q30))
6890 : {
6891 274 : case BIT_IOR_EXPR:
6892 274 : {
6893 274 : tree _q40 = TREE_OPERAND (_q30, 0);
6894 274 : tree _q41 = TREE_OPERAND (_q30, 1);
6895 274 : {
6896 274 : tree captures[8] ATTRIBUTE_UNUSED = { _p1, _p1, _q30, _q30, _q40, _q41, _q31, _p0 };
6897 274 : tree res = generic_simplify_148 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR);
6898 274 : if (res) return res;
6899 : }
6900 274 : {
6901 274 : tree captures[8] ATTRIBUTE_UNUSED = { _p1, _p1, _q30, _q30, _q41, _q40, _q31, _p0 };
6902 274 : tree res = generic_simplify_148 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR);
6903 274 : if (res) return res;
6904 : }
6905 274 : break;
6906 : }
6907 0 : case BIT_XOR_EXPR:
6908 0 : {
6909 0 : tree _q40 = TREE_OPERAND (_q30, 0);
6910 0 : tree _q41 = TREE_OPERAND (_q30, 1);
6911 0 : {
6912 0 : tree captures[8] ATTRIBUTE_UNUSED = { _p1, _p1, _q30, _q30, _q40, _q41, _q31, _p0 };
6913 0 : tree res = generic_simplify_148 (loc, type, _p0, _p1, captures, BIT_XOR_EXPR);
6914 0 : if (res) return res;
6915 : }
6916 0 : {
6917 0 : tree captures[8] ATTRIBUTE_UNUSED = { _p1, _p1, _q30, _q30, _q41, _q40, _q31, _p0 };
6918 0 : tree res = generic_simplify_148 (loc, type, _p0, _p1, captures, BIT_XOR_EXPR);
6919 0 : if (res) return res;
6920 : }
6921 0 : break;
6922 : }
6923 35653 : default:;
6924 : }
6925 35653 : switch (TREE_CODE (_q31))
6926 : {
6927 0 : case BIT_IOR_EXPR:
6928 0 : {
6929 0 : tree _q50 = TREE_OPERAND (_q31, 0);
6930 0 : tree _q51 = TREE_OPERAND (_q31, 1);
6931 0 : {
6932 0 : tree captures[8] ATTRIBUTE_UNUSED = { _p1, _p1, _q31, _q31, _q50, _q51, _q30, _p0 };
6933 0 : tree res = generic_simplify_148 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR);
6934 0 : if (res) return res;
6935 : }
6936 0 : {
6937 0 : tree captures[8] ATTRIBUTE_UNUSED = { _p1, _p1, _q31, _q31, _q51, _q50, _q30, _p0 };
6938 0 : tree res = generic_simplify_148 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR);
6939 0 : if (res) return res;
6940 : }
6941 0 : break;
6942 : }
6943 0 : case BIT_XOR_EXPR:
6944 0 : {
6945 0 : tree _q50 = TREE_OPERAND (_q31, 0);
6946 0 : tree _q51 = TREE_OPERAND (_q31, 1);
6947 0 : {
6948 0 : tree captures[8] ATTRIBUTE_UNUSED = { _p1, _p1, _q31, _q31, _q50, _q51, _q30, _p0 };
6949 0 : tree res = generic_simplify_148 (loc, type, _p0, _p1, captures, BIT_XOR_EXPR);
6950 0 : if (res) return res;
6951 : }
6952 0 : {
6953 0 : tree captures[8] ATTRIBUTE_UNUSED = { _p1, _p1, _q31, _q31, _q51, _q50, _q30, _p0 };
6954 0 : tree res = generic_simplify_148 (loc, type, _p0, _p1, captures, BIT_XOR_EXPR);
6955 0 : if (res) return res;
6956 : }
6957 0 : break;
6958 : }
6959 : default:;
6960 : }
6961 : break;
6962 : }
6963 1845420 : default:;
6964 : }
6965 1845420 : {
6966 1845420 : tree _p1_pops[1];
6967 1845420 : if (tree_nop_convert (_p1, _p1_pops))
6968 : {
6969 942368 : tree _q30 = _p1_pops[0];
6970 942368 : switch (TREE_CODE (_q30))
6971 : {
6972 36 : case BIT_AND_EXPR:
6973 36 : {
6974 36 : tree _q40 = TREE_OPERAND (_q30, 0);
6975 36 : tree _q41 = TREE_OPERAND (_q30, 1);
6976 36 : {
6977 36 : tree _q40_pops[1];
6978 36 : if (tree_nop_convert (_q40, _q40_pops))
6979 : {
6980 0 : tree _q50 = _q40_pops[0];
6981 0 : switch (TREE_CODE (_q50))
6982 : {
6983 0 : case BIT_IOR_EXPR:
6984 0 : {
6985 0 : tree _q60 = TREE_OPERAND (_q50, 0);
6986 0 : tree _q61 = TREE_OPERAND (_q50, 1);
6987 0 : {
6988 0 : tree captures[8] ATTRIBUTE_UNUSED = { _p1, _q30, _q40, _q50, _q60, _q61, _q41, _p0 };
6989 0 : tree res = generic_simplify_149 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR);
6990 0 : if (res) return res;
6991 : }
6992 0 : {
6993 0 : tree captures[8] ATTRIBUTE_UNUSED = { _p1, _q30, _q40, _q50, _q61, _q60, _q41, _p0 };
6994 0 : tree res = generic_simplify_149 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR);
6995 0 : if (res) return res;
6996 : }
6997 0 : break;
6998 : }
6999 0 : case BIT_XOR_EXPR:
7000 0 : {
7001 0 : tree _q60 = TREE_OPERAND (_q50, 0);
7002 0 : tree _q61 = TREE_OPERAND (_q50, 1);
7003 0 : {
7004 0 : tree captures[8] ATTRIBUTE_UNUSED = { _p1, _q30, _q40, _q50, _q60, _q61, _q41, _p0 };
7005 0 : tree res = generic_simplify_149 (loc, type, _p0, _p1, captures, BIT_XOR_EXPR);
7006 0 : if (res) return res;
7007 : }
7008 0 : {
7009 0 : tree captures[8] ATTRIBUTE_UNUSED = { _p1, _q30, _q40, _q50, _q61, _q60, _q41, _p0 };
7010 0 : tree res = generic_simplify_149 (loc, type, _p0, _p1, captures, BIT_XOR_EXPR);
7011 0 : if (res) return res;
7012 : }
7013 0 : break;
7014 : }
7015 : default:;
7016 : }
7017 : }
7018 : }
7019 36 : {
7020 36 : tree _q41_pops[1];
7021 36 : if (tree_nop_convert (_q41, _q41_pops))
7022 : {
7023 0 : tree _q60 = _q41_pops[0];
7024 0 : switch (TREE_CODE (_q60))
7025 : {
7026 0 : case BIT_IOR_EXPR:
7027 0 : {
7028 0 : tree _q70 = TREE_OPERAND (_q60, 0);
7029 0 : tree _q71 = TREE_OPERAND (_q60, 1);
7030 0 : {
7031 0 : tree captures[8] ATTRIBUTE_UNUSED = { _p1, _q30, _q41, _q60, _q70, _q71, _q40, _p0 };
7032 0 : tree res = generic_simplify_149 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR);
7033 0 : if (res) return res;
7034 : }
7035 0 : {
7036 0 : tree captures[8] ATTRIBUTE_UNUSED = { _p1, _q30, _q41, _q60, _q71, _q70, _q40, _p0 };
7037 0 : tree res = generic_simplify_149 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR);
7038 0 : if (res) return res;
7039 : }
7040 0 : break;
7041 : }
7042 0 : case BIT_XOR_EXPR:
7043 0 : {
7044 0 : tree _q70 = TREE_OPERAND (_q60, 0);
7045 0 : tree _q71 = TREE_OPERAND (_q60, 1);
7046 0 : {
7047 0 : tree captures[8] ATTRIBUTE_UNUSED = { _p1, _q30, _q41, _q60, _q70, _q71, _q40, _p0 };
7048 0 : tree res = generic_simplify_149 (loc, type, _p0, _p1, captures, BIT_XOR_EXPR);
7049 0 : if (res) return res;
7050 : }
7051 0 : {
7052 0 : tree captures[8] ATTRIBUTE_UNUSED = { _p1, _q30, _q41, _q60, _q71, _q70, _q40, _p0 };
7053 0 : tree res = generic_simplify_149 (loc, type, _p0, _p1, captures, BIT_XOR_EXPR);
7054 0 : if (res) return res;
7055 : }
7056 0 : break;
7057 : }
7058 : default:;
7059 : }
7060 : }
7061 : }
7062 36 : switch (TREE_CODE (_q40))
7063 : {
7064 0 : case BIT_IOR_EXPR:
7065 0 : {
7066 0 : tree _q50 = TREE_OPERAND (_q40, 0);
7067 0 : tree _q51 = TREE_OPERAND (_q40, 1);
7068 0 : {
7069 0 : tree captures[8] ATTRIBUTE_UNUSED = { _p1, _q30, _q40, _q40, _q50, _q51, _q41, _p0 };
7070 0 : tree res = generic_simplify_150 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR);
7071 0 : if (res) return res;
7072 : }
7073 0 : {
7074 0 : tree captures[8] ATTRIBUTE_UNUSED = { _p1, _q30, _q40, _q40, _q51, _q50, _q41, _p0 };
7075 0 : tree res = generic_simplify_150 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR);
7076 0 : if (res) return res;
7077 : }
7078 0 : break;
7079 : }
7080 0 : case BIT_XOR_EXPR:
7081 0 : {
7082 0 : tree _q50 = TREE_OPERAND (_q40, 0);
7083 0 : tree _q51 = TREE_OPERAND (_q40, 1);
7084 0 : {
7085 0 : tree captures[8] ATTRIBUTE_UNUSED = { _p1, _q30, _q40, _q40, _q50, _q51, _q41, _p0 };
7086 0 : tree res = generic_simplify_150 (loc, type, _p0, _p1, captures, BIT_XOR_EXPR);
7087 0 : if (res) return res;
7088 : }
7089 0 : {
7090 0 : tree captures[8] ATTRIBUTE_UNUSED = { _p1, _q30, _q40, _q40, _q51, _q50, _q41, _p0 };
7091 0 : tree res = generic_simplify_150 (loc, type, _p0, _p1, captures, BIT_XOR_EXPR);
7092 0 : if (res) return res;
7093 : }
7094 0 : break;
7095 : }
7096 36 : default:;
7097 : }
7098 36 : switch (TREE_CODE (_q41))
7099 : {
7100 0 : case BIT_IOR_EXPR:
7101 0 : {
7102 0 : tree _q60 = TREE_OPERAND (_q41, 0);
7103 0 : tree _q61 = TREE_OPERAND (_q41, 1);
7104 0 : {
7105 0 : tree captures[8] ATTRIBUTE_UNUSED = { _p1, _q30, _q41, _q41, _q60, _q61, _q40, _p0 };
7106 0 : tree res = generic_simplify_150 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR);
7107 0 : if (res) return res;
7108 : }
7109 0 : {
7110 0 : tree captures[8] ATTRIBUTE_UNUSED = { _p1, _q30, _q41, _q41, _q61, _q60, _q40, _p0 };
7111 0 : tree res = generic_simplify_150 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR);
7112 0 : if (res) return res;
7113 : }
7114 0 : break;
7115 : }
7116 0 : case BIT_XOR_EXPR:
7117 0 : {
7118 0 : tree _q60 = TREE_OPERAND (_q41, 0);
7119 0 : tree _q61 = TREE_OPERAND (_q41, 1);
7120 0 : {
7121 0 : tree captures[8] ATTRIBUTE_UNUSED = { _p1, _q30, _q41, _q41, _q60, _q61, _q40, _p0 };
7122 0 : tree res = generic_simplify_150 (loc, type, _p0, _p1, captures, BIT_XOR_EXPR);
7123 0 : if (res) return res;
7124 : }
7125 0 : {
7126 0 : tree captures[8] ATTRIBUTE_UNUSED = { _p1, _q30, _q41, _q41, _q61, _q60, _q40, _p0 };
7127 0 : tree res = generic_simplify_150 (loc, type, _p0, _p1, captures, BIT_XOR_EXPR);
7128 0 : if (res) return res;
7129 : }
7130 0 : break;
7131 : }
7132 : default:;
7133 : }
7134 : break;
7135 : }
7136 : default:;
7137 : }
7138 : }
7139 : }
7140 1845420 : switch (TREE_CODE (_p0))
7141 : {
7142 17913 : case BIT_IOR_EXPR:
7143 17913 : {
7144 17913 : tree _q20 = TREE_OPERAND (_p0, 0);
7145 17913 : tree _q21 = TREE_OPERAND (_p0, 1);
7146 17913 : if (CONSTANT_CLASS_P (_q21))
7147 : {
7148 818 : if (CONSTANT_CLASS_P (_p1))
7149 : {
7150 128 : {
7151 128 : tree captures[3] ATTRIBUTE_UNUSED = { _q20, _q21, _p1 };
7152 128 : tree res = generic_simplify_35 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR);
7153 128 : if (res) return res;
7154 : }
7155 : }
7156 : }
7157 : break;
7158 : }
7159 1697 : case COND_EXPR:
7160 1697 : {
7161 1697 : tree _q20 = TREE_OPERAND (_p0, 0);
7162 1697 : tree _q21 = TREE_OPERAND (_p0, 1);
7163 1697 : tree _q22 = TREE_OPERAND (_p0, 2);
7164 1697 : if (integer_zerop (_q22))
7165 : {
7166 1567 : switch (TREE_CODE (_p1))
7167 : {
7168 612 : case COND_EXPR:
7169 612 : {
7170 612 : tree _q60 = TREE_OPERAND (_p1, 0);
7171 612 : tree _q61 = TREE_OPERAND (_p1, 1);
7172 612 : tree _q62 = TREE_OPERAND (_p1, 2);
7173 612 : if ((_q60 == _q20 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q20, 0) && types_match (_q60, _q20)))
7174 : {
7175 0 : if (integer_zerop (_q61))
7176 : {
7177 0 : {
7178 0 : tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q62 };
7179 0 : const enum tree_code op = BIT_IOR_EXPR;
7180 0 : if (TREE_SIDE_EFFECTS (_p0)) goto next_after_fail1308;
7181 0 : if (TREE_SIDE_EFFECTS (_p1)) goto next_after_fail1308;
7182 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1308;
7183 0 : {
7184 0 : tree res_op0;
7185 0 : res_op0 = captures[1];
7186 0 : tree res_op1;
7187 0 : res_op1 = captures[2];
7188 0 : tree res_op2;
7189 0 : res_op2 = captures[4];
7190 0 : tree _r;
7191 0 : _r = fold_build3_loc (loc, COND_EXPR, type, res_op0, res_op1, res_op2);
7192 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 890, __FILE__, __LINE__, true);
7193 0 : return _r;
7194 : }
7195 0 : next_after_fail1308:;
7196 : }
7197 : }
7198 : }
7199 : break;
7200 : }
7201 : default:;
7202 : }
7203 : }
7204 1697 : if (integer_zerop (_q21))
7205 : {
7206 10 : switch (TREE_CODE (_p1))
7207 : {
7208 0 : case COND_EXPR:
7209 0 : {
7210 0 : tree _q60 = TREE_OPERAND (_p1, 0);
7211 0 : tree _q61 = TREE_OPERAND (_p1, 1);
7212 0 : tree _q62 = TREE_OPERAND (_p1, 2);
7213 0 : if ((_q60 == _q20 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q20, 0) && types_match (_q60, _q20)))
7214 : {
7215 0 : if (integer_zerop (_q62))
7216 : {
7217 0 : {
7218 0 : tree captures[5] ATTRIBUTE_UNUSED = { _p1, _q20, _q61, _p0, _q22 };
7219 0 : const enum tree_code op = BIT_IOR_EXPR;
7220 0 : if (TREE_SIDE_EFFECTS (_p0)) goto next_after_fail1309;
7221 0 : if (TREE_SIDE_EFFECTS (_p1)) goto next_after_fail1309;
7222 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1309;
7223 0 : {
7224 0 : tree res_op0;
7225 0 : res_op0 = captures[1];
7226 0 : tree res_op1;
7227 0 : res_op1 = captures[2];
7228 0 : tree res_op2;
7229 0 : res_op2 = captures[4];
7230 0 : tree _r;
7231 0 : _r = fold_build3_loc (loc, COND_EXPR, type, res_op0, res_op1, res_op2);
7232 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 890, __FILE__, __LINE__, true);
7233 0 : return _r;
7234 : }
7235 0 : next_after_fail1309:;
7236 : }
7237 : }
7238 : }
7239 : break;
7240 : }
7241 : default:;
7242 : }
7243 : }
7244 1697 : switch (TREE_CODE (_q20))
7245 : {
7246 39 : case LT_EXPR:
7247 39 : {
7248 39 : tree _q30 = TREE_OPERAND (_q20, 0);
7249 39 : tree _q31 = TREE_OPERAND (_q20, 1);
7250 39 : if (zerop (_q22))
7251 : {
7252 2 : switch (TREE_CODE (_p1))
7253 : {
7254 0 : case COND_EXPR:
7255 0 : {
7256 0 : tree _q80 = TREE_OPERAND (_p1, 0);
7257 0 : tree _q81 = TREE_OPERAND (_p1, 1);
7258 0 : tree _q82 = TREE_OPERAND (_p1, 2);
7259 0 : switch (TREE_CODE (_q80))
7260 : {
7261 0 : case GE_EXPR:
7262 0 : {
7263 0 : tree _q90 = TREE_OPERAND (_q80, 0);
7264 0 : tree _q91 = TREE_OPERAND (_q80, 1);
7265 0 : if ((_q90 == _q30 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q30, 0) && types_match (_q90, _q30)))
7266 : {
7267 0 : if ((_q91 == _q31 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q31, 0) && types_match (_q91, _q31)))
7268 : {
7269 0 : if (zerop (_q82))
7270 : {
7271 0 : {
7272 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q20, _q30, _q31, _q21, _q80, _q81 };
7273 0 : tree res = generic_simplify_37 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR, LT_EXPR, GE_EXPR);
7274 0 : if (res) return res;
7275 : }
7276 : }
7277 : }
7278 : }
7279 : break;
7280 : }
7281 : default:;
7282 : }
7283 : break;
7284 : }
7285 : default:;
7286 : }
7287 : }
7288 : break;
7289 : }
7290 1239 : case LE_EXPR:
7291 1239 : {
7292 1239 : tree _q30 = TREE_OPERAND (_q20, 0);
7293 1239 : tree _q31 = TREE_OPERAND (_q20, 1);
7294 1239 : if (zerop (_q22))
7295 : {
7296 1223 : switch (TREE_CODE (_p1))
7297 : {
7298 442 : case COND_EXPR:
7299 442 : {
7300 442 : tree _q80 = TREE_OPERAND (_p1, 0);
7301 442 : tree _q81 = TREE_OPERAND (_p1, 1);
7302 442 : tree _q82 = TREE_OPERAND (_p1, 2);
7303 442 : switch (TREE_CODE (_q80))
7304 : {
7305 0 : case GT_EXPR:
7306 0 : {
7307 0 : tree _q90 = TREE_OPERAND (_q80, 0);
7308 0 : tree _q91 = TREE_OPERAND (_q80, 1);
7309 0 : if ((_q90 == _q30 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q30, 0) && types_match (_q90, _q30)))
7310 : {
7311 0 : if ((_q91 == _q31 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q31, 0) && types_match (_q91, _q31)))
7312 : {
7313 0 : if (zerop (_q82))
7314 : {
7315 0 : {
7316 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q20, _q30, _q31, _q21, _q80, _q81 };
7317 0 : tree res = generic_simplify_37 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR, LE_EXPR, GT_EXPR);
7318 0 : if (res) return res;
7319 : }
7320 : }
7321 : }
7322 : }
7323 : break;
7324 : }
7325 : default:;
7326 : }
7327 : break;
7328 : }
7329 : default:;
7330 : }
7331 : }
7332 : break;
7333 : }
7334 4 : case EQ_EXPR:
7335 4 : {
7336 4 : tree _q30 = TREE_OPERAND (_q20, 0);
7337 4 : tree _q31 = TREE_OPERAND (_q20, 1);
7338 4 : if (zerop (_q22))
7339 : {
7340 4 : switch (TREE_CODE (_p1))
7341 : {
7342 0 : case COND_EXPR:
7343 0 : {
7344 0 : tree _q80 = TREE_OPERAND (_p1, 0);
7345 0 : tree _q81 = TREE_OPERAND (_p1, 1);
7346 0 : tree _q82 = TREE_OPERAND (_p1, 2);
7347 0 : switch (TREE_CODE (_q80))
7348 : {
7349 0 : case NE_EXPR:
7350 0 : {
7351 0 : tree _q90 = TREE_OPERAND (_q80, 0);
7352 0 : tree _q91 = TREE_OPERAND (_q80, 1);
7353 0 : if ((_q90 == _q30 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q30, 0) && types_match (_q90, _q30)))
7354 : {
7355 0 : if ((_q91 == _q31 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q31, 0) && types_match (_q91, _q31)))
7356 : {
7357 0 : if (zerop (_q82))
7358 : {
7359 0 : {
7360 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q20, _q30, _q31, _q21, _q80, _q81 };
7361 0 : tree res = generic_simplify_37 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR, EQ_EXPR, NE_EXPR);
7362 0 : if (res) return res;
7363 : }
7364 : }
7365 : }
7366 : }
7367 : break;
7368 : }
7369 : default:;
7370 : }
7371 : break;
7372 : }
7373 : default:;
7374 : }
7375 : }
7376 : break;
7377 : }
7378 287 : case NE_EXPR:
7379 287 : {
7380 287 : tree _q30 = TREE_OPERAND (_q20, 0);
7381 287 : tree _q31 = TREE_OPERAND (_q20, 1);
7382 287 : if (zerop (_q22))
7383 : {
7384 220 : switch (TREE_CODE (_p1))
7385 : {
7386 62 : case COND_EXPR:
7387 62 : {
7388 62 : tree _q80 = TREE_OPERAND (_p1, 0);
7389 62 : tree _q81 = TREE_OPERAND (_p1, 1);
7390 62 : tree _q82 = TREE_OPERAND (_p1, 2);
7391 62 : switch (TREE_CODE (_q80))
7392 : {
7393 1 : case EQ_EXPR:
7394 1 : {
7395 1 : tree _q90 = TREE_OPERAND (_q80, 0);
7396 1 : tree _q91 = TREE_OPERAND (_q80, 1);
7397 1 : if ((_q90 == _q30 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q30, 0) && types_match (_q90, _q30)))
7398 : {
7399 0 : if ((_q91 == _q31 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q31, 0) && types_match (_q91, _q31)))
7400 : {
7401 0 : if (zerop (_q82))
7402 : {
7403 0 : {
7404 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q20, _q30, _q31, _q21, _q80, _q81 };
7405 0 : tree res = generic_simplify_37 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR, NE_EXPR, EQ_EXPR);
7406 0 : if (res) return res;
7407 : }
7408 : }
7409 : }
7410 : }
7411 : break;
7412 : }
7413 : default:;
7414 : }
7415 : break;
7416 : }
7417 : default:;
7418 : }
7419 : }
7420 : break;
7421 : }
7422 0 : case GE_EXPR:
7423 0 : {
7424 0 : tree _q30 = TREE_OPERAND (_q20, 0);
7425 0 : tree _q31 = TREE_OPERAND (_q20, 1);
7426 0 : if (zerop (_q22))
7427 : {
7428 0 : switch (TREE_CODE (_p1))
7429 : {
7430 0 : case COND_EXPR:
7431 0 : {
7432 0 : tree _q80 = TREE_OPERAND (_p1, 0);
7433 0 : tree _q81 = TREE_OPERAND (_p1, 1);
7434 0 : tree _q82 = TREE_OPERAND (_p1, 2);
7435 0 : switch (TREE_CODE (_q80))
7436 : {
7437 0 : case LT_EXPR:
7438 0 : {
7439 0 : tree _q90 = TREE_OPERAND (_q80, 0);
7440 0 : tree _q91 = TREE_OPERAND (_q80, 1);
7441 0 : if ((_q90 == _q30 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q30, 0) && types_match (_q90, _q30)))
7442 : {
7443 0 : if ((_q91 == _q31 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q31, 0) && types_match (_q91, _q31)))
7444 : {
7445 0 : if (zerop (_q82))
7446 : {
7447 0 : {
7448 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q20, _q30, _q31, _q21, _q80, _q81 };
7449 0 : tree res = generic_simplify_37 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR, GE_EXPR, LT_EXPR);
7450 0 : if (res) return res;
7451 : }
7452 : }
7453 : }
7454 : }
7455 : break;
7456 : }
7457 : default:;
7458 : }
7459 : break;
7460 : }
7461 : default:;
7462 : }
7463 : }
7464 : break;
7465 : }
7466 0 : case GT_EXPR:
7467 0 : {
7468 0 : tree _q30 = TREE_OPERAND (_q20, 0);
7469 0 : tree _q31 = TREE_OPERAND (_q20, 1);
7470 0 : if (zerop (_q22))
7471 : {
7472 0 : switch (TREE_CODE (_p1))
7473 : {
7474 0 : case COND_EXPR:
7475 0 : {
7476 0 : tree _q80 = TREE_OPERAND (_p1, 0);
7477 0 : tree _q81 = TREE_OPERAND (_p1, 1);
7478 0 : tree _q82 = TREE_OPERAND (_p1, 2);
7479 0 : switch (TREE_CODE (_q80))
7480 : {
7481 0 : case LE_EXPR:
7482 0 : {
7483 0 : tree _q90 = TREE_OPERAND (_q80, 0);
7484 0 : tree _q91 = TREE_OPERAND (_q80, 1);
7485 0 : if ((_q90 == _q30 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q30, 0) && types_match (_q90, _q30)))
7486 : {
7487 0 : if ((_q91 == _q31 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q31, 0) && types_match (_q91, _q31)))
7488 : {
7489 0 : if (zerop (_q82))
7490 : {
7491 0 : {
7492 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q20, _q30, _q31, _q21, _q80, _q81 };
7493 0 : tree res = generic_simplify_37 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR, GT_EXPR, LE_EXPR);
7494 0 : if (res) return res;
7495 : }
7496 : }
7497 : }
7498 : }
7499 : break;
7500 : }
7501 : default:;
7502 : }
7503 : break;
7504 : }
7505 : default:;
7506 : }
7507 : }
7508 : break;
7509 : }
7510 0 : case UNORDERED_EXPR:
7511 0 : {
7512 0 : tree _q30 = TREE_OPERAND (_q20, 0);
7513 0 : tree _q31 = TREE_OPERAND (_q20, 1);
7514 0 : if (zerop (_q22))
7515 : {
7516 0 : switch (TREE_CODE (_p1))
7517 : {
7518 0 : case COND_EXPR:
7519 0 : {
7520 0 : tree _q80 = TREE_OPERAND (_p1, 0);
7521 0 : tree _q81 = TREE_OPERAND (_p1, 1);
7522 0 : tree _q82 = TREE_OPERAND (_p1, 2);
7523 0 : switch (TREE_CODE (_q80))
7524 : {
7525 0 : case ORDERED_EXPR:
7526 0 : {
7527 0 : tree _q90 = TREE_OPERAND (_q80, 0);
7528 0 : tree _q91 = TREE_OPERAND (_q80, 1);
7529 0 : if ((_q90 == _q30 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q30, 0) && types_match (_q90, _q30)))
7530 : {
7531 0 : if ((_q91 == _q31 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q31, 0) && types_match (_q91, _q31)))
7532 : {
7533 0 : if (zerop (_q82))
7534 : {
7535 0 : {
7536 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q20, _q30, _q31, _q21, _q80, _q81 };
7537 0 : tree res = generic_simplify_37 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR, UNORDERED_EXPR, ORDERED_EXPR);
7538 0 : if (res) return res;
7539 : }
7540 : }
7541 : }
7542 : }
7543 : break;
7544 : }
7545 : default:;
7546 : }
7547 : break;
7548 : }
7549 : default:;
7550 : }
7551 : }
7552 : break;
7553 : }
7554 0 : case ORDERED_EXPR:
7555 0 : {
7556 0 : tree _q30 = TREE_OPERAND (_q20, 0);
7557 0 : tree _q31 = TREE_OPERAND (_q20, 1);
7558 0 : if (zerop (_q22))
7559 : {
7560 0 : switch (TREE_CODE (_p1))
7561 : {
7562 0 : case COND_EXPR:
7563 0 : {
7564 0 : tree _q80 = TREE_OPERAND (_p1, 0);
7565 0 : tree _q81 = TREE_OPERAND (_p1, 1);
7566 0 : tree _q82 = TREE_OPERAND (_p1, 2);
7567 0 : switch (TREE_CODE (_q80))
7568 : {
7569 0 : case UNORDERED_EXPR:
7570 0 : {
7571 0 : tree _q90 = TREE_OPERAND (_q80, 0);
7572 0 : tree _q91 = TREE_OPERAND (_q80, 1);
7573 0 : if ((_q90 == _q30 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q30, 0) && types_match (_q90, _q30)))
7574 : {
7575 0 : if ((_q91 == _q31 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q31, 0) && types_match (_q91, _q31)))
7576 : {
7577 0 : if (zerop (_q82))
7578 : {
7579 0 : {
7580 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q20, _q30, _q31, _q21, _q80, _q81 };
7581 0 : tree res = generic_simplify_37 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR, ORDERED_EXPR, UNORDERED_EXPR);
7582 0 : if (res) return res;
7583 : }
7584 : }
7585 : }
7586 : }
7587 : break;
7588 : }
7589 : default:;
7590 : }
7591 : break;
7592 : }
7593 : default:;
7594 : }
7595 : }
7596 : break;
7597 : }
7598 0 : case UNLT_EXPR:
7599 0 : {
7600 0 : tree _q30 = TREE_OPERAND (_q20, 0);
7601 0 : tree _q31 = TREE_OPERAND (_q20, 1);
7602 0 : if (zerop (_q22))
7603 : {
7604 0 : switch (TREE_CODE (_p1))
7605 : {
7606 0 : case COND_EXPR:
7607 0 : {
7608 0 : tree _q80 = TREE_OPERAND (_p1, 0);
7609 0 : tree _q81 = TREE_OPERAND (_p1, 1);
7610 0 : tree _q82 = TREE_OPERAND (_p1, 2);
7611 0 : switch (TREE_CODE (_q80))
7612 : {
7613 0 : case GE_EXPR:
7614 0 : {
7615 0 : tree _q90 = TREE_OPERAND (_q80, 0);
7616 0 : tree _q91 = TREE_OPERAND (_q80, 1);
7617 0 : if ((_q90 == _q30 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q30, 0) && types_match (_q90, _q30)))
7618 : {
7619 0 : if ((_q91 == _q31 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q31, 0) && types_match (_q91, _q31)))
7620 : {
7621 0 : if (zerop (_q82))
7622 : {
7623 0 : {
7624 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q20, _q30, _q31, _q21, _q80, _q81 };
7625 0 : tree res = generic_simplify_37 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR, UNLT_EXPR, GE_EXPR);
7626 0 : if (res) return res;
7627 : }
7628 : }
7629 : }
7630 : }
7631 : break;
7632 : }
7633 : default:;
7634 : }
7635 : break;
7636 : }
7637 : default:;
7638 : }
7639 : }
7640 : break;
7641 : }
7642 0 : case UNLE_EXPR:
7643 0 : {
7644 0 : tree _q30 = TREE_OPERAND (_q20, 0);
7645 0 : tree _q31 = TREE_OPERAND (_q20, 1);
7646 0 : if (zerop (_q22))
7647 : {
7648 0 : switch (TREE_CODE (_p1))
7649 : {
7650 0 : case COND_EXPR:
7651 0 : {
7652 0 : tree _q80 = TREE_OPERAND (_p1, 0);
7653 0 : tree _q81 = TREE_OPERAND (_p1, 1);
7654 0 : tree _q82 = TREE_OPERAND (_p1, 2);
7655 0 : switch (TREE_CODE (_q80))
7656 : {
7657 0 : case GT_EXPR:
7658 0 : {
7659 0 : tree _q90 = TREE_OPERAND (_q80, 0);
7660 0 : tree _q91 = TREE_OPERAND (_q80, 1);
7661 0 : if ((_q90 == _q30 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q30, 0) && types_match (_q90, _q30)))
7662 : {
7663 0 : if ((_q91 == _q31 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q31, 0) && types_match (_q91, _q31)))
7664 : {
7665 0 : if (zerop (_q82))
7666 : {
7667 0 : {
7668 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q20, _q30, _q31, _q21, _q80, _q81 };
7669 0 : tree res = generic_simplify_37 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR, UNLE_EXPR, GT_EXPR);
7670 0 : if (res) return res;
7671 : }
7672 : }
7673 : }
7674 : }
7675 : break;
7676 : }
7677 : default:;
7678 : }
7679 : break;
7680 : }
7681 : default:;
7682 : }
7683 : }
7684 : break;
7685 : }
7686 0 : case UNGT_EXPR:
7687 0 : {
7688 0 : tree _q30 = TREE_OPERAND (_q20, 0);
7689 0 : tree _q31 = TREE_OPERAND (_q20, 1);
7690 0 : if (zerop (_q22))
7691 : {
7692 0 : switch (TREE_CODE (_p1))
7693 : {
7694 0 : case COND_EXPR:
7695 0 : {
7696 0 : tree _q80 = TREE_OPERAND (_p1, 0);
7697 0 : tree _q81 = TREE_OPERAND (_p1, 1);
7698 0 : tree _q82 = TREE_OPERAND (_p1, 2);
7699 0 : switch (TREE_CODE (_q80))
7700 : {
7701 0 : case LE_EXPR:
7702 0 : {
7703 0 : tree _q90 = TREE_OPERAND (_q80, 0);
7704 0 : tree _q91 = TREE_OPERAND (_q80, 1);
7705 0 : if ((_q90 == _q30 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q30, 0) && types_match (_q90, _q30)))
7706 : {
7707 0 : if ((_q91 == _q31 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q31, 0) && types_match (_q91, _q31)))
7708 : {
7709 0 : if (zerop (_q82))
7710 : {
7711 0 : {
7712 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q20, _q30, _q31, _q21, _q80, _q81 };
7713 0 : tree res = generic_simplify_37 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR, UNGT_EXPR, LE_EXPR);
7714 0 : if (res) return res;
7715 : }
7716 : }
7717 : }
7718 : }
7719 : break;
7720 : }
7721 : default:;
7722 : }
7723 : break;
7724 : }
7725 : default:;
7726 : }
7727 : }
7728 : break;
7729 : }
7730 0 : case UNGE_EXPR:
7731 0 : {
7732 0 : tree _q30 = TREE_OPERAND (_q20, 0);
7733 0 : tree _q31 = TREE_OPERAND (_q20, 1);
7734 0 : if (zerop (_q22))
7735 : {
7736 0 : switch (TREE_CODE (_p1))
7737 : {
7738 0 : case COND_EXPR:
7739 0 : {
7740 0 : tree _q80 = TREE_OPERAND (_p1, 0);
7741 0 : tree _q81 = TREE_OPERAND (_p1, 1);
7742 0 : tree _q82 = TREE_OPERAND (_p1, 2);
7743 0 : switch (TREE_CODE (_q80))
7744 : {
7745 0 : case LT_EXPR:
7746 0 : {
7747 0 : tree _q90 = TREE_OPERAND (_q80, 0);
7748 0 : tree _q91 = TREE_OPERAND (_q80, 1);
7749 0 : if ((_q90 == _q30 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q30, 0) && types_match (_q90, _q30)))
7750 : {
7751 0 : if ((_q91 == _q31 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q31, 0) && types_match (_q91, _q31)))
7752 : {
7753 0 : if (zerop (_q82))
7754 : {
7755 0 : {
7756 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q20, _q30, _q31, _q21, _q80, _q81 };
7757 0 : tree res = generic_simplify_37 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR, UNGE_EXPR, LT_EXPR);
7758 0 : if (res) return res;
7759 : }
7760 : }
7761 : }
7762 : }
7763 : break;
7764 : }
7765 : default:;
7766 : }
7767 : break;
7768 : }
7769 : default:;
7770 : }
7771 : }
7772 : break;
7773 : }
7774 0 : case UNEQ_EXPR:
7775 0 : {
7776 0 : tree _q30 = TREE_OPERAND (_q20, 0);
7777 0 : tree _q31 = TREE_OPERAND (_q20, 1);
7778 0 : if (zerop (_q22))
7779 : {
7780 0 : switch (TREE_CODE (_p1))
7781 : {
7782 0 : case COND_EXPR:
7783 0 : {
7784 0 : tree _q80 = TREE_OPERAND (_p1, 0);
7785 0 : tree _q81 = TREE_OPERAND (_p1, 1);
7786 0 : tree _q82 = TREE_OPERAND (_p1, 2);
7787 0 : switch (TREE_CODE (_q80))
7788 : {
7789 0 : case LTGT_EXPR:
7790 0 : {
7791 0 : tree _q90 = TREE_OPERAND (_q80, 0);
7792 0 : tree _q91 = TREE_OPERAND (_q80, 1);
7793 0 : if ((_q90 == _q30 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q30, 0) && types_match (_q90, _q30)))
7794 : {
7795 0 : if ((_q91 == _q31 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q31, 0) && types_match (_q91, _q31)))
7796 : {
7797 0 : if (zerop (_q82))
7798 : {
7799 0 : {
7800 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q20, _q30, _q31, _q21, _q80, _q81 };
7801 0 : tree res = generic_simplify_37 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR, UNEQ_EXPR, LTGT_EXPR);
7802 0 : if (res) return res;
7803 : }
7804 : }
7805 : }
7806 : }
7807 : break;
7808 : }
7809 : default:;
7810 : }
7811 : break;
7812 : }
7813 : default:;
7814 : }
7815 : }
7816 : break;
7817 : }
7818 0 : case LTGT_EXPR:
7819 0 : {
7820 0 : tree _q30 = TREE_OPERAND (_q20, 0);
7821 0 : tree _q31 = TREE_OPERAND (_q20, 1);
7822 0 : if (zerop (_q22))
7823 : {
7824 0 : switch (TREE_CODE (_p1))
7825 : {
7826 0 : case COND_EXPR:
7827 0 : {
7828 0 : tree _q80 = TREE_OPERAND (_p1, 0);
7829 0 : tree _q81 = TREE_OPERAND (_p1, 1);
7830 0 : tree _q82 = TREE_OPERAND (_p1, 2);
7831 0 : switch (TREE_CODE (_q80))
7832 : {
7833 0 : case UNEQ_EXPR:
7834 0 : {
7835 0 : tree _q90 = TREE_OPERAND (_q80, 0);
7836 0 : tree _q91 = TREE_OPERAND (_q80, 1);
7837 0 : if ((_q90 == _q30 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q30, 0) && types_match (_q90, _q30)))
7838 : {
7839 0 : if ((_q91 == _q31 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q31, 0) && types_match (_q91, _q31)))
7840 : {
7841 0 : if (zerop (_q82))
7842 : {
7843 0 : {
7844 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q20, _q30, _q31, _q21, _q80, _q81 };
7845 0 : tree res = generic_simplify_37 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR, LTGT_EXPR, UNEQ_EXPR);
7846 0 : if (res) return res;
7847 : }
7848 : }
7849 : }
7850 : }
7851 : break;
7852 : }
7853 : default:;
7854 : }
7855 : break;
7856 : }
7857 : default:;
7858 : }
7859 : }
7860 : break;
7861 : }
7862 : default:;
7863 : }
7864 : break;
7865 : }
7866 61 : case VEC_COND_EXPR:
7867 61 : {
7868 61 : tree _q20 = TREE_OPERAND (_p0, 0);
7869 61 : tree _q21 = TREE_OPERAND (_p0, 1);
7870 61 : tree _q22 = TREE_OPERAND (_p0, 2);
7871 61 : if (integer_zerop (_q22))
7872 : {
7873 60 : switch (TREE_CODE (_p1))
7874 : {
7875 54 : case VEC_COND_EXPR:
7876 54 : {
7877 54 : tree _q60 = TREE_OPERAND (_p1, 0);
7878 54 : tree _q61 = TREE_OPERAND (_p1, 1);
7879 54 : tree _q62 = TREE_OPERAND (_p1, 2);
7880 54 : if ((_q60 == _q20 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q20, 0) && types_match (_q60, _q20)))
7881 : {
7882 0 : if (integer_zerop (_q61))
7883 : {
7884 0 : {
7885 0 : tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q62 };
7886 0 : const enum tree_code op = BIT_IOR_EXPR;
7887 0 : if (TREE_SIDE_EFFECTS (_p0)) goto next_after_fail1310;
7888 0 : if (TREE_SIDE_EFFECTS (_p1)) goto next_after_fail1310;
7889 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1310;
7890 0 : {
7891 0 : tree res_op0;
7892 0 : res_op0 = captures[1];
7893 0 : tree res_op1;
7894 0 : res_op1 = captures[2];
7895 0 : tree res_op2;
7896 0 : res_op2 = captures[4];
7897 0 : tree _r;
7898 0 : _r = fold_build3_loc (loc, VEC_COND_EXPR, type, res_op0, res_op1, res_op2);
7899 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 890, __FILE__, __LINE__, true);
7900 0 : return _r;
7901 : }
7902 0 : next_after_fail1310:;
7903 : }
7904 : }
7905 : }
7906 : break;
7907 : }
7908 : default:;
7909 : }
7910 : }
7911 61 : if (integer_zerop (_q21))
7912 : {
7913 0 : switch (TREE_CODE (_p1))
7914 : {
7915 0 : case VEC_COND_EXPR:
7916 0 : {
7917 0 : tree _q60 = TREE_OPERAND (_p1, 0);
7918 0 : tree _q61 = TREE_OPERAND (_p1, 1);
7919 0 : tree _q62 = TREE_OPERAND (_p1, 2);
7920 0 : if ((_q60 == _q20 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q20, 0) && types_match (_q60, _q20)))
7921 : {
7922 0 : if (integer_zerop (_q62))
7923 : {
7924 0 : {
7925 0 : tree captures[5] ATTRIBUTE_UNUSED = { _p1, _q20, _q61, _p0, _q22 };
7926 0 : const enum tree_code op = BIT_IOR_EXPR;
7927 0 : if (TREE_SIDE_EFFECTS (_p0)) goto next_after_fail1311;
7928 0 : if (TREE_SIDE_EFFECTS (_p1)) goto next_after_fail1311;
7929 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1311;
7930 0 : {
7931 0 : tree res_op0;
7932 0 : res_op0 = captures[1];
7933 0 : tree res_op1;
7934 0 : res_op1 = captures[2];
7935 0 : tree res_op2;
7936 0 : res_op2 = captures[4];
7937 0 : tree _r;
7938 0 : _r = fold_build3_loc (loc, VEC_COND_EXPR, type, res_op0, res_op1, res_op2);
7939 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 890, __FILE__, __LINE__, true);
7940 0 : return _r;
7941 : }
7942 0 : next_after_fail1311:;
7943 : }
7944 : }
7945 : }
7946 : break;
7947 : }
7948 : default:;
7949 : }
7950 : }
7951 61 : switch (TREE_CODE (_q20))
7952 : {
7953 28 : case LT_EXPR:
7954 28 : {
7955 28 : tree _q30 = TREE_OPERAND (_q20, 0);
7956 28 : tree _q31 = TREE_OPERAND (_q20, 1);
7957 28 : if (integer_zerop (_q22))
7958 : {
7959 28 : switch (TREE_CODE (_p1))
7960 : {
7961 27 : case VEC_COND_EXPR:
7962 27 : {
7963 27 : tree _q80 = TREE_OPERAND (_p1, 0);
7964 27 : tree _q81 = TREE_OPERAND (_p1, 1);
7965 27 : tree _q82 = TREE_OPERAND (_p1, 2);
7966 27 : switch (TREE_CODE (_q80))
7967 : {
7968 0 : case GE_EXPR:
7969 0 : {
7970 0 : tree _q90 = TREE_OPERAND (_q80, 0);
7971 0 : tree _q91 = TREE_OPERAND (_q80, 1);
7972 0 : if ((_q90 == _q30 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q30, 0) && types_match (_q90, _q30)))
7973 : {
7974 0 : if ((_q91 == _q31 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q31, 0) && types_match (_q91, _q31)))
7975 : {
7976 0 : if (integer_zerop (_q82))
7977 : {
7978 0 : {
7979 0 : tree captures[8] ATTRIBUTE_UNUSED = { _p0, _q20, _q30, _q31, _q21, _p1, _q80, _q81 };
7980 0 : tree res = generic_simplify_38 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR, LT_EXPR, GE_EXPR);
7981 0 : if (res) return res;
7982 : }
7983 : }
7984 : }
7985 : }
7986 : break;
7987 : }
7988 : default:;
7989 : }
7990 : break;
7991 : }
7992 : default:;
7993 : }
7994 : }
7995 : break;
7996 : }
7997 8 : case LE_EXPR:
7998 8 : {
7999 8 : tree _q30 = TREE_OPERAND (_q20, 0);
8000 8 : tree _q31 = TREE_OPERAND (_q20, 1);
8001 8 : if (integer_zerop (_q22))
8002 : {
8003 8 : switch (TREE_CODE (_p1))
8004 : {
8005 8 : case VEC_COND_EXPR:
8006 8 : {
8007 8 : tree _q80 = TREE_OPERAND (_p1, 0);
8008 8 : tree _q81 = TREE_OPERAND (_p1, 1);
8009 8 : tree _q82 = TREE_OPERAND (_p1, 2);
8010 8 : switch (TREE_CODE (_q80))
8011 : {
8012 0 : case GT_EXPR:
8013 0 : {
8014 0 : tree _q90 = TREE_OPERAND (_q80, 0);
8015 0 : tree _q91 = TREE_OPERAND (_q80, 1);
8016 0 : if ((_q90 == _q30 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q30, 0) && types_match (_q90, _q30)))
8017 : {
8018 0 : if ((_q91 == _q31 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q31, 0) && types_match (_q91, _q31)))
8019 : {
8020 0 : if (integer_zerop (_q82))
8021 : {
8022 0 : {
8023 0 : tree captures[8] ATTRIBUTE_UNUSED = { _p0, _q20, _q30, _q31, _q21, _p1, _q80, _q81 };
8024 0 : tree res = generic_simplify_38 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR, LE_EXPR, GT_EXPR);
8025 0 : if (res) return res;
8026 : }
8027 : }
8028 : }
8029 : }
8030 : break;
8031 : }
8032 : default:;
8033 : }
8034 : break;
8035 : }
8036 : default:;
8037 : }
8038 : }
8039 : break;
8040 : }
8041 6 : case EQ_EXPR:
8042 6 : {
8043 6 : tree _q30 = TREE_OPERAND (_q20, 0);
8044 6 : tree _q31 = TREE_OPERAND (_q20, 1);
8045 6 : if (integer_zerop (_q22))
8046 : {
8047 6 : switch (TREE_CODE (_p1))
8048 : {
8049 6 : case VEC_COND_EXPR:
8050 6 : {
8051 6 : tree _q80 = TREE_OPERAND (_p1, 0);
8052 6 : tree _q81 = TREE_OPERAND (_p1, 1);
8053 6 : tree _q82 = TREE_OPERAND (_p1, 2);
8054 6 : switch (TREE_CODE (_q80))
8055 : {
8056 0 : case NE_EXPR:
8057 0 : {
8058 0 : tree _q90 = TREE_OPERAND (_q80, 0);
8059 0 : tree _q91 = TREE_OPERAND (_q80, 1);
8060 0 : if ((_q90 == _q30 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q30, 0) && types_match (_q90, _q30)))
8061 : {
8062 0 : if ((_q91 == _q31 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q31, 0) && types_match (_q91, _q31)))
8063 : {
8064 0 : if (integer_zerop (_q82))
8065 : {
8066 0 : {
8067 0 : tree captures[8] ATTRIBUTE_UNUSED = { _p0, _q20, _q30, _q31, _q21, _p1, _q80, _q81 };
8068 0 : tree res = generic_simplify_38 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR, EQ_EXPR, NE_EXPR);
8069 0 : if (res) return res;
8070 : }
8071 : }
8072 : }
8073 : }
8074 : break;
8075 : }
8076 : default:;
8077 : }
8078 : break;
8079 : }
8080 : default:;
8081 : }
8082 : }
8083 : break;
8084 : }
8085 6 : case NE_EXPR:
8086 6 : {
8087 6 : tree _q30 = TREE_OPERAND (_q20, 0);
8088 6 : tree _q31 = TREE_OPERAND (_q20, 1);
8089 6 : if (integer_zerop (_q22))
8090 : {
8091 6 : switch (TREE_CODE (_p1))
8092 : {
8093 1 : case VEC_COND_EXPR:
8094 1 : {
8095 1 : tree _q80 = TREE_OPERAND (_p1, 0);
8096 1 : tree _q81 = TREE_OPERAND (_p1, 1);
8097 1 : tree _q82 = TREE_OPERAND (_p1, 2);
8098 1 : switch (TREE_CODE (_q80))
8099 : {
8100 1 : case EQ_EXPR:
8101 1 : {
8102 1 : tree _q90 = TREE_OPERAND (_q80, 0);
8103 1 : tree _q91 = TREE_OPERAND (_q80, 1);
8104 1 : if ((_q90 == _q30 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q30, 0) && types_match (_q90, _q30)))
8105 : {
8106 0 : if ((_q91 == _q31 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q31, 0) && types_match (_q91, _q31)))
8107 : {
8108 0 : if (integer_zerop (_q82))
8109 : {
8110 0 : {
8111 0 : tree captures[8] ATTRIBUTE_UNUSED = { _p0, _q20, _q30, _q31, _q21, _p1, _q80, _q81 };
8112 0 : tree res = generic_simplify_38 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR, NE_EXPR, EQ_EXPR);
8113 0 : if (res) return res;
8114 : }
8115 : }
8116 : }
8117 : }
8118 : break;
8119 : }
8120 : default:;
8121 : }
8122 : break;
8123 : }
8124 : default:;
8125 : }
8126 : }
8127 : break;
8128 : }
8129 9 : case GE_EXPR:
8130 9 : {
8131 9 : tree _q30 = TREE_OPERAND (_q20, 0);
8132 9 : tree _q31 = TREE_OPERAND (_q20, 1);
8133 9 : if (integer_zerop (_q22))
8134 : {
8135 8 : switch (TREE_CODE (_p1))
8136 : {
8137 8 : case VEC_COND_EXPR:
8138 8 : {
8139 8 : tree _q80 = TREE_OPERAND (_p1, 0);
8140 8 : tree _q81 = TREE_OPERAND (_p1, 1);
8141 8 : tree _q82 = TREE_OPERAND (_p1, 2);
8142 8 : switch (TREE_CODE (_q80))
8143 : {
8144 0 : case LT_EXPR:
8145 0 : {
8146 0 : tree _q90 = TREE_OPERAND (_q80, 0);
8147 0 : tree _q91 = TREE_OPERAND (_q80, 1);
8148 0 : if ((_q90 == _q30 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q30, 0) && types_match (_q90, _q30)))
8149 : {
8150 0 : if ((_q91 == _q31 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q31, 0) && types_match (_q91, _q31)))
8151 : {
8152 0 : if (integer_zerop (_q82))
8153 : {
8154 0 : {
8155 0 : tree captures[8] ATTRIBUTE_UNUSED = { _p0, _q20, _q30, _q31, _q21, _p1, _q80, _q81 };
8156 0 : tree res = generic_simplify_38 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR, GE_EXPR, LT_EXPR);
8157 0 : if (res) return res;
8158 : }
8159 : }
8160 : }
8161 : }
8162 : break;
8163 : }
8164 : default:;
8165 : }
8166 : break;
8167 : }
8168 : default:;
8169 : }
8170 : }
8171 : break;
8172 : }
8173 4 : case GT_EXPR:
8174 4 : {
8175 4 : tree _q30 = TREE_OPERAND (_q20, 0);
8176 4 : tree _q31 = TREE_OPERAND (_q20, 1);
8177 4 : if (integer_zerop (_q22))
8178 : {
8179 4 : switch (TREE_CODE (_p1))
8180 : {
8181 4 : case VEC_COND_EXPR:
8182 4 : {
8183 4 : tree _q80 = TREE_OPERAND (_p1, 0);
8184 4 : tree _q81 = TREE_OPERAND (_p1, 1);
8185 4 : tree _q82 = TREE_OPERAND (_p1, 2);
8186 4 : switch (TREE_CODE (_q80))
8187 : {
8188 0 : case LE_EXPR:
8189 0 : {
8190 0 : tree _q90 = TREE_OPERAND (_q80, 0);
8191 0 : tree _q91 = TREE_OPERAND (_q80, 1);
8192 0 : if ((_q90 == _q30 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q30, 0) && types_match (_q90, _q30)))
8193 : {
8194 0 : if ((_q91 == _q31 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q31, 0) && types_match (_q91, _q31)))
8195 : {
8196 0 : if (integer_zerop (_q82))
8197 : {
8198 0 : {
8199 0 : tree captures[8] ATTRIBUTE_UNUSED = { _p0, _q20, _q30, _q31, _q21, _p1, _q80, _q81 };
8200 0 : tree res = generic_simplify_38 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR, GT_EXPR, LE_EXPR);
8201 0 : if (res) return res;
8202 : }
8203 : }
8204 : }
8205 : }
8206 : break;
8207 : }
8208 : default:;
8209 : }
8210 : break;
8211 : }
8212 : default:;
8213 : }
8214 : }
8215 : break;
8216 : }
8217 0 : case UNORDERED_EXPR:
8218 0 : {
8219 0 : tree _q30 = TREE_OPERAND (_q20, 0);
8220 0 : tree _q31 = TREE_OPERAND (_q20, 1);
8221 0 : if (integer_zerop (_q22))
8222 : {
8223 0 : switch (TREE_CODE (_p1))
8224 : {
8225 0 : case VEC_COND_EXPR:
8226 0 : {
8227 0 : tree _q80 = TREE_OPERAND (_p1, 0);
8228 0 : tree _q81 = TREE_OPERAND (_p1, 1);
8229 0 : tree _q82 = TREE_OPERAND (_p1, 2);
8230 0 : switch (TREE_CODE (_q80))
8231 : {
8232 0 : case ORDERED_EXPR:
8233 0 : {
8234 0 : tree _q90 = TREE_OPERAND (_q80, 0);
8235 0 : tree _q91 = TREE_OPERAND (_q80, 1);
8236 0 : if ((_q90 == _q30 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q30, 0) && types_match (_q90, _q30)))
8237 : {
8238 0 : if ((_q91 == _q31 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q31, 0) && types_match (_q91, _q31)))
8239 : {
8240 0 : if (integer_zerop (_q82))
8241 : {
8242 0 : {
8243 0 : tree captures[8] ATTRIBUTE_UNUSED = { _p0, _q20, _q30, _q31, _q21, _p1, _q80, _q81 };
8244 0 : tree res = generic_simplify_38 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR, UNORDERED_EXPR, ORDERED_EXPR);
8245 0 : if (res) return res;
8246 : }
8247 : }
8248 : }
8249 : }
8250 : break;
8251 : }
8252 : default:;
8253 : }
8254 : break;
8255 : }
8256 : default:;
8257 : }
8258 : }
8259 : break;
8260 : }
8261 0 : case ORDERED_EXPR:
8262 0 : {
8263 0 : tree _q30 = TREE_OPERAND (_q20, 0);
8264 0 : tree _q31 = TREE_OPERAND (_q20, 1);
8265 0 : if (integer_zerop (_q22))
8266 : {
8267 0 : switch (TREE_CODE (_p1))
8268 : {
8269 0 : case VEC_COND_EXPR:
8270 0 : {
8271 0 : tree _q80 = TREE_OPERAND (_p1, 0);
8272 0 : tree _q81 = TREE_OPERAND (_p1, 1);
8273 0 : tree _q82 = TREE_OPERAND (_p1, 2);
8274 0 : switch (TREE_CODE (_q80))
8275 : {
8276 0 : case UNORDERED_EXPR:
8277 0 : {
8278 0 : tree _q90 = TREE_OPERAND (_q80, 0);
8279 0 : tree _q91 = TREE_OPERAND (_q80, 1);
8280 0 : if ((_q90 == _q30 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q30, 0) && types_match (_q90, _q30)))
8281 : {
8282 0 : if ((_q91 == _q31 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q31, 0) && types_match (_q91, _q31)))
8283 : {
8284 0 : if (integer_zerop (_q82))
8285 : {
8286 0 : {
8287 0 : tree captures[8] ATTRIBUTE_UNUSED = { _p0, _q20, _q30, _q31, _q21, _p1, _q80, _q81 };
8288 0 : tree res = generic_simplify_38 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR, ORDERED_EXPR, UNORDERED_EXPR);
8289 0 : if (res) return res;
8290 : }
8291 : }
8292 : }
8293 : }
8294 : break;
8295 : }
8296 : default:;
8297 : }
8298 : break;
8299 : }
8300 : default:;
8301 : }
8302 : }
8303 : break;
8304 : }
8305 0 : case UNLT_EXPR:
8306 0 : {
8307 0 : tree _q30 = TREE_OPERAND (_q20, 0);
8308 0 : tree _q31 = TREE_OPERAND (_q20, 1);
8309 0 : if (integer_zerop (_q22))
8310 : {
8311 0 : switch (TREE_CODE (_p1))
8312 : {
8313 0 : case VEC_COND_EXPR:
8314 0 : {
8315 0 : tree _q80 = TREE_OPERAND (_p1, 0);
8316 0 : tree _q81 = TREE_OPERAND (_p1, 1);
8317 0 : tree _q82 = TREE_OPERAND (_p1, 2);
8318 0 : switch (TREE_CODE (_q80))
8319 : {
8320 0 : case GE_EXPR:
8321 0 : {
8322 0 : tree _q90 = TREE_OPERAND (_q80, 0);
8323 0 : tree _q91 = TREE_OPERAND (_q80, 1);
8324 0 : if ((_q90 == _q30 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q30, 0) && types_match (_q90, _q30)))
8325 : {
8326 0 : if ((_q91 == _q31 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q31, 0) && types_match (_q91, _q31)))
8327 : {
8328 0 : if (integer_zerop (_q82))
8329 : {
8330 0 : {
8331 0 : tree captures[8] ATTRIBUTE_UNUSED = { _p0, _q20, _q30, _q31, _q21, _p1, _q80, _q81 };
8332 0 : tree res = generic_simplify_38 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR, UNLT_EXPR, GE_EXPR);
8333 0 : if (res) return res;
8334 : }
8335 : }
8336 : }
8337 : }
8338 : break;
8339 : }
8340 : default:;
8341 : }
8342 : break;
8343 : }
8344 : default:;
8345 : }
8346 : }
8347 : break;
8348 : }
8349 0 : case UNLE_EXPR:
8350 0 : {
8351 0 : tree _q30 = TREE_OPERAND (_q20, 0);
8352 0 : tree _q31 = TREE_OPERAND (_q20, 1);
8353 0 : if (integer_zerop (_q22))
8354 : {
8355 0 : switch (TREE_CODE (_p1))
8356 : {
8357 0 : case VEC_COND_EXPR:
8358 0 : {
8359 0 : tree _q80 = TREE_OPERAND (_p1, 0);
8360 0 : tree _q81 = TREE_OPERAND (_p1, 1);
8361 0 : tree _q82 = TREE_OPERAND (_p1, 2);
8362 0 : switch (TREE_CODE (_q80))
8363 : {
8364 0 : case GT_EXPR:
8365 0 : {
8366 0 : tree _q90 = TREE_OPERAND (_q80, 0);
8367 0 : tree _q91 = TREE_OPERAND (_q80, 1);
8368 0 : if ((_q90 == _q30 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q30, 0) && types_match (_q90, _q30)))
8369 : {
8370 0 : if ((_q91 == _q31 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q31, 0) && types_match (_q91, _q31)))
8371 : {
8372 0 : if (integer_zerop (_q82))
8373 : {
8374 0 : {
8375 0 : tree captures[8] ATTRIBUTE_UNUSED = { _p0, _q20, _q30, _q31, _q21, _p1, _q80, _q81 };
8376 0 : tree res = generic_simplify_38 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR, UNLE_EXPR, GT_EXPR);
8377 0 : if (res) return res;
8378 : }
8379 : }
8380 : }
8381 : }
8382 : break;
8383 : }
8384 : default:;
8385 : }
8386 : break;
8387 : }
8388 : default:;
8389 : }
8390 : }
8391 : break;
8392 : }
8393 0 : case UNGT_EXPR:
8394 0 : {
8395 0 : tree _q30 = TREE_OPERAND (_q20, 0);
8396 0 : tree _q31 = TREE_OPERAND (_q20, 1);
8397 0 : if (integer_zerop (_q22))
8398 : {
8399 0 : switch (TREE_CODE (_p1))
8400 : {
8401 0 : case VEC_COND_EXPR:
8402 0 : {
8403 0 : tree _q80 = TREE_OPERAND (_p1, 0);
8404 0 : tree _q81 = TREE_OPERAND (_p1, 1);
8405 0 : tree _q82 = TREE_OPERAND (_p1, 2);
8406 0 : switch (TREE_CODE (_q80))
8407 : {
8408 0 : case LE_EXPR:
8409 0 : {
8410 0 : tree _q90 = TREE_OPERAND (_q80, 0);
8411 0 : tree _q91 = TREE_OPERAND (_q80, 1);
8412 0 : if ((_q90 == _q30 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q30, 0) && types_match (_q90, _q30)))
8413 : {
8414 0 : if ((_q91 == _q31 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q31, 0) && types_match (_q91, _q31)))
8415 : {
8416 0 : if (integer_zerop (_q82))
8417 : {
8418 0 : {
8419 0 : tree captures[8] ATTRIBUTE_UNUSED = { _p0, _q20, _q30, _q31, _q21, _p1, _q80, _q81 };
8420 0 : tree res = generic_simplify_38 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR, UNGT_EXPR, LE_EXPR);
8421 0 : if (res) return res;
8422 : }
8423 : }
8424 : }
8425 : }
8426 : break;
8427 : }
8428 : default:;
8429 : }
8430 : break;
8431 : }
8432 : default:;
8433 : }
8434 : }
8435 : break;
8436 : }
8437 0 : case UNGE_EXPR:
8438 0 : {
8439 0 : tree _q30 = TREE_OPERAND (_q20, 0);
8440 0 : tree _q31 = TREE_OPERAND (_q20, 1);
8441 0 : if (integer_zerop (_q22))
8442 : {
8443 0 : switch (TREE_CODE (_p1))
8444 : {
8445 0 : case VEC_COND_EXPR:
8446 0 : {
8447 0 : tree _q80 = TREE_OPERAND (_p1, 0);
8448 0 : tree _q81 = TREE_OPERAND (_p1, 1);
8449 0 : tree _q82 = TREE_OPERAND (_p1, 2);
8450 0 : switch (TREE_CODE (_q80))
8451 : {
8452 0 : case LT_EXPR:
8453 0 : {
8454 0 : tree _q90 = TREE_OPERAND (_q80, 0);
8455 0 : tree _q91 = TREE_OPERAND (_q80, 1);
8456 0 : if ((_q90 == _q30 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q30, 0) && types_match (_q90, _q30)))
8457 : {
8458 0 : if ((_q91 == _q31 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q31, 0) && types_match (_q91, _q31)))
8459 : {
8460 0 : if (integer_zerop (_q82))
8461 : {
8462 0 : {
8463 0 : tree captures[8] ATTRIBUTE_UNUSED = { _p0, _q20, _q30, _q31, _q21, _p1, _q80, _q81 };
8464 0 : tree res = generic_simplify_38 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR, UNGE_EXPR, LT_EXPR);
8465 0 : if (res) return res;
8466 : }
8467 : }
8468 : }
8469 : }
8470 : break;
8471 : }
8472 : default:;
8473 : }
8474 : break;
8475 : }
8476 : default:;
8477 : }
8478 : }
8479 : break;
8480 : }
8481 0 : case UNEQ_EXPR:
8482 0 : {
8483 0 : tree _q30 = TREE_OPERAND (_q20, 0);
8484 0 : tree _q31 = TREE_OPERAND (_q20, 1);
8485 0 : if (integer_zerop (_q22))
8486 : {
8487 0 : switch (TREE_CODE (_p1))
8488 : {
8489 0 : case VEC_COND_EXPR:
8490 0 : {
8491 0 : tree _q80 = TREE_OPERAND (_p1, 0);
8492 0 : tree _q81 = TREE_OPERAND (_p1, 1);
8493 0 : tree _q82 = TREE_OPERAND (_p1, 2);
8494 0 : switch (TREE_CODE (_q80))
8495 : {
8496 0 : case LTGT_EXPR:
8497 0 : {
8498 0 : tree _q90 = TREE_OPERAND (_q80, 0);
8499 0 : tree _q91 = TREE_OPERAND (_q80, 1);
8500 0 : if ((_q90 == _q30 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q30, 0) && types_match (_q90, _q30)))
8501 : {
8502 0 : if ((_q91 == _q31 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q31, 0) && types_match (_q91, _q31)))
8503 : {
8504 0 : if (integer_zerop (_q82))
8505 : {
8506 0 : {
8507 0 : tree captures[8] ATTRIBUTE_UNUSED = { _p0, _q20, _q30, _q31, _q21, _p1, _q80, _q81 };
8508 0 : tree res = generic_simplify_38 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR, UNEQ_EXPR, LTGT_EXPR);
8509 0 : if (res) return res;
8510 : }
8511 : }
8512 : }
8513 : }
8514 : break;
8515 : }
8516 : default:;
8517 : }
8518 : break;
8519 : }
8520 : default:;
8521 : }
8522 : }
8523 : break;
8524 : }
8525 0 : case LTGT_EXPR:
8526 0 : {
8527 0 : tree _q30 = TREE_OPERAND (_q20, 0);
8528 0 : tree _q31 = TREE_OPERAND (_q20, 1);
8529 0 : if (integer_zerop (_q22))
8530 : {
8531 0 : switch (TREE_CODE (_p1))
8532 : {
8533 0 : case VEC_COND_EXPR:
8534 0 : {
8535 0 : tree _q80 = TREE_OPERAND (_p1, 0);
8536 0 : tree _q81 = TREE_OPERAND (_p1, 1);
8537 0 : tree _q82 = TREE_OPERAND (_p1, 2);
8538 0 : switch (TREE_CODE (_q80))
8539 : {
8540 0 : case UNEQ_EXPR:
8541 0 : {
8542 0 : tree _q90 = TREE_OPERAND (_q80, 0);
8543 0 : tree _q91 = TREE_OPERAND (_q80, 1);
8544 0 : if ((_q90 == _q30 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q30, 0) && types_match (_q90, _q30)))
8545 : {
8546 0 : if ((_q91 == _q31 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q31, 0) && types_match (_q91, _q31)))
8547 : {
8548 0 : if (integer_zerop (_q82))
8549 : {
8550 0 : {
8551 0 : tree captures[8] ATTRIBUTE_UNUSED = { _p0, _q20, _q30, _q31, _q21, _p1, _q80, _q81 };
8552 0 : tree res = generic_simplify_38 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR, LTGT_EXPR, UNEQ_EXPR);
8553 0 : if (res) return res;
8554 : }
8555 : }
8556 : }
8557 : }
8558 : break;
8559 : }
8560 : default:;
8561 : }
8562 : break;
8563 : }
8564 : default:;
8565 : }
8566 : }
8567 : break;
8568 : }
8569 : default:;
8570 : }
8571 : break;
8572 : }
8573 78964 : case BIT_AND_EXPR:
8574 78964 : {
8575 78964 : tree _q20 = TREE_OPERAND (_p0, 0);
8576 78964 : tree _q21 = TREE_OPERAND (_p0, 1);
8577 78964 : switch (TREE_CODE (_q20))
8578 : {
8579 22964 : CASE_CONVERT:
8580 22964 : {
8581 22964 : tree _q30 = TREE_OPERAND (_q20, 0);
8582 22964 : switch (TREE_CODE (_q30))
8583 : {
8584 0 : case LT_EXPR:
8585 0 : {
8586 0 : tree _q40 = TREE_OPERAND (_q30, 0);
8587 0 : tree _q41 = TREE_OPERAND (_q30, 1);
8588 0 : switch (TREE_CODE (_p1))
8589 : {
8590 0 : case BIT_AND_EXPR:
8591 0 : {
8592 0 : tree _q80 = TREE_OPERAND (_p1, 0);
8593 0 : tree _q81 = TREE_OPERAND (_p1, 1);
8594 0 : switch (TREE_CODE (_q80))
8595 : {
8596 0 : CASE_CONVERT:
8597 0 : {
8598 0 : tree _q90 = TREE_OPERAND (_q80, 0);
8599 0 : switch (TREE_CODE (_q90))
8600 : {
8601 0 : case GE_EXPR:
8602 0 : {
8603 0 : tree _q100 = TREE_OPERAND (_q90, 0);
8604 0 : tree _q101 = TREE_OPERAND (_q90, 1);
8605 0 : if ((_q100 == _q40 && ! TREE_SIDE_EFFECTS (_q100)) || (operand_equal_p (_q100, _q40, 0) && types_match (_q100, _q40)))
8606 : {
8607 0 : if ((_q101 == _q41 && ! TREE_SIDE_EFFECTS (_q101)) || (operand_equal_p (_q101, _q41, 0) && types_match (_q101, _q41)))
8608 : {
8609 0 : {
8610 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q30, _q40, _q41, _q21, _q90, _q81 };
8611 0 : tree res = generic_simplify_151 (loc, type, _p0, _p1, captures, LT_EXPR, GE_EXPR);
8612 0 : if (res) return res;
8613 : }
8614 : }
8615 : }
8616 : break;
8617 : }
8618 : default:;
8619 : }
8620 : break;
8621 : }
8622 0 : default:;
8623 : }
8624 0 : switch (TREE_CODE (_q81))
8625 : {
8626 0 : CASE_CONVERT:
8627 0 : {
8628 0 : tree _q100 = TREE_OPERAND (_q81, 0);
8629 0 : switch (TREE_CODE (_q100))
8630 : {
8631 0 : case GE_EXPR:
8632 0 : {
8633 0 : tree _q110 = TREE_OPERAND (_q100, 0);
8634 0 : tree _q111 = TREE_OPERAND (_q100, 1);
8635 0 : if ((_q110 == _q40 && ! TREE_SIDE_EFFECTS (_q110)) || (operand_equal_p (_q110, _q40, 0) && types_match (_q110, _q40)))
8636 : {
8637 0 : if ((_q111 == _q41 && ! TREE_SIDE_EFFECTS (_q111)) || (operand_equal_p (_q111, _q41, 0) && types_match (_q111, _q41)))
8638 : {
8639 0 : {
8640 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q30, _q40, _q41, _q21, _q100, _q80 };
8641 0 : tree res = generic_simplify_151 (loc, type, _p0, _p1, captures, LT_EXPR, GE_EXPR);
8642 0 : if (res) return res;
8643 : }
8644 : }
8645 : }
8646 : break;
8647 : }
8648 : default:;
8649 : }
8650 : break;
8651 : }
8652 : default:;
8653 : }
8654 : break;
8655 : }
8656 : default:;
8657 : }
8658 : break;
8659 : }
8660 0 : case LE_EXPR:
8661 0 : {
8662 0 : tree _q40 = TREE_OPERAND (_q30, 0);
8663 0 : tree _q41 = TREE_OPERAND (_q30, 1);
8664 0 : switch (TREE_CODE (_p1))
8665 : {
8666 0 : case BIT_AND_EXPR:
8667 0 : {
8668 0 : tree _q80 = TREE_OPERAND (_p1, 0);
8669 0 : tree _q81 = TREE_OPERAND (_p1, 1);
8670 0 : switch (TREE_CODE (_q80))
8671 : {
8672 0 : CASE_CONVERT:
8673 0 : {
8674 0 : tree _q90 = TREE_OPERAND (_q80, 0);
8675 0 : switch (TREE_CODE (_q90))
8676 : {
8677 0 : case GT_EXPR:
8678 0 : {
8679 0 : tree _q100 = TREE_OPERAND (_q90, 0);
8680 0 : tree _q101 = TREE_OPERAND (_q90, 1);
8681 0 : if ((_q100 == _q40 && ! TREE_SIDE_EFFECTS (_q100)) || (operand_equal_p (_q100, _q40, 0) && types_match (_q100, _q40)))
8682 : {
8683 0 : if ((_q101 == _q41 && ! TREE_SIDE_EFFECTS (_q101)) || (operand_equal_p (_q101, _q41, 0) && types_match (_q101, _q41)))
8684 : {
8685 0 : {
8686 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q30, _q40, _q41, _q21, _q90, _q81 };
8687 0 : tree res = generic_simplify_151 (loc, type, _p0, _p1, captures, LE_EXPR, GT_EXPR);
8688 0 : if (res) return res;
8689 : }
8690 : }
8691 : }
8692 : break;
8693 : }
8694 : default:;
8695 : }
8696 : break;
8697 : }
8698 0 : default:;
8699 : }
8700 0 : switch (TREE_CODE (_q81))
8701 : {
8702 0 : CASE_CONVERT:
8703 0 : {
8704 0 : tree _q100 = TREE_OPERAND (_q81, 0);
8705 0 : switch (TREE_CODE (_q100))
8706 : {
8707 0 : case GT_EXPR:
8708 0 : {
8709 0 : tree _q110 = TREE_OPERAND (_q100, 0);
8710 0 : tree _q111 = TREE_OPERAND (_q100, 1);
8711 0 : if ((_q110 == _q40 && ! TREE_SIDE_EFFECTS (_q110)) || (operand_equal_p (_q110, _q40, 0) && types_match (_q110, _q40)))
8712 : {
8713 0 : if ((_q111 == _q41 && ! TREE_SIDE_EFFECTS (_q111)) || (operand_equal_p (_q111, _q41, 0) && types_match (_q111, _q41)))
8714 : {
8715 0 : {
8716 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q30, _q40, _q41, _q21, _q100, _q80 };
8717 0 : tree res = generic_simplify_151 (loc, type, _p0, _p1, captures, LE_EXPR, GT_EXPR);
8718 0 : if (res) return res;
8719 : }
8720 : }
8721 : }
8722 : break;
8723 : }
8724 : default:;
8725 : }
8726 : break;
8727 : }
8728 : default:;
8729 : }
8730 : break;
8731 : }
8732 : default:;
8733 : }
8734 : break;
8735 : }
8736 0 : case EQ_EXPR:
8737 0 : {
8738 0 : tree _q40 = TREE_OPERAND (_q30, 0);
8739 0 : tree _q41 = TREE_OPERAND (_q30, 1);
8740 0 : switch (TREE_CODE (_p1))
8741 : {
8742 0 : case BIT_AND_EXPR:
8743 0 : {
8744 0 : tree _q80 = TREE_OPERAND (_p1, 0);
8745 0 : tree _q81 = TREE_OPERAND (_p1, 1);
8746 0 : switch (TREE_CODE (_q80))
8747 : {
8748 0 : CASE_CONVERT:
8749 0 : {
8750 0 : tree _q90 = TREE_OPERAND (_q80, 0);
8751 0 : switch (TREE_CODE (_q90))
8752 : {
8753 0 : case NE_EXPR:
8754 0 : {
8755 0 : tree _q100 = TREE_OPERAND (_q90, 0);
8756 0 : tree _q101 = TREE_OPERAND (_q90, 1);
8757 0 : if ((_q100 == _q40 && ! TREE_SIDE_EFFECTS (_q100)) || (operand_equal_p (_q100, _q40, 0) && types_match (_q100, _q40)))
8758 : {
8759 0 : if ((_q101 == _q41 && ! TREE_SIDE_EFFECTS (_q101)) || (operand_equal_p (_q101, _q41, 0) && types_match (_q101, _q41)))
8760 : {
8761 0 : {
8762 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q30, _q40, _q41, _q21, _q90, _q81 };
8763 0 : tree res = generic_simplify_151 (loc, type, _p0, _p1, captures, EQ_EXPR, NE_EXPR);
8764 0 : if (res) return res;
8765 : }
8766 : }
8767 : }
8768 : break;
8769 : }
8770 : default:;
8771 : }
8772 : break;
8773 : }
8774 0 : default:;
8775 : }
8776 0 : switch (TREE_CODE (_q81))
8777 : {
8778 0 : CASE_CONVERT:
8779 0 : {
8780 0 : tree _q100 = TREE_OPERAND (_q81, 0);
8781 0 : switch (TREE_CODE (_q100))
8782 : {
8783 0 : case NE_EXPR:
8784 0 : {
8785 0 : tree _q110 = TREE_OPERAND (_q100, 0);
8786 0 : tree _q111 = TREE_OPERAND (_q100, 1);
8787 0 : if ((_q110 == _q40 && ! TREE_SIDE_EFFECTS (_q110)) || (operand_equal_p (_q110, _q40, 0) && types_match (_q110, _q40)))
8788 : {
8789 0 : if ((_q111 == _q41 && ! TREE_SIDE_EFFECTS (_q111)) || (operand_equal_p (_q111, _q41, 0) && types_match (_q111, _q41)))
8790 : {
8791 0 : {
8792 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q30, _q40, _q41, _q21, _q100, _q80 };
8793 0 : tree res = generic_simplify_151 (loc, type, _p0, _p1, captures, EQ_EXPR, NE_EXPR);
8794 0 : if (res) return res;
8795 : }
8796 : }
8797 : }
8798 : break;
8799 : }
8800 : default:;
8801 : }
8802 : break;
8803 : }
8804 : default:;
8805 : }
8806 : break;
8807 : }
8808 : default:;
8809 : }
8810 : break;
8811 : }
8812 0 : case NE_EXPR:
8813 0 : {
8814 0 : tree _q40 = TREE_OPERAND (_q30, 0);
8815 0 : tree _q41 = TREE_OPERAND (_q30, 1);
8816 0 : switch (TREE_CODE (_p1))
8817 : {
8818 0 : case BIT_AND_EXPR:
8819 0 : {
8820 0 : tree _q80 = TREE_OPERAND (_p1, 0);
8821 0 : tree _q81 = TREE_OPERAND (_p1, 1);
8822 0 : switch (TREE_CODE (_q80))
8823 : {
8824 0 : CASE_CONVERT:
8825 0 : {
8826 0 : tree _q90 = TREE_OPERAND (_q80, 0);
8827 0 : switch (TREE_CODE (_q90))
8828 : {
8829 0 : case EQ_EXPR:
8830 0 : {
8831 0 : tree _q100 = TREE_OPERAND (_q90, 0);
8832 0 : tree _q101 = TREE_OPERAND (_q90, 1);
8833 0 : if ((_q100 == _q40 && ! TREE_SIDE_EFFECTS (_q100)) || (operand_equal_p (_q100, _q40, 0) && types_match (_q100, _q40)))
8834 : {
8835 0 : if ((_q101 == _q41 && ! TREE_SIDE_EFFECTS (_q101)) || (operand_equal_p (_q101, _q41, 0) && types_match (_q101, _q41)))
8836 : {
8837 0 : {
8838 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q30, _q40, _q41, _q21, _q90, _q81 };
8839 0 : tree res = generic_simplify_151 (loc, type, _p0, _p1, captures, NE_EXPR, EQ_EXPR);
8840 0 : if (res) return res;
8841 : }
8842 : }
8843 : }
8844 : break;
8845 : }
8846 : default:;
8847 : }
8848 : break;
8849 : }
8850 0 : default:;
8851 : }
8852 0 : switch (TREE_CODE (_q81))
8853 : {
8854 0 : CASE_CONVERT:
8855 0 : {
8856 0 : tree _q100 = TREE_OPERAND (_q81, 0);
8857 0 : switch (TREE_CODE (_q100))
8858 : {
8859 0 : case EQ_EXPR:
8860 0 : {
8861 0 : tree _q110 = TREE_OPERAND (_q100, 0);
8862 0 : tree _q111 = TREE_OPERAND (_q100, 1);
8863 0 : if ((_q110 == _q40 && ! TREE_SIDE_EFFECTS (_q110)) || (operand_equal_p (_q110, _q40, 0) && types_match (_q110, _q40)))
8864 : {
8865 0 : if ((_q111 == _q41 && ! TREE_SIDE_EFFECTS (_q111)) || (operand_equal_p (_q111, _q41, 0) && types_match (_q111, _q41)))
8866 : {
8867 0 : {
8868 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q30, _q40, _q41, _q21, _q100, _q80 };
8869 0 : tree res = generic_simplify_151 (loc, type, _p0, _p1, captures, NE_EXPR, EQ_EXPR);
8870 0 : if (res) return res;
8871 : }
8872 : }
8873 : }
8874 : break;
8875 : }
8876 : default:;
8877 : }
8878 : break;
8879 : }
8880 : default:;
8881 : }
8882 : break;
8883 : }
8884 : default:;
8885 : }
8886 : break;
8887 : }
8888 0 : case GE_EXPR:
8889 0 : {
8890 0 : tree _q40 = TREE_OPERAND (_q30, 0);
8891 0 : tree _q41 = TREE_OPERAND (_q30, 1);
8892 0 : switch (TREE_CODE (_p1))
8893 : {
8894 0 : case BIT_AND_EXPR:
8895 0 : {
8896 0 : tree _q80 = TREE_OPERAND (_p1, 0);
8897 0 : tree _q81 = TREE_OPERAND (_p1, 1);
8898 0 : switch (TREE_CODE (_q80))
8899 : {
8900 0 : CASE_CONVERT:
8901 0 : {
8902 0 : tree _q90 = TREE_OPERAND (_q80, 0);
8903 0 : switch (TREE_CODE (_q90))
8904 : {
8905 0 : case LT_EXPR:
8906 0 : {
8907 0 : tree _q100 = TREE_OPERAND (_q90, 0);
8908 0 : tree _q101 = TREE_OPERAND (_q90, 1);
8909 0 : if ((_q100 == _q40 && ! TREE_SIDE_EFFECTS (_q100)) || (operand_equal_p (_q100, _q40, 0) && types_match (_q100, _q40)))
8910 : {
8911 0 : if ((_q101 == _q41 && ! TREE_SIDE_EFFECTS (_q101)) || (operand_equal_p (_q101, _q41, 0) && types_match (_q101, _q41)))
8912 : {
8913 0 : {
8914 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q30, _q40, _q41, _q21, _q90, _q81 };
8915 0 : tree res = generic_simplify_151 (loc, type, _p0, _p1, captures, GE_EXPR, LT_EXPR);
8916 0 : if (res) return res;
8917 : }
8918 : }
8919 : }
8920 : break;
8921 : }
8922 : default:;
8923 : }
8924 : break;
8925 : }
8926 0 : default:;
8927 : }
8928 0 : switch (TREE_CODE (_q81))
8929 : {
8930 0 : CASE_CONVERT:
8931 0 : {
8932 0 : tree _q100 = TREE_OPERAND (_q81, 0);
8933 0 : switch (TREE_CODE (_q100))
8934 : {
8935 0 : case LT_EXPR:
8936 0 : {
8937 0 : tree _q110 = TREE_OPERAND (_q100, 0);
8938 0 : tree _q111 = TREE_OPERAND (_q100, 1);
8939 0 : if ((_q110 == _q40 && ! TREE_SIDE_EFFECTS (_q110)) || (operand_equal_p (_q110, _q40, 0) && types_match (_q110, _q40)))
8940 : {
8941 0 : if ((_q111 == _q41 && ! TREE_SIDE_EFFECTS (_q111)) || (operand_equal_p (_q111, _q41, 0) && types_match (_q111, _q41)))
8942 : {
8943 0 : {
8944 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q30, _q40, _q41, _q21, _q100, _q80 };
8945 0 : tree res = generic_simplify_151 (loc, type, _p0, _p1, captures, GE_EXPR, LT_EXPR);
8946 0 : if (res) return res;
8947 : }
8948 : }
8949 : }
8950 : break;
8951 : }
8952 : default:;
8953 : }
8954 : break;
8955 : }
8956 : default:;
8957 : }
8958 : break;
8959 : }
8960 : default:;
8961 : }
8962 : break;
8963 : }
8964 0 : case GT_EXPR:
8965 0 : {
8966 0 : tree _q40 = TREE_OPERAND (_q30, 0);
8967 0 : tree _q41 = TREE_OPERAND (_q30, 1);
8968 0 : switch (TREE_CODE (_p1))
8969 : {
8970 0 : case BIT_AND_EXPR:
8971 0 : {
8972 0 : tree _q80 = TREE_OPERAND (_p1, 0);
8973 0 : tree _q81 = TREE_OPERAND (_p1, 1);
8974 0 : switch (TREE_CODE (_q80))
8975 : {
8976 0 : CASE_CONVERT:
8977 0 : {
8978 0 : tree _q90 = TREE_OPERAND (_q80, 0);
8979 0 : switch (TREE_CODE (_q90))
8980 : {
8981 0 : case LE_EXPR:
8982 0 : {
8983 0 : tree _q100 = TREE_OPERAND (_q90, 0);
8984 0 : tree _q101 = TREE_OPERAND (_q90, 1);
8985 0 : if ((_q100 == _q40 && ! TREE_SIDE_EFFECTS (_q100)) || (operand_equal_p (_q100, _q40, 0) && types_match (_q100, _q40)))
8986 : {
8987 0 : if ((_q101 == _q41 && ! TREE_SIDE_EFFECTS (_q101)) || (operand_equal_p (_q101, _q41, 0) && types_match (_q101, _q41)))
8988 : {
8989 0 : {
8990 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q30, _q40, _q41, _q21, _q90, _q81 };
8991 0 : tree res = generic_simplify_151 (loc, type, _p0, _p1, captures, GT_EXPR, LE_EXPR);
8992 0 : if (res) return res;
8993 : }
8994 : }
8995 : }
8996 : break;
8997 : }
8998 : default:;
8999 : }
9000 : break;
9001 : }
9002 0 : default:;
9003 : }
9004 0 : switch (TREE_CODE (_q81))
9005 : {
9006 0 : CASE_CONVERT:
9007 0 : {
9008 0 : tree _q100 = TREE_OPERAND (_q81, 0);
9009 0 : switch (TREE_CODE (_q100))
9010 : {
9011 0 : case LE_EXPR:
9012 0 : {
9013 0 : tree _q110 = TREE_OPERAND (_q100, 0);
9014 0 : tree _q111 = TREE_OPERAND (_q100, 1);
9015 0 : if ((_q110 == _q40 && ! TREE_SIDE_EFFECTS (_q110)) || (operand_equal_p (_q110, _q40, 0) && types_match (_q110, _q40)))
9016 : {
9017 0 : if ((_q111 == _q41 && ! TREE_SIDE_EFFECTS (_q111)) || (operand_equal_p (_q111, _q41, 0) && types_match (_q111, _q41)))
9018 : {
9019 0 : {
9020 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q30, _q40, _q41, _q21, _q100, _q80 };
9021 0 : tree res = generic_simplify_151 (loc, type, _p0, _p1, captures, GT_EXPR, LE_EXPR);
9022 0 : if (res) return res;
9023 : }
9024 : }
9025 : }
9026 : break;
9027 : }
9028 : default:;
9029 : }
9030 : break;
9031 : }
9032 : default:;
9033 : }
9034 : break;
9035 : }
9036 : default:;
9037 : }
9038 : break;
9039 : }
9040 0 : case UNORDERED_EXPR:
9041 0 : {
9042 0 : tree _q40 = TREE_OPERAND (_q30, 0);
9043 0 : tree _q41 = TREE_OPERAND (_q30, 1);
9044 0 : switch (TREE_CODE (_p1))
9045 : {
9046 0 : case BIT_AND_EXPR:
9047 0 : {
9048 0 : tree _q80 = TREE_OPERAND (_p1, 0);
9049 0 : tree _q81 = TREE_OPERAND (_p1, 1);
9050 0 : switch (TREE_CODE (_q80))
9051 : {
9052 0 : CASE_CONVERT:
9053 0 : {
9054 0 : tree _q90 = TREE_OPERAND (_q80, 0);
9055 0 : switch (TREE_CODE (_q90))
9056 : {
9057 0 : case ORDERED_EXPR:
9058 0 : {
9059 0 : tree _q100 = TREE_OPERAND (_q90, 0);
9060 0 : tree _q101 = TREE_OPERAND (_q90, 1);
9061 0 : if ((_q100 == _q40 && ! TREE_SIDE_EFFECTS (_q100)) || (operand_equal_p (_q100, _q40, 0) && types_match (_q100, _q40)))
9062 : {
9063 0 : if ((_q101 == _q41 && ! TREE_SIDE_EFFECTS (_q101)) || (operand_equal_p (_q101, _q41, 0) && types_match (_q101, _q41)))
9064 : {
9065 0 : {
9066 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q30, _q40, _q41, _q21, _q90, _q81 };
9067 0 : tree res = generic_simplify_151 (loc, type, _p0, _p1, captures, UNORDERED_EXPR, ORDERED_EXPR);
9068 0 : if (res) return res;
9069 : }
9070 : }
9071 : }
9072 : break;
9073 : }
9074 : default:;
9075 : }
9076 : break;
9077 : }
9078 0 : default:;
9079 : }
9080 0 : switch (TREE_CODE (_q81))
9081 : {
9082 0 : CASE_CONVERT:
9083 0 : {
9084 0 : tree _q100 = TREE_OPERAND (_q81, 0);
9085 0 : switch (TREE_CODE (_q100))
9086 : {
9087 0 : case ORDERED_EXPR:
9088 0 : {
9089 0 : tree _q110 = TREE_OPERAND (_q100, 0);
9090 0 : tree _q111 = TREE_OPERAND (_q100, 1);
9091 0 : if ((_q110 == _q40 && ! TREE_SIDE_EFFECTS (_q110)) || (operand_equal_p (_q110, _q40, 0) && types_match (_q110, _q40)))
9092 : {
9093 0 : if ((_q111 == _q41 && ! TREE_SIDE_EFFECTS (_q111)) || (operand_equal_p (_q111, _q41, 0) && types_match (_q111, _q41)))
9094 : {
9095 0 : {
9096 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q30, _q40, _q41, _q21, _q100, _q80 };
9097 0 : tree res = generic_simplify_151 (loc, type, _p0, _p1, captures, UNORDERED_EXPR, ORDERED_EXPR);
9098 0 : if (res) return res;
9099 : }
9100 : }
9101 : }
9102 : break;
9103 : }
9104 : default:;
9105 : }
9106 : break;
9107 : }
9108 : default:;
9109 : }
9110 : break;
9111 : }
9112 : default:;
9113 : }
9114 : break;
9115 : }
9116 0 : case ORDERED_EXPR:
9117 0 : {
9118 0 : tree _q40 = TREE_OPERAND (_q30, 0);
9119 0 : tree _q41 = TREE_OPERAND (_q30, 1);
9120 0 : switch (TREE_CODE (_p1))
9121 : {
9122 0 : case BIT_AND_EXPR:
9123 0 : {
9124 0 : tree _q80 = TREE_OPERAND (_p1, 0);
9125 0 : tree _q81 = TREE_OPERAND (_p1, 1);
9126 0 : switch (TREE_CODE (_q80))
9127 : {
9128 0 : CASE_CONVERT:
9129 0 : {
9130 0 : tree _q90 = TREE_OPERAND (_q80, 0);
9131 0 : switch (TREE_CODE (_q90))
9132 : {
9133 0 : case UNORDERED_EXPR:
9134 0 : {
9135 0 : tree _q100 = TREE_OPERAND (_q90, 0);
9136 0 : tree _q101 = TREE_OPERAND (_q90, 1);
9137 0 : if ((_q100 == _q40 && ! TREE_SIDE_EFFECTS (_q100)) || (operand_equal_p (_q100, _q40, 0) && types_match (_q100, _q40)))
9138 : {
9139 0 : if ((_q101 == _q41 && ! TREE_SIDE_EFFECTS (_q101)) || (operand_equal_p (_q101, _q41, 0) && types_match (_q101, _q41)))
9140 : {
9141 0 : {
9142 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q30, _q40, _q41, _q21, _q90, _q81 };
9143 0 : tree res = generic_simplify_151 (loc, type, _p0, _p1, captures, ORDERED_EXPR, UNORDERED_EXPR);
9144 0 : if (res) return res;
9145 : }
9146 : }
9147 : }
9148 : break;
9149 : }
9150 : default:;
9151 : }
9152 : break;
9153 : }
9154 0 : default:;
9155 : }
9156 0 : switch (TREE_CODE (_q81))
9157 : {
9158 0 : CASE_CONVERT:
9159 0 : {
9160 0 : tree _q100 = TREE_OPERAND (_q81, 0);
9161 0 : switch (TREE_CODE (_q100))
9162 : {
9163 0 : case UNORDERED_EXPR:
9164 0 : {
9165 0 : tree _q110 = TREE_OPERAND (_q100, 0);
9166 0 : tree _q111 = TREE_OPERAND (_q100, 1);
9167 0 : if ((_q110 == _q40 && ! TREE_SIDE_EFFECTS (_q110)) || (operand_equal_p (_q110, _q40, 0) && types_match (_q110, _q40)))
9168 : {
9169 0 : if ((_q111 == _q41 && ! TREE_SIDE_EFFECTS (_q111)) || (operand_equal_p (_q111, _q41, 0) && types_match (_q111, _q41)))
9170 : {
9171 0 : {
9172 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q30, _q40, _q41, _q21, _q100, _q80 };
9173 0 : tree res = generic_simplify_151 (loc, type, _p0, _p1, captures, ORDERED_EXPR, UNORDERED_EXPR);
9174 0 : if (res) return res;
9175 : }
9176 : }
9177 : }
9178 : break;
9179 : }
9180 : default:;
9181 : }
9182 : break;
9183 : }
9184 : default:;
9185 : }
9186 : break;
9187 : }
9188 : default:;
9189 : }
9190 : break;
9191 : }
9192 0 : case UNLT_EXPR:
9193 0 : {
9194 0 : tree _q40 = TREE_OPERAND (_q30, 0);
9195 0 : tree _q41 = TREE_OPERAND (_q30, 1);
9196 0 : switch (TREE_CODE (_p1))
9197 : {
9198 0 : case BIT_AND_EXPR:
9199 0 : {
9200 0 : tree _q80 = TREE_OPERAND (_p1, 0);
9201 0 : tree _q81 = TREE_OPERAND (_p1, 1);
9202 0 : switch (TREE_CODE (_q80))
9203 : {
9204 0 : CASE_CONVERT:
9205 0 : {
9206 0 : tree _q90 = TREE_OPERAND (_q80, 0);
9207 0 : switch (TREE_CODE (_q90))
9208 : {
9209 0 : case GE_EXPR:
9210 0 : {
9211 0 : tree _q100 = TREE_OPERAND (_q90, 0);
9212 0 : tree _q101 = TREE_OPERAND (_q90, 1);
9213 0 : if ((_q100 == _q40 && ! TREE_SIDE_EFFECTS (_q100)) || (operand_equal_p (_q100, _q40, 0) && types_match (_q100, _q40)))
9214 : {
9215 0 : if ((_q101 == _q41 && ! TREE_SIDE_EFFECTS (_q101)) || (operand_equal_p (_q101, _q41, 0) && types_match (_q101, _q41)))
9216 : {
9217 0 : {
9218 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q30, _q40, _q41, _q21, _q90, _q81 };
9219 0 : tree res = generic_simplify_151 (loc, type, _p0, _p1, captures, UNLT_EXPR, GE_EXPR);
9220 0 : if (res) return res;
9221 : }
9222 : }
9223 : }
9224 : break;
9225 : }
9226 : default:;
9227 : }
9228 : break;
9229 : }
9230 0 : default:;
9231 : }
9232 0 : switch (TREE_CODE (_q81))
9233 : {
9234 0 : CASE_CONVERT:
9235 0 : {
9236 0 : tree _q100 = TREE_OPERAND (_q81, 0);
9237 0 : switch (TREE_CODE (_q100))
9238 : {
9239 0 : case GE_EXPR:
9240 0 : {
9241 0 : tree _q110 = TREE_OPERAND (_q100, 0);
9242 0 : tree _q111 = TREE_OPERAND (_q100, 1);
9243 0 : if ((_q110 == _q40 && ! TREE_SIDE_EFFECTS (_q110)) || (operand_equal_p (_q110, _q40, 0) && types_match (_q110, _q40)))
9244 : {
9245 0 : if ((_q111 == _q41 && ! TREE_SIDE_EFFECTS (_q111)) || (operand_equal_p (_q111, _q41, 0) && types_match (_q111, _q41)))
9246 : {
9247 0 : {
9248 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q30, _q40, _q41, _q21, _q100, _q80 };
9249 0 : tree res = generic_simplify_151 (loc, type, _p0, _p1, captures, UNLT_EXPR, GE_EXPR);
9250 0 : if (res) return res;
9251 : }
9252 : }
9253 : }
9254 : break;
9255 : }
9256 : default:;
9257 : }
9258 : break;
9259 : }
9260 : default:;
9261 : }
9262 : break;
9263 : }
9264 : default:;
9265 : }
9266 : break;
9267 : }
9268 0 : case UNLE_EXPR:
9269 0 : {
9270 0 : tree _q40 = TREE_OPERAND (_q30, 0);
9271 0 : tree _q41 = TREE_OPERAND (_q30, 1);
9272 0 : switch (TREE_CODE (_p1))
9273 : {
9274 0 : case BIT_AND_EXPR:
9275 0 : {
9276 0 : tree _q80 = TREE_OPERAND (_p1, 0);
9277 0 : tree _q81 = TREE_OPERAND (_p1, 1);
9278 0 : switch (TREE_CODE (_q80))
9279 : {
9280 0 : CASE_CONVERT:
9281 0 : {
9282 0 : tree _q90 = TREE_OPERAND (_q80, 0);
9283 0 : switch (TREE_CODE (_q90))
9284 : {
9285 0 : case GT_EXPR:
9286 0 : {
9287 0 : tree _q100 = TREE_OPERAND (_q90, 0);
9288 0 : tree _q101 = TREE_OPERAND (_q90, 1);
9289 0 : if ((_q100 == _q40 && ! TREE_SIDE_EFFECTS (_q100)) || (operand_equal_p (_q100, _q40, 0) && types_match (_q100, _q40)))
9290 : {
9291 0 : if ((_q101 == _q41 && ! TREE_SIDE_EFFECTS (_q101)) || (operand_equal_p (_q101, _q41, 0) && types_match (_q101, _q41)))
9292 : {
9293 0 : {
9294 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q30, _q40, _q41, _q21, _q90, _q81 };
9295 0 : tree res = generic_simplify_151 (loc, type, _p0, _p1, captures, UNLE_EXPR, GT_EXPR);
9296 0 : if (res) return res;
9297 : }
9298 : }
9299 : }
9300 : break;
9301 : }
9302 : default:;
9303 : }
9304 : break;
9305 : }
9306 0 : default:;
9307 : }
9308 0 : switch (TREE_CODE (_q81))
9309 : {
9310 0 : CASE_CONVERT:
9311 0 : {
9312 0 : tree _q100 = TREE_OPERAND (_q81, 0);
9313 0 : switch (TREE_CODE (_q100))
9314 : {
9315 0 : case GT_EXPR:
9316 0 : {
9317 0 : tree _q110 = TREE_OPERAND (_q100, 0);
9318 0 : tree _q111 = TREE_OPERAND (_q100, 1);
9319 0 : if ((_q110 == _q40 && ! TREE_SIDE_EFFECTS (_q110)) || (operand_equal_p (_q110, _q40, 0) && types_match (_q110, _q40)))
9320 : {
9321 0 : if ((_q111 == _q41 && ! TREE_SIDE_EFFECTS (_q111)) || (operand_equal_p (_q111, _q41, 0) && types_match (_q111, _q41)))
9322 : {
9323 0 : {
9324 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q30, _q40, _q41, _q21, _q100, _q80 };
9325 0 : tree res = generic_simplify_151 (loc, type, _p0, _p1, captures, UNLE_EXPR, GT_EXPR);
9326 0 : if (res) return res;
9327 : }
9328 : }
9329 : }
9330 : break;
9331 : }
9332 : default:;
9333 : }
9334 : break;
9335 : }
9336 : default:;
9337 : }
9338 : break;
9339 : }
9340 : default:;
9341 : }
9342 : break;
9343 : }
9344 0 : case UNGT_EXPR:
9345 0 : {
9346 0 : tree _q40 = TREE_OPERAND (_q30, 0);
9347 0 : tree _q41 = TREE_OPERAND (_q30, 1);
9348 0 : switch (TREE_CODE (_p1))
9349 : {
9350 0 : case BIT_AND_EXPR:
9351 0 : {
9352 0 : tree _q80 = TREE_OPERAND (_p1, 0);
9353 0 : tree _q81 = TREE_OPERAND (_p1, 1);
9354 0 : switch (TREE_CODE (_q80))
9355 : {
9356 0 : CASE_CONVERT:
9357 0 : {
9358 0 : tree _q90 = TREE_OPERAND (_q80, 0);
9359 0 : switch (TREE_CODE (_q90))
9360 : {
9361 0 : case LE_EXPR:
9362 0 : {
9363 0 : tree _q100 = TREE_OPERAND (_q90, 0);
9364 0 : tree _q101 = TREE_OPERAND (_q90, 1);
9365 0 : if ((_q100 == _q40 && ! TREE_SIDE_EFFECTS (_q100)) || (operand_equal_p (_q100, _q40, 0) && types_match (_q100, _q40)))
9366 : {
9367 0 : if ((_q101 == _q41 && ! TREE_SIDE_EFFECTS (_q101)) || (operand_equal_p (_q101, _q41, 0) && types_match (_q101, _q41)))
9368 : {
9369 0 : {
9370 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q30, _q40, _q41, _q21, _q90, _q81 };
9371 0 : tree res = generic_simplify_151 (loc, type, _p0, _p1, captures, UNGT_EXPR, LE_EXPR);
9372 0 : if (res) return res;
9373 : }
9374 : }
9375 : }
9376 : break;
9377 : }
9378 : default:;
9379 : }
9380 : break;
9381 : }
9382 0 : default:;
9383 : }
9384 0 : switch (TREE_CODE (_q81))
9385 : {
9386 0 : CASE_CONVERT:
9387 0 : {
9388 0 : tree _q100 = TREE_OPERAND (_q81, 0);
9389 0 : switch (TREE_CODE (_q100))
9390 : {
9391 0 : case LE_EXPR:
9392 0 : {
9393 0 : tree _q110 = TREE_OPERAND (_q100, 0);
9394 0 : tree _q111 = TREE_OPERAND (_q100, 1);
9395 0 : if ((_q110 == _q40 && ! TREE_SIDE_EFFECTS (_q110)) || (operand_equal_p (_q110, _q40, 0) && types_match (_q110, _q40)))
9396 : {
9397 0 : if ((_q111 == _q41 && ! TREE_SIDE_EFFECTS (_q111)) || (operand_equal_p (_q111, _q41, 0) && types_match (_q111, _q41)))
9398 : {
9399 0 : {
9400 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q30, _q40, _q41, _q21, _q100, _q80 };
9401 0 : tree res = generic_simplify_151 (loc, type, _p0, _p1, captures, UNGT_EXPR, LE_EXPR);
9402 0 : if (res) return res;
9403 : }
9404 : }
9405 : }
9406 : break;
9407 : }
9408 : default:;
9409 : }
9410 : break;
9411 : }
9412 : default:;
9413 : }
9414 : break;
9415 : }
9416 : default:;
9417 : }
9418 : break;
9419 : }
9420 0 : case UNGE_EXPR:
9421 0 : {
9422 0 : tree _q40 = TREE_OPERAND (_q30, 0);
9423 0 : tree _q41 = TREE_OPERAND (_q30, 1);
9424 0 : switch (TREE_CODE (_p1))
9425 : {
9426 0 : case BIT_AND_EXPR:
9427 0 : {
9428 0 : tree _q80 = TREE_OPERAND (_p1, 0);
9429 0 : tree _q81 = TREE_OPERAND (_p1, 1);
9430 0 : switch (TREE_CODE (_q80))
9431 : {
9432 0 : CASE_CONVERT:
9433 0 : {
9434 0 : tree _q90 = TREE_OPERAND (_q80, 0);
9435 0 : switch (TREE_CODE (_q90))
9436 : {
9437 0 : case LT_EXPR:
9438 0 : {
9439 0 : tree _q100 = TREE_OPERAND (_q90, 0);
9440 0 : tree _q101 = TREE_OPERAND (_q90, 1);
9441 0 : if ((_q100 == _q40 && ! TREE_SIDE_EFFECTS (_q100)) || (operand_equal_p (_q100, _q40, 0) && types_match (_q100, _q40)))
9442 : {
9443 0 : if ((_q101 == _q41 && ! TREE_SIDE_EFFECTS (_q101)) || (operand_equal_p (_q101, _q41, 0) && types_match (_q101, _q41)))
9444 : {
9445 0 : {
9446 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q30, _q40, _q41, _q21, _q90, _q81 };
9447 0 : tree res = generic_simplify_151 (loc, type, _p0, _p1, captures, UNGE_EXPR, LT_EXPR);
9448 0 : if (res) return res;
9449 : }
9450 : }
9451 : }
9452 : break;
9453 : }
9454 : default:;
9455 : }
9456 : break;
9457 : }
9458 0 : default:;
9459 : }
9460 0 : switch (TREE_CODE (_q81))
9461 : {
9462 0 : CASE_CONVERT:
9463 0 : {
9464 0 : tree _q100 = TREE_OPERAND (_q81, 0);
9465 0 : switch (TREE_CODE (_q100))
9466 : {
9467 0 : case LT_EXPR:
9468 0 : {
9469 0 : tree _q110 = TREE_OPERAND (_q100, 0);
9470 0 : tree _q111 = TREE_OPERAND (_q100, 1);
9471 0 : if ((_q110 == _q40 && ! TREE_SIDE_EFFECTS (_q110)) || (operand_equal_p (_q110, _q40, 0) && types_match (_q110, _q40)))
9472 : {
9473 0 : if ((_q111 == _q41 && ! TREE_SIDE_EFFECTS (_q111)) || (operand_equal_p (_q111, _q41, 0) && types_match (_q111, _q41)))
9474 : {
9475 0 : {
9476 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q30, _q40, _q41, _q21, _q100, _q80 };
9477 0 : tree res = generic_simplify_151 (loc, type, _p0, _p1, captures, UNGE_EXPR, LT_EXPR);
9478 0 : if (res) return res;
9479 : }
9480 : }
9481 : }
9482 : break;
9483 : }
9484 : default:;
9485 : }
9486 : break;
9487 : }
9488 : default:;
9489 : }
9490 : break;
9491 : }
9492 : default:;
9493 : }
9494 : break;
9495 : }
9496 0 : case UNEQ_EXPR:
9497 0 : {
9498 0 : tree _q40 = TREE_OPERAND (_q30, 0);
9499 0 : tree _q41 = TREE_OPERAND (_q30, 1);
9500 0 : switch (TREE_CODE (_p1))
9501 : {
9502 0 : case BIT_AND_EXPR:
9503 0 : {
9504 0 : tree _q80 = TREE_OPERAND (_p1, 0);
9505 0 : tree _q81 = TREE_OPERAND (_p1, 1);
9506 0 : switch (TREE_CODE (_q80))
9507 : {
9508 0 : CASE_CONVERT:
9509 0 : {
9510 0 : tree _q90 = TREE_OPERAND (_q80, 0);
9511 0 : switch (TREE_CODE (_q90))
9512 : {
9513 0 : case LTGT_EXPR:
9514 0 : {
9515 0 : tree _q100 = TREE_OPERAND (_q90, 0);
9516 0 : tree _q101 = TREE_OPERAND (_q90, 1);
9517 0 : if ((_q100 == _q40 && ! TREE_SIDE_EFFECTS (_q100)) || (operand_equal_p (_q100, _q40, 0) && types_match (_q100, _q40)))
9518 : {
9519 0 : if ((_q101 == _q41 && ! TREE_SIDE_EFFECTS (_q101)) || (operand_equal_p (_q101, _q41, 0) && types_match (_q101, _q41)))
9520 : {
9521 0 : {
9522 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q30, _q40, _q41, _q21, _q90, _q81 };
9523 0 : tree res = generic_simplify_151 (loc, type, _p0, _p1, captures, UNEQ_EXPR, LTGT_EXPR);
9524 0 : if (res) return res;
9525 : }
9526 : }
9527 : }
9528 : break;
9529 : }
9530 : default:;
9531 : }
9532 : break;
9533 : }
9534 0 : default:;
9535 : }
9536 0 : switch (TREE_CODE (_q81))
9537 : {
9538 0 : CASE_CONVERT:
9539 0 : {
9540 0 : tree _q100 = TREE_OPERAND (_q81, 0);
9541 0 : switch (TREE_CODE (_q100))
9542 : {
9543 0 : case LTGT_EXPR:
9544 0 : {
9545 0 : tree _q110 = TREE_OPERAND (_q100, 0);
9546 0 : tree _q111 = TREE_OPERAND (_q100, 1);
9547 0 : if ((_q110 == _q40 && ! TREE_SIDE_EFFECTS (_q110)) || (operand_equal_p (_q110, _q40, 0) && types_match (_q110, _q40)))
9548 : {
9549 0 : if ((_q111 == _q41 && ! TREE_SIDE_EFFECTS (_q111)) || (operand_equal_p (_q111, _q41, 0) && types_match (_q111, _q41)))
9550 : {
9551 0 : {
9552 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q30, _q40, _q41, _q21, _q100, _q80 };
9553 0 : tree res = generic_simplify_151 (loc, type, _p0, _p1, captures, UNEQ_EXPR, LTGT_EXPR);
9554 0 : if (res) return res;
9555 : }
9556 : }
9557 : }
9558 : break;
9559 : }
9560 : default:;
9561 : }
9562 : break;
9563 : }
9564 : default:;
9565 : }
9566 : break;
9567 : }
9568 : default:;
9569 : }
9570 : break;
9571 : }
9572 0 : case LTGT_EXPR:
9573 0 : {
9574 0 : tree _q40 = TREE_OPERAND (_q30, 0);
9575 0 : tree _q41 = TREE_OPERAND (_q30, 1);
9576 0 : switch (TREE_CODE (_p1))
9577 : {
9578 0 : case BIT_AND_EXPR:
9579 0 : {
9580 0 : tree _q80 = TREE_OPERAND (_p1, 0);
9581 0 : tree _q81 = TREE_OPERAND (_p1, 1);
9582 0 : switch (TREE_CODE (_q80))
9583 : {
9584 0 : CASE_CONVERT:
9585 0 : {
9586 0 : tree _q90 = TREE_OPERAND (_q80, 0);
9587 0 : switch (TREE_CODE (_q90))
9588 : {
9589 0 : case UNEQ_EXPR:
9590 0 : {
9591 0 : tree _q100 = TREE_OPERAND (_q90, 0);
9592 0 : tree _q101 = TREE_OPERAND (_q90, 1);
9593 0 : if ((_q100 == _q40 && ! TREE_SIDE_EFFECTS (_q100)) || (operand_equal_p (_q100, _q40, 0) && types_match (_q100, _q40)))
9594 : {
9595 0 : if ((_q101 == _q41 && ! TREE_SIDE_EFFECTS (_q101)) || (operand_equal_p (_q101, _q41, 0) && types_match (_q101, _q41)))
9596 : {
9597 0 : {
9598 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q30, _q40, _q41, _q21, _q90, _q81 };
9599 0 : tree res = generic_simplify_151 (loc, type, _p0, _p1, captures, LTGT_EXPR, UNEQ_EXPR);
9600 0 : if (res) return res;
9601 : }
9602 : }
9603 : }
9604 : break;
9605 : }
9606 : default:;
9607 : }
9608 : break;
9609 : }
9610 0 : default:;
9611 : }
9612 0 : switch (TREE_CODE (_q81))
9613 : {
9614 0 : CASE_CONVERT:
9615 0 : {
9616 0 : tree _q100 = TREE_OPERAND (_q81, 0);
9617 0 : switch (TREE_CODE (_q100))
9618 : {
9619 0 : case UNEQ_EXPR:
9620 0 : {
9621 0 : tree _q110 = TREE_OPERAND (_q100, 0);
9622 0 : tree _q111 = TREE_OPERAND (_q100, 1);
9623 0 : if ((_q110 == _q40 && ! TREE_SIDE_EFFECTS (_q110)) || (operand_equal_p (_q110, _q40, 0) && types_match (_q110, _q40)))
9624 : {
9625 0 : if ((_q111 == _q41 && ! TREE_SIDE_EFFECTS (_q111)) || (operand_equal_p (_q111, _q41, 0) && types_match (_q111, _q41)))
9626 : {
9627 0 : {
9628 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q30, _q40, _q41, _q21, _q100, _q80 };
9629 0 : tree res = generic_simplify_151 (loc, type, _p0, _p1, captures, LTGT_EXPR, UNEQ_EXPR);
9630 0 : if (res) return res;
9631 : }
9632 : }
9633 : }
9634 : break;
9635 : }
9636 : default:;
9637 : }
9638 : break;
9639 : }
9640 : default:;
9641 : }
9642 : break;
9643 : }
9644 : default:;
9645 : }
9646 : break;
9647 : }
9648 : default:;
9649 : }
9650 : break;
9651 : }
9652 78964 : default:;
9653 : }
9654 78964 : switch (TREE_CODE (_q21))
9655 : {
9656 188 : CASE_CONVERT:
9657 188 : {
9658 188 : tree _q40 = TREE_OPERAND (_q21, 0);
9659 188 : switch (TREE_CODE (_q40))
9660 : {
9661 0 : case LT_EXPR:
9662 0 : {
9663 0 : tree _q50 = TREE_OPERAND (_q40, 0);
9664 0 : tree _q51 = TREE_OPERAND (_q40, 1);
9665 0 : switch (TREE_CODE (_p1))
9666 : {
9667 0 : case BIT_AND_EXPR:
9668 0 : {
9669 0 : tree _q80 = TREE_OPERAND (_p1, 0);
9670 0 : tree _q81 = TREE_OPERAND (_p1, 1);
9671 0 : switch (TREE_CODE (_q80))
9672 : {
9673 0 : CASE_CONVERT:
9674 0 : {
9675 0 : tree _q90 = TREE_OPERAND (_q80, 0);
9676 0 : switch (TREE_CODE (_q90))
9677 : {
9678 0 : case GE_EXPR:
9679 0 : {
9680 0 : tree _q100 = TREE_OPERAND (_q90, 0);
9681 0 : tree _q101 = TREE_OPERAND (_q90, 1);
9682 0 : if ((_q100 == _q50 && ! TREE_SIDE_EFFECTS (_q100)) || (operand_equal_p (_q100, _q50, 0) && types_match (_q100, _q50)))
9683 : {
9684 0 : if ((_q101 == _q51 && ! TREE_SIDE_EFFECTS (_q101)) || (operand_equal_p (_q101, _q51, 0) && types_match (_q101, _q51)))
9685 : {
9686 0 : {
9687 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q40, _q50, _q51, _q20, _q90, _q81 };
9688 0 : tree res = generic_simplify_151 (loc, type, _p0, _p1, captures, LT_EXPR, GE_EXPR);
9689 0 : if (res) return res;
9690 : }
9691 : }
9692 : }
9693 : break;
9694 : }
9695 : default:;
9696 : }
9697 : break;
9698 : }
9699 0 : default:;
9700 : }
9701 0 : switch (TREE_CODE (_q81))
9702 : {
9703 0 : CASE_CONVERT:
9704 0 : {
9705 0 : tree _q100 = TREE_OPERAND (_q81, 0);
9706 0 : switch (TREE_CODE (_q100))
9707 : {
9708 0 : case GE_EXPR:
9709 0 : {
9710 0 : tree _q110 = TREE_OPERAND (_q100, 0);
9711 0 : tree _q111 = TREE_OPERAND (_q100, 1);
9712 0 : if ((_q110 == _q50 && ! TREE_SIDE_EFFECTS (_q110)) || (operand_equal_p (_q110, _q50, 0) && types_match (_q110, _q50)))
9713 : {
9714 0 : if ((_q111 == _q51 && ! TREE_SIDE_EFFECTS (_q111)) || (operand_equal_p (_q111, _q51, 0) && types_match (_q111, _q51)))
9715 : {
9716 0 : {
9717 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q40, _q50, _q51, _q20, _q100, _q80 };
9718 0 : tree res = generic_simplify_151 (loc, type, _p0, _p1, captures, LT_EXPR, GE_EXPR);
9719 0 : if (res) return res;
9720 : }
9721 : }
9722 : }
9723 : break;
9724 : }
9725 : default:;
9726 : }
9727 : break;
9728 : }
9729 : default:;
9730 : }
9731 : break;
9732 : }
9733 : default:;
9734 : }
9735 : break;
9736 : }
9737 0 : case LE_EXPR:
9738 0 : {
9739 0 : tree _q50 = TREE_OPERAND (_q40, 0);
9740 0 : tree _q51 = TREE_OPERAND (_q40, 1);
9741 0 : switch (TREE_CODE (_p1))
9742 : {
9743 0 : case BIT_AND_EXPR:
9744 0 : {
9745 0 : tree _q80 = TREE_OPERAND (_p1, 0);
9746 0 : tree _q81 = TREE_OPERAND (_p1, 1);
9747 0 : switch (TREE_CODE (_q80))
9748 : {
9749 0 : CASE_CONVERT:
9750 0 : {
9751 0 : tree _q90 = TREE_OPERAND (_q80, 0);
9752 0 : switch (TREE_CODE (_q90))
9753 : {
9754 0 : case GT_EXPR:
9755 0 : {
9756 0 : tree _q100 = TREE_OPERAND (_q90, 0);
9757 0 : tree _q101 = TREE_OPERAND (_q90, 1);
9758 0 : if ((_q100 == _q50 && ! TREE_SIDE_EFFECTS (_q100)) || (operand_equal_p (_q100, _q50, 0) && types_match (_q100, _q50)))
9759 : {
9760 0 : if ((_q101 == _q51 && ! TREE_SIDE_EFFECTS (_q101)) || (operand_equal_p (_q101, _q51, 0) && types_match (_q101, _q51)))
9761 : {
9762 0 : {
9763 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q40, _q50, _q51, _q20, _q90, _q81 };
9764 0 : tree res = generic_simplify_151 (loc, type, _p0, _p1, captures, LE_EXPR, GT_EXPR);
9765 0 : if (res) return res;
9766 : }
9767 : }
9768 : }
9769 : break;
9770 : }
9771 : default:;
9772 : }
9773 : break;
9774 : }
9775 0 : default:;
9776 : }
9777 0 : switch (TREE_CODE (_q81))
9778 : {
9779 0 : CASE_CONVERT:
9780 0 : {
9781 0 : tree _q100 = TREE_OPERAND (_q81, 0);
9782 0 : switch (TREE_CODE (_q100))
9783 : {
9784 0 : case GT_EXPR:
9785 0 : {
9786 0 : tree _q110 = TREE_OPERAND (_q100, 0);
9787 0 : tree _q111 = TREE_OPERAND (_q100, 1);
9788 0 : if ((_q110 == _q50 && ! TREE_SIDE_EFFECTS (_q110)) || (operand_equal_p (_q110, _q50, 0) && types_match (_q110, _q50)))
9789 : {
9790 0 : if ((_q111 == _q51 && ! TREE_SIDE_EFFECTS (_q111)) || (operand_equal_p (_q111, _q51, 0) && types_match (_q111, _q51)))
9791 : {
9792 0 : {
9793 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q40, _q50, _q51, _q20, _q100, _q80 };
9794 0 : tree res = generic_simplify_151 (loc, type, _p0, _p1, captures, LE_EXPR, GT_EXPR);
9795 0 : if (res) return res;
9796 : }
9797 : }
9798 : }
9799 : break;
9800 : }
9801 : default:;
9802 : }
9803 : break;
9804 : }
9805 : default:;
9806 : }
9807 : break;
9808 : }
9809 : default:;
9810 : }
9811 : break;
9812 : }
9813 0 : case EQ_EXPR:
9814 0 : {
9815 0 : tree _q50 = TREE_OPERAND (_q40, 0);
9816 0 : tree _q51 = TREE_OPERAND (_q40, 1);
9817 0 : switch (TREE_CODE (_p1))
9818 : {
9819 0 : case BIT_AND_EXPR:
9820 0 : {
9821 0 : tree _q80 = TREE_OPERAND (_p1, 0);
9822 0 : tree _q81 = TREE_OPERAND (_p1, 1);
9823 0 : switch (TREE_CODE (_q80))
9824 : {
9825 0 : CASE_CONVERT:
9826 0 : {
9827 0 : tree _q90 = TREE_OPERAND (_q80, 0);
9828 0 : switch (TREE_CODE (_q90))
9829 : {
9830 0 : case NE_EXPR:
9831 0 : {
9832 0 : tree _q100 = TREE_OPERAND (_q90, 0);
9833 0 : tree _q101 = TREE_OPERAND (_q90, 1);
9834 0 : if ((_q100 == _q50 && ! TREE_SIDE_EFFECTS (_q100)) || (operand_equal_p (_q100, _q50, 0) && types_match (_q100, _q50)))
9835 : {
9836 0 : if ((_q101 == _q51 && ! TREE_SIDE_EFFECTS (_q101)) || (operand_equal_p (_q101, _q51, 0) && types_match (_q101, _q51)))
9837 : {
9838 0 : {
9839 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q40, _q50, _q51, _q20, _q90, _q81 };
9840 0 : tree res = generic_simplify_151 (loc, type, _p0, _p1, captures, EQ_EXPR, NE_EXPR);
9841 0 : if (res) return res;
9842 : }
9843 : }
9844 : }
9845 : break;
9846 : }
9847 : default:;
9848 : }
9849 : break;
9850 : }
9851 0 : default:;
9852 : }
9853 0 : switch (TREE_CODE (_q81))
9854 : {
9855 0 : CASE_CONVERT:
9856 0 : {
9857 0 : tree _q100 = TREE_OPERAND (_q81, 0);
9858 0 : switch (TREE_CODE (_q100))
9859 : {
9860 0 : case NE_EXPR:
9861 0 : {
9862 0 : tree _q110 = TREE_OPERAND (_q100, 0);
9863 0 : tree _q111 = TREE_OPERAND (_q100, 1);
9864 0 : if ((_q110 == _q50 && ! TREE_SIDE_EFFECTS (_q110)) || (operand_equal_p (_q110, _q50, 0) && types_match (_q110, _q50)))
9865 : {
9866 0 : if ((_q111 == _q51 && ! TREE_SIDE_EFFECTS (_q111)) || (operand_equal_p (_q111, _q51, 0) && types_match (_q111, _q51)))
9867 : {
9868 0 : {
9869 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q40, _q50, _q51, _q20, _q100, _q80 };
9870 0 : tree res = generic_simplify_151 (loc, type, _p0, _p1, captures, EQ_EXPR, NE_EXPR);
9871 0 : if (res) return res;
9872 : }
9873 : }
9874 : }
9875 : break;
9876 : }
9877 : default:;
9878 : }
9879 : break;
9880 : }
9881 : default:;
9882 : }
9883 : break;
9884 : }
9885 : default:;
9886 : }
9887 : break;
9888 : }
9889 0 : case NE_EXPR:
9890 0 : {
9891 0 : tree _q50 = TREE_OPERAND (_q40, 0);
9892 0 : tree _q51 = TREE_OPERAND (_q40, 1);
9893 0 : switch (TREE_CODE (_p1))
9894 : {
9895 0 : case BIT_AND_EXPR:
9896 0 : {
9897 0 : tree _q80 = TREE_OPERAND (_p1, 0);
9898 0 : tree _q81 = TREE_OPERAND (_p1, 1);
9899 0 : switch (TREE_CODE (_q80))
9900 : {
9901 0 : CASE_CONVERT:
9902 0 : {
9903 0 : tree _q90 = TREE_OPERAND (_q80, 0);
9904 0 : switch (TREE_CODE (_q90))
9905 : {
9906 0 : case EQ_EXPR:
9907 0 : {
9908 0 : tree _q100 = TREE_OPERAND (_q90, 0);
9909 0 : tree _q101 = TREE_OPERAND (_q90, 1);
9910 0 : if ((_q100 == _q50 && ! TREE_SIDE_EFFECTS (_q100)) || (operand_equal_p (_q100, _q50, 0) && types_match (_q100, _q50)))
9911 : {
9912 0 : if ((_q101 == _q51 && ! TREE_SIDE_EFFECTS (_q101)) || (operand_equal_p (_q101, _q51, 0) && types_match (_q101, _q51)))
9913 : {
9914 0 : {
9915 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q40, _q50, _q51, _q20, _q90, _q81 };
9916 0 : tree res = generic_simplify_151 (loc, type, _p0, _p1, captures, NE_EXPR, EQ_EXPR);
9917 0 : if (res) return res;
9918 : }
9919 : }
9920 : }
9921 : break;
9922 : }
9923 : default:;
9924 : }
9925 : break;
9926 : }
9927 0 : default:;
9928 : }
9929 0 : switch (TREE_CODE (_q81))
9930 : {
9931 0 : CASE_CONVERT:
9932 0 : {
9933 0 : tree _q100 = TREE_OPERAND (_q81, 0);
9934 0 : switch (TREE_CODE (_q100))
9935 : {
9936 0 : case EQ_EXPR:
9937 0 : {
9938 0 : tree _q110 = TREE_OPERAND (_q100, 0);
9939 0 : tree _q111 = TREE_OPERAND (_q100, 1);
9940 0 : if ((_q110 == _q50 && ! TREE_SIDE_EFFECTS (_q110)) || (operand_equal_p (_q110, _q50, 0) && types_match (_q110, _q50)))
9941 : {
9942 0 : if ((_q111 == _q51 && ! TREE_SIDE_EFFECTS (_q111)) || (operand_equal_p (_q111, _q51, 0) && types_match (_q111, _q51)))
9943 : {
9944 0 : {
9945 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q40, _q50, _q51, _q20, _q100, _q80 };
9946 0 : tree res = generic_simplify_151 (loc, type, _p0, _p1, captures, NE_EXPR, EQ_EXPR);
9947 0 : if (res) return res;
9948 : }
9949 : }
9950 : }
9951 : break;
9952 : }
9953 : default:;
9954 : }
9955 : break;
9956 : }
9957 : default:;
9958 : }
9959 : break;
9960 : }
9961 : default:;
9962 : }
9963 : break;
9964 : }
9965 0 : case GE_EXPR:
9966 0 : {
9967 0 : tree _q50 = TREE_OPERAND (_q40, 0);
9968 0 : tree _q51 = TREE_OPERAND (_q40, 1);
9969 0 : switch (TREE_CODE (_p1))
9970 : {
9971 0 : case BIT_AND_EXPR:
9972 0 : {
9973 0 : tree _q80 = TREE_OPERAND (_p1, 0);
9974 0 : tree _q81 = TREE_OPERAND (_p1, 1);
9975 0 : switch (TREE_CODE (_q80))
9976 : {
9977 0 : CASE_CONVERT:
9978 0 : {
9979 0 : tree _q90 = TREE_OPERAND (_q80, 0);
9980 0 : switch (TREE_CODE (_q90))
9981 : {
9982 0 : case LT_EXPR:
9983 0 : {
9984 0 : tree _q100 = TREE_OPERAND (_q90, 0);
9985 0 : tree _q101 = TREE_OPERAND (_q90, 1);
9986 0 : if ((_q100 == _q50 && ! TREE_SIDE_EFFECTS (_q100)) || (operand_equal_p (_q100, _q50, 0) && types_match (_q100, _q50)))
9987 : {
9988 0 : if ((_q101 == _q51 && ! TREE_SIDE_EFFECTS (_q101)) || (operand_equal_p (_q101, _q51, 0) && types_match (_q101, _q51)))
9989 : {
9990 0 : {
9991 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q40, _q50, _q51, _q20, _q90, _q81 };
9992 0 : tree res = generic_simplify_151 (loc, type, _p0, _p1, captures, GE_EXPR, LT_EXPR);
9993 0 : if (res) return res;
9994 : }
9995 : }
9996 : }
9997 : break;
9998 : }
9999 : default:;
10000 : }
10001 : break;
10002 : }
10003 0 : default:;
10004 : }
10005 0 : switch (TREE_CODE (_q81))
10006 : {
10007 0 : CASE_CONVERT:
10008 0 : {
10009 0 : tree _q100 = TREE_OPERAND (_q81, 0);
10010 0 : switch (TREE_CODE (_q100))
10011 : {
10012 0 : case LT_EXPR:
10013 0 : {
10014 0 : tree _q110 = TREE_OPERAND (_q100, 0);
10015 0 : tree _q111 = TREE_OPERAND (_q100, 1);
10016 0 : if ((_q110 == _q50 && ! TREE_SIDE_EFFECTS (_q110)) || (operand_equal_p (_q110, _q50, 0) && types_match (_q110, _q50)))
10017 : {
10018 0 : if ((_q111 == _q51 && ! TREE_SIDE_EFFECTS (_q111)) || (operand_equal_p (_q111, _q51, 0) && types_match (_q111, _q51)))
10019 : {
10020 0 : {
10021 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q40, _q50, _q51, _q20, _q100, _q80 };
10022 0 : tree res = generic_simplify_151 (loc, type, _p0, _p1, captures, GE_EXPR, LT_EXPR);
10023 0 : if (res) return res;
10024 : }
10025 : }
10026 : }
10027 : break;
10028 : }
10029 : default:;
10030 : }
10031 : break;
10032 : }
10033 : default:;
10034 : }
10035 : break;
10036 : }
10037 : default:;
10038 : }
10039 : break;
10040 : }
10041 0 : case GT_EXPR:
10042 0 : {
10043 0 : tree _q50 = TREE_OPERAND (_q40, 0);
10044 0 : tree _q51 = TREE_OPERAND (_q40, 1);
10045 0 : switch (TREE_CODE (_p1))
10046 : {
10047 0 : case BIT_AND_EXPR:
10048 0 : {
10049 0 : tree _q80 = TREE_OPERAND (_p1, 0);
10050 0 : tree _q81 = TREE_OPERAND (_p1, 1);
10051 0 : switch (TREE_CODE (_q80))
10052 : {
10053 0 : CASE_CONVERT:
10054 0 : {
10055 0 : tree _q90 = TREE_OPERAND (_q80, 0);
10056 0 : switch (TREE_CODE (_q90))
10057 : {
10058 0 : case LE_EXPR:
10059 0 : {
10060 0 : tree _q100 = TREE_OPERAND (_q90, 0);
10061 0 : tree _q101 = TREE_OPERAND (_q90, 1);
10062 0 : if ((_q100 == _q50 && ! TREE_SIDE_EFFECTS (_q100)) || (operand_equal_p (_q100, _q50, 0) && types_match (_q100, _q50)))
10063 : {
10064 0 : if ((_q101 == _q51 && ! TREE_SIDE_EFFECTS (_q101)) || (operand_equal_p (_q101, _q51, 0) && types_match (_q101, _q51)))
10065 : {
10066 0 : {
10067 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q40, _q50, _q51, _q20, _q90, _q81 };
10068 0 : tree res = generic_simplify_151 (loc, type, _p0, _p1, captures, GT_EXPR, LE_EXPR);
10069 0 : if (res) return res;
10070 : }
10071 : }
10072 : }
10073 : break;
10074 : }
10075 : default:;
10076 : }
10077 : break;
10078 : }
10079 0 : default:;
10080 : }
10081 0 : switch (TREE_CODE (_q81))
10082 : {
10083 0 : CASE_CONVERT:
10084 0 : {
10085 0 : tree _q100 = TREE_OPERAND (_q81, 0);
10086 0 : switch (TREE_CODE (_q100))
10087 : {
10088 0 : case LE_EXPR:
10089 0 : {
10090 0 : tree _q110 = TREE_OPERAND (_q100, 0);
10091 0 : tree _q111 = TREE_OPERAND (_q100, 1);
10092 0 : if ((_q110 == _q50 && ! TREE_SIDE_EFFECTS (_q110)) || (operand_equal_p (_q110, _q50, 0) && types_match (_q110, _q50)))
10093 : {
10094 0 : if ((_q111 == _q51 && ! TREE_SIDE_EFFECTS (_q111)) || (operand_equal_p (_q111, _q51, 0) && types_match (_q111, _q51)))
10095 : {
10096 0 : {
10097 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q40, _q50, _q51, _q20, _q100, _q80 };
10098 0 : tree res = generic_simplify_151 (loc, type, _p0, _p1, captures, GT_EXPR, LE_EXPR);
10099 0 : if (res) return res;
10100 : }
10101 : }
10102 : }
10103 : break;
10104 : }
10105 : default:;
10106 : }
10107 : break;
10108 : }
10109 : default:;
10110 : }
10111 : break;
10112 : }
10113 : default:;
10114 : }
10115 : break;
10116 : }
10117 0 : case UNORDERED_EXPR:
10118 0 : {
10119 0 : tree _q50 = TREE_OPERAND (_q40, 0);
10120 0 : tree _q51 = TREE_OPERAND (_q40, 1);
10121 0 : switch (TREE_CODE (_p1))
10122 : {
10123 0 : case BIT_AND_EXPR:
10124 0 : {
10125 0 : tree _q80 = TREE_OPERAND (_p1, 0);
10126 0 : tree _q81 = TREE_OPERAND (_p1, 1);
10127 0 : switch (TREE_CODE (_q80))
10128 : {
10129 0 : CASE_CONVERT:
10130 0 : {
10131 0 : tree _q90 = TREE_OPERAND (_q80, 0);
10132 0 : switch (TREE_CODE (_q90))
10133 : {
10134 0 : case ORDERED_EXPR:
10135 0 : {
10136 0 : tree _q100 = TREE_OPERAND (_q90, 0);
10137 0 : tree _q101 = TREE_OPERAND (_q90, 1);
10138 0 : if ((_q100 == _q50 && ! TREE_SIDE_EFFECTS (_q100)) || (operand_equal_p (_q100, _q50, 0) && types_match (_q100, _q50)))
10139 : {
10140 0 : if ((_q101 == _q51 && ! TREE_SIDE_EFFECTS (_q101)) || (operand_equal_p (_q101, _q51, 0) && types_match (_q101, _q51)))
10141 : {
10142 0 : {
10143 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q40, _q50, _q51, _q20, _q90, _q81 };
10144 0 : tree res = generic_simplify_151 (loc, type, _p0, _p1, captures, UNORDERED_EXPR, ORDERED_EXPR);
10145 0 : if (res) return res;
10146 : }
10147 : }
10148 : }
10149 : break;
10150 : }
10151 : default:;
10152 : }
10153 : break;
10154 : }
10155 0 : default:;
10156 : }
10157 0 : switch (TREE_CODE (_q81))
10158 : {
10159 0 : CASE_CONVERT:
10160 0 : {
10161 0 : tree _q100 = TREE_OPERAND (_q81, 0);
10162 0 : switch (TREE_CODE (_q100))
10163 : {
10164 0 : case ORDERED_EXPR:
10165 0 : {
10166 0 : tree _q110 = TREE_OPERAND (_q100, 0);
10167 0 : tree _q111 = TREE_OPERAND (_q100, 1);
10168 0 : if ((_q110 == _q50 && ! TREE_SIDE_EFFECTS (_q110)) || (operand_equal_p (_q110, _q50, 0) && types_match (_q110, _q50)))
10169 : {
10170 0 : if ((_q111 == _q51 && ! TREE_SIDE_EFFECTS (_q111)) || (operand_equal_p (_q111, _q51, 0) && types_match (_q111, _q51)))
10171 : {
10172 0 : {
10173 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q40, _q50, _q51, _q20, _q100, _q80 };
10174 0 : tree res = generic_simplify_151 (loc, type, _p0, _p1, captures, UNORDERED_EXPR, ORDERED_EXPR);
10175 0 : if (res) return res;
10176 : }
10177 : }
10178 : }
10179 : break;
10180 : }
10181 : default:;
10182 : }
10183 : break;
10184 : }
10185 : default:;
10186 : }
10187 : break;
10188 : }
10189 : default:;
10190 : }
10191 : break;
10192 : }
10193 0 : case ORDERED_EXPR:
10194 0 : {
10195 0 : tree _q50 = TREE_OPERAND (_q40, 0);
10196 0 : tree _q51 = TREE_OPERAND (_q40, 1);
10197 0 : switch (TREE_CODE (_p1))
10198 : {
10199 0 : case BIT_AND_EXPR:
10200 0 : {
10201 0 : tree _q80 = TREE_OPERAND (_p1, 0);
10202 0 : tree _q81 = TREE_OPERAND (_p1, 1);
10203 0 : switch (TREE_CODE (_q80))
10204 : {
10205 0 : CASE_CONVERT:
10206 0 : {
10207 0 : tree _q90 = TREE_OPERAND (_q80, 0);
10208 0 : switch (TREE_CODE (_q90))
10209 : {
10210 0 : case UNORDERED_EXPR:
10211 0 : {
10212 0 : tree _q100 = TREE_OPERAND (_q90, 0);
10213 0 : tree _q101 = TREE_OPERAND (_q90, 1);
10214 0 : if ((_q100 == _q50 && ! TREE_SIDE_EFFECTS (_q100)) || (operand_equal_p (_q100, _q50, 0) && types_match (_q100, _q50)))
10215 : {
10216 0 : if ((_q101 == _q51 && ! TREE_SIDE_EFFECTS (_q101)) || (operand_equal_p (_q101, _q51, 0) && types_match (_q101, _q51)))
10217 : {
10218 0 : {
10219 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q40, _q50, _q51, _q20, _q90, _q81 };
10220 0 : tree res = generic_simplify_151 (loc, type, _p0, _p1, captures, ORDERED_EXPR, UNORDERED_EXPR);
10221 0 : if (res) return res;
10222 : }
10223 : }
10224 : }
10225 : break;
10226 : }
10227 : default:;
10228 : }
10229 : break;
10230 : }
10231 0 : default:;
10232 : }
10233 0 : switch (TREE_CODE (_q81))
10234 : {
10235 0 : CASE_CONVERT:
10236 0 : {
10237 0 : tree _q100 = TREE_OPERAND (_q81, 0);
10238 0 : switch (TREE_CODE (_q100))
10239 : {
10240 0 : case UNORDERED_EXPR:
10241 0 : {
10242 0 : tree _q110 = TREE_OPERAND (_q100, 0);
10243 0 : tree _q111 = TREE_OPERAND (_q100, 1);
10244 0 : if ((_q110 == _q50 && ! TREE_SIDE_EFFECTS (_q110)) || (operand_equal_p (_q110, _q50, 0) && types_match (_q110, _q50)))
10245 : {
10246 0 : if ((_q111 == _q51 && ! TREE_SIDE_EFFECTS (_q111)) || (operand_equal_p (_q111, _q51, 0) && types_match (_q111, _q51)))
10247 : {
10248 0 : {
10249 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q40, _q50, _q51, _q20, _q100, _q80 };
10250 0 : tree res = generic_simplify_151 (loc, type, _p0, _p1, captures, ORDERED_EXPR, UNORDERED_EXPR);
10251 0 : if (res) return res;
10252 : }
10253 : }
10254 : }
10255 : break;
10256 : }
10257 : default:;
10258 : }
10259 : break;
10260 : }
10261 : default:;
10262 : }
10263 : break;
10264 : }
10265 : default:;
10266 : }
10267 : break;
10268 : }
10269 0 : case UNLT_EXPR:
10270 0 : {
10271 0 : tree _q50 = TREE_OPERAND (_q40, 0);
10272 0 : tree _q51 = TREE_OPERAND (_q40, 1);
10273 0 : switch (TREE_CODE (_p1))
10274 : {
10275 0 : case BIT_AND_EXPR:
10276 0 : {
10277 0 : tree _q80 = TREE_OPERAND (_p1, 0);
10278 0 : tree _q81 = TREE_OPERAND (_p1, 1);
10279 0 : switch (TREE_CODE (_q80))
10280 : {
10281 0 : CASE_CONVERT:
10282 0 : {
10283 0 : tree _q90 = TREE_OPERAND (_q80, 0);
10284 0 : switch (TREE_CODE (_q90))
10285 : {
10286 0 : case GE_EXPR:
10287 0 : {
10288 0 : tree _q100 = TREE_OPERAND (_q90, 0);
10289 0 : tree _q101 = TREE_OPERAND (_q90, 1);
10290 0 : if ((_q100 == _q50 && ! TREE_SIDE_EFFECTS (_q100)) || (operand_equal_p (_q100, _q50, 0) && types_match (_q100, _q50)))
10291 : {
10292 0 : if ((_q101 == _q51 && ! TREE_SIDE_EFFECTS (_q101)) || (operand_equal_p (_q101, _q51, 0) && types_match (_q101, _q51)))
10293 : {
10294 0 : {
10295 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q40, _q50, _q51, _q20, _q90, _q81 };
10296 0 : tree res = generic_simplify_151 (loc, type, _p0, _p1, captures, UNLT_EXPR, GE_EXPR);
10297 0 : if (res) return res;
10298 : }
10299 : }
10300 : }
10301 : break;
10302 : }
10303 : default:;
10304 : }
10305 : break;
10306 : }
10307 0 : default:;
10308 : }
10309 0 : switch (TREE_CODE (_q81))
10310 : {
10311 0 : CASE_CONVERT:
10312 0 : {
10313 0 : tree _q100 = TREE_OPERAND (_q81, 0);
10314 0 : switch (TREE_CODE (_q100))
10315 : {
10316 0 : case GE_EXPR:
10317 0 : {
10318 0 : tree _q110 = TREE_OPERAND (_q100, 0);
10319 0 : tree _q111 = TREE_OPERAND (_q100, 1);
10320 0 : if ((_q110 == _q50 && ! TREE_SIDE_EFFECTS (_q110)) || (operand_equal_p (_q110, _q50, 0) && types_match (_q110, _q50)))
10321 : {
10322 0 : if ((_q111 == _q51 && ! TREE_SIDE_EFFECTS (_q111)) || (operand_equal_p (_q111, _q51, 0) && types_match (_q111, _q51)))
10323 : {
10324 0 : {
10325 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q40, _q50, _q51, _q20, _q100, _q80 };
10326 0 : tree res = generic_simplify_151 (loc, type, _p0, _p1, captures, UNLT_EXPR, GE_EXPR);
10327 0 : if (res) return res;
10328 : }
10329 : }
10330 : }
10331 : break;
10332 : }
10333 : default:;
10334 : }
10335 : break;
10336 : }
10337 : default:;
10338 : }
10339 : break;
10340 : }
10341 : default:;
10342 : }
10343 : break;
10344 : }
10345 0 : case UNLE_EXPR:
10346 0 : {
10347 0 : tree _q50 = TREE_OPERAND (_q40, 0);
10348 0 : tree _q51 = TREE_OPERAND (_q40, 1);
10349 0 : switch (TREE_CODE (_p1))
10350 : {
10351 0 : case BIT_AND_EXPR:
10352 0 : {
10353 0 : tree _q80 = TREE_OPERAND (_p1, 0);
10354 0 : tree _q81 = TREE_OPERAND (_p1, 1);
10355 0 : switch (TREE_CODE (_q80))
10356 : {
10357 0 : CASE_CONVERT:
10358 0 : {
10359 0 : tree _q90 = TREE_OPERAND (_q80, 0);
10360 0 : switch (TREE_CODE (_q90))
10361 : {
10362 0 : case GT_EXPR:
10363 0 : {
10364 0 : tree _q100 = TREE_OPERAND (_q90, 0);
10365 0 : tree _q101 = TREE_OPERAND (_q90, 1);
10366 0 : if ((_q100 == _q50 && ! TREE_SIDE_EFFECTS (_q100)) || (operand_equal_p (_q100, _q50, 0) && types_match (_q100, _q50)))
10367 : {
10368 0 : if ((_q101 == _q51 && ! TREE_SIDE_EFFECTS (_q101)) || (operand_equal_p (_q101, _q51, 0) && types_match (_q101, _q51)))
10369 : {
10370 0 : {
10371 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q40, _q50, _q51, _q20, _q90, _q81 };
10372 0 : tree res = generic_simplify_151 (loc, type, _p0, _p1, captures, UNLE_EXPR, GT_EXPR);
10373 0 : if (res) return res;
10374 : }
10375 : }
10376 : }
10377 : break;
10378 : }
10379 : default:;
10380 : }
10381 : break;
10382 : }
10383 0 : default:;
10384 : }
10385 0 : switch (TREE_CODE (_q81))
10386 : {
10387 0 : CASE_CONVERT:
10388 0 : {
10389 0 : tree _q100 = TREE_OPERAND (_q81, 0);
10390 0 : switch (TREE_CODE (_q100))
10391 : {
10392 0 : case GT_EXPR:
10393 0 : {
10394 0 : tree _q110 = TREE_OPERAND (_q100, 0);
10395 0 : tree _q111 = TREE_OPERAND (_q100, 1);
10396 0 : if ((_q110 == _q50 && ! TREE_SIDE_EFFECTS (_q110)) || (operand_equal_p (_q110, _q50, 0) && types_match (_q110, _q50)))
10397 : {
10398 0 : if ((_q111 == _q51 && ! TREE_SIDE_EFFECTS (_q111)) || (operand_equal_p (_q111, _q51, 0) && types_match (_q111, _q51)))
10399 : {
10400 0 : {
10401 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q40, _q50, _q51, _q20, _q100, _q80 };
10402 0 : tree res = generic_simplify_151 (loc, type, _p0, _p1, captures, UNLE_EXPR, GT_EXPR);
10403 0 : if (res) return res;
10404 : }
10405 : }
10406 : }
10407 : break;
10408 : }
10409 : default:;
10410 : }
10411 : break;
10412 : }
10413 : default:;
10414 : }
10415 : break;
10416 : }
10417 : default:;
10418 : }
10419 : break;
10420 : }
10421 0 : case UNGT_EXPR:
10422 0 : {
10423 0 : tree _q50 = TREE_OPERAND (_q40, 0);
10424 0 : tree _q51 = TREE_OPERAND (_q40, 1);
10425 0 : switch (TREE_CODE (_p1))
10426 : {
10427 0 : case BIT_AND_EXPR:
10428 0 : {
10429 0 : tree _q80 = TREE_OPERAND (_p1, 0);
10430 0 : tree _q81 = TREE_OPERAND (_p1, 1);
10431 0 : switch (TREE_CODE (_q80))
10432 : {
10433 0 : CASE_CONVERT:
10434 0 : {
10435 0 : tree _q90 = TREE_OPERAND (_q80, 0);
10436 0 : switch (TREE_CODE (_q90))
10437 : {
10438 0 : case LE_EXPR:
10439 0 : {
10440 0 : tree _q100 = TREE_OPERAND (_q90, 0);
10441 0 : tree _q101 = TREE_OPERAND (_q90, 1);
10442 0 : if ((_q100 == _q50 && ! TREE_SIDE_EFFECTS (_q100)) || (operand_equal_p (_q100, _q50, 0) && types_match (_q100, _q50)))
10443 : {
10444 0 : if ((_q101 == _q51 && ! TREE_SIDE_EFFECTS (_q101)) || (operand_equal_p (_q101, _q51, 0) && types_match (_q101, _q51)))
10445 : {
10446 0 : {
10447 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q40, _q50, _q51, _q20, _q90, _q81 };
10448 0 : tree res = generic_simplify_151 (loc, type, _p0, _p1, captures, UNGT_EXPR, LE_EXPR);
10449 0 : if (res) return res;
10450 : }
10451 : }
10452 : }
10453 : break;
10454 : }
10455 : default:;
10456 : }
10457 : break;
10458 : }
10459 0 : default:;
10460 : }
10461 0 : switch (TREE_CODE (_q81))
10462 : {
10463 0 : CASE_CONVERT:
10464 0 : {
10465 0 : tree _q100 = TREE_OPERAND (_q81, 0);
10466 0 : switch (TREE_CODE (_q100))
10467 : {
10468 0 : case LE_EXPR:
10469 0 : {
10470 0 : tree _q110 = TREE_OPERAND (_q100, 0);
10471 0 : tree _q111 = TREE_OPERAND (_q100, 1);
10472 0 : if ((_q110 == _q50 && ! TREE_SIDE_EFFECTS (_q110)) || (operand_equal_p (_q110, _q50, 0) && types_match (_q110, _q50)))
10473 : {
10474 0 : if ((_q111 == _q51 && ! TREE_SIDE_EFFECTS (_q111)) || (operand_equal_p (_q111, _q51, 0) && types_match (_q111, _q51)))
10475 : {
10476 0 : {
10477 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q40, _q50, _q51, _q20, _q100, _q80 };
10478 0 : tree res = generic_simplify_151 (loc, type, _p0, _p1, captures, UNGT_EXPR, LE_EXPR);
10479 0 : if (res) return res;
10480 : }
10481 : }
10482 : }
10483 : break;
10484 : }
10485 : default:;
10486 : }
10487 : break;
10488 : }
10489 : default:;
10490 : }
10491 : break;
10492 : }
10493 : default:;
10494 : }
10495 : break;
10496 : }
10497 0 : case UNGE_EXPR:
10498 0 : {
10499 0 : tree _q50 = TREE_OPERAND (_q40, 0);
10500 0 : tree _q51 = TREE_OPERAND (_q40, 1);
10501 0 : switch (TREE_CODE (_p1))
10502 : {
10503 0 : case BIT_AND_EXPR:
10504 0 : {
10505 0 : tree _q80 = TREE_OPERAND (_p1, 0);
10506 0 : tree _q81 = TREE_OPERAND (_p1, 1);
10507 0 : switch (TREE_CODE (_q80))
10508 : {
10509 0 : CASE_CONVERT:
10510 0 : {
10511 0 : tree _q90 = TREE_OPERAND (_q80, 0);
10512 0 : switch (TREE_CODE (_q90))
10513 : {
10514 0 : case LT_EXPR:
10515 0 : {
10516 0 : tree _q100 = TREE_OPERAND (_q90, 0);
10517 0 : tree _q101 = TREE_OPERAND (_q90, 1);
10518 0 : if ((_q100 == _q50 && ! TREE_SIDE_EFFECTS (_q100)) || (operand_equal_p (_q100, _q50, 0) && types_match (_q100, _q50)))
10519 : {
10520 0 : if ((_q101 == _q51 && ! TREE_SIDE_EFFECTS (_q101)) || (operand_equal_p (_q101, _q51, 0) && types_match (_q101, _q51)))
10521 : {
10522 0 : {
10523 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q40, _q50, _q51, _q20, _q90, _q81 };
10524 0 : tree res = generic_simplify_151 (loc, type, _p0, _p1, captures, UNGE_EXPR, LT_EXPR);
10525 0 : if (res) return res;
10526 : }
10527 : }
10528 : }
10529 : break;
10530 : }
10531 : default:;
10532 : }
10533 : break;
10534 : }
10535 0 : default:;
10536 : }
10537 0 : switch (TREE_CODE (_q81))
10538 : {
10539 0 : CASE_CONVERT:
10540 0 : {
10541 0 : tree _q100 = TREE_OPERAND (_q81, 0);
10542 0 : switch (TREE_CODE (_q100))
10543 : {
10544 0 : case LT_EXPR:
10545 0 : {
10546 0 : tree _q110 = TREE_OPERAND (_q100, 0);
10547 0 : tree _q111 = TREE_OPERAND (_q100, 1);
10548 0 : if ((_q110 == _q50 && ! TREE_SIDE_EFFECTS (_q110)) || (operand_equal_p (_q110, _q50, 0) && types_match (_q110, _q50)))
10549 : {
10550 0 : if ((_q111 == _q51 && ! TREE_SIDE_EFFECTS (_q111)) || (operand_equal_p (_q111, _q51, 0) && types_match (_q111, _q51)))
10551 : {
10552 0 : {
10553 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q40, _q50, _q51, _q20, _q100, _q80 };
10554 0 : tree res = generic_simplify_151 (loc, type, _p0, _p1, captures, UNGE_EXPR, LT_EXPR);
10555 0 : if (res) return res;
10556 : }
10557 : }
10558 : }
10559 : break;
10560 : }
10561 : default:;
10562 : }
10563 : break;
10564 : }
10565 : default:;
10566 : }
10567 : break;
10568 : }
10569 : default:;
10570 : }
10571 : break;
10572 : }
10573 0 : case UNEQ_EXPR:
10574 0 : {
10575 0 : tree _q50 = TREE_OPERAND (_q40, 0);
10576 0 : tree _q51 = TREE_OPERAND (_q40, 1);
10577 0 : switch (TREE_CODE (_p1))
10578 : {
10579 0 : case BIT_AND_EXPR:
10580 0 : {
10581 0 : tree _q80 = TREE_OPERAND (_p1, 0);
10582 0 : tree _q81 = TREE_OPERAND (_p1, 1);
10583 0 : switch (TREE_CODE (_q80))
10584 : {
10585 0 : CASE_CONVERT:
10586 0 : {
10587 0 : tree _q90 = TREE_OPERAND (_q80, 0);
10588 0 : switch (TREE_CODE (_q90))
10589 : {
10590 0 : case LTGT_EXPR:
10591 0 : {
10592 0 : tree _q100 = TREE_OPERAND (_q90, 0);
10593 0 : tree _q101 = TREE_OPERAND (_q90, 1);
10594 0 : if ((_q100 == _q50 && ! TREE_SIDE_EFFECTS (_q100)) || (operand_equal_p (_q100, _q50, 0) && types_match (_q100, _q50)))
10595 : {
10596 0 : if ((_q101 == _q51 && ! TREE_SIDE_EFFECTS (_q101)) || (operand_equal_p (_q101, _q51, 0) && types_match (_q101, _q51)))
10597 : {
10598 0 : {
10599 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q40, _q50, _q51, _q20, _q90, _q81 };
10600 0 : tree res = generic_simplify_151 (loc, type, _p0, _p1, captures, UNEQ_EXPR, LTGT_EXPR);
10601 0 : if (res) return res;
10602 : }
10603 : }
10604 : }
10605 : break;
10606 : }
10607 : default:;
10608 : }
10609 : break;
10610 : }
10611 0 : default:;
10612 : }
10613 0 : switch (TREE_CODE (_q81))
10614 : {
10615 0 : CASE_CONVERT:
10616 0 : {
10617 0 : tree _q100 = TREE_OPERAND (_q81, 0);
10618 0 : switch (TREE_CODE (_q100))
10619 : {
10620 0 : case LTGT_EXPR:
10621 0 : {
10622 0 : tree _q110 = TREE_OPERAND (_q100, 0);
10623 0 : tree _q111 = TREE_OPERAND (_q100, 1);
10624 0 : if ((_q110 == _q50 && ! TREE_SIDE_EFFECTS (_q110)) || (operand_equal_p (_q110, _q50, 0) && types_match (_q110, _q50)))
10625 : {
10626 0 : if ((_q111 == _q51 && ! TREE_SIDE_EFFECTS (_q111)) || (operand_equal_p (_q111, _q51, 0) && types_match (_q111, _q51)))
10627 : {
10628 0 : {
10629 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q40, _q50, _q51, _q20, _q100, _q80 };
10630 0 : tree res = generic_simplify_151 (loc, type, _p0, _p1, captures, UNEQ_EXPR, LTGT_EXPR);
10631 0 : if (res) return res;
10632 : }
10633 : }
10634 : }
10635 : break;
10636 : }
10637 : default:;
10638 : }
10639 : break;
10640 : }
10641 : default:;
10642 : }
10643 : break;
10644 : }
10645 : default:;
10646 : }
10647 : break;
10648 : }
10649 0 : case LTGT_EXPR:
10650 0 : {
10651 0 : tree _q50 = TREE_OPERAND (_q40, 0);
10652 0 : tree _q51 = TREE_OPERAND (_q40, 1);
10653 0 : switch (TREE_CODE (_p1))
10654 : {
10655 0 : case BIT_AND_EXPR:
10656 0 : {
10657 0 : tree _q80 = TREE_OPERAND (_p1, 0);
10658 0 : tree _q81 = TREE_OPERAND (_p1, 1);
10659 0 : switch (TREE_CODE (_q80))
10660 : {
10661 0 : CASE_CONVERT:
10662 0 : {
10663 0 : tree _q90 = TREE_OPERAND (_q80, 0);
10664 0 : switch (TREE_CODE (_q90))
10665 : {
10666 0 : case UNEQ_EXPR:
10667 0 : {
10668 0 : tree _q100 = TREE_OPERAND (_q90, 0);
10669 0 : tree _q101 = TREE_OPERAND (_q90, 1);
10670 0 : if ((_q100 == _q50 && ! TREE_SIDE_EFFECTS (_q100)) || (operand_equal_p (_q100, _q50, 0) && types_match (_q100, _q50)))
10671 : {
10672 0 : if ((_q101 == _q51 && ! TREE_SIDE_EFFECTS (_q101)) || (operand_equal_p (_q101, _q51, 0) && types_match (_q101, _q51)))
10673 : {
10674 0 : {
10675 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q40, _q50, _q51, _q20, _q90, _q81 };
10676 0 : tree res = generic_simplify_151 (loc, type, _p0, _p1, captures, LTGT_EXPR, UNEQ_EXPR);
10677 0 : if (res) return res;
10678 : }
10679 : }
10680 : }
10681 : break;
10682 : }
10683 : default:;
10684 : }
10685 : break;
10686 : }
10687 0 : default:;
10688 : }
10689 0 : switch (TREE_CODE (_q81))
10690 : {
10691 0 : CASE_CONVERT:
10692 0 : {
10693 0 : tree _q100 = TREE_OPERAND (_q81, 0);
10694 0 : switch (TREE_CODE (_q100))
10695 : {
10696 0 : case UNEQ_EXPR:
10697 0 : {
10698 0 : tree _q110 = TREE_OPERAND (_q100, 0);
10699 0 : tree _q111 = TREE_OPERAND (_q100, 1);
10700 0 : if ((_q110 == _q50 && ! TREE_SIDE_EFFECTS (_q110)) || (operand_equal_p (_q110, _q50, 0) && types_match (_q110, _q50)))
10701 : {
10702 0 : if ((_q111 == _q51 && ! TREE_SIDE_EFFECTS (_q111)) || (operand_equal_p (_q111, _q51, 0) && types_match (_q111, _q51)))
10703 : {
10704 0 : {
10705 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q40, _q50, _q51, _q20, _q100, _q80 };
10706 0 : tree res = generic_simplify_151 (loc, type, _p0, _p1, captures, LTGT_EXPR, UNEQ_EXPR);
10707 0 : if (res) return res;
10708 : }
10709 : }
10710 : }
10711 : break;
10712 : }
10713 : default:;
10714 : }
10715 : break;
10716 : }
10717 : default:;
10718 : }
10719 : break;
10720 : }
10721 : default:;
10722 : }
10723 : break;
10724 : }
10725 : default:;
10726 : }
10727 : break;
10728 : }
10729 78964 : default:;
10730 : }
10731 78964 : switch (TREE_CODE (_q20))
10732 : {
10733 0 : case LT_EXPR:
10734 0 : {
10735 0 : tree _q30 = TREE_OPERAND (_q20, 0);
10736 0 : tree _q31 = TREE_OPERAND (_q20, 1);
10737 0 : switch (TREE_CODE (_p1))
10738 : {
10739 0 : case BIT_AND_EXPR:
10740 0 : {
10741 0 : tree _q70 = TREE_OPERAND (_p1, 0);
10742 0 : tree _q71 = TREE_OPERAND (_p1, 1);
10743 0 : switch (TREE_CODE (_q70))
10744 : {
10745 0 : case GE_EXPR:
10746 0 : {
10747 0 : tree _q80 = TREE_OPERAND (_q70, 0);
10748 0 : tree _q81 = TREE_OPERAND (_q70, 1);
10749 0 : if ((_q80 == _q30 && ! TREE_SIDE_EFFECTS (_q80)) || (operand_equal_p (_q80, _q30, 0) && types_match (_q80, _q30)))
10750 : {
10751 0 : if ((_q81 == _q31 && ! TREE_SIDE_EFFECTS (_q81)) || (operand_equal_p (_q81, _q31, 0) && types_match (_q81, _q31)))
10752 : {
10753 0 : {
10754 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q20, _q30, _q31, _q21, _q70, _q71 };
10755 0 : tree res = generic_simplify_151 (loc, type, _p0, _p1, captures, LT_EXPR, GE_EXPR);
10756 0 : if (res) return res;
10757 : }
10758 : }
10759 : }
10760 : break;
10761 : }
10762 0 : default:;
10763 : }
10764 0 : switch (TREE_CODE (_q71))
10765 : {
10766 0 : case GE_EXPR:
10767 0 : {
10768 0 : tree _q90 = TREE_OPERAND (_q71, 0);
10769 0 : tree _q91 = TREE_OPERAND (_q71, 1);
10770 0 : if ((_q90 == _q30 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q30, 0) && types_match (_q90, _q30)))
10771 : {
10772 0 : if ((_q91 == _q31 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q31, 0) && types_match (_q91, _q31)))
10773 : {
10774 0 : {
10775 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q20, _q30, _q31, _q21, _q71, _q70 };
10776 0 : tree res = generic_simplify_151 (loc, type, _p0, _p1, captures, LT_EXPR, GE_EXPR);
10777 0 : if (res) return res;
10778 : }
10779 : }
10780 : }
10781 : break;
10782 : }
10783 : default:;
10784 : }
10785 : break;
10786 : }
10787 : default:;
10788 : }
10789 : break;
10790 : }
10791 0 : case LE_EXPR:
10792 0 : {
10793 0 : tree _q30 = TREE_OPERAND (_q20, 0);
10794 0 : tree _q31 = TREE_OPERAND (_q20, 1);
10795 0 : switch (TREE_CODE (_p1))
10796 : {
10797 0 : case BIT_AND_EXPR:
10798 0 : {
10799 0 : tree _q70 = TREE_OPERAND (_p1, 0);
10800 0 : tree _q71 = TREE_OPERAND (_p1, 1);
10801 0 : switch (TREE_CODE (_q70))
10802 : {
10803 0 : case GT_EXPR:
10804 0 : {
10805 0 : tree _q80 = TREE_OPERAND (_q70, 0);
10806 0 : tree _q81 = TREE_OPERAND (_q70, 1);
10807 0 : if ((_q80 == _q30 && ! TREE_SIDE_EFFECTS (_q80)) || (operand_equal_p (_q80, _q30, 0) && types_match (_q80, _q30)))
10808 : {
10809 0 : if ((_q81 == _q31 && ! TREE_SIDE_EFFECTS (_q81)) || (operand_equal_p (_q81, _q31, 0) && types_match (_q81, _q31)))
10810 : {
10811 0 : {
10812 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q20, _q30, _q31, _q21, _q70, _q71 };
10813 0 : tree res = generic_simplify_151 (loc, type, _p0, _p1, captures, LE_EXPR, GT_EXPR);
10814 0 : if (res) return res;
10815 : }
10816 : }
10817 : }
10818 : break;
10819 : }
10820 0 : default:;
10821 : }
10822 0 : switch (TREE_CODE (_q71))
10823 : {
10824 0 : case GT_EXPR:
10825 0 : {
10826 0 : tree _q90 = TREE_OPERAND (_q71, 0);
10827 0 : tree _q91 = TREE_OPERAND (_q71, 1);
10828 0 : if ((_q90 == _q30 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q30, 0) && types_match (_q90, _q30)))
10829 : {
10830 0 : if ((_q91 == _q31 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q31, 0) && types_match (_q91, _q31)))
10831 : {
10832 0 : {
10833 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q20, _q30, _q31, _q21, _q71, _q70 };
10834 0 : tree res = generic_simplify_151 (loc, type, _p0, _p1, captures, LE_EXPR, GT_EXPR);
10835 0 : if (res) return res;
10836 : }
10837 : }
10838 : }
10839 : break;
10840 : }
10841 : default:;
10842 : }
10843 : break;
10844 : }
10845 : default:;
10846 : }
10847 : break;
10848 : }
10849 1 : case EQ_EXPR:
10850 1 : {
10851 1 : tree _q30 = TREE_OPERAND (_q20, 0);
10852 1 : tree _q31 = TREE_OPERAND (_q20, 1);
10853 1 : switch (TREE_CODE (_p1))
10854 : {
10855 1 : case BIT_AND_EXPR:
10856 1 : {
10857 1 : tree _q70 = TREE_OPERAND (_p1, 0);
10858 1 : tree _q71 = TREE_OPERAND (_p1, 1);
10859 1 : switch (TREE_CODE (_q70))
10860 : {
10861 0 : case NE_EXPR:
10862 0 : {
10863 0 : tree _q80 = TREE_OPERAND (_q70, 0);
10864 0 : tree _q81 = TREE_OPERAND (_q70, 1);
10865 0 : if ((_q80 == _q30 && ! TREE_SIDE_EFFECTS (_q80)) || (operand_equal_p (_q80, _q30, 0) && types_match (_q80, _q30)))
10866 : {
10867 0 : if ((_q81 == _q31 && ! TREE_SIDE_EFFECTS (_q81)) || (operand_equal_p (_q81, _q31, 0) && types_match (_q81, _q31)))
10868 : {
10869 0 : {
10870 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q20, _q30, _q31, _q21, _q70, _q71 };
10871 0 : tree res = generic_simplify_151 (loc, type, _p0, _p1, captures, EQ_EXPR, NE_EXPR);
10872 0 : if (res) return res;
10873 : }
10874 : }
10875 : }
10876 : break;
10877 : }
10878 1 : default:;
10879 : }
10880 1 : switch (TREE_CODE (_q71))
10881 : {
10882 0 : case NE_EXPR:
10883 0 : {
10884 0 : tree _q90 = TREE_OPERAND (_q71, 0);
10885 0 : tree _q91 = TREE_OPERAND (_q71, 1);
10886 0 : if ((_q90 == _q30 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q30, 0) && types_match (_q90, _q30)))
10887 : {
10888 0 : if ((_q91 == _q31 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q31, 0) && types_match (_q91, _q31)))
10889 : {
10890 0 : {
10891 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q20, _q30, _q31, _q21, _q71, _q70 };
10892 0 : tree res = generic_simplify_151 (loc, type, _p0, _p1, captures, EQ_EXPR, NE_EXPR);
10893 0 : if (res) return res;
10894 : }
10895 : }
10896 : }
10897 : break;
10898 : }
10899 : default:;
10900 : }
10901 : break;
10902 : }
10903 : default:;
10904 : }
10905 : break;
10906 : }
10907 0 : case NE_EXPR:
10908 0 : {
10909 0 : tree _q30 = TREE_OPERAND (_q20, 0);
10910 0 : tree _q31 = TREE_OPERAND (_q20, 1);
10911 0 : switch (TREE_CODE (_p1))
10912 : {
10913 0 : case BIT_AND_EXPR:
10914 0 : {
10915 0 : tree _q70 = TREE_OPERAND (_p1, 0);
10916 0 : tree _q71 = TREE_OPERAND (_p1, 1);
10917 0 : switch (TREE_CODE (_q70))
10918 : {
10919 0 : case EQ_EXPR:
10920 0 : {
10921 0 : tree _q80 = TREE_OPERAND (_q70, 0);
10922 0 : tree _q81 = TREE_OPERAND (_q70, 1);
10923 0 : if ((_q80 == _q30 && ! TREE_SIDE_EFFECTS (_q80)) || (operand_equal_p (_q80, _q30, 0) && types_match (_q80, _q30)))
10924 : {
10925 0 : if ((_q81 == _q31 && ! TREE_SIDE_EFFECTS (_q81)) || (operand_equal_p (_q81, _q31, 0) && types_match (_q81, _q31)))
10926 : {
10927 0 : {
10928 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q20, _q30, _q31, _q21, _q70, _q71 };
10929 0 : tree res = generic_simplify_151 (loc, type, _p0, _p1, captures, NE_EXPR, EQ_EXPR);
10930 0 : if (res) return res;
10931 : }
10932 : }
10933 : }
10934 : break;
10935 : }
10936 0 : default:;
10937 : }
10938 0 : switch (TREE_CODE (_q71))
10939 : {
10940 0 : case EQ_EXPR:
10941 0 : {
10942 0 : tree _q90 = TREE_OPERAND (_q71, 0);
10943 0 : tree _q91 = TREE_OPERAND (_q71, 1);
10944 0 : if ((_q90 == _q30 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q30, 0) && types_match (_q90, _q30)))
10945 : {
10946 0 : if ((_q91 == _q31 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q31, 0) && types_match (_q91, _q31)))
10947 : {
10948 0 : {
10949 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q20, _q30, _q31, _q21, _q71, _q70 };
10950 0 : tree res = generic_simplify_151 (loc, type, _p0, _p1, captures, NE_EXPR, EQ_EXPR);
10951 0 : if (res) return res;
10952 : }
10953 : }
10954 : }
10955 : break;
10956 : }
10957 : default:;
10958 : }
10959 : break;
10960 : }
10961 : default:;
10962 : }
10963 : break;
10964 : }
10965 0 : case GE_EXPR:
10966 0 : {
10967 0 : tree _q30 = TREE_OPERAND (_q20, 0);
10968 0 : tree _q31 = TREE_OPERAND (_q20, 1);
10969 0 : switch (TREE_CODE (_p1))
10970 : {
10971 0 : case BIT_AND_EXPR:
10972 0 : {
10973 0 : tree _q70 = TREE_OPERAND (_p1, 0);
10974 0 : tree _q71 = TREE_OPERAND (_p1, 1);
10975 0 : switch (TREE_CODE (_q70))
10976 : {
10977 0 : case LT_EXPR:
10978 0 : {
10979 0 : tree _q80 = TREE_OPERAND (_q70, 0);
10980 0 : tree _q81 = TREE_OPERAND (_q70, 1);
10981 0 : if ((_q80 == _q30 && ! TREE_SIDE_EFFECTS (_q80)) || (operand_equal_p (_q80, _q30, 0) && types_match (_q80, _q30)))
10982 : {
10983 0 : if ((_q81 == _q31 && ! TREE_SIDE_EFFECTS (_q81)) || (operand_equal_p (_q81, _q31, 0) && types_match (_q81, _q31)))
10984 : {
10985 0 : {
10986 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q20, _q30, _q31, _q21, _q70, _q71 };
10987 0 : tree res = generic_simplify_151 (loc, type, _p0, _p1, captures, GE_EXPR, LT_EXPR);
10988 0 : if (res) return res;
10989 : }
10990 : }
10991 : }
10992 : break;
10993 : }
10994 0 : default:;
10995 : }
10996 0 : switch (TREE_CODE (_q71))
10997 : {
10998 0 : case LT_EXPR:
10999 0 : {
11000 0 : tree _q90 = TREE_OPERAND (_q71, 0);
11001 0 : tree _q91 = TREE_OPERAND (_q71, 1);
11002 0 : if ((_q90 == _q30 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q30, 0) && types_match (_q90, _q30)))
11003 : {
11004 0 : if ((_q91 == _q31 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q31, 0) && types_match (_q91, _q31)))
11005 : {
11006 0 : {
11007 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q20, _q30, _q31, _q21, _q71, _q70 };
11008 0 : tree res = generic_simplify_151 (loc, type, _p0, _p1, captures, GE_EXPR, LT_EXPR);
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 0 : case GT_EXPR:
11024 0 : {
11025 0 : tree _q30 = TREE_OPERAND (_q20, 0);
11026 0 : tree _q31 = TREE_OPERAND (_q20, 1);
11027 0 : switch (TREE_CODE (_p1))
11028 : {
11029 0 : case BIT_AND_EXPR:
11030 0 : {
11031 0 : tree _q70 = TREE_OPERAND (_p1, 0);
11032 0 : tree _q71 = TREE_OPERAND (_p1, 1);
11033 0 : switch (TREE_CODE (_q70))
11034 : {
11035 0 : case LE_EXPR:
11036 0 : {
11037 0 : tree _q80 = TREE_OPERAND (_q70, 0);
11038 0 : tree _q81 = TREE_OPERAND (_q70, 1);
11039 0 : if ((_q80 == _q30 && ! TREE_SIDE_EFFECTS (_q80)) || (operand_equal_p (_q80, _q30, 0) && types_match (_q80, _q30)))
11040 : {
11041 0 : if ((_q81 == _q31 && ! TREE_SIDE_EFFECTS (_q81)) || (operand_equal_p (_q81, _q31, 0) && types_match (_q81, _q31)))
11042 : {
11043 0 : {
11044 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q20, _q30, _q31, _q21, _q70, _q71 };
11045 0 : tree res = generic_simplify_151 (loc, type, _p0, _p1, captures, GT_EXPR, LE_EXPR);
11046 0 : if (res) return res;
11047 : }
11048 : }
11049 : }
11050 : break;
11051 : }
11052 0 : default:;
11053 : }
11054 0 : switch (TREE_CODE (_q71))
11055 : {
11056 0 : case LE_EXPR:
11057 0 : {
11058 0 : tree _q90 = TREE_OPERAND (_q71, 0);
11059 0 : tree _q91 = TREE_OPERAND (_q71, 1);
11060 0 : if ((_q90 == _q30 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q30, 0) && types_match (_q90, _q30)))
11061 : {
11062 0 : if ((_q91 == _q31 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q31, 0) && types_match (_q91, _q31)))
11063 : {
11064 0 : {
11065 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q20, _q30, _q31, _q21, _q71, _q70 };
11066 0 : tree res = generic_simplify_151 (loc, type, _p0, _p1, captures, GT_EXPR, LE_EXPR);
11067 0 : if (res) return res;
11068 : }
11069 : }
11070 : }
11071 : break;
11072 : }
11073 : default:;
11074 : }
11075 : break;
11076 : }
11077 : default:;
11078 : }
11079 : break;
11080 : }
11081 0 : case UNORDERED_EXPR:
11082 0 : {
11083 0 : tree _q30 = TREE_OPERAND (_q20, 0);
11084 0 : tree _q31 = TREE_OPERAND (_q20, 1);
11085 0 : switch (TREE_CODE (_p1))
11086 : {
11087 0 : case BIT_AND_EXPR:
11088 0 : {
11089 0 : tree _q70 = TREE_OPERAND (_p1, 0);
11090 0 : tree _q71 = TREE_OPERAND (_p1, 1);
11091 0 : switch (TREE_CODE (_q70))
11092 : {
11093 0 : case ORDERED_EXPR:
11094 0 : {
11095 0 : tree _q80 = TREE_OPERAND (_q70, 0);
11096 0 : tree _q81 = TREE_OPERAND (_q70, 1);
11097 0 : if ((_q80 == _q30 && ! TREE_SIDE_EFFECTS (_q80)) || (operand_equal_p (_q80, _q30, 0) && types_match (_q80, _q30)))
11098 : {
11099 0 : if ((_q81 == _q31 && ! TREE_SIDE_EFFECTS (_q81)) || (operand_equal_p (_q81, _q31, 0) && types_match (_q81, _q31)))
11100 : {
11101 0 : {
11102 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q20, _q30, _q31, _q21, _q70, _q71 };
11103 0 : tree res = generic_simplify_151 (loc, type, _p0, _p1, captures, UNORDERED_EXPR, ORDERED_EXPR);
11104 0 : if (res) return res;
11105 : }
11106 : }
11107 : }
11108 : break;
11109 : }
11110 0 : default:;
11111 : }
11112 0 : switch (TREE_CODE (_q71))
11113 : {
11114 0 : case ORDERED_EXPR:
11115 0 : {
11116 0 : tree _q90 = TREE_OPERAND (_q71, 0);
11117 0 : tree _q91 = TREE_OPERAND (_q71, 1);
11118 0 : if ((_q90 == _q30 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q30, 0) && types_match (_q90, _q30)))
11119 : {
11120 0 : if ((_q91 == _q31 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q31, 0) && types_match (_q91, _q31)))
11121 : {
11122 0 : {
11123 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q20, _q30, _q31, _q21, _q71, _q70 };
11124 0 : tree res = generic_simplify_151 (loc, type, _p0, _p1, captures, UNORDERED_EXPR, ORDERED_EXPR);
11125 0 : if (res) return res;
11126 : }
11127 : }
11128 : }
11129 : break;
11130 : }
11131 : default:;
11132 : }
11133 : break;
11134 : }
11135 : default:;
11136 : }
11137 : break;
11138 : }
11139 0 : case ORDERED_EXPR:
11140 0 : {
11141 0 : tree _q30 = TREE_OPERAND (_q20, 0);
11142 0 : tree _q31 = TREE_OPERAND (_q20, 1);
11143 0 : switch (TREE_CODE (_p1))
11144 : {
11145 0 : case BIT_AND_EXPR:
11146 0 : {
11147 0 : tree _q70 = TREE_OPERAND (_p1, 0);
11148 0 : tree _q71 = TREE_OPERAND (_p1, 1);
11149 0 : switch (TREE_CODE (_q70))
11150 : {
11151 0 : case UNORDERED_EXPR:
11152 0 : {
11153 0 : tree _q80 = TREE_OPERAND (_q70, 0);
11154 0 : tree _q81 = TREE_OPERAND (_q70, 1);
11155 0 : if ((_q80 == _q30 && ! TREE_SIDE_EFFECTS (_q80)) || (operand_equal_p (_q80, _q30, 0) && types_match (_q80, _q30)))
11156 : {
11157 0 : if ((_q81 == _q31 && ! TREE_SIDE_EFFECTS (_q81)) || (operand_equal_p (_q81, _q31, 0) && types_match (_q81, _q31)))
11158 : {
11159 0 : {
11160 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q20, _q30, _q31, _q21, _q70, _q71 };
11161 0 : tree res = generic_simplify_151 (loc, type, _p0, _p1, captures, ORDERED_EXPR, UNORDERED_EXPR);
11162 0 : if (res) return res;
11163 : }
11164 : }
11165 : }
11166 : break;
11167 : }
11168 0 : default:;
11169 : }
11170 0 : switch (TREE_CODE (_q71))
11171 : {
11172 0 : case UNORDERED_EXPR:
11173 0 : {
11174 0 : tree _q90 = TREE_OPERAND (_q71, 0);
11175 0 : tree _q91 = TREE_OPERAND (_q71, 1);
11176 0 : if ((_q90 == _q30 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q30, 0) && types_match (_q90, _q30)))
11177 : {
11178 0 : if ((_q91 == _q31 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q31, 0) && types_match (_q91, _q31)))
11179 : {
11180 0 : {
11181 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q20, _q30, _q31, _q21, _q71, _q70 };
11182 0 : tree res = generic_simplify_151 (loc, type, _p0, _p1, captures, ORDERED_EXPR, UNORDERED_EXPR);
11183 0 : if (res) return res;
11184 : }
11185 : }
11186 : }
11187 : break;
11188 : }
11189 : default:;
11190 : }
11191 : break;
11192 : }
11193 : default:;
11194 : }
11195 : break;
11196 : }
11197 0 : case UNLT_EXPR:
11198 0 : {
11199 0 : tree _q30 = TREE_OPERAND (_q20, 0);
11200 0 : tree _q31 = TREE_OPERAND (_q20, 1);
11201 0 : switch (TREE_CODE (_p1))
11202 : {
11203 0 : case BIT_AND_EXPR:
11204 0 : {
11205 0 : tree _q70 = TREE_OPERAND (_p1, 0);
11206 0 : tree _q71 = TREE_OPERAND (_p1, 1);
11207 0 : switch (TREE_CODE (_q70))
11208 : {
11209 0 : case GE_EXPR:
11210 0 : {
11211 0 : tree _q80 = TREE_OPERAND (_q70, 0);
11212 0 : tree _q81 = TREE_OPERAND (_q70, 1);
11213 0 : if ((_q80 == _q30 && ! TREE_SIDE_EFFECTS (_q80)) || (operand_equal_p (_q80, _q30, 0) && types_match (_q80, _q30)))
11214 : {
11215 0 : if ((_q81 == _q31 && ! TREE_SIDE_EFFECTS (_q81)) || (operand_equal_p (_q81, _q31, 0) && types_match (_q81, _q31)))
11216 : {
11217 0 : {
11218 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q20, _q30, _q31, _q21, _q70, _q71 };
11219 0 : tree res = generic_simplify_151 (loc, type, _p0, _p1, captures, UNLT_EXPR, GE_EXPR);
11220 0 : if (res) return res;
11221 : }
11222 : }
11223 : }
11224 : break;
11225 : }
11226 0 : default:;
11227 : }
11228 0 : switch (TREE_CODE (_q71))
11229 : {
11230 0 : case GE_EXPR:
11231 0 : {
11232 0 : tree _q90 = TREE_OPERAND (_q71, 0);
11233 0 : tree _q91 = TREE_OPERAND (_q71, 1);
11234 0 : if ((_q90 == _q30 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q30, 0) && types_match (_q90, _q30)))
11235 : {
11236 0 : if ((_q91 == _q31 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q31, 0) && types_match (_q91, _q31)))
11237 : {
11238 0 : {
11239 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q20, _q30, _q31, _q21, _q71, _q70 };
11240 0 : tree res = generic_simplify_151 (loc, type, _p0, _p1, captures, UNLT_EXPR, GE_EXPR);
11241 0 : if (res) return res;
11242 : }
11243 : }
11244 : }
11245 : break;
11246 : }
11247 : default:;
11248 : }
11249 : break;
11250 : }
11251 : default:;
11252 : }
11253 : break;
11254 : }
11255 0 : case UNLE_EXPR:
11256 0 : {
11257 0 : tree _q30 = TREE_OPERAND (_q20, 0);
11258 0 : tree _q31 = TREE_OPERAND (_q20, 1);
11259 0 : switch (TREE_CODE (_p1))
11260 : {
11261 0 : case BIT_AND_EXPR:
11262 0 : {
11263 0 : tree _q70 = TREE_OPERAND (_p1, 0);
11264 0 : tree _q71 = TREE_OPERAND (_p1, 1);
11265 0 : switch (TREE_CODE (_q70))
11266 : {
11267 0 : case GT_EXPR:
11268 0 : {
11269 0 : tree _q80 = TREE_OPERAND (_q70, 0);
11270 0 : tree _q81 = TREE_OPERAND (_q70, 1);
11271 0 : if ((_q80 == _q30 && ! TREE_SIDE_EFFECTS (_q80)) || (operand_equal_p (_q80, _q30, 0) && types_match (_q80, _q30)))
11272 : {
11273 0 : if ((_q81 == _q31 && ! TREE_SIDE_EFFECTS (_q81)) || (operand_equal_p (_q81, _q31, 0) && types_match (_q81, _q31)))
11274 : {
11275 0 : {
11276 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q20, _q30, _q31, _q21, _q70, _q71 };
11277 0 : tree res = generic_simplify_151 (loc, type, _p0, _p1, captures, UNLE_EXPR, GT_EXPR);
11278 0 : if (res) return res;
11279 : }
11280 : }
11281 : }
11282 : break;
11283 : }
11284 0 : default:;
11285 : }
11286 0 : switch (TREE_CODE (_q71))
11287 : {
11288 0 : case GT_EXPR:
11289 0 : {
11290 0 : tree _q90 = TREE_OPERAND (_q71, 0);
11291 0 : tree _q91 = TREE_OPERAND (_q71, 1);
11292 0 : if ((_q90 == _q30 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q30, 0) && types_match (_q90, _q30)))
11293 : {
11294 0 : if ((_q91 == _q31 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q31, 0) && types_match (_q91, _q31)))
11295 : {
11296 0 : {
11297 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q20, _q30, _q31, _q21, _q71, _q70 };
11298 0 : tree res = generic_simplify_151 (loc, type, _p0, _p1, captures, UNLE_EXPR, GT_EXPR);
11299 0 : if (res) return res;
11300 : }
11301 : }
11302 : }
11303 : break;
11304 : }
11305 : default:;
11306 : }
11307 : break;
11308 : }
11309 : default:;
11310 : }
11311 : break;
11312 : }
11313 0 : case UNGT_EXPR:
11314 0 : {
11315 0 : tree _q30 = TREE_OPERAND (_q20, 0);
11316 0 : tree _q31 = TREE_OPERAND (_q20, 1);
11317 0 : switch (TREE_CODE (_p1))
11318 : {
11319 0 : case BIT_AND_EXPR:
11320 0 : {
11321 0 : tree _q70 = TREE_OPERAND (_p1, 0);
11322 0 : tree _q71 = TREE_OPERAND (_p1, 1);
11323 0 : switch (TREE_CODE (_q70))
11324 : {
11325 0 : case LE_EXPR:
11326 0 : {
11327 0 : tree _q80 = TREE_OPERAND (_q70, 0);
11328 0 : tree _q81 = TREE_OPERAND (_q70, 1);
11329 0 : if ((_q80 == _q30 && ! TREE_SIDE_EFFECTS (_q80)) || (operand_equal_p (_q80, _q30, 0) && types_match (_q80, _q30)))
11330 : {
11331 0 : if ((_q81 == _q31 && ! TREE_SIDE_EFFECTS (_q81)) || (operand_equal_p (_q81, _q31, 0) && types_match (_q81, _q31)))
11332 : {
11333 0 : {
11334 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q20, _q30, _q31, _q21, _q70, _q71 };
11335 0 : tree res = generic_simplify_151 (loc, type, _p0, _p1, captures, UNGT_EXPR, LE_EXPR);
11336 0 : if (res) return res;
11337 : }
11338 : }
11339 : }
11340 : break;
11341 : }
11342 0 : default:;
11343 : }
11344 0 : switch (TREE_CODE (_q71))
11345 : {
11346 0 : case LE_EXPR:
11347 0 : {
11348 0 : tree _q90 = TREE_OPERAND (_q71, 0);
11349 0 : tree _q91 = TREE_OPERAND (_q71, 1);
11350 0 : if ((_q90 == _q30 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q30, 0) && types_match (_q90, _q30)))
11351 : {
11352 0 : if ((_q91 == _q31 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q31, 0) && types_match (_q91, _q31)))
11353 : {
11354 0 : {
11355 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q20, _q30, _q31, _q21, _q71, _q70 };
11356 0 : tree res = generic_simplify_151 (loc, type, _p0, _p1, captures, UNGT_EXPR, LE_EXPR);
11357 0 : if (res) return res;
11358 : }
11359 : }
11360 : }
11361 : break;
11362 : }
11363 : default:;
11364 : }
11365 : break;
11366 : }
11367 : default:;
11368 : }
11369 : break;
11370 : }
11371 0 : case UNGE_EXPR:
11372 0 : {
11373 0 : tree _q30 = TREE_OPERAND (_q20, 0);
11374 0 : tree _q31 = TREE_OPERAND (_q20, 1);
11375 0 : switch (TREE_CODE (_p1))
11376 : {
11377 0 : case BIT_AND_EXPR:
11378 0 : {
11379 0 : tree _q70 = TREE_OPERAND (_p1, 0);
11380 0 : tree _q71 = TREE_OPERAND (_p1, 1);
11381 0 : switch (TREE_CODE (_q70))
11382 : {
11383 0 : case LT_EXPR:
11384 0 : {
11385 0 : tree _q80 = TREE_OPERAND (_q70, 0);
11386 0 : tree _q81 = TREE_OPERAND (_q70, 1);
11387 0 : if ((_q80 == _q30 && ! TREE_SIDE_EFFECTS (_q80)) || (operand_equal_p (_q80, _q30, 0) && types_match (_q80, _q30)))
11388 : {
11389 0 : if ((_q81 == _q31 && ! TREE_SIDE_EFFECTS (_q81)) || (operand_equal_p (_q81, _q31, 0) && types_match (_q81, _q31)))
11390 : {
11391 0 : {
11392 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q20, _q30, _q31, _q21, _q70, _q71 };
11393 0 : tree res = generic_simplify_151 (loc, type, _p0, _p1, captures, UNGE_EXPR, LT_EXPR);
11394 0 : if (res) return res;
11395 : }
11396 : }
11397 : }
11398 : break;
11399 : }
11400 0 : default:;
11401 : }
11402 0 : switch (TREE_CODE (_q71))
11403 : {
11404 0 : case LT_EXPR:
11405 0 : {
11406 0 : tree _q90 = TREE_OPERAND (_q71, 0);
11407 0 : tree _q91 = TREE_OPERAND (_q71, 1);
11408 0 : if ((_q90 == _q30 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q30, 0) && types_match (_q90, _q30)))
11409 : {
11410 0 : if ((_q91 == _q31 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q31, 0) && types_match (_q91, _q31)))
11411 : {
11412 0 : {
11413 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q20, _q30, _q31, _q21, _q71, _q70 };
11414 0 : tree res = generic_simplify_151 (loc, type, _p0, _p1, captures, UNGE_EXPR, LT_EXPR);
11415 0 : if (res) return res;
11416 : }
11417 : }
11418 : }
11419 : break;
11420 : }
11421 : default:;
11422 : }
11423 : break;
11424 : }
11425 : default:;
11426 : }
11427 : break;
11428 : }
11429 0 : case UNEQ_EXPR:
11430 0 : {
11431 0 : tree _q30 = TREE_OPERAND (_q20, 0);
11432 0 : tree _q31 = TREE_OPERAND (_q20, 1);
11433 0 : switch (TREE_CODE (_p1))
11434 : {
11435 0 : case BIT_AND_EXPR:
11436 0 : {
11437 0 : tree _q70 = TREE_OPERAND (_p1, 0);
11438 0 : tree _q71 = TREE_OPERAND (_p1, 1);
11439 0 : switch (TREE_CODE (_q70))
11440 : {
11441 0 : case LTGT_EXPR:
11442 0 : {
11443 0 : tree _q80 = TREE_OPERAND (_q70, 0);
11444 0 : tree _q81 = TREE_OPERAND (_q70, 1);
11445 0 : if ((_q80 == _q30 && ! TREE_SIDE_EFFECTS (_q80)) || (operand_equal_p (_q80, _q30, 0) && types_match (_q80, _q30)))
11446 : {
11447 0 : if ((_q81 == _q31 && ! TREE_SIDE_EFFECTS (_q81)) || (operand_equal_p (_q81, _q31, 0) && types_match (_q81, _q31)))
11448 : {
11449 0 : {
11450 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q20, _q30, _q31, _q21, _q70, _q71 };
11451 0 : tree res = generic_simplify_151 (loc, type, _p0, _p1, captures, UNEQ_EXPR, LTGT_EXPR);
11452 0 : if (res) return res;
11453 : }
11454 : }
11455 : }
11456 : break;
11457 : }
11458 0 : default:;
11459 : }
11460 0 : switch (TREE_CODE (_q71))
11461 : {
11462 0 : case LTGT_EXPR:
11463 0 : {
11464 0 : tree _q90 = TREE_OPERAND (_q71, 0);
11465 0 : tree _q91 = TREE_OPERAND (_q71, 1);
11466 0 : if ((_q90 == _q30 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q30, 0) && types_match (_q90, _q30)))
11467 : {
11468 0 : if ((_q91 == _q31 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q31, 0) && types_match (_q91, _q31)))
11469 : {
11470 0 : {
11471 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q20, _q30, _q31, _q21, _q71, _q70 };
11472 0 : tree res = generic_simplify_151 (loc, type, _p0, _p1, captures, UNEQ_EXPR, LTGT_EXPR);
11473 0 : if (res) return res;
11474 : }
11475 : }
11476 : }
11477 : break;
11478 : }
11479 : default:;
11480 : }
11481 : break;
11482 : }
11483 : default:;
11484 : }
11485 : break;
11486 : }
11487 0 : case LTGT_EXPR:
11488 0 : {
11489 0 : tree _q30 = TREE_OPERAND (_q20, 0);
11490 0 : tree _q31 = TREE_OPERAND (_q20, 1);
11491 0 : switch (TREE_CODE (_p1))
11492 : {
11493 0 : case BIT_AND_EXPR:
11494 0 : {
11495 0 : tree _q70 = TREE_OPERAND (_p1, 0);
11496 0 : tree _q71 = TREE_OPERAND (_p1, 1);
11497 0 : switch (TREE_CODE (_q70))
11498 : {
11499 0 : case UNEQ_EXPR:
11500 0 : {
11501 0 : tree _q80 = TREE_OPERAND (_q70, 0);
11502 0 : tree _q81 = TREE_OPERAND (_q70, 1);
11503 0 : if ((_q80 == _q30 && ! TREE_SIDE_EFFECTS (_q80)) || (operand_equal_p (_q80, _q30, 0) && types_match (_q80, _q30)))
11504 : {
11505 0 : if ((_q81 == _q31 && ! TREE_SIDE_EFFECTS (_q81)) || (operand_equal_p (_q81, _q31, 0) && types_match (_q81, _q31)))
11506 : {
11507 0 : {
11508 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q20, _q30, _q31, _q21, _q70, _q71 };
11509 0 : tree res = generic_simplify_151 (loc, type, _p0, _p1, captures, LTGT_EXPR, UNEQ_EXPR);
11510 0 : if (res) return res;
11511 : }
11512 : }
11513 : }
11514 : break;
11515 : }
11516 0 : default:;
11517 : }
11518 0 : switch (TREE_CODE (_q71))
11519 : {
11520 0 : case UNEQ_EXPR:
11521 0 : {
11522 0 : tree _q90 = TREE_OPERAND (_q71, 0);
11523 0 : tree _q91 = TREE_OPERAND (_q71, 1);
11524 0 : if ((_q90 == _q30 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q30, 0) && types_match (_q90, _q30)))
11525 : {
11526 0 : if ((_q91 == _q31 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q31, 0) && types_match (_q91, _q31)))
11527 : {
11528 0 : {
11529 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q20, _q30, _q31, _q21, _q71, _q70 };
11530 0 : tree res = generic_simplify_151 (loc, type, _p0, _p1, captures, LTGT_EXPR, UNEQ_EXPR);
11531 0 : if (res) return res;
11532 : }
11533 : }
11534 : }
11535 : break;
11536 : }
11537 : default:;
11538 : }
11539 : break;
11540 : }
11541 : default:;
11542 : }
11543 : break;
11544 : }
11545 78964 : default:;
11546 : }
11547 78964 : switch (TREE_CODE (_q21))
11548 : {
11549 0 : case LT_EXPR:
11550 0 : {
11551 0 : tree _q40 = TREE_OPERAND (_q21, 0);
11552 0 : tree _q41 = TREE_OPERAND (_q21, 1);
11553 0 : switch (TREE_CODE (_p1))
11554 : {
11555 0 : case BIT_AND_EXPR:
11556 0 : {
11557 0 : tree _q70 = TREE_OPERAND (_p1, 0);
11558 0 : tree _q71 = TREE_OPERAND (_p1, 1);
11559 0 : switch (TREE_CODE (_q70))
11560 : {
11561 0 : case GE_EXPR:
11562 0 : {
11563 0 : tree _q80 = TREE_OPERAND (_q70, 0);
11564 0 : tree _q81 = TREE_OPERAND (_q70, 1);
11565 0 : if ((_q80 == _q40 && ! TREE_SIDE_EFFECTS (_q80)) || (operand_equal_p (_q80, _q40, 0) && types_match (_q80, _q40)))
11566 : {
11567 0 : if ((_q81 == _q41 && ! TREE_SIDE_EFFECTS (_q81)) || (operand_equal_p (_q81, _q41, 0) && types_match (_q81, _q41)))
11568 : {
11569 0 : {
11570 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q21, _q40, _q41, _q20, _q70, _q71 };
11571 0 : tree res = generic_simplify_151 (loc, type, _p0, _p1, captures, LT_EXPR, GE_EXPR);
11572 0 : if (res) return res;
11573 : }
11574 : }
11575 : }
11576 : break;
11577 : }
11578 0 : default:;
11579 : }
11580 0 : switch (TREE_CODE (_q71))
11581 : {
11582 0 : case GE_EXPR:
11583 0 : {
11584 0 : tree _q90 = TREE_OPERAND (_q71, 0);
11585 0 : tree _q91 = TREE_OPERAND (_q71, 1);
11586 0 : if ((_q90 == _q40 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q40, 0) && types_match (_q90, _q40)))
11587 : {
11588 0 : if ((_q91 == _q41 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q41, 0) && types_match (_q91, _q41)))
11589 : {
11590 0 : {
11591 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q21, _q40, _q41, _q20, _q71, _q70 };
11592 0 : tree res = generic_simplify_151 (loc, type, _p0, _p1, captures, LT_EXPR, GE_EXPR);
11593 0 : if (res) return res;
11594 : }
11595 : }
11596 : }
11597 : break;
11598 : }
11599 : default:;
11600 : }
11601 : break;
11602 : }
11603 : default:;
11604 : }
11605 : break;
11606 : }
11607 0 : case LE_EXPR:
11608 0 : {
11609 0 : tree _q40 = TREE_OPERAND (_q21, 0);
11610 0 : tree _q41 = TREE_OPERAND (_q21, 1);
11611 0 : switch (TREE_CODE (_p1))
11612 : {
11613 0 : case BIT_AND_EXPR:
11614 0 : {
11615 0 : tree _q70 = TREE_OPERAND (_p1, 0);
11616 0 : tree _q71 = TREE_OPERAND (_p1, 1);
11617 0 : switch (TREE_CODE (_q70))
11618 : {
11619 0 : case GT_EXPR:
11620 0 : {
11621 0 : tree _q80 = TREE_OPERAND (_q70, 0);
11622 0 : tree _q81 = TREE_OPERAND (_q70, 1);
11623 0 : if ((_q80 == _q40 && ! TREE_SIDE_EFFECTS (_q80)) || (operand_equal_p (_q80, _q40, 0) && types_match (_q80, _q40)))
11624 : {
11625 0 : if ((_q81 == _q41 && ! TREE_SIDE_EFFECTS (_q81)) || (operand_equal_p (_q81, _q41, 0) && types_match (_q81, _q41)))
11626 : {
11627 0 : {
11628 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q21, _q40, _q41, _q20, _q70, _q71 };
11629 0 : tree res = generic_simplify_151 (loc, type, _p0, _p1, captures, LE_EXPR, GT_EXPR);
11630 0 : if (res) return res;
11631 : }
11632 : }
11633 : }
11634 : break;
11635 : }
11636 0 : default:;
11637 : }
11638 0 : switch (TREE_CODE (_q71))
11639 : {
11640 0 : case GT_EXPR:
11641 0 : {
11642 0 : tree _q90 = TREE_OPERAND (_q71, 0);
11643 0 : tree _q91 = TREE_OPERAND (_q71, 1);
11644 0 : if ((_q90 == _q40 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q40, 0) && types_match (_q90, _q40)))
11645 : {
11646 0 : if ((_q91 == _q41 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q41, 0) && types_match (_q91, _q41)))
11647 : {
11648 0 : {
11649 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q21, _q40, _q41, _q20, _q71, _q70 };
11650 0 : tree res = generic_simplify_151 (loc, type, _p0, _p1, captures, LE_EXPR, GT_EXPR);
11651 0 : if (res) return res;
11652 : }
11653 : }
11654 : }
11655 : break;
11656 : }
11657 : default:;
11658 : }
11659 : break;
11660 : }
11661 : default:;
11662 : }
11663 : break;
11664 : }
11665 1 : case EQ_EXPR:
11666 1 : {
11667 1 : tree _q40 = TREE_OPERAND (_q21, 0);
11668 1 : tree _q41 = TREE_OPERAND (_q21, 1);
11669 1 : switch (TREE_CODE (_p1))
11670 : {
11671 1 : case BIT_AND_EXPR:
11672 1 : {
11673 1 : tree _q70 = TREE_OPERAND (_p1, 0);
11674 1 : tree _q71 = TREE_OPERAND (_p1, 1);
11675 1 : switch (TREE_CODE (_q70))
11676 : {
11677 0 : case NE_EXPR:
11678 0 : {
11679 0 : tree _q80 = TREE_OPERAND (_q70, 0);
11680 0 : tree _q81 = TREE_OPERAND (_q70, 1);
11681 0 : if ((_q80 == _q40 && ! TREE_SIDE_EFFECTS (_q80)) || (operand_equal_p (_q80, _q40, 0) && types_match (_q80, _q40)))
11682 : {
11683 0 : if ((_q81 == _q41 && ! TREE_SIDE_EFFECTS (_q81)) || (operand_equal_p (_q81, _q41, 0) && types_match (_q81, _q41)))
11684 : {
11685 0 : {
11686 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q21, _q40, _q41, _q20, _q70, _q71 };
11687 0 : tree res = generic_simplify_151 (loc, type, _p0, _p1, captures, EQ_EXPR, NE_EXPR);
11688 0 : if (res) return res;
11689 : }
11690 : }
11691 : }
11692 : break;
11693 : }
11694 1 : default:;
11695 : }
11696 1 : switch (TREE_CODE (_q71))
11697 : {
11698 0 : case NE_EXPR:
11699 0 : {
11700 0 : tree _q90 = TREE_OPERAND (_q71, 0);
11701 0 : tree _q91 = TREE_OPERAND (_q71, 1);
11702 0 : if ((_q90 == _q40 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q40, 0) && types_match (_q90, _q40)))
11703 : {
11704 0 : if ((_q91 == _q41 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q41, 0) && types_match (_q91, _q41)))
11705 : {
11706 0 : {
11707 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q21, _q40, _q41, _q20, _q71, _q70 };
11708 0 : tree res = generic_simplify_151 (loc, type, _p0, _p1, captures, EQ_EXPR, NE_EXPR);
11709 0 : if (res) return res;
11710 : }
11711 : }
11712 : }
11713 : break;
11714 : }
11715 : default:;
11716 : }
11717 : break;
11718 : }
11719 : default:;
11720 : }
11721 : break;
11722 : }
11723 0 : case NE_EXPR:
11724 0 : {
11725 0 : tree _q40 = TREE_OPERAND (_q21, 0);
11726 0 : tree _q41 = TREE_OPERAND (_q21, 1);
11727 0 : switch (TREE_CODE (_p1))
11728 : {
11729 0 : case BIT_AND_EXPR:
11730 0 : {
11731 0 : tree _q70 = TREE_OPERAND (_p1, 0);
11732 0 : tree _q71 = TREE_OPERAND (_p1, 1);
11733 0 : switch (TREE_CODE (_q70))
11734 : {
11735 0 : case EQ_EXPR:
11736 0 : {
11737 0 : tree _q80 = TREE_OPERAND (_q70, 0);
11738 0 : tree _q81 = TREE_OPERAND (_q70, 1);
11739 0 : if ((_q80 == _q40 && ! TREE_SIDE_EFFECTS (_q80)) || (operand_equal_p (_q80, _q40, 0) && types_match (_q80, _q40)))
11740 : {
11741 0 : if ((_q81 == _q41 && ! TREE_SIDE_EFFECTS (_q81)) || (operand_equal_p (_q81, _q41, 0) && types_match (_q81, _q41)))
11742 : {
11743 0 : {
11744 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q21, _q40, _q41, _q20, _q70, _q71 };
11745 0 : tree res = generic_simplify_151 (loc, type, _p0, _p1, captures, NE_EXPR, EQ_EXPR);
11746 0 : if (res) return res;
11747 : }
11748 : }
11749 : }
11750 : break;
11751 : }
11752 0 : default:;
11753 : }
11754 0 : switch (TREE_CODE (_q71))
11755 : {
11756 0 : case EQ_EXPR:
11757 0 : {
11758 0 : tree _q90 = TREE_OPERAND (_q71, 0);
11759 0 : tree _q91 = TREE_OPERAND (_q71, 1);
11760 0 : if ((_q90 == _q40 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q40, 0) && types_match (_q90, _q40)))
11761 : {
11762 0 : if ((_q91 == _q41 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q41, 0) && types_match (_q91, _q41)))
11763 : {
11764 0 : {
11765 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q21, _q40, _q41, _q20, _q71, _q70 };
11766 0 : tree res = generic_simplify_151 (loc, type, _p0, _p1, captures, NE_EXPR, EQ_EXPR);
11767 0 : if (res) return res;
11768 : }
11769 : }
11770 : }
11771 : break;
11772 : }
11773 : default:;
11774 : }
11775 : break;
11776 : }
11777 : default:;
11778 : }
11779 : break;
11780 : }
11781 0 : case GE_EXPR:
11782 0 : {
11783 0 : tree _q40 = TREE_OPERAND (_q21, 0);
11784 0 : tree _q41 = TREE_OPERAND (_q21, 1);
11785 0 : switch (TREE_CODE (_p1))
11786 : {
11787 0 : case BIT_AND_EXPR:
11788 0 : {
11789 0 : tree _q70 = TREE_OPERAND (_p1, 0);
11790 0 : tree _q71 = TREE_OPERAND (_p1, 1);
11791 0 : switch (TREE_CODE (_q70))
11792 : {
11793 0 : case LT_EXPR:
11794 0 : {
11795 0 : tree _q80 = TREE_OPERAND (_q70, 0);
11796 0 : tree _q81 = TREE_OPERAND (_q70, 1);
11797 0 : if ((_q80 == _q40 && ! TREE_SIDE_EFFECTS (_q80)) || (operand_equal_p (_q80, _q40, 0) && types_match (_q80, _q40)))
11798 : {
11799 0 : if ((_q81 == _q41 && ! TREE_SIDE_EFFECTS (_q81)) || (operand_equal_p (_q81, _q41, 0) && types_match (_q81, _q41)))
11800 : {
11801 0 : {
11802 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q21, _q40, _q41, _q20, _q70, _q71 };
11803 0 : tree res = generic_simplify_151 (loc, type, _p0, _p1, captures, GE_EXPR, LT_EXPR);
11804 0 : if (res) return res;
11805 : }
11806 : }
11807 : }
11808 : break;
11809 : }
11810 0 : default:;
11811 : }
11812 0 : switch (TREE_CODE (_q71))
11813 : {
11814 0 : case LT_EXPR:
11815 0 : {
11816 0 : tree _q90 = TREE_OPERAND (_q71, 0);
11817 0 : tree _q91 = TREE_OPERAND (_q71, 1);
11818 0 : if ((_q90 == _q40 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q40, 0) && types_match (_q90, _q40)))
11819 : {
11820 0 : if ((_q91 == _q41 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q41, 0) && types_match (_q91, _q41)))
11821 : {
11822 0 : {
11823 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q21, _q40, _q41, _q20, _q71, _q70 };
11824 0 : tree res = generic_simplify_151 (loc, type, _p0, _p1, captures, GE_EXPR, LT_EXPR);
11825 0 : if (res) return res;
11826 : }
11827 : }
11828 : }
11829 : break;
11830 : }
11831 : default:;
11832 : }
11833 : break;
11834 : }
11835 : default:;
11836 : }
11837 : break;
11838 : }
11839 0 : case GT_EXPR:
11840 0 : {
11841 0 : tree _q40 = TREE_OPERAND (_q21, 0);
11842 0 : tree _q41 = TREE_OPERAND (_q21, 1);
11843 0 : switch (TREE_CODE (_p1))
11844 : {
11845 0 : case BIT_AND_EXPR:
11846 0 : {
11847 0 : tree _q70 = TREE_OPERAND (_p1, 0);
11848 0 : tree _q71 = TREE_OPERAND (_p1, 1);
11849 0 : switch (TREE_CODE (_q70))
11850 : {
11851 0 : case LE_EXPR:
11852 0 : {
11853 0 : tree _q80 = TREE_OPERAND (_q70, 0);
11854 0 : tree _q81 = TREE_OPERAND (_q70, 1);
11855 0 : if ((_q80 == _q40 && ! TREE_SIDE_EFFECTS (_q80)) || (operand_equal_p (_q80, _q40, 0) && types_match (_q80, _q40)))
11856 : {
11857 0 : if ((_q81 == _q41 && ! TREE_SIDE_EFFECTS (_q81)) || (operand_equal_p (_q81, _q41, 0) && types_match (_q81, _q41)))
11858 : {
11859 0 : {
11860 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q21, _q40, _q41, _q20, _q70, _q71 };
11861 0 : tree res = generic_simplify_151 (loc, type, _p0, _p1, captures, GT_EXPR, LE_EXPR);
11862 0 : if (res) return res;
11863 : }
11864 : }
11865 : }
11866 : break;
11867 : }
11868 0 : default:;
11869 : }
11870 0 : switch (TREE_CODE (_q71))
11871 : {
11872 0 : case LE_EXPR:
11873 0 : {
11874 0 : tree _q90 = TREE_OPERAND (_q71, 0);
11875 0 : tree _q91 = TREE_OPERAND (_q71, 1);
11876 0 : if ((_q90 == _q40 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q40, 0) && types_match (_q90, _q40)))
11877 : {
11878 0 : if ((_q91 == _q41 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q41, 0) && types_match (_q91, _q41)))
11879 : {
11880 0 : {
11881 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q21, _q40, _q41, _q20, _q71, _q70 };
11882 0 : tree res = generic_simplify_151 (loc, type, _p0, _p1, captures, GT_EXPR, LE_EXPR);
11883 0 : if (res) return res;
11884 : }
11885 : }
11886 : }
11887 : break;
11888 : }
11889 : default:;
11890 : }
11891 : break;
11892 : }
11893 : default:;
11894 : }
11895 : break;
11896 : }
11897 0 : case UNORDERED_EXPR:
11898 0 : {
11899 0 : tree _q40 = TREE_OPERAND (_q21, 0);
11900 0 : tree _q41 = TREE_OPERAND (_q21, 1);
11901 0 : switch (TREE_CODE (_p1))
11902 : {
11903 0 : case BIT_AND_EXPR:
11904 0 : {
11905 0 : tree _q70 = TREE_OPERAND (_p1, 0);
11906 0 : tree _q71 = TREE_OPERAND (_p1, 1);
11907 0 : switch (TREE_CODE (_q70))
11908 : {
11909 0 : case ORDERED_EXPR:
11910 0 : {
11911 0 : tree _q80 = TREE_OPERAND (_q70, 0);
11912 0 : tree _q81 = TREE_OPERAND (_q70, 1);
11913 0 : if ((_q80 == _q40 && ! TREE_SIDE_EFFECTS (_q80)) || (operand_equal_p (_q80, _q40, 0) && types_match (_q80, _q40)))
11914 : {
11915 0 : if ((_q81 == _q41 && ! TREE_SIDE_EFFECTS (_q81)) || (operand_equal_p (_q81, _q41, 0) && types_match (_q81, _q41)))
11916 : {
11917 0 : {
11918 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q21, _q40, _q41, _q20, _q70, _q71 };
11919 0 : tree res = generic_simplify_151 (loc, type, _p0, _p1, captures, UNORDERED_EXPR, ORDERED_EXPR);
11920 0 : if (res) return res;
11921 : }
11922 : }
11923 : }
11924 : break;
11925 : }
11926 0 : default:;
11927 : }
11928 0 : switch (TREE_CODE (_q71))
11929 : {
11930 0 : case ORDERED_EXPR:
11931 0 : {
11932 0 : tree _q90 = TREE_OPERAND (_q71, 0);
11933 0 : tree _q91 = TREE_OPERAND (_q71, 1);
11934 0 : if ((_q90 == _q40 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q40, 0) && types_match (_q90, _q40)))
11935 : {
11936 0 : if ((_q91 == _q41 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q41, 0) && types_match (_q91, _q41)))
11937 : {
11938 0 : {
11939 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q21, _q40, _q41, _q20, _q71, _q70 };
11940 0 : tree res = generic_simplify_151 (loc, type, _p0, _p1, captures, UNORDERED_EXPR, ORDERED_EXPR);
11941 0 : if (res) return res;
11942 : }
11943 : }
11944 : }
11945 : break;
11946 : }
11947 : default:;
11948 : }
11949 : break;
11950 : }
11951 : default:;
11952 : }
11953 : break;
11954 : }
11955 0 : case ORDERED_EXPR:
11956 0 : {
11957 0 : tree _q40 = TREE_OPERAND (_q21, 0);
11958 0 : tree _q41 = TREE_OPERAND (_q21, 1);
11959 0 : switch (TREE_CODE (_p1))
11960 : {
11961 0 : case BIT_AND_EXPR:
11962 0 : {
11963 0 : tree _q70 = TREE_OPERAND (_p1, 0);
11964 0 : tree _q71 = TREE_OPERAND (_p1, 1);
11965 0 : switch (TREE_CODE (_q70))
11966 : {
11967 0 : case UNORDERED_EXPR:
11968 0 : {
11969 0 : tree _q80 = TREE_OPERAND (_q70, 0);
11970 0 : tree _q81 = TREE_OPERAND (_q70, 1);
11971 0 : if ((_q80 == _q40 && ! TREE_SIDE_EFFECTS (_q80)) || (operand_equal_p (_q80, _q40, 0) && types_match (_q80, _q40)))
11972 : {
11973 0 : if ((_q81 == _q41 && ! TREE_SIDE_EFFECTS (_q81)) || (operand_equal_p (_q81, _q41, 0) && types_match (_q81, _q41)))
11974 : {
11975 0 : {
11976 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q21, _q40, _q41, _q20, _q70, _q71 };
11977 0 : tree res = generic_simplify_151 (loc, type, _p0, _p1, captures, ORDERED_EXPR, UNORDERED_EXPR);
11978 0 : if (res) return res;
11979 : }
11980 : }
11981 : }
11982 : break;
11983 : }
11984 0 : default:;
11985 : }
11986 0 : switch (TREE_CODE (_q71))
11987 : {
11988 0 : case UNORDERED_EXPR:
11989 0 : {
11990 0 : tree _q90 = TREE_OPERAND (_q71, 0);
11991 0 : tree _q91 = TREE_OPERAND (_q71, 1);
11992 0 : if ((_q90 == _q40 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q40, 0) && types_match (_q90, _q40)))
11993 : {
11994 0 : if ((_q91 == _q41 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q41, 0) && types_match (_q91, _q41)))
11995 : {
11996 0 : {
11997 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q21, _q40, _q41, _q20, _q71, _q70 };
11998 0 : tree res = generic_simplify_151 (loc, type, _p0, _p1, captures, ORDERED_EXPR, UNORDERED_EXPR);
11999 0 : if (res) return res;
12000 : }
12001 : }
12002 : }
12003 : break;
12004 : }
12005 : default:;
12006 : }
12007 : break;
12008 : }
12009 : default:;
12010 : }
12011 : break;
12012 : }
12013 0 : case UNLT_EXPR:
12014 0 : {
12015 0 : tree _q40 = TREE_OPERAND (_q21, 0);
12016 0 : tree _q41 = TREE_OPERAND (_q21, 1);
12017 0 : switch (TREE_CODE (_p1))
12018 : {
12019 0 : case BIT_AND_EXPR:
12020 0 : {
12021 0 : tree _q70 = TREE_OPERAND (_p1, 0);
12022 0 : tree _q71 = TREE_OPERAND (_p1, 1);
12023 0 : switch (TREE_CODE (_q70))
12024 : {
12025 0 : case GE_EXPR:
12026 0 : {
12027 0 : tree _q80 = TREE_OPERAND (_q70, 0);
12028 0 : tree _q81 = TREE_OPERAND (_q70, 1);
12029 0 : if ((_q80 == _q40 && ! TREE_SIDE_EFFECTS (_q80)) || (operand_equal_p (_q80, _q40, 0) && types_match (_q80, _q40)))
12030 : {
12031 0 : if ((_q81 == _q41 && ! TREE_SIDE_EFFECTS (_q81)) || (operand_equal_p (_q81, _q41, 0) && types_match (_q81, _q41)))
12032 : {
12033 0 : {
12034 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q21, _q40, _q41, _q20, _q70, _q71 };
12035 0 : tree res = generic_simplify_151 (loc, type, _p0, _p1, captures, UNLT_EXPR, GE_EXPR);
12036 0 : if (res) return res;
12037 : }
12038 : }
12039 : }
12040 : break;
12041 : }
12042 0 : default:;
12043 : }
12044 0 : switch (TREE_CODE (_q71))
12045 : {
12046 0 : case GE_EXPR:
12047 0 : {
12048 0 : tree _q90 = TREE_OPERAND (_q71, 0);
12049 0 : tree _q91 = TREE_OPERAND (_q71, 1);
12050 0 : if ((_q90 == _q40 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q40, 0) && types_match (_q90, _q40)))
12051 : {
12052 0 : if ((_q91 == _q41 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q41, 0) && types_match (_q91, _q41)))
12053 : {
12054 0 : {
12055 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q21, _q40, _q41, _q20, _q71, _q70 };
12056 0 : tree res = generic_simplify_151 (loc, type, _p0, _p1, captures, UNLT_EXPR, GE_EXPR);
12057 0 : if (res) return res;
12058 : }
12059 : }
12060 : }
12061 : break;
12062 : }
12063 : default:;
12064 : }
12065 : break;
12066 : }
12067 : default:;
12068 : }
12069 : break;
12070 : }
12071 0 : case UNLE_EXPR:
12072 0 : {
12073 0 : tree _q40 = TREE_OPERAND (_q21, 0);
12074 0 : tree _q41 = TREE_OPERAND (_q21, 1);
12075 0 : switch (TREE_CODE (_p1))
12076 : {
12077 0 : case BIT_AND_EXPR:
12078 0 : {
12079 0 : tree _q70 = TREE_OPERAND (_p1, 0);
12080 0 : tree _q71 = TREE_OPERAND (_p1, 1);
12081 0 : switch (TREE_CODE (_q70))
12082 : {
12083 0 : case GT_EXPR:
12084 0 : {
12085 0 : tree _q80 = TREE_OPERAND (_q70, 0);
12086 0 : tree _q81 = TREE_OPERAND (_q70, 1);
12087 0 : if ((_q80 == _q40 && ! TREE_SIDE_EFFECTS (_q80)) || (operand_equal_p (_q80, _q40, 0) && types_match (_q80, _q40)))
12088 : {
12089 0 : if ((_q81 == _q41 && ! TREE_SIDE_EFFECTS (_q81)) || (operand_equal_p (_q81, _q41, 0) && types_match (_q81, _q41)))
12090 : {
12091 0 : {
12092 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q21, _q40, _q41, _q20, _q70, _q71 };
12093 0 : tree res = generic_simplify_151 (loc, type, _p0, _p1, captures, UNLE_EXPR, GT_EXPR);
12094 0 : if (res) return res;
12095 : }
12096 : }
12097 : }
12098 : break;
12099 : }
12100 0 : default:;
12101 : }
12102 0 : switch (TREE_CODE (_q71))
12103 : {
12104 0 : case GT_EXPR:
12105 0 : {
12106 0 : tree _q90 = TREE_OPERAND (_q71, 0);
12107 0 : tree _q91 = TREE_OPERAND (_q71, 1);
12108 0 : if ((_q90 == _q40 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q40, 0) && types_match (_q90, _q40)))
12109 : {
12110 0 : if ((_q91 == _q41 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q41, 0) && types_match (_q91, _q41)))
12111 : {
12112 0 : {
12113 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q21, _q40, _q41, _q20, _q71, _q70 };
12114 0 : tree res = generic_simplify_151 (loc, type, _p0, _p1, captures, UNLE_EXPR, GT_EXPR);
12115 0 : if (res) return res;
12116 : }
12117 : }
12118 : }
12119 : break;
12120 : }
12121 : default:;
12122 : }
12123 : break;
12124 : }
12125 : default:;
12126 : }
12127 : break;
12128 : }
12129 0 : case UNGT_EXPR:
12130 0 : {
12131 0 : tree _q40 = TREE_OPERAND (_q21, 0);
12132 0 : tree _q41 = TREE_OPERAND (_q21, 1);
12133 0 : switch (TREE_CODE (_p1))
12134 : {
12135 0 : case BIT_AND_EXPR:
12136 0 : {
12137 0 : tree _q70 = TREE_OPERAND (_p1, 0);
12138 0 : tree _q71 = TREE_OPERAND (_p1, 1);
12139 0 : switch (TREE_CODE (_q70))
12140 : {
12141 0 : case LE_EXPR:
12142 0 : {
12143 0 : tree _q80 = TREE_OPERAND (_q70, 0);
12144 0 : tree _q81 = TREE_OPERAND (_q70, 1);
12145 0 : if ((_q80 == _q40 && ! TREE_SIDE_EFFECTS (_q80)) || (operand_equal_p (_q80, _q40, 0) && types_match (_q80, _q40)))
12146 : {
12147 0 : if ((_q81 == _q41 && ! TREE_SIDE_EFFECTS (_q81)) || (operand_equal_p (_q81, _q41, 0) && types_match (_q81, _q41)))
12148 : {
12149 0 : {
12150 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q21, _q40, _q41, _q20, _q70, _q71 };
12151 0 : tree res = generic_simplify_151 (loc, type, _p0, _p1, captures, UNGT_EXPR, LE_EXPR);
12152 0 : if (res) return res;
12153 : }
12154 : }
12155 : }
12156 : break;
12157 : }
12158 0 : default:;
12159 : }
12160 0 : switch (TREE_CODE (_q71))
12161 : {
12162 0 : case LE_EXPR:
12163 0 : {
12164 0 : tree _q90 = TREE_OPERAND (_q71, 0);
12165 0 : tree _q91 = TREE_OPERAND (_q71, 1);
12166 0 : if ((_q90 == _q40 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q40, 0) && types_match (_q90, _q40)))
12167 : {
12168 0 : if ((_q91 == _q41 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q41, 0) && types_match (_q91, _q41)))
12169 : {
12170 0 : {
12171 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q21, _q40, _q41, _q20, _q71, _q70 };
12172 0 : tree res = generic_simplify_151 (loc, type, _p0, _p1, captures, UNGT_EXPR, LE_EXPR);
12173 0 : if (res) return res;
12174 : }
12175 : }
12176 : }
12177 : break;
12178 : }
12179 : default:;
12180 : }
12181 : break;
12182 : }
12183 : default:;
12184 : }
12185 : break;
12186 : }
12187 0 : case UNGE_EXPR:
12188 0 : {
12189 0 : tree _q40 = TREE_OPERAND (_q21, 0);
12190 0 : tree _q41 = TREE_OPERAND (_q21, 1);
12191 0 : switch (TREE_CODE (_p1))
12192 : {
12193 0 : case BIT_AND_EXPR:
12194 0 : {
12195 0 : tree _q70 = TREE_OPERAND (_p1, 0);
12196 0 : tree _q71 = TREE_OPERAND (_p1, 1);
12197 0 : switch (TREE_CODE (_q70))
12198 : {
12199 0 : case LT_EXPR:
12200 0 : {
12201 0 : tree _q80 = TREE_OPERAND (_q70, 0);
12202 0 : tree _q81 = TREE_OPERAND (_q70, 1);
12203 0 : if ((_q80 == _q40 && ! TREE_SIDE_EFFECTS (_q80)) || (operand_equal_p (_q80, _q40, 0) && types_match (_q80, _q40)))
12204 : {
12205 0 : if ((_q81 == _q41 && ! TREE_SIDE_EFFECTS (_q81)) || (operand_equal_p (_q81, _q41, 0) && types_match (_q81, _q41)))
12206 : {
12207 0 : {
12208 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q21, _q40, _q41, _q20, _q70, _q71 };
12209 0 : tree res = generic_simplify_151 (loc, type, _p0, _p1, captures, UNGE_EXPR, LT_EXPR);
12210 0 : if (res) return res;
12211 : }
12212 : }
12213 : }
12214 : break;
12215 : }
12216 0 : default:;
12217 : }
12218 0 : switch (TREE_CODE (_q71))
12219 : {
12220 0 : case LT_EXPR:
12221 0 : {
12222 0 : tree _q90 = TREE_OPERAND (_q71, 0);
12223 0 : tree _q91 = TREE_OPERAND (_q71, 1);
12224 0 : if ((_q90 == _q40 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q40, 0) && types_match (_q90, _q40)))
12225 : {
12226 0 : if ((_q91 == _q41 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q41, 0) && types_match (_q91, _q41)))
12227 : {
12228 0 : {
12229 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q21, _q40, _q41, _q20, _q71, _q70 };
12230 0 : tree res = generic_simplify_151 (loc, type, _p0, _p1, captures, UNGE_EXPR, LT_EXPR);
12231 0 : if (res) return res;
12232 : }
12233 : }
12234 : }
12235 : break;
12236 : }
12237 : default:;
12238 : }
12239 : break;
12240 : }
12241 : default:;
12242 : }
12243 : break;
12244 : }
12245 0 : case UNEQ_EXPR:
12246 0 : {
12247 0 : tree _q40 = TREE_OPERAND (_q21, 0);
12248 0 : tree _q41 = TREE_OPERAND (_q21, 1);
12249 0 : switch (TREE_CODE (_p1))
12250 : {
12251 0 : case BIT_AND_EXPR:
12252 0 : {
12253 0 : tree _q70 = TREE_OPERAND (_p1, 0);
12254 0 : tree _q71 = TREE_OPERAND (_p1, 1);
12255 0 : switch (TREE_CODE (_q70))
12256 : {
12257 0 : case LTGT_EXPR:
12258 0 : {
12259 0 : tree _q80 = TREE_OPERAND (_q70, 0);
12260 0 : tree _q81 = TREE_OPERAND (_q70, 1);
12261 0 : if ((_q80 == _q40 && ! TREE_SIDE_EFFECTS (_q80)) || (operand_equal_p (_q80, _q40, 0) && types_match (_q80, _q40)))
12262 : {
12263 0 : if ((_q81 == _q41 && ! TREE_SIDE_EFFECTS (_q81)) || (operand_equal_p (_q81, _q41, 0) && types_match (_q81, _q41)))
12264 : {
12265 0 : {
12266 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q21, _q40, _q41, _q20, _q70, _q71 };
12267 0 : tree res = generic_simplify_151 (loc, type, _p0, _p1, captures, UNEQ_EXPR, LTGT_EXPR);
12268 0 : if (res) return res;
12269 : }
12270 : }
12271 : }
12272 : break;
12273 : }
12274 0 : default:;
12275 : }
12276 0 : switch (TREE_CODE (_q71))
12277 : {
12278 0 : case LTGT_EXPR:
12279 0 : {
12280 0 : tree _q90 = TREE_OPERAND (_q71, 0);
12281 0 : tree _q91 = TREE_OPERAND (_q71, 1);
12282 0 : if ((_q90 == _q40 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q40, 0) && types_match (_q90, _q40)))
12283 : {
12284 0 : if ((_q91 == _q41 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q41, 0) && types_match (_q91, _q41)))
12285 : {
12286 0 : {
12287 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q21, _q40, _q41, _q20, _q71, _q70 };
12288 0 : tree res = generic_simplify_151 (loc, type, _p0, _p1, captures, UNEQ_EXPR, LTGT_EXPR);
12289 0 : if (res) return res;
12290 : }
12291 : }
12292 : }
12293 : break;
12294 : }
12295 : default:;
12296 : }
12297 : break;
12298 : }
12299 : default:;
12300 : }
12301 : break;
12302 : }
12303 0 : case LTGT_EXPR:
12304 0 : {
12305 0 : tree _q40 = TREE_OPERAND (_q21, 0);
12306 0 : tree _q41 = TREE_OPERAND (_q21, 1);
12307 0 : switch (TREE_CODE (_p1))
12308 : {
12309 0 : case BIT_AND_EXPR:
12310 0 : {
12311 0 : tree _q70 = TREE_OPERAND (_p1, 0);
12312 0 : tree _q71 = TREE_OPERAND (_p1, 1);
12313 0 : switch (TREE_CODE (_q70))
12314 : {
12315 0 : case UNEQ_EXPR:
12316 0 : {
12317 0 : tree _q80 = TREE_OPERAND (_q70, 0);
12318 0 : tree _q81 = TREE_OPERAND (_q70, 1);
12319 0 : if ((_q80 == _q40 && ! TREE_SIDE_EFFECTS (_q80)) || (operand_equal_p (_q80, _q40, 0) && types_match (_q80, _q40)))
12320 : {
12321 0 : if ((_q81 == _q41 && ! TREE_SIDE_EFFECTS (_q81)) || (operand_equal_p (_q81, _q41, 0) && types_match (_q81, _q41)))
12322 : {
12323 0 : {
12324 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q21, _q40, _q41, _q20, _q70, _q71 };
12325 0 : tree res = generic_simplify_151 (loc, type, _p0, _p1, captures, LTGT_EXPR, UNEQ_EXPR);
12326 0 : if (res) return res;
12327 : }
12328 : }
12329 : }
12330 : break;
12331 : }
12332 0 : default:;
12333 : }
12334 0 : switch (TREE_CODE (_q71))
12335 : {
12336 0 : case UNEQ_EXPR:
12337 0 : {
12338 0 : tree _q90 = TREE_OPERAND (_q71, 0);
12339 0 : tree _q91 = TREE_OPERAND (_q71, 1);
12340 0 : if ((_q90 == _q40 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q40, 0) && types_match (_q90, _q40)))
12341 : {
12342 0 : if ((_q91 == _q41 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q41, 0) && types_match (_q91, _q41)))
12343 : {
12344 0 : {
12345 0 : tree captures[6] ATTRIBUTE_UNUSED = { _q21, _q40, _q41, _q20, _q71, _q70 };
12346 0 : tree res = generic_simplify_151 (loc, type, _p0, _p1, captures, LTGT_EXPR, UNEQ_EXPR);
12347 0 : if (res) return res;
12348 : }
12349 : }
12350 : }
12351 : break;
12352 : }
12353 : default:;
12354 : }
12355 : break;
12356 : }
12357 : default:;
12358 : }
12359 : break;
12360 : }
12361 78964 : default:;
12362 : }
12363 78964 : switch (TREE_CODE (_q20))
12364 : {
12365 0 : case VEC_COND_EXPR:
12366 0 : {
12367 0 : tree _q30 = TREE_OPERAND (_q20, 0);
12368 0 : tree _q31 = TREE_OPERAND (_q20, 1);
12369 0 : tree _q32 = TREE_OPERAND (_q20, 2);
12370 0 : switch (TREE_CODE (_q30))
12371 : {
12372 0 : case LT_EXPR:
12373 0 : {
12374 0 : tree _q40 = TREE_OPERAND (_q30, 0);
12375 0 : tree _q41 = TREE_OPERAND (_q30, 1);
12376 0 : switch (TREE_CODE (_p1))
12377 : {
12378 0 : case BIT_AND_EXPR:
12379 0 : {
12380 0 : tree _q100 = TREE_OPERAND (_p1, 0);
12381 0 : tree _q101 = TREE_OPERAND (_p1, 1);
12382 0 : switch (TREE_CODE (_q100))
12383 : {
12384 0 : case VEC_COND_EXPR:
12385 0 : {
12386 0 : tree _q110 = TREE_OPERAND (_q100, 0);
12387 0 : tree _q111 = TREE_OPERAND (_q100, 1);
12388 0 : tree _q112 = TREE_OPERAND (_q100, 2);
12389 0 : switch (TREE_CODE (_q110))
12390 : {
12391 0 : case GE_EXPR:
12392 0 : {
12393 0 : tree _q120 = TREE_OPERAND (_q110, 0);
12394 0 : tree _q121 = TREE_OPERAND (_q110, 1);
12395 0 : if ((_q120 == _q40 && ! TREE_SIDE_EFFECTS (_q120)) || (operand_equal_p (_q120, _q40, 0) && types_match (_q120, _q40)))
12396 : {
12397 0 : if ((_q121 == _q41 && ! TREE_SIDE_EFFECTS (_q121)) || (operand_equal_p (_q121, _q41, 0) && types_match (_q121, _q41)))
12398 : {
12399 0 : if ((_q111 == _q31 && ! TREE_SIDE_EFFECTS (_q111)) || (operand_equal_p (_q111, _q31, 0) && types_match (_q111, _q31)))
12400 : {
12401 0 : if ((_q112 == _q32 && ! TREE_SIDE_EFFECTS (_q112)) || (operand_equal_p (_q112, _q32, 0) && types_match (_q112, _q32)))
12402 : {
12403 0 : {
12404 0 : tree captures[10] ATTRIBUTE_UNUSED = { _q20, _q30, _q40, _q41, _q31, _q32, _q21, _q100, _q110, _q101 };
12405 0 : tree res = generic_simplify_152 (loc, type, _p0, _p1, captures, LT_EXPR, GE_EXPR);
12406 0 : if (res) return res;
12407 : }
12408 : }
12409 : }
12410 : }
12411 : }
12412 : break;
12413 : }
12414 : default:;
12415 : }
12416 : break;
12417 : }
12418 0 : default:;
12419 : }
12420 0 : switch (TREE_CODE (_q101))
12421 : {
12422 0 : case VEC_COND_EXPR:
12423 0 : {
12424 0 : tree _q120 = TREE_OPERAND (_q101, 0);
12425 0 : tree _q121 = TREE_OPERAND (_q101, 1);
12426 0 : tree _q122 = TREE_OPERAND (_q101, 2);
12427 0 : switch (TREE_CODE (_q120))
12428 : {
12429 0 : case GE_EXPR:
12430 0 : {
12431 0 : tree _q130 = TREE_OPERAND (_q120, 0);
12432 0 : tree _q131 = TREE_OPERAND (_q120, 1);
12433 0 : if ((_q130 == _q40 && ! TREE_SIDE_EFFECTS (_q130)) || (operand_equal_p (_q130, _q40, 0) && types_match (_q130, _q40)))
12434 : {
12435 0 : if ((_q131 == _q41 && ! TREE_SIDE_EFFECTS (_q131)) || (operand_equal_p (_q131, _q41, 0) && types_match (_q131, _q41)))
12436 : {
12437 0 : if ((_q121 == _q31 && ! TREE_SIDE_EFFECTS (_q121)) || (operand_equal_p (_q121, _q31, 0) && types_match (_q121, _q31)))
12438 : {
12439 0 : if ((_q122 == _q32 && ! TREE_SIDE_EFFECTS (_q122)) || (operand_equal_p (_q122, _q32, 0) && types_match (_q122, _q32)))
12440 : {
12441 0 : {
12442 0 : tree captures[10] ATTRIBUTE_UNUSED = { _q20, _q30, _q40, _q41, _q31, _q32, _q21, _q101, _q120, _q100 };
12443 0 : tree res = generic_simplify_152 (loc, type, _p0, _p1, captures, LT_EXPR, GE_EXPR);
12444 0 : if (res) return res;
12445 : }
12446 : }
12447 : }
12448 : }
12449 : }
12450 : break;
12451 : }
12452 : default:;
12453 : }
12454 : break;
12455 : }
12456 : default:;
12457 : }
12458 : break;
12459 : }
12460 : default:;
12461 : }
12462 : break;
12463 : }
12464 0 : case LE_EXPR:
12465 0 : {
12466 0 : tree _q40 = TREE_OPERAND (_q30, 0);
12467 0 : tree _q41 = TREE_OPERAND (_q30, 1);
12468 0 : switch (TREE_CODE (_p1))
12469 : {
12470 0 : case BIT_AND_EXPR:
12471 0 : {
12472 0 : tree _q100 = TREE_OPERAND (_p1, 0);
12473 0 : tree _q101 = TREE_OPERAND (_p1, 1);
12474 0 : switch (TREE_CODE (_q100))
12475 : {
12476 0 : case VEC_COND_EXPR:
12477 0 : {
12478 0 : tree _q110 = TREE_OPERAND (_q100, 0);
12479 0 : tree _q111 = TREE_OPERAND (_q100, 1);
12480 0 : tree _q112 = TREE_OPERAND (_q100, 2);
12481 0 : switch (TREE_CODE (_q110))
12482 : {
12483 0 : case GT_EXPR:
12484 0 : {
12485 0 : tree _q120 = TREE_OPERAND (_q110, 0);
12486 0 : tree _q121 = TREE_OPERAND (_q110, 1);
12487 0 : if ((_q120 == _q40 && ! TREE_SIDE_EFFECTS (_q120)) || (operand_equal_p (_q120, _q40, 0) && types_match (_q120, _q40)))
12488 : {
12489 0 : if ((_q121 == _q41 && ! TREE_SIDE_EFFECTS (_q121)) || (operand_equal_p (_q121, _q41, 0) && types_match (_q121, _q41)))
12490 : {
12491 0 : if ((_q111 == _q31 && ! TREE_SIDE_EFFECTS (_q111)) || (operand_equal_p (_q111, _q31, 0) && types_match (_q111, _q31)))
12492 : {
12493 0 : if ((_q112 == _q32 && ! TREE_SIDE_EFFECTS (_q112)) || (operand_equal_p (_q112, _q32, 0) && types_match (_q112, _q32)))
12494 : {
12495 0 : {
12496 0 : tree captures[10] ATTRIBUTE_UNUSED = { _q20, _q30, _q40, _q41, _q31, _q32, _q21, _q100, _q110, _q101 };
12497 0 : tree res = generic_simplify_152 (loc, type, _p0, _p1, captures, LE_EXPR, GT_EXPR);
12498 0 : if (res) return res;
12499 : }
12500 : }
12501 : }
12502 : }
12503 : }
12504 : break;
12505 : }
12506 : default:;
12507 : }
12508 : break;
12509 : }
12510 0 : default:;
12511 : }
12512 0 : switch (TREE_CODE (_q101))
12513 : {
12514 0 : case VEC_COND_EXPR:
12515 0 : {
12516 0 : tree _q120 = TREE_OPERAND (_q101, 0);
12517 0 : tree _q121 = TREE_OPERAND (_q101, 1);
12518 0 : tree _q122 = TREE_OPERAND (_q101, 2);
12519 0 : switch (TREE_CODE (_q120))
12520 : {
12521 0 : case GT_EXPR:
12522 0 : {
12523 0 : tree _q130 = TREE_OPERAND (_q120, 0);
12524 0 : tree _q131 = TREE_OPERAND (_q120, 1);
12525 0 : if ((_q130 == _q40 && ! TREE_SIDE_EFFECTS (_q130)) || (operand_equal_p (_q130, _q40, 0) && types_match (_q130, _q40)))
12526 : {
12527 0 : if ((_q131 == _q41 && ! TREE_SIDE_EFFECTS (_q131)) || (operand_equal_p (_q131, _q41, 0) && types_match (_q131, _q41)))
12528 : {
12529 0 : if ((_q121 == _q31 && ! TREE_SIDE_EFFECTS (_q121)) || (operand_equal_p (_q121, _q31, 0) && types_match (_q121, _q31)))
12530 : {
12531 0 : if ((_q122 == _q32 && ! TREE_SIDE_EFFECTS (_q122)) || (operand_equal_p (_q122, _q32, 0) && types_match (_q122, _q32)))
12532 : {
12533 0 : {
12534 0 : tree captures[10] ATTRIBUTE_UNUSED = { _q20, _q30, _q40, _q41, _q31, _q32, _q21, _q101, _q120, _q100 };
12535 0 : tree res = generic_simplify_152 (loc, type, _p0, _p1, captures, LE_EXPR, GT_EXPR);
12536 0 : if (res) return res;
12537 : }
12538 : }
12539 : }
12540 : }
12541 : }
12542 : break;
12543 : }
12544 : default:;
12545 : }
12546 : break;
12547 : }
12548 : default:;
12549 : }
12550 : break;
12551 : }
12552 : default:;
12553 : }
12554 : break;
12555 : }
12556 0 : case EQ_EXPR:
12557 0 : {
12558 0 : tree _q40 = TREE_OPERAND (_q30, 0);
12559 0 : tree _q41 = TREE_OPERAND (_q30, 1);
12560 0 : switch (TREE_CODE (_p1))
12561 : {
12562 0 : case BIT_AND_EXPR:
12563 0 : {
12564 0 : tree _q100 = TREE_OPERAND (_p1, 0);
12565 0 : tree _q101 = TREE_OPERAND (_p1, 1);
12566 0 : switch (TREE_CODE (_q100))
12567 : {
12568 0 : case VEC_COND_EXPR:
12569 0 : {
12570 0 : tree _q110 = TREE_OPERAND (_q100, 0);
12571 0 : tree _q111 = TREE_OPERAND (_q100, 1);
12572 0 : tree _q112 = TREE_OPERAND (_q100, 2);
12573 0 : switch (TREE_CODE (_q110))
12574 : {
12575 0 : case NE_EXPR:
12576 0 : {
12577 0 : tree _q120 = TREE_OPERAND (_q110, 0);
12578 0 : tree _q121 = TREE_OPERAND (_q110, 1);
12579 0 : if ((_q120 == _q40 && ! TREE_SIDE_EFFECTS (_q120)) || (operand_equal_p (_q120, _q40, 0) && types_match (_q120, _q40)))
12580 : {
12581 0 : if ((_q121 == _q41 && ! TREE_SIDE_EFFECTS (_q121)) || (operand_equal_p (_q121, _q41, 0) && types_match (_q121, _q41)))
12582 : {
12583 0 : if ((_q111 == _q31 && ! TREE_SIDE_EFFECTS (_q111)) || (operand_equal_p (_q111, _q31, 0) && types_match (_q111, _q31)))
12584 : {
12585 0 : if ((_q112 == _q32 && ! TREE_SIDE_EFFECTS (_q112)) || (operand_equal_p (_q112, _q32, 0) && types_match (_q112, _q32)))
12586 : {
12587 0 : {
12588 0 : tree captures[10] ATTRIBUTE_UNUSED = { _q20, _q30, _q40, _q41, _q31, _q32, _q21, _q100, _q110, _q101 };
12589 0 : tree res = generic_simplify_152 (loc, type, _p0, _p1, captures, EQ_EXPR, NE_EXPR);
12590 0 : if (res) return res;
12591 : }
12592 : }
12593 : }
12594 : }
12595 : }
12596 : break;
12597 : }
12598 : default:;
12599 : }
12600 : break;
12601 : }
12602 0 : default:;
12603 : }
12604 0 : switch (TREE_CODE (_q101))
12605 : {
12606 0 : case VEC_COND_EXPR:
12607 0 : {
12608 0 : tree _q120 = TREE_OPERAND (_q101, 0);
12609 0 : tree _q121 = TREE_OPERAND (_q101, 1);
12610 0 : tree _q122 = TREE_OPERAND (_q101, 2);
12611 0 : switch (TREE_CODE (_q120))
12612 : {
12613 0 : case NE_EXPR:
12614 0 : {
12615 0 : tree _q130 = TREE_OPERAND (_q120, 0);
12616 0 : tree _q131 = TREE_OPERAND (_q120, 1);
12617 0 : if ((_q130 == _q40 && ! TREE_SIDE_EFFECTS (_q130)) || (operand_equal_p (_q130, _q40, 0) && types_match (_q130, _q40)))
12618 : {
12619 0 : if ((_q131 == _q41 && ! TREE_SIDE_EFFECTS (_q131)) || (operand_equal_p (_q131, _q41, 0) && types_match (_q131, _q41)))
12620 : {
12621 0 : if ((_q121 == _q31 && ! TREE_SIDE_EFFECTS (_q121)) || (operand_equal_p (_q121, _q31, 0) && types_match (_q121, _q31)))
12622 : {
12623 0 : if ((_q122 == _q32 && ! TREE_SIDE_EFFECTS (_q122)) || (operand_equal_p (_q122, _q32, 0) && types_match (_q122, _q32)))
12624 : {
12625 0 : {
12626 0 : tree captures[10] ATTRIBUTE_UNUSED = { _q20, _q30, _q40, _q41, _q31, _q32, _q21, _q101, _q120, _q100 };
12627 0 : tree res = generic_simplify_152 (loc, type, _p0, _p1, captures, EQ_EXPR, NE_EXPR);
12628 0 : if (res) return res;
12629 : }
12630 : }
12631 : }
12632 : }
12633 : }
12634 : break;
12635 : }
12636 : default:;
12637 : }
12638 : break;
12639 : }
12640 : default:;
12641 : }
12642 : break;
12643 : }
12644 : default:;
12645 : }
12646 : break;
12647 : }
12648 0 : case NE_EXPR:
12649 0 : {
12650 0 : tree _q40 = TREE_OPERAND (_q30, 0);
12651 0 : tree _q41 = TREE_OPERAND (_q30, 1);
12652 0 : switch (TREE_CODE (_p1))
12653 : {
12654 0 : case BIT_AND_EXPR:
12655 0 : {
12656 0 : tree _q100 = TREE_OPERAND (_p1, 0);
12657 0 : tree _q101 = TREE_OPERAND (_p1, 1);
12658 0 : switch (TREE_CODE (_q100))
12659 : {
12660 0 : case VEC_COND_EXPR:
12661 0 : {
12662 0 : tree _q110 = TREE_OPERAND (_q100, 0);
12663 0 : tree _q111 = TREE_OPERAND (_q100, 1);
12664 0 : tree _q112 = TREE_OPERAND (_q100, 2);
12665 0 : switch (TREE_CODE (_q110))
12666 : {
12667 0 : case EQ_EXPR:
12668 0 : {
12669 0 : tree _q120 = TREE_OPERAND (_q110, 0);
12670 0 : tree _q121 = TREE_OPERAND (_q110, 1);
12671 0 : if ((_q120 == _q40 && ! TREE_SIDE_EFFECTS (_q120)) || (operand_equal_p (_q120, _q40, 0) && types_match (_q120, _q40)))
12672 : {
12673 0 : if ((_q121 == _q41 && ! TREE_SIDE_EFFECTS (_q121)) || (operand_equal_p (_q121, _q41, 0) && types_match (_q121, _q41)))
12674 : {
12675 0 : if ((_q111 == _q31 && ! TREE_SIDE_EFFECTS (_q111)) || (operand_equal_p (_q111, _q31, 0) && types_match (_q111, _q31)))
12676 : {
12677 0 : if ((_q112 == _q32 && ! TREE_SIDE_EFFECTS (_q112)) || (operand_equal_p (_q112, _q32, 0) && types_match (_q112, _q32)))
12678 : {
12679 0 : {
12680 0 : tree captures[10] ATTRIBUTE_UNUSED = { _q20, _q30, _q40, _q41, _q31, _q32, _q21, _q100, _q110, _q101 };
12681 0 : tree res = generic_simplify_152 (loc, type, _p0, _p1, captures, NE_EXPR, EQ_EXPR);
12682 0 : if (res) return res;
12683 : }
12684 : }
12685 : }
12686 : }
12687 : }
12688 : break;
12689 : }
12690 : default:;
12691 : }
12692 : break;
12693 : }
12694 0 : default:;
12695 : }
12696 0 : switch (TREE_CODE (_q101))
12697 : {
12698 0 : case VEC_COND_EXPR:
12699 0 : {
12700 0 : tree _q120 = TREE_OPERAND (_q101, 0);
12701 0 : tree _q121 = TREE_OPERAND (_q101, 1);
12702 0 : tree _q122 = TREE_OPERAND (_q101, 2);
12703 0 : switch (TREE_CODE (_q120))
12704 : {
12705 0 : case EQ_EXPR:
12706 0 : {
12707 0 : tree _q130 = TREE_OPERAND (_q120, 0);
12708 0 : tree _q131 = TREE_OPERAND (_q120, 1);
12709 0 : if ((_q130 == _q40 && ! TREE_SIDE_EFFECTS (_q130)) || (operand_equal_p (_q130, _q40, 0) && types_match (_q130, _q40)))
12710 : {
12711 0 : if ((_q131 == _q41 && ! TREE_SIDE_EFFECTS (_q131)) || (operand_equal_p (_q131, _q41, 0) && types_match (_q131, _q41)))
12712 : {
12713 0 : if ((_q121 == _q31 && ! TREE_SIDE_EFFECTS (_q121)) || (operand_equal_p (_q121, _q31, 0) && types_match (_q121, _q31)))
12714 : {
12715 0 : if ((_q122 == _q32 && ! TREE_SIDE_EFFECTS (_q122)) || (operand_equal_p (_q122, _q32, 0) && types_match (_q122, _q32)))
12716 : {
12717 0 : {
12718 0 : tree captures[10] ATTRIBUTE_UNUSED = { _q20, _q30, _q40, _q41, _q31, _q32, _q21, _q101, _q120, _q100 };
12719 0 : tree res = generic_simplify_152 (loc, type, _p0, _p1, captures, NE_EXPR, EQ_EXPR);
12720 0 : if (res) return res;
12721 : }
12722 : }
12723 : }
12724 : }
12725 : }
12726 : break;
12727 : }
12728 : default:;
12729 : }
12730 : break;
12731 : }
12732 : default:;
12733 : }
12734 : break;
12735 : }
12736 : default:;
12737 : }
12738 : break;
12739 : }
12740 0 : case GE_EXPR:
12741 0 : {
12742 0 : tree _q40 = TREE_OPERAND (_q30, 0);
12743 0 : tree _q41 = TREE_OPERAND (_q30, 1);
12744 0 : switch (TREE_CODE (_p1))
12745 : {
12746 0 : case BIT_AND_EXPR:
12747 0 : {
12748 0 : tree _q100 = TREE_OPERAND (_p1, 0);
12749 0 : tree _q101 = TREE_OPERAND (_p1, 1);
12750 0 : switch (TREE_CODE (_q100))
12751 : {
12752 0 : case VEC_COND_EXPR:
12753 0 : {
12754 0 : tree _q110 = TREE_OPERAND (_q100, 0);
12755 0 : tree _q111 = TREE_OPERAND (_q100, 1);
12756 0 : tree _q112 = TREE_OPERAND (_q100, 2);
12757 0 : switch (TREE_CODE (_q110))
12758 : {
12759 0 : case LT_EXPR:
12760 0 : {
12761 0 : tree _q120 = TREE_OPERAND (_q110, 0);
12762 0 : tree _q121 = TREE_OPERAND (_q110, 1);
12763 0 : if ((_q120 == _q40 && ! TREE_SIDE_EFFECTS (_q120)) || (operand_equal_p (_q120, _q40, 0) && types_match (_q120, _q40)))
12764 : {
12765 0 : if ((_q121 == _q41 && ! TREE_SIDE_EFFECTS (_q121)) || (operand_equal_p (_q121, _q41, 0) && types_match (_q121, _q41)))
12766 : {
12767 0 : if ((_q111 == _q31 && ! TREE_SIDE_EFFECTS (_q111)) || (operand_equal_p (_q111, _q31, 0) && types_match (_q111, _q31)))
12768 : {
12769 0 : if ((_q112 == _q32 && ! TREE_SIDE_EFFECTS (_q112)) || (operand_equal_p (_q112, _q32, 0) && types_match (_q112, _q32)))
12770 : {
12771 0 : {
12772 0 : tree captures[10] ATTRIBUTE_UNUSED = { _q20, _q30, _q40, _q41, _q31, _q32, _q21, _q100, _q110, _q101 };
12773 0 : tree res = generic_simplify_152 (loc, type, _p0, _p1, captures, GE_EXPR, LT_EXPR);
12774 0 : if (res) return res;
12775 : }
12776 : }
12777 : }
12778 : }
12779 : }
12780 : break;
12781 : }
12782 : default:;
12783 : }
12784 : break;
12785 : }
12786 0 : default:;
12787 : }
12788 0 : switch (TREE_CODE (_q101))
12789 : {
12790 0 : case VEC_COND_EXPR:
12791 0 : {
12792 0 : tree _q120 = TREE_OPERAND (_q101, 0);
12793 0 : tree _q121 = TREE_OPERAND (_q101, 1);
12794 0 : tree _q122 = TREE_OPERAND (_q101, 2);
12795 0 : switch (TREE_CODE (_q120))
12796 : {
12797 0 : case LT_EXPR:
12798 0 : {
12799 0 : tree _q130 = TREE_OPERAND (_q120, 0);
12800 0 : tree _q131 = TREE_OPERAND (_q120, 1);
12801 0 : if ((_q130 == _q40 && ! TREE_SIDE_EFFECTS (_q130)) || (operand_equal_p (_q130, _q40, 0) && types_match (_q130, _q40)))
12802 : {
12803 0 : if ((_q131 == _q41 && ! TREE_SIDE_EFFECTS (_q131)) || (operand_equal_p (_q131, _q41, 0) && types_match (_q131, _q41)))
12804 : {
12805 0 : if ((_q121 == _q31 && ! TREE_SIDE_EFFECTS (_q121)) || (operand_equal_p (_q121, _q31, 0) && types_match (_q121, _q31)))
12806 : {
12807 0 : if ((_q122 == _q32 && ! TREE_SIDE_EFFECTS (_q122)) || (operand_equal_p (_q122, _q32, 0) && types_match (_q122, _q32)))
12808 : {
12809 0 : {
12810 0 : tree captures[10] ATTRIBUTE_UNUSED = { _q20, _q30, _q40, _q41, _q31, _q32, _q21, _q101, _q120, _q100 };
12811 0 : tree res = generic_simplify_152 (loc, type, _p0, _p1, captures, GE_EXPR, LT_EXPR);
12812 0 : if (res) return res;
12813 : }
12814 : }
12815 : }
12816 : }
12817 : }
12818 : break;
12819 : }
12820 : default:;
12821 : }
12822 : break;
12823 : }
12824 : default:;
12825 : }
12826 : break;
12827 : }
12828 : default:;
12829 : }
12830 : break;
12831 : }
12832 0 : case GT_EXPR:
12833 0 : {
12834 0 : tree _q40 = TREE_OPERAND (_q30, 0);
12835 0 : tree _q41 = TREE_OPERAND (_q30, 1);
12836 0 : switch (TREE_CODE (_p1))
12837 : {
12838 0 : case BIT_AND_EXPR:
12839 0 : {
12840 0 : tree _q100 = TREE_OPERAND (_p1, 0);
12841 0 : tree _q101 = TREE_OPERAND (_p1, 1);
12842 0 : switch (TREE_CODE (_q100))
12843 : {
12844 0 : case VEC_COND_EXPR:
12845 0 : {
12846 0 : tree _q110 = TREE_OPERAND (_q100, 0);
12847 0 : tree _q111 = TREE_OPERAND (_q100, 1);
12848 0 : tree _q112 = TREE_OPERAND (_q100, 2);
12849 0 : switch (TREE_CODE (_q110))
12850 : {
12851 0 : case LE_EXPR:
12852 0 : {
12853 0 : tree _q120 = TREE_OPERAND (_q110, 0);
12854 0 : tree _q121 = TREE_OPERAND (_q110, 1);
12855 0 : if ((_q120 == _q40 && ! TREE_SIDE_EFFECTS (_q120)) || (operand_equal_p (_q120, _q40, 0) && types_match (_q120, _q40)))
12856 : {
12857 0 : if ((_q121 == _q41 && ! TREE_SIDE_EFFECTS (_q121)) || (operand_equal_p (_q121, _q41, 0) && types_match (_q121, _q41)))
12858 : {
12859 0 : if ((_q111 == _q31 && ! TREE_SIDE_EFFECTS (_q111)) || (operand_equal_p (_q111, _q31, 0) && types_match (_q111, _q31)))
12860 : {
12861 0 : if ((_q112 == _q32 && ! TREE_SIDE_EFFECTS (_q112)) || (operand_equal_p (_q112, _q32, 0) && types_match (_q112, _q32)))
12862 : {
12863 0 : {
12864 0 : tree captures[10] ATTRIBUTE_UNUSED = { _q20, _q30, _q40, _q41, _q31, _q32, _q21, _q100, _q110, _q101 };
12865 0 : tree res = generic_simplify_152 (loc, type, _p0, _p1, captures, GT_EXPR, LE_EXPR);
12866 0 : if (res) return res;
12867 : }
12868 : }
12869 : }
12870 : }
12871 : }
12872 : break;
12873 : }
12874 : default:;
12875 : }
12876 : break;
12877 : }
12878 0 : default:;
12879 : }
12880 0 : switch (TREE_CODE (_q101))
12881 : {
12882 0 : case VEC_COND_EXPR:
12883 0 : {
12884 0 : tree _q120 = TREE_OPERAND (_q101, 0);
12885 0 : tree _q121 = TREE_OPERAND (_q101, 1);
12886 0 : tree _q122 = TREE_OPERAND (_q101, 2);
12887 0 : switch (TREE_CODE (_q120))
12888 : {
12889 0 : case LE_EXPR:
12890 0 : {
12891 0 : tree _q130 = TREE_OPERAND (_q120, 0);
12892 0 : tree _q131 = TREE_OPERAND (_q120, 1);
12893 0 : if ((_q130 == _q40 && ! TREE_SIDE_EFFECTS (_q130)) || (operand_equal_p (_q130, _q40, 0) && types_match (_q130, _q40)))
12894 : {
12895 0 : if ((_q131 == _q41 && ! TREE_SIDE_EFFECTS (_q131)) || (operand_equal_p (_q131, _q41, 0) && types_match (_q131, _q41)))
12896 : {
12897 0 : if ((_q121 == _q31 && ! TREE_SIDE_EFFECTS (_q121)) || (operand_equal_p (_q121, _q31, 0) && types_match (_q121, _q31)))
12898 : {
12899 0 : if ((_q122 == _q32 && ! TREE_SIDE_EFFECTS (_q122)) || (operand_equal_p (_q122, _q32, 0) && types_match (_q122, _q32)))
12900 : {
12901 0 : {
12902 0 : tree captures[10] ATTRIBUTE_UNUSED = { _q20, _q30, _q40, _q41, _q31, _q32, _q21, _q101, _q120, _q100 };
12903 0 : tree res = generic_simplify_152 (loc, type, _p0, _p1, captures, GT_EXPR, LE_EXPR);
12904 0 : if (res) return res;
12905 : }
12906 : }
12907 : }
12908 : }
12909 : }
12910 : break;
12911 : }
12912 : default:;
12913 : }
12914 : break;
12915 : }
12916 : default:;
12917 : }
12918 : break;
12919 : }
12920 : default:;
12921 : }
12922 : break;
12923 : }
12924 0 : case UNORDERED_EXPR:
12925 0 : {
12926 0 : tree _q40 = TREE_OPERAND (_q30, 0);
12927 0 : tree _q41 = TREE_OPERAND (_q30, 1);
12928 0 : switch (TREE_CODE (_p1))
12929 : {
12930 0 : case BIT_AND_EXPR:
12931 0 : {
12932 0 : tree _q100 = TREE_OPERAND (_p1, 0);
12933 0 : tree _q101 = TREE_OPERAND (_p1, 1);
12934 0 : switch (TREE_CODE (_q100))
12935 : {
12936 0 : case VEC_COND_EXPR:
12937 0 : {
12938 0 : tree _q110 = TREE_OPERAND (_q100, 0);
12939 0 : tree _q111 = TREE_OPERAND (_q100, 1);
12940 0 : tree _q112 = TREE_OPERAND (_q100, 2);
12941 0 : switch (TREE_CODE (_q110))
12942 : {
12943 0 : case ORDERED_EXPR:
12944 0 : {
12945 0 : tree _q120 = TREE_OPERAND (_q110, 0);
12946 0 : tree _q121 = TREE_OPERAND (_q110, 1);
12947 0 : if ((_q120 == _q40 && ! TREE_SIDE_EFFECTS (_q120)) || (operand_equal_p (_q120, _q40, 0) && types_match (_q120, _q40)))
12948 : {
12949 0 : if ((_q121 == _q41 && ! TREE_SIDE_EFFECTS (_q121)) || (operand_equal_p (_q121, _q41, 0) && types_match (_q121, _q41)))
12950 : {
12951 0 : if ((_q111 == _q31 && ! TREE_SIDE_EFFECTS (_q111)) || (operand_equal_p (_q111, _q31, 0) && types_match (_q111, _q31)))
12952 : {
12953 0 : if ((_q112 == _q32 && ! TREE_SIDE_EFFECTS (_q112)) || (operand_equal_p (_q112, _q32, 0) && types_match (_q112, _q32)))
12954 : {
12955 0 : {
12956 0 : tree captures[10] ATTRIBUTE_UNUSED = { _q20, _q30, _q40, _q41, _q31, _q32, _q21, _q100, _q110, _q101 };
12957 0 : tree res = generic_simplify_152 (loc, type, _p0, _p1, captures, UNORDERED_EXPR, ORDERED_EXPR);
12958 0 : if (res) return res;
12959 : }
12960 : }
12961 : }
12962 : }
12963 : }
12964 : break;
12965 : }
12966 : default:;
12967 : }
12968 : break;
12969 : }
12970 0 : default:;
12971 : }
12972 0 : switch (TREE_CODE (_q101))
12973 : {
12974 0 : case VEC_COND_EXPR:
12975 0 : {
12976 0 : tree _q120 = TREE_OPERAND (_q101, 0);
12977 0 : tree _q121 = TREE_OPERAND (_q101, 1);
12978 0 : tree _q122 = TREE_OPERAND (_q101, 2);
12979 0 : switch (TREE_CODE (_q120))
12980 : {
12981 0 : case ORDERED_EXPR:
12982 0 : {
12983 0 : tree _q130 = TREE_OPERAND (_q120, 0);
12984 0 : tree _q131 = TREE_OPERAND (_q120, 1);
12985 0 : if ((_q130 == _q40 && ! TREE_SIDE_EFFECTS (_q130)) || (operand_equal_p (_q130, _q40, 0) && types_match (_q130, _q40)))
12986 : {
12987 0 : if ((_q131 == _q41 && ! TREE_SIDE_EFFECTS (_q131)) || (operand_equal_p (_q131, _q41, 0) && types_match (_q131, _q41)))
12988 : {
12989 0 : if ((_q121 == _q31 && ! TREE_SIDE_EFFECTS (_q121)) || (operand_equal_p (_q121, _q31, 0) && types_match (_q121, _q31)))
12990 : {
12991 0 : if ((_q122 == _q32 && ! TREE_SIDE_EFFECTS (_q122)) || (operand_equal_p (_q122, _q32, 0) && types_match (_q122, _q32)))
12992 : {
12993 0 : {
12994 0 : tree captures[10] ATTRIBUTE_UNUSED = { _q20, _q30, _q40, _q41, _q31, _q32, _q21, _q101, _q120, _q100 };
12995 0 : tree res = generic_simplify_152 (loc, type, _p0, _p1, captures, UNORDERED_EXPR, ORDERED_EXPR);
12996 0 : if (res) return res;
12997 : }
12998 : }
12999 : }
13000 : }
13001 : }
13002 : break;
13003 : }
13004 : default:;
13005 : }
13006 : break;
13007 : }
13008 : default:;
13009 : }
13010 : break;
13011 : }
13012 : default:;
13013 : }
13014 : break;
13015 : }
13016 0 : case ORDERED_EXPR:
13017 0 : {
13018 0 : tree _q40 = TREE_OPERAND (_q30, 0);
13019 0 : tree _q41 = TREE_OPERAND (_q30, 1);
13020 0 : switch (TREE_CODE (_p1))
13021 : {
13022 0 : case BIT_AND_EXPR:
13023 0 : {
13024 0 : tree _q100 = TREE_OPERAND (_p1, 0);
13025 0 : tree _q101 = TREE_OPERAND (_p1, 1);
13026 0 : switch (TREE_CODE (_q100))
13027 : {
13028 0 : case VEC_COND_EXPR:
13029 0 : {
13030 0 : tree _q110 = TREE_OPERAND (_q100, 0);
13031 0 : tree _q111 = TREE_OPERAND (_q100, 1);
13032 0 : tree _q112 = TREE_OPERAND (_q100, 2);
13033 0 : switch (TREE_CODE (_q110))
13034 : {
13035 0 : case UNORDERED_EXPR:
13036 0 : {
13037 0 : tree _q120 = TREE_OPERAND (_q110, 0);
13038 0 : tree _q121 = TREE_OPERAND (_q110, 1);
13039 0 : if ((_q120 == _q40 && ! TREE_SIDE_EFFECTS (_q120)) || (operand_equal_p (_q120, _q40, 0) && types_match (_q120, _q40)))
13040 : {
13041 0 : if ((_q121 == _q41 && ! TREE_SIDE_EFFECTS (_q121)) || (operand_equal_p (_q121, _q41, 0) && types_match (_q121, _q41)))
13042 : {
13043 0 : if ((_q111 == _q31 && ! TREE_SIDE_EFFECTS (_q111)) || (operand_equal_p (_q111, _q31, 0) && types_match (_q111, _q31)))
13044 : {
13045 0 : if ((_q112 == _q32 && ! TREE_SIDE_EFFECTS (_q112)) || (operand_equal_p (_q112, _q32, 0) && types_match (_q112, _q32)))
13046 : {
13047 0 : {
13048 0 : tree captures[10] ATTRIBUTE_UNUSED = { _q20, _q30, _q40, _q41, _q31, _q32, _q21, _q100, _q110, _q101 };
13049 0 : tree res = generic_simplify_152 (loc, type, _p0, _p1, captures, ORDERED_EXPR, UNORDERED_EXPR);
13050 0 : if (res) return res;
13051 : }
13052 : }
13053 : }
13054 : }
13055 : }
13056 : break;
13057 : }
13058 : default:;
13059 : }
13060 : break;
13061 : }
13062 0 : default:;
13063 : }
13064 0 : switch (TREE_CODE (_q101))
13065 : {
13066 0 : case VEC_COND_EXPR:
13067 0 : {
13068 0 : tree _q120 = TREE_OPERAND (_q101, 0);
13069 0 : tree _q121 = TREE_OPERAND (_q101, 1);
13070 0 : tree _q122 = TREE_OPERAND (_q101, 2);
13071 0 : switch (TREE_CODE (_q120))
13072 : {
13073 0 : case UNORDERED_EXPR:
13074 0 : {
13075 0 : tree _q130 = TREE_OPERAND (_q120, 0);
13076 0 : tree _q131 = TREE_OPERAND (_q120, 1);
13077 0 : if ((_q130 == _q40 && ! TREE_SIDE_EFFECTS (_q130)) || (operand_equal_p (_q130, _q40, 0) && types_match (_q130, _q40)))
13078 : {
13079 0 : if ((_q131 == _q41 && ! TREE_SIDE_EFFECTS (_q131)) || (operand_equal_p (_q131, _q41, 0) && types_match (_q131, _q41)))
13080 : {
13081 0 : if ((_q121 == _q31 && ! TREE_SIDE_EFFECTS (_q121)) || (operand_equal_p (_q121, _q31, 0) && types_match (_q121, _q31)))
13082 : {
13083 0 : if ((_q122 == _q32 && ! TREE_SIDE_EFFECTS (_q122)) || (operand_equal_p (_q122, _q32, 0) && types_match (_q122, _q32)))
13084 : {
13085 0 : {
13086 0 : tree captures[10] ATTRIBUTE_UNUSED = { _q20, _q30, _q40, _q41, _q31, _q32, _q21, _q101, _q120, _q100 };
13087 0 : tree res = generic_simplify_152 (loc, type, _p0, _p1, captures, ORDERED_EXPR, UNORDERED_EXPR);
13088 0 : if (res) return res;
13089 : }
13090 : }
13091 : }
13092 : }
13093 : }
13094 : break;
13095 : }
13096 : default:;
13097 : }
13098 : break;
13099 : }
13100 : default:;
13101 : }
13102 : break;
13103 : }
13104 : default:;
13105 : }
13106 : break;
13107 : }
13108 0 : case UNLT_EXPR:
13109 0 : {
13110 0 : tree _q40 = TREE_OPERAND (_q30, 0);
13111 0 : tree _q41 = TREE_OPERAND (_q30, 1);
13112 0 : switch (TREE_CODE (_p1))
13113 : {
13114 0 : case BIT_AND_EXPR:
13115 0 : {
13116 0 : tree _q100 = TREE_OPERAND (_p1, 0);
13117 0 : tree _q101 = TREE_OPERAND (_p1, 1);
13118 0 : switch (TREE_CODE (_q100))
13119 : {
13120 0 : case VEC_COND_EXPR:
13121 0 : {
13122 0 : tree _q110 = TREE_OPERAND (_q100, 0);
13123 0 : tree _q111 = TREE_OPERAND (_q100, 1);
13124 0 : tree _q112 = TREE_OPERAND (_q100, 2);
13125 0 : switch (TREE_CODE (_q110))
13126 : {
13127 0 : case GE_EXPR:
13128 0 : {
13129 0 : tree _q120 = TREE_OPERAND (_q110, 0);
13130 0 : tree _q121 = TREE_OPERAND (_q110, 1);
13131 0 : if ((_q120 == _q40 && ! TREE_SIDE_EFFECTS (_q120)) || (operand_equal_p (_q120, _q40, 0) && types_match (_q120, _q40)))
13132 : {
13133 0 : if ((_q121 == _q41 && ! TREE_SIDE_EFFECTS (_q121)) || (operand_equal_p (_q121, _q41, 0) && types_match (_q121, _q41)))
13134 : {
13135 0 : if ((_q111 == _q31 && ! TREE_SIDE_EFFECTS (_q111)) || (operand_equal_p (_q111, _q31, 0) && types_match (_q111, _q31)))
13136 : {
13137 0 : if ((_q112 == _q32 && ! TREE_SIDE_EFFECTS (_q112)) || (operand_equal_p (_q112, _q32, 0) && types_match (_q112, _q32)))
13138 : {
13139 0 : {
13140 0 : tree captures[10] ATTRIBUTE_UNUSED = { _q20, _q30, _q40, _q41, _q31, _q32, _q21, _q100, _q110, _q101 };
13141 0 : tree res = generic_simplify_152 (loc, type, _p0, _p1, captures, UNLT_EXPR, GE_EXPR);
13142 0 : if (res) return res;
13143 : }
13144 : }
13145 : }
13146 : }
13147 : }
13148 : break;
13149 : }
13150 : default:;
13151 : }
13152 : break;
13153 : }
13154 0 : default:;
13155 : }
13156 0 : switch (TREE_CODE (_q101))
13157 : {
13158 0 : case VEC_COND_EXPR:
13159 0 : {
13160 0 : tree _q120 = TREE_OPERAND (_q101, 0);
13161 0 : tree _q121 = TREE_OPERAND (_q101, 1);
13162 0 : tree _q122 = TREE_OPERAND (_q101, 2);
13163 0 : switch (TREE_CODE (_q120))
13164 : {
13165 0 : case GE_EXPR:
13166 0 : {
13167 0 : tree _q130 = TREE_OPERAND (_q120, 0);
13168 0 : tree _q131 = TREE_OPERAND (_q120, 1);
13169 0 : if ((_q130 == _q40 && ! TREE_SIDE_EFFECTS (_q130)) || (operand_equal_p (_q130, _q40, 0) && types_match (_q130, _q40)))
13170 : {
13171 0 : if ((_q131 == _q41 && ! TREE_SIDE_EFFECTS (_q131)) || (operand_equal_p (_q131, _q41, 0) && types_match (_q131, _q41)))
13172 : {
13173 0 : if ((_q121 == _q31 && ! TREE_SIDE_EFFECTS (_q121)) || (operand_equal_p (_q121, _q31, 0) && types_match (_q121, _q31)))
13174 : {
13175 0 : if ((_q122 == _q32 && ! TREE_SIDE_EFFECTS (_q122)) || (operand_equal_p (_q122, _q32, 0) && types_match (_q122, _q32)))
13176 : {
13177 0 : {
13178 0 : tree captures[10] ATTRIBUTE_UNUSED = { _q20, _q30, _q40, _q41, _q31, _q32, _q21, _q101, _q120, _q100 };
13179 0 : tree res = generic_simplify_152 (loc, type, _p0, _p1, captures, UNLT_EXPR, GE_EXPR);
13180 0 : if (res) return res;
13181 : }
13182 : }
13183 : }
13184 : }
13185 : }
13186 : break;
13187 : }
13188 : default:;
13189 : }
13190 : break;
13191 : }
13192 : default:;
13193 : }
13194 : break;
13195 : }
13196 : default:;
13197 : }
13198 : break;
13199 : }
13200 0 : case UNLE_EXPR:
13201 0 : {
13202 0 : tree _q40 = TREE_OPERAND (_q30, 0);
13203 0 : tree _q41 = TREE_OPERAND (_q30, 1);
13204 0 : switch (TREE_CODE (_p1))
13205 : {
13206 0 : case BIT_AND_EXPR:
13207 0 : {
13208 0 : tree _q100 = TREE_OPERAND (_p1, 0);
13209 0 : tree _q101 = TREE_OPERAND (_p1, 1);
13210 0 : switch (TREE_CODE (_q100))
13211 : {
13212 0 : case VEC_COND_EXPR:
13213 0 : {
13214 0 : tree _q110 = TREE_OPERAND (_q100, 0);
13215 0 : tree _q111 = TREE_OPERAND (_q100, 1);
13216 0 : tree _q112 = TREE_OPERAND (_q100, 2);
13217 0 : switch (TREE_CODE (_q110))
13218 : {
13219 0 : case GT_EXPR:
13220 0 : {
13221 0 : tree _q120 = TREE_OPERAND (_q110, 0);
13222 0 : tree _q121 = TREE_OPERAND (_q110, 1);
13223 0 : if ((_q120 == _q40 && ! TREE_SIDE_EFFECTS (_q120)) || (operand_equal_p (_q120, _q40, 0) && types_match (_q120, _q40)))
13224 : {
13225 0 : if ((_q121 == _q41 && ! TREE_SIDE_EFFECTS (_q121)) || (operand_equal_p (_q121, _q41, 0) && types_match (_q121, _q41)))
13226 : {
13227 0 : if ((_q111 == _q31 && ! TREE_SIDE_EFFECTS (_q111)) || (operand_equal_p (_q111, _q31, 0) && types_match (_q111, _q31)))
13228 : {
13229 0 : if ((_q112 == _q32 && ! TREE_SIDE_EFFECTS (_q112)) || (operand_equal_p (_q112, _q32, 0) && types_match (_q112, _q32)))
13230 : {
13231 0 : {
13232 0 : tree captures[10] ATTRIBUTE_UNUSED = { _q20, _q30, _q40, _q41, _q31, _q32, _q21, _q100, _q110, _q101 };
13233 0 : tree res = generic_simplify_152 (loc, type, _p0, _p1, captures, UNLE_EXPR, GT_EXPR);
13234 0 : if (res) return res;
13235 : }
13236 : }
13237 : }
13238 : }
13239 : }
13240 : break;
13241 : }
13242 : default:;
13243 : }
13244 : break;
13245 : }
13246 0 : default:;
13247 : }
13248 0 : switch (TREE_CODE (_q101))
13249 : {
13250 0 : case VEC_COND_EXPR:
13251 0 : {
13252 0 : tree _q120 = TREE_OPERAND (_q101, 0);
13253 0 : tree _q121 = TREE_OPERAND (_q101, 1);
13254 0 : tree _q122 = TREE_OPERAND (_q101, 2);
13255 0 : switch (TREE_CODE (_q120))
13256 : {
13257 0 : case GT_EXPR:
13258 0 : {
13259 0 : tree _q130 = TREE_OPERAND (_q120, 0);
13260 0 : tree _q131 = TREE_OPERAND (_q120, 1);
13261 0 : if ((_q130 == _q40 && ! TREE_SIDE_EFFECTS (_q130)) || (operand_equal_p (_q130, _q40, 0) && types_match (_q130, _q40)))
13262 : {
13263 0 : if ((_q131 == _q41 && ! TREE_SIDE_EFFECTS (_q131)) || (operand_equal_p (_q131, _q41, 0) && types_match (_q131, _q41)))
13264 : {
13265 0 : if ((_q121 == _q31 && ! TREE_SIDE_EFFECTS (_q121)) || (operand_equal_p (_q121, _q31, 0) && types_match (_q121, _q31)))
13266 : {
13267 0 : if ((_q122 == _q32 && ! TREE_SIDE_EFFECTS (_q122)) || (operand_equal_p (_q122, _q32, 0) && types_match (_q122, _q32)))
13268 : {
13269 0 : {
13270 0 : tree captures[10] ATTRIBUTE_UNUSED = { _q20, _q30, _q40, _q41, _q31, _q32, _q21, _q101, _q120, _q100 };
13271 0 : tree res = generic_simplify_152 (loc, type, _p0, _p1, captures, UNLE_EXPR, GT_EXPR);
13272 0 : if (res) return res;
13273 : }
13274 : }
13275 : }
13276 : }
13277 : }
13278 : break;
13279 : }
13280 : default:;
13281 : }
13282 : break;
13283 : }
13284 : default:;
13285 : }
13286 : break;
13287 : }
13288 : default:;
13289 : }
13290 : break;
13291 : }
13292 0 : case UNGT_EXPR:
13293 0 : {
13294 0 : tree _q40 = TREE_OPERAND (_q30, 0);
13295 0 : tree _q41 = TREE_OPERAND (_q30, 1);
13296 0 : switch (TREE_CODE (_p1))
13297 : {
13298 0 : case BIT_AND_EXPR:
13299 0 : {
13300 0 : tree _q100 = TREE_OPERAND (_p1, 0);
13301 0 : tree _q101 = TREE_OPERAND (_p1, 1);
13302 0 : switch (TREE_CODE (_q100))
13303 : {
13304 0 : case VEC_COND_EXPR:
13305 0 : {
13306 0 : tree _q110 = TREE_OPERAND (_q100, 0);
13307 0 : tree _q111 = TREE_OPERAND (_q100, 1);
13308 0 : tree _q112 = TREE_OPERAND (_q100, 2);
13309 0 : switch (TREE_CODE (_q110))
13310 : {
13311 0 : case LE_EXPR:
13312 0 : {
13313 0 : tree _q120 = TREE_OPERAND (_q110, 0);
13314 0 : tree _q121 = TREE_OPERAND (_q110, 1);
13315 0 : if ((_q120 == _q40 && ! TREE_SIDE_EFFECTS (_q120)) || (operand_equal_p (_q120, _q40, 0) && types_match (_q120, _q40)))
13316 : {
13317 0 : if ((_q121 == _q41 && ! TREE_SIDE_EFFECTS (_q121)) || (operand_equal_p (_q121, _q41, 0) && types_match (_q121, _q41)))
13318 : {
13319 0 : if ((_q111 == _q31 && ! TREE_SIDE_EFFECTS (_q111)) || (operand_equal_p (_q111, _q31, 0) && types_match (_q111, _q31)))
13320 : {
13321 0 : if ((_q112 == _q32 && ! TREE_SIDE_EFFECTS (_q112)) || (operand_equal_p (_q112, _q32, 0) && types_match (_q112, _q32)))
13322 : {
13323 0 : {
13324 0 : tree captures[10] ATTRIBUTE_UNUSED = { _q20, _q30, _q40, _q41, _q31, _q32, _q21, _q100, _q110, _q101 };
13325 0 : tree res = generic_simplify_152 (loc, type, _p0, _p1, captures, UNGT_EXPR, LE_EXPR);
13326 0 : if (res) return res;
13327 : }
13328 : }
13329 : }
13330 : }
13331 : }
13332 : break;
13333 : }
13334 : default:;
13335 : }
13336 : break;
13337 : }
13338 0 : default:;
13339 : }
13340 0 : switch (TREE_CODE (_q101))
13341 : {
13342 0 : case VEC_COND_EXPR:
13343 0 : {
13344 0 : tree _q120 = TREE_OPERAND (_q101, 0);
13345 0 : tree _q121 = TREE_OPERAND (_q101, 1);
13346 0 : tree _q122 = TREE_OPERAND (_q101, 2);
13347 0 : switch (TREE_CODE (_q120))
13348 : {
13349 0 : case LE_EXPR:
13350 0 : {
13351 0 : tree _q130 = TREE_OPERAND (_q120, 0);
13352 0 : tree _q131 = TREE_OPERAND (_q120, 1);
13353 0 : if ((_q130 == _q40 && ! TREE_SIDE_EFFECTS (_q130)) || (operand_equal_p (_q130, _q40, 0) && types_match (_q130, _q40)))
13354 : {
13355 0 : if ((_q131 == _q41 && ! TREE_SIDE_EFFECTS (_q131)) || (operand_equal_p (_q131, _q41, 0) && types_match (_q131, _q41)))
13356 : {
13357 0 : if ((_q121 == _q31 && ! TREE_SIDE_EFFECTS (_q121)) || (operand_equal_p (_q121, _q31, 0) && types_match (_q121, _q31)))
13358 : {
13359 0 : if ((_q122 == _q32 && ! TREE_SIDE_EFFECTS (_q122)) || (operand_equal_p (_q122, _q32, 0) && types_match (_q122, _q32)))
13360 : {
13361 0 : {
13362 0 : tree captures[10] ATTRIBUTE_UNUSED = { _q20, _q30, _q40, _q41, _q31, _q32, _q21, _q101, _q120, _q100 };
13363 0 : tree res = generic_simplify_152 (loc, type, _p0, _p1, captures, UNGT_EXPR, LE_EXPR);
13364 0 : if (res) return res;
13365 : }
13366 : }
13367 : }
13368 : }
13369 : }
13370 : break;
13371 : }
13372 : default:;
13373 : }
13374 : break;
13375 : }
13376 : default:;
13377 : }
13378 : break;
13379 : }
13380 : default:;
13381 : }
13382 : break;
13383 : }
13384 0 : case UNGE_EXPR:
13385 0 : {
13386 0 : tree _q40 = TREE_OPERAND (_q30, 0);
13387 0 : tree _q41 = TREE_OPERAND (_q30, 1);
13388 0 : switch (TREE_CODE (_p1))
13389 : {
13390 0 : case BIT_AND_EXPR:
13391 0 : {
13392 0 : tree _q100 = TREE_OPERAND (_p1, 0);
13393 0 : tree _q101 = TREE_OPERAND (_p1, 1);
13394 0 : switch (TREE_CODE (_q100))
13395 : {
13396 0 : case VEC_COND_EXPR:
13397 0 : {
13398 0 : tree _q110 = TREE_OPERAND (_q100, 0);
13399 0 : tree _q111 = TREE_OPERAND (_q100, 1);
13400 0 : tree _q112 = TREE_OPERAND (_q100, 2);
13401 0 : switch (TREE_CODE (_q110))
13402 : {
13403 0 : case LT_EXPR:
13404 0 : {
13405 0 : tree _q120 = TREE_OPERAND (_q110, 0);
13406 0 : tree _q121 = TREE_OPERAND (_q110, 1);
13407 0 : if ((_q120 == _q40 && ! TREE_SIDE_EFFECTS (_q120)) || (operand_equal_p (_q120, _q40, 0) && types_match (_q120, _q40)))
13408 : {
13409 0 : if ((_q121 == _q41 && ! TREE_SIDE_EFFECTS (_q121)) || (operand_equal_p (_q121, _q41, 0) && types_match (_q121, _q41)))
13410 : {
13411 0 : if ((_q111 == _q31 && ! TREE_SIDE_EFFECTS (_q111)) || (operand_equal_p (_q111, _q31, 0) && types_match (_q111, _q31)))
13412 : {
13413 0 : if ((_q112 == _q32 && ! TREE_SIDE_EFFECTS (_q112)) || (operand_equal_p (_q112, _q32, 0) && types_match (_q112, _q32)))
13414 : {
13415 0 : {
13416 0 : tree captures[10] ATTRIBUTE_UNUSED = { _q20, _q30, _q40, _q41, _q31, _q32, _q21, _q100, _q110, _q101 };
13417 0 : tree res = generic_simplify_152 (loc, type, _p0, _p1, captures, UNGE_EXPR, LT_EXPR);
13418 0 : if (res) return res;
13419 : }
13420 : }
13421 : }
13422 : }
13423 : }
13424 : break;
13425 : }
13426 : default:;
13427 : }
13428 : break;
13429 : }
13430 0 : default:;
13431 : }
13432 0 : switch (TREE_CODE (_q101))
13433 : {
13434 0 : case VEC_COND_EXPR:
13435 0 : {
13436 0 : tree _q120 = TREE_OPERAND (_q101, 0);
13437 0 : tree _q121 = TREE_OPERAND (_q101, 1);
13438 0 : tree _q122 = TREE_OPERAND (_q101, 2);
13439 0 : switch (TREE_CODE (_q120))
13440 : {
13441 0 : case LT_EXPR:
13442 0 : {
13443 0 : tree _q130 = TREE_OPERAND (_q120, 0);
13444 0 : tree _q131 = TREE_OPERAND (_q120, 1);
13445 0 : if ((_q130 == _q40 && ! TREE_SIDE_EFFECTS (_q130)) || (operand_equal_p (_q130, _q40, 0) && types_match (_q130, _q40)))
13446 : {
13447 0 : if ((_q131 == _q41 && ! TREE_SIDE_EFFECTS (_q131)) || (operand_equal_p (_q131, _q41, 0) && types_match (_q131, _q41)))
13448 : {
13449 0 : if ((_q121 == _q31 && ! TREE_SIDE_EFFECTS (_q121)) || (operand_equal_p (_q121, _q31, 0) && types_match (_q121, _q31)))
13450 : {
13451 0 : if ((_q122 == _q32 && ! TREE_SIDE_EFFECTS (_q122)) || (operand_equal_p (_q122, _q32, 0) && types_match (_q122, _q32)))
13452 : {
13453 0 : {
13454 0 : tree captures[10] ATTRIBUTE_UNUSED = { _q20, _q30, _q40, _q41, _q31, _q32, _q21, _q101, _q120, _q100 };
13455 0 : tree res = generic_simplify_152 (loc, type, _p0, _p1, captures, UNGE_EXPR, LT_EXPR);
13456 0 : if (res) return res;
13457 : }
13458 : }
13459 : }
13460 : }
13461 : }
13462 : break;
13463 : }
13464 : default:;
13465 : }
13466 : break;
13467 : }
13468 : default:;
13469 : }
13470 : break;
13471 : }
13472 : default:;
13473 : }
13474 : break;
13475 : }
13476 0 : case UNEQ_EXPR:
13477 0 : {
13478 0 : tree _q40 = TREE_OPERAND (_q30, 0);
13479 0 : tree _q41 = TREE_OPERAND (_q30, 1);
13480 0 : switch (TREE_CODE (_p1))
13481 : {
13482 0 : case BIT_AND_EXPR:
13483 0 : {
13484 0 : tree _q100 = TREE_OPERAND (_p1, 0);
13485 0 : tree _q101 = TREE_OPERAND (_p1, 1);
13486 0 : switch (TREE_CODE (_q100))
13487 : {
13488 0 : case VEC_COND_EXPR:
13489 0 : {
13490 0 : tree _q110 = TREE_OPERAND (_q100, 0);
13491 0 : tree _q111 = TREE_OPERAND (_q100, 1);
13492 0 : tree _q112 = TREE_OPERAND (_q100, 2);
13493 0 : switch (TREE_CODE (_q110))
13494 : {
13495 0 : case LTGT_EXPR:
13496 0 : {
13497 0 : tree _q120 = TREE_OPERAND (_q110, 0);
13498 0 : tree _q121 = TREE_OPERAND (_q110, 1);
13499 0 : if ((_q120 == _q40 && ! TREE_SIDE_EFFECTS (_q120)) || (operand_equal_p (_q120, _q40, 0) && types_match (_q120, _q40)))
13500 : {
13501 0 : if ((_q121 == _q41 && ! TREE_SIDE_EFFECTS (_q121)) || (operand_equal_p (_q121, _q41, 0) && types_match (_q121, _q41)))
13502 : {
13503 0 : if ((_q111 == _q31 && ! TREE_SIDE_EFFECTS (_q111)) || (operand_equal_p (_q111, _q31, 0) && types_match (_q111, _q31)))
13504 : {
13505 0 : if ((_q112 == _q32 && ! TREE_SIDE_EFFECTS (_q112)) || (operand_equal_p (_q112, _q32, 0) && types_match (_q112, _q32)))
13506 : {
13507 0 : {
13508 0 : tree captures[10] ATTRIBUTE_UNUSED = { _q20, _q30, _q40, _q41, _q31, _q32, _q21, _q100, _q110, _q101 };
13509 0 : tree res = generic_simplify_152 (loc, type, _p0, _p1, captures, UNEQ_EXPR, LTGT_EXPR);
13510 0 : if (res) return res;
13511 : }
13512 : }
13513 : }
13514 : }
13515 : }
13516 : break;
13517 : }
13518 : default:;
13519 : }
13520 : break;
13521 : }
13522 0 : default:;
13523 : }
13524 0 : switch (TREE_CODE (_q101))
13525 : {
13526 0 : case VEC_COND_EXPR:
13527 0 : {
13528 0 : tree _q120 = TREE_OPERAND (_q101, 0);
13529 0 : tree _q121 = TREE_OPERAND (_q101, 1);
13530 0 : tree _q122 = TREE_OPERAND (_q101, 2);
13531 0 : switch (TREE_CODE (_q120))
13532 : {
13533 0 : case LTGT_EXPR:
13534 0 : {
13535 0 : tree _q130 = TREE_OPERAND (_q120, 0);
13536 0 : tree _q131 = TREE_OPERAND (_q120, 1);
13537 0 : if ((_q130 == _q40 && ! TREE_SIDE_EFFECTS (_q130)) || (operand_equal_p (_q130, _q40, 0) && types_match (_q130, _q40)))
13538 : {
13539 0 : if ((_q131 == _q41 && ! TREE_SIDE_EFFECTS (_q131)) || (operand_equal_p (_q131, _q41, 0) && types_match (_q131, _q41)))
13540 : {
13541 0 : if ((_q121 == _q31 && ! TREE_SIDE_EFFECTS (_q121)) || (operand_equal_p (_q121, _q31, 0) && types_match (_q121, _q31)))
13542 : {
13543 0 : if ((_q122 == _q32 && ! TREE_SIDE_EFFECTS (_q122)) || (operand_equal_p (_q122, _q32, 0) && types_match (_q122, _q32)))
13544 : {
13545 0 : {
13546 0 : tree captures[10] ATTRIBUTE_UNUSED = { _q20, _q30, _q40, _q41, _q31, _q32, _q21, _q101, _q120, _q100 };
13547 0 : tree res = generic_simplify_152 (loc, type, _p0, _p1, captures, UNEQ_EXPR, LTGT_EXPR);
13548 0 : if (res) return res;
13549 : }
13550 : }
13551 : }
13552 : }
13553 : }
13554 : break;
13555 : }
13556 : default:;
13557 : }
13558 : break;
13559 : }
13560 : default:;
13561 : }
13562 : break;
13563 : }
13564 : default:;
13565 : }
13566 : break;
13567 : }
13568 0 : case LTGT_EXPR:
13569 0 : {
13570 0 : tree _q40 = TREE_OPERAND (_q30, 0);
13571 0 : tree _q41 = TREE_OPERAND (_q30, 1);
13572 0 : switch (TREE_CODE (_p1))
13573 : {
13574 0 : case BIT_AND_EXPR:
13575 0 : {
13576 0 : tree _q100 = TREE_OPERAND (_p1, 0);
13577 0 : tree _q101 = TREE_OPERAND (_p1, 1);
13578 0 : switch (TREE_CODE (_q100))
13579 : {
13580 0 : case VEC_COND_EXPR:
13581 0 : {
13582 0 : tree _q110 = TREE_OPERAND (_q100, 0);
13583 0 : tree _q111 = TREE_OPERAND (_q100, 1);
13584 0 : tree _q112 = TREE_OPERAND (_q100, 2);
13585 0 : switch (TREE_CODE (_q110))
13586 : {
13587 0 : case UNEQ_EXPR:
13588 0 : {
13589 0 : tree _q120 = TREE_OPERAND (_q110, 0);
13590 0 : tree _q121 = TREE_OPERAND (_q110, 1);
13591 0 : if ((_q120 == _q40 && ! TREE_SIDE_EFFECTS (_q120)) || (operand_equal_p (_q120, _q40, 0) && types_match (_q120, _q40)))
13592 : {
13593 0 : if ((_q121 == _q41 && ! TREE_SIDE_EFFECTS (_q121)) || (operand_equal_p (_q121, _q41, 0) && types_match (_q121, _q41)))
13594 : {
13595 0 : if ((_q111 == _q31 && ! TREE_SIDE_EFFECTS (_q111)) || (operand_equal_p (_q111, _q31, 0) && types_match (_q111, _q31)))
13596 : {
13597 0 : if ((_q112 == _q32 && ! TREE_SIDE_EFFECTS (_q112)) || (operand_equal_p (_q112, _q32, 0) && types_match (_q112, _q32)))
13598 : {
13599 0 : {
13600 0 : tree captures[10] ATTRIBUTE_UNUSED = { _q20, _q30, _q40, _q41, _q31, _q32, _q21, _q100, _q110, _q101 };
13601 0 : tree res = generic_simplify_152 (loc, type, _p0, _p1, captures, LTGT_EXPR, UNEQ_EXPR);
13602 0 : if (res) return res;
13603 : }
13604 : }
13605 : }
13606 : }
13607 : }
13608 : break;
13609 : }
13610 : default:;
13611 : }
13612 : break;
13613 : }
13614 0 : default:;
13615 : }
13616 0 : switch (TREE_CODE (_q101))
13617 : {
13618 0 : case VEC_COND_EXPR:
13619 0 : {
13620 0 : tree _q120 = TREE_OPERAND (_q101, 0);
13621 0 : tree _q121 = TREE_OPERAND (_q101, 1);
13622 0 : tree _q122 = TREE_OPERAND (_q101, 2);
13623 0 : switch (TREE_CODE (_q120))
13624 : {
13625 0 : case UNEQ_EXPR:
13626 0 : {
13627 0 : tree _q130 = TREE_OPERAND (_q120, 0);
13628 0 : tree _q131 = TREE_OPERAND (_q120, 1);
13629 0 : if ((_q130 == _q40 && ! TREE_SIDE_EFFECTS (_q130)) || (operand_equal_p (_q130, _q40, 0) && types_match (_q130, _q40)))
13630 : {
13631 0 : if ((_q131 == _q41 && ! TREE_SIDE_EFFECTS (_q131)) || (operand_equal_p (_q131, _q41, 0) && types_match (_q131, _q41)))
13632 : {
13633 0 : if ((_q121 == _q31 && ! TREE_SIDE_EFFECTS (_q121)) || (operand_equal_p (_q121, _q31, 0) && types_match (_q121, _q31)))
13634 : {
13635 0 : if ((_q122 == _q32 && ! TREE_SIDE_EFFECTS (_q122)) || (operand_equal_p (_q122, _q32, 0) && types_match (_q122, _q32)))
13636 : {
13637 0 : {
13638 0 : tree captures[10] ATTRIBUTE_UNUSED = { _q20, _q30, _q40, _q41, _q31, _q32, _q21, _q101, _q120, _q100 };
13639 0 : tree res = generic_simplify_152 (loc, type, _p0, _p1, captures, LTGT_EXPR, UNEQ_EXPR);
13640 0 : if (res) return res;
13641 : }
13642 : }
13643 : }
13644 : }
13645 : }
13646 : break;
13647 : }
13648 : default:;
13649 : }
13650 : break;
13651 : }
13652 : default:;
13653 : }
13654 : break;
13655 : }
13656 : default:;
13657 : }
13658 : break;
13659 : }
13660 : default:;
13661 : }
13662 : break;
13663 : }
13664 78964 : default:;
13665 : }
13666 78964 : switch (TREE_CODE (_q21))
13667 : {
13668 0 : case VEC_COND_EXPR:
13669 0 : {
13670 0 : tree _q40 = TREE_OPERAND (_q21, 0);
13671 0 : tree _q41 = TREE_OPERAND (_q21, 1);
13672 0 : tree _q42 = TREE_OPERAND (_q21, 2);
13673 0 : switch (TREE_CODE (_q40))
13674 : {
13675 0 : case LT_EXPR:
13676 0 : {
13677 0 : tree _q50 = TREE_OPERAND (_q40, 0);
13678 0 : tree _q51 = TREE_OPERAND (_q40, 1);
13679 0 : switch (TREE_CODE (_p1))
13680 : {
13681 0 : case BIT_AND_EXPR:
13682 0 : {
13683 0 : tree _q100 = TREE_OPERAND (_p1, 0);
13684 0 : tree _q101 = TREE_OPERAND (_p1, 1);
13685 0 : switch (TREE_CODE (_q100))
13686 : {
13687 0 : case VEC_COND_EXPR:
13688 0 : {
13689 0 : tree _q110 = TREE_OPERAND (_q100, 0);
13690 0 : tree _q111 = TREE_OPERAND (_q100, 1);
13691 0 : tree _q112 = TREE_OPERAND (_q100, 2);
13692 0 : switch (TREE_CODE (_q110))
13693 : {
13694 0 : case GE_EXPR:
13695 0 : {
13696 0 : tree _q120 = TREE_OPERAND (_q110, 0);
13697 0 : tree _q121 = TREE_OPERAND (_q110, 1);
13698 0 : if ((_q120 == _q50 && ! TREE_SIDE_EFFECTS (_q120)) || (operand_equal_p (_q120, _q50, 0) && types_match (_q120, _q50)))
13699 : {
13700 0 : if ((_q121 == _q51 && ! TREE_SIDE_EFFECTS (_q121)) || (operand_equal_p (_q121, _q51, 0) && types_match (_q121, _q51)))
13701 : {
13702 0 : if ((_q111 == _q41 && ! TREE_SIDE_EFFECTS (_q111)) || (operand_equal_p (_q111, _q41, 0) && types_match (_q111, _q41)))
13703 : {
13704 0 : if ((_q112 == _q42 && ! TREE_SIDE_EFFECTS (_q112)) || (operand_equal_p (_q112, _q42, 0) && types_match (_q112, _q42)))
13705 : {
13706 0 : {
13707 0 : tree captures[10] ATTRIBUTE_UNUSED = { _q21, _q40, _q50, _q51, _q41, _q42, _q20, _q100, _q110, _q101 };
13708 0 : tree res = generic_simplify_152 (loc, type, _p0, _p1, captures, LT_EXPR, GE_EXPR);
13709 0 : if (res) return res;
13710 : }
13711 : }
13712 : }
13713 : }
13714 : }
13715 : break;
13716 : }
13717 : default:;
13718 : }
13719 : break;
13720 : }
13721 0 : default:;
13722 : }
13723 0 : switch (TREE_CODE (_q101))
13724 : {
13725 0 : case VEC_COND_EXPR:
13726 0 : {
13727 0 : tree _q120 = TREE_OPERAND (_q101, 0);
13728 0 : tree _q121 = TREE_OPERAND (_q101, 1);
13729 0 : tree _q122 = TREE_OPERAND (_q101, 2);
13730 0 : switch (TREE_CODE (_q120))
13731 : {
13732 0 : case GE_EXPR:
13733 0 : {
13734 0 : tree _q130 = TREE_OPERAND (_q120, 0);
13735 0 : tree _q131 = TREE_OPERAND (_q120, 1);
13736 0 : if ((_q130 == _q50 && ! TREE_SIDE_EFFECTS (_q130)) || (operand_equal_p (_q130, _q50, 0) && types_match (_q130, _q50)))
13737 : {
13738 0 : if ((_q131 == _q51 && ! TREE_SIDE_EFFECTS (_q131)) || (operand_equal_p (_q131, _q51, 0) && types_match (_q131, _q51)))
13739 : {
13740 0 : if ((_q121 == _q41 && ! TREE_SIDE_EFFECTS (_q121)) || (operand_equal_p (_q121, _q41, 0) && types_match (_q121, _q41)))
13741 : {
13742 0 : if ((_q122 == _q42 && ! TREE_SIDE_EFFECTS (_q122)) || (operand_equal_p (_q122, _q42, 0) && types_match (_q122, _q42)))
13743 : {
13744 0 : {
13745 0 : tree captures[10] ATTRIBUTE_UNUSED = { _q21, _q40, _q50, _q51, _q41, _q42, _q20, _q101, _q120, _q100 };
13746 0 : tree res = generic_simplify_152 (loc, type, _p0, _p1, captures, LT_EXPR, GE_EXPR);
13747 0 : if (res) return res;
13748 : }
13749 : }
13750 : }
13751 : }
13752 : }
13753 : break;
13754 : }
13755 : default:;
13756 : }
13757 : break;
13758 : }
13759 : default:;
13760 : }
13761 : break;
13762 : }
13763 : default:;
13764 : }
13765 : break;
13766 : }
13767 0 : case LE_EXPR:
13768 0 : {
13769 0 : tree _q50 = TREE_OPERAND (_q40, 0);
13770 0 : tree _q51 = TREE_OPERAND (_q40, 1);
13771 0 : switch (TREE_CODE (_p1))
13772 : {
13773 0 : case BIT_AND_EXPR:
13774 0 : {
13775 0 : tree _q100 = TREE_OPERAND (_p1, 0);
13776 0 : tree _q101 = TREE_OPERAND (_p1, 1);
13777 0 : switch (TREE_CODE (_q100))
13778 : {
13779 0 : case VEC_COND_EXPR:
13780 0 : {
13781 0 : tree _q110 = TREE_OPERAND (_q100, 0);
13782 0 : tree _q111 = TREE_OPERAND (_q100, 1);
13783 0 : tree _q112 = TREE_OPERAND (_q100, 2);
13784 0 : switch (TREE_CODE (_q110))
13785 : {
13786 0 : case GT_EXPR:
13787 0 : {
13788 0 : tree _q120 = TREE_OPERAND (_q110, 0);
13789 0 : tree _q121 = TREE_OPERAND (_q110, 1);
13790 0 : if ((_q120 == _q50 && ! TREE_SIDE_EFFECTS (_q120)) || (operand_equal_p (_q120, _q50, 0) && types_match (_q120, _q50)))
13791 : {
13792 0 : if ((_q121 == _q51 && ! TREE_SIDE_EFFECTS (_q121)) || (operand_equal_p (_q121, _q51, 0) && types_match (_q121, _q51)))
13793 : {
13794 0 : if ((_q111 == _q41 && ! TREE_SIDE_EFFECTS (_q111)) || (operand_equal_p (_q111, _q41, 0) && types_match (_q111, _q41)))
13795 : {
13796 0 : if ((_q112 == _q42 && ! TREE_SIDE_EFFECTS (_q112)) || (operand_equal_p (_q112, _q42, 0) && types_match (_q112, _q42)))
13797 : {
13798 0 : {
13799 0 : tree captures[10] ATTRIBUTE_UNUSED = { _q21, _q40, _q50, _q51, _q41, _q42, _q20, _q100, _q110, _q101 };
13800 0 : tree res = generic_simplify_152 (loc, type, _p0, _p1, captures, LE_EXPR, GT_EXPR);
13801 0 : if (res) return res;
13802 : }
13803 : }
13804 : }
13805 : }
13806 : }
13807 : break;
13808 : }
13809 : default:;
13810 : }
13811 : break;
13812 : }
13813 0 : default:;
13814 : }
13815 0 : switch (TREE_CODE (_q101))
13816 : {
13817 0 : case VEC_COND_EXPR:
13818 0 : {
13819 0 : tree _q120 = TREE_OPERAND (_q101, 0);
13820 0 : tree _q121 = TREE_OPERAND (_q101, 1);
13821 0 : tree _q122 = TREE_OPERAND (_q101, 2);
13822 0 : switch (TREE_CODE (_q120))
13823 : {
13824 0 : case GT_EXPR:
13825 0 : {
13826 0 : tree _q130 = TREE_OPERAND (_q120, 0);
13827 0 : tree _q131 = TREE_OPERAND (_q120, 1);
13828 0 : if ((_q130 == _q50 && ! TREE_SIDE_EFFECTS (_q130)) || (operand_equal_p (_q130, _q50, 0) && types_match (_q130, _q50)))
13829 : {
13830 0 : if ((_q131 == _q51 && ! TREE_SIDE_EFFECTS (_q131)) || (operand_equal_p (_q131, _q51, 0) && types_match (_q131, _q51)))
13831 : {
13832 0 : if ((_q121 == _q41 && ! TREE_SIDE_EFFECTS (_q121)) || (operand_equal_p (_q121, _q41, 0) && types_match (_q121, _q41)))
13833 : {
13834 0 : if ((_q122 == _q42 && ! TREE_SIDE_EFFECTS (_q122)) || (operand_equal_p (_q122, _q42, 0) && types_match (_q122, _q42)))
13835 : {
13836 0 : {
13837 0 : tree captures[10] ATTRIBUTE_UNUSED = { _q21, _q40, _q50, _q51, _q41, _q42, _q20, _q101, _q120, _q100 };
13838 0 : tree res = generic_simplify_152 (loc, type, _p0, _p1, captures, LE_EXPR, GT_EXPR);
13839 0 : if (res) return res;
13840 : }
13841 : }
13842 : }
13843 : }
13844 : }
13845 : break;
13846 : }
13847 : default:;
13848 : }
13849 : break;
13850 : }
13851 : default:;
13852 : }
13853 : break;
13854 : }
13855 : default:;
13856 : }
13857 : break;
13858 : }
13859 0 : case EQ_EXPR:
13860 0 : {
13861 0 : tree _q50 = TREE_OPERAND (_q40, 0);
13862 0 : tree _q51 = TREE_OPERAND (_q40, 1);
13863 0 : switch (TREE_CODE (_p1))
13864 : {
13865 0 : case BIT_AND_EXPR:
13866 0 : {
13867 0 : tree _q100 = TREE_OPERAND (_p1, 0);
13868 0 : tree _q101 = TREE_OPERAND (_p1, 1);
13869 0 : switch (TREE_CODE (_q100))
13870 : {
13871 0 : case VEC_COND_EXPR:
13872 0 : {
13873 0 : tree _q110 = TREE_OPERAND (_q100, 0);
13874 0 : tree _q111 = TREE_OPERAND (_q100, 1);
13875 0 : tree _q112 = TREE_OPERAND (_q100, 2);
13876 0 : switch (TREE_CODE (_q110))
13877 : {
13878 0 : case NE_EXPR:
13879 0 : {
13880 0 : tree _q120 = TREE_OPERAND (_q110, 0);
13881 0 : tree _q121 = TREE_OPERAND (_q110, 1);
13882 0 : if ((_q120 == _q50 && ! TREE_SIDE_EFFECTS (_q120)) || (operand_equal_p (_q120, _q50, 0) && types_match (_q120, _q50)))
13883 : {
13884 0 : if ((_q121 == _q51 && ! TREE_SIDE_EFFECTS (_q121)) || (operand_equal_p (_q121, _q51, 0) && types_match (_q121, _q51)))
13885 : {
13886 0 : if ((_q111 == _q41 && ! TREE_SIDE_EFFECTS (_q111)) || (operand_equal_p (_q111, _q41, 0) && types_match (_q111, _q41)))
13887 : {
13888 0 : if ((_q112 == _q42 && ! TREE_SIDE_EFFECTS (_q112)) || (operand_equal_p (_q112, _q42, 0) && types_match (_q112, _q42)))
13889 : {
13890 0 : {
13891 0 : tree captures[10] ATTRIBUTE_UNUSED = { _q21, _q40, _q50, _q51, _q41, _q42, _q20, _q100, _q110, _q101 };
13892 0 : tree res = generic_simplify_152 (loc, type, _p0, _p1, captures, EQ_EXPR, NE_EXPR);
13893 0 : if (res) return res;
13894 : }
13895 : }
13896 : }
13897 : }
13898 : }
13899 : break;
13900 : }
13901 : default:;
13902 : }
13903 : break;
13904 : }
13905 0 : default:;
13906 : }
13907 0 : switch (TREE_CODE (_q101))
13908 : {
13909 0 : case VEC_COND_EXPR:
13910 0 : {
13911 0 : tree _q120 = TREE_OPERAND (_q101, 0);
13912 0 : tree _q121 = TREE_OPERAND (_q101, 1);
13913 0 : tree _q122 = TREE_OPERAND (_q101, 2);
13914 0 : switch (TREE_CODE (_q120))
13915 : {
13916 0 : case NE_EXPR:
13917 0 : {
13918 0 : tree _q130 = TREE_OPERAND (_q120, 0);
13919 0 : tree _q131 = TREE_OPERAND (_q120, 1);
13920 0 : if ((_q130 == _q50 && ! TREE_SIDE_EFFECTS (_q130)) || (operand_equal_p (_q130, _q50, 0) && types_match (_q130, _q50)))
13921 : {
13922 0 : if ((_q131 == _q51 && ! TREE_SIDE_EFFECTS (_q131)) || (operand_equal_p (_q131, _q51, 0) && types_match (_q131, _q51)))
13923 : {
13924 0 : if ((_q121 == _q41 && ! TREE_SIDE_EFFECTS (_q121)) || (operand_equal_p (_q121, _q41, 0) && types_match (_q121, _q41)))
13925 : {
13926 0 : if ((_q122 == _q42 && ! TREE_SIDE_EFFECTS (_q122)) || (operand_equal_p (_q122, _q42, 0) && types_match (_q122, _q42)))
13927 : {
13928 0 : {
13929 0 : tree captures[10] ATTRIBUTE_UNUSED = { _q21, _q40, _q50, _q51, _q41, _q42, _q20, _q101, _q120, _q100 };
13930 0 : tree res = generic_simplify_152 (loc, type, _p0, _p1, captures, EQ_EXPR, NE_EXPR);
13931 0 : if (res) return res;
13932 : }
13933 : }
13934 : }
13935 : }
13936 : }
13937 : break;
13938 : }
13939 : default:;
13940 : }
13941 : break;
13942 : }
13943 : default:;
13944 : }
13945 : break;
13946 : }
13947 : default:;
13948 : }
13949 : break;
13950 : }
13951 0 : case NE_EXPR:
13952 0 : {
13953 0 : tree _q50 = TREE_OPERAND (_q40, 0);
13954 0 : tree _q51 = TREE_OPERAND (_q40, 1);
13955 0 : switch (TREE_CODE (_p1))
13956 : {
13957 0 : case BIT_AND_EXPR:
13958 0 : {
13959 0 : tree _q100 = TREE_OPERAND (_p1, 0);
13960 0 : tree _q101 = TREE_OPERAND (_p1, 1);
13961 0 : switch (TREE_CODE (_q100))
13962 : {
13963 0 : case VEC_COND_EXPR:
13964 0 : {
13965 0 : tree _q110 = TREE_OPERAND (_q100, 0);
13966 0 : tree _q111 = TREE_OPERAND (_q100, 1);
13967 0 : tree _q112 = TREE_OPERAND (_q100, 2);
13968 0 : switch (TREE_CODE (_q110))
13969 : {
13970 0 : case EQ_EXPR:
13971 0 : {
13972 0 : tree _q120 = TREE_OPERAND (_q110, 0);
13973 0 : tree _q121 = TREE_OPERAND (_q110, 1);
13974 0 : if ((_q120 == _q50 && ! TREE_SIDE_EFFECTS (_q120)) || (operand_equal_p (_q120, _q50, 0) && types_match (_q120, _q50)))
13975 : {
13976 0 : if ((_q121 == _q51 && ! TREE_SIDE_EFFECTS (_q121)) || (operand_equal_p (_q121, _q51, 0) && types_match (_q121, _q51)))
13977 : {
13978 0 : if ((_q111 == _q41 && ! TREE_SIDE_EFFECTS (_q111)) || (operand_equal_p (_q111, _q41, 0) && types_match (_q111, _q41)))
13979 : {
13980 0 : if ((_q112 == _q42 && ! TREE_SIDE_EFFECTS (_q112)) || (operand_equal_p (_q112, _q42, 0) && types_match (_q112, _q42)))
13981 : {
13982 0 : {
13983 0 : tree captures[10] ATTRIBUTE_UNUSED = { _q21, _q40, _q50, _q51, _q41, _q42, _q20, _q100, _q110, _q101 };
13984 0 : tree res = generic_simplify_152 (loc, type, _p0, _p1, captures, NE_EXPR, EQ_EXPR);
13985 0 : if (res) return res;
13986 : }
13987 : }
13988 : }
13989 : }
13990 : }
13991 : break;
13992 : }
13993 : default:;
13994 : }
13995 : break;
13996 : }
13997 0 : default:;
13998 : }
13999 0 : switch (TREE_CODE (_q101))
14000 : {
14001 0 : case VEC_COND_EXPR:
14002 0 : {
14003 0 : tree _q120 = TREE_OPERAND (_q101, 0);
14004 0 : tree _q121 = TREE_OPERAND (_q101, 1);
14005 0 : tree _q122 = TREE_OPERAND (_q101, 2);
14006 0 : switch (TREE_CODE (_q120))
14007 : {
14008 0 : case EQ_EXPR:
14009 0 : {
14010 0 : tree _q130 = TREE_OPERAND (_q120, 0);
14011 0 : tree _q131 = TREE_OPERAND (_q120, 1);
14012 0 : if ((_q130 == _q50 && ! TREE_SIDE_EFFECTS (_q130)) || (operand_equal_p (_q130, _q50, 0) && types_match (_q130, _q50)))
14013 : {
14014 0 : if ((_q131 == _q51 && ! TREE_SIDE_EFFECTS (_q131)) || (operand_equal_p (_q131, _q51, 0) && types_match (_q131, _q51)))
14015 : {
14016 0 : if ((_q121 == _q41 && ! TREE_SIDE_EFFECTS (_q121)) || (operand_equal_p (_q121, _q41, 0) && types_match (_q121, _q41)))
14017 : {
14018 0 : if ((_q122 == _q42 && ! TREE_SIDE_EFFECTS (_q122)) || (operand_equal_p (_q122, _q42, 0) && types_match (_q122, _q42)))
14019 : {
14020 0 : {
14021 0 : tree captures[10] ATTRIBUTE_UNUSED = { _q21, _q40, _q50, _q51, _q41, _q42, _q20, _q101, _q120, _q100 };
14022 0 : tree res = generic_simplify_152 (loc, type, _p0, _p1, captures, NE_EXPR, EQ_EXPR);
14023 0 : if (res) return res;
14024 : }
14025 : }
14026 : }
14027 : }
14028 : }
14029 : break;
14030 : }
14031 : default:;
14032 : }
14033 : break;
14034 : }
14035 : default:;
14036 : }
14037 : break;
14038 : }
14039 : default:;
14040 : }
14041 : break;
14042 : }
14043 0 : case GE_EXPR:
14044 0 : {
14045 0 : tree _q50 = TREE_OPERAND (_q40, 0);
14046 0 : tree _q51 = TREE_OPERAND (_q40, 1);
14047 0 : switch (TREE_CODE (_p1))
14048 : {
14049 0 : case BIT_AND_EXPR:
14050 0 : {
14051 0 : tree _q100 = TREE_OPERAND (_p1, 0);
14052 0 : tree _q101 = TREE_OPERAND (_p1, 1);
14053 0 : switch (TREE_CODE (_q100))
14054 : {
14055 0 : case VEC_COND_EXPR:
14056 0 : {
14057 0 : tree _q110 = TREE_OPERAND (_q100, 0);
14058 0 : tree _q111 = TREE_OPERAND (_q100, 1);
14059 0 : tree _q112 = TREE_OPERAND (_q100, 2);
14060 0 : switch (TREE_CODE (_q110))
14061 : {
14062 0 : case LT_EXPR:
14063 0 : {
14064 0 : tree _q120 = TREE_OPERAND (_q110, 0);
14065 0 : tree _q121 = TREE_OPERAND (_q110, 1);
14066 0 : if ((_q120 == _q50 && ! TREE_SIDE_EFFECTS (_q120)) || (operand_equal_p (_q120, _q50, 0) && types_match (_q120, _q50)))
14067 : {
14068 0 : if ((_q121 == _q51 && ! TREE_SIDE_EFFECTS (_q121)) || (operand_equal_p (_q121, _q51, 0) && types_match (_q121, _q51)))
14069 : {
14070 0 : if ((_q111 == _q41 && ! TREE_SIDE_EFFECTS (_q111)) || (operand_equal_p (_q111, _q41, 0) && types_match (_q111, _q41)))
14071 : {
14072 0 : if ((_q112 == _q42 && ! TREE_SIDE_EFFECTS (_q112)) || (operand_equal_p (_q112, _q42, 0) && types_match (_q112, _q42)))
14073 : {
14074 0 : {
14075 0 : tree captures[10] ATTRIBUTE_UNUSED = { _q21, _q40, _q50, _q51, _q41, _q42, _q20, _q100, _q110, _q101 };
14076 0 : tree res = generic_simplify_152 (loc, type, _p0, _p1, captures, GE_EXPR, LT_EXPR);
14077 0 : if (res) return res;
14078 : }
14079 : }
14080 : }
14081 : }
14082 : }
14083 : break;
14084 : }
14085 : default:;
14086 : }
14087 : break;
14088 : }
14089 0 : default:;
14090 : }
14091 0 : switch (TREE_CODE (_q101))
14092 : {
14093 0 : case VEC_COND_EXPR:
14094 0 : {
14095 0 : tree _q120 = TREE_OPERAND (_q101, 0);
14096 0 : tree _q121 = TREE_OPERAND (_q101, 1);
14097 0 : tree _q122 = TREE_OPERAND (_q101, 2);
14098 0 : switch (TREE_CODE (_q120))
14099 : {
14100 0 : case LT_EXPR:
14101 0 : {
14102 0 : tree _q130 = TREE_OPERAND (_q120, 0);
14103 0 : tree _q131 = TREE_OPERAND (_q120, 1);
14104 0 : if ((_q130 == _q50 && ! TREE_SIDE_EFFECTS (_q130)) || (operand_equal_p (_q130, _q50, 0) && types_match (_q130, _q50)))
14105 : {
14106 0 : if ((_q131 == _q51 && ! TREE_SIDE_EFFECTS (_q131)) || (operand_equal_p (_q131, _q51, 0) && types_match (_q131, _q51)))
14107 : {
14108 0 : if ((_q121 == _q41 && ! TREE_SIDE_EFFECTS (_q121)) || (operand_equal_p (_q121, _q41, 0) && types_match (_q121, _q41)))
14109 : {
14110 0 : if ((_q122 == _q42 && ! TREE_SIDE_EFFECTS (_q122)) || (operand_equal_p (_q122, _q42, 0) && types_match (_q122, _q42)))
14111 : {
14112 0 : {
14113 0 : tree captures[10] ATTRIBUTE_UNUSED = { _q21, _q40, _q50, _q51, _q41, _q42, _q20, _q101, _q120, _q100 };
14114 0 : tree res = generic_simplify_152 (loc, type, _p0, _p1, captures, GE_EXPR, LT_EXPR);
14115 0 : if (res) return res;
14116 : }
14117 : }
14118 : }
14119 : }
14120 : }
14121 : break;
14122 : }
14123 : default:;
14124 : }
14125 : break;
14126 : }
14127 : default:;
14128 : }
14129 : break;
14130 : }
14131 : default:;
14132 : }
14133 : break;
14134 : }
14135 0 : case GT_EXPR:
14136 0 : {
14137 0 : tree _q50 = TREE_OPERAND (_q40, 0);
14138 0 : tree _q51 = TREE_OPERAND (_q40, 1);
14139 0 : switch (TREE_CODE (_p1))
14140 : {
14141 0 : case BIT_AND_EXPR:
14142 0 : {
14143 0 : tree _q100 = TREE_OPERAND (_p1, 0);
14144 0 : tree _q101 = TREE_OPERAND (_p1, 1);
14145 0 : switch (TREE_CODE (_q100))
14146 : {
14147 0 : case VEC_COND_EXPR:
14148 0 : {
14149 0 : tree _q110 = TREE_OPERAND (_q100, 0);
14150 0 : tree _q111 = TREE_OPERAND (_q100, 1);
14151 0 : tree _q112 = TREE_OPERAND (_q100, 2);
14152 0 : switch (TREE_CODE (_q110))
14153 : {
14154 0 : case LE_EXPR:
14155 0 : {
14156 0 : tree _q120 = TREE_OPERAND (_q110, 0);
14157 0 : tree _q121 = TREE_OPERAND (_q110, 1);
14158 0 : if ((_q120 == _q50 && ! TREE_SIDE_EFFECTS (_q120)) || (operand_equal_p (_q120, _q50, 0) && types_match (_q120, _q50)))
14159 : {
14160 0 : if ((_q121 == _q51 && ! TREE_SIDE_EFFECTS (_q121)) || (operand_equal_p (_q121, _q51, 0) && types_match (_q121, _q51)))
14161 : {
14162 0 : if ((_q111 == _q41 && ! TREE_SIDE_EFFECTS (_q111)) || (operand_equal_p (_q111, _q41, 0) && types_match (_q111, _q41)))
14163 : {
14164 0 : if ((_q112 == _q42 && ! TREE_SIDE_EFFECTS (_q112)) || (operand_equal_p (_q112, _q42, 0) && types_match (_q112, _q42)))
14165 : {
14166 0 : {
14167 0 : tree captures[10] ATTRIBUTE_UNUSED = { _q21, _q40, _q50, _q51, _q41, _q42, _q20, _q100, _q110, _q101 };
14168 0 : tree res = generic_simplify_152 (loc, type, _p0, _p1, captures, GT_EXPR, LE_EXPR);
14169 0 : if (res) return res;
14170 : }
14171 : }
14172 : }
14173 : }
14174 : }
14175 : break;
14176 : }
14177 : default:;
14178 : }
14179 : break;
14180 : }
14181 0 : default:;
14182 : }
14183 0 : switch (TREE_CODE (_q101))
14184 : {
14185 0 : case VEC_COND_EXPR:
14186 0 : {
14187 0 : tree _q120 = TREE_OPERAND (_q101, 0);
14188 0 : tree _q121 = TREE_OPERAND (_q101, 1);
14189 0 : tree _q122 = TREE_OPERAND (_q101, 2);
14190 0 : switch (TREE_CODE (_q120))
14191 : {
14192 0 : case LE_EXPR:
14193 0 : {
14194 0 : tree _q130 = TREE_OPERAND (_q120, 0);
14195 0 : tree _q131 = TREE_OPERAND (_q120, 1);
14196 0 : if ((_q130 == _q50 && ! TREE_SIDE_EFFECTS (_q130)) || (operand_equal_p (_q130, _q50, 0) && types_match (_q130, _q50)))
14197 : {
14198 0 : if ((_q131 == _q51 && ! TREE_SIDE_EFFECTS (_q131)) || (operand_equal_p (_q131, _q51, 0) && types_match (_q131, _q51)))
14199 : {
14200 0 : if ((_q121 == _q41 && ! TREE_SIDE_EFFECTS (_q121)) || (operand_equal_p (_q121, _q41, 0) && types_match (_q121, _q41)))
14201 : {
14202 0 : if ((_q122 == _q42 && ! TREE_SIDE_EFFECTS (_q122)) || (operand_equal_p (_q122, _q42, 0) && types_match (_q122, _q42)))
14203 : {
14204 0 : {
14205 0 : tree captures[10] ATTRIBUTE_UNUSED = { _q21, _q40, _q50, _q51, _q41, _q42, _q20, _q101, _q120, _q100 };
14206 0 : tree res = generic_simplify_152 (loc, type, _p0, _p1, captures, GT_EXPR, LE_EXPR);
14207 0 : if (res) return res;
14208 : }
14209 : }
14210 : }
14211 : }
14212 : }
14213 : break;
14214 : }
14215 : default:;
14216 : }
14217 : break;
14218 : }
14219 : default:;
14220 : }
14221 : break;
14222 : }
14223 : default:;
14224 : }
14225 : break;
14226 : }
14227 0 : case UNORDERED_EXPR:
14228 0 : {
14229 0 : tree _q50 = TREE_OPERAND (_q40, 0);
14230 0 : tree _q51 = TREE_OPERAND (_q40, 1);
14231 0 : switch (TREE_CODE (_p1))
14232 : {
14233 0 : case BIT_AND_EXPR:
14234 0 : {
14235 0 : tree _q100 = TREE_OPERAND (_p1, 0);
14236 0 : tree _q101 = TREE_OPERAND (_p1, 1);
14237 0 : switch (TREE_CODE (_q100))
14238 : {
14239 0 : case VEC_COND_EXPR:
14240 0 : {
14241 0 : tree _q110 = TREE_OPERAND (_q100, 0);
14242 0 : tree _q111 = TREE_OPERAND (_q100, 1);
14243 0 : tree _q112 = TREE_OPERAND (_q100, 2);
14244 0 : switch (TREE_CODE (_q110))
14245 : {
14246 0 : case ORDERED_EXPR:
14247 0 : {
14248 0 : tree _q120 = TREE_OPERAND (_q110, 0);
14249 0 : tree _q121 = TREE_OPERAND (_q110, 1);
14250 0 : if ((_q120 == _q50 && ! TREE_SIDE_EFFECTS (_q120)) || (operand_equal_p (_q120, _q50, 0) && types_match (_q120, _q50)))
14251 : {
14252 0 : if ((_q121 == _q51 && ! TREE_SIDE_EFFECTS (_q121)) || (operand_equal_p (_q121, _q51, 0) && types_match (_q121, _q51)))
14253 : {
14254 0 : if ((_q111 == _q41 && ! TREE_SIDE_EFFECTS (_q111)) || (operand_equal_p (_q111, _q41, 0) && types_match (_q111, _q41)))
14255 : {
14256 0 : if ((_q112 == _q42 && ! TREE_SIDE_EFFECTS (_q112)) || (operand_equal_p (_q112, _q42, 0) && types_match (_q112, _q42)))
14257 : {
14258 0 : {
14259 0 : tree captures[10] ATTRIBUTE_UNUSED = { _q21, _q40, _q50, _q51, _q41, _q42, _q20, _q100, _q110, _q101 };
14260 0 : tree res = generic_simplify_152 (loc, type, _p0, _p1, captures, UNORDERED_EXPR, ORDERED_EXPR);
14261 0 : if (res) return res;
14262 : }
14263 : }
14264 : }
14265 : }
14266 : }
14267 : break;
14268 : }
14269 : default:;
14270 : }
14271 : break;
14272 : }
14273 0 : default:;
14274 : }
14275 0 : switch (TREE_CODE (_q101))
14276 : {
14277 0 : case VEC_COND_EXPR:
14278 0 : {
14279 0 : tree _q120 = TREE_OPERAND (_q101, 0);
14280 0 : tree _q121 = TREE_OPERAND (_q101, 1);
14281 0 : tree _q122 = TREE_OPERAND (_q101, 2);
14282 0 : switch (TREE_CODE (_q120))
14283 : {
14284 0 : case ORDERED_EXPR:
14285 0 : {
14286 0 : tree _q130 = TREE_OPERAND (_q120, 0);
14287 0 : tree _q131 = TREE_OPERAND (_q120, 1);
14288 0 : if ((_q130 == _q50 && ! TREE_SIDE_EFFECTS (_q130)) || (operand_equal_p (_q130, _q50, 0) && types_match (_q130, _q50)))
14289 : {
14290 0 : if ((_q131 == _q51 && ! TREE_SIDE_EFFECTS (_q131)) || (operand_equal_p (_q131, _q51, 0) && types_match (_q131, _q51)))
14291 : {
14292 0 : if ((_q121 == _q41 && ! TREE_SIDE_EFFECTS (_q121)) || (operand_equal_p (_q121, _q41, 0) && types_match (_q121, _q41)))
14293 : {
14294 0 : if ((_q122 == _q42 && ! TREE_SIDE_EFFECTS (_q122)) || (operand_equal_p (_q122, _q42, 0) && types_match (_q122, _q42)))
14295 : {
14296 0 : {
14297 0 : tree captures[10] ATTRIBUTE_UNUSED = { _q21, _q40, _q50, _q51, _q41, _q42, _q20, _q101, _q120, _q100 };
14298 0 : tree res = generic_simplify_152 (loc, type, _p0, _p1, captures, UNORDERED_EXPR, ORDERED_EXPR);
14299 0 : if (res) return res;
14300 : }
14301 : }
14302 : }
14303 : }
14304 : }
14305 : break;
14306 : }
14307 : default:;
14308 : }
14309 : break;
14310 : }
14311 : default:;
14312 : }
14313 : break;
14314 : }
14315 : default:;
14316 : }
14317 : break;
14318 : }
14319 0 : case ORDERED_EXPR:
14320 0 : {
14321 0 : tree _q50 = TREE_OPERAND (_q40, 0);
14322 0 : tree _q51 = TREE_OPERAND (_q40, 1);
14323 0 : switch (TREE_CODE (_p1))
14324 : {
14325 0 : case BIT_AND_EXPR:
14326 0 : {
14327 0 : tree _q100 = TREE_OPERAND (_p1, 0);
14328 0 : tree _q101 = TREE_OPERAND (_p1, 1);
14329 0 : switch (TREE_CODE (_q100))
14330 : {
14331 0 : case VEC_COND_EXPR:
14332 0 : {
14333 0 : tree _q110 = TREE_OPERAND (_q100, 0);
14334 0 : tree _q111 = TREE_OPERAND (_q100, 1);
14335 0 : tree _q112 = TREE_OPERAND (_q100, 2);
14336 0 : switch (TREE_CODE (_q110))
14337 : {
14338 0 : case UNORDERED_EXPR:
14339 0 : {
14340 0 : tree _q120 = TREE_OPERAND (_q110, 0);
14341 0 : tree _q121 = TREE_OPERAND (_q110, 1);
14342 0 : if ((_q120 == _q50 && ! TREE_SIDE_EFFECTS (_q120)) || (operand_equal_p (_q120, _q50, 0) && types_match (_q120, _q50)))
14343 : {
14344 0 : if ((_q121 == _q51 && ! TREE_SIDE_EFFECTS (_q121)) || (operand_equal_p (_q121, _q51, 0) && types_match (_q121, _q51)))
14345 : {
14346 0 : if ((_q111 == _q41 && ! TREE_SIDE_EFFECTS (_q111)) || (operand_equal_p (_q111, _q41, 0) && types_match (_q111, _q41)))
14347 : {
14348 0 : if ((_q112 == _q42 && ! TREE_SIDE_EFFECTS (_q112)) || (operand_equal_p (_q112, _q42, 0) && types_match (_q112, _q42)))
14349 : {
14350 0 : {
14351 0 : tree captures[10] ATTRIBUTE_UNUSED = { _q21, _q40, _q50, _q51, _q41, _q42, _q20, _q100, _q110, _q101 };
14352 0 : tree res = generic_simplify_152 (loc, type, _p0, _p1, captures, ORDERED_EXPR, UNORDERED_EXPR);
14353 0 : if (res) return res;
14354 : }
14355 : }
14356 : }
14357 : }
14358 : }
14359 : break;
14360 : }
14361 : default:;
14362 : }
14363 : break;
14364 : }
14365 0 : default:;
14366 : }
14367 0 : switch (TREE_CODE (_q101))
14368 : {
14369 0 : case VEC_COND_EXPR:
14370 0 : {
14371 0 : tree _q120 = TREE_OPERAND (_q101, 0);
14372 0 : tree _q121 = TREE_OPERAND (_q101, 1);
14373 0 : tree _q122 = TREE_OPERAND (_q101, 2);
14374 0 : switch (TREE_CODE (_q120))
14375 : {
14376 0 : case UNORDERED_EXPR:
14377 0 : {
14378 0 : tree _q130 = TREE_OPERAND (_q120, 0);
14379 0 : tree _q131 = TREE_OPERAND (_q120, 1);
14380 0 : if ((_q130 == _q50 && ! TREE_SIDE_EFFECTS (_q130)) || (operand_equal_p (_q130, _q50, 0) && types_match (_q130, _q50)))
14381 : {
14382 0 : if ((_q131 == _q51 && ! TREE_SIDE_EFFECTS (_q131)) || (operand_equal_p (_q131, _q51, 0) && types_match (_q131, _q51)))
14383 : {
14384 0 : if ((_q121 == _q41 && ! TREE_SIDE_EFFECTS (_q121)) || (operand_equal_p (_q121, _q41, 0) && types_match (_q121, _q41)))
14385 : {
14386 0 : if ((_q122 == _q42 && ! TREE_SIDE_EFFECTS (_q122)) || (operand_equal_p (_q122, _q42, 0) && types_match (_q122, _q42)))
14387 : {
14388 0 : {
14389 0 : tree captures[10] ATTRIBUTE_UNUSED = { _q21, _q40, _q50, _q51, _q41, _q42, _q20, _q101, _q120, _q100 };
14390 0 : tree res = generic_simplify_152 (loc, type, _p0, _p1, captures, ORDERED_EXPR, UNORDERED_EXPR);
14391 0 : if (res) return res;
14392 : }
14393 : }
14394 : }
14395 : }
14396 : }
14397 : break;
14398 : }
14399 : default:;
14400 : }
14401 : break;
14402 : }
14403 : default:;
14404 : }
14405 : break;
14406 : }
14407 : default:;
14408 : }
14409 : break;
14410 : }
14411 0 : case UNLT_EXPR:
14412 0 : {
14413 0 : tree _q50 = TREE_OPERAND (_q40, 0);
14414 0 : tree _q51 = TREE_OPERAND (_q40, 1);
14415 0 : switch (TREE_CODE (_p1))
14416 : {
14417 0 : case BIT_AND_EXPR:
14418 0 : {
14419 0 : tree _q100 = TREE_OPERAND (_p1, 0);
14420 0 : tree _q101 = TREE_OPERAND (_p1, 1);
14421 0 : switch (TREE_CODE (_q100))
14422 : {
14423 0 : case VEC_COND_EXPR:
14424 0 : {
14425 0 : tree _q110 = TREE_OPERAND (_q100, 0);
14426 0 : tree _q111 = TREE_OPERAND (_q100, 1);
14427 0 : tree _q112 = TREE_OPERAND (_q100, 2);
14428 0 : switch (TREE_CODE (_q110))
14429 : {
14430 0 : case GE_EXPR:
14431 0 : {
14432 0 : tree _q120 = TREE_OPERAND (_q110, 0);
14433 0 : tree _q121 = TREE_OPERAND (_q110, 1);
14434 0 : if ((_q120 == _q50 && ! TREE_SIDE_EFFECTS (_q120)) || (operand_equal_p (_q120, _q50, 0) && types_match (_q120, _q50)))
14435 : {
14436 0 : if ((_q121 == _q51 && ! TREE_SIDE_EFFECTS (_q121)) || (operand_equal_p (_q121, _q51, 0) && types_match (_q121, _q51)))
14437 : {
14438 0 : if ((_q111 == _q41 && ! TREE_SIDE_EFFECTS (_q111)) || (operand_equal_p (_q111, _q41, 0) && types_match (_q111, _q41)))
14439 : {
14440 0 : if ((_q112 == _q42 && ! TREE_SIDE_EFFECTS (_q112)) || (operand_equal_p (_q112, _q42, 0) && types_match (_q112, _q42)))
14441 : {
14442 0 : {
14443 0 : tree captures[10] ATTRIBUTE_UNUSED = { _q21, _q40, _q50, _q51, _q41, _q42, _q20, _q100, _q110, _q101 };
14444 0 : tree res = generic_simplify_152 (loc, type, _p0, _p1, captures, UNLT_EXPR, GE_EXPR);
14445 0 : if (res) return res;
14446 : }
14447 : }
14448 : }
14449 : }
14450 : }
14451 : break;
14452 : }
14453 : default:;
14454 : }
14455 : break;
14456 : }
14457 0 : default:;
14458 : }
14459 0 : switch (TREE_CODE (_q101))
14460 : {
14461 0 : case VEC_COND_EXPR:
14462 0 : {
14463 0 : tree _q120 = TREE_OPERAND (_q101, 0);
14464 0 : tree _q121 = TREE_OPERAND (_q101, 1);
14465 0 : tree _q122 = TREE_OPERAND (_q101, 2);
14466 0 : switch (TREE_CODE (_q120))
14467 : {
14468 0 : case GE_EXPR:
14469 0 : {
14470 0 : tree _q130 = TREE_OPERAND (_q120, 0);
14471 0 : tree _q131 = TREE_OPERAND (_q120, 1);
14472 0 : if ((_q130 == _q50 && ! TREE_SIDE_EFFECTS (_q130)) || (operand_equal_p (_q130, _q50, 0) && types_match (_q130, _q50)))
14473 : {
14474 0 : if ((_q131 == _q51 && ! TREE_SIDE_EFFECTS (_q131)) || (operand_equal_p (_q131, _q51, 0) && types_match (_q131, _q51)))
14475 : {
14476 0 : if ((_q121 == _q41 && ! TREE_SIDE_EFFECTS (_q121)) || (operand_equal_p (_q121, _q41, 0) && types_match (_q121, _q41)))
14477 : {
14478 0 : if ((_q122 == _q42 && ! TREE_SIDE_EFFECTS (_q122)) || (operand_equal_p (_q122, _q42, 0) && types_match (_q122, _q42)))
14479 : {
14480 0 : {
14481 0 : tree captures[10] ATTRIBUTE_UNUSED = { _q21, _q40, _q50, _q51, _q41, _q42, _q20, _q101, _q120, _q100 };
14482 0 : tree res = generic_simplify_152 (loc, type, _p0, _p1, captures, UNLT_EXPR, GE_EXPR);
14483 0 : if (res) return res;
14484 : }
14485 : }
14486 : }
14487 : }
14488 : }
14489 : break;
14490 : }
14491 : default:;
14492 : }
14493 : break;
14494 : }
14495 : default:;
14496 : }
14497 : break;
14498 : }
14499 : default:;
14500 : }
14501 : break;
14502 : }
14503 0 : case UNLE_EXPR:
14504 0 : {
14505 0 : tree _q50 = TREE_OPERAND (_q40, 0);
14506 0 : tree _q51 = TREE_OPERAND (_q40, 1);
14507 0 : switch (TREE_CODE (_p1))
14508 : {
14509 0 : case BIT_AND_EXPR:
14510 0 : {
14511 0 : tree _q100 = TREE_OPERAND (_p1, 0);
14512 0 : tree _q101 = TREE_OPERAND (_p1, 1);
14513 0 : switch (TREE_CODE (_q100))
14514 : {
14515 0 : case VEC_COND_EXPR:
14516 0 : {
14517 0 : tree _q110 = TREE_OPERAND (_q100, 0);
14518 0 : tree _q111 = TREE_OPERAND (_q100, 1);
14519 0 : tree _q112 = TREE_OPERAND (_q100, 2);
14520 0 : switch (TREE_CODE (_q110))
14521 : {
14522 0 : case GT_EXPR:
14523 0 : {
14524 0 : tree _q120 = TREE_OPERAND (_q110, 0);
14525 0 : tree _q121 = TREE_OPERAND (_q110, 1);
14526 0 : if ((_q120 == _q50 && ! TREE_SIDE_EFFECTS (_q120)) || (operand_equal_p (_q120, _q50, 0) && types_match (_q120, _q50)))
14527 : {
14528 0 : if ((_q121 == _q51 && ! TREE_SIDE_EFFECTS (_q121)) || (operand_equal_p (_q121, _q51, 0) && types_match (_q121, _q51)))
14529 : {
14530 0 : if ((_q111 == _q41 && ! TREE_SIDE_EFFECTS (_q111)) || (operand_equal_p (_q111, _q41, 0) && types_match (_q111, _q41)))
14531 : {
14532 0 : if ((_q112 == _q42 && ! TREE_SIDE_EFFECTS (_q112)) || (operand_equal_p (_q112, _q42, 0) && types_match (_q112, _q42)))
14533 : {
14534 0 : {
14535 0 : tree captures[10] ATTRIBUTE_UNUSED = { _q21, _q40, _q50, _q51, _q41, _q42, _q20, _q100, _q110, _q101 };
14536 0 : tree res = generic_simplify_152 (loc, type, _p0, _p1, captures, UNLE_EXPR, GT_EXPR);
14537 0 : if (res) return res;
14538 : }
14539 : }
14540 : }
14541 : }
14542 : }
14543 : break;
14544 : }
14545 : default:;
14546 : }
14547 : break;
14548 : }
14549 0 : default:;
14550 : }
14551 0 : switch (TREE_CODE (_q101))
14552 : {
14553 0 : case VEC_COND_EXPR:
14554 0 : {
14555 0 : tree _q120 = TREE_OPERAND (_q101, 0);
14556 0 : tree _q121 = TREE_OPERAND (_q101, 1);
14557 0 : tree _q122 = TREE_OPERAND (_q101, 2);
14558 0 : switch (TREE_CODE (_q120))
14559 : {
14560 0 : case GT_EXPR:
14561 0 : {
14562 0 : tree _q130 = TREE_OPERAND (_q120, 0);
14563 0 : tree _q131 = TREE_OPERAND (_q120, 1);
14564 0 : if ((_q130 == _q50 && ! TREE_SIDE_EFFECTS (_q130)) || (operand_equal_p (_q130, _q50, 0) && types_match (_q130, _q50)))
14565 : {
14566 0 : if ((_q131 == _q51 && ! TREE_SIDE_EFFECTS (_q131)) || (operand_equal_p (_q131, _q51, 0) && types_match (_q131, _q51)))
14567 : {
14568 0 : if ((_q121 == _q41 && ! TREE_SIDE_EFFECTS (_q121)) || (operand_equal_p (_q121, _q41, 0) && types_match (_q121, _q41)))
14569 : {
14570 0 : if ((_q122 == _q42 && ! TREE_SIDE_EFFECTS (_q122)) || (operand_equal_p (_q122, _q42, 0) && types_match (_q122, _q42)))
14571 : {
14572 0 : {
14573 0 : tree captures[10] ATTRIBUTE_UNUSED = { _q21, _q40, _q50, _q51, _q41, _q42, _q20, _q101, _q120, _q100 };
14574 0 : tree res = generic_simplify_152 (loc, type, _p0, _p1, captures, UNLE_EXPR, GT_EXPR);
14575 0 : if (res) return res;
14576 : }
14577 : }
14578 : }
14579 : }
14580 : }
14581 : break;
14582 : }
14583 : default:;
14584 : }
14585 : break;
14586 : }
14587 : default:;
14588 : }
14589 : break;
14590 : }
14591 : default:;
14592 : }
14593 : break;
14594 : }
14595 0 : case UNGT_EXPR:
14596 0 : {
14597 0 : tree _q50 = TREE_OPERAND (_q40, 0);
14598 0 : tree _q51 = TREE_OPERAND (_q40, 1);
14599 0 : switch (TREE_CODE (_p1))
14600 : {
14601 0 : case BIT_AND_EXPR:
14602 0 : {
14603 0 : tree _q100 = TREE_OPERAND (_p1, 0);
14604 0 : tree _q101 = TREE_OPERAND (_p1, 1);
14605 0 : switch (TREE_CODE (_q100))
14606 : {
14607 0 : case VEC_COND_EXPR:
14608 0 : {
14609 0 : tree _q110 = TREE_OPERAND (_q100, 0);
14610 0 : tree _q111 = TREE_OPERAND (_q100, 1);
14611 0 : tree _q112 = TREE_OPERAND (_q100, 2);
14612 0 : switch (TREE_CODE (_q110))
14613 : {
14614 0 : case LE_EXPR:
14615 0 : {
14616 0 : tree _q120 = TREE_OPERAND (_q110, 0);
14617 0 : tree _q121 = TREE_OPERAND (_q110, 1);
14618 0 : if ((_q120 == _q50 && ! TREE_SIDE_EFFECTS (_q120)) || (operand_equal_p (_q120, _q50, 0) && types_match (_q120, _q50)))
14619 : {
14620 0 : if ((_q121 == _q51 && ! TREE_SIDE_EFFECTS (_q121)) || (operand_equal_p (_q121, _q51, 0) && types_match (_q121, _q51)))
14621 : {
14622 0 : if ((_q111 == _q41 && ! TREE_SIDE_EFFECTS (_q111)) || (operand_equal_p (_q111, _q41, 0) && types_match (_q111, _q41)))
14623 : {
14624 0 : if ((_q112 == _q42 && ! TREE_SIDE_EFFECTS (_q112)) || (operand_equal_p (_q112, _q42, 0) && types_match (_q112, _q42)))
14625 : {
14626 0 : {
14627 0 : tree captures[10] ATTRIBUTE_UNUSED = { _q21, _q40, _q50, _q51, _q41, _q42, _q20, _q100, _q110, _q101 };
14628 0 : tree res = generic_simplify_152 (loc, type, _p0, _p1, captures, UNGT_EXPR, LE_EXPR);
14629 0 : if (res) return res;
14630 : }
14631 : }
14632 : }
14633 : }
14634 : }
14635 : break;
14636 : }
14637 : default:;
14638 : }
14639 : break;
14640 : }
14641 0 : default:;
14642 : }
14643 0 : switch (TREE_CODE (_q101))
14644 : {
14645 0 : case VEC_COND_EXPR:
14646 0 : {
14647 0 : tree _q120 = TREE_OPERAND (_q101, 0);
14648 0 : tree _q121 = TREE_OPERAND (_q101, 1);
14649 0 : tree _q122 = TREE_OPERAND (_q101, 2);
14650 0 : switch (TREE_CODE (_q120))
14651 : {
14652 0 : case LE_EXPR:
14653 0 : {
14654 0 : tree _q130 = TREE_OPERAND (_q120, 0);
14655 0 : tree _q131 = TREE_OPERAND (_q120, 1);
14656 0 : if ((_q130 == _q50 && ! TREE_SIDE_EFFECTS (_q130)) || (operand_equal_p (_q130, _q50, 0) && types_match (_q130, _q50)))
14657 : {
14658 0 : if ((_q131 == _q51 && ! TREE_SIDE_EFFECTS (_q131)) || (operand_equal_p (_q131, _q51, 0) && types_match (_q131, _q51)))
14659 : {
14660 0 : if ((_q121 == _q41 && ! TREE_SIDE_EFFECTS (_q121)) || (operand_equal_p (_q121, _q41, 0) && types_match (_q121, _q41)))
14661 : {
14662 0 : if ((_q122 == _q42 && ! TREE_SIDE_EFFECTS (_q122)) || (operand_equal_p (_q122, _q42, 0) && types_match (_q122, _q42)))
14663 : {
14664 0 : {
14665 0 : tree captures[10] ATTRIBUTE_UNUSED = { _q21, _q40, _q50, _q51, _q41, _q42, _q20, _q101, _q120, _q100 };
14666 0 : tree res = generic_simplify_152 (loc, type, _p0, _p1, captures, UNGT_EXPR, LE_EXPR);
14667 0 : if (res) return res;
14668 : }
14669 : }
14670 : }
14671 : }
14672 : }
14673 : break;
14674 : }
14675 : default:;
14676 : }
14677 : break;
14678 : }
14679 : default:;
14680 : }
14681 : break;
14682 : }
14683 : default:;
14684 : }
14685 : break;
14686 : }
14687 0 : case UNGE_EXPR:
14688 0 : {
14689 0 : tree _q50 = TREE_OPERAND (_q40, 0);
14690 0 : tree _q51 = TREE_OPERAND (_q40, 1);
14691 0 : switch (TREE_CODE (_p1))
14692 : {
14693 0 : case BIT_AND_EXPR:
14694 0 : {
14695 0 : tree _q100 = TREE_OPERAND (_p1, 0);
14696 0 : tree _q101 = TREE_OPERAND (_p1, 1);
14697 0 : switch (TREE_CODE (_q100))
14698 : {
14699 0 : case VEC_COND_EXPR:
14700 0 : {
14701 0 : tree _q110 = TREE_OPERAND (_q100, 0);
14702 0 : tree _q111 = TREE_OPERAND (_q100, 1);
14703 0 : tree _q112 = TREE_OPERAND (_q100, 2);
14704 0 : switch (TREE_CODE (_q110))
14705 : {
14706 0 : case LT_EXPR:
14707 0 : {
14708 0 : tree _q120 = TREE_OPERAND (_q110, 0);
14709 0 : tree _q121 = TREE_OPERAND (_q110, 1);
14710 0 : if ((_q120 == _q50 && ! TREE_SIDE_EFFECTS (_q120)) || (operand_equal_p (_q120, _q50, 0) && types_match (_q120, _q50)))
14711 : {
14712 0 : if ((_q121 == _q51 && ! TREE_SIDE_EFFECTS (_q121)) || (operand_equal_p (_q121, _q51, 0) && types_match (_q121, _q51)))
14713 : {
14714 0 : if ((_q111 == _q41 && ! TREE_SIDE_EFFECTS (_q111)) || (operand_equal_p (_q111, _q41, 0) && types_match (_q111, _q41)))
14715 : {
14716 0 : if ((_q112 == _q42 && ! TREE_SIDE_EFFECTS (_q112)) || (operand_equal_p (_q112, _q42, 0) && types_match (_q112, _q42)))
14717 : {
14718 0 : {
14719 0 : tree captures[10] ATTRIBUTE_UNUSED = { _q21, _q40, _q50, _q51, _q41, _q42, _q20, _q100, _q110, _q101 };
14720 0 : tree res = generic_simplify_152 (loc, type, _p0, _p1, captures, UNGE_EXPR, LT_EXPR);
14721 0 : if (res) return res;
14722 : }
14723 : }
14724 : }
14725 : }
14726 : }
14727 : break;
14728 : }
14729 : default:;
14730 : }
14731 : break;
14732 : }
14733 0 : default:;
14734 : }
14735 0 : switch (TREE_CODE (_q101))
14736 : {
14737 0 : case VEC_COND_EXPR:
14738 0 : {
14739 0 : tree _q120 = TREE_OPERAND (_q101, 0);
14740 0 : tree _q121 = TREE_OPERAND (_q101, 1);
14741 0 : tree _q122 = TREE_OPERAND (_q101, 2);
14742 0 : switch (TREE_CODE (_q120))
14743 : {
14744 0 : case LT_EXPR:
14745 0 : {
14746 0 : tree _q130 = TREE_OPERAND (_q120, 0);
14747 0 : tree _q131 = TREE_OPERAND (_q120, 1);
14748 0 : if ((_q130 == _q50 && ! TREE_SIDE_EFFECTS (_q130)) || (operand_equal_p (_q130, _q50, 0) && types_match (_q130, _q50)))
14749 : {
14750 0 : if ((_q131 == _q51 && ! TREE_SIDE_EFFECTS (_q131)) || (operand_equal_p (_q131, _q51, 0) && types_match (_q131, _q51)))
14751 : {
14752 0 : if ((_q121 == _q41 && ! TREE_SIDE_EFFECTS (_q121)) || (operand_equal_p (_q121, _q41, 0) && types_match (_q121, _q41)))
14753 : {
14754 0 : if ((_q122 == _q42 && ! TREE_SIDE_EFFECTS (_q122)) || (operand_equal_p (_q122, _q42, 0) && types_match (_q122, _q42)))
14755 : {
14756 0 : {
14757 0 : tree captures[10] ATTRIBUTE_UNUSED = { _q21, _q40, _q50, _q51, _q41, _q42, _q20, _q101, _q120, _q100 };
14758 0 : tree res = generic_simplify_152 (loc, type, _p0, _p1, captures, UNGE_EXPR, LT_EXPR);
14759 0 : if (res) return res;
14760 : }
14761 : }
14762 : }
14763 : }
14764 : }
14765 : break;
14766 : }
14767 : default:;
14768 : }
14769 : break;
14770 : }
14771 : default:;
14772 : }
14773 : break;
14774 : }
14775 : default:;
14776 : }
14777 : break;
14778 : }
14779 0 : case UNEQ_EXPR:
14780 0 : {
14781 0 : tree _q50 = TREE_OPERAND (_q40, 0);
14782 0 : tree _q51 = TREE_OPERAND (_q40, 1);
14783 0 : switch (TREE_CODE (_p1))
14784 : {
14785 0 : case BIT_AND_EXPR:
14786 0 : {
14787 0 : tree _q100 = TREE_OPERAND (_p1, 0);
14788 0 : tree _q101 = TREE_OPERAND (_p1, 1);
14789 0 : switch (TREE_CODE (_q100))
14790 : {
14791 0 : case VEC_COND_EXPR:
14792 0 : {
14793 0 : tree _q110 = TREE_OPERAND (_q100, 0);
14794 0 : tree _q111 = TREE_OPERAND (_q100, 1);
14795 0 : tree _q112 = TREE_OPERAND (_q100, 2);
14796 0 : switch (TREE_CODE (_q110))
14797 : {
14798 0 : case LTGT_EXPR:
14799 0 : {
14800 0 : tree _q120 = TREE_OPERAND (_q110, 0);
14801 0 : tree _q121 = TREE_OPERAND (_q110, 1);
14802 0 : if ((_q120 == _q50 && ! TREE_SIDE_EFFECTS (_q120)) || (operand_equal_p (_q120, _q50, 0) && types_match (_q120, _q50)))
14803 : {
14804 0 : if ((_q121 == _q51 && ! TREE_SIDE_EFFECTS (_q121)) || (operand_equal_p (_q121, _q51, 0) && types_match (_q121, _q51)))
14805 : {
14806 0 : if ((_q111 == _q41 && ! TREE_SIDE_EFFECTS (_q111)) || (operand_equal_p (_q111, _q41, 0) && types_match (_q111, _q41)))
14807 : {
14808 0 : if ((_q112 == _q42 && ! TREE_SIDE_EFFECTS (_q112)) || (operand_equal_p (_q112, _q42, 0) && types_match (_q112, _q42)))
14809 : {
14810 0 : {
14811 0 : tree captures[10] ATTRIBUTE_UNUSED = { _q21, _q40, _q50, _q51, _q41, _q42, _q20, _q100, _q110, _q101 };
14812 0 : tree res = generic_simplify_152 (loc, type, _p0, _p1, captures, UNEQ_EXPR, LTGT_EXPR);
14813 0 : if (res) return res;
14814 : }
14815 : }
14816 : }
14817 : }
14818 : }
14819 : break;
14820 : }
14821 : default:;
14822 : }
14823 : break;
14824 : }
14825 0 : default:;
14826 : }
14827 0 : switch (TREE_CODE (_q101))
14828 : {
14829 0 : case VEC_COND_EXPR:
14830 0 : {
14831 0 : tree _q120 = TREE_OPERAND (_q101, 0);
14832 0 : tree _q121 = TREE_OPERAND (_q101, 1);
14833 0 : tree _q122 = TREE_OPERAND (_q101, 2);
14834 0 : switch (TREE_CODE (_q120))
14835 : {
14836 0 : case LTGT_EXPR:
14837 0 : {
14838 0 : tree _q130 = TREE_OPERAND (_q120, 0);
14839 0 : tree _q131 = TREE_OPERAND (_q120, 1);
14840 0 : if ((_q130 == _q50 && ! TREE_SIDE_EFFECTS (_q130)) || (operand_equal_p (_q130, _q50, 0) && types_match (_q130, _q50)))
14841 : {
14842 0 : if ((_q131 == _q51 && ! TREE_SIDE_EFFECTS (_q131)) || (operand_equal_p (_q131, _q51, 0) && types_match (_q131, _q51)))
14843 : {
14844 0 : if ((_q121 == _q41 && ! TREE_SIDE_EFFECTS (_q121)) || (operand_equal_p (_q121, _q41, 0) && types_match (_q121, _q41)))
14845 : {
14846 0 : if ((_q122 == _q42 && ! TREE_SIDE_EFFECTS (_q122)) || (operand_equal_p (_q122, _q42, 0) && types_match (_q122, _q42)))
14847 : {
14848 0 : {
14849 0 : tree captures[10] ATTRIBUTE_UNUSED = { _q21, _q40, _q50, _q51, _q41, _q42, _q20, _q101, _q120, _q100 };
14850 0 : tree res = generic_simplify_152 (loc, type, _p0, _p1, captures, UNEQ_EXPR, LTGT_EXPR);
14851 0 : if (res) return res;
14852 : }
14853 : }
14854 : }
14855 : }
14856 : }
14857 : break;
14858 : }
14859 : default:;
14860 : }
14861 : break;
14862 : }
14863 : default:;
14864 : }
14865 : break;
14866 : }
14867 : default:;
14868 : }
14869 : break;
14870 : }
14871 0 : case LTGT_EXPR:
14872 0 : {
14873 0 : tree _q50 = TREE_OPERAND (_q40, 0);
14874 0 : tree _q51 = TREE_OPERAND (_q40, 1);
14875 0 : switch (TREE_CODE (_p1))
14876 : {
14877 0 : case BIT_AND_EXPR:
14878 0 : {
14879 0 : tree _q100 = TREE_OPERAND (_p1, 0);
14880 0 : tree _q101 = TREE_OPERAND (_p1, 1);
14881 0 : switch (TREE_CODE (_q100))
14882 : {
14883 0 : case VEC_COND_EXPR:
14884 0 : {
14885 0 : tree _q110 = TREE_OPERAND (_q100, 0);
14886 0 : tree _q111 = TREE_OPERAND (_q100, 1);
14887 0 : tree _q112 = TREE_OPERAND (_q100, 2);
14888 0 : switch (TREE_CODE (_q110))
14889 : {
14890 0 : case UNEQ_EXPR:
14891 0 : {
14892 0 : tree _q120 = TREE_OPERAND (_q110, 0);
14893 0 : tree _q121 = TREE_OPERAND (_q110, 1);
14894 0 : if ((_q120 == _q50 && ! TREE_SIDE_EFFECTS (_q120)) || (operand_equal_p (_q120, _q50, 0) && types_match (_q120, _q50)))
14895 : {
14896 0 : if ((_q121 == _q51 && ! TREE_SIDE_EFFECTS (_q121)) || (operand_equal_p (_q121, _q51, 0) && types_match (_q121, _q51)))
14897 : {
14898 0 : if ((_q111 == _q41 && ! TREE_SIDE_EFFECTS (_q111)) || (operand_equal_p (_q111, _q41, 0) && types_match (_q111, _q41)))
14899 : {
14900 0 : if ((_q112 == _q42 && ! TREE_SIDE_EFFECTS (_q112)) || (operand_equal_p (_q112, _q42, 0) && types_match (_q112, _q42)))
14901 : {
14902 0 : {
14903 0 : tree captures[10] ATTRIBUTE_UNUSED = { _q21, _q40, _q50, _q51, _q41, _q42, _q20, _q100, _q110, _q101 };
14904 0 : tree res = generic_simplify_152 (loc, type, _p0, _p1, captures, LTGT_EXPR, UNEQ_EXPR);
14905 0 : if (res) return res;
14906 : }
14907 : }
14908 : }
14909 : }
14910 : }
14911 : break;
14912 : }
14913 : default:;
14914 : }
14915 : break;
14916 : }
14917 0 : default:;
14918 : }
14919 0 : switch (TREE_CODE (_q101))
14920 : {
14921 0 : case VEC_COND_EXPR:
14922 0 : {
14923 0 : tree _q120 = TREE_OPERAND (_q101, 0);
14924 0 : tree _q121 = TREE_OPERAND (_q101, 1);
14925 0 : tree _q122 = TREE_OPERAND (_q101, 2);
14926 0 : switch (TREE_CODE (_q120))
14927 : {
14928 0 : case UNEQ_EXPR:
14929 0 : {
14930 0 : tree _q130 = TREE_OPERAND (_q120, 0);
14931 0 : tree _q131 = TREE_OPERAND (_q120, 1);
14932 0 : if ((_q130 == _q50 && ! TREE_SIDE_EFFECTS (_q130)) || (operand_equal_p (_q130, _q50, 0) && types_match (_q130, _q50)))
14933 : {
14934 0 : if ((_q131 == _q51 && ! TREE_SIDE_EFFECTS (_q131)) || (operand_equal_p (_q131, _q51, 0) && types_match (_q131, _q51)))
14935 : {
14936 0 : if ((_q121 == _q41 && ! TREE_SIDE_EFFECTS (_q121)) || (operand_equal_p (_q121, _q41, 0) && types_match (_q121, _q41)))
14937 : {
14938 0 : if ((_q122 == _q42 && ! TREE_SIDE_EFFECTS (_q122)) || (operand_equal_p (_q122, _q42, 0) && types_match (_q122, _q42)))
14939 : {
14940 0 : {
14941 0 : tree captures[10] ATTRIBUTE_UNUSED = { _q21, _q40, _q50, _q51, _q41, _q42, _q20, _q101, _q120, _q100 };
14942 0 : tree res = generic_simplify_152 (loc, type, _p0, _p1, captures, LTGT_EXPR, UNEQ_EXPR);
14943 0 : if (res) return res;
14944 : }
14945 : }
14946 : }
14947 : }
14948 : }
14949 : break;
14950 : }
14951 : default:;
14952 : }
14953 : break;
14954 : }
14955 : default:;
14956 : }
14957 : break;
14958 : }
14959 : default:;
14960 : }
14961 : break;
14962 : }
14963 : default:;
14964 : }
14965 : break;
14966 : }
14967 74 : case BIT_NOT_EXPR:
14968 74 : {
14969 74 : tree _q40 = TREE_OPERAND (_q21, 0);
14970 74 : switch (TREE_CODE (_p1))
14971 : {
14972 54 : case BIT_AND_EXPR:
14973 54 : {
14974 54 : tree _q60 = TREE_OPERAND (_p1, 0);
14975 54 : tree _q61 = TREE_OPERAND (_p1, 1);
14976 54 : if ((_q61 == _q40 && ! TREE_SIDE_EFFECTS (_q61)) || (operand_equal_p (_q61, _q40, 0) && types_match (_q61, _q40)))
14977 : {
14978 18 : {
14979 18 : tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q20, _q40, _p1, _q60 };
14980 18 : tree res = generic_simplify_153 (loc, type, _p0, _p1, captures);
14981 18 : if (res) return res;
14982 : }
14983 : }
14984 54 : if ((_q60 == _q40 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q40, 0) && types_match (_q60, _q40)))
14985 : {
14986 36 : {
14987 36 : tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q20, _q40, _p1, _q61 };
14988 36 : tree res = generic_simplify_153 (loc, type, _p0, _p1, captures);
14989 36 : if (res) return res;
14990 : }
14991 : }
14992 : break;
14993 : }
14994 : default:;
14995 : }
14996 : break;
14997 : }
14998 78964 : default:;
14999 : }
15000 78964 : switch (TREE_CODE (_q20))
15001 : {
15002 344 : case BIT_NOT_EXPR:
15003 344 : {
15004 344 : tree _q30 = TREE_OPERAND (_q20, 0);
15005 344 : switch (TREE_CODE (_p1))
15006 : {
15007 142 : case BIT_AND_EXPR:
15008 142 : {
15009 142 : tree _q60 = TREE_OPERAND (_p1, 0);
15010 142 : tree _q61 = TREE_OPERAND (_p1, 1);
15011 142 : if ((_q61 == _q30 && ! TREE_SIDE_EFFECTS (_q61)) || (operand_equal_p (_q61, _q30, 0) && types_match (_q61, _q30)))
15012 : {
15013 22 : {
15014 22 : tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q21, _q30, _p1, _q60 };
15015 22 : tree res = generic_simplify_153 (loc, type, _p0, _p1, captures);
15016 22 : if (res) return res;
15017 : }
15018 : }
15019 142 : if ((_q60 == _q30 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q30, 0) && types_match (_q60, _q30)))
15020 : {
15021 0 : {
15022 0 : tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q21, _q30, _p1, _q61 };
15023 0 : tree res = generic_simplify_153 (loc, type, _p0, _p1, captures);
15024 0 : if (res) return res;
15025 : }
15026 : }
15027 : break;
15028 : }
15029 : default:;
15030 : }
15031 : break;
15032 : }
15033 78964 : default:;
15034 : }
15035 78964 : switch (TREE_CODE (_p1))
15036 : {
15037 17231 : case BIT_AND_EXPR:
15038 17231 : {
15039 17231 : tree _q50 = TREE_OPERAND (_p1, 0);
15040 17231 : tree _q51 = TREE_OPERAND (_p1, 1);
15041 17231 : switch (TREE_CODE (_q51))
15042 : {
15043 195 : case BIT_NOT_EXPR:
15044 195 : {
15045 195 : tree _q70 = TREE_OPERAND (_q51, 0);
15046 195 : if ((_q70 == _q21 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q21, 0) && types_match (_q70, _q21)))
15047 : {
15048 33 : {
15049 33 : tree captures[5] ATTRIBUTE_UNUSED = { _p1, _q50, _q21, _p0, _q20 };
15050 33 : tree res = generic_simplify_153 (loc, type, _p0, _p1, captures);
15051 33 : if (res) return res;
15052 : }
15053 : }
15054 195 : if ((_q70 == _q20 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q20, 0) && types_match (_q70, _q20)))
15055 : {
15056 0 : {
15057 0 : tree captures[5] ATTRIBUTE_UNUSED = { _p1, _q50, _q20, _p0, _q21 };
15058 0 : tree res = generic_simplify_153 (loc, type, _p0, _p1, captures);
15059 0 : if (res) return res;
15060 : }
15061 : }
15062 : break;
15063 : }
15064 17231 : default:;
15065 : }
15066 17231 : switch (TREE_CODE (_q50))
15067 : {
15068 311 : case BIT_NOT_EXPR:
15069 311 : {
15070 311 : tree _q60 = TREE_OPERAND (_q50, 0);
15071 311 : if ((_q60 == _q21 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q21, 0) && types_match (_q60, _q21)))
15072 : {
15073 112 : {
15074 112 : tree captures[5] ATTRIBUTE_UNUSED = { _p1, _q51, _q21, _p0, _q20 };
15075 112 : tree res = generic_simplify_153 (loc, type, _p0, _p1, captures);
15076 112 : if (res) return res;
15077 : }
15078 : }
15079 311 : if ((_q60 == _q20 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q20, 0) && types_match (_q60, _q20)))
15080 : {
15081 79 : {
15082 79 : tree captures[5] ATTRIBUTE_UNUSED = { _p1, _q51, _q20, _p0, _q21 };
15083 79 : tree res = generic_simplify_153 (loc, type, _p0, _p1, captures);
15084 79 : if (res) return res;
15085 : }
15086 : }
15087 : break;
15088 : }
15089 : default:;
15090 : }
15091 : break;
15092 : }
15093 : default:;
15094 : }
15095 : break;
15096 : }
15097 9693 : case BIT_XOR_EXPR:
15098 9693 : {
15099 9693 : tree _q20 = TREE_OPERAND (_p0, 0);
15100 9693 : tree _q21 = TREE_OPERAND (_p0, 1);
15101 9693 : switch (TREE_CODE (_q21))
15102 : {
15103 68 : case INTEGER_CST:
15104 68 : {
15105 68 : switch (TREE_CODE (_p1))
15106 : {
15107 33 : case INTEGER_CST:
15108 33 : {
15109 33 : {
15110 33 : tree captures[4] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1 };
15111 33 : tree res = generic_simplify_43 (loc, type, _p0, _p1, captures, BIT_XOR_EXPR, BIT_IOR_EXPR);
15112 33 : if (res) return res;
15113 : }
15114 33 : break;
15115 : }
15116 : default:;
15117 : }
15118 : break;
15119 : }
15120 : default:;
15121 : }
15122 : break;
15123 : }
15124 136 : case GT_EXPR:
15125 136 : {
15126 136 : tree _q20 = TREE_OPERAND (_p0, 0);
15127 136 : tree _q21 = TREE_OPERAND (_p0, 1);
15128 136 : switch (TREE_CODE (_p1))
15129 : {
15130 8 : case NE_EXPR:
15131 8 : {
15132 8 : tree _q50 = TREE_OPERAND (_p1, 0);
15133 8 : tree _q51 = TREE_OPERAND (_p1, 1);
15134 8 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
15135 : {
15136 8 : if (tree_min_value (_q51))
15137 : {
15138 4 : {
15139 4 : tree captures[3] ATTRIBUTE_UNUSED = { _q20, _q21, _p1 };
15140 4 : tree res = generic_simplify_154 (loc, type, _p0, _p1, captures);
15141 4 : if (res) return res;
15142 : }
15143 : }
15144 : }
15145 4 : if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
15146 : {
15147 0 : if (tree_max_value (_q51))
15148 : {
15149 0 : {
15150 0 : tree captures[3] ATTRIBUTE_UNUSED = { _q21, _q20, _p1 };
15151 0 : tree res = generic_simplify_155 (loc, type, _p0, _p1, captures);
15152 0 : if (res) return res;
15153 : }
15154 : }
15155 : }
15156 : break;
15157 : }
15158 12 : case EQ_EXPR:
15159 12 : {
15160 12 : tree _q50 = TREE_OPERAND (_p1, 0);
15161 12 : tree _q51 = TREE_OPERAND (_p1, 1);
15162 12 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
15163 : {
15164 0 : if (tree_min_value (_q51))
15165 : {
15166 0 : {
15167 0 : tree captures[4] ATTRIBUTE_UNUSED = { _p1, _q20, _p0, _q21 };
15168 0 : tree res = generic_simplify_156 (loc, type, _p0, _p1, captures);
15169 0 : if (res) return res;
15170 : }
15171 : }
15172 : }
15173 : break;
15174 : }
15175 132 : default:;
15176 : }
15177 132 : switch (TREE_CODE (_q20))
15178 : {
15179 0 : CASE_CONVERT:
15180 0 : {
15181 0 : tree _q30 = TREE_OPERAND (_q20, 0);
15182 0 : switch (TREE_CODE (_p1))
15183 : {
15184 0 : case EQ_EXPR:
15185 0 : {
15186 0 : tree _q60 = TREE_OPERAND (_p1, 0);
15187 0 : tree _q61 = TREE_OPERAND (_p1, 1);
15188 0 : if ((_q60 == _q30 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q30, 0) && types_match (_q60, _q30)))
15189 : {
15190 0 : {
15191 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q30, _q61, _p0, _q20, _q21 };
15192 0 : tree res = generic_simplify_157 (loc, type, _p0, _p1, captures, GT_EXPR, EQ_EXPR);
15193 0 : if (res) return res;
15194 : }
15195 : }
15196 0 : if ((_q61 == _q30 && ! TREE_SIDE_EFFECTS (_q61)) || (operand_equal_p (_q61, _q30, 0) && types_match (_q61, _q30)))
15197 : {
15198 0 : {
15199 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q30, _q60, _p0, _q20, _q21 };
15200 0 : tree res = generic_simplify_157 (loc, type, _p0, _p1, captures, GT_EXPR, EQ_EXPR);
15201 0 : if (res) return res;
15202 : }
15203 : }
15204 : break;
15205 : }
15206 0 : case NE_EXPR:
15207 0 : {
15208 0 : tree _q60 = TREE_OPERAND (_p1, 0);
15209 0 : tree _q61 = TREE_OPERAND (_p1, 1);
15210 0 : if ((_q60 == _q30 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q30, 0) && types_match (_q60, _q30)))
15211 : {
15212 0 : {
15213 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q30, _q61, _p0, _q20, _q21 };
15214 0 : tree res = generic_simplify_157 (loc, type, _p0, _p1, captures, GT_EXPR, NE_EXPR);
15215 0 : if (res) return res;
15216 : }
15217 : }
15218 0 : if ((_q61 == _q30 && ! TREE_SIDE_EFFECTS (_q61)) || (operand_equal_p (_q61, _q30, 0) && types_match (_q61, _q30)))
15219 : {
15220 0 : {
15221 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q30, _q60, _p0, _q20, _q21 };
15222 0 : tree res = generic_simplify_157 (loc, type, _p0, _p1, captures, GT_EXPR, NE_EXPR);
15223 0 : if (res) return res;
15224 : }
15225 : }
15226 : break;
15227 : }
15228 : default:;
15229 : }
15230 : break;
15231 : }
15232 132 : default:;
15233 : }
15234 132 : switch (TREE_CODE (_q21))
15235 : {
15236 0 : CASE_CONVERT:
15237 0 : {
15238 0 : tree _q40 = TREE_OPERAND (_q21, 0);
15239 0 : switch (TREE_CODE (_p1))
15240 : {
15241 0 : case EQ_EXPR:
15242 0 : {
15243 0 : tree _q60 = TREE_OPERAND (_p1, 0);
15244 0 : tree _q61 = TREE_OPERAND (_p1, 1);
15245 0 : if ((_q60 == _q40 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q40, 0) && types_match (_q60, _q40)))
15246 : {
15247 0 : {
15248 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q40, _q61, _p0, _q21, _q20 };
15249 0 : tree res = generic_simplify_157 (loc, type, _p0, _p1, captures, LT_EXPR, EQ_EXPR);
15250 0 : if (res) return res;
15251 : }
15252 : }
15253 0 : if ((_q61 == _q40 && ! TREE_SIDE_EFFECTS (_q61)) || (operand_equal_p (_q61, _q40, 0) && types_match (_q61, _q40)))
15254 : {
15255 0 : {
15256 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q40, _q60, _p0, _q21, _q20 };
15257 0 : tree res = generic_simplify_157 (loc, type, _p0, _p1, captures, LT_EXPR, EQ_EXPR);
15258 0 : if (res) return res;
15259 : }
15260 : }
15261 : break;
15262 : }
15263 0 : case NE_EXPR:
15264 0 : {
15265 0 : tree _q60 = TREE_OPERAND (_p1, 0);
15266 0 : tree _q61 = TREE_OPERAND (_p1, 1);
15267 0 : if ((_q60 == _q40 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q40, 0) && types_match (_q60, _q40)))
15268 : {
15269 0 : {
15270 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q40, _q61, _p0, _q21, _q20 };
15271 0 : tree res = generic_simplify_157 (loc, type, _p0, _p1, captures, LT_EXPR, NE_EXPR);
15272 0 : if (res) return res;
15273 : }
15274 : }
15275 0 : if ((_q61 == _q40 && ! TREE_SIDE_EFFECTS (_q61)) || (operand_equal_p (_q61, _q40, 0) && types_match (_q61, _q40)))
15276 : {
15277 0 : {
15278 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q40, _q60, _p0, _q21, _q20 };
15279 0 : tree res = generic_simplify_157 (loc, type, _p0, _p1, captures, LT_EXPR, NE_EXPR);
15280 0 : if (res) return res;
15281 : }
15282 : }
15283 : break;
15284 : }
15285 : default:;
15286 : }
15287 : break;
15288 : }
15289 132 : default:;
15290 : }
15291 132 : switch (TREE_CODE (_p1))
15292 : {
15293 12 : case EQ_EXPR:
15294 12 : {
15295 12 : tree _q50 = TREE_OPERAND (_p1, 0);
15296 12 : tree _q51 = TREE_OPERAND (_p1, 1);
15297 12 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
15298 : {
15299 0 : {
15300 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q20, _q51, _p0, _q20, _q21 };
15301 0 : tree res = generic_simplify_158 (loc, type, _p0, _p1, captures, GT_EXPR, EQ_EXPR);
15302 0 : if (res) return res;
15303 : }
15304 : }
15305 12 : if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
15306 : {
15307 0 : {
15308 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q21, _q51, _p0, _q21, _q20 };
15309 0 : tree res = generic_simplify_158 (loc, type, _p0, _p1, captures, LT_EXPR, EQ_EXPR);
15310 0 : if (res) return res;
15311 : }
15312 : }
15313 12 : if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
15314 : {
15315 0 : {
15316 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q20, _q50, _p0, _q20, _q21 };
15317 0 : tree res = generic_simplify_158 (loc, type, _p0, _p1, captures, GT_EXPR, EQ_EXPR);
15318 0 : if (res) return res;
15319 : }
15320 : }
15321 12 : if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
15322 : {
15323 0 : {
15324 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q21, _q50, _p0, _q21, _q20 };
15325 0 : tree res = generic_simplify_158 (loc, type, _p0, _p1, captures, LT_EXPR, EQ_EXPR);
15326 0 : if (res) return res;
15327 : }
15328 : }
15329 : break;
15330 : }
15331 4 : case NE_EXPR:
15332 4 : {
15333 4 : tree _q50 = TREE_OPERAND (_p1, 0);
15334 4 : tree _q51 = TREE_OPERAND (_p1, 1);
15335 4 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
15336 : {
15337 4 : {
15338 4 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q20, _q51, _p0, _q20, _q21 };
15339 4 : tree res = generic_simplify_158 (loc, type, _p0, _p1, captures, GT_EXPR, NE_EXPR);
15340 4 : if (res) return res;
15341 : }
15342 : }
15343 4 : if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
15344 : {
15345 0 : {
15346 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q21, _q51, _p0, _q21, _q20 };
15347 0 : tree res = generic_simplify_158 (loc, type, _p0, _p1, captures, LT_EXPR, NE_EXPR);
15348 0 : if (res) return res;
15349 : }
15350 : }
15351 4 : if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
15352 : {
15353 0 : {
15354 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q20, _q50, _p0, _q20, _q21 };
15355 0 : tree res = generic_simplify_158 (loc, type, _p0, _p1, captures, GT_EXPR, NE_EXPR);
15356 0 : if (res) return res;
15357 : }
15358 : }
15359 4 : if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
15360 : {
15361 0 : {
15362 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q21, _q50, _p0, _q21, _q20 };
15363 0 : tree res = generic_simplify_158 (loc, type, _p0, _p1, captures, LT_EXPR, NE_EXPR);
15364 0 : if (res) return res;
15365 : }
15366 : }
15367 : break;
15368 : }
15369 0 : case LT_EXPR:
15370 0 : {
15371 0 : tree _q50 = TREE_OPERAND (_p1, 0);
15372 0 : tree _q51 = TREE_OPERAND (_p1, 1);
15373 0 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
15374 : {
15375 0 : {
15376 0 : tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q51 };
15377 0 : tree res = generic_simplify_159 (loc, type, _p0, _p1, captures, LT_EXPR, GT_EXPR);
15378 0 : if (res) return res;
15379 : }
15380 : }
15381 : break;
15382 : }
15383 0 : case LE_EXPR:
15384 0 : {
15385 0 : tree _q50 = TREE_OPERAND (_p1, 0);
15386 0 : tree _q51 = TREE_OPERAND (_p1, 1);
15387 0 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
15388 : {
15389 0 : {
15390 0 : tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q51 };
15391 0 : tree res = generic_simplify_159 (loc, type, _p0, _p1, captures, LE_EXPR, GT_EXPR);
15392 0 : if (res) return res;
15393 : }
15394 : }
15395 : break;
15396 : }
15397 2 : case GT_EXPR:
15398 2 : {
15399 2 : tree _q50 = TREE_OPERAND (_p1, 0);
15400 2 : tree _q51 = TREE_OPERAND (_p1, 1);
15401 2 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
15402 : {
15403 0 : {
15404 0 : tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q51 };
15405 0 : tree res = generic_simplify_159 (loc, type, _p0, _p1, captures, GT_EXPR, GT_EXPR);
15406 0 : if (res) return res;
15407 : }
15408 : }
15409 : break;
15410 : }
15411 0 : case GE_EXPR:
15412 0 : {
15413 0 : tree _q50 = TREE_OPERAND (_p1, 0);
15414 0 : tree _q51 = TREE_OPERAND (_p1, 1);
15415 0 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
15416 : {
15417 0 : {
15418 0 : tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q51 };
15419 0 : tree res = generic_simplify_159 (loc, type, _p0, _p1, captures, GE_EXPR, GT_EXPR);
15420 0 : if (res) return res;
15421 : }
15422 : }
15423 : break;
15424 : }
15425 132 : default:;
15426 : }
15427 132 : switch (TREE_CODE (_q20))
15428 : {
15429 7 : case BIT_AND_EXPR:
15430 7 : {
15431 7 : tree _q30 = TREE_OPERAND (_q20, 0);
15432 7 : tree _q31 = TREE_OPERAND (_q20, 1);
15433 7 : switch (TREE_CODE (_q30))
15434 : {
15435 0 : case BIT_XOR_EXPR:
15436 0 : {
15437 0 : tree _q40 = TREE_OPERAND (_q30, 0);
15438 0 : tree _q41 = TREE_OPERAND (_q30, 1);
15439 0 : if (tree_expr_nonzero_p (_q31))
15440 : {
15441 0 : switch (TREE_CODE (_p1))
15442 : {
15443 0 : case NE_EXPR:
15444 0 : {
15445 0 : tree _q90 = TREE_OPERAND (_p1, 0);
15446 0 : tree _q91 = TREE_OPERAND (_p1, 1);
15447 0 : if ((_q90 == _q40 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q40, 0) && types_match (_q90, _q40)))
15448 : {
15449 0 : if ((_q91 == _q41 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q41, 0) && types_match (_q91, _q41)))
15450 : {
15451 0 : {
15452 0 : tree captures[5] ATTRIBUTE_UNUSED = { _q40, _q41, _q31, _q21, _p1 };
15453 0 : tree res = generic_simplify_160 (loc, type, _p0, _p1, captures, GT_EXPR);
15454 0 : if (res) return res;
15455 : }
15456 : }
15457 : }
15458 0 : if ((_q90 == _q41 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q41, 0) && types_match (_q90, _q41)))
15459 : {
15460 0 : if ((_q91 == _q40 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q40, 0) && types_match (_q91, _q40)))
15461 : {
15462 0 : {
15463 0 : tree captures[5] ATTRIBUTE_UNUSED = { _q41, _q40, _q31, _q21, _p1 };
15464 0 : tree res = generic_simplify_160 (loc, type, _p0, _p1, captures, GT_EXPR);
15465 0 : if (res) return res;
15466 : }
15467 : }
15468 : }
15469 : break;
15470 : }
15471 : default:;
15472 : }
15473 : }
15474 : break;
15475 : }
15476 7 : default:;
15477 : }
15478 7 : if (tree_expr_nonzero_p (_q30))
15479 : {
15480 0 : switch (TREE_CODE (_q31))
15481 : {
15482 0 : case BIT_XOR_EXPR:
15483 0 : {
15484 0 : tree _q50 = TREE_OPERAND (_q31, 0);
15485 0 : tree _q51 = TREE_OPERAND (_q31, 1);
15486 0 : switch (TREE_CODE (_p1))
15487 : {
15488 0 : case NE_EXPR:
15489 0 : {
15490 0 : tree _q90 = TREE_OPERAND (_p1, 0);
15491 0 : tree _q91 = TREE_OPERAND (_p1, 1);
15492 0 : if ((_q90 == _q50 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q50, 0) && types_match (_q90, _q50)))
15493 : {
15494 0 : if ((_q91 == _q51 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q51, 0) && types_match (_q91, _q51)))
15495 : {
15496 0 : {
15497 0 : tree captures[5] ATTRIBUTE_UNUSED = { _q50, _q51, _q30, _q21, _p1 };
15498 0 : tree res = generic_simplify_160 (loc, type, _p0, _p1, captures, GT_EXPR);
15499 0 : if (res) return res;
15500 : }
15501 : }
15502 : }
15503 0 : if ((_q90 == _q51 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q51, 0) && types_match (_q90, _q51)))
15504 : {
15505 0 : if ((_q91 == _q50 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q50, 0) && types_match (_q91, _q50)))
15506 : {
15507 0 : {
15508 0 : tree captures[5] ATTRIBUTE_UNUSED = { _q51, _q50, _q30, _q21, _p1 };
15509 0 : tree res = generic_simplify_160 (loc, type, _p0, _p1, captures, GT_EXPR);
15510 0 : if (res) return res;
15511 : }
15512 : }
15513 : }
15514 : break;
15515 : }
15516 : default:;
15517 : }
15518 : break;
15519 : }
15520 : default:;
15521 : }
15522 : }
15523 : break;
15524 : }
15525 132 : default:;
15526 : }
15527 132 : switch (TREE_CODE (_q21))
15528 : {
15529 0 : case BIT_AND_EXPR:
15530 0 : {
15531 0 : tree _q40 = TREE_OPERAND (_q21, 0);
15532 0 : tree _q41 = TREE_OPERAND (_q21, 1);
15533 0 : switch (TREE_CODE (_q40))
15534 : {
15535 0 : case BIT_XOR_EXPR:
15536 0 : {
15537 0 : tree _q50 = TREE_OPERAND (_q40, 0);
15538 0 : tree _q51 = TREE_OPERAND (_q40, 1);
15539 0 : if (tree_expr_nonzero_p (_q41))
15540 : {
15541 0 : switch (TREE_CODE (_p1))
15542 : {
15543 0 : case NE_EXPR:
15544 0 : {
15545 0 : tree _q90 = TREE_OPERAND (_p1, 0);
15546 0 : tree _q91 = TREE_OPERAND (_p1, 1);
15547 0 : if ((_q90 == _q50 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q50, 0) && types_match (_q90, _q50)))
15548 : {
15549 0 : if ((_q91 == _q51 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q51, 0) && types_match (_q91, _q51)))
15550 : {
15551 0 : {
15552 0 : tree captures[5] ATTRIBUTE_UNUSED = { _q50, _q51, _q41, _q20, _p1 };
15553 0 : tree res = generic_simplify_160 (loc, type, _p0, _p1, captures, LT_EXPR);
15554 0 : if (res) return res;
15555 : }
15556 : }
15557 : }
15558 0 : if ((_q90 == _q51 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q51, 0) && types_match (_q90, _q51)))
15559 : {
15560 0 : if ((_q91 == _q50 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q50, 0) && types_match (_q91, _q50)))
15561 : {
15562 0 : {
15563 0 : tree captures[5] ATTRIBUTE_UNUSED = { _q51, _q50, _q41, _q20, _p1 };
15564 0 : tree res = generic_simplify_160 (loc, type, _p0, _p1, captures, LT_EXPR);
15565 0 : if (res) return res;
15566 : }
15567 : }
15568 : }
15569 : break;
15570 : }
15571 : default:;
15572 : }
15573 : }
15574 : break;
15575 : }
15576 0 : default:;
15577 : }
15578 0 : if (tree_expr_nonzero_p (_q40))
15579 : {
15580 0 : switch (TREE_CODE (_q41))
15581 : {
15582 0 : case BIT_XOR_EXPR:
15583 0 : {
15584 0 : tree _q60 = TREE_OPERAND (_q41, 0);
15585 0 : tree _q61 = TREE_OPERAND (_q41, 1);
15586 0 : switch (TREE_CODE (_p1))
15587 : {
15588 0 : case NE_EXPR:
15589 0 : {
15590 0 : tree _q90 = TREE_OPERAND (_p1, 0);
15591 0 : tree _q91 = TREE_OPERAND (_p1, 1);
15592 0 : if ((_q90 == _q60 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q60, 0) && types_match (_q90, _q60)))
15593 : {
15594 0 : if ((_q91 == _q61 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q61, 0) && types_match (_q91, _q61)))
15595 : {
15596 0 : {
15597 0 : tree captures[5] ATTRIBUTE_UNUSED = { _q60, _q61, _q40, _q20, _p1 };
15598 0 : tree res = generic_simplify_160 (loc, type, _p0, _p1, captures, LT_EXPR);
15599 0 : if (res) return res;
15600 : }
15601 : }
15602 : }
15603 0 : if ((_q90 == _q61 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q61, 0) && types_match (_q90, _q61)))
15604 : {
15605 0 : if ((_q91 == _q60 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q60, 0) && types_match (_q91, _q60)))
15606 : {
15607 0 : {
15608 0 : tree captures[5] ATTRIBUTE_UNUSED = { _q61, _q60, _q40, _q20, _p1 };
15609 0 : tree res = generic_simplify_160 (loc, type, _p0, _p1, captures, LT_EXPR);
15610 0 : if (res) return res;
15611 : }
15612 : }
15613 : }
15614 : break;
15615 : }
15616 : default:;
15617 : }
15618 : break;
15619 : }
15620 : default:;
15621 : }
15622 : }
15623 : break;
15624 : }
15625 132 : default:;
15626 : }
15627 132 : switch (TREE_CODE (_q20))
15628 : {
15629 0 : case BIT_XOR_EXPR:
15630 0 : {
15631 0 : tree _q30 = TREE_OPERAND (_q20, 0);
15632 0 : tree _q31 = TREE_OPERAND (_q20, 1);
15633 0 : switch (TREE_CODE (_p1))
15634 : {
15635 0 : case NE_EXPR:
15636 0 : {
15637 0 : tree _q70 = TREE_OPERAND (_p1, 0);
15638 0 : tree _q71 = TREE_OPERAND (_p1, 1);
15639 0 : if ((_q70 == _q30 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q30, 0) && types_match (_q70, _q30)))
15640 : {
15641 0 : if ((_q71 == _q31 && ! TREE_SIDE_EFFECTS (_q71)) || (operand_equal_p (_q71, _q31, 0) && types_match (_q71, _q31)))
15642 : {
15643 0 : {
15644 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q30, _q31, _q21, _p1 };
15645 0 : tree res = generic_simplify_161 (loc, type, _p0, _p1, captures, GT_EXPR);
15646 0 : if (res) return res;
15647 : }
15648 : }
15649 : }
15650 0 : if ((_q70 == _q31 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q31, 0) && types_match (_q70, _q31)))
15651 : {
15652 0 : if ((_q71 == _q30 && ! TREE_SIDE_EFFECTS (_q71)) || (operand_equal_p (_q71, _q30, 0) && types_match (_q71, _q30)))
15653 : {
15654 0 : {
15655 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q31, _q30, _q21, _p1 };
15656 0 : tree res = generic_simplify_161 (loc, type, _p0, _p1, captures, GT_EXPR);
15657 0 : if (res) return res;
15658 : }
15659 : }
15660 : }
15661 : break;
15662 : }
15663 : default:;
15664 : }
15665 : break;
15666 : }
15667 132 : default:;
15668 : }
15669 132 : switch (TREE_CODE (_q21))
15670 : {
15671 0 : case BIT_XOR_EXPR:
15672 0 : {
15673 0 : tree _q40 = TREE_OPERAND (_q21, 0);
15674 0 : tree _q41 = TREE_OPERAND (_q21, 1);
15675 0 : switch (TREE_CODE (_p1))
15676 : {
15677 0 : case NE_EXPR:
15678 0 : {
15679 0 : tree _q70 = TREE_OPERAND (_p1, 0);
15680 0 : tree _q71 = TREE_OPERAND (_p1, 1);
15681 0 : if ((_q70 == _q40 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q40, 0) && types_match (_q70, _q40)))
15682 : {
15683 0 : if ((_q71 == _q41 && ! TREE_SIDE_EFFECTS (_q71)) || (operand_equal_p (_q71, _q41, 0) && types_match (_q71, _q41)))
15684 : {
15685 0 : {
15686 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q40, _q41, _q20, _p1 };
15687 0 : tree res = generic_simplify_161 (loc, type, _p0, _p1, captures, LT_EXPR);
15688 0 : if (res) return res;
15689 : }
15690 : }
15691 : }
15692 0 : if ((_q70 == _q41 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q41, 0) && types_match (_q70, _q41)))
15693 : {
15694 0 : if ((_q71 == _q40 && ! TREE_SIDE_EFFECTS (_q71)) || (operand_equal_p (_q71, _q40, 0) && types_match (_q71, _q40)))
15695 : {
15696 0 : {
15697 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q41, _q40, _q20, _p1 };
15698 0 : tree res = generic_simplify_161 (loc, type, _p0, _p1, captures, LT_EXPR);
15699 0 : if (res) return res;
15700 : }
15701 : }
15702 : }
15703 : break;
15704 : }
15705 : default:;
15706 : }
15707 : break;
15708 : }
15709 : default:;
15710 : }
15711 : break;
15712 : }
15713 130 : case LT_EXPR:
15714 130 : {
15715 130 : tree _q20 = TREE_OPERAND (_p0, 0);
15716 130 : tree _q21 = TREE_OPERAND (_p0, 1);
15717 130 : switch (TREE_CODE (_p1))
15718 : {
15719 5 : case NE_EXPR:
15720 5 : {
15721 5 : tree _q50 = TREE_OPERAND (_p1, 0);
15722 5 : tree _q51 = TREE_OPERAND (_p1, 1);
15723 5 : if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
15724 : {
15725 0 : if (tree_min_value (_q51))
15726 : {
15727 0 : {
15728 0 : tree captures[3] ATTRIBUTE_UNUSED = { _q21, _q20, _p1 };
15729 0 : tree res = generic_simplify_154 (loc, type, _p0, _p1, captures);
15730 0 : if (res) return res;
15731 : }
15732 : }
15733 : }
15734 5 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
15735 : {
15736 5 : if (tree_max_value (_q51))
15737 : {
15738 4 : {
15739 4 : tree captures[3] ATTRIBUTE_UNUSED = { _q20, _q21, _p1 };
15740 4 : tree res = generic_simplify_155 (loc, type, _p0, _p1, captures);
15741 4 : if (res) return res;
15742 : }
15743 : }
15744 : }
15745 : break;
15746 : }
15747 9 : case EQ_EXPR:
15748 9 : {
15749 9 : tree _q50 = TREE_OPERAND (_p1, 0);
15750 9 : tree _q51 = TREE_OPERAND (_p1, 1);
15751 9 : if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
15752 : {
15753 0 : if (tree_min_value (_q51))
15754 : {
15755 0 : {
15756 0 : tree captures[4] ATTRIBUTE_UNUSED = { _p1, _q21, _p0, _q20 };
15757 0 : tree res = generic_simplify_156 (loc, type, _p0, _p1, captures);
15758 0 : if (res) return res;
15759 : }
15760 : }
15761 : }
15762 : break;
15763 : }
15764 126 : default:;
15765 : }
15766 126 : switch (TREE_CODE (_q20))
15767 : {
15768 15 : CASE_CONVERT:
15769 15 : {
15770 15 : tree _q30 = TREE_OPERAND (_q20, 0);
15771 15 : switch (TREE_CODE (_p1))
15772 : {
15773 0 : case EQ_EXPR:
15774 0 : {
15775 0 : tree _q60 = TREE_OPERAND (_p1, 0);
15776 0 : tree _q61 = TREE_OPERAND (_p1, 1);
15777 0 : if ((_q60 == _q30 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q30, 0) && types_match (_q60, _q30)))
15778 : {
15779 0 : {
15780 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q30, _q61, _p0, _q20, _q21 };
15781 0 : tree res = generic_simplify_157 (loc, type, _p0, _p1, captures, LT_EXPR, EQ_EXPR);
15782 0 : if (res) return res;
15783 : }
15784 : }
15785 0 : if ((_q61 == _q30 && ! TREE_SIDE_EFFECTS (_q61)) || (operand_equal_p (_q61, _q30, 0) && types_match (_q61, _q30)))
15786 : {
15787 0 : {
15788 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q30, _q60, _p0, _q20, _q21 };
15789 0 : tree res = generic_simplify_157 (loc, type, _p0, _p1, captures, LT_EXPR, EQ_EXPR);
15790 0 : if (res) return res;
15791 : }
15792 : }
15793 : break;
15794 : }
15795 0 : case NE_EXPR:
15796 0 : {
15797 0 : tree _q60 = TREE_OPERAND (_p1, 0);
15798 0 : tree _q61 = TREE_OPERAND (_p1, 1);
15799 0 : if ((_q60 == _q30 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q30, 0) && types_match (_q60, _q30)))
15800 : {
15801 0 : {
15802 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q30, _q61, _p0, _q20, _q21 };
15803 0 : tree res = generic_simplify_157 (loc, type, _p0, _p1, captures, LT_EXPR, NE_EXPR);
15804 0 : if (res) return res;
15805 : }
15806 : }
15807 0 : if ((_q61 == _q30 && ! TREE_SIDE_EFFECTS (_q61)) || (operand_equal_p (_q61, _q30, 0) && types_match (_q61, _q30)))
15808 : {
15809 0 : {
15810 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q30, _q60, _p0, _q20, _q21 };
15811 0 : tree res = generic_simplify_157 (loc, type, _p0, _p1, captures, LT_EXPR, NE_EXPR);
15812 0 : if (res) return res;
15813 : }
15814 : }
15815 : break;
15816 : }
15817 : default:;
15818 : }
15819 : break;
15820 : }
15821 126 : default:;
15822 : }
15823 126 : switch (TREE_CODE (_q21))
15824 : {
15825 35 : CASE_CONVERT:
15826 35 : {
15827 35 : tree _q40 = TREE_OPERAND (_q21, 0);
15828 35 : switch (TREE_CODE (_p1))
15829 : {
15830 3 : case EQ_EXPR:
15831 3 : {
15832 3 : tree _q60 = TREE_OPERAND (_p1, 0);
15833 3 : tree _q61 = TREE_OPERAND (_p1, 1);
15834 3 : if ((_q60 == _q40 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q40, 0) && types_match (_q60, _q40)))
15835 : {
15836 0 : {
15837 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q40, _q61, _p0, _q21, _q20 };
15838 0 : tree res = generic_simplify_157 (loc, type, _p0, _p1, captures, GT_EXPR, EQ_EXPR);
15839 0 : if (res) return res;
15840 : }
15841 : }
15842 3 : if ((_q61 == _q40 && ! TREE_SIDE_EFFECTS (_q61)) || (operand_equal_p (_q61, _q40, 0) && types_match (_q61, _q40)))
15843 : {
15844 3 : {
15845 3 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q40, _q60, _p0, _q21, _q20 };
15846 3 : tree res = generic_simplify_157 (loc, type, _p0, _p1, captures, GT_EXPR, EQ_EXPR);
15847 3 : if (res) return res;
15848 : }
15849 : }
15850 : break;
15851 : }
15852 0 : case NE_EXPR:
15853 0 : {
15854 0 : tree _q60 = TREE_OPERAND (_p1, 0);
15855 0 : tree _q61 = TREE_OPERAND (_p1, 1);
15856 0 : if ((_q60 == _q40 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q40, 0) && types_match (_q60, _q40)))
15857 : {
15858 0 : {
15859 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q40, _q61, _p0, _q21, _q20 };
15860 0 : tree res = generic_simplify_157 (loc, type, _p0, _p1, captures, GT_EXPR, NE_EXPR);
15861 0 : if (res) return res;
15862 : }
15863 : }
15864 0 : if ((_q61 == _q40 && ! TREE_SIDE_EFFECTS (_q61)) || (operand_equal_p (_q61, _q40, 0) && types_match (_q61, _q40)))
15865 : {
15866 0 : {
15867 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q40, _q60, _p0, _q21, _q20 };
15868 0 : tree res = generic_simplify_157 (loc, type, _p0, _p1, captures, GT_EXPR, NE_EXPR);
15869 0 : if (res) return res;
15870 : }
15871 : }
15872 : break;
15873 : }
15874 : default:;
15875 : }
15876 : break;
15877 : }
15878 123 : default:;
15879 : }
15880 123 : switch (TREE_CODE (_p1))
15881 : {
15882 6 : case EQ_EXPR:
15883 6 : {
15884 6 : tree _q50 = TREE_OPERAND (_p1, 0);
15885 6 : tree _q51 = TREE_OPERAND (_p1, 1);
15886 6 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
15887 : {
15888 2 : {
15889 2 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q20, _q51, _p0, _q20, _q21 };
15890 2 : tree res = generic_simplify_158 (loc, type, _p0, _p1, captures, LT_EXPR, EQ_EXPR);
15891 2 : if (res) return res;
15892 : }
15893 : }
15894 4 : if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
15895 : {
15896 0 : {
15897 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q21, _q51, _p0, _q21, _q20 };
15898 0 : tree res = generic_simplify_158 (loc, type, _p0, _p1, captures, GT_EXPR, EQ_EXPR);
15899 0 : if (res) return res;
15900 : }
15901 : }
15902 4 : if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
15903 : {
15904 0 : {
15905 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q20, _q50, _p0, _q20, _q21 };
15906 0 : tree res = generic_simplify_158 (loc, type, _p0, _p1, captures, LT_EXPR, EQ_EXPR);
15907 0 : if (res) return res;
15908 : }
15909 : }
15910 4 : if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
15911 : {
15912 0 : {
15913 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q21, _q50, _p0, _q21, _q20 };
15914 0 : tree res = generic_simplify_158 (loc, type, _p0, _p1, captures, GT_EXPR, EQ_EXPR);
15915 0 : if (res) return res;
15916 : }
15917 : }
15918 : break;
15919 : }
15920 1 : case NE_EXPR:
15921 1 : {
15922 1 : tree _q50 = TREE_OPERAND (_p1, 0);
15923 1 : tree _q51 = TREE_OPERAND (_p1, 1);
15924 1 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
15925 : {
15926 1 : {
15927 1 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q20, _q51, _p0, _q20, _q21 };
15928 1 : tree res = generic_simplify_158 (loc, type, _p0, _p1, captures, LT_EXPR, NE_EXPR);
15929 1 : if (res) return res;
15930 : }
15931 : }
15932 1 : if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
15933 : {
15934 0 : {
15935 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q21, _q51, _p0, _q21, _q20 };
15936 0 : tree res = generic_simplify_158 (loc, type, _p0, _p1, captures, GT_EXPR, NE_EXPR);
15937 0 : if (res) return res;
15938 : }
15939 : }
15940 1 : if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
15941 : {
15942 0 : {
15943 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q20, _q50, _p0, _q20, _q21 };
15944 0 : tree res = generic_simplify_158 (loc, type, _p0, _p1, captures, LT_EXPR, NE_EXPR);
15945 0 : if (res) return res;
15946 : }
15947 : }
15948 1 : if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
15949 : {
15950 0 : {
15951 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q21, _q50, _p0, _q21, _q20 };
15952 0 : tree res = generic_simplify_158 (loc, type, _p0, _p1, captures, GT_EXPR, NE_EXPR);
15953 0 : if (res) return res;
15954 : }
15955 : }
15956 : break;
15957 : }
15958 27 : case LT_EXPR:
15959 27 : {
15960 27 : tree _q50 = TREE_OPERAND (_p1, 0);
15961 27 : tree _q51 = TREE_OPERAND (_p1, 1);
15962 27 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
15963 : {
15964 0 : {
15965 0 : tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q51 };
15966 0 : tree res = generic_simplify_159 (loc, type, _p0, _p1, captures, LT_EXPR, LT_EXPR);
15967 0 : if (res) return res;
15968 : }
15969 : }
15970 : break;
15971 : }
15972 31 : case LE_EXPR:
15973 31 : {
15974 31 : tree _q50 = TREE_OPERAND (_p1, 0);
15975 31 : tree _q51 = TREE_OPERAND (_p1, 1);
15976 31 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
15977 : {
15978 31 : {
15979 31 : tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q51 };
15980 31 : tree res = generic_simplify_159 (loc, type, _p0, _p1, captures, LE_EXPR, LT_EXPR);
15981 31 : if (res) return res;
15982 : }
15983 : }
15984 : break;
15985 : }
15986 0 : case GT_EXPR:
15987 0 : {
15988 0 : tree _q50 = TREE_OPERAND (_p1, 0);
15989 0 : tree _q51 = TREE_OPERAND (_p1, 1);
15990 0 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
15991 : {
15992 0 : {
15993 0 : tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q51 };
15994 0 : tree res = generic_simplify_159 (loc, type, _p0, _p1, captures, GT_EXPR, LT_EXPR);
15995 0 : if (res) return res;
15996 : }
15997 : }
15998 : break;
15999 : }
16000 0 : case GE_EXPR:
16001 0 : {
16002 0 : tree _q50 = TREE_OPERAND (_p1, 0);
16003 0 : tree _q51 = TREE_OPERAND (_p1, 1);
16004 0 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
16005 : {
16006 0 : {
16007 0 : tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q51 };
16008 0 : tree res = generic_simplify_159 (loc, type, _p0, _p1, captures, GE_EXPR, LT_EXPR);
16009 0 : if (res) return res;
16010 : }
16011 : }
16012 : break;
16013 : }
16014 114 : default:;
16015 : }
16016 114 : switch (TREE_CODE (_q20))
16017 : {
16018 0 : case BIT_AND_EXPR:
16019 0 : {
16020 0 : tree _q30 = TREE_OPERAND (_q20, 0);
16021 0 : tree _q31 = TREE_OPERAND (_q20, 1);
16022 0 : switch (TREE_CODE (_q30))
16023 : {
16024 0 : case BIT_XOR_EXPR:
16025 0 : {
16026 0 : tree _q40 = TREE_OPERAND (_q30, 0);
16027 0 : tree _q41 = TREE_OPERAND (_q30, 1);
16028 0 : if (tree_expr_nonzero_p (_q31))
16029 : {
16030 0 : switch (TREE_CODE (_p1))
16031 : {
16032 0 : case NE_EXPR:
16033 0 : {
16034 0 : tree _q90 = TREE_OPERAND (_p1, 0);
16035 0 : tree _q91 = TREE_OPERAND (_p1, 1);
16036 0 : if ((_q90 == _q40 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q40, 0) && types_match (_q90, _q40)))
16037 : {
16038 0 : if ((_q91 == _q41 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q41, 0) && types_match (_q91, _q41)))
16039 : {
16040 0 : {
16041 0 : tree captures[5] ATTRIBUTE_UNUSED = { _q40, _q41, _q31, _q21, _p1 };
16042 0 : tree res = generic_simplify_160 (loc, type, _p0, _p1, captures, LT_EXPR);
16043 0 : if (res) return res;
16044 : }
16045 : }
16046 : }
16047 0 : if ((_q90 == _q41 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q41, 0) && types_match (_q90, _q41)))
16048 : {
16049 0 : if ((_q91 == _q40 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q40, 0) && types_match (_q91, _q40)))
16050 : {
16051 0 : {
16052 0 : tree captures[5] ATTRIBUTE_UNUSED = { _q41, _q40, _q31, _q21, _p1 };
16053 0 : tree res = generic_simplify_160 (loc, type, _p0, _p1, captures, LT_EXPR);
16054 0 : if (res) return res;
16055 : }
16056 : }
16057 : }
16058 : break;
16059 : }
16060 : default:;
16061 : }
16062 : }
16063 : break;
16064 : }
16065 0 : default:;
16066 : }
16067 0 : if (tree_expr_nonzero_p (_q30))
16068 : {
16069 0 : switch (TREE_CODE (_q31))
16070 : {
16071 0 : case BIT_XOR_EXPR:
16072 0 : {
16073 0 : tree _q50 = TREE_OPERAND (_q31, 0);
16074 0 : tree _q51 = TREE_OPERAND (_q31, 1);
16075 0 : switch (TREE_CODE (_p1))
16076 : {
16077 0 : case NE_EXPR:
16078 0 : {
16079 0 : tree _q90 = TREE_OPERAND (_p1, 0);
16080 0 : tree _q91 = TREE_OPERAND (_p1, 1);
16081 0 : if ((_q90 == _q50 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q50, 0) && types_match (_q90, _q50)))
16082 : {
16083 0 : if ((_q91 == _q51 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q51, 0) && types_match (_q91, _q51)))
16084 : {
16085 0 : {
16086 0 : tree captures[5] ATTRIBUTE_UNUSED = { _q50, _q51, _q30, _q21, _p1 };
16087 0 : tree res = generic_simplify_160 (loc, type, _p0, _p1, captures, LT_EXPR);
16088 0 : if (res) return res;
16089 : }
16090 : }
16091 : }
16092 0 : if ((_q90 == _q51 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q51, 0) && types_match (_q90, _q51)))
16093 : {
16094 0 : if ((_q91 == _q50 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q50, 0) && types_match (_q91, _q50)))
16095 : {
16096 0 : {
16097 0 : tree captures[5] ATTRIBUTE_UNUSED = { _q51, _q50, _q30, _q21, _p1 };
16098 0 : tree res = generic_simplify_160 (loc, type, _p0, _p1, captures, LT_EXPR);
16099 0 : if (res) return res;
16100 : }
16101 : }
16102 : }
16103 : break;
16104 : }
16105 : default:;
16106 : }
16107 : break;
16108 : }
16109 : default:;
16110 : }
16111 : }
16112 : break;
16113 : }
16114 114 : default:;
16115 : }
16116 114 : switch (TREE_CODE (_q21))
16117 : {
16118 0 : case BIT_AND_EXPR:
16119 0 : {
16120 0 : tree _q40 = TREE_OPERAND (_q21, 0);
16121 0 : tree _q41 = TREE_OPERAND (_q21, 1);
16122 0 : switch (TREE_CODE (_q40))
16123 : {
16124 0 : case BIT_XOR_EXPR:
16125 0 : {
16126 0 : tree _q50 = TREE_OPERAND (_q40, 0);
16127 0 : tree _q51 = TREE_OPERAND (_q40, 1);
16128 0 : if (tree_expr_nonzero_p (_q41))
16129 : {
16130 0 : switch (TREE_CODE (_p1))
16131 : {
16132 0 : case NE_EXPR:
16133 0 : {
16134 0 : tree _q90 = TREE_OPERAND (_p1, 0);
16135 0 : tree _q91 = TREE_OPERAND (_p1, 1);
16136 0 : if ((_q90 == _q50 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q50, 0) && types_match (_q90, _q50)))
16137 : {
16138 0 : if ((_q91 == _q51 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q51, 0) && types_match (_q91, _q51)))
16139 : {
16140 0 : {
16141 0 : tree captures[5] ATTRIBUTE_UNUSED = { _q50, _q51, _q41, _q20, _p1 };
16142 0 : tree res = generic_simplify_160 (loc, type, _p0, _p1, captures, GT_EXPR);
16143 0 : if (res) return res;
16144 : }
16145 : }
16146 : }
16147 0 : if ((_q90 == _q51 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q51, 0) && types_match (_q90, _q51)))
16148 : {
16149 0 : if ((_q91 == _q50 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q50, 0) && types_match (_q91, _q50)))
16150 : {
16151 0 : {
16152 0 : tree captures[5] ATTRIBUTE_UNUSED = { _q51, _q50, _q41, _q20, _p1 };
16153 0 : tree res = generic_simplify_160 (loc, type, _p0, _p1, captures, GT_EXPR);
16154 0 : if (res) return res;
16155 : }
16156 : }
16157 : }
16158 : break;
16159 : }
16160 : default:;
16161 : }
16162 : }
16163 : break;
16164 : }
16165 0 : default:;
16166 : }
16167 0 : if (tree_expr_nonzero_p (_q40))
16168 : {
16169 0 : switch (TREE_CODE (_q41))
16170 : {
16171 0 : case BIT_XOR_EXPR:
16172 0 : {
16173 0 : tree _q60 = TREE_OPERAND (_q41, 0);
16174 0 : tree _q61 = TREE_OPERAND (_q41, 1);
16175 0 : switch (TREE_CODE (_p1))
16176 : {
16177 0 : case NE_EXPR:
16178 0 : {
16179 0 : tree _q90 = TREE_OPERAND (_p1, 0);
16180 0 : tree _q91 = TREE_OPERAND (_p1, 1);
16181 0 : if ((_q90 == _q60 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q60, 0) && types_match (_q90, _q60)))
16182 : {
16183 0 : if ((_q91 == _q61 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q61, 0) && types_match (_q91, _q61)))
16184 : {
16185 0 : {
16186 0 : tree captures[5] ATTRIBUTE_UNUSED = { _q60, _q61, _q40, _q20, _p1 };
16187 0 : tree res = generic_simplify_160 (loc, type, _p0, _p1, captures, GT_EXPR);
16188 0 : if (res) return res;
16189 : }
16190 : }
16191 : }
16192 0 : if ((_q90 == _q61 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q61, 0) && types_match (_q90, _q61)))
16193 : {
16194 0 : if ((_q91 == _q60 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q60, 0) && types_match (_q91, _q60)))
16195 : {
16196 0 : {
16197 0 : tree captures[5] ATTRIBUTE_UNUSED = { _q61, _q60, _q40, _q20, _p1 };
16198 0 : tree res = generic_simplify_160 (loc, type, _p0, _p1, captures, GT_EXPR);
16199 0 : if (res) return res;
16200 : }
16201 : }
16202 : }
16203 : break;
16204 : }
16205 : default:;
16206 : }
16207 : break;
16208 : }
16209 : default:;
16210 : }
16211 : }
16212 : break;
16213 : }
16214 114 : default:;
16215 : }
16216 114 : switch (TREE_CODE (_q20))
16217 : {
16218 0 : case BIT_XOR_EXPR:
16219 0 : {
16220 0 : tree _q30 = TREE_OPERAND (_q20, 0);
16221 0 : tree _q31 = TREE_OPERAND (_q20, 1);
16222 0 : switch (TREE_CODE (_p1))
16223 : {
16224 0 : case NE_EXPR:
16225 0 : {
16226 0 : tree _q70 = TREE_OPERAND (_p1, 0);
16227 0 : tree _q71 = TREE_OPERAND (_p1, 1);
16228 0 : if ((_q70 == _q30 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q30, 0) && types_match (_q70, _q30)))
16229 : {
16230 0 : if ((_q71 == _q31 && ! TREE_SIDE_EFFECTS (_q71)) || (operand_equal_p (_q71, _q31, 0) && types_match (_q71, _q31)))
16231 : {
16232 0 : {
16233 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q30, _q31, _q21, _p1 };
16234 0 : tree res = generic_simplify_161 (loc, type, _p0, _p1, captures, LT_EXPR);
16235 0 : if (res) return res;
16236 : }
16237 : }
16238 : }
16239 0 : if ((_q70 == _q31 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q31, 0) && types_match (_q70, _q31)))
16240 : {
16241 0 : if ((_q71 == _q30 && ! TREE_SIDE_EFFECTS (_q71)) || (operand_equal_p (_q71, _q30, 0) && types_match (_q71, _q30)))
16242 : {
16243 0 : {
16244 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q31, _q30, _q21, _p1 };
16245 0 : tree res = generic_simplify_161 (loc, type, _p0, _p1, captures, LT_EXPR);
16246 0 : if (res) return res;
16247 : }
16248 : }
16249 : }
16250 : break;
16251 : }
16252 : default:;
16253 : }
16254 : break;
16255 : }
16256 114 : default:;
16257 : }
16258 114 : switch (TREE_CODE (_q21))
16259 : {
16260 0 : case BIT_XOR_EXPR:
16261 0 : {
16262 0 : tree _q40 = TREE_OPERAND (_q21, 0);
16263 0 : tree _q41 = TREE_OPERAND (_q21, 1);
16264 0 : switch (TREE_CODE (_p1))
16265 : {
16266 0 : case NE_EXPR:
16267 0 : {
16268 0 : tree _q70 = TREE_OPERAND (_p1, 0);
16269 0 : tree _q71 = TREE_OPERAND (_p1, 1);
16270 0 : if ((_q70 == _q40 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q40, 0) && types_match (_q70, _q40)))
16271 : {
16272 0 : if ((_q71 == _q41 && ! TREE_SIDE_EFFECTS (_q71)) || (operand_equal_p (_q71, _q41, 0) && types_match (_q71, _q41)))
16273 : {
16274 0 : {
16275 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q40, _q41, _q20, _p1 };
16276 0 : tree res = generic_simplify_161 (loc, type, _p0, _p1, captures, GT_EXPR);
16277 0 : if (res) return res;
16278 : }
16279 : }
16280 : }
16281 0 : if ((_q70 == _q41 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q41, 0) && types_match (_q70, _q41)))
16282 : {
16283 0 : if ((_q71 == _q40 && ! TREE_SIDE_EFFECTS (_q71)) || (operand_equal_p (_q71, _q40, 0) && types_match (_q71, _q40)))
16284 : {
16285 0 : {
16286 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q41, _q40, _q20, _p1 };
16287 0 : tree res = generic_simplify_161 (loc, type, _p0, _p1, captures, GT_EXPR);
16288 0 : if (res) return res;
16289 : }
16290 : }
16291 : }
16292 : break;
16293 : }
16294 : default:;
16295 : }
16296 : break;
16297 : }
16298 : default:;
16299 : }
16300 : break;
16301 : }
16302 267 : case NE_EXPR:
16303 267 : {
16304 267 : tree _q20 = TREE_OPERAND (_p0, 0);
16305 267 : tree _q21 = TREE_OPERAND (_p0, 1);
16306 267 : if (tree_min_value (_q21))
16307 : {
16308 54 : switch (TREE_CODE (_p1))
16309 : {
16310 0 : case GT_EXPR:
16311 0 : {
16312 0 : tree _q50 = TREE_OPERAND (_p1, 0);
16313 0 : tree _q51 = TREE_OPERAND (_p1, 1);
16314 0 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
16315 : {
16316 0 : {
16317 0 : tree captures[3] ATTRIBUTE_UNUSED = { _q20, _q51, _p0 };
16318 0 : tree res = generic_simplify_162 (loc, type, _p0, _p1, captures);
16319 0 : if (res) return res;
16320 : }
16321 : }
16322 : break;
16323 : }
16324 0 : case LT_EXPR:
16325 0 : {
16326 0 : tree _q50 = TREE_OPERAND (_p1, 0);
16327 0 : tree _q51 = TREE_OPERAND (_p1, 1);
16328 0 : if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
16329 : {
16330 0 : {
16331 0 : tree captures[3] ATTRIBUTE_UNUSED = { _q20, _q50, _p0 };
16332 0 : tree res = generic_simplify_162 (loc, type, _p0, _p1, captures);
16333 0 : if (res) return res;
16334 : }
16335 : }
16336 : break;
16337 : }
16338 0 : case LE_EXPR:
16339 0 : {
16340 0 : tree _q50 = TREE_OPERAND (_p1, 0);
16341 0 : tree _q51 = TREE_OPERAND (_p1, 1);
16342 0 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
16343 : {
16344 0 : {
16345 0 : tree captures[2] ATTRIBUTE_UNUSED = { _q20, _q51 };
16346 0 : tree res = generic_simplify_163 (loc, type, _p0, _p1, captures);
16347 0 : if (res) return res;
16348 : }
16349 : }
16350 : break;
16351 : }
16352 1 : case GE_EXPR:
16353 1 : {
16354 1 : tree _q50 = TREE_OPERAND (_p1, 0);
16355 1 : tree _q51 = TREE_OPERAND (_p1, 1);
16356 1 : if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
16357 : {
16358 0 : {
16359 0 : tree captures[2] ATTRIBUTE_UNUSED = { _q20, _q50 };
16360 0 : tree res = generic_simplify_163 (loc, type, _p0, _p1, captures);
16361 0 : if (res) return res;
16362 : }
16363 : }
16364 : break;
16365 : }
16366 : default:;
16367 : }
16368 : }
16369 267 : if (tree_max_value (_q21))
16370 : {
16371 0 : switch (TREE_CODE (_p1))
16372 : {
16373 0 : case LT_EXPR:
16374 0 : {
16375 0 : tree _q50 = TREE_OPERAND (_p1, 0);
16376 0 : tree _q51 = TREE_OPERAND (_p1, 1);
16377 0 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
16378 : {
16379 0 : {
16380 0 : tree captures[3] ATTRIBUTE_UNUSED = { _q20, _q51, _p0 };
16381 0 : tree res = generic_simplify_164 (loc, type, _p0, _p1, captures);
16382 0 : if (res) return res;
16383 : }
16384 : }
16385 : break;
16386 : }
16387 0 : case GT_EXPR:
16388 0 : {
16389 0 : tree _q50 = TREE_OPERAND (_p1, 0);
16390 0 : tree _q51 = TREE_OPERAND (_p1, 1);
16391 0 : if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
16392 : {
16393 0 : {
16394 0 : tree captures[3] ATTRIBUTE_UNUSED = { _q20, _q50, _p0 };
16395 0 : tree res = generic_simplify_164 (loc, type, _p0, _p1, captures);
16396 0 : if (res) return res;
16397 : }
16398 : }
16399 : break;
16400 : }
16401 0 : case GE_EXPR:
16402 0 : {
16403 0 : tree _q50 = TREE_OPERAND (_p1, 0);
16404 0 : tree _q51 = TREE_OPERAND (_p1, 1);
16405 0 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
16406 : {
16407 0 : {
16408 0 : tree captures[3] ATTRIBUTE_UNUSED = { _p1, _q20, _q51 };
16409 0 : tree res = generic_simplify_165 (loc, type, _p0, _p1, captures, NE_EXPR);
16410 0 : if (res) return res;
16411 : }
16412 : }
16413 : break;
16414 : }
16415 0 : case LE_EXPR:
16416 0 : {
16417 0 : tree _q50 = TREE_OPERAND (_p1, 0);
16418 0 : tree _q51 = TREE_OPERAND (_p1, 1);
16419 0 : if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
16420 : {
16421 0 : {
16422 0 : tree captures[3] ATTRIBUTE_UNUSED = { _p1, _q20, _q50 };
16423 0 : tree res = generic_simplify_165 (loc, type, _p0, _p1, captures, NE_EXPR);
16424 0 : if (res) return res;
16425 : }
16426 : }
16427 : break;
16428 : }
16429 : default:;
16430 : }
16431 : }
16432 267 : switch (TREE_CODE (_p1))
16433 : {
16434 13 : case EQ_EXPR:
16435 13 : {
16436 13 : tree _q50 = TREE_OPERAND (_p1, 0);
16437 13 : tree _q51 = TREE_OPERAND (_p1, 1);
16438 13 : switch (TREE_CODE (_q50))
16439 : {
16440 0 : CASE_CONVERT:
16441 0 : {
16442 0 : tree _q60 = TREE_OPERAND (_q50, 0);
16443 0 : if ((_q60 == _q20 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q20, 0) && types_match (_q60, _q20)))
16444 : {
16445 0 : {
16446 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q50, _q51 };
16447 0 : tree res = generic_simplify_166 (loc, type, _p0, _p1, captures, EQ_EXPR, NE_EXPR);
16448 0 : if (res) return res;
16449 : }
16450 : }
16451 0 : if ((_q60 == _q21 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q21, 0) && types_match (_q60, _q21)))
16452 : {
16453 0 : {
16454 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q50, _q51 };
16455 0 : tree res = generic_simplify_166 (loc, type, _p0, _p1, captures, EQ_EXPR, NE_EXPR);
16456 0 : if (res) return res;
16457 : }
16458 : }
16459 : break;
16460 : }
16461 13 : default:;
16462 : }
16463 13 : switch (TREE_CODE (_q51))
16464 : {
16465 0 : CASE_CONVERT:
16466 0 : {
16467 0 : tree _q70 = TREE_OPERAND (_q51, 0);
16468 0 : if ((_q70 == _q20 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q20, 0) && types_match (_q70, _q20)))
16469 : {
16470 0 : {
16471 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q51, _q50 };
16472 0 : tree res = generic_simplify_166 (loc, type, _p0, _p1, captures, EQ_EXPR, NE_EXPR);
16473 0 : if (res) return res;
16474 : }
16475 : }
16476 0 : if ((_q70 == _q21 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q21, 0) && types_match (_q70, _q21)))
16477 : {
16478 0 : {
16479 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q51, _q50 };
16480 0 : tree res = generic_simplify_166 (loc, type, _p0, _p1, captures, EQ_EXPR, NE_EXPR);
16481 0 : if (res) return res;
16482 : }
16483 : }
16484 : break;
16485 : }
16486 : default:;
16487 : }
16488 : break;
16489 : }
16490 2 : case NE_EXPR:
16491 2 : {
16492 2 : tree _q50 = TREE_OPERAND (_p1, 0);
16493 2 : tree _q51 = TREE_OPERAND (_p1, 1);
16494 2 : switch (TREE_CODE (_q50))
16495 : {
16496 0 : CASE_CONVERT:
16497 0 : {
16498 0 : tree _q60 = TREE_OPERAND (_q50, 0);
16499 0 : if ((_q60 == _q20 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q20, 0) && types_match (_q60, _q20)))
16500 : {
16501 0 : {
16502 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q50, _q51 };
16503 0 : tree res = generic_simplify_166 (loc, type, _p0, _p1, captures, NE_EXPR, NE_EXPR);
16504 0 : if (res) return res;
16505 : }
16506 : }
16507 0 : if ((_q60 == _q21 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q21, 0) && types_match (_q60, _q21)))
16508 : {
16509 0 : {
16510 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q50, _q51 };
16511 0 : tree res = generic_simplify_166 (loc, type, _p0, _p1, captures, NE_EXPR, NE_EXPR);
16512 0 : if (res) return res;
16513 : }
16514 : }
16515 : break;
16516 : }
16517 2 : default:;
16518 : }
16519 2 : switch (TREE_CODE (_q51))
16520 : {
16521 0 : CASE_CONVERT:
16522 0 : {
16523 0 : tree _q70 = TREE_OPERAND (_q51, 0);
16524 0 : if ((_q70 == _q20 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q20, 0) && types_match (_q70, _q20)))
16525 : {
16526 0 : {
16527 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q51, _q50 };
16528 0 : tree res = generic_simplify_166 (loc, type, _p0, _p1, captures, NE_EXPR, NE_EXPR);
16529 0 : if (res) return res;
16530 : }
16531 : }
16532 0 : if ((_q70 == _q21 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q21, 0) && types_match (_q70, _q21)))
16533 : {
16534 0 : {
16535 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q51, _q50 };
16536 0 : tree res = generic_simplify_166 (loc, type, _p0, _p1, captures, NE_EXPR, NE_EXPR);
16537 0 : if (res) return res;
16538 : }
16539 : }
16540 : break;
16541 : }
16542 : default:;
16543 : }
16544 : break;
16545 : }
16546 0 : case LT_EXPR:
16547 0 : {
16548 0 : tree _q50 = TREE_OPERAND (_p1, 0);
16549 0 : tree _q51 = TREE_OPERAND (_p1, 1);
16550 0 : switch (TREE_CODE (_q50))
16551 : {
16552 0 : CASE_CONVERT:
16553 0 : {
16554 0 : tree _q60 = TREE_OPERAND (_q50, 0);
16555 0 : if ((_q60 == _q20 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q20, 0) && types_match (_q60, _q20)))
16556 : {
16557 0 : {
16558 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q50, _q51 };
16559 0 : tree res = generic_simplify_166 (loc, type, _p0, _p1, captures, LT_EXPR, NE_EXPR);
16560 0 : if (res) return res;
16561 : }
16562 : }
16563 0 : if ((_q60 == _q21 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q21, 0) && types_match (_q60, _q21)))
16564 : {
16565 0 : {
16566 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q50, _q51 };
16567 0 : tree res = generic_simplify_166 (loc, type, _p0, _p1, captures, LT_EXPR, NE_EXPR);
16568 0 : if (res) return res;
16569 : }
16570 : }
16571 : break;
16572 : }
16573 0 : default:;
16574 : }
16575 0 : switch (TREE_CODE (_q51))
16576 : {
16577 0 : CASE_CONVERT:
16578 0 : {
16579 0 : tree _q70 = TREE_OPERAND (_q51, 0);
16580 0 : if ((_q70 == _q20 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q20, 0) && types_match (_q70, _q20)))
16581 : {
16582 0 : {
16583 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q51, _q50 };
16584 0 : tree res = generic_simplify_166 (loc, type, _p0, _p1, captures, GT_EXPR, NE_EXPR);
16585 0 : if (res) return res;
16586 : }
16587 : }
16588 0 : if ((_q70 == _q21 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q21, 0) && types_match (_q70, _q21)))
16589 : {
16590 0 : {
16591 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q51, _q50 };
16592 0 : tree res = generic_simplify_166 (loc, type, _p0, _p1, captures, GT_EXPR, NE_EXPR);
16593 0 : if (res) return res;
16594 : }
16595 : }
16596 : break;
16597 : }
16598 : default:;
16599 : }
16600 : break;
16601 : }
16602 0 : case GT_EXPR:
16603 0 : {
16604 0 : tree _q50 = TREE_OPERAND (_p1, 0);
16605 0 : tree _q51 = TREE_OPERAND (_p1, 1);
16606 0 : switch (TREE_CODE (_q50))
16607 : {
16608 0 : CASE_CONVERT:
16609 0 : {
16610 0 : tree _q60 = TREE_OPERAND (_q50, 0);
16611 0 : if ((_q60 == _q20 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q20, 0) && types_match (_q60, _q20)))
16612 : {
16613 0 : {
16614 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q50, _q51 };
16615 0 : tree res = generic_simplify_166 (loc, type, _p0, _p1, captures, GT_EXPR, NE_EXPR);
16616 0 : if (res) return res;
16617 : }
16618 : }
16619 0 : if ((_q60 == _q21 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q21, 0) && types_match (_q60, _q21)))
16620 : {
16621 0 : {
16622 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q50, _q51 };
16623 0 : tree res = generic_simplify_166 (loc, type, _p0, _p1, captures, GT_EXPR, NE_EXPR);
16624 0 : if (res) return res;
16625 : }
16626 : }
16627 : break;
16628 : }
16629 0 : default:;
16630 : }
16631 0 : switch (TREE_CODE (_q51))
16632 : {
16633 0 : CASE_CONVERT:
16634 0 : {
16635 0 : tree _q70 = TREE_OPERAND (_q51, 0);
16636 0 : if ((_q70 == _q20 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q20, 0) && types_match (_q70, _q20)))
16637 : {
16638 0 : {
16639 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q51, _q50 };
16640 0 : tree res = generic_simplify_166 (loc, type, _p0, _p1, captures, LT_EXPR, NE_EXPR);
16641 0 : if (res) return res;
16642 : }
16643 : }
16644 0 : if ((_q70 == _q21 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q21, 0) && types_match (_q70, _q21)))
16645 : {
16646 0 : {
16647 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q51, _q50 };
16648 0 : tree res = generic_simplify_166 (loc, type, _p0, _p1, captures, LT_EXPR, NE_EXPR);
16649 0 : if (res) return res;
16650 : }
16651 : }
16652 : break;
16653 : }
16654 : default:;
16655 : }
16656 : break;
16657 : }
16658 0 : case LE_EXPR:
16659 0 : {
16660 0 : tree _q50 = TREE_OPERAND (_p1, 0);
16661 0 : tree _q51 = TREE_OPERAND (_p1, 1);
16662 0 : switch (TREE_CODE (_q50))
16663 : {
16664 0 : CASE_CONVERT:
16665 0 : {
16666 0 : tree _q60 = TREE_OPERAND (_q50, 0);
16667 0 : if ((_q60 == _q20 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q20, 0) && types_match (_q60, _q20)))
16668 : {
16669 0 : {
16670 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q50, _q51 };
16671 0 : tree res = generic_simplify_166 (loc, type, _p0, _p1, captures, LE_EXPR, NE_EXPR);
16672 0 : if (res) return res;
16673 : }
16674 : }
16675 0 : if ((_q60 == _q21 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q21, 0) && types_match (_q60, _q21)))
16676 : {
16677 0 : {
16678 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q50, _q51 };
16679 0 : tree res = generic_simplify_166 (loc, type, _p0, _p1, captures, LE_EXPR, NE_EXPR);
16680 0 : if (res) return res;
16681 : }
16682 : }
16683 : break;
16684 : }
16685 0 : default:;
16686 : }
16687 0 : switch (TREE_CODE (_q51))
16688 : {
16689 0 : CASE_CONVERT:
16690 0 : {
16691 0 : tree _q70 = TREE_OPERAND (_q51, 0);
16692 0 : if ((_q70 == _q20 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q20, 0) && types_match (_q70, _q20)))
16693 : {
16694 0 : {
16695 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q51, _q50 };
16696 0 : tree res = generic_simplify_166 (loc, type, _p0, _p1, captures, GE_EXPR, NE_EXPR);
16697 0 : if (res) return res;
16698 : }
16699 : }
16700 0 : if ((_q70 == _q21 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q21, 0) && types_match (_q70, _q21)))
16701 : {
16702 0 : {
16703 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q51, _q50 };
16704 0 : tree res = generic_simplify_166 (loc, type, _p0, _p1, captures, GE_EXPR, NE_EXPR);
16705 0 : if (res) return res;
16706 : }
16707 : }
16708 : break;
16709 : }
16710 : default:;
16711 : }
16712 : break;
16713 : }
16714 1 : case GE_EXPR:
16715 1 : {
16716 1 : tree _q50 = TREE_OPERAND (_p1, 0);
16717 1 : tree _q51 = TREE_OPERAND (_p1, 1);
16718 1 : switch (TREE_CODE (_q50))
16719 : {
16720 0 : CASE_CONVERT:
16721 0 : {
16722 0 : tree _q60 = TREE_OPERAND (_q50, 0);
16723 0 : if ((_q60 == _q20 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q20, 0) && types_match (_q60, _q20)))
16724 : {
16725 0 : {
16726 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q50, _q51 };
16727 0 : tree res = generic_simplify_166 (loc, type, _p0, _p1, captures, GE_EXPR, NE_EXPR);
16728 0 : if (res) return res;
16729 : }
16730 : }
16731 0 : if ((_q60 == _q21 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q21, 0) && types_match (_q60, _q21)))
16732 : {
16733 0 : {
16734 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q50, _q51 };
16735 0 : tree res = generic_simplify_166 (loc, type, _p0, _p1, captures, GE_EXPR, NE_EXPR);
16736 0 : if (res) return res;
16737 : }
16738 : }
16739 : break;
16740 : }
16741 1 : default:;
16742 : }
16743 1 : switch (TREE_CODE (_q51))
16744 : {
16745 0 : CASE_CONVERT:
16746 0 : {
16747 0 : tree _q70 = TREE_OPERAND (_q51, 0);
16748 0 : if ((_q70 == _q20 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q20, 0) && types_match (_q70, _q20)))
16749 : {
16750 0 : {
16751 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q51, _q50 };
16752 0 : tree res = generic_simplify_166 (loc, type, _p0, _p1, captures, LE_EXPR, NE_EXPR);
16753 0 : if (res) return res;
16754 : }
16755 : }
16756 0 : if ((_q70 == _q21 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q21, 0) && types_match (_q70, _q21)))
16757 : {
16758 0 : {
16759 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q51, _q50 };
16760 0 : tree res = generic_simplify_166 (loc, type, _p0, _p1, captures, LE_EXPR, NE_EXPR);
16761 0 : if (res) return res;
16762 : }
16763 : }
16764 : break;
16765 : }
16766 : default:;
16767 : }
16768 : break;
16769 : }
16770 267 : default:;
16771 : }
16772 267 : switch (TREE_CODE (_q20))
16773 : {
16774 20 : CASE_CONVERT:
16775 20 : {
16776 20 : tree _q30 = TREE_OPERAND (_q20, 0);
16777 20 : switch (TREE_CODE (_p1))
16778 : {
16779 0 : case EQ_EXPR:
16780 0 : {
16781 0 : tree _q60 = TREE_OPERAND (_p1, 0);
16782 0 : tree _q61 = TREE_OPERAND (_p1, 1);
16783 0 : if ((_q60 == _q30 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q30, 0) && types_match (_q60, _q30)))
16784 : {
16785 0 : {
16786 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q30, _q61, _p0, _q20, _q21 };
16787 0 : tree res = generic_simplify_157 (loc, type, _p0, _p1, captures, NE_EXPR, EQ_EXPR);
16788 0 : if (res) return res;
16789 : }
16790 : }
16791 0 : if ((_q61 == _q30 && ! TREE_SIDE_EFFECTS (_q61)) || (operand_equal_p (_q61, _q30, 0) && types_match (_q61, _q30)))
16792 : {
16793 0 : {
16794 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q30, _q60, _p0, _q20, _q21 };
16795 0 : tree res = generic_simplify_157 (loc, type, _p0, _p1, captures, NE_EXPR, EQ_EXPR);
16796 0 : if (res) return res;
16797 : }
16798 : }
16799 : break;
16800 : }
16801 0 : case NE_EXPR:
16802 0 : {
16803 0 : tree _q60 = TREE_OPERAND (_p1, 0);
16804 0 : tree _q61 = TREE_OPERAND (_p1, 1);
16805 0 : if ((_q60 == _q30 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q30, 0) && types_match (_q60, _q30)))
16806 : {
16807 0 : {
16808 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q30, _q61, _p0, _q20, _q21 };
16809 0 : tree res = generic_simplify_157 (loc, type, _p0, _p1, captures, NE_EXPR, NE_EXPR);
16810 0 : if (res) return res;
16811 : }
16812 : }
16813 0 : if ((_q61 == _q30 && ! TREE_SIDE_EFFECTS (_q61)) || (operand_equal_p (_q61, _q30, 0) && types_match (_q61, _q30)))
16814 : {
16815 0 : {
16816 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q30, _q60, _p0, _q20, _q21 };
16817 0 : tree res = generic_simplify_157 (loc, type, _p0, _p1, captures, NE_EXPR, NE_EXPR);
16818 0 : if (res) return res;
16819 : }
16820 : }
16821 : break;
16822 : }
16823 : default:;
16824 : }
16825 : break;
16826 : }
16827 267 : default:;
16828 : }
16829 267 : switch (TREE_CODE (_q21))
16830 : {
16831 0 : CASE_CONVERT:
16832 0 : {
16833 0 : tree _q40 = TREE_OPERAND (_q21, 0);
16834 0 : switch (TREE_CODE (_p1))
16835 : {
16836 0 : case EQ_EXPR:
16837 0 : {
16838 0 : tree _q60 = TREE_OPERAND (_p1, 0);
16839 0 : tree _q61 = TREE_OPERAND (_p1, 1);
16840 0 : if ((_q60 == _q40 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q40, 0) && types_match (_q60, _q40)))
16841 : {
16842 0 : {
16843 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q40, _q61, _p0, _q21, _q20 };
16844 0 : tree res = generic_simplify_157 (loc, type, _p0, _p1, captures, NE_EXPR, EQ_EXPR);
16845 0 : if (res) return res;
16846 : }
16847 : }
16848 0 : if ((_q61 == _q40 && ! TREE_SIDE_EFFECTS (_q61)) || (operand_equal_p (_q61, _q40, 0) && types_match (_q61, _q40)))
16849 : {
16850 0 : {
16851 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q40, _q60, _p0, _q21, _q20 };
16852 0 : tree res = generic_simplify_157 (loc, type, _p0, _p1, captures, NE_EXPR, EQ_EXPR);
16853 0 : if (res) return res;
16854 : }
16855 : }
16856 : break;
16857 : }
16858 0 : case NE_EXPR:
16859 0 : {
16860 0 : tree _q60 = TREE_OPERAND (_p1, 0);
16861 0 : tree _q61 = TREE_OPERAND (_p1, 1);
16862 0 : if ((_q60 == _q40 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q40, 0) && types_match (_q60, _q40)))
16863 : {
16864 0 : {
16865 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q40, _q61, _p0, _q21, _q20 };
16866 0 : tree res = generic_simplify_157 (loc, type, _p0, _p1, captures, NE_EXPR, NE_EXPR);
16867 0 : if (res) return res;
16868 : }
16869 : }
16870 0 : if ((_q61 == _q40 && ! TREE_SIDE_EFFECTS (_q61)) || (operand_equal_p (_q61, _q40, 0) && types_match (_q61, _q40)))
16871 : {
16872 0 : {
16873 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q40, _q60, _p0, _q21, _q20 };
16874 0 : tree res = generic_simplify_157 (loc, type, _p0, _p1, captures, NE_EXPR, NE_EXPR);
16875 0 : if (res) return res;
16876 : }
16877 : }
16878 : break;
16879 : }
16880 : default:;
16881 : }
16882 : break;
16883 : }
16884 267 : default:;
16885 : }
16886 267 : switch (TREE_CODE (_p1))
16887 : {
16888 13 : case EQ_EXPR:
16889 13 : {
16890 13 : tree _q50 = TREE_OPERAND (_p1, 0);
16891 13 : tree _q51 = TREE_OPERAND (_p1, 1);
16892 13 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
16893 : {
16894 0 : {
16895 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q50, _q51 };
16896 0 : tree res = generic_simplify_167 (loc, type, _p0, _p1, captures, EQ_EXPR, NE_EXPR);
16897 0 : if (res) return res;
16898 : }
16899 0 : {
16900 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q20, _q51, _p0, _q20, _q21 };
16901 0 : tree res = generic_simplify_158 (loc, type, _p0, _p1, captures, NE_EXPR, EQ_EXPR);
16902 0 : if (res) return res;
16903 : }
16904 : }
16905 13 : if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
16906 : {
16907 0 : {
16908 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q51, _q50 };
16909 0 : tree res = generic_simplify_167 (loc, type, _p0, _p1, captures, EQ_EXPR, NE_EXPR);
16910 0 : if (res) return res;
16911 : }
16912 : }
16913 13 : if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
16914 : {
16915 0 : {
16916 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q50, _q51 };
16917 0 : tree res = generic_simplify_167 (loc, type, _p0, _p1, captures, EQ_EXPR, NE_EXPR);
16918 0 : if (res) return res;
16919 : }
16920 0 : {
16921 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q21, _q51, _p0, _q21, _q20 };
16922 0 : tree res = generic_simplify_158 (loc, type, _p0, _p1, captures, NE_EXPR, EQ_EXPR);
16923 0 : if (res) return res;
16924 : }
16925 : }
16926 13 : if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
16927 : {
16928 5 : {
16929 5 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q51, _q50 };
16930 5 : tree res = generic_simplify_167 (loc, type, _p0, _p1, captures, EQ_EXPR, NE_EXPR);
16931 5 : if (res) return res;
16932 : }
16933 5 : {
16934 5 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q21, _q50, _p0, _q21, _q20 };
16935 5 : tree res = generic_simplify_158 (loc, type, _p0, _p1, captures, NE_EXPR, EQ_EXPR);
16936 5 : if (res) return res;
16937 : }
16938 : }
16939 13 : if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
16940 : {
16941 0 : {
16942 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q20, _q50, _p0, _q20, _q21 };
16943 0 : tree res = generic_simplify_158 (loc, type, _p0, _p1, captures, NE_EXPR, EQ_EXPR);
16944 0 : if (res) return res;
16945 : }
16946 : }
16947 : break;
16948 : }
16949 2 : case NE_EXPR:
16950 2 : {
16951 2 : tree _q50 = TREE_OPERAND (_p1, 0);
16952 2 : tree _q51 = TREE_OPERAND (_p1, 1);
16953 2 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
16954 : {
16955 0 : {
16956 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q50, _q51 };
16957 0 : tree res = generic_simplify_167 (loc, type, _p0, _p1, captures, NE_EXPR, NE_EXPR);
16958 0 : if (res) return res;
16959 : }
16960 0 : {
16961 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q20, _q51, _p0, _q20, _q21 };
16962 0 : tree res = generic_simplify_158 (loc, type, _p0, _p1, captures, NE_EXPR, NE_EXPR);
16963 0 : if (res) return res;
16964 : }
16965 : }
16966 2 : if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
16967 : {
16968 0 : {
16969 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q51, _q50 };
16970 0 : tree res = generic_simplify_167 (loc, type, _p0, _p1, captures, NE_EXPR, NE_EXPR);
16971 0 : if (res) return res;
16972 : }
16973 : }
16974 2 : if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
16975 : {
16976 0 : {
16977 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q50, _q51 };
16978 0 : tree res = generic_simplify_167 (loc, type, _p0, _p1, captures, NE_EXPR, NE_EXPR);
16979 0 : if (res) return res;
16980 : }
16981 0 : {
16982 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q21, _q51, _p0, _q21, _q20 };
16983 0 : tree res = generic_simplify_158 (loc, type, _p0, _p1, captures, NE_EXPR, NE_EXPR);
16984 0 : if (res) return res;
16985 : }
16986 : }
16987 2 : if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
16988 : {
16989 0 : {
16990 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q51, _q50 };
16991 0 : tree res = generic_simplify_167 (loc, type, _p0, _p1, captures, NE_EXPR, NE_EXPR);
16992 0 : if (res) return res;
16993 : }
16994 0 : {
16995 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q21, _q50, _p0, _q21, _q20 };
16996 0 : tree res = generic_simplify_158 (loc, type, _p0, _p1, captures, NE_EXPR, NE_EXPR);
16997 0 : if (res) return res;
16998 : }
16999 : }
17000 2 : if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
17001 : {
17002 0 : {
17003 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q20, _q50, _p0, _q20, _q21 };
17004 0 : tree res = generic_simplify_158 (loc, type, _p0, _p1, captures, NE_EXPR, NE_EXPR);
17005 0 : if (res) return res;
17006 : }
17007 : }
17008 : break;
17009 : }
17010 0 : case LT_EXPR:
17011 0 : {
17012 0 : tree _q50 = TREE_OPERAND (_p1, 0);
17013 0 : tree _q51 = TREE_OPERAND (_p1, 1);
17014 0 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
17015 : {
17016 0 : {
17017 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q50, _q51 };
17018 0 : tree res = generic_simplify_167 (loc, type, _p0, _p1, captures, LT_EXPR, NE_EXPR);
17019 0 : if (res) return res;
17020 : }
17021 : }
17022 0 : if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
17023 : {
17024 0 : {
17025 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q51, _q50 };
17026 0 : tree res = generic_simplify_167 (loc, type, _p0, _p1, captures, GT_EXPR, NE_EXPR);
17027 0 : if (res) return res;
17028 : }
17029 : }
17030 0 : if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
17031 : {
17032 0 : {
17033 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q50, _q51 };
17034 0 : tree res = generic_simplify_167 (loc, type, _p0, _p1, captures, LT_EXPR, NE_EXPR);
17035 0 : if (res) return res;
17036 : }
17037 : }
17038 0 : if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
17039 : {
17040 0 : {
17041 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q51, _q50 };
17042 0 : tree res = generic_simplify_167 (loc, type, _p0, _p1, captures, GT_EXPR, NE_EXPR);
17043 0 : if (res) return res;
17044 : }
17045 : }
17046 : break;
17047 : }
17048 0 : case GT_EXPR:
17049 0 : {
17050 0 : tree _q50 = TREE_OPERAND (_p1, 0);
17051 0 : tree _q51 = TREE_OPERAND (_p1, 1);
17052 0 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
17053 : {
17054 0 : {
17055 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q50, _q51 };
17056 0 : tree res = generic_simplify_167 (loc, type, _p0, _p1, captures, GT_EXPR, NE_EXPR);
17057 0 : if (res) return res;
17058 : }
17059 : }
17060 0 : if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
17061 : {
17062 0 : {
17063 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q51, _q50 };
17064 0 : tree res = generic_simplify_167 (loc, type, _p0, _p1, captures, LT_EXPR, NE_EXPR);
17065 0 : if (res) return res;
17066 : }
17067 : }
17068 0 : if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
17069 : {
17070 0 : {
17071 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q50, _q51 };
17072 0 : tree res = generic_simplify_167 (loc, type, _p0, _p1, captures, GT_EXPR, NE_EXPR);
17073 0 : if (res) return res;
17074 : }
17075 : }
17076 0 : if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
17077 : {
17078 0 : {
17079 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q51, _q50 };
17080 0 : tree res = generic_simplify_167 (loc, type, _p0, _p1, captures, LT_EXPR, NE_EXPR);
17081 0 : if (res) return res;
17082 : }
17083 : }
17084 : break;
17085 : }
17086 0 : case LE_EXPR:
17087 0 : {
17088 0 : tree _q50 = TREE_OPERAND (_p1, 0);
17089 0 : tree _q51 = TREE_OPERAND (_p1, 1);
17090 0 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
17091 : {
17092 0 : {
17093 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q50, _q51 };
17094 0 : tree res = generic_simplify_167 (loc, type, _p0, _p1, captures, LE_EXPR, NE_EXPR);
17095 0 : if (res) return res;
17096 : }
17097 : }
17098 0 : if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
17099 : {
17100 0 : {
17101 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q51, _q50 };
17102 0 : tree res = generic_simplify_167 (loc, type, _p0, _p1, captures, GE_EXPR, NE_EXPR);
17103 0 : if (res) return res;
17104 : }
17105 : }
17106 0 : if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
17107 : {
17108 0 : {
17109 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q50, _q51 };
17110 0 : tree res = generic_simplify_167 (loc, type, _p0, _p1, captures, LE_EXPR, NE_EXPR);
17111 0 : if (res) return res;
17112 : }
17113 : }
17114 0 : if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
17115 : {
17116 0 : {
17117 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q51, _q50 };
17118 0 : tree res = generic_simplify_167 (loc, type, _p0, _p1, captures, GE_EXPR, NE_EXPR);
17119 0 : if (res) return res;
17120 : }
17121 : }
17122 : break;
17123 : }
17124 1 : case GE_EXPR:
17125 1 : {
17126 1 : tree _q50 = TREE_OPERAND (_p1, 0);
17127 1 : tree _q51 = TREE_OPERAND (_p1, 1);
17128 1 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
17129 : {
17130 0 : {
17131 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q50, _q51 };
17132 0 : tree res = generic_simplify_167 (loc, type, _p0, _p1, captures, GE_EXPR, NE_EXPR);
17133 0 : if (res) return res;
17134 : }
17135 : }
17136 1 : if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
17137 : {
17138 0 : {
17139 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q51, _q50 };
17140 0 : tree res = generic_simplify_167 (loc, type, _p0, _p1, captures, LE_EXPR, NE_EXPR);
17141 0 : if (res) return res;
17142 : }
17143 : }
17144 1 : if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
17145 : {
17146 0 : {
17147 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q50, _q51 };
17148 0 : tree res = generic_simplify_167 (loc, type, _p0, _p1, captures, GE_EXPR, NE_EXPR);
17149 0 : if (res) return res;
17150 : }
17151 : }
17152 1 : if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
17153 : {
17154 0 : {
17155 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q51, _q50 };
17156 0 : tree res = generic_simplify_167 (loc, type, _p0, _p1, captures, LE_EXPR, NE_EXPR);
17157 0 : if (res) return res;
17158 : }
17159 : }
17160 : break;
17161 : }
17162 267 : default:;
17163 : }
17164 267 : switch (TREE_CODE (_q20))
17165 : {
17166 33 : case BIT_AND_EXPR:
17167 33 : {
17168 33 : tree _q30 = TREE_OPERAND (_q20, 0);
17169 33 : tree _q31 = TREE_OPERAND (_q20, 1);
17170 33 : switch (TREE_CODE (_q30))
17171 : {
17172 0 : case BIT_XOR_EXPR:
17173 0 : {
17174 0 : tree _q40 = TREE_OPERAND (_q30, 0);
17175 0 : tree _q41 = TREE_OPERAND (_q30, 1);
17176 0 : if (tree_expr_nonzero_p (_q31))
17177 : {
17178 0 : switch (TREE_CODE (_p1))
17179 : {
17180 0 : case NE_EXPR:
17181 0 : {
17182 0 : tree _q90 = TREE_OPERAND (_p1, 0);
17183 0 : tree _q91 = TREE_OPERAND (_p1, 1);
17184 0 : if ((_q90 == _q40 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q40, 0) && types_match (_q90, _q40)))
17185 : {
17186 0 : if ((_q91 == _q41 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q41, 0) && types_match (_q91, _q41)))
17187 : {
17188 0 : {
17189 0 : tree captures[5] ATTRIBUTE_UNUSED = { _q40, _q41, _q31, _q21, _p1 };
17190 0 : tree res = generic_simplify_160 (loc, type, _p0, _p1, captures, NE_EXPR);
17191 0 : if (res) return res;
17192 : }
17193 : }
17194 : }
17195 0 : if ((_q90 == _q41 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q41, 0) && types_match (_q90, _q41)))
17196 : {
17197 0 : if ((_q91 == _q40 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q40, 0) && types_match (_q91, _q40)))
17198 : {
17199 0 : {
17200 0 : tree captures[5] ATTRIBUTE_UNUSED = { _q41, _q40, _q31, _q21, _p1 };
17201 0 : tree res = generic_simplify_160 (loc, type, _p0, _p1, captures, NE_EXPR);
17202 0 : if (res) return res;
17203 : }
17204 : }
17205 : }
17206 : break;
17207 : }
17208 : default:;
17209 : }
17210 : }
17211 : break;
17212 : }
17213 33 : default:;
17214 : }
17215 33 : if (tree_expr_nonzero_p (_q30))
17216 : {
17217 0 : switch (TREE_CODE (_q31))
17218 : {
17219 0 : case BIT_XOR_EXPR:
17220 0 : {
17221 0 : tree _q50 = TREE_OPERAND (_q31, 0);
17222 0 : tree _q51 = TREE_OPERAND (_q31, 1);
17223 0 : switch (TREE_CODE (_p1))
17224 : {
17225 0 : case NE_EXPR:
17226 0 : {
17227 0 : tree _q90 = TREE_OPERAND (_p1, 0);
17228 0 : tree _q91 = TREE_OPERAND (_p1, 1);
17229 0 : if ((_q90 == _q50 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q50, 0) && types_match (_q90, _q50)))
17230 : {
17231 0 : if ((_q91 == _q51 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q51, 0) && types_match (_q91, _q51)))
17232 : {
17233 0 : {
17234 0 : tree captures[5] ATTRIBUTE_UNUSED = { _q50, _q51, _q30, _q21, _p1 };
17235 0 : tree res = generic_simplify_160 (loc, type, _p0, _p1, captures, NE_EXPR);
17236 0 : if (res) return res;
17237 : }
17238 : }
17239 : }
17240 0 : if ((_q90 == _q51 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q51, 0) && types_match (_q90, _q51)))
17241 : {
17242 0 : if ((_q91 == _q50 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q50, 0) && types_match (_q91, _q50)))
17243 : {
17244 0 : {
17245 0 : tree captures[5] ATTRIBUTE_UNUSED = { _q51, _q50, _q30, _q21, _p1 };
17246 0 : tree res = generic_simplify_160 (loc, type, _p0, _p1, captures, NE_EXPR);
17247 0 : if (res) return res;
17248 : }
17249 : }
17250 : }
17251 : break;
17252 : }
17253 : default:;
17254 : }
17255 : break;
17256 : }
17257 : default:;
17258 : }
17259 : }
17260 : break;
17261 : }
17262 267 : default:;
17263 : }
17264 267 : switch (TREE_CODE (_q21))
17265 : {
17266 0 : case BIT_AND_EXPR:
17267 0 : {
17268 0 : tree _q40 = TREE_OPERAND (_q21, 0);
17269 0 : tree _q41 = TREE_OPERAND (_q21, 1);
17270 0 : switch (TREE_CODE (_q40))
17271 : {
17272 0 : case BIT_XOR_EXPR:
17273 0 : {
17274 0 : tree _q50 = TREE_OPERAND (_q40, 0);
17275 0 : tree _q51 = TREE_OPERAND (_q40, 1);
17276 0 : if (tree_expr_nonzero_p (_q41))
17277 : {
17278 0 : switch (TREE_CODE (_p1))
17279 : {
17280 0 : case NE_EXPR:
17281 0 : {
17282 0 : tree _q90 = TREE_OPERAND (_p1, 0);
17283 0 : tree _q91 = TREE_OPERAND (_p1, 1);
17284 0 : if ((_q90 == _q50 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q50, 0) && types_match (_q90, _q50)))
17285 : {
17286 0 : if ((_q91 == _q51 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q51, 0) && types_match (_q91, _q51)))
17287 : {
17288 0 : {
17289 0 : tree captures[5] ATTRIBUTE_UNUSED = { _q50, _q51, _q41, _q20, _p1 };
17290 0 : tree res = generic_simplify_160 (loc, type, _p0, _p1, captures, NE_EXPR);
17291 0 : if (res) return res;
17292 : }
17293 : }
17294 : }
17295 0 : if ((_q90 == _q51 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q51, 0) && types_match (_q90, _q51)))
17296 : {
17297 0 : if ((_q91 == _q50 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q50, 0) && types_match (_q91, _q50)))
17298 : {
17299 0 : {
17300 0 : tree captures[5] ATTRIBUTE_UNUSED = { _q51, _q50, _q41, _q20, _p1 };
17301 0 : tree res = generic_simplify_160 (loc, type, _p0, _p1, captures, NE_EXPR);
17302 0 : if (res) return res;
17303 : }
17304 : }
17305 : }
17306 : break;
17307 : }
17308 : default:;
17309 : }
17310 : }
17311 : break;
17312 : }
17313 0 : default:;
17314 : }
17315 0 : if (tree_expr_nonzero_p (_q40))
17316 : {
17317 0 : switch (TREE_CODE (_q41))
17318 : {
17319 0 : case BIT_XOR_EXPR:
17320 0 : {
17321 0 : tree _q60 = TREE_OPERAND (_q41, 0);
17322 0 : tree _q61 = TREE_OPERAND (_q41, 1);
17323 0 : switch (TREE_CODE (_p1))
17324 : {
17325 0 : case NE_EXPR:
17326 0 : {
17327 0 : tree _q90 = TREE_OPERAND (_p1, 0);
17328 0 : tree _q91 = TREE_OPERAND (_p1, 1);
17329 0 : if ((_q90 == _q60 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q60, 0) && types_match (_q90, _q60)))
17330 : {
17331 0 : if ((_q91 == _q61 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q61, 0) && types_match (_q91, _q61)))
17332 : {
17333 0 : {
17334 0 : tree captures[5] ATTRIBUTE_UNUSED = { _q60, _q61, _q40, _q20, _p1 };
17335 0 : tree res = generic_simplify_160 (loc, type, _p0, _p1, captures, NE_EXPR);
17336 0 : if (res) return res;
17337 : }
17338 : }
17339 : }
17340 0 : if ((_q90 == _q61 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q61, 0) && types_match (_q90, _q61)))
17341 : {
17342 0 : if ((_q91 == _q60 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q60, 0) && types_match (_q91, _q60)))
17343 : {
17344 0 : {
17345 0 : tree captures[5] ATTRIBUTE_UNUSED = { _q61, _q60, _q40, _q20, _p1 };
17346 0 : tree res = generic_simplify_160 (loc, type, _p0, _p1, captures, NE_EXPR);
17347 0 : if (res) return res;
17348 : }
17349 : }
17350 : }
17351 : break;
17352 : }
17353 : default:;
17354 : }
17355 : break;
17356 : }
17357 : default:;
17358 : }
17359 : }
17360 : break;
17361 : }
17362 267 : default:;
17363 : }
17364 267 : switch (TREE_CODE (_q20))
17365 : {
17366 0 : case BIT_XOR_EXPR:
17367 0 : {
17368 0 : tree _q30 = TREE_OPERAND (_q20, 0);
17369 0 : tree _q31 = TREE_OPERAND (_q20, 1);
17370 0 : switch (TREE_CODE (_p1))
17371 : {
17372 0 : case NE_EXPR:
17373 0 : {
17374 0 : tree _q70 = TREE_OPERAND (_p1, 0);
17375 0 : tree _q71 = TREE_OPERAND (_p1, 1);
17376 0 : if ((_q70 == _q30 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q30, 0) && types_match (_q70, _q30)))
17377 : {
17378 0 : if ((_q71 == _q31 && ! TREE_SIDE_EFFECTS (_q71)) || (operand_equal_p (_q71, _q31, 0) && types_match (_q71, _q31)))
17379 : {
17380 0 : {
17381 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q30, _q31, _q21, _p1 };
17382 0 : tree res = generic_simplify_161 (loc, type, _p0, _p1, captures, NE_EXPR);
17383 0 : if (res) return res;
17384 : }
17385 : }
17386 : }
17387 0 : if ((_q70 == _q31 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q31, 0) && types_match (_q70, _q31)))
17388 : {
17389 0 : if ((_q71 == _q30 && ! TREE_SIDE_EFFECTS (_q71)) || (operand_equal_p (_q71, _q30, 0) && types_match (_q71, _q30)))
17390 : {
17391 0 : {
17392 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q31, _q30, _q21, _p1 };
17393 0 : tree res = generic_simplify_161 (loc, type, _p0, _p1, captures, NE_EXPR);
17394 0 : if (res) return res;
17395 : }
17396 : }
17397 : }
17398 : break;
17399 : }
17400 : default:;
17401 : }
17402 : break;
17403 : }
17404 267 : default:;
17405 : }
17406 267 : switch (TREE_CODE (_q21))
17407 : {
17408 0 : case BIT_XOR_EXPR:
17409 0 : {
17410 0 : tree _q40 = TREE_OPERAND (_q21, 0);
17411 0 : tree _q41 = TREE_OPERAND (_q21, 1);
17412 0 : switch (TREE_CODE (_p1))
17413 : {
17414 0 : case NE_EXPR:
17415 0 : {
17416 0 : tree _q70 = TREE_OPERAND (_p1, 0);
17417 0 : tree _q71 = TREE_OPERAND (_p1, 1);
17418 0 : if ((_q70 == _q40 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q40, 0) && types_match (_q70, _q40)))
17419 : {
17420 0 : if ((_q71 == _q41 && ! TREE_SIDE_EFFECTS (_q71)) || (operand_equal_p (_q71, _q41, 0) && types_match (_q71, _q41)))
17421 : {
17422 0 : {
17423 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q40, _q41, _q20, _p1 };
17424 0 : tree res = generic_simplify_161 (loc, type, _p0, _p1, captures, NE_EXPR);
17425 0 : if (res) return res;
17426 : }
17427 : }
17428 : }
17429 0 : if ((_q70 == _q41 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q41, 0) && types_match (_q70, _q41)))
17430 : {
17431 0 : if ((_q71 == _q40 && ! TREE_SIDE_EFFECTS (_q71)) || (operand_equal_p (_q71, _q40, 0) && types_match (_q71, _q40)))
17432 : {
17433 0 : {
17434 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q41, _q40, _q20, _p1 };
17435 0 : tree res = generic_simplify_161 (loc, type, _p0, _p1, captures, NE_EXPR);
17436 0 : if (res) return res;
17437 : }
17438 : }
17439 : }
17440 : break;
17441 : }
17442 : default:;
17443 : }
17444 : break;
17445 : }
17446 : default:;
17447 : }
17448 : break;
17449 : }
17450 157 : case LE_EXPR:
17451 157 : {
17452 157 : tree _q20 = TREE_OPERAND (_p0, 0);
17453 157 : tree _q21 = TREE_OPERAND (_p0, 1);
17454 157 : switch (TREE_CODE (_p1))
17455 : {
17456 11 : case NE_EXPR:
17457 11 : {
17458 11 : tree _q50 = TREE_OPERAND (_p1, 0);
17459 11 : tree _q51 = TREE_OPERAND (_p1, 1);
17460 11 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
17461 : {
17462 11 : if (tree_min_value (_q51))
17463 : {
17464 4 : {
17465 4 : tree captures[2] ATTRIBUTE_UNUSED = { _q20, _q21 };
17466 4 : tree res = generic_simplify_168 (loc, type, _p0, _p1, captures);
17467 4 : if (res) return res;
17468 : }
17469 : }
17470 : }
17471 7 : if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
17472 : {
17473 0 : if (tree_max_value (_q51))
17474 : {
17475 0 : {
17476 0 : tree captures[3] ATTRIBUTE_UNUSED = { _p0, _q21, _q20 };
17477 0 : tree res = generic_simplify_169 (loc, type, _p0, _p1, captures, NE_EXPR);
17478 0 : if (res) return res;
17479 : }
17480 : }
17481 : }
17482 : break;
17483 : }
17484 31 : case EQ_EXPR:
17485 31 : {
17486 31 : tree _q50 = TREE_OPERAND (_p1, 0);
17487 31 : tree _q51 = TREE_OPERAND (_p1, 1);
17488 31 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
17489 : {
17490 11 : if (tree_min_value (_q51))
17491 : {
17492 4 : {
17493 4 : tree captures[3] ATTRIBUTE_UNUSED = { _p0, _q20, _q21 };
17494 4 : tree res = generic_simplify_170 (loc, type, _p0, _p1, captures);
17495 4 : if (res) return res;
17496 : }
17497 : }
17498 : }
17499 27 : if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
17500 : {
17501 0 : if (tree_max_value (_q51))
17502 : {
17503 0 : {
17504 0 : tree captures[3] ATTRIBUTE_UNUSED = { _p0, _q21, _q20 };
17505 0 : tree res = generic_simplify_169 (loc, type, _p0, _p1, captures, EQ_EXPR);
17506 0 : if (res) return res;
17507 : }
17508 : }
17509 : }
17510 : break;
17511 : }
17512 149 : default:;
17513 : }
17514 149 : switch (TREE_CODE (_q20))
17515 : {
17516 0 : CASE_CONVERT:
17517 0 : {
17518 0 : tree _q30 = TREE_OPERAND (_q20, 0);
17519 0 : switch (TREE_CODE (_p1))
17520 : {
17521 0 : case EQ_EXPR:
17522 0 : {
17523 0 : tree _q60 = TREE_OPERAND (_p1, 0);
17524 0 : tree _q61 = TREE_OPERAND (_p1, 1);
17525 0 : if ((_q60 == _q30 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q30, 0) && types_match (_q60, _q30)))
17526 : {
17527 0 : {
17528 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q30, _q61, _p0, _q20, _q21 };
17529 0 : tree res = generic_simplify_157 (loc, type, _p0, _p1, captures, LE_EXPR, EQ_EXPR);
17530 0 : if (res) return res;
17531 : }
17532 : }
17533 0 : if ((_q61 == _q30 && ! TREE_SIDE_EFFECTS (_q61)) || (operand_equal_p (_q61, _q30, 0) && types_match (_q61, _q30)))
17534 : {
17535 0 : {
17536 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q30, _q60, _p0, _q20, _q21 };
17537 0 : tree res = generic_simplify_157 (loc, type, _p0, _p1, captures, LE_EXPR, EQ_EXPR);
17538 0 : if (res) return res;
17539 : }
17540 : }
17541 : break;
17542 : }
17543 0 : case NE_EXPR:
17544 0 : {
17545 0 : tree _q60 = TREE_OPERAND (_p1, 0);
17546 0 : tree _q61 = TREE_OPERAND (_p1, 1);
17547 0 : if ((_q60 == _q30 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q30, 0) && types_match (_q60, _q30)))
17548 : {
17549 0 : {
17550 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q30, _q61, _p0, _q20, _q21 };
17551 0 : tree res = generic_simplify_157 (loc, type, _p0, _p1, captures, LE_EXPR, NE_EXPR);
17552 0 : if (res) return res;
17553 : }
17554 : }
17555 0 : if ((_q61 == _q30 && ! TREE_SIDE_EFFECTS (_q61)) || (operand_equal_p (_q61, _q30, 0) && types_match (_q61, _q30)))
17556 : {
17557 0 : {
17558 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q30, _q60, _p0, _q20, _q21 };
17559 0 : tree res = generic_simplify_157 (loc, type, _p0, _p1, captures, LE_EXPR, NE_EXPR);
17560 0 : if (res) return res;
17561 : }
17562 : }
17563 : break;
17564 : }
17565 : default:;
17566 : }
17567 : break;
17568 : }
17569 149 : default:;
17570 : }
17571 149 : switch (TREE_CODE (_q21))
17572 : {
17573 0 : CASE_CONVERT:
17574 0 : {
17575 0 : tree _q40 = TREE_OPERAND (_q21, 0);
17576 0 : switch (TREE_CODE (_p1))
17577 : {
17578 0 : case EQ_EXPR:
17579 0 : {
17580 0 : tree _q60 = TREE_OPERAND (_p1, 0);
17581 0 : tree _q61 = TREE_OPERAND (_p1, 1);
17582 0 : if ((_q60 == _q40 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q40, 0) && types_match (_q60, _q40)))
17583 : {
17584 0 : {
17585 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q40, _q61, _p0, _q21, _q20 };
17586 0 : tree res = generic_simplify_157 (loc, type, _p0, _p1, captures, GE_EXPR, EQ_EXPR);
17587 0 : if (res) return res;
17588 : }
17589 : }
17590 0 : if ((_q61 == _q40 && ! TREE_SIDE_EFFECTS (_q61)) || (operand_equal_p (_q61, _q40, 0) && types_match (_q61, _q40)))
17591 : {
17592 0 : {
17593 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q40, _q60, _p0, _q21, _q20 };
17594 0 : tree res = generic_simplify_157 (loc, type, _p0, _p1, captures, GE_EXPR, EQ_EXPR);
17595 0 : if (res) return res;
17596 : }
17597 : }
17598 : break;
17599 : }
17600 0 : case NE_EXPR:
17601 0 : {
17602 0 : tree _q60 = TREE_OPERAND (_p1, 0);
17603 0 : tree _q61 = TREE_OPERAND (_p1, 1);
17604 0 : if ((_q60 == _q40 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q40, 0) && types_match (_q60, _q40)))
17605 : {
17606 0 : {
17607 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q40, _q61, _p0, _q21, _q20 };
17608 0 : tree res = generic_simplify_157 (loc, type, _p0, _p1, captures, GE_EXPR, NE_EXPR);
17609 0 : if (res) return res;
17610 : }
17611 : }
17612 0 : if ((_q61 == _q40 && ! TREE_SIDE_EFFECTS (_q61)) || (operand_equal_p (_q61, _q40, 0) && types_match (_q61, _q40)))
17613 : {
17614 0 : {
17615 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q40, _q60, _p0, _q21, _q20 };
17616 0 : tree res = generic_simplify_157 (loc, type, _p0, _p1, captures, GE_EXPR, NE_EXPR);
17617 0 : if (res) return res;
17618 : }
17619 : }
17620 : break;
17621 : }
17622 : default:;
17623 : }
17624 : break;
17625 : }
17626 149 : default:;
17627 : }
17628 149 : switch (TREE_CODE (_p1))
17629 : {
17630 27 : case EQ_EXPR:
17631 27 : {
17632 27 : tree _q50 = TREE_OPERAND (_p1, 0);
17633 27 : tree _q51 = TREE_OPERAND (_p1, 1);
17634 27 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
17635 : {
17636 7 : {
17637 7 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q20, _q51, _p0, _q20, _q21 };
17638 7 : tree res = generic_simplify_158 (loc, type, _p0, _p1, captures, LE_EXPR, EQ_EXPR);
17639 7 : if (res) return res;
17640 : }
17641 : }
17642 20 : if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
17643 : {
17644 0 : {
17645 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q21, _q51, _p0, _q21, _q20 };
17646 0 : tree res = generic_simplify_158 (loc, type, _p0, _p1, captures, GE_EXPR, EQ_EXPR);
17647 0 : if (res) return res;
17648 : }
17649 : }
17650 20 : if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
17651 : {
17652 0 : {
17653 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q20, _q50, _p0, _q20, _q21 };
17654 0 : tree res = generic_simplify_158 (loc, type, _p0, _p1, captures, LE_EXPR, EQ_EXPR);
17655 0 : if (res) return res;
17656 : }
17657 : }
17658 20 : if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
17659 : {
17660 0 : {
17661 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q21, _q50, _p0, _q21, _q20 };
17662 0 : tree res = generic_simplify_158 (loc, type, _p0, _p1, captures, GE_EXPR, EQ_EXPR);
17663 0 : if (res) return res;
17664 : }
17665 : }
17666 : break;
17667 : }
17668 7 : case NE_EXPR:
17669 7 : {
17670 7 : tree _q50 = TREE_OPERAND (_p1, 0);
17671 7 : tree _q51 = TREE_OPERAND (_p1, 1);
17672 7 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
17673 : {
17674 7 : {
17675 7 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q20, _q51, _p0, _q20, _q21 };
17676 7 : tree res = generic_simplify_158 (loc, type, _p0, _p1, captures, LE_EXPR, NE_EXPR);
17677 7 : if (res) return res;
17678 : }
17679 : }
17680 0 : if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
17681 : {
17682 0 : {
17683 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q21, _q51, _p0, _q21, _q20 };
17684 0 : tree res = generic_simplify_158 (loc, type, _p0, _p1, captures, GE_EXPR, NE_EXPR);
17685 0 : if (res) return res;
17686 : }
17687 : }
17688 0 : if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
17689 : {
17690 0 : {
17691 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q20, _q50, _p0, _q20, _q21 };
17692 0 : tree res = generic_simplify_158 (loc, type, _p0, _p1, captures, LE_EXPR, NE_EXPR);
17693 0 : if (res) return res;
17694 : }
17695 : }
17696 0 : if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
17697 : {
17698 0 : {
17699 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q21, _q50, _p0, _q21, _q20 };
17700 0 : tree res = generic_simplify_158 (loc, type, _p0, _p1, captures, GE_EXPR, NE_EXPR);
17701 0 : if (res) return res;
17702 : }
17703 : }
17704 : break;
17705 : }
17706 0 : case LT_EXPR:
17707 0 : {
17708 0 : tree _q50 = TREE_OPERAND (_p1, 0);
17709 0 : tree _q51 = TREE_OPERAND (_p1, 1);
17710 0 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
17711 : {
17712 0 : {
17713 0 : tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q51 };
17714 0 : tree res = generic_simplify_159 (loc, type, _p0, _p1, captures, LT_EXPR, LE_EXPR);
17715 0 : if (res) return res;
17716 : }
17717 : }
17718 : break;
17719 : }
17720 2 : case LE_EXPR:
17721 2 : {
17722 2 : tree _q50 = TREE_OPERAND (_p1, 0);
17723 2 : tree _q51 = TREE_OPERAND (_p1, 1);
17724 2 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
17725 : {
17726 0 : {
17727 0 : tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q51 };
17728 0 : tree res = generic_simplify_159 (loc, type, _p0, _p1, captures, LE_EXPR, LE_EXPR);
17729 0 : if (res) return res;
17730 : }
17731 : }
17732 : break;
17733 : }
17734 0 : case GT_EXPR:
17735 0 : {
17736 0 : tree _q50 = TREE_OPERAND (_p1, 0);
17737 0 : tree _q51 = TREE_OPERAND (_p1, 1);
17738 0 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
17739 : {
17740 0 : {
17741 0 : tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q51 };
17742 0 : tree res = generic_simplify_159 (loc, type, _p0, _p1, captures, GT_EXPR, LE_EXPR);
17743 0 : if (res) return res;
17744 : }
17745 : }
17746 : break;
17747 : }
17748 1 : case GE_EXPR:
17749 1 : {
17750 1 : tree _q50 = TREE_OPERAND (_p1, 0);
17751 1 : tree _q51 = TREE_OPERAND (_p1, 1);
17752 1 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
17753 : {
17754 0 : {
17755 0 : tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q51 };
17756 0 : tree res = generic_simplify_159 (loc, type, _p0, _p1, captures, GE_EXPR, LE_EXPR);
17757 0 : if (res) return res;
17758 : }
17759 : }
17760 : break;
17761 : }
17762 135 : default:;
17763 : }
17764 135 : switch (TREE_CODE (_q20))
17765 : {
17766 0 : case BIT_AND_EXPR:
17767 0 : {
17768 0 : tree _q30 = TREE_OPERAND (_q20, 0);
17769 0 : tree _q31 = TREE_OPERAND (_q20, 1);
17770 0 : switch (TREE_CODE (_q30))
17771 : {
17772 0 : case BIT_XOR_EXPR:
17773 0 : {
17774 0 : tree _q40 = TREE_OPERAND (_q30, 0);
17775 0 : tree _q41 = TREE_OPERAND (_q30, 1);
17776 0 : if (tree_expr_nonzero_p (_q31))
17777 : {
17778 0 : switch (TREE_CODE (_p1))
17779 : {
17780 0 : case NE_EXPR:
17781 0 : {
17782 0 : tree _q90 = TREE_OPERAND (_p1, 0);
17783 0 : tree _q91 = TREE_OPERAND (_p1, 1);
17784 0 : if ((_q90 == _q40 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q40, 0) && types_match (_q90, _q40)))
17785 : {
17786 0 : if ((_q91 == _q41 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q41, 0) && types_match (_q91, _q41)))
17787 : {
17788 0 : {
17789 0 : tree captures[5] ATTRIBUTE_UNUSED = { _q40, _q41, _q31, _q21, _p1 };
17790 0 : tree res = generic_simplify_160 (loc, type, _p0, _p1, captures, LE_EXPR);
17791 0 : if (res) return res;
17792 : }
17793 : }
17794 : }
17795 0 : if ((_q90 == _q41 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q41, 0) && types_match (_q90, _q41)))
17796 : {
17797 0 : if ((_q91 == _q40 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q40, 0) && types_match (_q91, _q40)))
17798 : {
17799 0 : {
17800 0 : tree captures[5] ATTRIBUTE_UNUSED = { _q41, _q40, _q31, _q21, _p1 };
17801 0 : tree res = generic_simplify_160 (loc, type, _p0, _p1, captures, LE_EXPR);
17802 0 : if (res) return res;
17803 : }
17804 : }
17805 : }
17806 : break;
17807 : }
17808 : default:;
17809 : }
17810 : }
17811 : break;
17812 : }
17813 0 : default:;
17814 : }
17815 0 : if (tree_expr_nonzero_p (_q30))
17816 : {
17817 0 : switch (TREE_CODE (_q31))
17818 : {
17819 0 : case BIT_XOR_EXPR:
17820 0 : {
17821 0 : tree _q50 = TREE_OPERAND (_q31, 0);
17822 0 : tree _q51 = TREE_OPERAND (_q31, 1);
17823 0 : switch (TREE_CODE (_p1))
17824 : {
17825 0 : case NE_EXPR:
17826 0 : {
17827 0 : tree _q90 = TREE_OPERAND (_p1, 0);
17828 0 : tree _q91 = TREE_OPERAND (_p1, 1);
17829 0 : if ((_q90 == _q50 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q50, 0) && types_match (_q90, _q50)))
17830 : {
17831 0 : if ((_q91 == _q51 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q51, 0) && types_match (_q91, _q51)))
17832 : {
17833 0 : {
17834 0 : tree captures[5] ATTRIBUTE_UNUSED = { _q50, _q51, _q30, _q21, _p1 };
17835 0 : tree res = generic_simplify_160 (loc, type, _p0, _p1, captures, LE_EXPR);
17836 0 : if (res) return res;
17837 : }
17838 : }
17839 : }
17840 0 : if ((_q90 == _q51 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q51, 0) && types_match (_q90, _q51)))
17841 : {
17842 0 : if ((_q91 == _q50 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q50, 0) && types_match (_q91, _q50)))
17843 : {
17844 0 : {
17845 0 : tree captures[5] ATTRIBUTE_UNUSED = { _q51, _q50, _q30, _q21, _p1 };
17846 0 : tree res = generic_simplify_160 (loc, type, _p0, _p1, captures, LE_EXPR);
17847 0 : if (res) return res;
17848 : }
17849 : }
17850 : }
17851 : break;
17852 : }
17853 : default:;
17854 : }
17855 : break;
17856 : }
17857 : default:;
17858 : }
17859 : }
17860 : break;
17861 : }
17862 135 : default:;
17863 : }
17864 135 : switch (TREE_CODE (_q21))
17865 : {
17866 0 : case BIT_AND_EXPR:
17867 0 : {
17868 0 : tree _q40 = TREE_OPERAND (_q21, 0);
17869 0 : tree _q41 = TREE_OPERAND (_q21, 1);
17870 0 : switch (TREE_CODE (_q40))
17871 : {
17872 0 : case BIT_XOR_EXPR:
17873 0 : {
17874 0 : tree _q50 = TREE_OPERAND (_q40, 0);
17875 0 : tree _q51 = TREE_OPERAND (_q40, 1);
17876 0 : if (tree_expr_nonzero_p (_q41))
17877 : {
17878 0 : switch (TREE_CODE (_p1))
17879 : {
17880 0 : case NE_EXPR:
17881 0 : {
17882 0 : tree _q90 = TREE_OPERAND (_p1, 0);
17883 0 : tree _q91 = TREE_OPERAND (_p1, 1);
17884 0 : if ((_q90 == _q50 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q50, 0) && types_match (_q90, _q50)))
17885 : {
17886 0 : if ((_q91 == _q51 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q51, 0) && types_match (_q91, _q51)))
17887 : {
17888 0 : {
17889 0 : tree captures[5] ATTRIBUTE_UNUSED = { _q50, _q51, _q41, _q20, _p1 };
17890 0 : tree res = generic_simplify_160 (loc, type, _p0, _p1, captures, GE_EXPR);
17891 0 : if (res) return res;
17892 : }
17893 : }
17894 : }
17895 0 : if ((_q90 == _q51 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q51, 0) && types_match (_q90, _q51)))
17896 : {
17897 0 : if ((_q91 == _q50 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q50, 0) && types_match (_q91, _q50)))
17898 : {
17899 0 : {
17900 0 : tree captures[5] ATTRIBUTE_UNUSED = { _q51, _q50, _q41, _q20, _p1 };
17901 0 : tree res = generic_simplify_160 (loc, type, _p0, _p1, captures, GE_EXPR);
17902 0 : if (res) return res;
17903 : }
17904 : }
17905 : }
17906 : break;
17907 : }
17908 : default:;
17909 : }
17910 : }
17911 : break;
17912 : }
17913 0 : default:;
17914 : }
17915 0 : if (tree_expr_nonzero_p (_q40))
17916 : {
17917 0 : switch (TREE_CODE (_q41))
17918 : {
17919 0 : case BIT_XOR_EXPR:
17920 0 : {
17921 0 : tree _q60 = TREE_OPERAND (_q41, 0);
17922 0 : tree _q61 = TREE_OPERAND (_q41, 1);
17923 0 : switch (TREE_CODE (_p1))
17924 : {
17925 0 : case NE_EXPR:
17926 0 : {
17927 0 : tree _q90 = TREE_OPERAND (_p1, 0);
17928 0 : tree _q91 = TREE_OPERAND (_p1, 1);
17929 0 : if ((_q90 == _q60 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q60, 0) && types_match (_q90, _q60)))
17930 : {
17931 0 : if ((_q91 == _q61 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q61, 0) && types_match (_q91, _q61)))
17932 : {
17933 0 : {
17934 0 : tree captures[5] ATTRIBUTE_UNUSED = { _q60, _q61, _q40, _q20, _p1 };
17935 0 : tree res = generic_simplify_160 (loc, type, _p0, _p1, captures, GE_EXPR);
17936 0 : if (res) return res;
17937 : }
17938 : }
17939 : }
17940 0 : if ((_q90 == _q61 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q61, 0) && types_match (_q90, _q61)))
17941 : {
17942 0 : if ((_q91 == _q60 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q60, 0) && types_match (_q91, _q60)))
17943 : {
17944 0 : {
17945 0 : tree captures[5] ATTRIBUTE_UNUSED = { _q61, _q60, _q40, _q20, _p1 };
17946 0 : tree res = generic_simplify_160 (loc, type, _p0, _p1, captures, GE_EXPR);
17947 0 : if (res) return res;
17948 : }
17949 : }
17950 : }
17951 : break;
17952 : }
17953 : default:;
17954 : }
17955 : break;
17956 : }
17957 : default:;
17958 : }
17959 : }
17960 : break;
17961 : }
17962 135 : default:;
17963 : }
17964 135 : switch (TREE_CODE (_q20))
17965 : {
17966 0 : case BIT_XOR_EXPR:
17967 0 : {
17968 0 : tree _q30 = TREE_OPERAND (_q20, 0);
17969 0 : tree _q31 = TREE_OPERAND (_q20, 1);
17970 0 : switch (TREE_CODE (_p1))
17971 : {
17972 0 : case NE_EXPR:
17973 0 : {
17974 0 : tree _q70 = TREE_OPERAND (_p1, 0);
17975 0 : tree _q71 = TREE_OPERAND (_p1, 1);
17976 0 : if ((_q70 == _q30 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q30, 0) && types_match (_q70, _q30)))
17977 : {
17978 0 : if ((_q71 == _q31 && ! TREE_SIDE_EFFECTS (_q71)) || (operand_equal_p (_q71, _q31, 0) && types_match (_q71, _q31)))
17979 : {
17980 0 : {
17981 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q30, _q31, _q21, _p1 };
17982 0 : tree res = generic_simplify_161 (loc, type, _p0, _p1, captures, LE_EXPR);
17983 0 : if (res) return res;
17984 : }
17985 : }
17986 : }
17987 0 : if ((_q70 == _q31 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q31, 0) && types_match (_q70, _q31)))
17988 : {
17989 0 : if ((_q71 == _q30 && ! TREE_SIDE_EFFECTS (_q71)) || (operand_equal_p (_q71, _q30, 0) && types_match (_q71, _q30)))
17990 : {
17991 0 : {
17992 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q31, _q30, _q21, _p1 };
17993 0 : tree res = generic_simplify_161 (loc, type, _p0, _p1, captures, LE_EXPR);
17994 0 : if (res) return res;
17995 : }
17996 : }
17997 : }
17998 : break;
17999 : }
18000 : default:;
18001 : }
18002 : break;
18003 : }
18004 135 : default:;
18005 : }
18006 135 : switch (TREE_CODE (_q21))
18007 : {
18008 0 : case BIT_XOR_EXPR:
18009 0 : {
18010 0 : tree _q40 = TREE_OPERAND (_q21, 0);
18011 0 : tree _q41 = TREE_OPERAND (_q21, 1);
18012 0 : switch (TREE_CODE (_p1))
18013 : {
18014 0 : case NE_EXPR:
18015 0 : {
18016 0 : tree _q70 = TREE_OPERAND (_p1, 0);
18017 0 : tree _q71 = TREE_OPERAND (_p1, 1);
18018 0 : if ((_q70 == _q40 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q40, 0) && types_match (_q70, _q40)))
18019 : {
18020 0 : if ((_q71 == _q41 && ! TREE_SIDE_EFFECTS (_q71)) || (operand_equal_p (_q71, _q41, 0) && types_match (_q71, _q41)))
18021 : {
18022 0 : {
18023 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q40, _q41, _q20, _p1 };
18024 0 : tree res = generic_simplify_161 (loc, type, _p0, _p1, captures, GE_EXPR);
18025 0 : if (res) return res;
18026 : }
18027 : }
18028 : }
18029 0 : if ((_q70 == _q41 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q41, 0) && types_match (_q70, _q41)))
18030 : {
18031 0 : if ((_q71 == _q40 && ! TREE_SIDE_EFFECTS (_q71)) || (operand_equal_p (_q71, _q40, 0) && types_match (_q71, _q40)))
18032 : {
18033 0 : {
18034 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q41, _q40, _q20, _p1 };
18035 0 : tree res = generic_simplify_161 (loc, type, _p0, _p1, captures, GE_EXPR);
18036 0 : if (res) return res;
18037 : }
18038 : }
18039 : }
18040 : break;
18041 : }
18042 : default:;
18043 : }
18044 : break;
18045 : }
18046 : default:;
18047 : }
18048 : break;
18049 : }
18050 46 : case GE_EXPR:
18051 46 : {
18052 46 : tree _q20 = TREE_OPERAND (_p0, 0);
18053 46 : tree _q21 = TREE_OPERAND (_p0, 1);
18054 46 : switch (TREE_CODE (_p1))
18055 : {
18056 4 : case NE_EXPR:
18057 4 : {
18058 4 : tree _q50 = TREE_OPERAND (_p1, 0);
18059 4 : tree _q51 = TREE_OPERAND (_p1, 1);
18060 4 : if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
18061 : {
18062 0 : if (tree_min_value (_q51))
18063 : {
18064 0 : {
18065 0 : tree captures[2] ATTRIBUTE_UNUSED = { _q21, _q20 };
18066 0 : tree res = generic_simplify_168 (loc, type, _p0, _p1, captures);
18067 0 : if (res) return res;
18068 : }
18069 : }
18070 : }
18071 4 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
18072 : {
18073 4 : if (tree_max_value (_q51))
18074 : {
18075 4 : {
18076 4 : tree captures[3] ATTRIBUTE_UNUSED = { _p0, _q20, _q21 };
18077 4 : tree res = generic_simplify_169 (loc, type, _p0, _p1, captures, NE_EXPR);
18078 4 : if (res) return res;
18079 : }
18080 : }
18081 : }
18082 : break;
18083 : }
18084 8 : case EQ_EXPR:
18085 8 : {
18086 8 : tree _q50 = TREE_OPERAND (_p1, 0);
18087 8 : tree _q51 = TREE_OPERAND (_p1, 1);
18088 8 : if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
18089 : {
18090 0 : if (tree_min_value (_q51))
18091 : {
18092 0 : {
18093 0 : tree captures[3] ATTRIBUTE_UNUSED = { _p0, _q21, _q20 };
18094 0 : tree res = generic_simplify_170 (loc, type, _p0, _p1, captures);
18095 0 : if (res) return res;
18096 : }
18097 : }
18098 : }
18099 8 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
18100 : {
18101 4 : if (tree_max_value (_q51))
18102 : {
18103 4 : {
18104 4 : tree captures[3] ATTRIBUTE_UNUSED = { _p0, _q20, _q21 };
18105 4 : tree res = generic_simplify_169 (loc, type, _p0, _p1, captures, EQ_EXPR);
18106 4 : if (res) return res;
18107 : }
18108 : }
18109 : }
18110 : break;
18111 : }
18112 38 : default:;
18113 : }
18114 38 : switch (TREE_CODE (_q20))
18115 : {
18116 8 : CASE_CONVERT:
18117 8 : {
18118 8 : tree _q30 = TREE_OPERAND (_q20, 0);
18119 8 : switch (TREE_CODE (_p1))
18120 : {
18121 0 : case EQ_EXPR:
18122 0 : {
18123 0 : tree _q60 = TREE_OPERAND (_p1, 0);
18124 0 : tree _q61 = TREE_OPERAND (_p1, 1);
18125 0 : if ((_q60 == _q30 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q30, 0) && types_match (_q60, _q30)))
18126 : {
18127 0 : {
18128 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q30, _q61, _p0, _q20, _q21 };
18129 0 : tree res = generic_simplify_157 (loc, type, _p0, _p1, captures, GE_EXPR, EQ_EXPR);
18130 0 : if (res) return res;
18131 : }
18132 : }
18133 0 : if ((_q61 == _q30 && ! TREE_SIDE_EFFECTS (_q61)) || (operand_equal_p (_q61, _q30, 0) && types_match (_q61, _q30)))
18134 : {
18135 0 : {
18136 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q30, _q60, _p0, _q20, _q21 };
18137 0 : tree res = generic_simplify_157 (loc, type, _p0, _p1, captures, GE_EXPR, EQ_EXPR);
18138 0 : if (res) return res;
18139 : }
18140 : }
18141 : break;
18142 : }
18143 0 : case NE_EXPR:
18144 0 : {
18145 0 : tree _q60 = TREE_OPERAND (_p1, 0);
18146 0 : tree _q61 = TREE_OPERAND (_p1, 1);
18147 0 : if ((_q60 == _q30 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q30, 0) && types_match (_q60, _q30)))
18148 : {
18149 0 : {
18150 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q30, _q61, _p0, _q20, _q21 };
18151 0 : tree res = generic_simplify_157 (loc, type, _p0, _p1, captures, GE_EXPR, NE_EXPR);
18152 0 : if (res) return res;
18153 : }
18154 : }
18155 0 : if ((_q61 == _q30 && ! TREE_SIDE_EFFECTS (_q61)) || (operand_equal_p (_q61, _q30, 0) && types_match (_q61, _q30)))
18156 : {
18157 0 : {
18158 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q30, _q60, _p0, _q20, _q21 };
18159 0 : tree res = generic_simplify_157 (loc, type, _p0, _p1, captures, GE_EXPR, NE_EXPR);
18160 0 : if (res) return res;
18161 : }
18162 : }
18163 : break;
18164 : }
18165 : default:;
18166 : }
18167 : break;
18168 : }
18169 38 : default:;
18170 : }
18171 38 : switch (TREE_CODE (_q21))
18172 : {
18173 0 : CASE_CONVERT:
18174 0 : {
18175 0 : tree _q40 = TREE_OPERAND (_q21, 0);
18176 0 : switch (TREE_CODE (_p1))
18177 : {
18178 0 : case EQ_EXPR:
18179 0 : {
18180 0 : tree _q60 = TREE_OPERAND (_p1, 0);
18181 0 : tree _q61 = TREE_OPERAND (_p1, 1);
18182 0 : if ((_q60 == _q40 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q40, 0) && types_match (_q60, _q40)))
18183 : {
18184 0 : {
18185 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q40, _q61, _p0, _q21, _q20 };
18186 0 : tree res = generic_simplify_157 (loc, type, _p0, _p1, captures, LE_EXPR, EQ_EXPR);
18187 0 : if (res) return res;
18188 : }
18189 : }
18190 0 : if ((_q61 == _q40 && ! TREE_SIDE_EFFECTS (_q61)) || (operand_equal_p (_q61, _q40, 0) && types_match (_q61, _q40)))
18191 : {
18192 0 : {
18193 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q40, _q60, _p0, _q21, _q20 };
18194 0 : tree res = generic_simplify_157 (loc, type, _p0, _p1, captures, LE_EXPR, EQ_EXPR);
18195 0 : if (res) return res;
18196 : }
18197 : }
18198 : break;
18199 : }
18200 0 : case NE_EXPR:
18201 0 : {
18202 0 : tree _q60 = TREE_OPERAND (_p1, 0);
18203 0 : tree _q61 = TREE_OPERAND (_p1, 1);
18204 0 : if ((_q60 == _q40 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q40, 0) && types_match (_q60, _q40)))
18205 : {
18206 0 : {
18207 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q40, _q61, _p0, _q21, _q20 };
18208 0 : tree res = generic_simplify_157 (loc, type, _p0, _p1, captures, LE_EXPR, NE_EXPR);
18209 0 : if (res) return res;
18210 : }
18211 : }
18212 0 : if ((_q61 == _q40 && ! TREE_SIDE_EFFECTS (_q61)) || (operand_equal_p (_q61, _q40, 0) && types_match (_q61, _q40)))
18213 : {
18214 0 : {
18215 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q40, _q60, _p0, _q21, _q20 };
18216 0 : tree res = generic_simplify_157 (loc, type, _p0, _p1, captures, LE_EXPR, NE_EXPR);
18217 0 : if (res) return res;
18218 : }
18219 : }
18220 : break;
18221 : }
18222 : default:;
18223 : }
18224 : break;
18225 : }
18226 38 : default:;
18227 : }
18228 38 : switch (TREE_CODE (_p1))
18229 : {
18230 4 : case EQ_EXPR:
18231 4 : {
18232 4 : tree _q50 = TREE_OPERAND (_p1, 0);
18233 4 : tree _q51 = TREE_OPERAND (_p1, 1);
18234 4 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
18235 : {
18236 0 : {
18237 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q20, _q51, _p0, _q20, _q21 };
18238 0 : tree res = generic_simplify_158 (loc, type, _p0, _p1, captures, GE_EXPR, EQ_EXPR);
18239 0 : if (res) return res;
18240 : }
18241 : }
18242 4 : if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
18243 : {
18244 0 : {
18245 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q21, _q51, _p0, _q21, _q20 };
18246 0 : tree res = generic_simplify_158 (loc, type, _p0, _p1, captures, LE_EXPR, EQ_EXPR);
18247 0 : if (res) return res;
18248 : }
18249 : }
18250 4 : if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
18251 : {
18252 0 : {
18253 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q20, _q50, _p0, _q20, _q21 };
18254 0 : tree res = generic_simplify_158 (loc, type, _p0, _p1, captures, GE_EXPR, EQ_EXPR);
18255 0 : if (res) return res;
18256 : }
18257 : }
18258 4 : if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
18259 : {
18260 0 : {
18261 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q21, _q50, _p0, _q21, _q20 };
18262 0 : tree res = generic_simplify_158 (loc, type, _p0, _p1, captures, LE_EXPR, EQ_EXPR);
18263 0 : if (res) return res;
18264 : }
18265 : }
18266 : break;
18267 : }
18268 0 : case NE_EXPR:
18269 0 : {
18270 0 : tree _q50 = TREE_OPERAND (_p1, 0);
18271 0 : tree _q51 = TREE_OPERAND (_p1, 1);
18272 0 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
18273 : {
18274 0 : {
18275 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q20, _q51, _p0, _q20, _q21 };
18276 0 : tree res = generic_simplify_158 (loc, type, _p0, _p1, captures, GE_EXPR, NE_EXPR);
18277 0 : if (res) return res;
18278 : }
18279 : }
18280 0 : if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
18281 : {
18282 0 : {
18283 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q21, _q51, _p0, _q21, _q20 };
18284 0 : tree res = generic_simplify_158 (loc, type, _p0, _p1, captures, LE_EXPR, NE_EXPR);
18285 0 : if (res) return res;
18286 : }
18287 : }
18288 0 : if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
18289 : {
18290 0 : {
18291 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q20, _q50, _p0, _q20, _q21 };
18292 0 : tree res = generic_simplify_158 (loc, type, _p0, _p1, captures, GE_EXPR, NE_EXPR);
18293 0 : if (res) return res;
18294 : }
18295 : }
18296 0 : if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
18297 : {
18298 0 : {
18299 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q21, _q50, _p0, _q21, _q20 };
18300 0 : tree res = generic_simplify_158 (loc, type, _p0, _p1, captures, LE_EXPR, NE_EXPR);
18301 0 : if (res) return res;
18302 : }
18303 : }
18304 : break;
18305 : }
18306 0 : case LT_EXPR:
18307 0 : {
18308 0 : tree _q50 = TREE_OPERAND (_p1, 0);
18309 0 : tree _q51 = TREE_OPERAND (_p1, 1);
18310 0 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
18311 : {
18312 0 : {
18313 0 : tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q51 };
18314 0 : tree res = generic_simplify_159 (loc, type, _p0, _p1, captures, LT_EXPR, GE_EXPR);
18315 0 : if (res) return res;
18316 : }
18317 : }
18318 : break;
18319 : }
18320 0 : case LE_EXPR:
18321 0 : {
18322 0 : tree _q50 = TREE_OPERAND (_p1, 0);
18323 0 : tree _q51 = TREE_OPERAND (_p1, 1);
18324 0 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
18325 : {
18326 0 : {
18327 0 : tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q51 };
18328 0 : tree res = generic_simplify_159 (loc, type, _p0, _p1, captures, LE_EXPR, GE_EXPR);
18329 0 : if (res) return res;
18330 : }
18331 : }
18332 : break;
18333 : }
18334 0 : case GT_EXPR:
18335 0 : {
18336 0 : tree _q50 = TREE_OPERAND (_p1, 0);
18337 0 : tree _q51 = TREE_OPERAND (_p1, 1);
18338 0 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
18339 : {
18340 0 : {
18341 0 : tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q51 };
18342 0 : tree res = generic_simplify_159 (loc, type, _p0, _p1, captures, GT_EXPR, GE_EXPR);
18343 0 : if (res) return res;
18344 : }
18345 : }
18346 : break;
18347 : }
18348 0 : case GE_EXPR:
18349 0 : {
18350 0 : tree _q50 = TREE_OPERAND (_p1, 0);
18351 0 : tree _q51 = TREE_OPERAND (_p1, 1);
18352 0 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
18353 : {
18354 0 : {
18355 0 : tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q51 };
18356 0 : tree res = generic_simplify_159 (loc, type, _p0, _p1, captures, GE_EXPR, GE_EXPR);
18357 0 : if (res) return res;
18358 : }
18359 : }
18360 : break;
18361 : }
18362 38 : default:;
18363 : }
18364 38 : switch (TREE_CODE (_q20))
18365 : {
18366 0 : case BIT_AND_EXPR:
18367 0 : {
18368 0 : tree _q30 = TREE_OPERAND (_q20, 0);
18369 0 : tree _q31 = TREE_OPERAND (_q20, 1);
18370 0 : switch (TREE_CODE (_q30))
18371 : {
18372 0 : case BIT_XOR_EXPR:
18373 0 : {
18374 0 : tree _q40 = TREE_OPERAND (_q30, 0);
18375 0 : tree _q41 = TREE_OPERAND (_q30, 1);
18376 0 : if (tree_expr_nonzero_p (_q31))
18377 : {
18378 0 : switch (TREE_CODE (_p1))
18379 : {
18380 0 : case NE_EXPR:
18381 0 : {
18382 0 : tree _q90 = TREE_OPERAND (_p1, 0);
18383 0 : tree _q91 = TREE_OPERAND (_p1, 1);
18384 0 : if ((_q90 == _q40 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q40, 0) && types_match (_q90, _q40)))
18385 : {
18386 0 : if ((_q91 == _q41 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q41, 0) && types_match (_q91, _q41)))
18387 : {
18388 0 : {
18389 0 : tree captures[5] ATTRIBUTE_UNUSED = { _q40, _q41, _q31, _q21, _p1 };
18390 0 : tree res = generic_simplify_160 (loc, type, _p0, _p1, captures, GE_EXPR);
18391 0 : if (res) return res;
18392 : }
18393 : }
18394 : }
18395 0 : if ((_q90 == _q41 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q41, 0) && types_match (_q90, _q41)))
18396 : {
18397 0 : if ((_q91 == _q40 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q40, 0) && types_match (_q91, _q40)))
18398 : {
18399 0 : {
18400 0 : tree captures[5] ATTRIBUTE_UNUSED = { _q41, _q40, _q31, _q21, _p1 };
18401 0 : tree res = generic_simplify_160 (loc, type, _p0, _p1, captures, GE_EXPR);
18402 0 : if (res) return res;
18403 : }
18404 : }
18405 : }
18406 : break;
18407 : }
18408 : default:;
18409 : }
18410 : }
18411 : break;
18412 : }
18413 0 : default:;
18414 : }
18415 0 : if (tree_expr_nonzero_p (_q30))
18416 : {
18417 0 : switch (TREE_CODE (_q31))
18418 : {
18419 0 : case BIT_XOR_EXPR:
18420 0 : {
18421 0 : tree _q50 = TREE_OPERAND (_q31, 0);
18422 0 : tree _q51 = TREE_OPERAND (_q31, 1);
18423 0 : switch (TREE_CODE (_p1))
18424 : {
18425 0 : case NE_EXPR:
18426 0 : {
18427 0 : tree _q90 = TREE_OPERAND (_p1, 0);
18428 0 : tree _q91 = TREE_OPERAND (_p1, 1);
18429 0 : if ((_q90 == _q50 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q50, 0) && types_match (_q90, _q50)))
18430 : {
18431 0 : if ((_q91 == _q51 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q51, 0) && types_match (_q91, _q51)))
18432 : {
18433 0 : {
18434 0 : tree captures[5] ATTRIBUTE_UNUSED = { _q50, _q51, _q30, _q21, _p1 };
18435 0 : tree res = generic_simplify_160 (loc, type, _p0, _p1, captures, GE_EXPR);
18436 0 : if (res) return res;
18437 : }
18438 : }
18439 : }
18440 0 : if ((_q90 == _q51 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q51, 0) && types_match (_q90, _q51)))
18441 : {
18442 0 : if ((_q91 == _q50 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q50, 0) && types_match (_q91, _q50)))
18443 : {
18444 0 : {
18445 0 : tree captures[5] ATTRIBUTE_UNUSED = { _q51, _q50, _q30, _q21, _p1 };
18446 0 : tree res = generic_simplify_160 (loc, type, _p0, _p1, captures, GE_EXPR);
18447 0 : if (res) return res;
18448 : }
18449 : }
18450 : }
18451 : break;
18452 : }
18453 : default:;
18454 : }
18455 : break;
18456 : }
18457 : default:;
18458 : }
18459 : }
18460 : break;
18461 : }
18462 38 : default:;
18463 : }
18464 38 : switch (TREE_CODE (_q21))
18465 : {
18466 0 : case BIT_AND_EXPR:
18467 0 : {
18468 0 : tree _q40 = TREE_OPERAND (_q21, 0);
18469 0 : tree _q41 = TREE_OPERAND (_q21, 1);
18470 0 : switch (TREE_CODE (_q40))
18471 : {
18472 0 : case BIT_XOR_EXPR:
18473 0 : {
18474 0 : tree _q50 = TREE_OPERAND (_q40, 0);
18475 0 : tree _q51 = TREE_OPERAND (_q40, 1);
18476 0 : if (tree_expr_nonzero_p (_q41))
18477 : {
18478 0 : switch (TREE_CODE (_p1))
18479 : {
18480 0 : case NE_EXPR:
18481 0 : {
18482 0 : tree _q90 = TREE_OPERAND (_p1, 0);
18483 0 : tree _q91 = TREE_OPERAND (_p1, 1);
18484 0 : if ((_q90 == _q50 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q50, 0) && types_match (_q90, _q50)))
18485 : {
18486 0 : if ((_q91 == _q51 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q51, 0) && types_match (_q91, _q51)))
18487 : {
18488 0 : {
18489 0 : tree captures[5] ATTRIBUTE_UNUSED = { _q50, _q51, _q41, _q20, _p1 };
18490 0 : tree res = generic_simplify_160 (loc, type, _p0, _p1, captures, LE_EXPR);
18491 0 : if (res) return res;
18492 : }
18493 : }
18494 : }
18495 0 : if ((_q90 == _q51 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q51, 0) && types_match (_q90, _q51)))
18496 : {
18497 0 : if ((_q91 == _q50 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q50, 0) && types_match (_q91, _q50)))
18498 : {
18499 0 : {
18500 0 : tree captures[5] ATTRIBUTE_UNUSED = { _q51, _q50, _q41, _q20, _p1 };
18501 0 : tree res = generic_simplify_160 (loc, type, _p0, _p1, captures, LE_EXPR);
18502 0 : if (res) return res;
18503 : }
18504 : }
18505 : }
18506 : break;
18507 : }
18508 : default:;
18509 : }
18510 : }
18511 : break;
18512 : }
18513 0 : default:;
18514 : }
18515 0 : if (tree_expr_nonzero_p (_q40))
18516 : {
18517 0 : switch (TREE_CODE (_q41))
18518 : {
18519 0 : case BIT_XOR_EXPR:
18520 0 : {
18521 0 : tree _q60 = TREE_OPERAND (_q41, 0);
18522 0 : tree _q61 = TREE_OPERAND (_q41, 1);
18523 0 : switch (TREE_CODE (_p1))
18524 : {
18525 0 : case NE_EXPR:
18526 0 : {
18527 0 : tree _q90 = TREE_OPERAND (_p1, 0);
18528 0 : tree _q91 = TREE_OPERAND (_p1, 1);
18529 0 : if ((_q90 == _q60 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q60, 0) && types_match (_q90, _q60)))
18530 : {
18531 0 : if ((_q91 == _q61 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q61, 0) && types_match (_q91, _q61)))
18532 : {
18533 0 : {
18534 0 : tree captures[5] ATTRIBUTE_UNUSED = { _q60, _q61, _q40, _q20, _p1 };
18535 0 : tree res = generic_simplify_160 (loc, type, _p0, _p1, captures, LE_EXPR);
18536 0 : if (res) return res;
18537 : }
18538 : }
18539 : }
18540 0 : if ((_q90 == _q61 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q61, 0) && types_match (_q90, _q61)))
18541 : {
18542 0 : if ((_q91 == _q60 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q60, 0) && types_match (_q91, _q60)))
18543 : {
18544 0 : {
18545 0 : tree captures[5] ATTRIBUTE_UNUSED = { _q61, _q60, _q40, _q20, _p1 };
18546 0 : tree res = generic_simplify_160 (loc, type, _p0, _p1, captures, LE_EXPR);
18547 0 : if (res) return res;
18548 : }
18549 : }
18550 : }
18551 : break;
18552 : }
18553 : default:;
18554 : }
18555 : break;
18556 : }
18557 : default:;
18558 : }
18559 : }
18560 : break;
18561 : }
18562 38 : default:;
18563 : }
18564 38 : switch (TREE_CODE (_q20))
18565 : {
18566 0 : case BIT_XOR_EXPR:
18567 0 : {
18568 0 : tree _q30 = TREE_OPERAND (_q20, 0);
18569 0 : tree _q31 = TREE_OPERAND (_q20, 1);
18570 0 : switch (TREE_CODE (_p1))
18571 : {
18572 0 : case NE_EXPR:
18573 0 : {
18574 0 : tree _q70 = TREE_OPERAND (_p1, 0);
18575 0 : tree _q71 = TREE_OPERAND (_p1, 1);
18576 0 : if ((_q70 == _q30 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q30, 0) && types_match (_q70, _q30)))
18577 : {
18578 0 : if ((_q71 == _q31 && ! TREE_SIDE_EFFECTS (_q71)) || (operand_equal_p (_q71, _q31, 0) && types_match (_q71, _q31)))
18579 : {
18580 0 : {
18581 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q30, _q31, _q21, _p1 };
18582 0 : tree res = generic_simplify_161 (loc, type, _p0, _p1, captures, GE_EXPR);
18583 0 : if (res) return res;
18584 : }
18585 : }
18586 : }
18587 0 : if ((_q70 == _q31 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q31, 0) && types_match (_q70, _q31)))
18588 : {
18589 0 : if ((_q71 == _q30 && ! TREE_SIDE_EFFECTS (_q71)) || (operand_equal_p (_q71, _q30, 0) && types_match (_q71, _q30)))
18590 : {
18591 0 : {
18592 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q31, _q30, _q21, _p1 };
18593 0 : tree res = generic_simplify_161 (loc, type, _p0, _p1, captures, GE_EXPR);
18594 0 : if (res) return res;
18595 : }
18596 : }
18597 : }
18598 : break;
18599 : }
18600 : default:;
18601 : }
18602 : break;
18603 : }
18604 38 : default:;
18605 : }
18606 38 : switch (TREE_CODE (_q21))
18607 : {
18608 0 : case BIT_XOR_EXPR:
18609 0 : {
18610 0 : tree _q40 = TREE_OPERAND (_q21, 0);
18611 0 : tree _q41 = TREE_OPERAND (_q21, 1);
18612 0 : switch (TREE_CODE (_p1))
18613 : {
18614 0 : case NE_EXPR:
18615 0 : {
18616 0 : tree _q70 = TREE_OPERAND (_p1, 0);
18617 0 : tree _q71 = TREE_OPERAND (_p1, 1);
18618 0 : if ((_q70 == _q40 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q40, 0) && types_match (_q70, _q40)))
18619 : {
18620 0 : if ((_q71 == _q41 && ! TREE_SIDE_EFFECTS (_q71)) || (operand_equal_p (_q71, _q41, 0) && types_match (_q71, _q41)))
18621 : {
18622 0 : {
18623 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q40, _q41, _q20, _p1 };
18624 0 : tree res = generic_simplify_161 (loc, type, _p0, _p1, captures, LE_EXPR);
18625 0 : if (res) return res;
18626 : }
18627 : }
18628 : }
18629 0 : if ((_q70 == _q41 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q41, 0) && types_match (_q70, _q41)))
18630 : {
18631 0 : if ((_q71 == _q40 && ! TREE_SIDE_EFFECTS (_q71)) || (operand_equal_p (_q71, _q40, 0) && types_match (_q71, _q40)))
18632 : {
18633 0 : {
18634 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q41, _q40, _q20, _p1 };
18635 0 : tree res = generic_simplify_161 (loc, type, _p0, _p1, captures, LE_EXPR);
18636 0 : if (res) return res;
18637 : }
18638 : }
18639 : }
18640 : break;
18641 : }
18642 : default:;
18643 : }
18644 : break;
18645 : }
18646 : default:;
18647 : }
18648 : break;
18649 : }
18650 905 : case EQ_EXPR:
18651 905 : {
18652 905 : tree _q20 = TREE_OPERAND (_p0, 0);
18653 905 : tree _q21 = TREE_OPERAND (_p0, 1);
18654 905 : if (tree_min_value (_q21))
18655 : {
18656 4 : switch (TREE_CODE (_p1))
18657 : {
18658 0 : case LE_EXPR:
18659 0 : {
18660 0 : tree _q50 = TREE_OPERAND (_p1, 0);
18661 0 : tree _q51 = TREE_OPERAND (_p1, 1);
18662 0 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
18663 : {
18664 0 : {
18665 0 : tree captures[3] ATTRIBUTE_UNUSED = { _p1, _q20, _q51 };
18666 0 : tree res = generic_simplify_170 (loc, type, _p0, _p1, captures);
18667 0 : if (res) return res;
18668 : }
18669 : }
18670 : break;
18671 : }
18672 0 : case GE_EXPR:
18673 0 : {
18674 0 : tree _q50 = TREE_OPERAND (_p1, 0);
18675 0 : tree _q51 = TREE_OPERAND (_p1, 1);
18676 0 : if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
18677 : {
18678 0 : {
18679 0 : tree captures[3] ATTRIBUTE_UNUSED = { _p1, _q20, _q50 };
18680 0 : tree res = generic_simplify_170 (loc, type, _p0, _p1, captures);
18681 0 : if (res) return res;
18682 : }
18683 : }
18684 : break;
18685 : }
18686 2 : case LT_EXPR:
18687 2 : {
18688 2 : tree _q50 = TREE_OPERAND (_p1, 0);
18689 2 : tree _q51 = TREE_OPERAND (_p1, 1);
18690 2 : if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
18691 : {
18692 2 : {
18693 2 : tree captures[4] ATTRIBUTE_UNUSED = { _p0, _q20, _p1, _q50 };
18694 2 : tree res = generic_simplify_171 (loc, type, _p0, _p1, captures);
18695 2 : if (res) return res;
18696 : }
18697 : }
18698 : break;
18699 : }
18700 0 : case GT_EXPR:
18701 0 : {
18702 0 : tree _q50 = TREE_OPERAND (_p1, 0);
18703 0 : tree _q51 = TREE_OPERAND (_p1, 1);
18704 0 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
18705 : {
18706 0 : {
18707 0 : tree captures[4] ATTRIBUTE_UNUSED = { _p0, _q20, _p1, _q51 };
18708 0 : tree res = generic_simplify_171 (loc, type, _p0, _p1, captures);
18709 0 : if (res) return res;
18710 : }
18711 : }
18712 : break;
18713 : }
18714 : default:;
18715 : }
18716 : }
18717 903 : if (tree_max_value (_q21))
18718 : {
18719 0 : switch (TREE_CODE (_p1))
18720 : {
18721 0 : case GE_EXPR:
18722 0 : {
18723 0 : tree _q50 = TREE_OPERAND (_p1, 0);
18724 0 : tree _q51 = TREE_OPERAND (_p1, 1);
18725 0 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
18726 : {
18727 0 : {
18728 0 : tree captures[3] ATTRIBUTE_UNUSED = { _p1, _q20, _q51 };
18729 0 : tree res = generic_simplify_165 (loc, type, _p0, _p1, captures, EQ_EXPR);
18730 0 : if (res) return res;
18731 : }
18732 : }
18733 : break;
18734 : }
18735 0 : case LE_EXPR:
18736 0 : {
18737 0 : tree _q50 = TREE_OPERAND (_p1, 0);
18738 0 : tree _q51 = TREE_OPERAND (_p1, 1);
18739 0 : if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
18740 : {
18741 0 : {
18742 0 : tree captures[3] ATTRIBUTE_UNUSED = { _p1, _q20, _q50 };
18743 0 : tree res = generic_simplify_165 (loc, type, _p0, _p1, captures, EQ_EXPR);
18744 0 : if (res) return res;
18745 : }
18746 : }
18747 : break;
18748 : }
18749 : default:;
18750 : }
18751 : }
18752 903 : switch (TREE_CODE (_p1))
18753 : {
18754 428 : case EQ_EXPR:
18755 428 : {
18756 428 : tree _q50 = TREE_OPERAND (_p1, 0);
18757 428 : tree _q51 = TREE_OPERAND (_p1, 1);
18758 428 : switch (TREE_CODE (_q50))
18759 : {
18760 345 : CASE_CONVERT:
18761 345 : {
18762 345 : tree _q60 = TREE_OPERAND (_q50, 0);
18763 345 : if ((_q60 == _q20 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q20, 0) && types_match (_q60, _q20)))
18764 : {
18765 0 : {
18766 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q50, _q51 };
18767 0 : tree res = generic_simplify_166 (loc, type, _p0, _p1, captures, EQ_EXPR, EQ_EXPR);
18768 0 : if (res) return res;
18769 : }
18770 : }
18771 345 : if ((_q60 == _q21 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q21, 0) && types_match (_q60, _q21)))
18772 : {
18773 0 : {
18774 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q50, _q51 };
18775 0 : tree res = generic_simplify_166 (loc, type, _p0, _p1, captures, EQ_EXPR, EQ_EXPR);
18776 0 : if (res) return res;
18777 : }
18778 : }
18779 : break;
18780 : }
18781 428 : default:;
18782 : }
18783 428 : switch (TREE_CODE (_q51))
18784 : {
18785 0 : CASE_CONVERT:
18786 0 : {
18787 0 : tree _q70 = TREE_OPERAND (_q51, 0);
18788 0 : if ((_q70 == _q20 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q20, 0) && types_match (_q70, _q20)))
18789 : {
18790 0 : {
18791 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q51, _q50 };
18792 0 : tree res = generic_simplify_166 (loc, type, _p0, _p1, captures, EQ_EXPR, EQ_EXPR);
18793 0 : if (res) return res;
18794 : }
18795 : }
18796 0 : if ((_q70 == _q21 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q21, 0) && types_match (_q70, _q21)))
18797 : {
18798 0 : {
18799 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q51, _q50 };
18800 0 : tree res = generic_simplify_166 (loc, type, _p0, _p1, captures, EQ_EXPR, EQ_EXPR);
18801 0 : if (res) return res;
18802 : }
18803 : }
18804 : break;
18805 : }
18806 : default:;
18807 : }
18808 : break;
18809 : }
18810 20 : case NE_EXPR:
18811 20 : {
18812 20 : tree _q50 = TREE_OPERAND (_p1, 0);
18813 20 : tree _q51 = TREE_OPERAND (_p1, 1);
18814 20 : switch (TREE_CODE (_q50))
18815 : {
18816 0 : CASE_CONVERT:
18817 0 : {
18818 0 : tree _q60 = TREE_OPERAND (_q50, 0);
18819 0 : if ((_q60 == _q20 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q20, 0) && types_match (_q60, _q20)))
18820 : {
18821 0 : {
18822 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q50, _q51 };
18823 0 : tree res = generic_simplify_166 (loc, type, _p0, _p1, captures, NE_EXPR, EQ_EXPR);
18824 0 : if (res) return res;
18825 : }
18826 : }
18827 0 : if ((_q60 == _q21 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q21, 0) && types_match (_q60, _q21)))
18828 : {
18829 0 : {
18830 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q50, _q51 };
18831 0 : tree res = generic_simplify_166 (loc, type, _p0, _p1, captures, NE_EXPR, EQ_EXPR);
18832 0 : if (res) return res;
18833 : }
18834 : }
18835 : break;
18836 : }
18837 20 : default:;
18838 : }
18839 20 : switch (TREE_CODE (_q51))
18840 : {
18841 0 : CASE_CONVERT:
18842 0 : {
18843 0 : tree _q70 = TREE_OPERAND (_q51, 0);
18844 0 : if ((_q70 == _q20 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q20, 0) && types_match (_q70, _q20)))
18845 : {
18846 0 : {
18847 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q51, _q50 };
18848 0 : tree res = generic_simplify_166 (loc, type, _p0, _p1, captures, NE_EXPR, EQ_EXPR);
18849 0 : if (res) return res;
18850 : }
18851 : }
18852 0 : if ((_q70 == _q21 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q21, 0) && types_match (_q70, _q21)))
18853 : {
18854 0 : {
18855 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q51, _q50 };
18856 0 : tree res = generic_simplify_166 (loc, type, _p0, _p1, captures, NE_EXPR, EQ_EXPR);
18857 0 : if (res) return res;
18858 : }
18859 : }
18860 : break;
18861 : }
18862 : default:;
18863 : }
18864 : break;
18865 : }
18866 16 : case LT_EXPR:
18867 16 : {
18868 16 : tree _q50 = TREE_OPERAND (_p1, 0);
18869 16 : tree _q51 = TREE_OPERAND (_p1, 1);
18870 16 : switch (TREE_CODE (_q50))
18871 : {
18872 0 : CASE_CONVERT:
18873 0 : {
18874 0 : tree _q60 = TREE_OPERAND (_q50, 0);
18875 0 : if ((_q60 == _q20 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q20, 0) && types_match (_q60, _q20)))
18876 : {
18877 0 : {
18878 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q50, _q51 };
18879 0 : tree res = generic_simplify_166 (loc, type, _p0, _p1, captures, LT_EXPR, EQ_EXPR);
18880 0 : if (res) return res;
18881 : }
18882 : }
18883 0 : if ((_q60 == _q21 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q21, 0) && types_match (_q60, _q21)))
18884 : {
18885 0 : {
18886 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q50, _q51 };
18887 0 : tree res = generic_simplify_166 (loc, type, _p0, _p1, captures, LT_EXPR, EQ_EXPR);
18888 0 : if (res) return res;
18889 : }
18890 : }
18891 : break;
18892 : }
18893 16 : default:;
18894 : }
18895 16 : switch (TREE_CODE (_q51))
18896 : {
18897 0 : CASE_CONVERT:
18898 0 : {
18899 0 : tree _q70 = TREE_OPERAND (_q51, 0);
18900 0 : if ((_q70 == _q20 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q20, 0) && types_match (_q70, _q20)))
18901 : {
18902 0 : {
18903 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q51, _q50 };
18904 0 : tree res = generic_simplify_166 (loc, type, _p0, _p1, captures, GT_EXPR, EQ_EXPR);
18905 0 : if (res) return res;
18906 : }
18907 : }
18908 0 : if ((_q70 == _q21 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q21, 0) && types_match (_q70, _q21)))
18909 : {
18910 0 : {
18911 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q51, _q50 };
18912 0 : tree res = generic_simplify_166 (loc, type, _p0, _p1, captures, GT_EXPR, EQ_EXPR);
18913 0 : if (res) return res;
18914 : }
18915 : }
18916 : break;
18917 : }
18918 : default:;
18919 : }
18920 : break;
18921 : }
18922 28 : case GT_EXPR:
18923 28 : {
18924 28 : tree _q50 = TREE_OPERAND (_p1, 0);
18925 28 : tree _q51 = TREE_OPERAND (_p1, 1);
18926 28 : switch (TREE_CODE (_q50))
18927 : {
18928 0 : CASE_CONVERT:
18929 0 : {
18930 0 : tree _q60 = TREE_OPERAND (_q50, 0);
18931 0 : if ((_q60 == _q20 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q20, 0) && types_match (_q60, _q20)))
18932 : {
18933 0 : {
18934 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q50, _q51 };
18935 0 : tree res = generic_simplify_166 (loc, type, _p0, _p1, captures, GT_EXPR, EQ_EXPR);
18936 0 : if (res) return res;
18937 : }
18938 : }
18939 0 : if ((_q60 == _q21 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q21, 0) && types_match (_q60, _q21)))
18940 : {
18941 0 : {
18942 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q50, _q51 };
18943 0 : tree res = generic_simplify_166 (loc, type, _p0, _p1, captures, GT_EXPR, EQ_EXPR);
18944 0 : if (res) return res;
18945 : }
18946 : }
18947 : break;
18948 : }
18949 28 : default:;
18950 : }
18951 28 : switch (TREE_CODE (_q51))
18952 : {
18953 0 : CASE_CONVERT:
18954 0 : {
18955 0 : tree _q70 = TREE_OPERAND (_q51, 0);
18956 0 : if ((_q70 == _q20 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q20, 0) && types_match (_q70, _q20)))
18957 : {
18958 0 : {
18959 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q51, _q50 };
18960 0 : tree res = generic_simplify_166 (loc, type, _p0, _p1, captures, LT_EXPR, EQ_EXPR);
18961 0 : if (res) return res;
18962 : }
18963 : }
18964 0 : if ((_q70 == _q21 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q21, 0) && types_match (_q70, _q21)))
18965 : {
18966 0 : {
18967 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q51, _q50 };
18968 0 : tree res = generic_simplify_166 (loc, type, _p0, _p1, captures, LT_EXPR, EQ_EXPR);
18969 0 : if (res) return res;
18970 : }
18971 : }
18972 : break;
18973 : }
18974 : default:;
18975 : }
18976 : break;
18977 : }
18978 146 : case LE_EXPR:
18979 146 : {
18980 146 : tree _q50 = TREE_OPERAND (_p1, 0);
18981 146 : tree _q51 = TREE_OPERAND (_p1, 1);
18982 146 : switch (TREE_CODE (_q50))
18983 : {
18984 0 : CASE_CONVERT:
18985 0 : {
18986 0 : tree _q60 = TREE_OPERAND (_q50, 0);
18987 0 : if ((_q60 == _q20 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q20, 0) && types_match (_q60, _q20)))
18988 : {
18989 0 : {
18990 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q50, _q51 };
18991 0 : tree res = generic_simplify_166 (loc, type, _p0, _p1, captures, LE_EXPR, EQ_EXPR);
18992 0 : if (res) return res;
18993 : }
18994 : }
18995 0 : if ((_q60 == _q21 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q21, 0) && types_match (_q60, _q21)))
18996 : {
18997 0 : {
18998 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q50, _q51 };
18999 0 : tree res = generic_simplify_166 (loc, type, _p0, _p1, captures, LE_EXPR, EQ_EXPR);
19000 0 : if (res) return res;
19001 : }
19002 : }
19003 : break;
19004 : }
19005 146 : default:;
19006 : }
19007 146 : switch (TREE_CODE (_q51))
19008 : {
19009 0 : CASE_CONVERT:
19010 0 : {
19011 0 : tree _q70 = TREE_OPERAND (_q51, 0);
19012 0 : if ((_q70 == _q20 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q20, 0) && types_match (_q70, _q20)))
19013 : {
19014 0 : {
19015 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q51, _q50 };
19016 0 : tree res = generic_simplify_166 (loc, type, _p0, _p1, captures, GE_EXPR, EQ_EXPR);
19017 0 : if (res) return res;
19018 : }
19019 : }
19020 0 : if ((_q70 == _q21 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q21, 0) && types_match (_q70, _q21)))
19021 : {
19022 0 : {
19023 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q51, _q50 };
19024 0 : tree res = generic_simplify_166 (loc, type, _p0, _p1, captures, GE_EXPR, EQ_EXPR);
19025 0 : if (res) return res;
19026 : }
19027 : }
19028 : break;
19029 : }
19030 : default:;
19031 : }
19032 : break;
19033 : }
19034 20 : case GE_EXPR:
19035 20 : {
19036 20 : tree _q50 = TREE_OPERAND (_p1, 0);
19037 20 : tree _q51 = TREE_OPERAND (_p1, 1);
19038 20 : switch (TREE_CODE (_q50))
19039 : {
19040 16 : CASE_CONVERT:
19041 16 : {
19042 16 : tree _q60 = TREE_OPERAND (_q50, 0);
19043 16 : if ((_q60 == _q20 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q20, 0) && types_match (_q60, _q20)))
19044 : {
19045 0 : {
19046 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q50, _q51 };
19047 0 : tree res = generic_simplify_166 (loc, type, _p0, _p1, captures, GE_EXPR, EQ_EXPR);
19048 0 : if (res) return res;
19049 : }
19050 : }
19051 16 : if ((_q60 == _q21 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q21, 0) && types_match (_q60, _q21)))
19052 : {
19053 0 : {
19054 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q50, _q51 };
19055 0 : tree res = generic_simplify_166 (loc, type, _p0, _p1, captures, GE_EXPR, EQ_EXPR);
19056 0 : if (res) return res;
19057 : }
19058 : }
19059 : break;
19060 : }
19061 20 : default:;
19062 : }
19063 20 : switch (TREE_CODE (_q51))
19064 : {
19065 0 : CASE_CONVERT:
19066 0 : {
19067 0 : tree _q70 = TREE_OPERAND (_q51, 0);
19068 0 : if ((_q70 == _q20 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q20, 0) && types_match (_q70, _q20)))
19069 : {
19070 0 : {
19071 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q51, _q50 };
19072 0 : tree res = generic_simplify_166 (loc, type, _p0, _p1, captures, LE_EXPR, EQ_EXPR);
19073 0 : if (res) return res;
19074 : }
19075 : }
19076 0 : if ((_q70 == _q21 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q21, 0) && types_match (_q70, _q21)))
19077 : {
19078 0 : {
19079 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q51, _q50 };
19080 0 : tree res = generic_simplify_166 (loc, type, _p0, _p1, captures, LE_EXPR, EQ_EXPR);
19081 0 : if (res) return res;
19082 : }
19083 : }
19084 : break;
19085 : }
19086 : default:;
19087 : }
19088 : break;
19089 : }
19090 903 : default:;
19091 : }
19092 903 : switch (TREE_CODE (_q20))
19093 : {
19094 590 : CASE_CONVERT:
19095 590 : {
19096 590 : tree _q30 = TREE_OPERAND (_q20, 0);
19097 590 : switch (TREE_CODE (_p1))
19098 : {
19099 345 : case EQ_EXPR:
19100 345 : {
19101 345 : tree _q60 = TREE_OPERAND (_p1, 0);
19102 345 : tree _q61 = TREE_OPERAND (_p1, 1);
19103 345 : if ((_q60 == _q30 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q30, 0) && types_match (_q60, _q30)))
19104 : {
19105 0 : {
19106 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q30, _q61, _p0, _q20, _q21 };
19107 0 : tree res = generic_simplify_157 (loc, type, _p0, _p1, captures, EQ_EXPR, EQ_EXPR);
19108 0 : if (res) return res;
19109 : }
19110 : }
19111 345 : if ((_q61 == _q30 && ! TREE_SIDE_EFFECTS (_q61)) || (operand_equal_p (_q61, _q30, 0) && types_match (_q61, _q30)))
19112 : {
19113 0 : {
19114 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q30, _q60, _p0, _q20, _q21 };
19115 0 : tree res = generic_simplify_157 (loc, type, _p0, _p1, captures, EQ_EXPR, EQ_EXPR);
19116 0 : if (res) return res;
19117 : }
19118 : }
19119 : break;
19120 : }
19121 0 : case NE_EXPR:
19122 0 : {
19123 0 : tree _q60 = TREE_OPERAND (_p1, 0);
19124 0 : tree _q61 = TREE_OPERAND (_p1, 1);
19125 0 : if ((_q60 == _q30 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q30, 0) && types_match (_q60, _q30)))
19126 : {
19127 0 : {
19128 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q30, _q61, _p0, _q20, _q21 };
19129 0 : tree res = generic_simplify_157 (loc, type, _p0, _p1, captures, EQ_EXPR, NE_EXPR);
19130 0 : if (res) return res;
19131 : }
19132 : }
19133 0 : if ((_q61 == _q30 && ! TREE_SIDE_EFFECTS (_q61)) || (operand_equal_p (_q61, _q30, 0) && types_match (_q61, _q30)))
19134 : {
19135 0 : {
19136 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q30, _q60, _p0, _q20, _q21 };
19137 0 : tree res = generic_simplify_157 (loc, type, _p0, _p1, captures, EQ_EXPR, NE_EXPR);
19138 0 : if (res) return res;
19139 : }
19140 : }
19141 : break;
19142 : }
19143 : default:;
19144 : }
19145 : break;
19146 : }
19147 903 : default:;
19148 : }
19149 903 : switch (TREE_CODE (_q21))
19150 : {
19151 9 : CASE_CONVERT:
19152 9 : {
19153 9 : tree _q40 = TREE_OPERAND (_q21, 0);
19154 9 : switch (TREE_CODE (_p1))
19155 : {
19156 0 : case EQ_EXPR:
19157 0 : {
19158 0 : tree _q60 = TREE_OPERAND (_p1, 0);
19159 0 : tree _q61 = TREE_OPERAND (_p1, 1);
19160 0 : if ((_q60 == _q40 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q40, 0) && types_match (_q60, _q40)))
19161 : {
19162 0 : {
19163 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q40, _q61, _p0, _q21, _q20 };
19164 0 : tree res = generic_simplify_157 (loc, type, _p0, _p1, captures, EQ_EXPR, EQ_EXPR);
19165 0 : if (res) return res;
19166 : }
19167 : }
19168 0 : if ((_q61 == _q40 && ! TREE_SIDE_EFFECTS (_q61)) || (operand_equal_p (_q61, _q40, 0) && types_match (_q61, _q40)))
19169 : {
19170 0 : {
19171 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q40, _q60, _p0, _q21, _q20 };
19172 0 : tree res = generic_simplify_157 (loc, type, _p0, _p1, captures, EQ_EXPR, EQ_EXPR);
19173 0 : if (res) return res;
19174 : }
19175 : }
19176 : break;
19177 : }
19178 0 : case NE_EXPR:
19179 0 : {
19180 0 : tree _q60 = TREE_OPERAND (_p1, 0);
19181 0 : tree _q61 = TREE_OPERAND (_p1, 1);
19182 0 : if ((_q60 == _q40 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q40, 0) && types_match (_q60, _q40)))
19183 : {
19184 0 : {
19185 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q40, _q61, _p0, _q21, _q20 };
19186 0 : tree res = generic_simplify_157 (loc, type, _p0, _p1, captures, EQ_EXPR, NE_EXPR);
19187 0 : if (res) return res;
19188 : }
19189 : }
19190 0 : if ((_q61 == _q40 && ! TREE_SIDE_EFFECTS (_q61)) || (operand_equal_p (_q61, _q40, 0) && types_match (_q61, _q40)))
19191 : {
19192 0 : {
19193 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q40, _q60, _p0, _q21, _q20 };
19194 0 : tree res = generic_simplify_157 (loc, type, _p0, _p1, captures, EQ_EXPR, NE_EXPR);
19195 0 : if (res) return res;
19196 : }
19197 : }
19198 : break;
19199 : }
19200 : default:;
19201 : }
19202 : break;
19203 : }
19204 903 : default:;
19205 : }
19206 903 : switch (TREE_CODE (_p1))
19207 : {
19208 428 : case EQ_EXPR:
19209 428 : {
19210 428 : tree _q50 = TREE_OPERAND (_p1, 0);
19211 428 : tree _q51 = TREE_OPERAND (_p1, 1);
19212 428 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
19213 : {
19214 396 : {
19215 396 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q50, _q51 };
19216 396 : tree res = generic_simplify_167 (loc, type, _p0, _p1, captures, EQ_EXPR, EQ_EXPR);
19217 396 : if (res) return res;
19218 : }
19219 396 : {
19220 396 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q20, _q51, _p0, _q20, _q21 };
19221 396 : tree res = generic_simplify_158 (loc, type, _p0, _p1, captures, EQ_EXPR, EQ_EXPR);
19222 396 : if (res) return res;
19223 : }
19224 : }
19225 428 : if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
19226 : {
19227 0 : {
19228 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q51, _q50 };
19229 0 : tree res = generic_simplify_167 (loc, type, _p0, _p1, captures, EQ_EXPR, EQ_EXPR);
19230 0 : if (res) return res;
19231 : }
19232 : }
19233 428 : if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
19234 : {
19235 0 : {
19236 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q50, _q51 };
19237 0 : tree res = generic_simplify_167 (loc, type, _p0, _p1, captures, EQ_EXPR, EQ_EXPR);
19238 0 : if (res) return res;
19239 : }
19240 0 : {
19241 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q21, _q51, _p0, _q21, _q20 };
19242 0 : tree res = generic_simplify_158 (loc, type, _p0, _p1, captures, EQ_EXPR, EQ_EXPR);
19243 0 : if (res) return res;
19244 : }
19245 : }
19246 428 : if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
19247 : {
19248 15 : {
19249 15 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q51, _q50 };
19250 15 : tree res = generic_simplify_167 (loc, type, _p0, _p1, captures, EQ_EXPR, EQ_EXPR);
19251 15 : if (res) return res;
19252 : }
19253 15 : {
19254 15 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q21, _q50, _p0, _q21, _q20 };
19255 15 : tree res = generic_simplify_158 (loc, type, _p0, _p1, captures, EQ_EXPR, EQ_EXPR);
19256 15 : if (res) return res;
19257 : }
19258 : }
19259 428 : if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
19260 : {
19261 0 : {
19262 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q20, _q50, _p0, _q20, _q21 };
19263 0 : tree res = generic_simplify_158 (loc, type, _p0, _p1, captures, EQ_EXPR, EQ_EXPR);
19264 0 : if (res) return res;
19265 : }
19266 : }
19267 : break;
19268 : }
19269 20 : case NE_EXPR:
19270 20 : {
19271 20 : tree _q50 = TREE_OPERAND (_p1, 0);
19272 20 : tree _q51 = TREE_OPERAND (_p1, 1);
19273 20 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
19274 : {
19275 0 : {
19276 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q50, _q51 };
19277 0 : tree res = generic_simplify_167 (loc, type, _p0, _p1, captures, NE_EXPR, EQ_EXPR);
19278 0 : if (res) return res;
19279 : }
19280 0 : {
19281 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q20, _q51, _p0, _q20, _q21 };
19282 0 : tree res = generic_simplify_158 (loc, type, _p0, _p1, captures, EQ_EXPR, NE_EXPR);
19283 0 : if (res) return res;
19284 : }
19285 : }
19286 20 : if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
19287 : {
19288 0 : {
19289 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q51, _q50 };
19290 0 : tree res = generic_simplify_167 (loc, type, _p0, _p1, captures, NE_EXPR, EQ_EXPR);
19291 0 : if (res) return res;
19292 : }
19293 : }
19294 20 : if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
19295 : {
19296 0 : {
19297 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q50, _q51 };
19298 0 : tree res = generic_simplify_167 (loc, type, _p0, _p1, captures, NE_EXPR, EQ_EXPR);
19299 0 : if (res) return res;
19300 : }
19301 0 : {
19302 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q21, _q51, _p0, _q21, _q20 };
19303 0 : tree res = generic_simplify_158 (loc, type, _p0, _p1, captures, EQ_EXPR, NE_EXPR);
19304 0 : if (res) return res;
19305 : }
19306 : }
19307 20 : if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
19308 : {
19309 4 : {
19310 4 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q51, _q50 };
19311 4 : tree res = generic_simplify_167 (loc, type, _p0, _p1, captures, NE_EXPR, EQ_EXPR);
19312 4 : if (res) return res;
19313 : }
19314 4 : {
19315 4 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q21, _q50, _p0, _q21, _q20 };
19316 4 : tree res = generic_simplify_158 (loc, type, _p0, _p1, captures, EQ_EXPR, NE_EXPR);
19317 4 : if (res) return res;
19318 : }
19319 : }
19320 20 : if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
19321 : {
19322 0 : {
19323 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q20, _q50, _p0, _q20, _q21 };
19324 0 : tree res = generic_simplify_158 (loc, type, _p0, _p1, captures, EQ_EXPR, NE_EXPR);
19325 0 : if (res) return res;
19326 : }
19327 : }
19328 : break;
19329 : }
19330 16 : case LT_EXPR:
19331 16 : {
19332 16 : tree _q50 = TREE_OPERAND (_p1, 0);
19333 16 : tree _q51 = TREE_OPERAND (_p1, 1);
19334 16 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
19335 : {
19336 0 : {
19337 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q50, _q51 };
19338 0 : tree res = generic_simplify_167 (loc, type, _p0, _p1, captures, LT_EXPR, EQ_EXPR);
19339 0 : if (res) return res;
19340 : }
19341 : }
19342 16 : if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
19343 : {
19344 0 : {
19345 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q51, _q50 };
19346 0 : tree res = generic_simplify_167 (loc, type, _p0, _p1, captures, GT_EXPR, EQ_EXPR);
19347 0 : if (res) return res;
19348 : }
19349 : }
19350 16 : if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
19351 : {
19352 0 : {
19353 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q50, _q51 };
19354 0 : tree res = generic_simplify_167 (loc, type, _p0, _p1, captures, LT_EXPR, EQ_EXPR);
19355 0 : if (res) return res;
19356 : }
19357 : }
19358 16 : if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
19359 : {
19360 0 : {
19361 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q51, _q50 };
19362 0 : tree res = generic_simplify_167 (loc, type, _p0, _p1, captures, GT_EXPR, EQ_EXPR);
19363 0 : if (res) return res;
19364 : }
19365 : }
19366 : break;
19367 : }
19368 28 : case GT_EXPR:
19369 28 : {
19370 28 : tree _q50 = TREE_OPERAND (_p1, 0);
19371 28 : tree _q51 = TREE_OPERAND (_p1, 1);
19372 28 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
19373 : {
19374 9 : {
19375 9 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q50, _q51 };
19376 9 : tree res = generic_simplify_167 (loc, type, _p0, _p1, captures, GT_EXPR, EQ_EXPR);
19377 9 : if (res) return res;
19378 : }
19379 : }
19380 28 : if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
19381 : {
19382 0 : {
19383 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q51, _q50 };
19384 0 : tree res = generic_simplify_167 (loc, type, _p0, _p1, captures, LT_EXPR, EQ_EXPR);
19385 0 : if (res) return res;
19386 : }
19387 : }
19388 28 : if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
19389 : {
19390 0 : {
19391 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q50, _q51 };
19392 0 : tree res = generic_simplify_167 (loc, type, _p0, _p1, captures, GT_EXPR, EQ_EXPR);
19393 0 : if (res) return res;
19394 : }
19395 : }
19396 28 : if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
19397 : {
19398 0 : {
19399 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q51, _q50 };
19400 0 : tree res = generic_simplify_167 (loc, type, _p0, _p1, captures, LT_EXPR, EQ_EXPR);
19401 0 : if (res) return res;
19402 : }
19403 : }
19404 : break;
19405 : }
19406 146 : case LE_EXPR:
19407 146 : {
19408 146 : tree _q50 = TREE_OPERAND (_p1, 0);
19409 146 : tree _q51 = TREE_OPERAND (_p1, 1);
19410 146 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
19411 : {
19412 0 : {
19413 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q50, _q51 };
19414 0 : tree res = generic_simplify_167 (loc, type, _p0, _p1, captures, LE_EXPR, EQ_EXPR);
19415 0 : if (res) return res;
19416 : }
19417 : }
19418 146 : if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
19419 : {
19420 0 : {
19421 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q51, _q50 };
19422 0 : tree res = generic_simplify_167 (loc, type, _p0, _p1, captures, GE_EXPR, EQ_EXPR);
19423 0 : if (res) return res;
19424 : }
19425 : }
19426 146 : if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
19427 : {
19428 0 : {
19429 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q50, _q51 };
19430 0 : tree res = generic_simplify_167 (loc, type, _p0, _p1, captures, LE_EXPR, EQ_EXPR);
19431 0 : if (res) return res;
19432 : }
19433 : }
19434 146 : if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
19435 : {
19436 0 : {
19437 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q51, _q50 };
19438 0 : tree res = generic_simplify_167 (loc, type, _p0, _p1, captures, GE_EXPR, EQ_EXPR);
19439 0 : if (res) return res;
19440 : }
19441 : }
19442 : break;
19443 : }
19444 20 : case GE_EXPR:
19445 20 : {
19446 20 : tree _q50 = TREE_OPERAND (_p1, 0);
19447 20 : tree _q51 = TREE_OPERAND (_p1, 1);
19448 20 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
19449 : {
19450 0 : {
19451 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q50, _q51 };
19452 0 : tree res = generic_simplify_167 (loc, type, _p0, _p1, captures, GE_EXPR, EQ_EXPR);
19453 0 : if (res) return res;
19454 : }
19455 : }
19456 20 : if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
19457 : {
19458 0 : {
19459 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q51, _q50 };
19460 0 : tree res = generic_simplify_167 (loc, type, _p0, _p1, captures, LE_EXPR, EQ_EXPR);
19461 0 : if (res) return res;
19462 : }
19463 : }
19464 20 : if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
19465 : {
19466 0 : {
19467 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q50, _q51 };
19468 0 : tree res = generic_simplify_167 (loc, type, _p0, _p1, captures, GE_EXPR, EQ_EXPR);
19469 0 : if (res) return res;
19470 : }
19471 : }
19472 20 : if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
19473 : {
19474 0 : {
19475 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q51, _q50 };
19476 0 : tree res = generic_simplify_167 (loc, type, _p0, _p1, captures, LE_EXPR, EQ_EXPR);
19477 0 : if (res) return res;
19478 : }
19479 : }
19480 : break;
19481 : }
19482 903 : default:;
19483 : }
19484 903 : switch (TREE_CODE (_q20))
19485 : {
19486 0 : case BIT_AND_EXPR:
19487 0 : {
19488 0 : tree _q30 = TREE_OPERAND (_q20, 0);
19489 0 : tree _q31 = TREE_OPERAND (_q20, 1);
19490 0 : switch (TREE_CODE (_q30))
19491 : {
19492 0 : case BIT_XOR_EXPR:
19493 0 : {
19494 0 : tree _q40 = TREE_OPERAND (_q30, 0);
19495 0 : tree _q41 = TREE_OPERAND (_q30, 1);
19496 0 : if (tree_expr_nonzero_p (_q31))
19497 : {
19498 0 : switch (TREE_CODE (_p1))
19499 : {
19500 0 : case NE_EXPR:
19501 0 : {
19502 0 : tree _q90 = TREE_OPERAND (_p1, 0);
19503 0 : tree _q91 = TREE_OPERAND (_p1, 1);
19504 0 : if ((_q90 == _q40 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q40, 0) && types_match (_q90, _q40)))
19505 : {
19506 0 : if ((_q91 == _q41 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q41, 0) && types_match (_q91, _q41)))
19507 : {
19508 0 : {
19509 0 : tree captures[5] ATTRIBUTE_UNUSED = { _q40, _q41, _q31, _q21, _p1 };
19510 0 : tree res = generic_simplify_160 (loc, type, _p0, _p1, captures, EQ_EXPR);
19511 0 : if (res) return res;
19512 : }
19513 : }
19514 : }
19515 0 : if ((_q90 == _q41 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q41, 0) && types_match (_q90, _q41)))
19516 : {
19517 0 : if ((_q91 == _q40 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q40, 0) && types_match (_q91, _q40)))
19518 : {
19519 0 : {
19520 0 : tree captures[5] ATTRIBUTE_UNUSED = { _q41, _q40, _q31, _q21, _p1 };
19521 0 : tree res = generic_simplify_160 (loc, type, _p0, _p1, captures, EQ_EXPR);
19522 0 : if (res) return res;
19523 : }
19524 : }
19525 : }
19526 : break;
19527 : }
19528 : default:;
19529 : }
19530 : }
19531 : break;
19532 : }
19533 0 : default:;
19534 : }
19535 0 : if (tree_expr_nonzero_p (_q30))
19536 : {
19537 0 : switch (TREE_CODE (_q31))
19538 : {
19539 0 : case BIT_XOR_EXPR:
19540 0 : {
19541 0 : tree _q50 = TREE_OPERAND (_q31, 0);
19542 0 : tree _q51 = TREE_OPERAND (_q31, 1);
19543 0 : switch (TREE_CODE (_p1))
19544 : {
19545 0 : case NE_EXPR:
19546 0 : {
19547 0 : tree _q90 = TREE_OPERAND (_p1, 0);
19548 0 : tree _q91 = TREE_OPERAND (_p1, 1);
19549 0 : if ((_q90 == _q50 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q50, 0) && types_match (_q90, _q50)))
19550 : {
19551 0 : if ((_q91 == _q51 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q51, 0) && types_match (_q91, _q51)))
19552 : {
19553 0 : {
19554 0 : tree captures[5] ATTRIBUTE_UNUSED = { _q50, _q51, _q30, _q21, _p1 };
19555 0 : tree res = generic_simplify_160 (loc, type, _p0, _p1, captures, EQ_EXPR);
19556 0 : if (res) return res;
19557 : }
19558 : }
19559 : }
19560 0 : if ((_q90 == _q51 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q51, 0) && types_match (_q90, _q51)))
19561 : {
19562 0 : if ((_q91 == _q50 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q50, 0) && types_match (_q91, _q50)))
19563 : {
19564 0 : {
19565 0 : tree captures[5] ATTRIBUTE_UNUSED = { _q51, _q50, _q30, _q21, _p1 };
19566 0 : tree res = generic_simplify_160 (loc, type, _p0, _p1, captures, EQ_EXPR);
19567 0 : if (res) return res;
19568 : }
19569 : }
19570 : }
19571 : break;
19572 : }
19573 : default:;
19574 : }
19575 : break;
19576 : }
19577 : default:;
19578 : }
19579 : }
19580 : break;
19581 : }
19582 903 : default:;
19583 : }
19584 903 : switch (TREE_CODE (_q21))
19585 : {
19586 0 : case BIT_AND_EXPR:
19587 0 : {
19588 0 : tree _q40 = TREE_OPERAND (_q21, 0);
19589 0 : tree _q41 = TREE_OPERAND (_q21, 1);
19590 0 : switch (TREE_CODE (_q40))
19591 : {
19592 0 : case BIT_XOR_EXPR:
19593 0 : {
19594 0 : tree _q50 = TREE_OPERAND (_q40, 0);
19595 0 : tree _q51 = TREE_OPERAND (_q40, 1);
19596 0 : if (tree_expr_nonzero_p (_q41))
19597 : {
19598 0 : switch (TREE_CODE (_p1))
19599 : {
19600 0 : case NE_EXPR:
19601 0 : {
19602 0 : tree _q90 = TREE_OPERAND (_p1, 0);
19603 0 : tree _q91 = TREE_OPERAND (_p1, 1);
19604 0 : if ((_q90 == _q50 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q50, 0) && types_match (_q90, _q50)))
19605 : {
19606 0 : if ((_q91 == _q51 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q51, 0) && types_match (_q91, _q51)))
19607 : {
19608 0 : {
19609 0 : tree captures[5] ATTRIBUTE_UNUSED = { _q50, _q51, _q41, _q20, _p1 };
19610 0 : tree res = generic_simplify_160 (loc, type, _p0, _p1, captures, EQ_EXPR);
19611 0 : if (res) return res;
19612 : }
19613 : }
19614 : }
19615 0 : if ((_q90 == _q51 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q51, 0) && types_match (_q90, _q51)))
19616 : {
19617 0 : if ((_q91 == _q50 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q50, 0) && types_match (_q91, _q50)))
19618 : {
19619 0 : {
19620 0 : tree captures[5] ATTRIBUTE_UNUSED = { _q51, _q50, _q41, _q20, _p1 };
19621 0 : tree res = generic_simplify_160 (loc, type, _p0, _p1, captures, EQ_EXPR);
19622 0 : if (res) return res;
19623 : }
19624 : }
19625 : }
19626 : break;
19627 : }
19628 : default:;
19629 : }
19630 : }
19631 : break;
19632 : }
19633 0 : default:;
19634 : }
19635 0 : if (tree_expr_nonzero_p (_q40))
19636 : {
19637 0 : switch (TREE_CODE (_q41))
19638 : {
19639 0 : case BIT_XOR_EXPR:
19640 0 : {
19641 0 : tree _q60 = TREE_OPERAND (_q41, 0);
19642 0 : tree _q61 = TREE_OPERAND (_q41, 1);
19643 0 : switch (TREE_CODE (_p1))
19644 : {
19645 0 : case NE_EXPR:
19646 0 : {
19647 0 : tree _q90 = TREE_OPERAND (_p1, 0);
19648 0 : tree _q91 = TREE_OPERAND (_p1, 1);
19649 0 : if ((_q90 == _q60 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q60, 0) && types_match (_q90, _q60)))
19650 : {
19651 0 : if ((_q91 == _q61 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q61, 0) && types_match (_q91, _q61)))
19652 : {
19653 0 : {
19654 0 : tree captures[5] ATTRIBUTE_UNUSED = { _q60, _q61, _q40, _q20, _p1 };
19655 0 : tree res = generic_simplify_160 (loc, type, _p0, _p1, captures, EQ_EXPR);
19656 0 : if (res) return res;
19657 : }
19658 : }
19659 : }
19660 0 : if ((_q90 == _q61 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q61, 0) && types_match (_q90, _q61)))
19661 : {
19662 0 : if ((_q91 == _q60 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q60, 0) && types_match (_q91, _q60)))
19663 : {
19664 0 : {
19665 0 : tree captures[5] ATTRIBUTE_UNUSED = { _q61, _q60, _q40, _q20, _p1 };
19666 0 : tree res = generic_simplify_160 (loc, type, _p0, _p1, captures, EQ_EXPR);
19667 0 : if (res) return res;
19668 : }
19669 : }
19670 : }
19671 : break;
19672 : }
19673 : default:;
19674 : }
19675 : break;
19676 : }
19677 : default:;
19678 : }
19679 : }
19680 : break;
19681 : }
19682 903 : default:;
19683 : }
19684 903 : switch (TREE_CODE (_q20))
19685 : {
19686 0 : case BIT_XOR_EXPR:
19687 0 : {
19688 0 : tree _q30 = TREE_OPERAND (_q20, 0);
19689 0 : tree _q31 = TREE_OPERAND (_q20, 1);
19690 0 : switch (TREE_CODE (_p1))
19691 : {
19692 0 : case NE_EXPR:
19693 0 : {
19694 0 : tree _q70 = TREE_OPERAND (_p1, 0);
19695 0 : tree _q71 = TREE_OPERAND (_p1, 1);
19696 0 : if ((_q70 == _q30 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q30, 0) && types_match (_q70, _q30)))
19697 : {
19698 0 : if ((_q71 == _q31 && ! TREE_SIDE_EFFECTS (_q71)) || (operand_equal_p (_q71, _q31, 0) && types_match (_q71, _q31)))
19699 : {
19700 0 : {
19701 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q30, _q31, _q21, _p1 };
19702 0 : tree res = generic_simplify_161 (loc, type, _p0, _p1, captures, EQ_EXPR);
19703 0 : if (res) return res;
19704 : }
19705 : }
19706 : }
19707 0 : if ((_q70 == _q31 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q31, 0) && types_match (_q70, _q31)))
19708 : {
19709 0 : if ((_q71 == _q30 && ! TREE_SIDE_EFFECTS (_q71)) || (operand_equal_p (_q71, _q30, 0) && types_match (_q71, _q30)))
19710 : {
19711 0 : {
19712 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q31, _q30, _q21, _p1 };
19713 0 : tree res = generic_simplify_161 (loc, type, _p0, _p1, captures, EQ_EXPR);
19714 0 : if (res) return res;
19715 : }
19716 : }
19717 : }
19718 : break;
19719 : }
19720 : default:;
19721 : }
19722 : break;
19723 : }
19724 903 : default:;
19725 : }
19726 903 : switch (TREE_CODE (_q21))
19727 : {
19728 0 : case BIT_XOR_EXPR:
19729 0 : {
19730 0 : tree _q40 = TREE_OPERAND (_q21, 0);
19731 0 : tree _q41 = TREE_OPERAND (_q21, 1);
19732 0 : switch (TREE_CODE (_p1))
19733 : {
19734 0 : case NE_EXPR:
19735 0 : {
19736 0 : tree _q70 = TREE_OPERAND (_p1, 0);
19737 0 : tree _q71 = TREE_OPERAND (_p1, 1);
19738 0 : if ((_q70 == _q40 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q40, 0) && types_match (_q70, _q40)))
19739 : {
19740 0 : if ((_q71 == _q41 && ! TREE_SIDE_EFFECTS (_q71)) || (operand_equal_p (_q71, _q41, 0) && types_match (_q71, _q41)))
19741 : {
19742 0 : {
19743 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q40, _q41, _q20, _p1 };
19744 0 : tree res = generic_simplify_161 (loc, type, _p0, _p1, captures, EQ_EXPR);
19745 0 : if (res) return res;
19746 : }
19747 : }
19748 : }
19749 0 : if ((_q70 == _q41 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q41, 0) && types_match (_q70, _q41)))
19750 : {
19751 0 : if ((_q71 == _q40 && ! TREE_SIDE_EFFECTS (_q71)) || (operand_equal_p (_q71, _q40, 0) && types_match (_q71, _q40)))
19752 : {
19753 0 : {
19754 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q41, _q40, _q20, _p1 };
19755 0 : tree res = generic_simplify_161 (loc, type, _p0, _p1, captures, EQ_EXPR);
19756 0 : if (res) return res;
19757 : }
19758 : }
19759 : }
19760 : break;
19761 : }
19762 : default:;
19763 : }
19764 : break;
19765 : }
19766 : default:;
19767 : }
19768 : break;
19769 : }
19770 582 : case MULT_EXPR:
19771 582 : {
19772 582 : tree _q20 = TREE_OPERAND (_p0, 0);
19773 582 : tree _q21 = TREE_OPERAND (_p0, 1);
19774 582 : switch (TREE_CODE (_q21))
19775 : {
19776 553 : case INTEGER_CST:
19777 553 : {
19778 553 : switch (TREE_CODE (_p1))
19779 : {
19780 7 : case MULT_EXPR:
19781 7 : {
19782 7 : tree _q50 = TREE_OPERAND (_p1, 0);
19783 7 : tree _q51 = TREE_OPERAND (_p1, 1);
19784 7 : switch (TREE_CODE (_q51))
19785 : {
19786 7 : case INTEGER_CST:
19787 7 : {
19788 7 : {
19789 7 : tree captures[8] ATTRIBUTE_UNUSED = { _p0, _p0, _q20, _q21, _p1, _p1, _q50, _q51 };
19790 7 : tree res = generic_simplify_44 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR);
19791 7 : if (res) return res;
19792 : }
19793 7 : break;
19794 : }
19795 : default:;
19796 : }
19797 : break;
19798 : }
19799 0 : case LSHIFT_EXPR:
19800 0 : {
19801 0 : tree _q50 = TREE_OPERAND (_p1, 0);
19802 0 : tree _q51 = TREE_OPERAND (_p1, 1);
19803 0 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
19804 : {
19805 0 : switch (TREE_CODE (_q51))
19806 : {
19807 0 : case INTEGER_CST:
19808 0 : {
19809 0 : {
19810 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p0, _p0, _q20, _q21, _p1, _q51 };
19811 0 : tree res = generic_simplify_45 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR);
19812 0 : if (res) return res;
19813 : }
19814 0 : break;
19815 : }
19816 : default:;
19817 : }
19818 : }
19819 : break;
19820 : }
19821 553 : default:;
19822 : }
19823 553 : if ((_p1 == _q20 && ! TREE_SIDE_EFFECTS (_p1)) || (operand_equal_p (_p1, _q20, 0) && types_match (_p1, _q20)))
19824 : {
19825 0 : {
19826 0 : tree captures[4] ATTRIBUTE_UNUSED = { _p0, _p0, _q20, _q21 };
19827 0 : tree res = generic_simplify_46 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR);
19828 0 : if (res) return res;
19829 : }
19830 : }
19831 : break;
19832 : }
19833 : default:;
19834 : }
19835 : break;
19836 : }
19837 381976 : case LSHIFT_EXPR:
19838 381976 : {
19839 381976 : tree _q20 = TREE_OPERAND (_p0, 0);
19840 381976 : tree _q21 = TREE_OPERAND (_p0, 1);
19841 381976 : switch (TREE_CODE (_q21))
19842 : {
19843 367247 : case INTEGER_CST:
19844 367247 : {
19845 367247 : switch (TREE_CODE (_p1))
19846 : {
19847 0 : case MULT_EXPR:
19848 0 : {
19849 0 : tree _q50 = TREE_OPERAND (_p1, 0);
19850 0 : tree _q51 = TREE_OPERAND (_p1, 1);
19851 0 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
19852 : {
19853 0 : switch (TREE_CODE (_q51))
19854 : {
19855 0 : case INTEGER_CST:
19856 0 : {
19857 0 : {
19858 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _p1, _q20, _q51, _p0, _q21 };
19859 0 : tree res = generic_simplify_45 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR);
19860 0 : if (res) return res;
19861 : }
19862 0 : break;
19863 : }
19864 : default:;
19865 : }
19866 : }
19867 : break;
19868 : }
19869 367247 : default:;
19870 : }
19871 367247 : {
19872 367247 : tree _p1_pops[1];
19873 367247 : if (tree_nop_convert (_p1, _p1_pops))
19874 : {
19875 315974 : tree _q50 = _p1_pops[0];
19876 315974 : switch (TREE_CODE (_q50))
19877 : {
19878 0 : case MULT_EXPR:
19879 0 : {
19880 0 : tree _q60 = TREE_OPERAND (_q50, 0);
19881 0 : tree _q61 = TREE_OPERAND (_q50, 1);
19882 0 : {
19883 0 : tree _q60_pops[1];
19884 0 : if (tree_nop_convert (_q60, _q60_pops))
19885 : {
19886 0 : tree _q70 = _q60_pops[0];
19887 0 : if ((_q70 == _q20 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q20, 0) && types_match (_q70, _q20)))
19888 : {
19889 0 : switch (TREE_CODE (_q61))
19890 : {
19891 0 : case INTEGER_CST:
19892 0 : {
19893 0 : {
19894 0 : tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q50, _q20, _q61, _p0, _q21 };
19895 0 : tree res = generic_simplify_41 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR);
19896 0 : if (res) return res;
19897 : }
19898 0 : break;
19899 : }
19900 : default:;
19901 : }
19902 : }
19903 : }
19904 : }
19905 0 : break;
19906 : }
19907 : default:;
19908 : }
19909 : }
19910 : }
19911 367247 : break;
19912 : }
19913 : default:;
19914 : }
19915 : break;
19916 : }
19917 1845240 : default:;
19918 : }
19919 1845240 : {
19920 1845240 : tree _p0_pops[1];
19921 1845240 : if (tree_logical_inverted_value (_p0, _p0_pops))
19922 : {
19923 204 : tree _q20 = _p0_pops[0];
19924 204 : if ((_p1 == _q20 && ! TREE_SIDE_EFFECTS (_p1)) || (operand_equal_p (_p1, _q20, 0) && types_match (_p1, _q20)))
19925 : {
19926 3 : if (tree_truth_valued_p (_p1))
19927 : {
19928 3 : {
19929 3 : tree captures[1] ATTRIBUTE_UNUSED = { _q20 };
19930 3 : tree res = generic_simplify_36 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR);
19931 3 : if (res) return res;
19932 : }
19933 : }
19934 : }
19935 : }
19936 : }
19937 1845237 : if (tree_truth_valued_p (_p0))
19938 : {
19939 228821 : {
19940 228821 : tree _p1_pops[1];
19941 228821 : if (tree_logical_inverted_value (_p1, _p1_pops))
19942 : {
19943 91 : tree _q30 = _p1_pops[0];
19944 91 : if ((_q30 == _p0 && ! TREE_SIDE_EFFECTS (_q30)) || (operand_equal_p (_q30, _p0, 0) && types_match (_q30, _p0)))
19945 : {
19946 0 : {
19947 0 : tree captures[1] ATTRIBUTE_UNUSED = { _p0 };
19948 0 : tree res = generic_simplify_36 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR);
19949 0 : if (res) return res;
19950 : }
19951 : }
19952 : }
19953 : }
19954 : }
19955 1845237 : switch (TREE_CODE (_p1))
19956 : {
19957 50 : case MULT_EXPR:
19958 50 : {
19959 50 : tree _q30 = TREE_OPERAND (_p1, 0);
19960 50 : tree _q31 = TREE_OPERAND (_p1, 1);
19961 50 : if ((_q30 == _p0 && ! TREE_SIDE_EFFECTS (_q30)) || (operand_equal_p (_q30, _p0, 0) && types_match (_q30, _p0)))
19962 : {
19963 0 : switch (TREE_CODE (_q31))
19964 : {
19965 0 : case INTEGER_CST:
19966 0 : {
19967 0 : {
19968 0 : tree captures[4] ATTRIBUTE_UNUSED = { _p1, _p1, _p0, _q31 };
19969 0 : tree res = generic_simplify_46 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR);
19970 0 : if (res) return res;
19971 : }
19972 0 : break;
19973 : }
19974 : default:;
19975 : }
19976 : }
19977 : break;
19978 : }
19979 1845237 : default:;
19980 : }
19981 1845237 : {
19982 1845237 : tree _p1_pops[1];
19983 1845237 : if (tree_nop_convert (_p1, _p1_pops))
19984 : {
19985 942368 : tree _q30 = _p1_pops[0];
19986 942368 : switch (TREE_CODE (_q30))
19987 : {
19988 5 : case MULT_EXPR:
19989 5 : {
19990 5 : tree _q40 = TREE_OPERAND (_q30, 0);
19991 5 : tree _q41 = TREE_OPERAND (_q30, 1);
19992 5 : {
19993 5 : tree _q40_pops[1];
19994 5 : if (tree_nop_convert (_q40, _q40_pops))
19995 : {
19996 0 : tree _q50 = _q40_pops[0];
19997 0 : if ((_q50 == _p0 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _p0, 0) && types_match (_q50, _p0)))
19998 : {
19999 0 : switch (TREE_CODE (_q41))
20000 : {
20001 0 : case INTEGER_CST:
20002 0 : {
20003 0 : {
20004 0 : tree captures[4] ATTRIBUTE_UNUSED = { _p1, _q30, _p0, _q41 };
20005 0 : tree res = generic_simplify_42 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR);
20006 0 : if (res) return res;
20007 : }
20008 0 : break;
20009 : }
20010 : default:;
20011 : }
20012 : }
20013 : }
20014 : }
20015 5 : break;
20016 : }
20017 : default:;
20018 : }
20019 : }
20020 : }
20021 1845237 : switch (TREE_CODE (_p0))
20022 : {
20023 381976 : case LSHIFT_EXPR:
20024 381976 : {
20025 381976 : tree _q20 = TREE_OPERAND (_p0, 0);
20026 381976 : tree _q21 = TREE_OPERAND (_p0, 1);
20027 381976 : switch (TREE_CODE (_q21))
20028 : {
20029 367247 : case INTEGER_CST:
20030 367247 : {
20031 367247 : switch (TREE_CODE (_p1))
20032 : {
20033 1132 : case LSHIFT_EXPR:
20034 1132 : {
20035 1132 : tree _q50 = TREE_OPERAND (_p1, 0);
20036 1132 : tree _q51 = TREE_OPERAND (_p1, 1);
20037 1132 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
20038 : {
20039 4 : switch (TREE_CODE (_q51))
20040 : {
20041 4 : case INTEGER_CST:
20042 4 : {
20043 4 : {
20044 4 : tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q51 };
20045 4 : tree res = generic_simplify_48 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR);
20046 4 : if (res) return res;
20047 : }
20048 2 : break;
20049 : }
20050 : default:;
20051 : }
20052 : }
20053 : break;
20054 : }
20055 367245 : default:;
20056 : }
20057 367245 : if ((_p1 == _q20 && ! TREE_SIDE_EFFECTS (_p1)) || (operand_equal_p (_p1, _q20, 0) && types_match (_p1, _q20)))
20058 : {
20059 471 : {
20060 471 : tree captures[3] ATTRIBUTE_UNUSED = { _p0, _q20, _q21 };
20061 471 : tree res = generic_simplify_49 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR);
20062 471 : if (res) return res;
20063 : }
20064 : }
20065 : break;
20066 : }
20067 : default:;
20068 : }
20069 : break;
20070 : }
20071 1845235 : default:;
20072 : }
20073 1845235 : switch (TREE_CODE (_p1))
20074 : {
20075 37563 : case LSHIFT_EXPR:
20076 37563 : {
20077 37563 : tree _q30 = TREE_OPERAND (_p1, 0);
20078 37563 : tree _q31 = TREE_OPERAND (_p1, 1);
20079 37563 : if ((_q30 == _p0 && ! TREE_SIDE_EFFECTS (_q30)) || (operand_equal_p (_q30, _p0, 0) && types_match (_q30, _p0)))
20080 : {
20081 10 : switch (TREE_CODE (_q31))
20082 : {
20083 3 : case INTEGER_CST:
20084 3 : {
20085 3 : {
20086 3 : tree captures[3] ATTRIBUTE_UNUSED = { _p1, _p0, _q31 };
20087 3 : tree res = generic_simplify_49 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR);
20088 3 : if (res) return res;
20089 : }
20090 0 : break;
20091 : }
20092 : default:;
20093 : }
20094 : }
20095 : break;
20096 : }
20097 1845232 : default:;
20098 : }
20099 1845232 : switch (TREE_CODE (_p0))
20100 : {
20101 0 : case MIN_EXPR:
20102 0 : {
20103 0 : tree _q20 = TREE_OPERAND (_p0, 0);
20104 0 : tree _q21 = TREE_OPERAND (_p0, 1);
20105 0 : switch (TREE_CODE (_p1))
20106 : {
20107 0 : case MAX_EXPR:
20108 0 : {
20109 0 : tree _q50 = TREE_OPERAND (_p1, 0);
20110 0 : tree _q51 = TREE_OPERAND (_p1, 1);
20111 0 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
20112 : {
20113 0 : if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
20114 : {
20115 0 : {
20116 0 : tree captures[2] ATTRIBUTE_UNUSED = { _q20, _q21 };
20117 0 : if (!HONOR_NANS (captures[0])
20118 : )
20119 : {
20120 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1312;
20121 0 : {
20122 0 : tree res_op0;
20123 0 : res_op0 = captures[0];
20124 0 : tree res_op1;
20125 0 : res_op1 = captures[1];
20126 0 : tree _r;
20127 0 : _r = fold_build2_loc (loc, BIT_IOR_EXPR, type, res_op0, res_op1);
20128 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 892, __FILE__, __LINE__, true);
20129 0 : return _r;
20130 : }
20131 0 : next_after_fail1312:;
20132 : }
20133 : }
20134 : }
20135 : }
20136 0 : if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
20137 : {
20138 0 : if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
20139 : {
20140 0 : {
20141 0 : tree captures[2] ATTRIBUTE_UNUSED = { _q21, _q20 };
20142 0 : if (!HONOR_NANS (captures[0])
20143 : )
20144 : {
20145 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1313;
20146 0 : {
20147 0 : tree res_op0;
20148 0 : res_op0 = captures[0];
20149 0 : tree res_op1;
20150 0 : res_op1 = captures[1];
20151 0 : tree _r;
20152 0 : _r = fold_build2_loc (loc, BIT_IOR_EXPR, type, res_op0, res_op1);
20153 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 892, __FILE__, __LINE__, true);
20154 0 : return _r;
20155 : }
20156 0 : next_after_fail1313:;
20157 : }
20158 : }
20159 : }
20160 : }
20161 : break;
20162 : }
20163 : default:;
20164 : }
20165 : break;
20166 : }
20167 0 : case MAX_EXPR:
20168 0 : {
20169 0 : tree _q20 = TREE_OPERAND (_p0, 0);
20170 0 : tree _q21 = TREE_OPERAND (_p0, 1);
20171 0 : switch (TREE_CODE (_p1))
20172 : {
20173 0 : case MIN_EXPR:
20174 0 : {
20175 0 : tree _q50 = TREE_OPERAND (_p1, 0);
20176 0 : tree _q51 = TREE_OPERAND (_p1, 1);
20177 0 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
20178 : {
20179 0 : if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
20180 : {
20181 0 : {
20182 0 : tree captures[2] ATTRIBUTE_UNUSED = { _q20, _q21 };
20183 0 : if (!HONOR_NANS (captures[0])
20184 : )
20185 : {
20186 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1314;
20187 0 : {
20188 0 : tree res_op0;
20189 0 : res_op0 = captures[0];
20190 0 : tree res_op1;
20191 0 : res_op1 = captures[1];
20192 0 : tree _r;
20193 0 : _r = fold_build2_loc (loc, BIT_IOR_EXPR, type, res_op0, res_op1);
20194 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 892, __FILE__, __LINE__, true);
20195 0 : return _r;
20196 : }
20197 0 : next_after_fail1314:;
20198 : }
20199 : }
20200 : }
20201 : }
20202 0 : if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
20203 : {
20204 0 : if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
20205 : {
20206 0 : {
20207 0 : tree captures[2] ATTRIBUTE_UNUSED = { _q20, _q21 };
20208 0 : if (!HONOR_NANS (captures[0])
20209 : )
20210 : {
20211 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1315;
20212 0 : {
20213 0 : tree res_op0;
20214 0 : res_op0 = captures[0];
20215 0 : tree res_op1;
20216 0 : res_op1 = captures[1];
20217 0 : tree _r;
20218 0 : _r = fold_build2_loc (loc, BIT_IOR_EXPR, type, res_op0, res_op1);
20219 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 892, __FILE__, __LINE__, true);
20220 0 : return _r;
20221 : }
20222 0 : next_after_fail1315:;
20223 : }
20224 : }
20225 : }
20226 : }
20227 : break;
20228 : }
20229 : default:;
20230 : }
20231 : break;
20232 : }
20233 61 : case VEC_COND_EXPR:
20234 61 : {
20235 61 : tree _q20 = TREE_OPERAND (_p0, 0);
20236 61 : tree _q21 = TREE_OPERAND (_p0, 1);
20237 61 : tree _q22 = TREE_OPERAND (_p0, 2);
20238 61 : switch (TREE_CODE (_p1))
20239 : {
20240 54 : case VEC_COND_EXPR:
20241 54 : {
20242 54 : tree _q60 = TREE_OPERAND (_p1, 0);
20243 54 : tree _q61 = TREE_OPERAND (_p1, 1);
20244 54 : tree _q62 = TREE_OPERAND (_p1, 2);
20245 54 : if ((_q60 == _q20 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q20, 0) && types_match (_q60, _q20)))
20246 : {
20247 0 : {
20248 0 : tree captures[7] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _q22, _p1, _q61, _q62 };
20249 0 : if (VECTOR_TYPE_P (type)
20250 0 : && (TREE_CODE_CLASS (BIT_IOR_EXPR) != tcc_comparison
20251 : || types_match (type, TREE_TYPE (captures[2]))
20252 : || expand_vec_cond_expr_p (type, TREE_TYPE (captures[1]))
20253 : || (optimize_vectors_before_lowering_p ()
20254 : && !expand_vec_cond_expr_p (TREE_TYPE (captures[2]), TREE_TYPE (captures[1]))))
20255 : )
20256 : {
20257 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1316;
20258 0 : {
20259 0 : tree res_op0;
20260 0 : res_op0 = captures[1];
20261 0 : tree res_op1;
20262 0 : {
20263 0 : tree _o1[2], _r1;
20264 0 : _o1[0] = captures[2];
20265 0 : _o1[1] = captures[5];
20266 0 : _r1 = fold_build2_loc (loc, BIT_IOR_EXPR, type, _o1[0], _o1[1]);
20267 0 : if (EXPR_P (_r1))
20268 0 : goto next_after_fail1316;
20269 0 : res_op1 = _r1;
20270 : }
20271 0 : tree res_op2;
20272 0 : {
20273 0 : tree _o1[2], _r1;
20274 0 : _o1[0] = captures[3];
20275 0 : _o1[1] = captures[6];
20276 0 : _r1 = fold_build2_loc (loc, BIT_IOR_EXPR, type, _o1[0], _o1[1]);
20277 0 : if (EXPR_P (_r1))
20278 0 : goto next_after_fail1316;
20279 0 : res_op2 = _r1;
20280 : }
20281 0 : tree _r;
20282 0 : _r = fold_build3_loc (loc, VEC_COND_EXPR, type, res_op0, res_op1, res_op2);
20283 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 893, __FILE__, __LINE__, true);
20284 0 : return _r;
20285 : }
20286 0 : next_after_fail1316:;
20287 : }
20288 : }
20289 : }
20290 : break;
20291 : }
20292 61 : default:;
20293 : }
20294 61 : if (integer_minus_onep (_q21))
20295 : {
20296 60 : if (integer_zerop (_q22))
20297 : {
20298 60 : switch (TREE_CODE (_p1))
20299 : {
20300 54 : case VEC_COND_EXPR:
20301 54 : {
20302 54 : tree _q60 = TREE_OPERAND (_p1, 0);
20303 54 : tree _q61 = TREE_OPERAND (_p1, 1);
20304 54 : tree _q62 = TREE_OPERAND (_p1, 2);
20305 54 : if ((_q61 == _q21 && ! TREE_SIDE_EFFECTS (_q61)) || (operand_equal_p (_q61, _q21, 0) && types_match (_q61, _q21)))
20306 : {
20307 54 : if ((_q62 == _q22 && ! TREE_SIDE_EFFECTS (_q62)) || (operand_equal_p (_q62, _q22, 0) && types_match (_q62, _q22)))
20308 : {
20309 54 : {
20310 54 : tree captures[4] ATTRIBUTE_UNUSED = { _q20, _q21, _q22, _q60 };
20311 54 : const enum tree_code lop = BIT_IOR_EXPR;
20312 54 : if (target_supports_op_p (TREE_TYPE (captures[0]), lop, optab_vector)
20313 : )
20314 : {
20315 54 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1317;
20316 54 : {
20317 54 : tree res_op0;
20318 54 : {
20319 54 : tree _o1[2], _r1;
20320 54 : _o1[0] = captures[0];
20321 54 : _o1[1] = captures[3];
20322 54 : _r1 = fold_build2_loc (loc, lop, TREE_TYPE (_o1[0]), _o1[0], _o1[1]);
20323 54 : res_op0 = _r1;
20324 : }
20325 54 : tree res_op1;
20326 54 : res_op1 = captures[1];
20327 54 : tree res_op2;
20328 54 : res_op2 = captures[2];
20329 54 : tree _r;
20330 54 : _r = fold_build3_loc (loc, VEC_COND_EXPR, type, res_op0, res_op1, res_op2);
20331 54 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 894, __FILE__, __LINE__, true);
20332 54 : return _r;
20333 : }
20334 0 : next_after_fail1317:;
20335 : }
20336 : }
20337 0 : {
20338 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q20, _q21, _q22, _q60 };
20339 0 : const enum tree_code lop = BIT_IOR_EXPR;
20340 0 : if (target_supports_op_p (TREE_TYPE (captures[0]), lop, optab_vector)
20341 : )
20342 : {
20343 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1318;
20344 0 : {
20345 0 : tree res_op0;
20346 0 : {
20347 0 : tree _o1[2], _r1;
20348 0 : _o1[0] = captures[0];
20349 0 : _o1[1] = captures[3];
20350 0 : _r1 = fold_build2_loc (loc, lop, TREE_TYPE (_o1[0]), _o1[0], _o1[1]);
20351 0 : res_op0 = _r1;
20352 : }
20353 0 : tree res_op1;
20354 0 : res_op1 = captures[1];
20355 0 : tree res_op2;
20356 0 : res_op2 = captures[2];
20357 0 : tree _r;
20358 0 : _r = fold_build3_loc (loc, VEC_COND_EXPR, type, res_op0, res_op1, res_op2);
20359 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 894, __FILE__, __LINE__, true);
20360 0 : return _r;
20361 : }
20362 0 : next_after_fail1318:;
20363 : }
20364 : }
20365 0 : {
20366 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q20, _q21, _q22, _q60 };
20367 0 : const enum tree_code lop = BIT_IOR_EXPR;
20368 0 : if (target_supports_op_p (TREE_TYPE (captures[0]), lop, optab_vector)
20369 : )
20370 : {
20371 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1319;
20372 0 : {
20373 0 : tree res_op0;
20374 0 : {
20375 0 : tree _o1[2], _r1;
20376 0 : _o1[0] = captures[0];
20377 0 : _o1[1] = captures[3];
20378 0 : _r1 = fold_build2_loc (loc, lop, TREE_TYPE (_o1[0]), _o1[0], _o1[1]);
20379 0 : res_op0 = _r1;
20380 : }
20381 0 : tree res_op1;
20382 0 : res_op1 = captures[1];
20383 0 : tree res_op2;
20384 0 : res_op2 = captures[2];
20385 0 : tree _r;
20386 0 : _r = fold_build3_loc (loc, VEC_COND_EXPR, type, res_op0, res_op1, res_op2);
20387 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 894, __FILE__, __LINE__, true);
20388 0 : return _r;
20389 : }
20390 0 : next_after_fail1319:;
20391 : }
20392 : }
20393 0 : {
20394 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q20, _q21, _q22, _q60 };
20395 0 : const enum tree_code lop = BIT_IOR_EXPR;
20396 0 : if (target_supports_op_p (TREE_TYPE (captures[0]), lop, optab_vector)
20397 : )
20398 : {
20399 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1320;
20400 0 : {
20401 0 : tree res_op0;
20402 0 : {
20403 0 : tree _o1[2], _r1;
20404 0 : _o1[0] = captures[0];
20405 0 : _o1[1] = captures[3];
20406 0 : _r1 = fold_build2_loc (loc, lop, TREE_TYPE (_o1[0]), _o1[0], _o1[1]);
20407 0 : res_op0 = _r1;
20408 : }
20409 0 : tree res_op1;
20410 0 : res_op1 = captures[1];
20411 0 : tree res_op2;
20412 0 : res_op2 = captures[2];
20413 0 : tree _r;
20414 0 : _r = fold_build3_loc (loc, VEC_COND_EXPR, type, res_op0, res_op1, res_op2);
20415 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 894, __FILE__, __LINE__, true);
20416 0 : return _r;
20417 : }
20418 0 : next_after_fail1320:;
20419 : }
20420 : }
20421 0 : {
20422 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q20, _q21, _q22, _q60 };
20423 0 : const enum tree_code lop = BIT_IOR_EXPR;
20424 0 : if (target_supports_op_p (TREE_TYPE (captures[0]), lop, optab_vector)
20425 : )
20426 : {
20427 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1321;
20428 0 : {
20429 0 : tree res_op0;
20430 0 : {
20431 0 : tree _o1[2], _r1;
20432 0 : _o1[0] = captures[0];
20433 0 : _o1[1] = captures[3];
20434 0 : _r1 = fold_build2_loc (loc, lop, TREE_TYPE (_o1[0]), _o1[0], _o1[1]);
20435 0 : res_op0 = _r1;
20436 : }
20437 0 : tree res_op1;
20438 0 : res_op1 = captures[1];
20439 0 : tree res_op2;
20440 0 : res_op2 = captures[2];
20441 0 : tree _r;
20442 0 : _r = fold_build3_loc (loc, VEC_COND_EXPR, type, res_op0, res_op1, res_op2);
20443 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 894, __FILE__, __LINE__, true);
20444 0 : return _r;
20445 : }
20446 0 : next_after_fail1321:;
20447 : }
20448 : }
20449 0 : {
20450 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q20, _q21, _q22, _q60 };
20451 0 : const enum tree_code lop = BIT_IOR_EXPR;
20452 0 : if (target_supports_op_p (TREE_TYPE (captures[0]), lop, optab_vector)
20453 : )
20454 : {
20455 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1322;
20456 0 : {
20457 0 : tree res_op0;
20458 0 : {
20459 0 : tree _o1[2], _r1;
20460 0 : _o1[0] = captures[0];
20461 0 : _o1[1] = captures[3];
20462 0 : _r1 = fold_build2_loc (loc, lop, TREE_TYPE (_o1[0]), _o1[0], _o1[1]);
20463 0 : res_op0 = _r1;
20464 : }
20465 0 : tree res_op1;
20466 0 : res_op1 = captures[1];
20467 0 : tree res_op2;
20468 0 : res_op2 = captures[2];
20469 0 : tree _r;
20470 0 : _r = fold_build3_loc (loc, VEC_COND_EXPR, type, res_op0, res_op1, res_op2);
20471 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 894, __FILE__, __LINE__, true);
20472 0 : return _r;
20473 : }
20474 0 : next_after_fail1322:;
20475 : }
20476 : }
20477 0 : {
20478 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q20, _q21, _q22, _q60 };
20479 0 : const enum tree_code lop = BIT_IOR_EXPR;
20480 0 : if (target_supports_op_p (TREE_TYPE (captures[0]), lop, optab_vector)
20481 : )
20482 : {
20483 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1323;
20484 0 : {
20485 0 : tree res_op0;
20486 0 : {
20487 0 : tree _o1[2], _r1;
20488 0 : _o1[0] = captures[0];
20489 0 : _o1[1] = captures[3];
20490 0 : _r1 = fold_build2_loc (loc, lop, TREE_TYPE (_o1[0]), _o1[0], _o1[1]);
20491 0 : res_op0 = _r1;
20492 : }
20493 0 : tree res_op1;
20494 0 : res_op1 = captures[1];
20495 0 : tree res_op2;
20496 0 : res_op2 = captures[2];
20497 0 : tree _r;
20498 0 : _r = fold_build3_loc (loc, VEC_COND_EXPR, type, res_op0, res_op1, res_op2);
20499 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 894, __FILE__, __LINE__, true);
20500 0 : return _r;
20501 : }
20502 0 : next_after_fail1323:;
20503 : }
20504 : }
20505 0 : {
20506 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q20, _q21, _q22, _q60 };
20507 0 : const enum tree_code lop = BIT_IOR_EXPR;
20508 0 : if (target_supports_op_p (TREE_TYPE (captures[0]), lop, optab_vector)
20509 : )
20510 : {
20511 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1324;
20512 0 : {
20513 0 : tree res_op0;
20514 0 : {
20515 0 : tree _o1[2], _r1;
20516 0 : _o1[0] = captures[0];
20517 0 : _o1[1] = captures[3];
20518 0 : _r1 = fold_build2_loc (loc, lop, TREE_TYPE (_o1[0]), _o1[0], _o1[1]);
20519 0 : res_op0 = _r1;
20520 : }
20521 0 : tree res_op1;
20522 0 : res_op1 = captures[1];
20523 0 : tree res_op2;
20524 0 : res_op2 = captures[2];
20525 0 : tree _r;
20526 0 : _r = fold_build3_loc (loc, VEC_COND_EXPR, type, res_op0, res_op1, res_op2);
20527 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 894, __FILE__, __LINE__, true);
20528 0 : return _r;
20529 : }
20530 0 : next_after_fail1324:;
20531 : }
20532 : }
20533 0 : {
20534 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q20, _q21, _q22, _q60 };
20535 0 : const enum tree_code lop = BIT_IOR_EXPR;
20536 0 : if (target_supports_op_p (TREE_TYPE (captures[0]), lop, optab_vector)
20537 : )
20538 : {
20539 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1325;
20540 0 : {
20541 0 : tree res_op0;
20542 0 : {
20543 0 : tree _o1[2], _r1;
20544 0 : _o1[0] = captures[0];
20545 0 : _o1[1] = captures[3];
20546 0 : _r1 = fold_build2_loc (loc, lop, TREE_TYPE (_o1[0]), _o1[0], _o1[1]);
20547 0 : res_op0 = _r1;
20548 : }
20549 0 : tree res_op1;
20550 0 : res_op1 = captures[1];
20551 0 : tree res_op2;
20552 0 : res_op2 = captures[2];
20553 0 : tree _r;
20554 0 : _r = fold_build3_loc (loc, VEC_COND_EXPR, type, res_op0, res_op1, res_op2);
20555 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 894, __FILE__, __LINE__, true);
20556 0 : return _r;
20557 : }
20558 0 : next_after_fail1325:;
20559 : }
20560 : }
20561 0 : {
20562 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q20, _q21, _q22, _q60 };
20563 0 : const enum tree_code lop = BIT_IOR_EXPR;
20564 0 : if (target_supports_op_p (TREE_TYPE (captures[0]), lop, optab_vector)
20565 : )
20566 : {
20567 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1326;
20568 0 : {
20569 0 : tree res_op0;
20570 0 : {
20571 0 : tree _o1[2], _r1;
20572 0 : _o1[0] = captures[0];
20573 0 : _o1[1] = captures[3];
20574 0 : _r1 = fold_build2_loc (loc, lop, TREE_TYPE (_o1[0]), _o1[0], _o1[1]);
20575 0 : res_op0 = _r1;
20576 : }
20577 0 : tree res_op1;
20578 0 : res_op1 = captures[1];
20579 0 : tree res_op2;
20580 0 : res_op2 = captures[2];
20581 0 : tree _r;
20582 0 : _r = fold_build3_loc (loc, VEC_COND_EXPR, type, res_op0, res_op1, res_op2);
20583 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 894, __FILE__, __LINE__, true);
20584 0 : return _r;
20585 : }
20586 0 : next_after_fail1326:;
20587 : }
20588 : }
20589 0 : {
20590 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q20, _q21, _q22, _q60 };
20591 0 : const enum tree_code lop = BIT_IOR_EXPR;
20592 0 : if (target_supports_op_p (TREE_TYPE (captures[0]), lop, optab_vector)
20593 : )
20594 : {
20595 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1327;
20596 0 : {
20597 0 : tree res_op0;
20598 0 : {
20599 0 : tree _o1[2], _r1;
20600 0 : _o1[0] = captures[0];
20601 0 : _o1[1] = captures[3];
20602 0 : _r1 = fold_build2_loc (loc, lop, TREE_TYPE (_o1[0]), _o1[0], _o1[1]);
20603 0 : res_op0 = _r1;
20604 : }
20605 0 : tree res_op1;
20606 0 : res_op1 = captures[1];
20607 0 : tree res_op2;
20608 0 : res_op2 = captures[2];
20609 0 : tree _r;
20610 0 : _r = fold_build3_loc (loc, VEC_COND_EXPR, type, res_op0, res_op1, res_op2);
20611 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 894, __FILE__, __LINE__, true);
20612 0 : return _r;
20613 : }
20614 0 : next_after_fail1327:;
20615 : }
20616 : }
20617 0 : {
20618 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q20, _q21, _q22, _q60 };
20619 0 : const enum tree_code lop = BIT_IOR_EXPR;
20620 0 : if (target_supports_op_p (TREE_TYPE (captures[0]), lop, optab_vector)
20621 : )
20622 : {
20623 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1328;
20624 0 : {
20625 0 : tree res_op0;
20626 0 : {
20627 0 : tree _o1[2], _r1;
20628 0 : _o1[0] = captures[0];
20629 0 : _o1[1] = captures[3];
20630 0 : _r1 = fold_build2_loc (loc, lop, TREE_TYPE (_o1[0]), _o1[0], _o1[1]);
20631 0 : res_op0 = _r1;
20632 : }
20633 0 : tree res_op1;
20634 0 : res_op1 = captures[1];
20635 0 : tree res_op2;
20636 0 : res_op2 = captures[2];
20637 0 : tree _r;
20638 0 : _r = fold_build3_loc (loc, VEC_COND_EXPR, type, res_op0, res_op1, res_op2);
20639 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 894, __FILE__, __LINE__, true);
20640 0 : return _r;
20641 : }
20642 0 : next_after_fail1328:;
20643 : }
20644 : }
20645 0 : {
20646 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q20, _q21, _q22, _q60 };
20647 0 : const enum tree_code lop = BIT_IOR_EXPR;
20648 0 : if (target_supports_op_p (TREE_TYPE (captures[0]), lop, optab_vector)
20649 : )
20650 : {
20651 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1329;
20652 0 : {
20653 0 : tree res_op0;
20654 0 : {
20655 0 : tree _o1[2], _r1;
20656 0 : _o1[0] = captures[0];
20657 0 : _o1[1] = captures[3];
20658 0 : _r1 = fold_build2_loc (loc, lop, TREE_TYPE (_o1[0]), _o1[0], _o1[1]);
20659 0 : res_op0 = _r1;
20660 : }
20661 0 : tree res_op1;
20662 0 : res_op1 = captures[1];
20663 0 : tree res_op2;
20664 0 : res_op2 = captures[2];
20665 0 : tree _r;
20666 0 : _r = fold_build3_loc (loc, VEC_COND_EXPR, type, res_op0, res_op1, res_op2);
20667 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 894, __FILE__, __LINE__, true);
20668 0 : return _r;
20669 : }
20670 0 : next_after_fail1329:;
20671 : }
20672 : }
20673 0 : {
20674 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q20, _q21, _q22, _q60 };
20675 0 : const enum tree_code lop = BIT_IOR_EXPR;
20676 0 : if (target_supports_op_p (TREE_TYPE (captures[0]), lop, optab_vector)
20677 : )
20678 : {
20679 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1330;
20680 0 : {
20681 0 : tree res_op0;
20682 0 : {
20683 0 : tree _o1[2], _r1;
20684 0 : _o1[0] = captures[0];
20685 0 : _o1[1] = captures[3];
20686 0 : _r1 = fold_build2_loc (loc, lop, TREE_TYPE (_o1[0]), _o1[0], _o1[1]);
20687 0 : res_op0 = _r1;
20688 : }
20689 0 : tree res_op1;
20690 0 : res_op1 = captures[1];
20691 0 : tree res_op2;
20692 0 : res_op2 = captures[2];
20693 0 : tree _r;
20694 0 : _r = fold_build3_loc (loc, VEC_COND_EXPR, type, res_op0, res_op1, res_op2);
20695 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 894, __FILE__, __LINE__, true);
20696 0 : return _r;
20697 : }
20698 0 : next_after_fail1330:;
20699 : }
20700 : }
20701 0 : {
20702 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q20, _q21, _q22, _q60 };
20703 0 : const enum tree_code lop = BIT_IOR_EXPR;
20704 0 : if (target_supports_op_p (TREE_TYPE (captures[0]), lop, optab_vector)
20705 : )
20706 : {
20707 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1331;
20708 0 : {
20709 0 : tree res_op0;
20710 0 : {
20711 0 : tree _o1[2], _r1;
20712 0 : _o1[0] = captures[0];
20713 0 : _o1[1] = captures[3];
20714 0 : _r1 = fold_build2_loc (loc, lop, TREE_TYPE (_o1[0]), _o1[0], _o1[1]);
20715 0 : res_op0 = _r1;
20716 : }
20717 0 : tree res_op1;
20718 0 : res_op1 = captures[1];
20719 0 : tree res_op2;
20720 0 : res_op2 = captures[2];
20721 0 : tree _r;
20722 0 : _r = fold_build3_loc (loc, VEC_COND_EXPR, type, res_op0, res_op1, res_op2);
20723 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 894, __FILE__, __LINE__, true);
20724 0 : return _r;
20725 : }
20726 0 : next_after_fail1331:;
20727 : }
20728 : }
20729 0 : {
20730 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q20, _q21, _q22, _q60 };
20731 0 : const enum tree_code lop = BIT_IOR_EXPR;
20732 0 : if (target_supports_op_p (TREE_TYPE (captures[0]), lop, optab_vector)
20733 : )
20734 : {
20735 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1332;
20736 0 : {
20737 0 : tree res_op0;
20738 0 : {
20739 0 : tree _o1[2], _r1;
20740 0 : _o1[0] = captures[0];
20741 0 : _o1[1] = captures[3];
20742 0 : _r1 = fold_build2_loc (loc, lop, TREE_TYPE (_o1[0]), _o1[0], _o1[1]);
20743 0 : res_op0 = _r1;
20744 : }
20745 0 : tree res_op1;
20746 0 : res_op1 = captures[1];
20747 0 : tree res_op2;
20748 0 : res_op2 = captures[2];
20749 0 : tree _r;
20750 0 : _r = fold_build3_loc (loc, VEC_COND_EXPR, type, res_op0, res_op1, res_op2);
20751 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 894, __FILE__, __LINE__, true);
20752 0 : return _r;
20753 : }
20754 0 : next_after_fail1332:;
20755 : }
20756 : }
20757 0 : {
20758 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q20, _q21, _q22, _q60 };
20759 0 : const enum tree_code lop = BIT_IOR_EXPR;
20760 0 : if (target_supports_op_p (TREE_TYPE (captures[0]), lop, optab_vector)
20761 : )
20762 : {
20763 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1333;
20764 0 : {
20765 0 : tree res_op0;
20766 0 : {
20767 0 : tree _o1[2], _r1;
20768 0 : _o1[0] = captures[0];
20769 0 : _o1[1] = captures[3];
20770 0 : _r1 = fold_build2_loc (loc, lop, TREE_TYPE (_o1[0]), _o1[0], _o1[1]);
20771 0 : res_op0 = _r1;
20772 : }
20773 0 : tree res_op1;
20774 0 : res_op1 = captures[1];
20775 0 : tree res_op2;
20776 0 : res_op2 = captures[2];
20777 0 : tree _r;
20778 0 : _r = fold_build3_loc (loc, VEC_COND_EXPR, type, res_op0, res_op1, res_op2);
20779 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 894, __FILE__, __LINE__, true);
20780 0 : return _r;
20781 : }
20782 0 : next_after_fail1333:;
20783 : }
20784 : }
20785 0 : {
20786 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q20, _q21, _q22, _q60 };
20787 0 : const enum tree_code lop = BIT_IOR_EXPR;
20788 0 : if (target_supports_op_p (TREE_TYPE (captures[0]), lop, optab_vector)
20789 : )
20790 : {
20791 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1334;
20792 0 : {
20793 0 : tree res_op0;
20794 0 : {
20795 0 : tree _o1[2], _r1;
20796 0 : _o1[0] = captures[0];
20797 0 : _o1[1] = captures[3];
20798 0 : _r1 = fold_build2_loc (loc, lop, TREE_TYPE (_o1[0]), _o1[0], _o1[1]);
20799 0 : res_op0 = _r1;
20800 : }
20801 0 : tree res_op1;
20802 0 : res_op1 = captures[1];
20803 0 : tree res_op2;
20804 0 : res_op2 = captures[2];
20805 0 : tree _r;
20806 0 : _r = fold_build3_loc (loc, VEC_COND_EXPR, type, res_op0, res_op1, res_op2);
20807 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 894, __FILE__, __LINE__, true);
20808 0 : return _r;
20809 : }
20810 0 : next_after_fail1334:;
20811 : }
20812 : }
20813 0 : {
20814 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q20, _q21, _q22, _q60 };
20815 0 : const enum tree_code lop = BIT_IOR_EXPR;
20816 0 : if (target_supports_op_p (TREE_TYPE (captures[0]), lop, optab_vector)
20817 : )
20818 : {
20819 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1335;
20820 0 : {
20821 0 : tree res_op0;
20822 0 : {
20823 0 : tree _o1[2], _r1;
20824 0 : _o1[0] = captures[0];
20825 0 : _o1[1] = captures[3];
20826 0 : _r1 = fold_build2_loc (loc, lop, TREE_TYPE (_o1[0]), _o1[0], _o1[1]);
20827 0 : res_op0 = _r1;
20828 : }
20829 0 : tree res_op1;
20830 0 : res_op1 = captures[1];
20831 0 : tree res_op2;
20832 0 : res_op2 = captures[2];
20833 0 : tree _r;
20834 0 : _r = fold_build3_loc (loc, VEC_COND_EXPR, type, res_op0, res_op1, res_op2);
20835 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 894, __FILE__, __LINE__, true);
20836 0 : return _r;
20837 : }
20838 0 : next_after_fail1335:;
20839 : }
20840 : }
20841 0 : {
20842 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q20, _q21, _q22, _q60 };
20843 0 : const enum tree_code lop = BIT_IOR_EXPR;
20844 0 : if (target_supports_op_p (TREE_TYPE (captures[0]), lop, optab_vector)
20845 : )
20846 : {
20847 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1336;
20848 0 : {
20849 0 : tree res_op0;
20850 0 : {
20851 0 : tree _o1[2], _r1;
20852 0 : _o1[0] = captures[0];
20853 0 : _o1[1] = captures[3];
20854 0 : _r1 = fold_build2_loc (loc, lop, TREE_TYPE (_o1[0]), _o1[0], _o1[1]);
20855 0 : res_op0 = _r1;
20856 : }
20857 0 : tree res_op1;
20858 0 : res_op1 = captures[1];
20859 0 : tree res_op2;
20860 0 : res_op2 = captures[2];
20861 0 : tree _r;
20862 0 : _r = fold_build3_loc (loc, VEC_COND_EXPR, type, res_op0, res_op1, res_op2);
20863 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 894, __FILE__, __LINE__, true);
20864 0 : return _r;
20865 : }
20866 0 : next_after_fail1336:;
20867 : }
20868 : }
20869 0 : {
20870 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q20, _q21, _q22, _q60 };
20871 0 : const enum tree_code lop = BIT_IOR_EXPR;
20872 0 : if (target_supports_op_p (TREE_TYPE (captures[0]), lop, optab_vector)
20873 : )
20874 : {
20875 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1337;
20876 0 : {
20877 0 : tree res_op0;
20878 0 : {
20879 0 : tree _o1[2], _r1;
20880 0 : _o1[0] = captures[0];
20881 0 : _o1[1] = captures[3];
20882 0 : _r1 = fold_build2_loc (loc, lop, TREE_TYPE (_o1[0]), _o1[0], _o1[1]);
20883 0 : res_op0 = _r1;
20884 : }
20885 0 : tree res_op1;
20886 0 : res_op1 = captures[1];
20887 0 : tree res_op2;
20888 0 : res_op2 = captures[2];
20889 0 : tree _r;
20890 0 : _r = fold_build3_loc (loc, VEC_COND_EXPR, type, res_op0, res_op1, res_op2);
20891 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 894, __FILE__, __LINE__, true);
20892 0 : return _r;
20893 : }
20894 0 : next_after_fail1337:;
20895 : }
20896 : }
20897 0 : {
20898 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q20, _q21, _q22, _q60 };
20899 0 : const enum tree_code lop = BIT_IOR_EXPR;
20900 0 : if (target_supports_op_p (TREE_TYPE (captures[0]), lop, optab_vector)
20901 : )
20902 : {
20903 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1338;
20904 0 : {
20905 0 : tree res_op0;
20906 0 : {
20907 0 : tree _o1[2], _r1;
20908 0 : _o1[0] = captures[0];
20909 0 : _o1[1] = captures[3];
20910 0 : _r1 = fold_build2_loc (loc, lop, TREE_TYPE (_o1[0]), _o1[0], _o1[1]);
20911 0 : res_op0 = _r1;
20912 : }
20913 0 : tree res_op1;
20914 0 : res_op1 = captures[1];
20915 0 : tree res_op2;
20916 0 : res_op2 = captures[2];
20917 0 : tree _r;
20918 0 : _r = fold_build3_loc (loc, VEC_COND_EXPR, type, res_op0, res_op1, res_op2);
20919 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 894, __FILE__, __LINE__, true);
20920 0 : return _r;
20921 : }
20922 0 : next_after_fail1338:;
20923 : }
20924 : }
20925 0 : {
20926 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q20, _q21, _q22, _q60 };
20927 0 : const enum tree_code lop = BIT_IOR_EXPR;
20928 0 : if (target_supports_op_p (TREE_TYPE (captures[0]), lop, optab_vector)
20929 : )
20930 : {
20931 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1339;
20932 0 : {
20933 0 : tree res_op0;
20934 0 : {
20935 0 : tree _o1[2], _r1;
20936 0 : _o1[0] = captures[0];
20937 0 : _o1[1] = captures[3];
20938 0 : _r1 = fold_build2_loc (loc, lop, TREE_TYPE (_o1[0]), _o1[0], _o1[1]);
20939 0 : res_op0 = _r1;
20940 : }
20941 0 : tree res_op1;
20942 0 : res_op1 = captures[1];
20943 0 : tree res_op2;
20944 0 : res_op2 = captures[2];
20945 0 : tree _r;
20946 0 : _r = fold_build3_loc (loc, VEC_COND_EXPR, type, res_op0, res_op1, res_op2);
20947 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 894, __FILE__, __LINE__, true);
20948 0 : return _r;
20949 : }
20950 0 : next_after_fail1339:;
20951 : }
20952 : }
20953 0 : {
20954 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q20, _q21, _q22, _q60 };
20955 0 : const enum tree_code lop = BIT_IOR_EXPR;
20956 0 : if (target_supports_op_p (TREE_TYPE (captures[0]), lop, optab_vector)
20957 : )
20958 : {
20959 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1340;
20960 0 : {
20961 0 : tree res_op0;
20962 0 : {
20963 0 : tree _o1[2], _r1;
20964 0 : _o1[0] = captures[0];
20965 0 : _o1[1] = captures[3];
20966 0 : _r1 = fold_build2_loc (loc, lop, TREE_TYPE (_o1[0]), _o1[0], _o1[1]);
20967 0 : res_op0 = _r1;
20968 : }
20969 0 : tree res_op1;
20970 0 : res_op1 = captures[1];
20971 0 : tree res_op2;
20972 0 : res_op2 = captures[2];
20973 0 : tree _r;
20974 0 : _r = fold_build3_loc (loc, VEC_COND_EXPR, type, res_op0, res_op1, res_op2);
20975 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 894, __FILE__, __LINE__, true);
20976 0 : return _r;
20977 : }
20978 0 : next_after_fail1340:;
20979 : }
20980 : }
20981 0 : {
20982 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q20, _q21, _q22, _q60 };
20983 0 : const enum tree_code lop = BIT_IOR_EXPR;
20984 0 : if (target_supports_op_p (TREE_TYPE (captures[0]), lop, optab_vector)
20985 : )
20986 : {
20987 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1341;
20988 0 : {
20989 0 : tree res_op0;
20990 0 : {
20991 0 : tree _o1[2], _r1;
20992 0 : _o1[0] = captures[0];
20993 0 : _o1[1] = captures[3];
20994 0 : _r1 = fold_build2_loc (loc, lop, TREE_TYPE (_o1[0]), _o1[0], _o1[1]);
20995 0 : res_op0 = _r1;
20996 : }
20997 0 : tree res_op1;
20998 0 : res_op1 = captures[1];
20999 0 : tree res_op2;
21000 0 : res_op2 = captures[2];
21001 0 : tree _r;
21002 0 : _r = fold_build3_loc (loc, VEC_COND_EXPR, type, res_op0, res_op1, res_op2);
21003 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 894, __FILE__, __LINE__, true);
21004 0 : return _r;
21005 : }
21006 0 : next_after_fail1341:;
21007 : }
21008 : }
21009 0 : {
21010 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q20, _q21, _q22, _q60 };
21011 0 : const enum tree_code lop = BIT_IOR_EXPR;
21012 0 : if (target_supports_op_p (TREE_TYPE (captures[0]), lop, optab_vector)
21013 : )
21014 : {
21015 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1342;
21016 0 : {
21017 0 : tree res_op0;
21018 0 : {
21019 0 : tree _o1[2], _r1;
21020 0 : _o1[0] = captures[0];
21021 0 : _o1[1] = captures[3];
21022 0 : _r1 = fold_build2_loc (loc, lop, TREE_TYPE (_o1[0]), _o1[0], _o1[1]);
21023 0 : res_op0 = _r1;
21024 : }
21025 0 : tree res_op1;
21026 0 : res_op1 = captures[1];
21027 0 : tree res_op2;
21028 0 : res_op2 = captures[2];
21029 0 : tree _r;
21030 0 : _r = fold_build3_loc (loc, VEC_COND_EXPR, type, res_op0, res_op1, res_op2);
21031 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 894, __FILE__, __LINE__, true);
21032 0 : return _r;
21033 : }
21034 0 : next_after_fail1342:;
21035 : }
21036 : }
21037 0 : {
21038 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q20, _q21, _q22, _q60 };
21039 0 : const enum tree_code lop = BIT_IOR_EXPR;
21040 0 : if (target_supports_op_p (TREE_TYPE (captures[0]), lop, optab_vector)
21041 : )
21042 : {
21043 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1343;
21044 0 : {
21045 0 : tree res_op0;
21046 0 : {
21047 0 : tree _o1[2], _r1;
21048 0 : _o1[0] = captures[0];
21049 0 : _o1[1] = captures[3];
21050 0 : _r1 = fold_build2_loc (loc, lop, TREE_TYPE (_o1[0]), _o1[0], _o1[1]);
21051 0 : res_op0 = _r1;
21052 : }
21053 0 : tree res_op1;
21054 0 : res_op1 = captures[1];
21055 0 : tree res_op2;
21056 0 : res_op2 = captures[2];
21057 0 : tree _r;
21058 0 : _r = fold_build3_loc (loc, VEC_COND_EXPR, type, res_op0, res_op1, res_op2);
21059 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 894, __FILE__, __LINE__, true);
21060 0 : return _r;
21061 : }
21062 0 : next_after_fail1343:;
21063 : }
21064 : }
21065 0 : {
21066 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q20, _q21, _q22, _q60 };
21067 0 : const enum tree_code lop = BIT_IOR_EXPR;
21068 0 : if (target_supports_op_p (TREE_TYPE (captures[0]), lop, optab_vector)
21069 : )
21070 : {
21071 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1344;
21072 0 : {
21073 0 : tree res_op0;
21074 0 : {
21075 0 : tree _o1[2], _r1;
21076 0 : _o1[0] = captures[0];
21077 0 : _o1[1] = captures[3];
21078 0 : _r1 = fold_build2_loc (loc, lop, TREE_TYPE (_o1[0]), _o1[0], _o1[1]);
21079 0 : res_op0 = _r1;
21080 : }
21081 0 : tree res_op1;
21082 0 : res_op1 = captures[1];
21083 0 : tree res_op2;
21084 0 : res_op2 = captures[2];
21085 0 : tree _r;
21086 0 : _r = fold_build3_loc (loc, VEC_COND_EXPR, type, res_op0, res_op1, res_op2);
21087 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 894, __FILE__, __LINE__, true);
21088 0 : return _r;
21089 : }
21090 0 : next_after_fail1344:;
21091 : }
21092 : }
21093 0 : {
21094 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q20, _q21, _q22, _q60 };
21095 0 : const enum tree_code lop = BIT_IOR_EXPR;
21096 0 : if (target_supports_op_p (TREE_TYPE (captures[0]), lop, optab_vector)
21097 : )
21098 : {
21099 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1345;
21100 0 : {
21101 0 : tree res_op0;
21102 0 : {
21103 0 : tree _o1[2], _r1;
21104 0 : _o1[0] = captures[0];
21105 0 : _o1[1] = captures[3];
21106 0 : _r1 = fold_build2_loc (loc, lop, TREE_TYPE (_o1[0]), _o1[0], _o1[1]);
21107 0 : res_op0 = _r1;
21108 : }
21109 0 : tree res_op1;
21110 0 : res_op1 = captures[1];
21111 0 : tree res_op2;
21112 0 : res_op2 = captures[2];
21113 0 : tree _r;
21114 0 : _r = fold_build3_loc (loc, VEC_COND_EXPR, type, res_op0, res_op1, res_op2);
21115 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 894, __FILE__, __LINE__, true);
21116 0 : return _r;
21117 : }
21118 0 : next_after_fail1345:;
21119 : }
21120 : }
21121 0 : {
21122 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q20, _q21, _q22, _q60 };
21123 0 : const enum tree_code lop = BIT_IOR_EXPR;
21124 0 : if (target_supports_op_p (TREE_TYPE (captures[0]), lop, optab_vector)
21125 : )
21126 : {
21127 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1346;
21128 0 : {
21129 0 : tree res_op0;
21130 0 : {
21131 0 : tree _o1[2], _r1;
21132 0 : _o1[0] = captures[0];
21133 0 : _o1[1] = captures[3];
21134 0 : _r1 = fold_build2_loc (loc, lop, TREE_TYPE (_o1[0]), _o1[0], _o1[1]);
21135 0 : res_op0 = _r1;
21136 : }
21137 0 : tree res_op1;
21138 0 : res_op1 = captures[1];
21139 0 : tree res_op2;
21140 0 : res_op2 = captures[2];
21141 0 : tree _r;
21142 0 : _r = fold_build3_loc (loc, VEC_COND_EXPR, type, res_op0, res_op1, res_op2);
21143 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 894, __FILE__, __LINE__, true);
21144 0 : return _r;
21145 : }
21146 0 : next_after_fail1346:;
21147 : }
21148 : }
21149 0 : {
21150 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q20, _q21, _q22, _q60 };
21151 0 : const enum tree_code lop = BIT_IOR_EXPR;
21152 0 : if (target_supports_op_p (TREE_TYPE (captures[0]), lop, optab_vector)
21153 : )
21154 : {
21155 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1347;
21156 0 : {
21157 0 : tree res_op0;
21158 0 : {
21159 0 : tree _o1[2], _r1;
21160 0 : _o1[0] = captures[0];
21161 0 : _o1[1] = captures[3];
21162 0 : _r1 = fold_build2_loc (loc, lop, TREE_TYPE (_o1[0]), _o1[0], _o1[1]);
21163 0 : res_op0 = _r1;
21164 : }
21165 0 : tree res_op1;
21166 0 : res_op1 = captures[1];
21167 0 : tree res_op2;
21168 0 : res_op2 = captures[2];
21169 0 : tree _r;
21170 0 : _r = fold_build3_loc (loc, VEC_COND_EXPR, type, res_op0, res_op1, res_op2);
21171 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 894, __FILE__, __LINE__, true);
21172 0 : return _r;
21173 : }
21174 0 : next_after_fail1347:;
21175 : }
21176 : }
21177 0 : {
21178 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q20, _q21, _q22, _q60 };
21179 0 : const enum tree_code lop = BIT_IOR_EXPR;
21180 0 : if (target_supports_op_p (TREE_TYPE (captures[0]), lop, optab_vector)
21181 : )
21182 : {
21183 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1348;
21184 0 : {
21185 0 : tree res_op0;
21186 0 : {
21187 0 : tree _o1[2], _r1;
21188 0 : _o1[0] = captures[0];
21189 0 : _o1[1] = captures[3];
21190 0 : _r1 = fold_build2_loc (loc, lop, TREE_TYPE (_o1[0]), _o1[0], _o1[1]);
21191 0 : res_op0 = _r1;
21192 : }
21193 0 : tree res_op1;
21194 0 : res_op1 = captures[1];
21195 0 : tree res_op2;
21196 0 : res_op2 = captures[2];
21197 0 : tree _r;
21198 0 : _r = fold_build3_loc (loc, VEC_COND_EXPR, type, res_op0, res_op1, res_op2);
21199 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 894, __FILE__, __LINE__, true);
21200 0 : return _r;
21201 : }
21202 0 : next_after_fail1348:;
21203 : }
21204 : }
21205 0 : {
21206 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q20, _q21, _q22, _q60 };
21207 0 : const enum tree_code lop = BIT_IOR_EXPR;
21208 0 : if (target_supports_op_p (TREE_TYPE (captures[0]), lop, optab_vector)
21209 : )
21210 : {
21211 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1349;
21212 0 : {
21213 0 : tree res_op0;
21214 0 : {
21215 0 : tree _o1[2], _r1;
21216 0 : _o1[0] = captures[0];
21217 0 : _o1[1] = captures[3];
21218 0 : _r1 = fold_build2_loc (loc, lop, TREE_TYPE (_o1[0]), _o1[0], _o1[1]);
21219 0 : res_op0 = _r1;
21220 : }
21221 0 : tree res_op1;
21222 0 : res_op1 = captures[1];
21223 0 : tree res_op2;
21224 0 : res_op2 = captures[2];
21225 0 : tree _r;
21226 0 : _r = fold_build3_loc (loc, VEC_COND_EXPR, type, res_op0, res_op1, res_op2);
21227 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 894, __FILE__, __LINE__, true);
21228 0 : return _r;
21229 : }
21230 0 : next_after_fail1349:;
21231 : }
21232 : }
21233 0 : {
21234 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q20, _q21, _q22, _q60 };
21235 0 : const enum tree_code lop = BIT_IOR_EXPR;
21236 0 : if (target_supports_op_p (TREE_TYPE (captures[0]), lop, optab_vector)
21237 : )
21238 : {
21239 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1350;
21240 0 : {
21241 0 : tree res_op0;
21242 0 : {
21243 0 : tree _o1[2], _r1;
21244 0 : _o1[0] = captures[0];
21245 0 : _o1[1] = captures[3];
21246 0 : _r1 = fold_build2_loc (loc, lop, TREE_TYPE (_o1[0]), _o1[0], _o1[1]);
21247 0 : res_op0 = _r1;
21248 : }
21249 0 : tree res_op1;
21250 0 : res_op1 = captures[1];
21251 0 : tree res_op2;
21252 0 : res_op2 = captures[2];
21253 0 : tree _r;
21254 0 : _r = fold_build3_loc (loc, VEC_COND_EXPR, type, res_op0, res_op1, res_op2);
21255 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 894, __FILE__, __LINE__, true);
21256 0 : return _r;
21257 : }
21258 0 : next_after_fail1350:;
21259 : }
21260 : }
21261 : }
21262 : }
21263 : break;
21264 : }
21265 : default:;
21266 : }
21267 : }
21268 : }
21269 7 : {
21270 7 : tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _q22, _p1 };
21271 7 : if (VECTOR_TYPE_P (type)
21272 7 : && (TREE_CODE_CLASS (BIT_IOR_EXPR) != tcc_comparison
21273 : || types_match (type, TREE_TYPE (captures[2]))
21274 : || expand_vec_cond_expr_p (type, TREE_TYPE (captures[1]))
21275 : || (optimize_vectors_before_lowering_p ()
21276 : && !expand_vec_cond_expr_p (TREE_TYPE (captures[2]), TREE_TYPE (captures[1]))))
21277 : )
21278 : {
21279 7 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1351;
21280 7 : {
21281 7 : if (! tree_invariant_p (captures[4])) goto next_after_fail1351;
21282 1 : tree res_op0;
21283 1 : res_op0 = captures[1];
21284 1 : tree res_op1;
21285 1 : {
21286 1 : tree _o1[2], _r1;
21287 1 : _o1[0] = captures[2];
21288 1 : _o1[1] = unshare_expr (captures[4]);
21289 1 : _r1 = fold_build2_loc (loc, BIT_IOR_EXPR, type, _o1[0], _o1[1]);
21290 1 : if (EXPR_P (_r1))
21291 0 : goto next_after_fail1351;
21292 1 : res_op1 = _r1;
21293 : }
21294 1 : tree res_op2;
21295 1 : {
21296 1 : tree _o1[2], _r1;
21297 1 : _o1[0] = captures[3];
21298 1 : _o1[1] = captures[4];
21299 1 : _r1 = fold_build2_loc (loc, BIT_IOR_EXPR, type, _o1[0], _o1[1]);
21300 1 : if (EXPR_P (_r1))
21301 0 : goto next_after_fail1351;
21302 1 : res_op2 = _r1;
21303 : }
21304 1 : tree _r;
21305 1 : _r = fold_build3_loc (loc, VEC_COND_EXPR, type, res_op0, res_op1, res_op2);
21306 1 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 895, __FILE__, __LINE__, true);
21307 1 : return _r;
21308 : }
21309 6 : next_after_fail1351:;
21310 : }
21311 : }
21312 6 : break;
21313 : }
21314 1845177 : default:;
21315 : }
21316 1845177 : switch (TREE_CODE (_p1))
21317 : {
21318 2 : case VEC_COND_EXPR:
21319 2 : {
21320 2 : tree _q30 = TREE_OPERAND (_p1, 0);
21321 2 : tree _q31 = TREE_OPERAND (_p1, 1);
21322 2 : tree _q32 = TREE_OPERAND (_p1, 2);
21323 2 : {
21324 2 : tree captures[5] ATTRIBUTE_UNUSED = { _p0, _p1, _q30, _q31, _q32 };
21325 2 : if (VECTOR_TYPE_P (type)
21326 2 : && (TREE_CODE_CLASS (BIT_IOR_EXPR) != tcc_comparison
21327 : || types_match (type, TREE_TYPE (captures[3]))
21328 : || expand_vec_cond_expr_p (type, TREE_TYPE (captures[2]))
21329 : || (optimize_vectors_before_lowering_p ()
21330 : && !expand_vec_cond_expr_p (TREE_TYPE (captures[3]), TREE_TYPE (captures[2]))))
21331 : )
21332 : {
21333 2 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1352;
21334 2 : {
21335 2 : if (! tree_invariant_p (captures[0])) goto next_after_fail1352;
21336 0 : tree res_op0;
21337 0 : res_op0 = captures[2];
21338 0 : tree res_op1;
21339 0 : {
21340 0 : tree _o1[2], _r1;
21341 0 : _o1[0] = unshare_expr (captures[0]);
21342 0 : _o1[1] = captures[3];
21343 0 : _r1 = fold_build2_loc (loc, BIT_IOR_EXPR, type, _o1[0], _o1[1]);
21344 0 : if (EXPR_P (_r1))
21345 0 : goto next_after_fail1352;
21346 0 : res_op1 = _r1;
21347 : }
21348 0 : tree res_op2;
21349 0 : {
21350 0 : tree _o1[2], _r1;
21351 0 : _o1[0] = captures[0];
21352 0 : _o1[1] = captures[4];
21353 0 : _r1 = fold_build2_loc (loc, BIT_IOR_EXPR, type, _o1[0], _o1[1]);
21354 0 : if (EXPR_P (_r1))
21355 0 : goto next_after_fail1352;
21356 0 : res_op2 = _r1;
21357 : }
21358 0 : tree _r;
21359 0 : _r = fold_build3_loc (loc, VEC_COND_EXPR, type, res_op0, res_op1, res_op2);
21360 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 896, __FILE__, __LINE__, true);
21361 0 : return _r;
21362 : }
21363 2 : next_after_fail1352:;
21364 : }
21365 : }
21366 2 : break;
21367 : }
21368 1845177 : default:;
21369 : }
21370 1845177 : switch (TREE_CODE (_p0))
21371 : {
21372 16 : case UNORDERED_EXPR:
21373 16 : {
21374 16 : tree _q20 = TREE_OPERAND (_p0, 0);
21375 16 : tree _q21 = TREE_OPERAND (_p0, 1);
21376 16 : if ((_q21 == _q20 && ! TREE_SIDE_EFFECTS (_q21)) || (operand_equal_p (_q21, _q20, 0) && types_match (_q21, _q20)))
21377 : {
21378 0 : switch (TREE_CODE (_p1))
21379 : {
21380 0 : case UNORDERED_EXPR:
21381 0 : {
21382 0 : tree _q50 = TREE_OPERAND (_p1, 0);
21383 0 : tree _q51 = TREE_OPERAND (_p1, 1);
21384 0 : if ((_q51 == _q50 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q50, 0) && types_match (_q51, _q50)))
21385 : {
21386 0 : {
21387 0 : tree captures[2] ATTRIBUTE_UNUSED = { _q20, _q50 };
21388 0 : if (types_match (captures[0], captures[1])
21389 : )
21390 : {
21391 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1353;
21392 0 : {
21393 0 : tree res_op0;
21394 0 : res_op0 = captures[0];
21395 0 : tree res_op1;
21396 0 : res_op1 = captures[1];
21397 0 : tree _r;
21398 0 : _r = fold_build2_loc (loc, UNORDERED_EXPR, type, res_op0, res_op1);
21399 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 942, __FILE__, __LINE__, true);
21400 0 : return _r;
21401 : }
21402 0 : next_after_fail1353:;
21403 : }
21404 : }
21405 : }
21406 0 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
21407 : {
21408 0 : {
21409 0 : tree captures[3] ATTRIBUTE_UNUSED = { _q20, _p1, _q51 };
21410 0 : tree res = generic_simplify_172 (loc, type, _p0, _p1, captures);
21411 0 : if (res) return res;
21412 : }
21413 : }
21414 0 : if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
21415 : {
21416 0 : {
21417 0 : tree captures[3] ATTRIBUTE_UNUSED = { _q20, _p1, _q50 };
21418 0 : tree res = generic_simplify_172 (loc, type, _p0, _p1, captures);
21419 0 : if (res) return res;
21420 : }
21421 : }
21422 : break;
21423 : }
21424 : default:;
21425 : }
21426 : }
21427 16 : switch (TREE_CODE (_p1))
21428 : {
21429 0 : case UNORDERED_EXPR:
21430 0 : {
21431 0 : tree _q50 = TREE_OPERAND (_p1, 0);
21432 0 : tree _q51 = TREE_OPERAND (_p1, 1);
21433 0 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
21434 : {
21435 0 : if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
21436 : {
21437 0 : {
21438 0 : tree captures[3] ATTRIBUTE_UNUSED = { _q20, _p0, _q21 };
21439 0 : tree res = generic_simplify_173 (loc, type, _p0, _p1, captures);
21440 0 : if (res) return res;
21441 : }
21442 : }
21443 : }
21444 0 : if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
21445 : {
21446 0 : if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
21447 : {
21448 0 : {
21449 0 : tree captures[3] ATTRIBUTE_UNUSED = { _q21, _p0, _q20 };
21450 0 : tree res = generic_simplify_173 (loc, type, _p0, _p1, captures);
21451 0 : if (res) return res;
21452 : }
21453 : }
21454 : }
21455 : break;
21456 : }
21457 : default:;
21458 : }
21459 : break;
21460 : }
21461 114 : case LT_EXPR:
21462 114 : {
21463 114 : tree _q20 = TREE_OPERAND (_p0, 0);
21464 114 : tree _q21 = TREE_OPERAND (_p0, 1);
21465 114 : switch (TREE_CODE (_p1))
21466 : {
21467 27 : case LT_EXPR:
21468 27 : {
21469 27 : tree _q50 = TREE_OPERAND (_p1, 0);
21470 27 : tree _q51 = TREE_OPERAND (_p1, 1);
21471 27 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
21472 : {
21473 0 : {
21474 0 : tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q51 };
21475 0 : tree res = generic_simplify_174 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR, LT_EXPR, MAX_EXPR);
21476 0 : if (res) return res;
21477 : }
21478 : }
21479 27 : if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
21480 : {
21481 0 : {
21482 0 : tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q50 };
21483 0 : tree res = generic_simplify_174 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR, GT_EXPR, MIN_EXPR);
21484 0 : if (res) return res;
21485 : }
21486 : }
21487 : break;
21488 : }
21489 0 : case GT_EXPR:
21490 0 : {
21491 0 : tree _q50 = TREE_OPERAND (_p1, 0);
21492 0 : tree _q51 = TREE_OPERAND (_p1, 1);
21493 0 : if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
21494 : {
21495 0 : {
21496 0 : tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q50 };
21497 0 : tree res = generic_simplify_174 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR, LT_EXPR, MAX_EXPR);
21498 0 : if (res) return res;
21499 : }
21500 : }
21501 0 : if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
21502 : {
21503 0 : {
21504 0 : tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q51 };
21505 0 : tree res = generic_simplify_174 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR, GT_EXPR, MIN_EXPR);
21506 0 : if (res) return res;
21507 : }
21508 : }
21509 : break;
21510 : }
21511 114 : default:;
21512 : }
21513 114 : switch (TREE_CODE (_q20))
21514 : {
21515 2 : case POINTER_PLUS_EXPR:
21516 2 : {
21517 2 : tree _q30 = TREE_OPERAND (_q20, 0);
21518 2 : tree _q31 = TREE_OPERAND (_q20, 1);
21519 2 : switch (TREE_CODE (_q31))
21520 : {
21521 2 : case INTEGER_CST:
21522 2 : {
21523 2 : switch (TREE_CODE (_p1))
21524 : {
21525 2 : case LT_EXPR:
21526 2 : {
21527 2 : tree _q70 = TREE_OPERAND (_p1, 0);
21528 2 : tree _q71 = TREE_OPERAND (_p1, 1);
21529 2 : switch (TREE_CODE (_q70))
21530 : {
21531 2 : case POINTER_PLUS_EXPR:
21532 2 : {
21533 2 : tree _q80 = TREE_OPERAND (_q70, 0);
21534 2 : tree _q81 = TREE_OPERAND (_q70, 1);
21535 2 : if ((_q80 == _q21 && ! TREE_SIDE_EFFECTS (_q80)) || (operand_equal_p (_q80, _q21, 0) && types_match (_q80, _q21)))
21536 : {
21537 2 : if ((_q81 == _q31 && ! TREE_SIDE_EFFECTS (_q81)) || (operand_equal_p (_q81, _q31, 0) && types_match (_q81, _q31)))
21538 : {
21539 2 : if ((_q71 == _q30 && ! TREE_SIDE_EFFECTS (_q71)) || (operand_equal_p (_q71, _q30, 0) && types_match (_q71, _q30)))
21540 : {
21541 2 : {
21542 2 : tree captures[7] ATTRIBUTE_UNUSED = { _p0, _q20, _q30, _q31, _q21, _p1, _q70 };
21543 2 : const enum tree_code cmp = LT_EXPR;
21544 2 : if (TYPE_OVERFLOW_UNDEFINED (TREE_TYPE (captures[2]))
21545 1 : && TYPE_OVERFLOW_WRAPS (sizetype)
21546 3 : && TYPE_PRECISION (TREE_TYPE (captures[2])) == TYPE_PRECISION (sizetype)
21547 : )
21548 : {
21549 1 : {
21550 1 : offset_int off = wi::to_offset (captures[3]) - (cmp == LE_EXPR ? 1 : 0);
21551 1 : offset_int rhs = off * 2;
21552 1 : if (wi::min_precision (rhs, UNSIGNED) <= TYPE_PRECISION (sizetype)
21553 : )
21554 : {
21555 1 : {
21556 1 : bool swap_p = tree_swap_operands_p (captures[2], captures[4]);
21557 1 : tree rhs_tree = wide_int_to_tree (sizetype, rhs);
21558 1 : if (cmp == LT_EXPR
21559 : )
21560 : {
21561 1 : if (TREE_SIDE_EFFECTS (captures[1])) goto next_after_fail1354;
21562 1 : if (TREE_SIDE_EFFECTS (captures[2])) goto next_after_fail1354;
21563 1 : if (TREE_SIDE_EFFECTS (captures[3])) goto next_after_fail1354;
21564 1 : if (TREE_SIDE_EFFECTS (captures[4])) goto next_after_fail1354;
21565 1 : if (TREE_SIDE_EFFECTS (captures[6])) goto next_after_fail1354;
21566 1 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1354;
21567 1 : {
21568 1 : tree res_op0;
21569 1 : {
21570 1 : tree _o1[1], _r1;
21571 1 : {
21572 1 : tree _o2[2], _r2;
21573 1 : _o2[0] = swap_p ? captures[6] : captures[1];
21574 1 : _o2[1] = swap_p ? captures[2] : captures[4];
21575 1 : _r2 = fold_build2_loc (loc, POINTER_DIFF_EXPR, ssizetype, _o2[0], _o2[1]);
21576 1 : _o1[0] = _r2;
21577 : }
21578 1 : if (TREE_TYPE (_o1[0]) != sizetype)
21579 : {
21580 1 : _r1 = fold_build1_loc (loc, NOP_EXPR, sizetype, _o1[0]);
21581 : }
21582 : else
21583 : _r1 = _o1[0];
21584 1 : res_op0 = _r1;
21585 : }
21586 1 : tree res_op1;
21587 1 : res_op1 = rhs_tree;
21588 1 : tree _r;
21589 1 : _r = fold_build2_loc (loc, GT_EXPR, type, res_op0, res_op1);
21590 1 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 943, __FILE__, __LINE__, true);
21591 1 : return _r;
21592 : }
21593 0 : next_after_fail1354:;
21594 : }
21595 : else
21596 : {
21597 : if (TREE_SIDE_EFFECTS (captures[2])) goto next_after_fail1355;
21598 : if (TREE_SIDE_EFFECTS (captures[3])) goto next_after_fail1355;
21599 : if (TREE_SIDE_EFFECTS (captures[4])) goto next_after_fail1355;
21600 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1355;
21601 : {
21602 : tree res_op0;
21603 : {
21604 : tree _o1[1], _r1;
21605 : {
21606 : tree _o2[2], _r2;
21607 : {
21608 : tree _o3[2], _r3;
21609 : _o3[0] = swap_p ? captures[4] : captures[2];
21610 : _o3[1] = wide_int_to_tree (sizetype, off);
21611 : _r3 = fold_build2_loc (loc, POINTER_PLUS_EXPR, TREE_TYPE (_o3[0]), _o3[0], _o3[1]);
21612 : _o2[0] = _r3;
21613 : }
21614 : _o2[1] = swap_p ? captures[2] : captures[4];
21615 : _r2 = fold_build2_loc (loc, POINTER_DIFF_EXPR, ssizetype, _o2[0], _o2[1]);
21616 : _o1[0] = _r2;
21617 : }
21618 : if (TREE_TYPE (_o1[0]) != sizetype)
21619 : {
21620 : _r1 = fold_build1_loc (loc, NOP_EXPR, sizetype, _o1[0]);
21621 : }
21622 : else
21623 : _r1 = _o1[0];
21624 : res_op0 = _r1;
21625 : }
21626 : tree res_op1;
21627 : res_op1 = rhs_tree;
21628 : tree _r;
21629 : _r = fold_build2_loc (loc, GT_EXPR, type, res_op0, res_op1);
21630 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 944, __FILE__, __LINE__, true);
21631 : return _r;
21632 : }
21633 : next_after_fail1355:;
21634 : }
21635 : }
21636 : }
21637 : }
21638 : }
21639 : }
21640 : }
21641 : }
21642 : }
21643 : break;
21644 : }
21645 : default:;
21646 : }
21647 : break;
21648 : }
21649 0 : case GT_EXPR:
21650 0 : {
21651 0 : tree _q70 = TREE_OPERAND (_p1, 0);
21652 0 : tree _q71 = TREE_OPERAND (_p1, 1);
21653 0 : if ((_q70 == _q30 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q30, 0) && types_match (_q70, _q30)))
21654 : {
21655 0 : switch (TREE_CODE (_q71))
21656 : {
21657 0 : case POINTER_PLUS_EXPR:
21658 0 : {
21659 0 : tree _q90 = TREE_OPERAND (_q71, 0);
21660 0 : tree _q91 = TREE_OPERAND (_q71, 1);
21661 0 : if ((_q90 == _q21 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q21, 0) && types_match (_q90, _q21)))
21662 : {
21663 0 : if ((_q91 == _q31 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q31, 0) && types_match (_q91, _q31)))
21664 : {
21665 0 : {
21666 0 : tree captures[7] ATTRIBUTE_UNUSED = { _p0, _q20, _q30, _q31, _q21, _p1, _q71 };
21667 0 : const enum tree_code cmp = LT_EXPR;
21668 0 : if (TYPE_OVERFLOW_UNDEFINED (TREE_TYPE (captures[2]))
21669 0 : && TYPE_OVERFLOW_WRAPS (sizetype)
21670 0 : && TYPE_PRECISION (TREE_TYPE (captures[2])) == TYPE_PRECISION (sizetype)
21671 : )
21672 : {
21673 0 : {
21674 0 : offset_int off = wi::to_offset (captures[3]) - (cmp == LE_EXPR ? 1 : 0);
21675 0 : offset_int rhs = off * 2;
21676 0 : if (wi::min_precision (rhs, UNSIGNED) <= TYPE_PRECISION (sizetype)
21677 : )
21678 : {
21679 0 : {
21680 0 : bool swap_p = tree_swap_operands_p (captures[2], captures[4]);
21681 0 : tree rhs_tree = wide_int_to_tree (sizetype, rhs);
21682 0 : if (cmp == LT_EXPR
21683 : )
21684 : {
21685 0 : if (TREE_SIDE_EFFECTS (captures[1])) goto next_after_fail1356;
21686 0 : if (TREE_SIDE_EFFECTS (captures[2])) goto next_after_fail1356;
21687 0 : if (TREE_SIDE_EFFECTS (captures[3])) goto next_after_fail1356;
21688 0 : if (TREE_SIDE_EFFECTS (captures[4])) goto next_after_fail1356;
21689 0 : if (TREE_SIDE_EFFECTS (captures[6])) goto next_after_fail1356;
21690 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1356;
21691 0 : {
21692 0 : tree res_op0;
21693 0 : {
21694 0 : tree _o1[1], _r1;
21695 0 : {
21696 0 : tree _o2[2], _r2;
21697 0 : _o2[0] = swap_p ? captures[6] : captures[1];
21698 0 : _o2[1] = swap_p ? captures[2] : captures[4];
21699 0 : _r2 = fold_build2_loc (loc, POINTER_DIFF_EXPR, ssizetype, _o2[0], _o2[1]);
21700 0 : _o1[0] = _r2;
21701 : }
21702 0 : if (TREE_TYPE (_o1[0]) != sizetype)
21703 : {
21704 0 : _r1 = fold_build1_loc (loc, NOP_EXPR, sizetype, _o1[0]);
21705 : }
21706 : else
21707 : _r1 = _o1[0];
21708 0 : res_op0 = _r1;
21709 : }
21710 0 : tree res_op1;
21711 0 : res_op1 = rhs_tree;
21712 0 : tree _r;
21713 0 : _r = fold_build2_loc (loc, GT_EXPR, type, res_op0, res_op1);
21714 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 943, __FILE__, __LINE__, true);
21715 0 : return _r;
21716 : }
21717 0 : next_after_fail1356:;
21718 : }
21719 : else
21720 : {
21721 : if (TREE_SIDE_EFFECTS (captures[2])) goto next_after_fail1357;
21722 : if (TREE_SIDE_EFFECTS (captures[3])) goto next_after_fail1357;
21723 : if (TREE_SIDE_EFFECTS (captures[4])) goto next_after_fail1357;
21724 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1357;
21725 : {
21726 : tree res_op0;
21727 : {
21728 : tree _o1[1], _r1;
21729 : {
21730 : tree _o2[2], _r2;
21731 : {
21732 : tree _o3[2], _r3;
21733 : _o3[0] = swap_p ? captures[4] : captures[2];
21734 : _o3[1] = wide_int_to_tree (sizetype, off);
21735 : _r3 = fold_build2_loc (loc, POINTER_PLUS_EXPR, TREE_TYPE (_o3[0]), _o3[0], _o3[1]);
21736 : _o2[0] = _r3;
21737 : }
21738 : _o2[1] = swap_p ? captures[2] : captures[4];
21739 : _r2 = fold_build2_loc (loc, POINTER_DIFF_EXPR, ssizetype, _o2[0], _o2[1]);
21740 : _o1[0] = _r2;
21741 : }
21742 : if (TREE_TYPE (_o1[0]) != sizetype)
21743 : {
21744 : _r1 = fold_build1_loc (loc, NOP_EXPR, sizetype, _o1[0]);
21745 : }
21746 : else
21747 : _r1 = _o1[0];
21748 : res_op0 = _r1;
21749 : }
21750 : tree res_op1;
21751 : res_op1 = rhs_tree;
21752 : tree _r;
21753 : _r = fold_build2_loc (loc, GT_EXPR, type, res_op0, res_op1);
21754 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 944, __FILE__, __LINE__, true);
21755 : return _r;
21756 : }
21757 : next_after_fail1357:;
21758 : }
21759 : }
21760 : }
21761 : }
21762 : }
21763 : }
21764 : }
21765 : }
21766 : break;
21767 : }
21768 : default:;
21769 : }
21770 : }
21771 : break;
21772 : }
21773 : default:;
21774 : }
21775 : break;
21776 : }
21777 : default:;
21778 : }
21779 : break;
21780 : }
21781 : default:;
21782 : }
21783 : break;
21784 : }
21785 135 : case LE_EXPR:
21786 135 : {
21787 135 : tree _q20 = TREE_OPERAND (_p0, 0);
21788 135 : tree _q21 = TREE_OPERAND (_p0, 1);
21789 135 : switch (TREE_CODE (_p1))
21790 : {
21791 2 : case LE_EXPR:
21792 2 : {
21793 2 : tree _q50 = TREE_OPERAND (_p1, 0);
21794 2 : tree _q51 = TREE_OPERAND (_p1, 1);
21795 2 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
21796 : {
21797 0 : {
21798 0 : tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q51 };
21799 0 : tree res = generic_simplify_174 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR, LE_EXPR, MAX_EXPR);
21800 0 : if (res) return res;
21801 : }
21802 : }
21803 2 : if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
21804 : {
21805 0 : {
21806 0 : tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q50 };
21807 0 : tree res = generic_simplify_174 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR, GE_EXPR, MIN_EXPR);
21808 0 : if (res) return res;
21809 : }
21810 : }
21811 : break;
21812 : }
21813 1 : case GE_EXPR:
21814 1 : {
21815 1 : tree _q50 = TREE_OPERAND (_p1, 0);
21816 1 : tree _q51 = TREE_OPERAND (_p1, 1);
21817 1 : if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
21818 : {
21819 0 : {
21820 0 : tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q50 };
21821 0 : tree res = generic_simplify_174 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR, LE_EXPR, MAX_EXPR);
21822 0 : if (res) return res;
21823 : }
21824 : }
21825 1 : if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
21826 : {
21827 0 : {
21828 0 : tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q51 };
21829 0 : tree res = generic_simplify_174 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR, GE_EXPR, MIN_EXPR);
21830 0 : if (res) return res;
21831 : }
21832 : }
21833 : break;
21834 : }
21835 135 : default:;
21836 : }
21837 135 : switch (TREE_CODE (_q20))
21838 : {
21839 2 : case POINTER_PLUS_EXPR:
21840 2 : {
21841 2 : tree _q30 = TREE_OPERAND (_q20, 0);
21842 2 : tree _q31 = TREE_OPERAND (_q20, 1);
21843 2 : switch (TREE_CODE (_q31))
21844 : {
21845 2 : case INTEGER_CST:
21846 2 : {
21847 2 : switch (TREE_CODE (_p1))
21848 : {
21849 2 : case LE_EXPR:
21850 2 : {
21851 2 : tree _q70 = TREE_OPERAND (_p1, 0);
21852 2 : tree _q71 = TREE_OPERAND (_p1, 1);
21853 2 : switch (TREE_CODE (_q70))
21854 : {
21855 2 : case POINTER_PLUS_EXPR:
21856 2 : {
21857 2 : tree _q80 = TREE_OPERAND (_q70, 0);
21858 2 : tree _q81 = TREE_OPERAND (_q70, 1);
21859 2 : if ((_q80 == _q21 && ! TREE_SIDE_EFFECTS (_q80)) || (operand_equal_p (_q80, _q21, 0) && types_match (_q80, _q21)))
21860 : {
21861 2 : if ((_q81 == _q31 && ! TREE_SIDE_EFFECTS (_q81)) || (operand_equal_p (_q81, _q31, 0) && types_match (_q81, _q31)))
21862 : {
21863 2 : if ((_q71 == _q30 && ! TREE_SIDE_EFFECTS (_q71)) || (operand_equal_p (_q71, _q30, 0) && types_match (_q71, _q30)))
21864 : {
21865 2 : {
21866 2 : tree captures[7] ATTRIBUTE_UNUSED = { _p0, _q20, _q30, _q31, _q21, _p1, _q70 };
21867 2 : const enum tree_code cmp = LE_EXPR;
21868 2 : if (TYPE_OVERFLOW_UNDEFINED (TREE_TYPE (captures[2]))
21869 1 : && TYPE_OVERFLOW_WRAPS (sizetype)
21870 3 : && TYPE_PRECISION (TREE_TYPE (captures[2])) == TYPE_PRECISION (sizetype)
21871 : )
21872 : {
21873 1 : {
21874 1 : offset_int off = wi::to_offset (captures[3]) - (cmp == LE_EXPR ? 1 : 0);
21875 1 : offset_int rhs = off * 2;
21876 1 : if (wi::min_precision (rhs, UNSIGNED) <= TYPE_PRECISION (sizetype)
21877 : )
21878 : {
21879 1 : {
21880 1 : bool swap_p = tree_swap_operands_p (captures[2], captures[4]);
21881 1 : tree rhs_tree = wide_int_to_tree (sizetype, rhs);
21882 1 : if (cmp == LT_EXPR
21883 : )
21884 : {
21885 : if (TREE_SIDE_EFFECTS (captures[1])) goto next_after_fail1358;
21886 : if (TREE_SIDE_EFFECTS (captures[2])) goto next_after_fail1358;
21887 : if (TREE_SIDE_EFFECTS (captures[3])) goto next_after_fail1358;
21888 : if (TREE_SIDE_EFFECTS (captures[4])) goto next_after_fail1358;
21889 : if (TREE_SIDE_EFFECTS (captures[6])) goto next_after_fail1358;
21890 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1358;
21891 : {
21892 : tree res_op0;
21893 : {
21894 : tree _o1[1], _r1;
21895 : {
21896 : tree _o2[2], _r2;
21897 : _o2[0] = swap_p ? captures[6] : captures[1];
21898 : _o2[1] = swap_p ? captures[2] : captures[4];
21899 : _r2 = fold_build2_loc (loc, POINTER_DIFF_EXPR, ssizetype, _o2[0], _o2[1]);
21900 : _o1[0] = _r2;
21901 : }
21902 : if (TREE_TYPE (_o1[0]) != sizetype)
21903 : {
21904 : _r1 = fold_build1_loc (loc, NOP_EXPR, sizetype, _o1[0]);
21905 : }
21906 : else
21907 : _r1 = _o1[0];
21908 : res_op0 = _r1;
21909 : }
21910 : tree res_op1;
21911 : res_op1 = rhs_tree;
21912 : tree _r;
21913 : _r = fold_build2_loc (loc, GT_EXPR, type, res_op0, res_op1);
21914 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 943, __FILE__, __LINE__, true);
21915 1 : return _r;
21916 : }
21917 : next_after_fail1358:;
21918 : }
21919 : else
21920 : {
21921 1 : if (TREE_SIDE_EFFECTS (captures[2])) goto next_after_fail1359;
21922 1 : if (TREE_SIDE_EFFECTS (captures[3])) goto next_after_fail1359;
21923 1 : if (TREE_SIDE_EFFECTS (captures[4])) goto next_after_fail1359;
21924 1 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1359;
21925 1 : {
21926 1 : tree res_op0;
21927 1 : {
21928 1 : tree _o1[1], _r1;
21929 1 : {
21930 1 : tree _o2[2], _r2;
21931 1 : {
21932 1 : tree _o3[2], _r3;
21933 1 : _o3[0] = swap_p ? captures[4] : captures[2];
21934 1 : _o3[1] = wide_int_to_tree (sizetype, off);
21935 1 : _r3 = fold_build2_loc (loc, POINTER_PLUS_EXPR, TREE_TYPE (_o3[0]), _o3[0], _o3[1]);
21936 1 : _o2[0] = _r3;
21937 : }
21938 1 : _o2[1] = swap_p ? captures[2] : captures[4];
21939 1 : _r2 = fold_build2_loc (loc, POINTER_DIFF_EXPR, ssizetype, _o2[0], _o2[1]);
21940 1 : _o1[0] = _r2;
21941 : }
21942 1 : if (TREE_TYPE (_o1[0]) != sizetype)
21943 : {
21944 1 : _r1 = fold_build1_loc (loc, NOP_EXPR, sizetype, _o1[0]);
21945 : }
21946 : else
21947 : _r1 = _o1[0];
21948 1 : res_op0 = _r1;
21949 : }
21950 1 : tree res_op1;
21951 1 : res_op1 = rhs_tree;
21952 1 : tree _r;
21953 1 : _r = fold_build2_loc (loc, GT_EXPR, type, res_op0, res_op1);
21954 1 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 944, __FILE__, __LINE__, true);
21955 1 : return _r;
21956 : }
21957 0 : next_after_fail1359:;
21958 : }
21959 : }
21960 : }
21961 : }
21962 : }
21963 : }
21964 : }
21965 : }
21966 : }
21967 : break;
21968 : }
21969 : default:;
21970 : }
21971 : break;
21972 : }
21973 0 : case GE_EXPR:
21974 0 : {
21975 0 : tree _q70 = TREE_OPERAND (_p1, 0);
21976 0 : tree _q71 = TREE_OPERAND (_p1, 1);
21977 0 : if ((_q70 == _q30 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q30, 0) && types_match (_q70, _q30)))
21978 : {
21979 0 : switch (TREE_CODE (_q71))
21980 : {
21981 0 : case POINTER_PLUS_EXPR:
21982 0 : {
21983 0 : tree _q90 = TREE_OPERAND (_q71, 0);
21984 0 : tree _q91 = TREE_OPERAND (_q71, 1);
21985 0 : if ((_q90 == _q21 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q21, 0) && types_match (_q90, _q21)))
21986 : {
21987 0 : if ((_q91 == _q31 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q31, 0) && types_match (_q91, _q31)))
21988 : {
21989 0 : {
21990 0 : tree captures[7] ATTRIBUTE_UNUSED = { _p0, _q20, _q30, _q31, _q21, _p1, _q71 };
21991 0 : const enum tree_code cmp = LE_EXPR;
21992 0 : if (TYPE_OVERFLOW_UNDEFINED (TREE_TYPE (captures[2]))
21993 0 : && TYPE_OVERFLOW_WRAPS (sizetype)
21994 0 : && TYPE_PRECISION (TREE_TYPE (captures[2])) == TYPE_PRECISION (sizetype)
21995 : )
21996 : {
21997 0 : {
21998 0 : offset_int off = wi::to_offset (captures[3]) - (cmp == LE_EXPR ? 1 : 0);
21999 0 : offset_int rhs = off * 2;
22000 0 : if (wi::min_precision (rhs, UNSIGNED) <= TYPE_PRECISION (sizetype)
22001 : )
22002 : {
22003 0 : {
22004 0 : bool swap_p = tree_swap_operands_p (captures[2], captures[4]);
22005 0 : tree rhs_tree = wide_int_to_tree (sizetype, rhs);
22006 0 : if (cmp == LT_EXPR
22007 : )
22008 : {
22009 : if (TREE_SIDE_EFFECTS (captures[1])) goto next_after_fail1360;
22010 : if (TREE_SIDE_EFFECTS (captures[2])) goto next_after_fail1360;
22011 : if (TREE_SIDE_EFFECTS (captures[3])) goto next_after_fail1360;
22012 : if (TREE_SIDE_EFFECTS (captures[4])) goto next_after_fail1360;
22013 : if (TREE_SIDE_EFFECTS (captures[6])) goto next_after_fail1360;
22014 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1360;
22015 : {
22016 : tree res_op0;
22017 : {
22018 : tree _o1[1], _r1;
22019 : {
22020 : tree _o2[2], _r2;
22021 : _o2[0] = swap_p ? captures[6] : captures[1];
22022 : _o2[1] = swap_p ? captures[2] : captures[4];
22023 : _r2 = fold_build2_loc (loc, POINTER_DIFF_EXPR, ssizetype, _o2[0], _o2[1]);
22024 : _o1[0] = _r2;
22025 : }
22026 : if (TREE_TYPE (_o1[0]) != sizetype)
22027 : {
22028 : _r1 = fold_build1_loc (loc, NOP_EXPR, sizetype, _o1[0]);
22029 : }
22030 : else
22031 : _r1 = _o1[0];
22032 : res_op0 = _r1;
22033 : }
22034 : tree res_op1;
22035 : res_op1 = rhs_tree;
22036 : tree _r;
22037 : _r = fold_build2_loc (loc, GT_EXPR, type, res_op0, res_op1);
22038 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 943, __FILE__, __LINE__, true);
22039 0 : return _r;
22040 : }
22041 : next_after_fail1360:;
22042 : }
22043 : else
22044 : {
22045 0 : if (TREE_SIDE_EFFECTS (captures[2])) goto next_after_fail1361;
22046 0 : if (TREE_SIDE_EFFECTS (captures[3])) goto next_after_fail1361;
22047 0 : if (TREE_SIDE_EFFECTS (captures[4])) goto next_after_fail1361;
22048 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1361;
22049 0 : {
22050 0 : tree res_op0;
22051 0 : {
22052 0 : tree _o1[1], _r1;
22053 0 : {
22054 0 : tree _o2[2], _r2;
22055 0 : {
22056 0 : tree _o3[2], _r3;
22057 0 : _o3[0] = swap_p ? captures[4] : captures[2];
22058 0 : _o3[1] = wide_int_to_tree (sizetype, off);
22059 0 : _r3 = fold_build2_loc (loc, POINTER_PLUS_EXPR, TREE_TYPE (_o3[0]), _o3[0], _o3[1]);
22060 0 : _o2[0] = _r3;
22061 : }
22062 0 : _o2[1] = swap_p ? captures[2] : captures[4];
22063 0 : _r2 = fold_build2_loc (loc, POINTER_DIFF_EXPR, ssizetype, _o2[0], _o2[1]);
22064 0 : _o1[0] = _r2;
22065 : }
22066 0 : if (TREE_TYPE (_o1[0]) != sizetype)
22067 : {
22068 0 : _r1 = fold_build1_loc (loc, NOP_EXPR, sizetype, _o1[0]);
22069 : }
22070 : else
22071 : _r1 = _o1[0];
22072 0 : res_op0 = _r1;
22073 : }
22074 0 : tree res_op1;
22075 0 : res_op1 = rhs_tree;
22076 0 : tree _r;
22077 0 : _r = fold_build2_loc (loc, GT_EXPR, type, res_op0, res_op1);
22078 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 944, __FILE__, __LINE__, true);
22079 0 : return _r;
22080 : }
22081 0 : next_after_fail1361:;
22082 : }
22083 : }
22084 : }
22085 : }
22086 : }
22087 : }
22088 : }
22089 : }
22090 : break;
22091 : }
22092 : default:;
22093 : }
22094 : }
22095 : break;
22096 : }
22097 : default:;
22098 : }
22099 : break;
22100 : }
22101 : default:;
22102 : }
22103 : break;
22104 : }
22105 : default:;
22106 : }
22107 : break;
22108 : }
22109 132 : case GT_EXPR:
22110 132 : {
22111 132 : tree _q20 = TREE_OPERAND (_p0, 0);
22112 132 : tree _q21 = TREE_OPERAND (_p0, 1);
22113 132 : switch (TREE_CODE (_p1))
22114 : {
22115 2 : case GT_EXPR:
22116 2 : {
22117 2 : tree _q50 = TREE_OPERAND (_p1, 0);
22118 2 : tree _q51 = TREE_OPERAND (_p1, 1);
22119 2 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
22120 : {
22121 0 : {
22122 0 : tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q51 };
22123 0 : tree res = generic_simplify_174 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR, GT_EXPR, MIN_EXPR);
22124 0 : if (res) return res;
22125 : }
22126 : }
22127 2 : if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
22128 : {
22129 0 : {
22130 0 : tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q50 };
22131 0 : tree res = generic_simplify_174 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR, LT_EXPR, MAX_EXPR);
22132 0 : if (res) return res;
22133 : }
22134 : }
22135 : break;
22136 : }
22137 0 : case LT_EXPR:
22138 0 : {
22139 0 : tree _q50 = TREE_OPERAND (_p1, 0);
22140 0 : tree _q51 = TREE_OPERAND (_p1, 1);
22141 0 : if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
22142 : {
22143 0 : {
22144 0 : tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q50 };
22145 0 : tree res = generic_simplify_174 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR, GT_EXPR, MIN_EXPR);
22146 0 : if (res) return res;
22147 : }
22148 : }
22149 0 : if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
22150 : {
22151 0 : {
22152 0 : tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q51 };
22153 0 : tree res = generic_simplify_174 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR, LT_EXPR, MAX_EXPR);
22154 0 : if (res) return res;
22155 : }
22156 : }
22157 : break;
22158 : }
22159 132 : default:;
22160 : }
22161 132 : switch (TREE_CODE (_q21))
22162 : {
22163 0 : case POINTER_PLUS_EXPR:
22164 0 : {
22165 0 : tree _q40 = TREE_OPERAND (_q21, 0);
22166 0 : tree _q41 = TREE_OPERAND (_q21, 1);
22167 0 : switch (TREE_CODE (_q41))
22168 : {
22169 0 : case INTEGER_CST:
22170 0 : {
22171 0 : switch (TREE_CODE (_p1))
22172 : {
22173 0 : case LT_EXPR:
22174 0 : {
22175 0 : tree _q70 = TREE_OPERAND (_p1, 0);
22176 0 : tree _q71 = TREE_OPERAND (_p1, 1);
22177 0 : switch (TREE_CODE (_q70))
22178 : {
22179 0 : case POINTER_PLUS_EXPR:
22180 0 : {
22181 0 : tree _q80 = TREE_OPERAND (_q70, 0);
22182 0 : tree _q81 = TREE_OPERAND (_q70, 1);
22183 0 : if ((_q80 == _q20 && ! TREE_SIDE_EFFECTS (_q80)) || (operand_equal_p (_q80, _q20, 0) && types_match (_q80, _q20)))
22184 : {
22185 0 : if ((_q81 == _q41 && ! TREE_SIDE_EFFECTS (_q81)) || (operand_equal_p (_q81, _q41, 0) && types_match (_q81, _q41)))
22186 : {
22187 0 : if ((_q71 == _q40 && ! TREE_SIDE_EFFECTS (_q71)) || (operand_equal_p (_q71, _q40, 0) && types_match (_q71, _q40)))
22188 : {
22189 0 : {
22190 0 : tree captures[7] ATTRIBUTE_UNUSED = { _p0, _q21, _q40, _q41, _q20, _p1, _q70 };
22191 0 : const enum tree_code cmp = LT_EXPR;
22192 0 : if (TYPE_OVERFLOW_UNDEFINED (TREE_TYPE (captures[2]))
22193 0 : && TYPE_OVERFLOW_WRAPS (sizetype)
22194 0 : && TYPE_PRECISION (TREE_TYPE (captures[2])) == TYPE_PRECISION (sizetype)
22195 : )
22196 : {
22197 0 : {
22198 0 : offset_int off = wi::to_offset (captures[3]) - (cmp == LE_EXPR ? 1 : 0);
22199 0 : offset_int rhs = off * 2;
22200 0 : if (wi::min_precision (rhs, UNSIGNED) <= TYPE_PRECISION (sizetype)
22201 : )
22202 : {
22203 0 : {
22204 0 : bool swap_p = tree_swap_operands_p (captures[2], captures[4]);
22205 0 : tree rhs_tree = wide_int_to_tree (sizetype, rhs);
22206 0 : if (cmp == LT_EXPR
22207 : )
22208 : {
22209 0 : if (TREE_SIDE_EFFECTS (captures[1])) goto next_after_fail1362;
22210 0 : if (TREE_SIDE_EFFECTS (captures[2])) goto next_after_fail1362;
22211 0 : if (TREE_SIDE_EFFECTS (captures[3])) goto next_after_fail1362;
22212 0 : if (TREE_SIDE_EFFECTS (captures[4])) goto next_after_fail1362;
22213 0 : if (TREE_SIDE_EFFECTS (captures[6])) goto next_after_fail1362;
22214 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1362;
22215 0 : {
22216 0 : tree res_op0;
22217 0 : {
22218 0 : tree _o1[1], _r1;
22219 0 : {
22220 0 : tree _o2[2], _r2;
22221 0 : _o2[0] = swap_p ? captures[6] : captures[1];
22222 0 : _o2[1] = swap_p ? captures[2] : captures[4];
22223 0 : _r2 = fold_build2_loc (loc, POINTER_DIFF_EXPR, ssizetype, _o2[0], _o2[1]);
22224 0 : _o1[0] = _r2;
22225 : }
22226 0 : if (TREE_TYPE (_o1[0]) != sizetype)
22227 : {
22228 0 : _r1 = fold_build1_loc (loc, NOP_EXPR, sizetype, _o1[0]);
22229 : }
22230 : else
22231 : _r1 = _o1[0];
22232 0 : res_op0 = _r1;
22233 : }
22234 0 : tree res_op1;
22235 0 : res_op1 = rhs_tree;
22236 0 : tree _r;
22237 0 : _r = fold_build2_loc (loc, GT_EXPR, type, res_op0, res_op1);
22238 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 943, __FILE__, __LINE__, true);
22239 0 : return _r;
22240 : }
22241 0 : next_after_fail1362:;
22242 : }
22243 : else
22244 : {
22245 : if (TREE_SIDE_EFFECTS (captures[2])) goto next_after_fail1363;
22246 : if (TREE_SIDE_EFFECTS (captures[3])) goto next_after_fail1363;
22247 : if (TREE_SIDE_EFFECTS (captures[4])) goto next_after_fail1363;
22248 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1363;
22249 : {
22250 : tree res_op0;
22251 : {
22252 : tree _o1[1], _r1;
22253 : {
22254 : tree _o2[2], _r2;
22255 : {
22256 : tree _o3[2], _r3;
22257 : _o3[0] = swap_p ? captures[4] : captures[2];
22258 : _o3[1] = wide_int_to_tree (sizetype, off);
22259 : _r3 = fold_build2_loc (loc, POINTER_PLUS_EXPR, TREE_TYPE (_o3[0]), _o3[0], _o3[1]);
22260 : _o2[0] = _r3;
22261 : }
22262 : _o2[1] = swap_p ? captures[2] : captures[4];
22263 : _r2 = fold_build2_loc (loc, POINTER_DIFF_EXPR, ssizetype, _o2[0], _o2[1]);
22264 : _o1[0] = _r2;
22265 : }
22266 : if (TREE_TYPE (_o1[0]) != sizetype)
22267 : {
22268 : _r1 = fold_build1_loc (loc, NOP_EXPR, sizetype, _o1[0]);
22269 : }
22270 : else
22271 : _r1 = _o1[0];
22272 : res_op0 = _r1;
22273 : }
22274 : tree res_op1;
22275 : res_op1 = rhs_tree;
22276 : tree _r;
22277 : _r = fold_build2_loc (loc, GT_EXPR, type, res_op0, res_op1);
22278 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 944, __FILE__, __LINE__, true);
22279 : return _r;
22280 : }
22281 : next_after_fail1363:;
22282 : }
22283 : }
22284 : }
22285 : }
22286 : }
22287 : }
22288 : }
22289 : }
22290 : }
22291 : break;
22292 : }
22293 : default:;
22294 : }
22295 : break;
22296 : }
22297 0 : case GT_EXPR:
22298 0 : {
22299 0 : tree _q70 = TREE_OPERAND (_p1, 0);
22300 0 : tree _q71 = TREE_OPERAND (_p1, 1);
22301 0 : if ((_q70 == _q40 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q40, 0) && types_match (_q70, _q40)))
22302 : {
22303 0 : switch (TREE_CODE (_q71))
22304 : {
22305 0 : case POINTER_PLUS_EXPR:
22306 0 : {
22307 0 : tree _q90 = TREE_OPERAND (_q71, 0);
22308 0 : tree _q91 = TREE_OPERAND (_q71, 1);
22309 0 : if ((_q90 == _q20 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q20, 0) && types_match (_q90, _q20)))
22310 : {
22311 0 : if ((_q91 == _q41 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q41, 0) && types_match (_q91, _q41)))
22312 : {
22313 0 : {
22314 0 : tree captures[7] ATTRIBUTE_UNUSED = { _p0, _q21, _q40, _q41, _q20, _p1, _q71 };
22315 0 : const enum tree_code cmp = LT_EXPR;
22316 0 : if (TYPE_OVERFLOW_UNDEFINED (TREE_TYPE (captures[2]))
22317 0 : && TYPE_OVERFLOW_WRAPS (sizetype)
22318 0 : && TYPE_PRECISION (TREE_TYPE (captures[2])) == TYPE_PRECISION (sizetype)
22319 : )
22320 : {
22321 0 : {
22322 0 : offset_int off = wi::to_offset (captures[3]) - (cmp == LE_EXPR ? 1 : 0);
22323 0 : offset_int rhs = off * 2;
22324 0 : if (wi::min_precision (rhs, UNSIGNED) <= TYPE_PRECISION (sizetype)
22325 : )
22326 : {
22327 0 : {
22328 0 : bool swap_p = tree_swap_operands_p (captures[2], captures[4]);
22329 0 : tree rhs_tree = wide_int_to_tree (sizetype, rhs);
22330 0 : if (cmp == LT_EXPR
22331 : )
22332 : {
22333 0 : if (TREE_SIDE_EFFECTS (captures[1])) goto next_after_fail1364;
22334 0 : if (TREE_SIDE_EFFECTS (captures[2])) goto next_after_fail1364;
22335 0 : if (TREE_SIDE_EFFECTS (captures[3])) goto next_after_fail1364;
22336 0 : if (TREE_SIDE_EFFECTS (captures[4])) goto next_after_fail1364;
22337 0 : if (TREE_SIDE_EFFECTS (captures[6])) goto next_after_fail1364;
22338 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1364;
22339 0 : {
22340 0 : tree res_op0;
22341 0 : {
22342 0 : tree _o1[1], _r1;
22343 0 : {
22344 0 : tree _o2[2], _r2;
22345 0 : _o2[0] = swap_p ? captures[6] : captures[1];
22346 0 : _o2[1] = swap_p ? captures[2] : captures[4];
22347 0 : _r2 = fold_build2_loc (loc, POINTER_DIFF_EXPR, ssizetype, _o2[0], _o2[1]);
22348 0 : _o1[0] = _r2;
22349 : }
22350 0 : if (TREE_TYPE (_o1[0]) != sizetype)
22351 : {
22352 0 : _r1 = fold_build1_loc (loc, NOP_EXPR, sizetype, _o1[0]);
22353 : }
22354 : else
22355 : _r1 = _o1[0];
22356 0 : res_op0 = _r1;
22357 : }
22358 0 : tree res_op1;
22359 0 : res_op1 = rhs_tree;
22360 0 : tree _r;
22361 0 : _r = fold_build2_loc (loc, GT_EXPR, type, res_op0, res_op1);
22362 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 943, __FILE__, __LINE__, true);
22363 0 : return _r;
22364 : }
22365 0 : next_after_fail1364:;
22366 : }
22367 : else
22368 : {
22369 : if (TREE_SIDE_EFFECTS (captures[2])) goto next_after_fail1365;
22370 : if (TREE_SIDE_EFFECTS (captures[3])) goto next_after_fail1365;
22371 : if (TREE_SIDE_EFFECTS (captures[4])) goto next_after_fail1365;
22372 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1365;
22373 : {
22374 : tree res_op0;
22375 : {
22376 : tree _o1[1], _r1;
22377 : {
22378 : tree _o2[2], _r2;
22379 : {
22380 : tree _o3[2], _r3;
22381 : _o3[0] = swap_p ? captures[4] : captures[2];
22382 : _o3[1] = wide_int_to_tree (sizetype, off);
22383 : _r3 = fold_build2_loc (loc, POINTER_PLUS_EXPR, TREE_TYPE (_o3[0]), _o3[0], _o3[1]);
22384 : _o2[0] = _r3;
22385 : }
22386 : _o2[1] = swap_p ? captures[2] : captures[4];
22387 : _r2 = fold_build2_loc (loc, POINTER_DIFF_EXPR, ssizetype, _o2[0], _o2[1]);
22388 : _o1[0] = _r2;
22389 : }
22390 : if (TREE_TYPE (_o1[0]) != sizetype)
22391 : {
22392 : _r1 = fold_build1_loc (loc, NOP_EXPR, sizetype, _o1[0]);
22393 : }
22394 : else
22395 : _r1 = _o1[0];
22396 : res_op0 = _r1;
22397 : }
22398 : tree res_op1;
22399 : res_op1 = rhs_tree;
22400 : tree _r;
22401 : _r = fold_build2_loc (loc, GT_EXPR, type, res_op0, res_op1);
22402 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 944, __FILE__, __LINE__, true);
22403 : return _r;
22404 : }
22405 : next_after_fail1365:;
22406 : }
22407 : }
22408 : }
22409 : }
22410 : }
22411 : }
22412 : }
22413 : }
22414 : break;
22415 : }
22416 : default:;
22417 : }
22418 : }
22419 : break;
22420 : }
22421 : default:;
22422 : }
22423 : break;
22424 : }
22425 : default:;
22426 : }
22427 : break;
22428 : }
22429 : default:;
22430 : }
22431 : break;
22432 : }
22433 38 : case GE_EXPR:
22434 38 : {
22435 38 : tree _q20 = TREE_OPERAND (_p0, 0);
22436 38 : tree _q21 = TREE_OPERAND (_p0, 1);
22437 38 : switch (TREE_CODE (_p1))
22438 : {
22439 0 : case GE_EXPR:
22440 0 : {
22441 0 : tree _q50 = TREE_OPERAND (_p1, 0);
22442 0 : tree _q51 = TREE_OPERAND (_p1, 1);
22443 0 : if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
22444 : {
22445 0 : {
22446 0 : tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q51 };
22447 0 : tree res = generic_simplify_174 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR, GE_EXPR, MIN_EXPR);
22448 0 : if (res) return res;
22449 : }
22450 : }
22451 0 : if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
22452 : {
22453 0 : {
22454 0 : tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q50 };
22455 0 : tree res = generic_simplify_174 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR, LE_EXPR, MAX_EXPR);
22456 0 : if (res) return res;
22457 : }
22458 : }
22459 : break;
22460 : }
22461 0 : case LE_EXPR:
22462 0 : {
22463 0 : tree _q50 = TREE_OPERAND (_p1, 0);
22464 0 : tree _q51 = TREE_OPERAND (_p1, 1);
22465 0 : if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
22466 : {
22467 0 : {
22468 0 : tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q50 };
22469 0 : tree res = generic_simplify_174 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR, GE_EXPR, MIN_EXPR);
22470 0 : if (res) return res;
22471 : }
22472 : }
22473 0 : if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
22474 : {
22475 0 : {
22476 0 : tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q51 };
22477 0 : tree res = generic_simplify_174 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR, LE_EXPR, MAX_EXPR);
22478 0 : if (res) return res;
22479 : }
22480 : }
22481 : break;
22482 : }
22483 38 : default:;
22484 : }
22485 38 : switch (TREE_CODE (_q21))
22486 : {
22487 0 : case POINTER_PLUS_EXPR:
22488 0 : {
22489 0 : tree _q40 = TREE_OPERAND (_q21, 0);
22490 0 : tree _q41 = TREE_OPERAND (_q21, 1);
22491 0 : switch (TREE_CODE (_q41))
22492 : {
22493 0 : case INTEGER_CST:
22494 0 : {
22495 0 : switch (TREE_CODE (_p1))
22496 : {
22497 0 : case LE_EXPR:
22498 0 : {
22499 0 : tree _q70 = TREE_OPERAND (_p1, 0);
22500 0 : tree _q71 = TREE_OPERAND (_p1, 1);
22501 0 : switch (TREE_CODE (_q70))
22502 : {
22503 0 : case POINTER_PLUS_EXPR:
22504 0 : {
22505 0 : tree _q80 = TREE_OPERAND (_q70, 0);
22506 0 : tree _q81 = TREE_OPERAND (_q70, 1);
22507 0 : if ((_q80 == _q20 && ! TREE_SIDE_EFFECTS (_q80)) || (operand_equal_p (_q80, _q20, 0) && types_match (_q80, _q20)))
22508 : {
22509 0 : if ((_q81 == _q41 && ! TREE_SIDE_EFFECTS (_q81)) || (operand_equal_p (_q81, _q41, 0) && types_match (_q81, _q41)))
22510 : {
22511 0 : if ((_q71 == _q40 && ! TREE_SIDE_EFFECTS (_q71)) || (operand_equal_p (_q71, _q40, 0) && types_match (_q71, _q40)))
22512 : {
22513 0 : {
22514 0 : tree captures[7] ATTRIBUTE_UNUSED = { _p0, _q21, _q40, _q41, _q20, _p1, _q70 };
22515 0 : const enum tree_code cmp = LE_EXPR;
22516 0 : if (TYPE_OVERFLOW_UNDEFINED (TREE_TYPE (captures[2]))
22517 0 : && TYPE_OVERFLOW_WRAPS (sizetype)
22518 0 : && TYPE_PRECISION (TREE_TYPE (captures[2])) == TYPE_PRECISION (sizetype)
22519 : )
22520 : {
22521 0 : {
22522 0 : offset_int off = wi::to_offset (captures[3]) - (cmp == LE_EXPR ? 1 : 0);
22523 0 : offset_int rhs = off * 2;
22524 0 : if (wi::min_precision (rhs, UNSIGNED) <= TYPE_PRECISION (sizetype)
22525 : )
22526 : {
22527 0 : {
22528 0 : bool swap_p = tree_swap_operands_p (captures[2], captures[4]);
22529 0 : tree rhs_tree = wide_int_to_tree (sizetype, rhs);
22530 0 : if (cmp == LT_EXPR
22531 : )
22532 : {
22533 : if (TREE_SIDE_EFFECTS (captures[1])) goto next_after_fail1366;
22534 : if (TREE_SIDE_EFFECTS (captures[2])) goto next_after_fail1366;
22535 : if (TREE_SIDE_EFFECTS (captures[3])) goto next_after_fail1366;
22536 : if (TREE_SIDE_EFFECTS (captures[4])) goto next_after_fail1366;
22537 : if (TREE_SIDE_EFFECTS (captures[6])) goto next_after_fail1366;
22538 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1366;
22539 : {
22540 : tree res_op0;
22541 : {
22542 : tree _o1[1], _r1;
22543 : {
22544 : tree _o2[2], _r2;
22545 : _o2[0] = swap_p ? captures[6] : captures[1];
22546 : _o2[1] = swap_p ? captures[2] : captures[4];
22547 : _r2 = fold_build2_loc (loc, POINTER_DIFF_EXPR, ssizetype, _o2[0], _o2[1]);
22548 : _o1[0] = _r2;
22549 : }
22550 : if (TREE_TYPE (_o1[0]) != sizetype)
22551 : {
22552 : _r1 = fold_build1_loc (loc, NOP_EXPR, sizetype, _o1[0]);
22553 : }
22554 : else
22555 : _r1 = _o1[0];
22556 : res_op0 = _r1;
22557 : }
22558 : tree res_op1;
22559 : res_op1 = rhs_tree;
22560 : tree _r;
22561 : _r = fold_build2_loc (loc, GT_EXPR, type, res_op0, res_op1);
22562 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 943, __FILE__, __LINE__, true);
22563 0 : return _r;
22564 : }
22565 : next_after_fail1366:;
22566 : }
22567 : else
22568 : {
22569 0 : if (TREE_SIDE_EFFECTS (captures[2])) goto next_after_fail1367;
22570 0 : if (TREE_SIDE_EFFECTS (captures[3])) goto next_after_fail1367;
22571 0 : if (TREE_SIDE_EFFECTS (captures[4])) goto next_after_fail1367;
22572 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1367;
22573 0 : {
22574 0 : tree res_op0;
22575 0 : {
22576 0 : tree _o1[1], _r1;
22577 0 : {
22578 0 : tree _o2[2], _r2;
22579 0 : {
22580 0 : tree _o3[2], _r3;
22581 0 : _o3[0] = swap_p ? captures[4] : captures[2];
22582 0 : _o3[1] = wide_int_to_tree (sizetype, off);
22583 0 : _r3 = fold_build2_loc (loc, POINTER_PLUS_EXPR, TREE_TYPE (_o3[0]), _o3[0], _o3[1]);
22584 0 : _o2[0] = _r3;
22585 : }
22586 0 : _o2[1] = swap_p ? captures[2] : captures[4];
22587 0 : _r2 = fold_build2_loc (loc, POINTER_DIFF_EXPR, ssizetype, _o2[0], _o2[1]);
22588 0 : _o1[0] = _r2;
22589 : }
22590 0 : if (TREE_TYPE (_o1[0]) != sizetype)
22591 : {
22592 0 : _r1 = fold_build1_loc (loc, NOP_EXPR, sizetype, _o1[0]);
22593 : }
22594 : else
22595 : _r1 = _o1[0];
22596 0 : res_op0 = _r1;
22597 : }
22598 0 : tree res_op1;
22599 0 : res_op1 = rhs_tree;
22600 0 : tree _r;
22601 0 : _r = fold_build2_loc (loc, GT_EXPR, type, res_op0, res_op1);
22602 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 944, __FILE__, __LINE__, true);
22603 0 : return _r;
22604 : }
22605 0 : next_after_fail1367:;
22606 : }
22607 : }
22608 : }
22609 : }
22610 : }
22611 : }
22612 : }
22613 : }
22614 : }
22615 : break;
22616 : }
22617 : default:;
22618 : }
22619 : break;
22620 : }
22621 0 : case GE_EXPR:
22622 0 : {
22623 0 : tree _q70 = TREE_OPERAND (_p1, 0);
22624 0 : tree _q71 = TREE_OPERAND (_p1, 1);
22625 0 : if ((_q70 == _q40 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q40, 0) && types_match (_q70, _q40)))
22626 : {
22627 0 : switch (TREE_CODE (_q71))
22628 : {
22629 0 : case POINTER_PLUS_EXPR:
22630 0 : {
22631 0 : tree _q90 = TREE_OPERAND (_q71, 0);
22632 0 : tree _q91 = TREE_OPERAND (_q71, 1);
22633 0 : if ((_q90 == _q20 && ! TREE_SIDE_EFFECTS (_q90)) || (operand_equal_p (_q90, _q20, 0) && types_match (_q90, _q20)))
22634 : {
22635 0 : if ((_q91 == _q41 && ! TREE_SIDE_EFFECTS (_q91)) || (operand_equal_p (_q91, _q41, 0) && types_match (_q91, _q41)))
22636 : {
22637 0 : {
22638 0 : tree captures[7] ATTRIBUTE_UNUSED = { _p0, _q21, _q40, _q41, _q20, _p1, _q71 };
22639 0 : const enum tree_code cmp = LE_EXPR;
22640 0 : if (TYPE_OVERFLOW_UNDEFINED (TREE_TYPE (captures[2]))
22641 0 : && TYPE_OVERFLOW_WRAPS (sizetype)
22642 0 : && TYPE_PRECISION (TREE_TYPE (captures[2])) == TYPE_PRECISION (sizetype)
22643 : )
22644 : {
22645 0 : {
22646 0 : offset_int off = wi::to_offset (captures[3]) - (cmp == LE_EXPR ? 1 : 0);
22647 0 : offset_int rhs = off * 2;
22648 0 : if (wi::min_precision (rhs, UNSIGNED) <= TYPE_PRECISION (sizetype)
22649 : )
22650 : {
22651 0 : {
22652 0 : bool swap_p = tree_swap_operands_p (captures[2], captures[4]);
22653 0 : tree rhs_tree = wide_int_to_tree (sizetype, rhs);
22654 0 : if (cmp == LT_EXPR
22655 : )
22656 : {
22657 : if (TREE_SIDE_EFFECTS (captures[1])) goto next_after_fail1368;
22658 : if (TREE_SIDE_EFFECTS (captures[2])) goto next_after_fail1368;
22659 : if (TREE_SIDE_EFFECTS (captures[3])) goto next_after_fail1368;
22660 : if (TREE_SIDE_EFFECTS (captures[4])) goto next_after_fail1368;
22661 : if (TREE_SIDE_EFFECTS (captures[6])) goto next_after_fail1368;
22662 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1368;
22663 : {
22664 : tree res_op0;
22665 : {
22666 : tree _o1[1], _r1;
22667 : {
22668 : tree _o2[2], _r2;
22669 : _o2[0] = swap_p ? captures[6] : captures[1];
22670 : _o2[1] = swap_p ? captures[2] : captures[4];
22671 : _r2 = fold_build2_loc (loc, POINTER_DIFF_EXPR, ssizetype, _o2[0], _o2[1]);
22672 : _o1[0] = _r2;
22673 : }
22674 : if (TREE_TYPE (_o1[0]) != sizetype)
22675 : {
22676 : _r1 = fold_build1_loc (loc, NOP_EXPR, sizetype, _o1[0]);
22677 : }
22678 : else
22679 : _r1 = _o1[0];
22680 : res_op0 = _r1;
22681 : }
22682 : tree res_op1;
22683 : res_op1 = rhs_tree;
22684 : tree _r;
22685 : _r = fold_build2_loc (loc, GT_EXPR, type, res_op0, res_op1);
22686 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 943, __FILE__, __LINE__, true);
22687 0 : return _r;
22688 : }
22689 : next_after_fail1368:;
22690 : }
22691 : else
22692 : {
22693 0 : if (TREE_SIDE_EFFECTS (captures[2])) goto next_after_fail1369;
22694 0 : if (TREE_SIDE_EFFECTS (captures[3])) goto next_after_fail1369;
22695 0 : if (TREE_SIDE_EFFECTS (captures[4])) goto next_after_fail1369;
22696 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1369;
22697 0 : {
22698 0 : tree res_op0;
22699 0 : {
22700 0 : tree _o1[1], _r1;
22701 0 : {
22702 0 : tree _o2[2], _r2;
22703 0 : {
22704 0 : tree _o3[2], _r3;
22705 0 : _o3[0] = swap_p ? captures[4] : captures[2];
22706 0 : _o3[1] = wide_int_to_tree (sizetype, off);
22707 0 : _r3 = fold_build2_loc (loc, POINTER_PLUS_EXPR, TREE_TYPE (_o3[0]), _o3[0], _o3[1]);
22708 0 : _o2[0] = _r3;
22709 : }
22710 0 : _o2[1] = swap_p ? captures[2] : captures[4];
22711 0 : _r2 = fold_build2_loc (loc, POINTER_DIFF_EXPR, ssizetype, _o2[0], _o2[1]);
22712 0 : _o1[0] = _r2;
22713 : }
22714 0 : if (TREE_TYPE (_o1[0]) != sizetype)
22715 : {
22716 0 : _r1 = fold_build1_loc (loc, NOP_EXPR, sizetype, _o1[0]);
22717 : }
22718 : else
22719 : _r1 = _o1[0];
22720 0 : res_op0 = _r1;
22721 : }
22722 0 : tree res_op1;
22723 0 : res_op1 = rhs_tree;
22724 0 : tree _r;
22725 0 : _r = fold_build2_loc (loc, GT_EXPR, type, res_op0, res_op1);
22726 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 944, __FILE__, __LINE__, true);
22727 0 : return _r;
22728 : }
22729 0 : next_after_fail1369:;
22730 : }
22731 : }
22732 : }
22733 : }
22734 : }
22735 : }
22736 : }
22737 : }
22738 : break;
22739 : }
22740 : default:;
22741 : }
22742 : }
22743 : break;
22744 : }
22745 : default:;
22746 : }
22747 : break;
22748 : }
22749 : default:;
22750 : }
22751 : break;
22752 : }
22753 : default:;
22754 : }
22755 : break;
22756 : }
22757 0 : case VEC_PERM_EXPR:
22758 0 : {
22759 0 : tree _q20 = TREE_OPERAND (_p0, 0);
22760 0 : tree _q21 = TREE_OPERAND (_p0, 1);
22761 0 : tree _q22 = TREE_OPERAND (_p0, 2);
22762 0 : if ((_q21 == _q20 && ! TREE_SIDE_EFFECTS (_q21)) || (operand_equal_p (_q21, _q20, 0) && types_match (_q21, _q20)))
22763 : {
22764 0 : switch (TREE_CODE (_p1))
22765 : {
22766 0 : case VEC_PERM_EXPR:
22767 0 : {
22768 0 : tree _q60 = TREE_OPERAND (_p1, 0);
22769 0 : tree _q61 = TREE_OPERAND (_p1, 1);
22770 0 : tree _q62 = TREE_OPERAND (_p1, 2);
22771 0 : if ((_q61 == _q60 && ! TREE_SIDE_EFFECTS (_q61)) || (operand_equal_p (_q61, _q60, 0) && types_match (_q61, _q60)))
22772 : {
22773 0 : if ((_q62 == _q22 && ! TREE_SIDE_EFFECTS (_q62)) || (operand_equal_p (_q62, _q22, 0) && types_match (_q62, _q22)))
22774 : {
22775 0 : {
22776 0 : tree captures[4] ATTRIBUTE_UNUSED = { _q20, _q22, _q60 };
22777 0 : if (VECTOR_INTEGER_TYPE_P (type)
22778 : )
22779 : {
22780 0 : if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1370;
22781 0 : {
22782 0 : tree res_op0;
22783 0 : {
22784 0 : tree _o1[2], _r1;
22785 0 : _o1[0] = captures[0];
22786 0 : _o1[1] = captures[2];
22787 0 : _r1 = fold_build2_loc (loc, BIT_IOR_EXPR, TREE_TYPE (_o1[0]), _o1[0], _o1[1]);
22788 0 : captures[3] = _r1;
22789 : }
22790 0 : res_op0 = unshare_expr (captures[3]);
22791 0 : tree res_op1;
22792 0 : res_op1 = captures[3];
22793 0 : tree res_op2;
22794 0 : res_op2 = captures[1];
22795 0 : tree _r;
22796 0 : _r = fold_build3_loc (loc, VEC_PERM_EXPR, type, res_op0, res_op1, res_op2);
22797 0 : if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 897, __FILE__, __LINE__, true);
22798 0 : return _r;
22799 : }
22800 0 : next_after_fail1370:;
22801 : }
22802 : }
22803 : }
22804 : }
22805 : break;
22806 : }
22807 : default:;
22808 : }
22809 : }
22810 : break;
22811 : }
22812 381974 : case LSHIFT_EXPR:
22813 381974 : {
22814 381974 : tree _q20 = TREE_OPERAND (_p0, 0);
22815 381974 : tree _q21 = TREE_OPERAND (_p0, 1);
22816 381974 : switch (TREE_CODE (_q21))
22817 : {
22818 367245 : case INTEGER_CST:
22819 367245 : {
22820 367245 : switch (TREE_CODE (_p1))
22821 : {
22822 2 : case BIT_XOR_EXPR:
22823 2 : {
22824 2 : tree _q50 = TREE_OPERAND (_p1, 0);
22825 2 : tree _q51 = TREE_OPERAND (_p1, 1);
22826 2 : switch (TREE_CODE (_q50))
22827 : {
22828 0 : case RSHIFT_EXPR:
22829 0 : {
22830 0 : tree _q60 = TREE_OPERAND (_q50, 0);
22831 0 : tree _q61 = TREE_OPERAND (_q50, 1);
22832 0 : switch (TREE_CODE (_q61))
22833 : {
22834 0 : case INTEGER_CST:
22835 0 : {
22836 0 : switch (TREE_CODE (_q51))
22837 : {
22838 0 : case INTEGER_CST:
22839 0 : {
22840 0 : {
22841 0 : tree captures[5] ATTRIBUTE_UNUSED = { _q20, _q21, _q60, _q61, _q51 };
22842 0 : tree res = generic_simplify_175 (loc, type, _p0, _p1, captures);
22843 0 : if (res) return res;
22844 : }
22845 0 : break;
22846 : }
22847 : default:;
22848 : }
22849 : break;
22850 : }
22851 : default:;
22852 : }
22853 : break;
22854 : }
22855 : default:;
22856 : }
22857 : break;
22858 : }
22859 : default:;
22860 : }
22861 : break;
22862 : }
22863 : default:;
22864 : }
22865 : break;
22866 : }
22867 9693 : case BIT_XOR_EXPR:
22868 9693 : {
22869 9693 : tree _q20 = TREE_OPERAND (_p0, 0);
22870 9693 : tree _q21 = TREE_OPERAND (_p0, 1);
22871 9693 : switch (TREE_CODE (_q20))
22872 : {
22873 9070 : case RSHIFT_EXPR:
22874 9070 : {
22875 9070 : tree _q30 = TREE_OPERAND (_q20, 0);
22876 9070 : tree _q31 = TREE_OPERAND (_q20, 1);
22877 9070 : switch (TREE_CODE (_q31))
22878 : {
22879 9070 : case INTEGER_CST:
22880 9070 : {
22881 9070 : switch (TREE_CODE (_q21))
22882 : {
22883 0 : case INTEGER_CST:
22884 0 : {
22885 0 : switch (TREE_CODE (_p1))
22886 : {
22887 0 : case LSHIFT_EXPR:
22888 0 : {
22889 0 : tree _q70 = TREE_OPERAND (_p1, 0);
22890 0 : tree _q71 = TREE_OPERAND (_p1, 1);
22891 0 : switch (TREE_CODE (_q71))
22892 : {
22893 0 : case INTEGER_CST:
22894 0 : {
22895 0 : {
22896 0 : tree captures[5] ATTRIBUTE_UNUSED = { _q70, _q71, _q30, _q31, _q21 };
22897 0 : tree res = generic_simplify_175 (loc, type, _p0, _p1, captures);
22898 0 : if (res) return res;
22899 : }
22900 0 : break;
22901 : }
22902 : default:;
22903 : }
22904 : break;
22905 : }
22906 : default:;
22907 : }
22908 : break;
22909 : }
22910 : default:;
22911 : }
22912 : break;
22913 : }
22914 : default:;
22915 : }
22916 : break;
22917 : }
22918 15 : case LSHIFT_EXPR:
22919 15 : {
22920 15 : tree _q30 = TREE_OPERAND (_q20, 0);
22921 15 : tree _q31 = TREE_OPERAND (_q20, 1);
22922 15 : switch (TREE_CODE (_q31))
22923 : {
22924 7 : case INTEGER_CST:
22925 7 : {
22926 7 : switch (TREE_CODE (_q21))
22927 : {
22928 7 : case INTEGER_CST:
22929 7 : {
22930 7 : switch (TREE_CODE (_p1))
22931 : {
22932 7 : case RSHIFT_EXPR:
22933 7 : {
22934 7 : tree _q70 = TREE_OPERAND (_p1, 0);
22935 7 : tree _q71 = TREE_OPERAND (_p1, 1);
22936 7 : switch (TREE_CODE (_q71))
22937 : {
22938 7 : case INTEGER_CST:
22939 7 : {
22940 7 : {
22941 7 : tree captures[5] ATTRIBUTE_UNUSED = { _q30, _q31, _q21, _q70, _q71 };
22942 7 : tree res = generic_simplify_176 (loc, type, _p0, _p1, captures);
22943 7 : if (res) return res;
22944 : }
22945 7 : break;
22946 : }
22947 : default:;
22948 : }
22949 : break;
22950 : }
22951 : default:;
22952 : }
22953 : break;
22954 : }
22955 : default:;
22956 : }
22957 : break;
22958 : }
22959 : default:;
22960 : }
22961 : break;
22962 : }
22963 : default:;
22964 : }
22965 : break;
22966 : }
22967 19088 : case RSHIFT_EXPR:
22968 19088 : {
22969 19088 : tree _q20 = TREE_OPERAND (_p0, 0);
22970 19088 : tree _q21 = TREE_OPERAND (_p0, 1);
22971 19088 : switch (TREE_CODE (_q21))
22972 : {
22973 5982 : case INTEGER_CST:
22974 5982 : {
22975 5982 : switch (TREE_CODE (_p1))
22976 : {
22977 0 : case BIT_XOR_EXPR:
22978 0 : {
22979 0 : tree _q50 = TREE_OPERAND (_p1, 0);
22980 0 : tree _q51 = TREE_OPERAND (_p1, 1);
22981 0 : switch (TREE_CODE (_q50))
22982 : {
22983 0 : case LSHIFT_EXPR:
22984 0 : {
22985 0 : tree _q60 = TREE_OPERAND (_q50, 0);
22986 0 : tree _q61 = TREE_OPERAND (_q50, 1);
22987 0 : switch (TREE_CODE (_q61))
22988 : {
22989 0 : case INTEGER_CST:
22990 0 : {
22991 0 : switch (TREE_CODE (_q51))
22992 : {
22993 0 : case INTEGER_CST:
22994 0 : {
22995 0 : {
22996 0 : tree captures[5] ATTRIBUTE_UNUSED = { _q60, _q61, _q51, _q20, _q21 };
22997 0 : tree res = generic_simplify_176 (loc, type, _p0, _p1, captures);
22998 0 : if (res) return res;
22999 : }
23000 0 : break;
23001 : }
23002 : default:;
23003 : }
23004 : break;
23005 : }
23006 : default:;
23007 : }
23008 : break;
23009 : }
23010 : default:;
23011 : }
23012 : break;
23013 : }
23014 : default:;
23015 : }
23016 : break;
23017 : }
23018 : default:;
23019 : }
23020 : break;
23021 : }
23022 : default:;
23023 : }
23024 : return NULL_TREE;
23025 : }
23026 : #pragma GCC diagnostic pop
|