LCOV - code coverage report
Current view: top level - /mnt/build/buildbot/bld/build-lcov/gcc - generic-match-8.cc (source / functions) Coverage Total Hit
Test: gcc.info Lines: 48.0 % 11717 5619
Test Date: 2026-05-11 19:44:49 Functions: 57.6 % 66 38
Legend: Lines:     hit not hit

            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    106074802 : tree_bit_xor_cst (tree t, tree *res_ops)
      11              : {
      12    106074802 :   const tree type = TREE_TYPE (t);
      13    106074802 :   const bool debug_dump = dump_file && (dump_flags & TDF_FOLDING);
      14    106074802 :   if (TREE_SIDE_EFFECTS (t)) return false;
      15    106074802 :   switch (TREE_CODE (t))
      16              :     {
      17        91998 :     case BIT_XOR_EXPR:
      18        91998 :       {
      19        91998 :         tree _p0 = TREE_OPERAND (t, 0);
      20        91998 :         tree _p1 = TREE_OPERAND (t, 1);
      21        91998 :         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     76033101 : tree_with_possible_nonzero_bits_1 (tree t)
      42              : {
      43     76033101 :   const tree type = TREE_TYPE (t);
      44     76033101 :   const bool debug_dump = dump_file && (dump_flags & TDF_FOLDING);
      45     76033101 :   if (TREE_SIDE_EFFECTS (t)) return false;
      46     76033101 :   switch (TREE_CODE (t))
      47              :     {
      48     16587307 :     case INTEGER_CST:
      49     16587307 :       {
      50     16587307 :         {
      51     16587307 :           tree captures[1] ATTRIBUTE_UNUSED = { t };
      52     16587307 :           {
      53     16587307 :             if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 32, __FILE__, __LINE__, false);
      54     16587307 :             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     26271989 :         break;
      69              :       }
      70     26271989 :     case SSA_NAME:
      71     26271989 :       {
      72     26271989 :         {
      73     26271989 :           tree captures[1] ATTRIBUTE_UNUSED = { t };
      74     26271989 :           if (INTEGRAL_TYPE_P (TREE_TYPE (captures[0])) || POINTER_TYPE_P (TREE_TYPE (captures[0]))
      75              : )
      76              :             {
      77     25757379 :               {
      78     25757379 :                 if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 34, __FILE__, __LINE__, false);
      79     25757379 :                 return true;
      80              :               }
      81              :             }
      82              :         }
      83              :         break;
      84              :       }
      85              :     default:;
      86              :     }
      87              :   return false;
      88              : }
      89              : 
      90              : bool
      91         2379 : tree_max_value (tree t)
      92              : {
      93         2379 :   const tree type = TREE_TYPE (t);
      94         2379 :   const bool debug_dump = dump_file && (dump_flags & TDF_FOLDING);
      95         2379 :   if (TREE_SIDE_EFFECTS (t)) return false;
      96         2371 :   if (uniform_integer_cst_p (t))
      97              :     {
      98         2106 :       {
      99         2106 :         {
     100         2106 :  tree int_cst = uniform_integer_cst_p (t);
     101         2106 :  tree itype = TREE_TYPE (int_cst);
     102         4212 :             if ((INTEGRAL_TYPE_P (itype)
     103           17 :  || POINTER_TYPE_P (itype))
     104         4229 :  && 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        72196 : 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        72196 :   const bool debug_dump = dump_file && (dump_flags & TDF_FOLDING);
     124        72196 :   {
     125        72196 :  bool wascmp0, wascmp1;
     126        72196 :       if (bitwise_inverted_equal_p (captures[1], captures[3], wascmp0)
     127         1190 :  && bitwise_inverted_equal_p (captures[0], captures[2], wascmp1)
     128        72200 :  && ((!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        72192 :   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 res_op1;
     163            1 :     res_op1 = captures[1];
     164            1 :     tree _r;
     165            1 :     _r = fold_build2_loc (loc, BIT_XOR_EXPR, type, res_op0, res_op1);
     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            0 : 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              :  const enum tree_code ARG_UNUSED (op))
     177              : {
     178            0 :   const bool debug_dump = dump_file && (dump_flags & TDF_FOLDING);
     179            0 :   if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail97;
     180            0 :   {
     181            0 :     tree res_op0;
     182            0 :     res_op0 = captures[0];
     183            0 :     tree res_op1;
     184            0 :     res_op1 = captures[1];
     185            0 :     tree _r;
     186            0 :     _r = fold_build2_loc (loc, BIT_IOR_EXPR, type, res_op0, res_op1);
     187            0 :     if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 70, __FILE__, __LINE__, true);
     188              :     return _r;
     189              :   }
     190            0 : next_after_fail97:;
     191            0 :   return NULL_TREE;
     192              : }
     193              : 
     194              : tree
     195          390 : generic_simplify_29 (location_t ARG_UNUSED (loc), const tree ARG_UNUSED (type),
     196              :  tree ARG_UNUSED (_p0), tree ARG_UNUSED (_p1), tree *ARG_UNUSED (captures),
     197              :  const enum tree_code ARG_UNUSED (op),
     198              :  const enum tree_code ARG_UNUSED (rop))
     199              : {
     200          390 :   const bool debug_dump = dump_file && (dump_flags & TDF_FOLDING);
     201          390 :   if (tree_nop_conversion_p (type, TREE_TYPE (captures[1]))
     202          390 :  && tree_nop_conversion_p (type, TREE_TYPE (captures[2]))
     203              : )
     204              :     {
     205          390 :       if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail104;
     206          390 :       {
     207          390 :         tree res_op0;
     208          390 :         {
     209          390 :           tree _o1[1], _r1;
     210          390 :           _o1[0] = captures[0];
     211          390 :           if (TREE_TYPE (_o1[0]) != type)
     212              :             {
     213            0 :               _r1 = fold_build1_loc (loc, NOP_EXPR, type, _o1[0]);
     214              :             }
     215              :           else
     216              :             _r1 = _o1[0];
     217          390 :           res_op0 = _r1;
     218              :         }
     219          390 :         tree res_op1;
     220          390 :         {
     221          390 :           tree _o1[2], _r1;
     222          390 :           {
     223          390 :             tree _o2[1], _r2;
     224          390 :             _o2[0] = captures[1];
     225          390 :             if (TREE_TYPE (_o2[0]) != type)
     226              :               {
     227            0 :                 _r2 = fold_build1_loc (loc, NOP_EXPR, type, _o2[0]);
     228              :               }
     229              :             else
     230              :               _r2 = _o2[0];
     231          390 :             _o1[0] = _r2;
     232              :           }
     233          390 :           {
     234          390 :             tree _o2[1], _r2;
     235          390 :             _o2[0] = captures[2];
     236          390 :             if (TREE_TYPE (_o2[0]) != type)
     237              :               {
     238            0 :                 _r2 = fold_build1_loc (loc, NOP_EXPR, type, _o2[0]);
     239              :               }
     240              :             else
     241              :               _r2 = _o2[0];
     242          390 :             _o1[1] = _r2;
     243              :           }
     244          390 :           _r1 = fold_build2_loc (loc, op, TREE_TYPE (_o1[0]), _o1[0], _o1[1]);
     245          390 :           res_op1 = _r1;
     246              :         }
     247          390 :         tree _r;
     248          390 :         _r = fold_build2_loc (loc, rop, type, res_op0, res_op1);
     249          390 :         if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 77, __FILE__, __LINE__, true);
     250          390 :         return _r;
     251              :       }
     252            0 : next_after_fail104:;
     253              :     }
     254              :   return NULL_TREE;
     255              : }
     256              : 
     257              : tree
     258            0 : generic_simplify_40 (location_t ARG_UNUSED (loc), const tree ARG_UNUSED (type),
     259              :  tree ARG_UNUSED (_p0), tree ARG_UNUSED (_p1), tree *ARG_UNUSED (captures),
     260              :  const enum tree_code ARG_UNUSED (op))
     261              : {
     262            0 :   const bool debug_dump = dump_file && (dump_flags & TDF_FOLDING);
     263            0 :   if (INTEGRAL_TYPE_P (type)
     264            0 :  && (tree_nonzero_bits (captures[0]) & tree_nonzero_bits (captures[2])) == 0
     265              : )
     266              :     {
     267            0 :       {
     268            0 :  tree t = type;
     269            0 :  if (!TYPE_OVERFLOW_WRAPS (t))
     270            0 :  t = unsigned_type_for (t);
     271            0 :  wide_int c = wi::add (wi::to_wide (captures[3]), 1);
     272            0 :           if (TREE_SIDE_EFFECTS (captures[3])) goto next_after_fail117;
     273            0 :           if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail117;
     274            0 :           {
     275            0 :             tree res_op0;
     276            0 :             {
     277            0 :               tree _o1[2], _r1;
     278            0 :               {
     279            0 :                 tree _o2[1], _r2;
     280            0 :                 _o2[0] = captures[2];
     281            0 :                 if (TREE_TYPE (_o2[0]) != t)
     282              :                   {
     283            0 :                     _r2 = fold_build1_loc (loc, NOP_EXPR, t, _o2[0]);
     284              :                   }
     285              :                 else
     286              :                   _r2 = _o2[0];
     287            0 :                 _o1[0] = _r2;
     288              :               }
     289            0 :               _o1[1] =  wide_int_to_tree (t, c);
     290            0 :               _r1 = fold_build2_loc (loc, MULT_EXPR, t, _o1[0], _o1[1]);
     291            0 :               res_op0 = _r1;
     292              :             }
     293            0 :             tree _r;
     294            0 :             _r = fold_build1_loc (loc, NOP_EXPR, type, res_op0);
     295            0 :             if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 88, __FILE__, __LINE__, true);
     296            0 :             return _r;
     297              :           }
     298            0 : next_after_fail117:;
     299            0 :       }
     300              :     }
     301              :   return NULL_TREE;
     302              : }
     303              : 
     304              : tree
     305          534 : generic_simplify_47 (location_t ARG_UNUSED (loc), const tree ARG_UNUSED (type),
     306              :  tree ARG_UNUSED (_p0), tree ARG_UNUSED (_p1), tree *ARG_UNUSED (captures),
     307              :  const enum tree_code ARG_UNUSED (op))
     308              : {
     309          534 :   const bool debug_dump = dump_file && (dump_flags & TDF_FOLDING);
     310         1068 :   if (INTEGRAL_TYPE_P (type)
     311          532 :  && tree_int_cst_sgn (captures[2]) > 0
     312         2132 :  && (tree_nonzero_bits (captures[0]) & tree_nonzero_bits (captures[1])) == 0
     313              : )
     314              :     {
     315            6 :       {
     316            6 :  tree t = type;
     317            6 :  if (!TYPE_OVERFLOW_WRAPS (t))
     318            6 :  t = unsigned_type_for (t);
     319            6 :  wide_int wone = wi::one (TYPE_PRECISION (t));
     320            6 :  wide_int c = wi::add (wi::lshift (wone, wi::to_wide (captures[2])), wone);
     321            6 :           if (TREE_SIDE_EFFECTS (captures[2])) goto next_after_fail125;
     322            6 :           if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail125;
     323            6 :           {
     324            6 :             tree res_op0;
     325            6 :             {
     326            6 :               tree _o1[2], _r1;
     327            6 :               {
     328            6 :                 tree _o2[1], _r2;
     329            6 :                 _o2[0] = captures[1];
     330            6 :                 if (TREE_TYPE (_o2[0]) != t)
     331              :                   {
     332            6 :                     _r2 = fold_build1_loc (loc, NOP_EXPR, t, _o2[0]);
     333              :                   }
     334              :                 else
     335              :                   _r2 = _o2[0];
     336            6 :                 _o1[0] = _r2;
     337              :               }
     338            6 :               _o1[1] =  wide_int_to_tree (t, c);
     339            6 :               _r1 = fold_build2_loc (loc, MULT_EXPR, t, _o1[0], _o1[1]);
     340            6 :               res_op0 = _r1;
     341              :             }
     342            6 :             tree _r;
     343            6 :             _r = fold_build1_loc (loc, NOP_EXPR, type, res_op0);
     344            6 :             if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 93, __FILE__, __LINE__, true);
     345            6 :             return _r;
     346              :           }
     347            0 : next_after_fail125:;
     348            6 :       }
     349              :     }
     350              :   return NULL_TREE;
     351              : }
     352              : 
     353              : tree
     354      3025437 : generic_simplify_61 (location_t ARG_UNUSED (loc), const tree ARG_UNUSED (type),
     355              :  tree ARG_UNUSED (_p0), tree ARG_UNUSED (_p1), tree *ARG_UNUSED (captures),
     356              :  const enum tree_code ARG_UNUSED (inner_op),
     357              :  const enum tree_code ARG_UNUSED (neg_inner_op),
     358              :  const enum tree_code ARG_UNUSED (outer_op))
     359              : {
     360      3025437 :   const bool debug_dump = dump_file && (dump_flags & TDF_FOLDING);
     361      3025437 :   if (!TYPE_SATURATING (type)
     362              : )
     363              :     {
     364      3025437 :       if ((!FLOAT_TYPE_P (type) || flag_associative_math)
     365      6050628 :  && !FIXED_POINT_TYPE_P (type)
     366              : )
     367              :         {
     368      3025191 :           if (!ANY_INTEGRAL_TYPE_P (type) || TYPE_OVERFLOW_WRAPS (type)
     369              : )
     370              :             {
     371      2017306 :               if (!CONSTANT_CLASS_P (captures[0])
     372              : )
     373              :                 {
     374      2017299 :                   if (outer_op == PLUS_EXPR
     375              : )
     376              :                     {
     377      2017299 :                       if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail142;
     378      2017299 :                       {
     379      2017299 :                         tree res_op0;
     380      2017299 :                         {
     381      2017299 :                           tree _o1[1], _r1;
     382      2017299 :                           _o1[0] = captures[0];
     383      2017299 :                           if (TREE_TYPE (_o1[0]) != type)
     384              :                             {
     385       843633 :                               _r1 = fold_build1_loc (loc, VIEW_CONVERT_EXPR, type, _o1[0]);
     386              :                             }
     387              :                           else
     388              :                             _r1 = _o1[0];
     389      2017299 :                           res_op0 = _r1;
     390              :                         }
     391      2017299 :                         tree res_op1;
     392      2017299 :                         {
     393      2017299 :                           tree _o1[2], _r1;
     394      2017299 :                           _o1[0] = captures[2];
     395      2017299 :                           {
     396      2017299 :                             tree _o2[1], _r2;
     397      2017299 :                             _o2[0] = captures[1];
     398      2017299 :                             if (TREE_TYPE (_o2[0]) != type)
     399              :                               {
     400       834908 :                                 _r2 = fold_build1_loc (loc, VIEW_CONVERT_EXPR, type, _o2[0]);
     401              :                               }
     402              :                             else
     403              :                               _r2 = _o2[0];
     404      2017299 :                             _o1[1] = _r2;
     405              :                           }
     406      2017299 :                           _r1 = fold_build2_loc (loc, inner_op, TREE_TYPE (_o1[0]), _o1[0], _o1[1]);
     407      2017299 :                           if (EXPR_P (_r1))
     408            0 :                             goto next_after_fail142;
     409      2017299 :                           res_op1 = _r1;
     410              :                         }
     411      2017299 :                         tree _r;
     412      2017299 :                         _r = fold_build2_loc (loc, PLUS_EXPR, type, res_op0, res_op1);
     413      2017299 :                         if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 110, __FILE__, __LINE__, true);
     414      2017299 :                         return _r;
     415              :                       }
     416              : next_after_fail142:;
     417              :                     }
     418              :                   else
     419              :                     {
     420            0 :                       if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail143;
     421            0 :                       {
     422            0 :                         tree res_op0;
     423            0 :                         {
     424            0 :                           tree _o1[1], _r1;
     425            0 :                           _o1[0] = captures[0];
     426            0 :                           if (TREE_TYPE (_o1[0]) != type)
     427              :                             {
     428            0 :                               _r1 = fold_build1_loc (loc, VIEW_CONVERT_EXPR, type, _o1[0]);
     429              :                             }
     430              :                           else
     431              :                             _r1 = _o1[0];
     432            0 :                           res_op0 = _r1;
     433              :                         }
     434            0 :                         tree res_op1;
     435            0 :                         {
     436            0 :                           tree _o1[2], _r1;
     437            0 :                           _o1[0] = captures[2];
     438            0 :                           {
     439            0 :                             tree _o2[1], _r2;
     440            0 :                             _o2[0] = captures[1];
     441            0 :                             if (TREE_TYPE (_o2[0]) != type)
     442              :                               {
     443            0 :                                 _r2 = fold_build1_loc (loc, VIEW_CONVERT_EXPR, type, _o2[0]);
     444              :                               }
     445              :                             else
     446              :                               _r2 = _o2[0];
     447            0 :                             _o1[1] = _r2;
     448              :                           }
     449            0 :                           _r1 = fold_build2_loc (loc, neg_inner_op, TREE_TYPE (_o1[0]), _o1[0], _o1[1]);
     450            0 :                           if (EXPR_P (_r1))
     451            0 :                             goto next_after_fail143;
     452            0 :                           res_op1 = _r1;
     453              :                         }
     454            0 :                         tree _r;
     455            0 :                         _r = fold_build2_loc (loc, MINUS_EXPR, type, res_op0, res_op1);
     456            0 :                         if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 111, __FILE__, __LINE__, true);
     457            0 :                         return _r;
     458              :                       }
     459              : next_after_fail143:;
     460              :                     }
     461              :                 }
     462              :             }
     463              :           else
     464              :             {
     465      2015770 :               if (!ANY_INTEGRAL_TYPE_P (TREE_TYPE (captures[0]))
     466      2015770 :  || TYPE_OVERFLOW_WRAPS (TREE_TYPE (captures[0]))
     467              : )
     468              :                 {
     469       217913 :                   if (outer_op == PLUS_EXPR
     470              : )
     471              :                     {
     472       217913 :                       if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail144;
     473       217913 :                       {
     474       217913 :                         tree res_op0;
     475       217913 :                         {
     476       217913 :                           tree _o1[2], _r1;
     477       217913 :                           _o1[0] = captures[0];
     478       217913 :                           {
     479       217913 :                             tree _o2[2], _r2;
     480       217913 :                             {
     481       217913 :                               tree _o3[1], _r3;
     482       217913 :                               _o3[0] = captures[2];
     483       217913 :                               if (TREE_TYPE (_o3[0]) != TREE_TYPE (_o1[0]))
     484              :                                 {
     485       217913 :                                   _r3 = fold_build1_loc (loc, VIEW_CONVERT_EXPR, TREE_TYPE (_o1[0]), _o3[0]);
     486              :                                 }
     487              :                               else
     488              :                                 _r3 = _o3[0];
     489       217913 :                               _o2[0] = _r3;
     490              :                             }
     491       217913 :                             _o2[1] = captures[1];
     492       217913 :                             _r2 = fold_build2_loc (loc, inner_op, TREE_TYPE (_o2[0]), _o2[0], _o2[1]);
     493       217913 :                             if (EXPR_P (_r2))
     494            0 :                               goto next_after_fail144;
     495       217913 :                             _o1[1] = _r2;
     496              :                           }
     497       217913 :                           _r1 = fold_build2_loc (loc, PLUS_EXPR, TREE_TYPE (_o1[0]), _o1[0], _o1[1]);
     498       217913 :                           res_op0 = _r1;
     499              :                         }
     500       217913 :                         tree _r;
     501       217913 :                         _r = fold_build1_loc (loc, VIEW_CONVERT_EXPR, type, res_op0);
     502       217913 :                         if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 112, __FILE__, __LINE__, true);
     503       217913 :                         return _r;
     504              :                       }
     505              : next_after_fail144:;
     506              :                     }
     507              :                   else
     508              :                     {
     509            0 :                       if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail145;
     510            0 :                       {
     511            0 :                         tree res_op0;
     512            0 :                         {
     513            0 :                           tree _o1[2], _r1;
     514            0 :                           _o1[0] = captures[0];
     515            0 :                           {
     516            0 :                             tree _o2[2], _r2;
     517            0 :                             {
     518            0 :                               tree _o3[1], _r3;
     519            0 :                               _o3[0] = captures[2];
     520            0 :                               if (TREE_TYPE (_o3[0]) != TREE_TYPE (_o1[0]))
     521              :                                 {
     522            0 :                                   _r3 = fold_build1_loc (loc, VIEW_CONVERT_EXPR, TREE_TYPE (_o1[0]), _o3[0]);
     523              :                                 }
     524              :                               else
     525              :                                 _r3 = _o3[0];
     526            0 :                               _o2[0] = _r3;
     527              :                             }
     528            0 :                             _o2[1] = captures[1];
     529            0 :                             _r2 = fold_build2_loc (loc, neg_inner_op, TREE_TYPE (_o2[0]), _o2[0], _o2[1]);
     530            0 :                             if (EXPR_P (_r2))
     531            0 :                               goto next_after_fail145;
     532            0 :                             _o1[1] = _r2;
     533              :                           }
     534            0 :                           _r1 = fold_build2_loc (loc, MINUS_EXPR, TREE_TYPE (_o1[0]), _o1[0], _o1[1]);
     535            0 :                           res_op0 = _r1;
     536              :                         }
     537            0 :                         tree _r;
     538            0 :                         _r = fold_build1_loc (loc, VIEW_CONVERT_EXPR, type, res_op0);
     539            0 :                         if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 113, __FILE__, __LINE__, true);
     540            0 :                         return _r;
     541              :                       }
     542              : next_after_fail145:;
     543              :                     }
     544              :                 }
     545              :               else
     546              :                 {
     547       789972 :                   if (types_match (type, captures[0]) && !TYPE_OVERFLOW_SANITIZED (type)
     548              : )
     549              :                     {
     550       788793 :                       {
     551       788793 :  tree cst = const_binop (outer_op == inner_op
     552              :  ? PLUS_EXPR : MINUS_EXPR,
     553              :  type, captures[1], captures[2]);
     554       788793 :                           if (cst
     555              : )
     556              :                             {
     557       788793 :                               if (INTEGRAL_TYPE_P (type) && !TREE_OVERFLOW (cst)
     558              : )
     559              :                                 {
     560       788779 :                                   if (TREE_SIDE_EFFECTS (captures[1])) goto next_after_fail146;
     561       788779 :                                   if (TREE_SIDE_EFFECTS (captures[2])) goto next_after_fail146;
     562       788779 :                                   if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail146;
     563       788779 :                                   {
     564       788779 :                                     tree res_op0;
     565       788779 :                                     res_op0 = captures[0];
     566       788779 :                                     tree res_op1;
     567       788779 :                                     res_op1 =  cst;
     568       788779 :                                     tree _r;
     569       788779 :                                     _r = fold_build2_loc (loc, inner_op, type, res_op0, res_op1);
     570       788779 :                                     if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 114, __FILE__, __LINE__, true);
     571       788779 :                                     return _r;
     572              :                                   }
     573              : next_after_fail146:;
     574              :                                 }
     575              :                               else
     576              :                                 {
     577           28 :                                   if (INTEGRAL_TYPE_P (type)
     578           28 :  && wi::to_wide (cst) == wi::min_value (type)
     579              : )
     580              :                                     {
     581            7 :                                       if (TREE_SIDE_EFFECTS (captures[1])) goto next_after_fail147;
     582            7 :                                       if (TREE_SIDE_EFFECTS (captures[2])) goto next_after_fail147;
     583            7 :                                       if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail147;
     584            7 :                                       {
     585            7 :                                         tree res_op0;
     586            7 :                                         res_op0 = captures[0];
     587            7 :                                         tree res_op1;
     588            7 :                                         res_op1 =  wide_int_to_tree (type, wi::to_wide (cst));
     589            7 :                                         tree _r;
     590            7 :                                         _r = fold_build2_loc (loc, neg_inner_op, type, res_op0, res_op1);
     591            7 :                                         if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 115, __FILE__, __LINE__, true);
     592            7 :                                         return _r;
     593              :                                       }
     594              : next_after_fail147:;
     595              :                                     }
     596              :                                   else
     597              :                                     {
     598            7 :                                       {
     599            7 :  tree utype = unsigned_type_for (type);
     600            7 :                                           if (utype
     601              : )
     602              :                                             {
     603            7 :                                               if (TREE_SIDE_EFFECTS (captures[1])) goto next_after_fail148;
     604            7 :                                               if (TREE_SIDE_EFFECTS (captures[2])) goto next_after_fail148;
     605            7 :                                               if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail148;
     606            7 :                                               {
     607            7 :                                                 tree res_op0;
     608            7 :                                                 {
     609            7 :                                                   tree _o1[2], _r1;
     610            7 :                                                   {
     611            7 :                                                     tree _o2[1], _r2;
     612            7 :                                                     _o2[0] = captures[0];
     613            7 :                                                     if (TREE_TYPE (_o2[0]) != utype)
     614              :                                                       {
     615            7 :                                                         _r2 = fold_build1_loc (loc, VIEW_CONVERT_EXPR, utype, _o2[0]);
     616              :                                                       }
     617              :                                                     else
     618              :                                                       _r2 = _o2[0];
     619            7 :                                                     _o1[0] = _r2;
     620              :                                                   }
     621            7 :                                                   {
     622            7 :                                                     tree _o2[1], _r2;
     623            7 :                                                     _o2[0] =  TREE_OVERFLOW (cst)
     624            7 :  ? drop_tree_overflow (cst) : cst;
     625            7 :                                                     if (TREE_TYPE (_o2[0]) != utype)
     626              :                                                       {
     627            7 :                                                         _r2 = fold_build1_loc (loc, VIEW_CONVERT_EXPR, utype, _o2[0]);
     628              :                                                       }
     629              :                                                     else
     630              :                                                       _r2 = _o2[0];
     631            7 :                                                     _o1[1] = _r2;
     632              :                                                   }
     633            7 :                                                   _r1 = fold_build2_loc (loc, inner_op, TREE_TYPE (_o1[0]), _o1[0], _o1[1]);
     634            7 :                                                   res_op0 = _r1;
     635              :                                                 }
     636            7 :                                                 tree _r;
     637            7 :                                                 _r = fold_build1_loc (loc, VIEW_CONVERT_EXPR, type, res_op0);
     638            7 :                                                 if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 116, __FILE__, __LINE__, true);
     639            7 :                                                 return _r;
     640              :                                               }
     641              : next_after_fail148:;
     642              :                                             }
     643              :                                       }
     644              :                                     }
     645              :                                 }
     646              :                             }
     647              :                       }
     648              :                     }
     649              :                 }
     650              :             }
     651              :         }
     652              :     }
     653              :   return NULL_TREE;
     654              : }
     655              : 
     656              : tree
     657            0 : generic_simplify_119 (location_t ARG_UNUSED (loc), const tree ARG_UNUSED (type),
     658              :  tree ARG_UNUSED (_p0), tree ARG_UNUSED (_p1), tree *ARG_UNUSED (captures),
     659              :  const enum tree_code ARG_UNUSED (op))
     660              : {
     661            0 :   const bool debug_dump = dump_file && (dump_flags & TDF_FOLDING);
     662            0 :   if (TREE_SIDE_EFFECTS (_p1)) goto next_after_fail216;
     663            0 :   if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail216;
     664            0 :   {
     665            0 :     tree _r;
     666            0 :     _r = captures[0];
     667            0 :     if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 180, __FILE__, __LINE__, true);
     668              :     return _r;
     669              :   }
     670              : next_after_fail216:;
     671              :   return NULL_TREE;
     672              : }
     673              : 
     674              : tree
     675          253 : generic_simplify_126 (location_t ARG_UNUSED (loc), const tree ARG_UNUSED (type),
     676              :  tree ARG_UNUSED (_p0), tree ARG_UNUSED (_p1), tree *ARG_UNUSED (captures),
     677              :  const enum tree_code ARG_UNUSED (bitop))
     678              : {
     679          253 :   const bool debug_dump = dump_file && (dump_flags & TDF_FOLDING);
     680          253 :   if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail223;
     681          253 :   {
     682          253 :     tree res_op0;
     683          253 :     res_op0 = captures[0];
     684          253 :     tree _r;
     685          253 :     _r = non_lvalue_loc (loc, res_op0);
     686          253 :     if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 185, __FILE__, __LINE__, true);
     687              :     return _r;
     688              :   }
     689            0 : next_after_fail223:;
     690            0 :   return NULL_TREE;
     691              : }
     692              : 
     693              : tree
     694            0 : generic_simplify_135 (location_t ARG_UNUSED (loc), const tree ARG_UNUSED (type),
     695              :  tree ARG_UNUSED (_p0), tree ARG_UNUSED (_p1), tree *ARG_UNUSED (captures),
     696              :  const enum tree_code ARG_UNUSED (op))
     697              : {
     698            0 :   const bool debug_dump = dump_file && (dump_flags & TDF_FOLDING);
     699            0 :   if (tree_nop_conversion_p (type, TREE_TYPE (captures[3]))
     700            0 :  && tree_nop_conversion_p (type, TREE_TYPE (captures[6]))
     701              : )
     702              :     {
     703            0 :       if (single_use (captures[4]) && single_use (captures[5])
     704              : )
     705              :         {
     706            0 :           if (TREE_SIDE_EFFECTS (_p0)) goto next_after_fail232;
     707            0 :           if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail232;
     708            0 :           {
     709            0 :             tree res_op0;
     710            0 :             res_op0 = captures[0];
     711            0 :             tree res_op1;
     712            0 :             {
     713            0 :               tree _o1[1], _r1;
     714            0 :               _o1[0] = captures[6];
     715            0 :               if (TREE_TYPE (_o1[0]) != type)
     716              :                 {
     717            0 :                   _r1 = fold_build1_loc (loc, NOP_EXPR, type, _o1[0]);
     718              :                 }
     719              :               else
     720              :                 _r1 = _o1[0];
     721            0 :               res_op1 = _r1;
     722              :             }
     723            0 :             tree _r;
     724            0 :             _r = fold_build2_loc (loc, op, type, res_op0, res_op1);
     725            0 :             if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 192, __FILE__, __LINE__, true);
     726            0 :             return _r;
     727              :           }
     728              : next_after_fail232:;
     729              :         }
     730              :       else
     731              :         {
     732              :           if (single_use (captures[0]) && single_use (captures[1])
     733              : )
     734              :             {
     735              :               if (TREE_SIDE_EFFECTS (_p1)) goto next_after_fail233;
     736              :               if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail233;
     737              :               {
     738              :                 tree res_op0;
     739              :                 {
     740              :                   tree _o1[1], _r1;
     741              :                   _o1[0] = captures[3];
     742              :                   if (TREE_TYPE (_o1[0]) != type)
     743              :                     {
     744              :                       _r1 = fold_build1_loc (loc, NOP_EXPR, type, _o1[0]);
     745              :                     }
     746              :                   else
     747              :                     _r1 = _o1[0];
     748              :                   res_op0 = _r1;
     749              :                 }
     750              :                 tree res_op1;
     751              :                 res_op1 = captures[4];
     752              :                 tree _r;
     753              :                 _r = fold_build2_loc (loc, op, type, res_op0, res_op1);
     754              :                 if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 193, __FILE__, __LINE__, true);
     755              :                 return _r;
     756              :               }
     757              : next_after_fail233:;
     758              :             }
     759              :         }
     760              :     }
     761              :   return NULL_TREE;
     762              : }
     763              : 
     764              : tree
     765            0 : generic_simplify_149 (location_t ARG_UNUSED (loc), const tree ARG_UNUSED (type),
     766              :  tree ARG_UNUSED (_p0), tree ARG_UNUSED (_p1), tree *ARG_UNUSED (captures),
     767              :  const enum tree_code ARG_UNUSED (op))
     768              : {
     769            0 :   const bool debug_dump = dump_file && (dump_flags & TDF_FOLDING);
     770            0 :   if (bitwise_equal_p (captures[4], captures[7])
     771              : )
     772              :     {
     773            0 :       if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail251;
     774            0 :       {
     775            0 :         tree res_op0;
     776            0 :         {
     777            0 :           tree _o1[2], _r1;
     778            0 :           {
     779            0 :             tree _o2[2], _r2;
     780            0 :             _o2[0] = captures[5];
     781            0 :             {
     782            0 :               tree _o3[1], _r3;
     783            0 :               _o3[0] = captures[6];
     784            0 :               if (TREE_TYPE (_o3[0]) != TREE_TYPE (_o2[0]))
     785              :                 {
     786            0 :                   _r3 = fold_build1_loc (loc, NOP_EXPR, TREE_TYPE (_o2[0]), _o3[0]);
     787              :                 }
     788              :               else
     789              :                 _r3 = _o3[0];
     790            0 :               _o2[1] = _r3;
     791              :             }
     792            0 :             _r2 = fold_build2_loc (loc, BIT_AND_EXPR, TREE_TYPE (_o2[0]), _o2[0], _o2[1]);
     793            0 :             _o1[0] = _r2;
     794              :           }
     795            0 :           {
     796            0 :             tree _o2[1], _r2;
     797            0 :             _o2[0] = captures[4];
     798            0 :             if (TREE_TYPE (_o2[0]) != TREE_TYPE (_o1[0]))
     799              :               {
     800            0 :                 _r2 = fold_build1_loc (loc, NOP_EXPR, TREE_TYPE (_o1[0]), _o2[0]);
     801              :               }
     802              :             else
     803              :               _r2 = _o2[0];
     804            0 :             _o1[1] = _r2;
     805              :           }
     806            0 :           _r1 = fold_build2_loc (loc, BIT_IOR_EXPR, TREE_TYPE (_o1[0]), _o1[0], _o1[1]);
     807            0 :           res_op0 = _r1;
     808              :         }
     809            0 :         tree _r;
     810            0 :         _r = fold_build1_loc (loc, NOP_EXPR, type, res_op0);
     811            0 :         if (TREE_SIDE_EFFECTS (captures[7]))
     812            0 :           _r = build2_loc (loc, COMPOUND_EXPR, type, fold_ignored_result (captures[7]), _r);
     813            0 :         if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 198, __FILE__, __LINE__, true);
     814            0 :         return _r;
     815              :       }
     816            0 : next_after_fail251:;
     817              :     }
     818              :   return NULL_TREE;
     819              : }
     820              : 
     821              : tree
     822            0 : generic_simplify_163 (location_t ARG_UNUSED (loc), const tree ARG_UNUSED (type),
     823              :  tree ARG_UNUSED (_p0), tree ARG_UNUSED (_p1), tree *ARG_UNUSED (captures))
     824              : {
     825            0 :   const bool debug_dump = dump_file && (dump_flags & TDF_FOLDING);
     826            0 :   if (TREE_SIDE_EFFECTS (_p0)) goto next_after_fail286;
     827            0 :   if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail286;
     828            0 :   {
     829            0 :     tree _r;
     830            0 :     _r = captures[2];
     831            0 :     if (TREE_SIDE_EFFECTS (captures[1]))
     832            0 :       _r = build2_loc (loc, COMPOUND_EXPR, type, fold_ignored_result (captures[1]), _r);
     833            0 :     if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 208, __FILE__, __LINE__, true);
     834              :     return _r;
     835              :   }
     836              : next_after_fail286:;
     837              :   return NULL_TREE;
     838              : }
     839              : 
     840              : tree
     841            4 : generic_simplify_169 (location_t ARG_UNUSED (loc), const tree ARG_UNUSED (type),
     842              :  tree ARG_UNUSED (_p0), tree ARG_UNUSED (_p1), tree *ARG_UNUSED (captures))
     843              : {
     844            4 :   const bool debug_dump = dump_file && (dump_flags & TDF_FOLDING);
     845            4 :   if (TREE_SIDE_EFFECTS (_p0)) goto next_after_fail306;
     846            4 :   if (TREE_SIDE_EFFECTS (_p1)) goto next_after_fail306;
     847            4 :   if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail306;
     848            4 :   {
     849            4 :     tree _r;
     850            4 :     _r = captures[0];
     851            4 :     if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 229, __FILE__, __LINE__, true);
     852              :     return _r;
     853              :   }
     854              : next_after_fail306:;
     855              :   return NULL_TREE;
     856              : }
     857              : 
     858              : tree
     859            0 : generic_simplify_171 (location_t ARG_UNUSED (loc), const tree ARG_UNUSED (type),
     860              :  tree ARG_UNUSED (_p0), tree ARG_UNUSED (_p1), tree *ARG_UNUSED (captures))
     861              : {
     862            0 :   const bool debug_dump = dump_file && (dump_flags & TDF_FOLDING);
     863            0 :   if (TREE_SIDE_EFFECTS (_p1)) goto next_after_fail308;
     864            0 :   if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail308;
     865            0 :   {
     866            0 :     tree _r;
     867            0 :     _r = captures[1];
     868            0 :     if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 230, __FILE__, __LINE__, true);
     869              :     return _r;
     870              :   }
     871              : next_after_fail308:;
     872              :   return NULL_TREE;
     873              : }
     874              : 
     875              : tree
     876            7 : generic_simplify_175 (location_t ARG_UNUSED (loc), const tree ARG_UNUSED (type),
     877              :  tree ARG_UNUSED (_p0), tree ARG_UNUSED (_p1), tree *ARG_UNUSED (captures))
     878              : {
     879            7 :   const bool debug_dump = dump_file && (dump_flags & TDF_FOLDING);
     880            7 :   if (type_has_mode_precision_p (type)
     881            0 :  && tree_fits_uhwi_p (captures[1])
     882            0 :  && tree_fits_uhwi_p (captures[2])
     883            0 :  && tree_fits_uhwi_p (captures[4])
     884            0 :  && (((((HOST_WIDE_INT_1U << tree_to_uhwi (captures[1])) - 1)) & tree_to_uhwi (captures[2])) == 0)
     885            0 :  && (tree_to_uhwi (captures[1]) + tree_to_uhwi (captures[4])) == TYPE_PRECISION (type)
     886            0 :  && TYPE_UNSIGNED (type)
     887            7 :  && captures[0] == captures[3]
     888              : )
     889              :     {
     890            0 :       if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail312;
     891            0 :       {
     892            0 :         tree res_op0;
     893            0 :         {
     894            0 :           tree _o1[2], _r1;
     895            0 :           _o1[0] = captures[0];
     896            0 :           _o1[1] = captures[4];
     897            0 :           _r1 = fold_build2_loc (loc, RROTATE_EXPR, TREE_TYPE (_o1[0]), _o1[0], _o1[1]);
     898            0 :           res_op0 = _r1;
     899              :         }
     900            0 :         tree res_op1;
     901            0 :         res_op1 = captures[2];
     902            0 :         tree _r;
     903            0 :         _r = fold_build2_loc (loc, BIT_XOR_EXPR, type, res_op0, res_op1);
     904            0 :         if (TREE_SIDE_EFFECTS (captures[1]))
     905            0 :           _r = build2_loc (loc, COMPOUND_EXPR, type, fold_ignored_result (captures[1]), _r);
     906            0 :         if (TREE_SIDE_EFFECTS (captures[3]))
     907            0 :           _r = build2_loc (loc, COMPOUND_EXPR, type, fold_ignored_result (captures[3]), _r);
     908            0 :         if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 233, __FILE__, __LINE__, true);
     909            0 :         return _r;
     910              :       }
     911            0 : next_after_fail312:;
     912              :     }
     913              :   return NULL_TREE;
     914              : }
     915              : 
     916              : tree
     917         3643 : generic_simplify_182 (location_t ARG_UNUSED (loc), const tree ARG_UNUSED (type),
     918              :  tree ARG_UNUSED (_p0), tree ARG_UNUSED (_p1), tree *ARG_UNUSED (captures))
     919              : {
     920         3643 :   const bool debug_dump = dump_file && (dump_flags & TDF_FOLDING);
     921         3643 :   if (! FLOAT_TYPE_P (type)
     922         7286 :  && tree_nop_conversion_p (type, TREE_TYPE (captures[1]))
     923              : )
     924              :     {
     925         3642 :       if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail319;
     926         3642 :       {
     927         3642 :         tree res_op0;
     928         3642 :         res_op0 = captures[0];
     929         3642 :         tree res_op1;
     930         3642 :         res_op1 = captures[2];
     931         3642 :         tree _r;
     932         3642 :         _r = fold_build2_loc (loc, LSHIFT_EXPR, type, res_op0, res_op1);
     933         3642 :         if (TREE_SIDE_EFFECTS (captures[1]))
     934            0 :           _r = build2_loc (loc, COMPOUND_EXPR, type, fold_ignored_result (captures[1]), _r);
     935         3642 :         if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 238, __FILE__, __LINE__, true);
     936         3642 :         return _r;
     937              :       }
     938            0 : next_after_fail319:;
     939              :     }
     940              :   return NULL_TREE;
     941              : }
     942              : 
     943              : tree
     944           14 : generic_simplify_190 (location_t ARG_UNUSED (loc), const tree ARG_UNUSED (type),
     945              :  tree ARG_UNUSED (_p0), tree ARG_UNUSED (_p1), tree *ARG_UNUSED (captures))
     946              : {
     947           14 :   const bool debug_dump = dump_file && (dump_flags & TDF_FOLDING);
     948           14 :   if (tree_nop_conversion_p (type, TREE_TYPE (captures[0]))
     949           14 :  && wi::ltu_p (wi::to_widest (captures[1]), TYPE_PRECISION (type))
     950              : )
     951              :     {
     952           14 :       {
     953           14 :  unsigned int shift = tree_to_uhwi (captures[1]);
     954           14 :  unsigned int prec = TYPE_PRECISION (type);
     955           14 :           if ((prec <= TYPE_PRECISION (TREE_TYPE (captures[2])) + shift
     956            0 :  || tree_int_cst_sgn (captures[2]) >= 0)
     957           28 :  && wi::to_wide (captures[3]) == wi::set_bit_in_zero (shift, prec)
     958              : )
     959              :             {
     960            6 :               {
     961            6 :  auto mask = wide_int::from (wi::to_wide (captures[2]), prec, UNSIGNED);
     962            6 :                   if (TREE_SIDE_EFFECTS (captures[1])) goto next_after_fail329;
     963            6 :                   if (TREE_SIDE_EFFECTS (captures[2])) goto next_after_fail329;
     964            6 :                   if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail329;
     965            6 :                   {
     966            6 :                     tree res_op0;
     967            6 :                     {
     968            6 :                       tree _o1[1], _r1;
     969            6 :                       _o1[0] = captures[0];
     970            6 :                       if (TREE_TYPE (_o1[0]) != type)
     971              :                         {
     972            0 :                           _r1 = fold_build1_loc (loc, NOP_EXPR, type, _o1[0]);
     973              :                         }
     974              :                       else
     975              :                         _r1 = _o1[0];
     976            6 :                       res_op0 = _r1;
     977              :                     }
     978            6 :                     tree res_op1;
     979            6 :                     res_op1 =  wide_int_to_tree (type, mask << shift);
     980            6 :                     tree _r;
     981            6 :                     _r = fold_build2_loc (loc, BIT_AND_EXPR, type, res_op0, res_op1);
     982            6 :                     if (TREE_SIDE_EFFECTS (captures[3]))
     983            0 :                       _r = build2_loc (loc, COMPOUND_EXPR, type, fold_ignored_result (captures[3]), _r);
     984            6 :                     if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 244, __FILE__, __LINE__, true);
     985            6 :                     return _r;
     986              :                   }
     987            0 : next_after_fail329:;
     988            6 :               }
     989              :             }
     990              :       }
     991              :     }
     992              :   return NULL_TREE;
     993              : }
     994              : 
     995              : tree
     996            6 : generic_simplify_197 (location_t ARG_UNUSED (loc), const tree ARG_UNUSED (type),
     997              :  tree ARG_UNUSED (_p0), tree ARG_UNUSED (_p1), tree *ARG_UNUSED (captures),
     998              :  const combined_fn ARG_UNUSED (LDEXP))
     999              : {
    1000            6 :   const bool debug_dump = dump_file && (dump_flags & TDF_FOLDING);
    1001            6 :   if (flag_unsafe_math_optimizations
    1002              : )
    1003              :     {
    1004            6 :       {
    1005            6 :  HOST_WIDE_INT tmp = 0;
    1006            6 :           if (real_isinteger (&TREE_REAL_CST (captures[0]), &tmp)
    1007            6 :  && tmp > 0 && pow2p_hwi (tmp)
    1008              : )
    1009              :             {
    1010            3 :               if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail337;
    1011            3 :               {
    1012            3 :                 tree res_op0;
    1013            3 :                 res_op0 = captures[1];
    1014            3 :                 tree res_op1;
    1015            3 :                 {
    1016            3 :                   tree _o1[2], _r1;
    1017            3 :                   _o1[0] = build_int_cst (integer_type_node,
    1018            6 :  exact_log2 (tmp));
    1019            3 :                   _o1[1] = captures[2];
    1020            3 :                   _r1 = fold_build2_loc (loc, PLUS_EXPR, TREE_TYPE (_o1[0]), _o1[0], _o1[1]);
    1021            3 :                   res_op1 = _r1;
    1022              :                 }
    1023            3 :                 tree _r;
    1024            3 :                 _r = maybe_build_call_expr_loc (loc, LDEXP, type, 2, res_op0, res_op1);
    1025            3 :                 if (!_r)
    1026            0 :                   goto next_after_fail337;
    1027            3 :                 if (TREE_SIDE_EFFECTS (captures[0]))
    1028            0 :                   _r = build2_loc (loc, COMPOUND_EXPR, type, fold_ignored_result (captures[0]), _r);
    1029            3 :                 if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 252, __FILE__, __LINE__, true);
    1030            3 :                 return _r;
    1031              :               }
    1032            3 : next_after_fail337:;
    1033              :             }
    1034              :       }
    1035              :     }
    1036              :   return NULL_TREE;
    1037              : }
    1038              : 
    1039              : tree
    1040            0 : generic_simplify_208 (location_t ARG_UNUSED (loc), const tree ARG_UNUSED (type),
    1041              :  tree ARG_UNUSED (_p0), tree ARG_UNUSED (_p1), tree *ARG_UNUSED (captures),
    1042              :  const enum tree_code ARG_UNUSED (op))
    1043              : {
    1044            0 :   const bool debug_dump = dump_file && (dump_flags & TDF_FOLDING);
    1045            0 :   if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail351;
    1046            0 :   {
    1047            0 :     tree _r;
    1048            0 :     _r =  constant_boolean_node (op == NE_EXPR ? true : false, type);
    1049            0 :     if (TREE_SIDE_EFFECTS (captures[0]))
    1050            0 :       _r = build2_loc (loc, COMPOUND_EXPR, type, fold_ignored_result (captures[0]), _r);
    1051            0 :     if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 265, __FILE__, __LINE__, true);
    1052              :     return _r;
    1053              :   }
    1054            0 : next_after_fail351:;
    1055            0 :   return NULL_TREE;
    1056              : }
    1057              : 
    1058              : tree
    1059         2444 : generic_simplify_213 (location_t ARG_UNUSED (loc), const tree ARG_UNUSED (type),
    1060              :  tree ARG_UNUSED (_p0), tree ARG_UNUSED (_p1), tree *ARG_UNUSED (captures),
    1061              :  const enum tree_code ARG_UNUSED (cmp))
    1062              : {
    1063         2444 :   const bool debug_dump = dump_file && (dump_flags & TDF_FOLDING);
    1064         4888 :   if (INTEGRAL_TYPE_P (TREE_TYPE (captures[1]))
    1065         3094 :  && TYPE_OVERFLOW_UNDEFINED (TREE_TYPE (captures[0]))
    1066         4020 :  && tree_expr_nonzero_p (captures[1])
    1067              : )
    1068              :     {
    1069           20 :       if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail356;
    1070           20 :       {
    1071           20 :         tree res_op0;
    1072           20 :         res_op0 = captures[0];
    1073           20 :         tree res_op1;
    1074           20 :         res_op1 = captures[2];
    1075           20 :         tree _r;
    1076           20 :         _r = fold_build2_loc (loc, cmp, type, res_op0, res_op1);
    1077           20 :         if (TREE_SIDE_EFFECTS (captures[1]))
    1078            0 :           _r = build2_loc (loc, COMPOUND_EXPR, type, fold_ignored_result (captures[1]), _r);
    1079           20 :         if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 270, __FILE__, __LINE__, true);
    1080           20 :         return _r;
    1081              :       }
    1082            0 : next_after_fail356:;
    1083              :     }
    1084              :   return NULL_TREE;
    1085              : }
    1086              : 
    1087              : tree
    1088            0 : generic_simplify_220 (location_t ARG_UNUSED (loc), const tree ARG_UNUSED (type),
    1089              :  tree ARG_UNUSED (_p0), tree ARG_UNUSED (_p1), tree *ARG_UNUSED (captures),
    1090              :  const enum tree_code ARG_UNUSED (op))
    1091              : {
    1092            0 :   const bool debug_dump = dump_file && (dump_flags & TDF_FOLDING);
    1093            0 :   if (!TYPE_OVERFLOW_SANITIZED (TREE_TYPE (captures[1]))
    1094              : )
    1095              :     {
    1096            0 :       if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail376;
    1097            0 :       {
    1098            0 :         tree res_op0;
    1099            0 :         res_op0 = captures[3];
    1100            0 :         tree res_op1;
    1101            0 :         res_op1 = captures[2];
    1102            0 :         tree _r;
    1103            0 :         _r = fold_build2_loc (loc, op, type, res_op0, res_op1);
    1104            0 :         if (TREE_SIDE_EFFECTS (captures[1]))
    1105            0 :           _r = build2_loc (loc, COMPOUND_EXPR, type, fold_ignored_result (captures[1]), _r);
    1106            0 :         if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 290, __FILE__, __LINE__, true);
    1107            0 :         return _r;
    1108              :       }
    1109            0 : next_after_fail376:;
    1110              :     }
    1111              :   return NULL_TREE;
    1112              : }
    1113              : 
    1114              : tree
    1115         1063 : generic_simplify_228 (location_t ARG_UNUSED (loc), const tree ARG_UNUSED (type),
    1116              :  tree ARG_UNUSED (_p0), tree ARG_UNUSED (_p1), tree *ARG_UNUSED (captures),
    1117              :  const enum tree_code ARG_UNUSED (minmax),
    1118              :  const enum tree_code ARG_UNUSED (cmp),
    1119              :  const enum tree_code ARG_UNUSED (out))
    1120              : {
    1121         1063 :   const bool debug_dump = dump_file && (dump_flags & TDF_FOLDING);
    1122         2126 :   if (ANY_INTEGRAL_TYPE_P (TREE_TYPE (captures[0]))
    1123         1208 :  && (!VECTOR_TYPE_P (TREE_TYPE (captures[0]))
    1124            1 :  || (VECTOR_TYPE_P (type)
    1125            0 :  && (!expand_vec_cmp_expr_p (TREE_TYPE (captures[0]), type, cmp)
    1126            0 :  || expand_vec_cmp_expr_p (TREE_TYPE (captures[0]), type, out))))
    1127              : )
    1128              :     {
    1129          144 :       if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail384;
    1130          144 :       {
    1131          144 :         tree res_op0;
    1132          144 :         res_op0 = captures[0];
    1133          144 :         tree res_op1;
    1134          144 :         res_op1 = captures[1];
    1135          144 :         tree _r;
    1136          144 :         _r = fold_build2_loc (loc, out, type, res_op0, res_op1);
    1137          144 :         if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 297, __FILE__, __LINE__, true);
    1138          144 :         return _r;
    1139              :       }
    1140            0 : next_after_fail384:;
    1141              :     }
    1142              :   return NULL_TREE;
    1143              : }
    1144              : 
    1145              : tree
    1146          671 : generic_simplify_236 (location_t ARG_UNUSED (loc), const tree ARG_UNUSED (type),
    1147              :  tree ARG_UNUSED (_p0), tree ARG_UNUSED (_p1), tree *ARG_UNUSED (captures),
    1148              :  const enum tree_code ARG_UNUSED (cmp))
    1149              : {
    1150          671 :   const bool debug_dump = dump_file && (dump_flags & TDF_FOLDING);
    1151          671 :   if (tree_fits_shwi_p (captures[3])
    1152          671 :  && tree_to_shwi (captures[3]) > 0
    1153         1328 :  && tree_to_shwi (captures[3]) < TYPE_PRECISION (TREE_TYPE (captures[2]))
    1154              : )
    1155              :     {
    1156          657 :       {
    1157          657 :  tree t0 = TREE_TYPE (captures[2]);
    1158          657 :  unsigned int prec = TYPE_PRECISION (t0);
    1159          657 :  wide_int c1 = wi::to_wide (captures[3]);
    1160          657 :  wide_int c2 = wi::to_wide (captures[4]);
    1161          657 :  wide_int c3 = wi::to_wide (captures[5]);
    1162          657 :  wide_int sb = wi::set_bit_in_zero (prec - 1, prec);
    1163          657 :           if ((c2 & c3) != c3
    1164              : )
    1165              :             {
    1166            0 :               if (TREE_SIDE_EFFECTS (captures[3])) goto next_after_fail397;
    1167            0 :               if (TREE_SIDE_EFFECTS (captures[4])) goto next_after_fail397;
    1168            0 :               if (TREE_SIDE_EFFECTS (captures[5])) goto next_after_fail397;
    1169            0 :               if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail397;
    1170            0 :               {
    1171            0 :                 tree _r;
    1172            0 :                 _r =  constant_boolean_node (cmp == NE_EXPR, type);
    1173            0 :                 if (TREE_SIDE_EFFECTS (captures[2]))
    1174            0 :                   _r = build2_loc (loc, COMPOUND_EXPR, type, fold_ignored_result (captures[2]), _r);
    1175            0 :                 if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 310, __FILE__, __LINE__, true);
    1176            0 :                 return _r;
    1177              :               }
    1178            0 : next_after_fail397:;
    1179              :             }
    1180              :           else
    1181              :             {
    1182          657 :               if (TYPE_UNSIGNED (t0)
    1183              : )
    1184              :                 {
    1185          535 :                   if ((c3 & wi::arshift (sb, c1 - 1)) != 0
    1186              : )
    1187              :                     {
    1188            0 :                       if (TREE_SIDE_EFFECTS (captures[3])) goto next_after_fail398;
    1189            0 :                       if (TREE_SIDE_EFFECTS (captures[4])) goto next_after_fail398;
    1190            0 :                       if (TREE_SIDE_EFFECTS (captures[5])) goto next_after_fail398;
    1191            0 :                       if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail398;
    1192            0 :                       {
    1193            0 :                         tree _r;
    1194            0 :                         _r =  constant_boolean_node (cmp == NE_EXPR, type);
    1195            0 :                         if (TREE_SIDE_EFFECTS (captures[2]))
    1196            0 :                           _r = build2_loc (loc, COMPOUND_EXPR, type, fold_ignored_result (captures[2]), _r);
    1197            0 :                         if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 311, __FILE__, __LINE__, true);
    1198            0 :                         return _r;
    1199              :                       }
    1200            0 : next_after_fail398:;
    1201              :                     }
    1202              :                   else
    1203              :                     {
    1204          535 :                       if (TREE_SIDE_EFFECTS (captures[3])) goto next_after_fail399;
    1205          535 :                       if (TREE_SIDE_EFFECTS (captures[4])) goto next_after_fail399;
    1206          535 :                       if (TREE_SIDE_EFFECTS (captures[5])) goto next_after_fail399;
    1207          535 :                       if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail399;
    1208          535 :                       {
    1209          535 :                         tree res_op0;
    1210          535 :                         {
    1211          535 :                           tree _o1[2], _r1;
    1212          535 :                           _o1[0] = captures[2];
    1213          535 :                           _o1[1] =  wide_int_to_tree (t0, c2 << c1);
    1214          535 :                           _r1 = fold_build2_loc (loc, BIT_AND_EXPR, TREE_TYPE (_o1[0]), _o1[0], _o1[1]);
    1215          535 :                           res_op0 = _r1;
    1216              :                         }
    1217          535 :                         tree res_op1;
    1218          535 :                         res_op1 =  wide_int_to_tree (t0, c3 << c1);
    1219          535 :                         tree _r;
    1220          535 :                         _r = fold_build2_loc (loc, cmp, type, res_op0, res_op1);
    1221          535 :                         if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 312, __FILE__, __LINE__, true);
    1222          535 :                         return _r;
    1223              :                       }
    1224            0 : next_after_fail399:;
    1225              :                     }
    1226              :                 }
    1227              :               else
    1228              :                 {
    1229          122 :                   {
    1230          122 :  wide_int smask = wi::arshift (sb, c1);
    1231          122 :                       if ((c2 & smask) == 0
    1232              : )
    1233              :                         {
    1234          120 :                           if (TREE_SIDE_EFFECTS (captures[3])) goto next_after_fail400;
    1235          120 :                           if (TREE_SIDE_EFFECTS (captures[4])) goto next_after_fail400;
    1236          120 :                           if (TREE_SIDE_EFFECTS (captures[5])) goto next_after_fail400;
    1237          120 :                           if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail400;
    1238          120 :                           {
    1239          120 :                             tree res_op0;
    1240          120 :                             {
    1241          120 :                               tree _o1[2], _r1;
    1242          120 :                               _o1[0] = captures[2];
    1243          120 :                               _o1[1] =  wide_int_to_tree (t0, c2 << c1);
    1244          120 :                               _r1 = fold_build2_loc (loc, BIT_AND_EXPR, TREE_TYPE (_o1[0]), _o1[0], _o1[1]);
    1245          120 :                               res_op0 = _r1;
    1246              :                             }
    1247          120 :                             tree res_op1;
    1248          120 :                             res_op1 =  wide_int_to_tree (t0, c3 << c1);
    1249          120 :                             tree _r;
    1250          120 :                             _r = fold_build2_loc (loc, cmp, type, res_op0, res_op1);
    1251          120 :                             if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 313, __FILE__, __LINE__, true);
    1252          120 :                             return _r;
    1253              :                           }
    1254            0 : next_after_fail400:;
    1255              :                         }
    1256              :                       else
    1257              :                         {
    1258            2 :                           if ((c3 & smask) == 0
    1259              : )
    1260              :                             {
    1261            2 :                               if (TREE_SIDE_EFFECTS (captures[3])) goto next_after_fail401;
    1262            2 :                               if (TREE_SIDE_EFFECTS (captures[4])) goto next_after_fail401;
    1263            2 :                               if (TREE_SIDE_EFFECTS (captures[5])) goto next_after_fail401;
    1264            2 :                               if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail401;
    1265            2 :                               {
    1266            2 :                                 tree res_op0;
    1267            2 :                                 {
    1268            2 :                                   tree _o1[2], _r1;
    1269            2 :                                   _o1[0] = captures[2];
    1270            2 :                                   _o1[1] =  wide_int_to_tree (t0, (c2 << c1) | sb);
    1271            2 :                                   _r1 = fold_build2_loc (loc, BIT_AND_EXPR, TREE_TYPE (_o1[0]), _o1[0], _o1[1]);
    1272            2 :                                   res_op0 = _r1;
    1273              :                                 }
    1274            2 :                                 tree res_op1;
    1275            2 :                                 res_op1 =  wide_int_to_tree (t0, c3 << c1);
    1276            2 :                                 tree _r;
    1277            2 :                                 _r = fold_build2_loc (loc, cmp, type, res_op0, res_op1);
    1278            2 :                                 if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 314, __FILE__, __LINE__, true);
    1279            2 :                                 return _r;
    1280              :                               }
    1281            0 : next_after_fail401:;
    1282              :                             }
    1283              :                           else
    1284              :                             {
    1285            0 :                               if ((c2 & smask) != (c3 & smask)
    1286              : )
    1287              :                                 {
    1288            0 :                                   if (TREE_SIDE_EFFECTS (captures[3])) goto next_after_fail402;
    1289            0 :                                   if (TREE_SIDE_EFFECTS (captures[4])) goto next_after_fail402;
    1290            0 :                                   if (TREE_SIDE_EFFECTS (captures[5])) goto next_after_fail402;
    1291            0 :                                   if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail402;
    1292            0 :                                   {
    1293            0 :                                     tree _r;
    1294            0 :                                     _r =  constant_boolean_node (cmp == NE_EXPR, type);
    1295            0 :                                     if (TREE_SIDE_EFFECTS (captures[2]))
    1296            0 :                                       _r = build2_loc (loc, COMPOUND_EXPR, type, fold_ignored_result (captures[2]), _r);
    1297            0 :                                     if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 315, __FILE__, __LINE__, true);
    1298            0 :                                     return _r;
    1299              :                                   }
    1300            0 : next_after_fail402:;
    1301              :                                 }
    1302              :                               else
    1303              :                                 {
    1304            0 :                                   if (TREE_SIDE_EFFECTS (captures[3])) goto next_after_fail403;
    1305            0 :                                   if (TREE_SIDE_EFFECTS (captures[4])) goto next_after_fail403;
    1306            0 :                                   if (TREE_SIDE_EFFECTS (captures[5])) goto next_after_fail403;
    1307            0 :                                   if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail403;
    1308            0 :                                   {
    1309            0 :                                     tree res_op0;
    1310            0 :                                     {
    1311            0 :                                       tree _o1[2], _r1;
    1312            0 :                                       _o1[0] = captures[2];
    1313            0 :                                       _o1[1] =  wide_int_to_tree (t0, (c2 << c1) | sb);
    1314            0 :                                       _r1 = fold_build2_loc (loc, BIT_AND_EXPR, TREE_TYPE (_o1[0]), _o1[0], _o1[1]);
    1315            0 :                                       res_op0 = _r1;
    1316              :                                     }
    1317            0 :                                     tree res_op1;
    1318            0 :                                     res_op1 =  wide_int_to_tree (t0, (c3 << c1) | sb);
    1319            0 :                                     tree _r;
    1320            0 :                                     _r = fold_build2_loc (loc, cmp, type, res_op0, res_op1);
    1321            0 :                                     if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 316, __FILE__, __LINE__, true);
    1322            0 :                                     return _r;
    1323              :                                   }
    1324            0 : next_after_fail403:;
    1325              :                                 }
    1326              :                             }
    1327              :                         }
    1328          122 :                   }
    1329              :                 }
    1330              :             }
    1331          657 :       }
    1332              :     }
    1333              :   return NULL_TREE;
    1334              : }
    1335              : 
    1336              : tree
    1337      1084229 : generic_simplify_268 (location_t ARG_UNUSED (loc), const tree ARG_UNUSED (type),
    1338              :  tree ARG_UNUSED (_p0), tree ARG_UNUSED (_p1), tree *ARG_UNUSED (captures),
    1339              :  const enum tree_code ARG_UNUSED (cmp))
    1340              : {
    1341      1084229 :   const bool debug_dump = dump_file && (dump_flags & TDF_FOLDING);
    1342      1084229 :   {
    1343      1084229 :  poly_int64 off; tree base;
    1344      1084229 :  tree addr = (TREE_CODE (captures[1]) == SSA_NAME
    1345      1084229 :  ? gimple_assign_rhs1 (SSA_NAME_DEF_STMT (captures[1])) : captures[1]);
    1346      1084229 :       if (SSA_NAME_IS_DEFAULT_DEF (captures[0])
    1347        46753 :  && TREE_CODE (SSA_NAME_VAR (captures[0])) == PARM_DECL
    1348        46595 :  && (base = get_base_address (TREE_OPERAND (addr, 0)))
    1349        46595 :  && TREE_CODE (base) == VAR_DECL
    1350      1087467 :  && auto_var_in_fn_p (base, current_function_decl)
    1351              : )
    1352              :         {
    1353            0 :           if (cmp == NE_EXPR
    1354              : )
    1355              :             {
    1356            0 :               if (TREE_SIDE_EFFECTS (captures[1])) goto next_after_fail495;
    1357            0 :               if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail495;
    1358            0 :               {
    1359            0 :                 tree _r;
    1360            0 :                 _r =  constant_boolean_node (true, type);
    1361            0 :                 if (TREE_SIDE_EFFECTS (captures[0]))
    1362            0 :                   _r = build2_loc (loc, COMPOUND_EXPR, type, fold_ignored_result (captures[0]), _r);
    1363            0 :                 if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 399, __FILE__, __LINE__, true);
    1364            2 :                 return _r;
    1365              :               }
    1366      1084227 : next_after_fail495:;
    1367              :             }
    1368              :           else
    1369              :             {
    1370            0 :               if (TREE_SIDE_EFFECTS (captures[1])) goto next_after_fail496;
    1371            0 :               if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail496;
    1372            0 :               {
    1373            0 :                 tree _r;
    1374            0 :                 _r =  constant_boolean_node (false, type);
    1375            0 :                 if (TREE_SIDE_EFFECTS (captures[0]))
    1376            0 :                   _r = build2_loc (loc, COMPOUND_EXPR, type, fold_ignored_result (captures[0]), _r);
    1377            0 :                 if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 400, __FILE__, __LINE__, true);
    1378            0 :                 return _r;
    1379              :               }
    1380      1084227 : next_after_fail496:;
    1381              :             }
    1382              :         }
    1383              :       else
    1384              :         {
    1385      1084229 :           if ((base = get_addr_base_and_unit_offset (TREE_OPERAND (addr, 0), &off))
    1386      1082884 :  && TREE_CODE (base) == MEM_REF
    1387      1240930 :  && TREE_OPERAND (base, 0) == captures[0]
    1388              : )
    1389              :             {
    1390            2 :               {
    1391            2 :  off += mem_ref_offset (base).force_shwi ();
    1392            2 :                   if (known_ne (off, 0)
    1393              : )
    1394              :                     {
    1395            2 :                       if (TREE_SIDE_EFFECTS (captures[1])) goto next_after_fail497;
    1396            2 :                       if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail497;
    1397            2 :                       {
    1398            2 :                         tree _r;
    1399            2 :                         _r =  constant_boolean_node (cmp == NE_EXPR, type);
    1400            2 :                         if (TREE_SIDE_EFFECTS (captures[0]))
    1401            0 :                           _r = build2_loc (loc, COMPOUND_EXPR, type, fold_ignored_result (captures[0]), _r);
    1402            2 :                         if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 401, __FILE__, __LINE__, true);
    1403            2 :                         return _r;
    1404              :                       }
    1405      1084227 : next_after_fail497:;
    1406              :                     }
    1407              :                   else
    1408              :                     {
    1409            0 :                       if (known_eq (off, 0)
    1410              : )
    1411              :                         {
    1412            0 :                           if (TREE_SIDE_EFFECTS (captures[1])) goto next_after_fail498;
    1413            0 :                           if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail498;
    1414            0 :                           {
    1415            0 :                             tree _r;
    1416            0 :                             _r =  constant_boolean_node (cmp == EQ_EXPR, type);
    1417            0 :                             if (TREE_SIDE_EFFECTS (captures[0]))
    1418            0 :                               _r = build2_loc (loc, COMPOUND_EXPR, type, fold_ignored_result (captures[0]), _r);
    1419            0 :                             if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 402, __FILE__, __LINE__, true);
    1420            0 :                             return _r;
    1421              :                           }
    1422      1084227 : next_after_fail498:;
    1423              :                         }
    1424              :                     }
    1425              :               }
    1426              :             }
    1427              :         }
    1428              :   }
    1429      1084227 :   return NULL_TREE;
    1430              : }
    1431              : 
    1432              : tree
    1433            4 : generic_simplify_281 (location_t ARG_UNUSED (loc), const tree ARG_UNUSED (type),
    1434              :  tree ARG_UNUSED (_p0), tree ARG_UNUSED (_p1), tree *ARG_UNUSED (captures),
    1435              :  const enum tree_code ARG_UNUSED (cmp),
    1436              :  const enum tree_code ARG_UNUSED (ncmp))
    1437              : {
    1438            4 :   const bool debug_dump = dump_file && (dump_flags & TDF_FOLDING);
    1439            8 :   if (ANY_INTEGRAL_TYPE_P (TREE_TYPE (captures[0]))
    1440            4 :  && !TYPE_UNSIGNED (TREE_TYPE (captures[0]))
    1441            8 :  && types_match (captures[0], captures[2])
    1442              : )
    1443              :     {
    1444            4 :       if (TREE_SIDE_EFFECTS (_p0)) goto next_after_fail511;
    1445            4 :       if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail511;
    1446            4 :       {
    1447            4 :         tree res_op0;
    1448            4 :         {
    1449            4 :           tree _o1[2], _r1;
    1450            4 :           _o1[0] = captures[0];
    1451            4 :           _o1[1] = captures[2];
    1452            4 :           _r1 = fold_build2_loc (loc, BIT_XOR_EXPR, TREE_TYPE (_o1[0]), _o1[0], _o1[1]);
    1453            4 :           res_op0 = _r1;
    1454              :         }
    1455            4 :         tree res_op1;
    1456            4 :         res_op1 = captures[1];
    1457            4 :         tree _r;
    1458            4 :         _r = fold_build2_loc (loc, ncmp, type, res_op0, res_op1);
    1459            4 :         if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 414, __FILE__, __LINE__, true);
    1460            4 :         return _r;
    1461              :       }
    1462              : next_after_fail511:;
    1463              :     }
    1464              :   return NULL_TREE;
    1465              : }
    1466              : 
    1467              : tree
    1468      1054860 : generic_simplify_287 (location_t ARG_UNUSED (loc), const tree ARG_UNUSED (type),
    1469              :  tree ARG_UNUSED (_p0), tree ARG_UNUSED (_p1), tree *ARG_UNUSED (captures),
    1470              :  const enum tree_code ARG_UNUSED (cmp))
    1471              : {
    1472      1054860 :   const bool debug_dump = dump_file && (dump_flags & TDF_FOLDING);
    1473      1609125 :   if (((POINTER_TYPE_P (TREE_TYPE (captures[0]))
    1474       502458 :  && !FUNC_OR_METHOD_TYPE_P (TREE_TYPE (TREE_TYPE (captures[0])))
    1475       465393 :  && INTEGRAL_TYPE_P (TREE_TYPE (captures[1]))
    1476         9297 :  && !(
    1477              : 1
    1478         9229 :  && TREE_CODE (TREE_TYPE (captures[0])) == REFERENCE_TYPE
    1479           68 :  && (flag_sanitize & (SANITIZE_NULL | SANITIZE_ALIGNMENT))))
    1480      1045643 :  || (INTEGRAL_TYPE_P (TREE_TYPE (captures[0]))
    1481       552273 :  && POINTER_TYPE_P (TREE_TYPE (captures[1]))
    1482         2219 :  && !FUNC_OR_METHOD_TYPE_P (TREE_TYPE (TREE_TYPE (captures[1])))))
    1483      1065808 :  && TYPE_PRECISION (TREE_TYPE (captures[0])) == TYPE_PRECISION (TREE_TYPE (captures[1]))
    1484              : )
    1485              :     {
    1486         9886 :       if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail531;
    1487         9886 :       {
    1488         9886 :         tree res_op0;
    1489         9886 :         res_op0 = captures[0];
    1490         9886 :         tree res_op1;
    1491         9886 :         {
    1492         9886 :           tree _o1[1], _r1;
    1493         9886 :           _o1[0] = captures[1];
    1494         9886 :           if (TREE_TYPE (_o1[0]) != TREE_TYPE (res_op0))
    1495              :             {
    1496         9886 :               _r1 = fold_build1_loc (loc, NOP_EXPR, TREE_TYPE (res_op0), _o1[0]);
    1497              :             }
    1498              :           else
    1499              :             _r1 = _o1[0];
    1500         9886 :           res_op1 = _r1;
    1501              :         }
    1502         9886 :         tree _r;
    1503         9886 :         _r = fold_build2_loc (loc, cmp, type, res_op0, res_op1);
    1504         9886 :         if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 425, __FILE__, __LINE__, true);
    1505         9886 :         return _r;
    1506              :       }
    1507            0 : next_after_fail531:;
    1508              :     }
    1509              :   return NULL_TREE;
    1510              : }
    1511              : 
    1512              : tree
    1513       591819 : generic_simplify_291 (location_t ARG_UNUSED (loc), const tree ARG_UNUSED (type),
    1514              :  tree ARG_UNUSED (_p0), tree ARG_UNUSED (_p1), tree *ARG_UNUSED (captures),
    1515              :  const enum tree_code ARG_UNUSED (cmp),
    1516              :  const enum tree_code ARG_UNUSED (rcmp))
    1517              : {
    1518       591819 :   const bool debug_dump = dump_file && (dump_flags & TDF_FOLDING);
    1519      1183638 :   if (!TREE_OVERFLOW (captures[0]) && !TREE_OVERFLOW (captures[2])
    1520      1183638 :  && TYPE_OVERFLOW_UNDEFINED (TREE_TYPE (captures[1]))
    1521              : )
    1522              :     {
    1523         4397 :       {
    1524         4397 :  tree res = int_const_binop (MINUS_EXPR, captures[0], captures[2]);
    1525         4397 :           if (TREE_OVERFLOW (res)
    1526              : )
    1527              :             {
    1528           48 :               if (cmp == NE_EXPR
    1529              : )
    1530              :                 {
    1531            0 :                   if (TREE_SIDE_EFFECTS (captures[0])) goto next_after_fail540;
    1532            0 :                   if (TREE_SIDE_EFFECTS (captures[2])) goto next_after_fail540;
    1533            0 :                   if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail540;
    1534            0 :                   {
    1535            0 :                     tree _r;
    1536            0 :                     _r =  constant_boolean_node (true, type);
    1537            0 :                     if (TREE_SIDE_EFFECTS (captures[1]))
    1538            0 :                       _r = build2_loc (loc, COMPOUND_EXPR, type, fold_ignored_result (captures[1]), _r);
    1539            0 :                     if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 434, __FILE__, __LINE__, true);
    1540            0 :                     return _r;
    1541              :                   }
    1542              : next_after_fail540:;
    1543              :                 }
    1544              :               else
    1545              :                 {
    1546           48 :                   if (cmp == EQ_EXPR
    1547              : )
    1548              :                     {
    1549            0 :                       if (TREE_SIDE_EFFECTS (captures[0])) goto next_after_fail541;
    1550            0 :                       if (TREE_SIDE_EFFECTS (captures[2])) goto next_after_fail541;
    1551            0 :                       if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail541;
    1552            0 :                       {
    1553            0 :                         tree _r;
    1554            0 :                         _r =  constant_boolean_node (false, type);
    1555            0 :                         if (TREE_SIDE_EFFECTS (captures[1]))
    1556            0 :                           _r = build2_loc (loc, COMPOUND_EXPR, type, fold_ignored_result (captures[1]), _r);
    1557            0 :                         if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 435, __FILE__, __LINE__, true);
    1558            0 :                         return _r;
    1559              :                       }
    1560              : next_after_fail541:;
    1561              :                     }
    1562              :                   else
    1563              :                     {
    1564           48 :                       if (TREE_SIDE_EFFECTS (captures[0])) goto next_after_fail542;
    1565           48 :                       if (TREE_SIDE_EFFECTS (captures[2])) goto next_after_fail542;
    1566           48 :                       if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail542;
    1567           48 :                       {
    1568           48 :                         tree _r;
    1569           48 :  bool less = cmp == LE_EXPR || cmp == LT_EXPR;
    1570           48 :  bool ovf_high = wi::lt_p (wi::to_wide (captures[0]), 0,
    1571           48 :  TYPE_SIGN (TREE_TYPE (captures[0])));                  _r = 
    1572           48 :  constant_boolean_node (less == ovf_high, type);
    1573           48 :                         if (TREE_SIDE_EFFECTS (captures[1]))
    1574            0 :                           _r = build2_loc (loc, COMPOUND_EXPR, type, fold_ignored_result (captures[1]), _r);
    1575           48 :                         if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 436, __FILE__, __LINE__, true);
    1576           48 :                         return _r;
    1577              :                       }
    1578              : next_after_fail542:;
    1579              :                     }
    1580              :                 }
    1581              :             }
    1582              :           else
    1583              :             {
    1584         4349 :               if (TREE_SIDE_EFFECTS (captures[0])) goto next_after_fail543;
    1585         4349 :               if (TREE_SIDE_EFFECTS (captures[2])) goto next_after_fail543;
    1586         4349 :               if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail543;
    1587         4349 :               {
    1588         4349 :                 tree res_op0;
    1589         4349 :                 res_op0 = captures[1];
    1590         4349 :                 tree res_op1;
    1591         4349 :                 res_op1 =  res;
    1592         4349 :                 tree _r;
    1593         4349 :                 _r = fold_build2_loc (loc, rcmp, type, res_op0, res_op1);
    1594         4349 :                 if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 437, __FILE__, __LINE__, true);
    1595         4349 :                 return _r;
    1596              :               }
    1597              : next_after_fail543:;
    1598              :             }
    1599              :       }
    1600              :     }
    1601              :   else
    1602              :     {
    1603       587422 :       if (TYPE_UNSIGNED (TREE_TYPE (captures[1]))
    1604              : )
    1605              :         {
    1606       587316 :           if (cmp == EQ_EXPR || cmp == NE_EXPR
    1607              : )
    1608              :             {
    1609        37455 :               if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail544;
    1610        37455 :               {
    1611        37455 :                 tree res_op0;
    1612        37455 :                 res_op0 = captures[1];
    1613        37455 :                 tree res_op1;
    1614        37455 :                 {
    1615        37455 :                   tree _o1[2], _r1;
    1616        37455 :                   _o1[0] = captures[0];
    1617        37455 :                   _o1[1] = captures[2];
    1618        37455 :                   _r1 = fold_build2_loc (loc, MINUS_EXPR, TREE_TYPE (_o1[0]), _o1[0], _o1[1]);
    1619        37455 :                   res_op1 = _r1;
    1620              :                 }
    1621        37455 :                 tree _r;
    1622        37455 :                 _r = fold_build2_loc (loc, cmp, type, res_op0, res_op1);
    1623        37455 :                 if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 438, __FILE__, __LINE__, true);
    1624        37455 :                 return _r;
    1625              :               }
    1626            0 : next_after_fail544:;
    1627              :             }
    1628              :           else
    1629              :             {
    1630       549861 :               if (cmp == LE_EXPR || cmp == GT_EXPR
    1631              : )
    1632              :                 {
    1633       549861 :                   if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail545;
    1634       549861 :                   {
    1635       549861 :                     if (! tree_invariant_p (captures[2])) goto next_after_fail545;
    1636       549861 :                     tree res_op0;
    1637       549861 :                     {
    1638       549861 :                       tree _o1[2], _r1;
    1639       549861 :                       _o1[0] = captures[1];
    1640       549861 :                       {
    1641       549861 :                         tree _o2[2], _r2;
    1642       549861 :                         _o2[0] = unshare_expr (captures[2]);
    1643       549861 :                         _o2[1] = captures[0];
    1644       549861 :                         _r2 = fold_build2_loc (loc, MINUS_EXPR, TREE_TYPE (_o2[0]), _o2[0], _o2[1]);
    1645       549861 :                         _o1[1] = _r2;
    1646              :                       }
    1647       549861 :                       _r1 = fold_build2_loc (loc, PLUS_EXPR, TREE_TYPE (_o1[0]), _o1[0], _o1[1]);
    1648       549861 :                       res_op0 = _r1;
    1649              :                     }
    1650       549861 :                     tree res_op1;
    1651       549861 :                     res_op1 = captures[2];
    1652       549861 :                     tree _r;
    1653       549861 :                     _r = fold_build2_loc (loc, cmp, type, res_op0, res_op1);
    1654       549861 :                     if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 439, __FILE__, __LINE__, true);
    1655       549861 :                     return _r;
    1656              :                   }
    1657              : next_after_fail545:;
    1658              :                 }
    1659              :               else
    1660              :                 {
    1661            0 :                   if (cmp == LT_EXPR || cmp == GE_EXPR
    1662              : )
    1663              :                     {
    1664            0 :                       if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail546;
    1665            0 :                       {
    1666            0 :                         if (! tree_invariant_p (captures[2])) goto next_after_fail546;
    1667            0 :                         tree res_op0;
    1668            0 :                         {
    1669            0 :                           tree _o1[2], _r1;
    1670            0 :                           _o1[0] = captures[1];
    1671            0 :                           {
    1672            0 :                             tree _o2[2], _r2;
    1673            0 :                             _o2[0] = unshare_expr (captures[2]);
    1674            0 :                             {
    1675            0 :                               tree _o3[2], _r3;
    1676            0 :                               _o3[0] = captures[0];
    1677            0 :                               _o3[1] =  build_one_cst (TREE_TYPE (captures[1]));
    1678            0 :                               _r3 = fold_build2_loc (loc, PLUS_EXPR, TREE_TYPE (_o3[0]), _o3[0], _o3[1]);
    1679            0 :                               _o2[1] = _r3;
    1680              :                             }
    1681            0 :                             _r2 = fold_build2_loc (loc, MINUS_EXPR, TREE_TYPE (_o2[0]), _o2[0], _o2[1]);
    1682            0 :                             _o1[1] = _r2;
    1683              :                           }
    1684            0 :                           _r1 = fold_build2_loc (loc, PLUS_EXPR, TREE_TYPE (_o1[0]), _o1[0], _o1[1]);
    1685            0 :                           res_op0 = _r1;
    1686              :                         }
    1687            0 :                         tree res_op1;
    1688            0 :                         res_op1 = captures[2];
    1689            0 :                         tree _r;
    1690            0 :                         _r = fold_build2_loc (loc, cmp, type, res_op0, res_op1);
    1691            0 :                         if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 440, __FILE__, __LINE__, true);
    1692            0 :                         return _r;
    1693              :                       }
    1694              : next_after_fail546:;
    1695              :                     }
    1696              :                 }
    1697              :             }
    1698              :         }
    1699              :       else
    1700              :         {
    1701          106 :           if (!TYPE_UNSIGNED (TREE_TYPE (captures[1]))
    1702          106 :  && TYPE_OVERFLOW_WRAPS (TREE_TYPE (captures[1]))
    1703              : )
    1704              :             {
    1705          106 :               if (cmp == EQ_EXPR || cmp == NE_EXPR
    1706              : )
    1707              :                 {
    1708            0 :                   if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail547;
    1709            0 :                   {
    1710            0 :                     tree res_op0;
    1711            0 :                     res_op0 = captures[1];
    1712            0 :                     tree res_op1;
    1713            0 :                     {
    1714            0 :                       tree _o1[2], _r1;
    1715            0 :                       _o1[0] = captures[0];
    1716            0 :                       _o1[1] = captures[2];
    1717            0 :                       _r1 = fold_build2_loc (loc, MINUS_EXPR, TREE_TYPE (_o1[0]), _o1[0], _o1[1]);
    1718            0 :                       res_op1 = _r1;
    1719              :                     }
    1720            0 :                     tree _r;
    1721            0 :                     _r = fold_build2_loc (loc, cmp, type, res_op0, res_op1);
    1722            0 :                     if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 441, __FILE__, __LINE__, true);
    1723            0 :                     return _r;
    1724              :                   }
    1725            0 : next_after_fail547:;
    1726              :                 }
    1727              :               else
    1728              :                 {
    1729          106 :                   if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail548;
    1730          106 :                   {
    1731          106 :                     tree res_op0;
    1732          106 :                     {
    1733          106 :                       tree _o1[2], _r1;
    1734          106 :                       _o1[0] = captures[1];
    1735          106 :                       {
    1736          106 :                         tree _o2[2], _r2;
    1737          106 :                         _o2[0] = captures[0];
    1738          106 :                         _o2[1] =  build_one_cst (TREE_TYPE (captures[1]));
    1739          106 :                         _r2 = fold_build2_loc (loc, PLUS_EXPR, TREE_TYPE (_o2[0]), _o2[0], _o2[1]);
    1740          106 :                         _o1[1] = _r2;
    1741              :                       }
    1742          106 :                       _r1 = fold_build2_loc (loc, MINUS_EXPR, TREE_TYPE (_o1[0]), _o1[0], _o1[1]);
    1743          106 :                       res_op0 = _r1;
    1744              :                     }
    1745          106 :                     tree res_op1;
    1746          106 :                     {
    1747          106 :                       tree _o1[1], _r1;
    1748          106 :                       _o1[0] = captures[2];
    1749          106 :                       _r1 = fold_build1_loc (loc, BIT_NOT_EXPR, TREE_TYPE (_o1[0]), _o1[0]);
    1750          106 :                       res_op1 = _r1;
    1751              :                     }
    1752          106 :                     tree _r;
    1753          106 :                     _r = fold_build2_loc (loc, rcmp, type, res_op0, res_op1);
    1754          106 :                     if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 442, __FILE__, __LINE__, true);
    1755          106 :                     return _r;
    1756              :                   }
    1757            0 : next_after_fail548:;
    1758              :                 }
    1759              :             }
    1760              :         }
    1761              :     }
    1762              :   return NULL_TREE;
    1763              : }
    1764              : 
    1765              : tree
    1766            6 : generic_simplify_332 (location_t ARG_UNUSED (loc), const tree ARG_UNUSED (type),
    1767              :  tree ARG_UNUSED (_p0), tree ARG_UNUSED (_p1), tree *ARG_UNUSED (captures),
    1768              :  const combined_fn ARG_UNUSED (SIN),
    1769              :  const combined_fn ARG_UNUSED (COS),
    1770              :  const combined_fn ARG_UNUSED (TAN))
    1771              : {
    1772            6 :   const bool debug_dump = dump_file && (dump_flags & TDF_FOLDING);
    1773            6 :   if (flag_unsafe_math_optimizations && canonicalize_math_p ()
    1774              : )
    1775              :     {
    1776            6 :       if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail601;
    1777            6 :       {
    1778            6 :         tree res_op0;
    1779            6 :         res_op0 = captures[1];
    1780            6 :         tree _r;
    1781            6 :         _r = maybe_build_call_expr_loc (loc, TAN, type, 1, res_op0);
    1782            6 :         if (!_r)
    1783            0 :           goto next_after_fail601;
    1784            6 :         if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 493, __FILE__, __LINE__, true);
    1785            6 :         return _r;
    1786              :       }
    1787              : next_after_fail601:;
    1788              :     }
    1789              :   return NULL_TREE;
    1790              : }
    1791              : 
    1792              : tree
    1793            0 : generic_simplify_340 (location_t ARG_UNUSED (loc), const tree ARG_UNUSED (type),
    1794              :  tree ARG_UNUSED (_p0), tree ARG_UNUSED (_p1), tree ARG_UNUSED (_p2), tree *ARG_UNUSED (captures),
    1795              :  const enum tree_code ARG_UNUSED (op),
    1796              :  const combined_fn ARG_UNUSED (bt),
    1797              :  const combined_fn ARG_UNUSED (bf),
    1798              :  const combined_fn ARG_UNUSED (floor),
    1799              :  const combined_fn ARG_UNUSED (ceil))
    1800              : {
    1801            0 :   const bool debug_dump = dump_file && (dump_flags & TDF_FOLDING);
    1802            0 :   if (!HONOR_SIGNED_ZEROS (type) && !HONOR_SIGN_DEPENDENT_ROUNDING (type)
    1803              : )
    1804              :     {
    1805            0 :       if (TREE_SIDE_EFFECTS (captures[1])) goto next_after_fail609;
    1806            0 :       if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail609;
    1807            0 :       {
    1808            0 :         tree res_op0;
    1809            0 :         {
    1810            0 :           tree _o1[2], _r1;
    1811            0 :           _o1[0] = captures[1];
    1812            0 :           _o1[1] =  build_real (type, dconsthalf);
    1813            0 :           _r1 = fold_build2_loc (loc, PLUS_EXPR, TREE_TYPE (_o1[0]), _o1[0], _o1[1]);
    1814            0 :           res_op0 = _r1;
    1815              :         }
    1816            0 :         tree _r;
    1817            0 :         _r = maybe_build_call_expr_loc (loc, floor, type, 1, res_op0);
    1818            0 :         if (!_r)
    1819            0 :           goto next_after_fail609;
    1820            0 :         if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 501, __FILE__, __LINE__, true);
    1821            0 :         return _r;
    1822              :       }
    1823              : next_after_fail609:;
    1824              :     }
    1825              :   return NULL_TREE;
    1826              : }
    1827              : 
    1828              : tree
    1829            0 : generic_simplify_349 (location_t ARG_UNUSED (loc), const tree ARG_UNUSED (type),
    1830              :  tree ARG_UNUSED (_p0), tree ARG_UNUSED (_p1), tree ARG_UNUSED (_p2), tree *ARG_UNUSED (captures),
    1831              :  const enum tree_code ARG_UNUSED (cmp))
    1832              : {
    1833            0 :   const bool debug_dump = dump_file && (dump_flags & TDF_FOLDING);
    1834            0 :   if (INTEGRAL_TYPE_P (type)
    1835              : )
    1836              :     {
    1837            0 :       if (TREE_SIDE_EFFECTS (captures[0])) goto next_after_fail624;
    1838            0 :       if (TREE_SIDE_EFFECTS (captures[1])) goto next_after_fail624;
    1839            0 :       if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail624;
    1840            0 :       {
    1841            0 :         tree res_op0;
    1842            0 :         res_op0 = captures[0];
    1843            0 :         tree res_op1;
    1844            0 :         res_op1 = captures[1];
    1845            0 :         tree _r;
    1846            0 :         _r = fold_build2_loc (loc, MAX_EXPR, type, res_op0, res_op1);
    1847            0 :         if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 516, __FILE__, __LINE__, true);
    1848            0 :         return _r;
    1849              :       }
    1850              : next_after_fail624:;
    1851              :     }
    1852              :   return NULL_TREE;
    1853              : }
    1854              : 
    1855              : tree
    1856            0 : generic_simplify_353 (location_t ARG_UNUSED (loc), const tree ARG_UNUSED (type),
    1857              :  tree ARG_UNUSED (_p0), tree ARG_UNUSED (_p1), tree ARG_UNUSED (_p2), tree *ARG_UNUSED (captures),
    1858              :  const enum tree_code ARG_UNUSED (op))
    1859              : {
    1860            0 :   const bool debug_dump = dump_file && (dump_flags & TDF_FOLDING);
    1861            0 :   if (TREE_SIDE_EFFECTS (_p0)) goto next_after_fail628;
    1862            0 :   if (TREE_SIDE_EFFECTS (_p2)) goto next_after_fail628;
    1863            0 :   if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail628;
    1864            0 :   {
    1865            0 :     tree _r;
    1866            0 :     _r = captures[2];
    1867            0 :     if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 520, __FILE__, __LINE__, true);
    1868              :     return _r;
    1869              :   }
    1870              : next_after_fail628:;
    1871              :   return NULL_TREE;
    1872              : }
    1873              : 
    1874              : tree
    1875           51 : generic_simplify_358 (location_t ARG_UNUSED (loc), const tree ARG_UNUSED (type),
    1876              :  tree ARG_UNUSED (_p0), tree ARG_UNUSED (_p1), tree ARG_UNUSED (_p2), tree *ARG_UNUSED (captures),
    1877              :  const enum tree_code ARG_UNUSED (op))
    1878              : {
    1879           51 :   const bool debug_dump = dump_file && (dump_flags & TDF_FOLDING);
    1880           51 :   if (bitwise_equal_p (captures[0], captures[2])
    1881            1 :  && tree_expr_nonzero_p (captures[3])
    1882           52 :  && expr_no_side_effects_p (captures[2])
    1883              : )
    1884              :     {
    1885            1 :       if (TREE_SIDE_EFFECTS (_p0)) goto next_after_fail633;
    1886            1 :       if (TREE_SIDE_EFFECTS (_p1)) goto next_after_fail633;
    1887            1 :       if (TREE_SIDE_EFFECTS (_p2)) goto next_after_fail633;
    1888            1 :       if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail633;
    1889            1 :       {
    1890            1 :         tree _r;
    1891            1 :         _r = captures[1];
    1892            1 :         if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 525, __FILE__, __LINE__, true);
    1893            1 :         return _r;
    1894              :       }
    1895              : next_after_fail633:;
    1896              :     }
    1897              :   return NULL_TREE;
    1898              : }
    1899              : 
    1900              : tree
    1901            0 : generic_simplify_366 (location_t ARG_UNUSED (loc), const tree ARG_UNUSED (type),
    1902              :  tree ARG_UNUSED (_p0), tree ARG_UNUSED (_p1), tree ARG_UNUSED (_p2), tree *ARG_UNUSED (captures),
    1903              :  const enum tree_code ARG_UNUSED (cmp))
    1904              : {
    1905            0 :   const bool debug_dump = dump_file && (dump_flags & TDF_FOLDING);
    1906            0 :   if (TREE_SIDE_EFFECTS (_p0)) goto next_after_fail642;
    1907            0 :   if (TREE_SIDE_EFFECTS (_p1)) goto next_after_fail642;
    1908            0 :   if (TREE_SIDE_EFFECTS (_p2)) goto next_after_fail642;
    1909            0 :   if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail642;
    1910            0 :   {
    1911            0 :     tree _r;
    1912            0 :     _r = captures[0];
    1913            0 :     if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 534, __FILE__, __LINE__, true);
    1914              :     return _r;
    1915              :   }
    1916              : next_after_fail642:;
    1917              :   return NULL_TREE;
    1918              : }
    1919              : 
    1920              : tree
    1921          396 : generic_simplify_374 (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              :  const enum tree_code ARG_UNUSED (neg_op))
    1925              : {
    1926          396 :   const bool debug_dump = dump_file && (dump_flags & TDF_FOLDING);
    1927          396 :   if (flag_unsafe_math_optimizations
    1928              : )
    1929              :     {
    1930            4 :       if (!HONOR_SIGNED_ZEROS (captures[1]) && !HONOR_INFINITIES (captures[1])
    1931              : )
    1932              :         {
    1933            4 :           if (real_less (&dconst0, TREE_REAL_CST_PTR (captures[0]))
    1934              : )
    1935              :             {
    1936            2 :               if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail652;
    1937            2 :               {
    1938            2 :                 tree res_op0;
    1939            2 :                 res_op0 = captures[1];
    1940            2 :                 tree res_op1;
    1941            2 :                 res_op1 = captures[2];
    1942            2 :                 tree _r;
    1943            2 :                 _r = fold_build2_loc (loc, op, type, res_op0, res_op1);
    1944            2 :                 if (TREE_SIDE_EFFECTS (captures[0]))
    1945            0 :                   _r = build2_loc (loc, COMPOUND_EXPR, type, fold_ignored_result (captures[0]), _r);
    1946            2 :                 if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 542, __FILE__, __LINE__, true);
    1947            2 :                 return _r;
    1948              :               }
    1949            0 : next_after_fail652:;
    1950              :             }
    1951              :           else
    1952              :             {
    1953            2 :               if (real_less (TREE_REAL_CST_PTR (captures[0]), &dconst0)
    1954              : )
    1955              :                 {
    1956            2 :                   if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail653;
    1957            2 :                   {
    1958            2 :                     tree res_op0;
    1959            2 :                     res_op0 = captures[1];
    1960            2 :                     tree res_op1;
    1961            2 :                     res_op1 = captures[2];
    1962            2 :                     tree _r;
    1963            2 :                     _r = fold_build2_loc (loc, neg_op, type, res_op0, res_op1);
    1964            2 :                     if (TREE_SIDE_EFFECTS (captures[0]))
    1965            0 :                       _r = build2_loc (loc, COMPOUND_EXPR, type, fold_ignored_result (captures[0]), _r);
    1966            2 :                     if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 543, __FILE__, __LINE__, true);
    1967            2 :                     return _r;
    1968              :                   }
    1969            0 : next_after_fail653:;
    1970              :                 }
    1971              :             }
    1972              :         }
    1973              :     }
    1974              :   return NULL_TREE;
    1975              : }
    1976              : 
    1977              : tree
    1978            0 : generic_simplify_384 (location_t ARG_UNUSED (loc), const tree ARG_UNUSED (type),
    1979              :  tree ARG_UNUSED (_p0), tree ARG_UNUSED (_p1), tree *ARG_UNUSED (captures),
    1980              :  const enum tree_code ARG_UNUSED (ltge),
    1981              :  const enum tree_code ARG_UNUSED (neeq))
    1982              : {
    1983            0 :   const bool debug_dump = dump_file && (dump_flags & TDF_FOLDING);
    1984            0 :   if (!HONOR_NANS (captures[0])
    1985              : )
    1986              :     {
    1987            0 :       if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail665;
    1988            0 :       {
    1989            0 :         tree res_op0;
    1990            0 :         res_op0 = captures[0];
    1991            0 :         tree res_op1;
    1992            0 :         res_op1 = captures[1];
    1993            0 :         tree _r;
    1994            0 :         _r = fold_build2_loc (loc, neeq, type, res_op0, res_op1);
    1995            0 :         if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 555, __FILE__, __LINE__, true);
    1996            0 :         return _r;
    1997              :       }
    1998            0 : next_after_fail665:;
    1999              :     }
    2000              :   return NULL_TREE;
    2001              : }
    2002              : 
    2003              : tree
    2004      1119294 : generic_simplify_392 (location_t ARG_UNUSED (loc), const tree ARG_UNUSED (type),
    2005              :  tree ARG_UNUSED (_p0), tree ARG_UNUSED (_p1), tree *ARG_UNUSED (captures),
    2006              :  const enum tree_code ARG_UNUSED (cmp))
    2007              : {
    2008      1119294 :   const bool debug_dump = dump_file && (dump_flags & TDF_FOLDING);
    2009      2238588 :   if ((INTEGRAL_TYPE_P (TREE_TYPE (captures[2]))
    2010          469 :  || POINTER_TYPE_P (TREE_TYPE (captures[2]))
    2011           94 :  || VECTOR_INTEGER_TYPE_P (TREE_TYPE (captures[2])))
    2012      2238588 :  && tree_nop_conversion_p (TREE_TYPE (captures[0]), TREE_TYPE (captures[1]))
    2013              : )
    2014              :     {
    2015       942554 :       {
    2016       942554 :  tree cst = uniform_integer_cst_p (captures[2]);
    2017       942554 :  tree arg1_type = TREE_TYPE (cst);
    2018       942554 :  unsigned int prec = TYPE_PRECISION (arg1_type);
    2019       942554 :  wide_int max = wi::max_value (arg1_type);
    2020       942554 :  wide_int signed_max = wi::max_value (prec, SIGNED);
    2021       942554 :  wide_int min = wi::min_value (arg1_type);
    2022       942554 :           if (wi::to_wide (cst) == max
    2023              : )
    2024              :             {
    2025          671 :               if (cmp == GT_EXPR
    2026              : )
    2027              :                 {
    2028          449 :                   if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail675;
    2029          449 :                   {
    2030          449 :                     tree _r;
    2031          449 :                     _r =  constant_boolean_node (false, type);
    2032          449 :                     if (TREE_SIDE_EFFECTS (captures[1]))
    2033            0 :                       _r = build2_loc (loc, COMPOUND_EXPR, type, fold_ignored_result (captures[1]), _r);
    2034          449 :                     if (TREE_SIDE_EFFECTS (captures[2]))
    2035            0 :                       _r = build2_loc (loc, COMPOUND_EXPR, type, fold_ignored_result (captures[2]), _r);
    2036          449 :                     if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 565, __FILE__, __LINE__, true);
    2037          449 :                     return _r;
    2038              :                   }
    2039            0 : next_after_fail675:;
    2040              :                 }
    2041              :               else
    2042              :                 {
    2043          222 :                   if (cmp == GE_EXPR
    2044              : )
    2045              :                     {
    2046            0 :                       if (TREE_SIDE_EFFECTS (_p0)) goto next_after_fail676;
    2047            0 :                       if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail676;
    2048            0 :                       {
    2049            0 :                         tree res_op0;
    2050            0 :                         res_op0 = captures[0];
    2051            0 :                         tree res_op1;
    2052            0 :                         res_op1 = captures[2];
    2053            0 :                         tree _r;
    2054            0 :                         _r = fold_build2_loc (loc, EQ_EXPR, type, res_op0, res_op1);
    2055            0 :                         if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 566, __FILE__, __LINE__, true);
    2056            0 :                         return _r;
    2057              :                       }
    2058       879465 : next_after_fail676:;
    2059              :                     }
    2060              :                   else
    2061              :                     {
    2062          222 :                       if (cmp == LE_EXPR
    2063              : )
    2064              :                         {
    2065          222 :                           if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail677;
    2066          222 :                           {
    2067          222 :                             tree _r;
    2068          222 :                             _r =  constant_boolean_node (true, type);
    2069          222 :                             if (TREE_SIDE_EFFECTS (captures[1]))
    2070            0 :                               _r = build2_loc (loc, COMPOUND_EXPR, type, fold_ignored_result (captures[1]), _r);
    2071          222 :                             if (TREE_SIDE_EFFECTS (captures[2]))
    2072            0 :                               _r = build2_loc (loc, COMPOUND_EXPR, type, fold_ignored_result (captures[2]), _r);
    2073          222 :                             if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 567, __FILE__, __LINE__, true);
    2074          222 :                             return _r;
    2075              :                           }
    2076            0 : next_after_fail677:;
    2077              :                         }
    2078              :                       else
    2079              :                         {
    2080            0 :                           if (cmp == LT_EXPR
    2081              : )
    2082              :                             {
    2083            0 :                               if (TREE_SIDE_EFFECTS (_p0)) goto next_after_fail678;
    2084            0 :                               if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail678;
    2085            0 :                               {
    2086            0 :                                 tree res_op0;
    2087            0 :                                 res_op0 = captures[0];
    2088            0 :                                 tree res_op1;
    2089            0 :                                 res_op1 = captures[2];
    2090            0 :                                 tree _r;
    2091            0 :                                 _r = fold_build2_loc (loc, NE_EXPR, type, res_op0, res_op1);
    2092            0 :                                 if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 568, __FILE__, __LINE__, true);
    2093            0 :                                 return _r;
    2094              :                               }
    2095       879465 : next_after_fail678:;
    2096              :                             }
    2097              :                         }
    2098              :                     }
    2099              :                 }
    2100              :             }
    2101              :           else
    2102              :             {
    2103       941883 :               if (wi::to_wide (cst) == min
    2104              : )
    2105              :                 {
    2106        57419 :                   if (cmp == LT_EXPR
    2107              : )
    2108              :                     {
    2109         2816 :                       if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail679;
    2110         2816 :                       {
    2111         2816 :                         tree _r;
    2112         2816 :                         _r =  constant_boolean_node (false, type);
    2113         2816 :                         if (TREE_SIDE_EFFECTS (captures[1]))
    2114            6 :                           _r = build2_loc (loc, COMPOUND_EXPR, type, fold_ignored_result (captures[1]), _r);
    2115         2816 :                         if (TREE_SIDE_EFFECTS (captures[2]))
    2116            0 :                           _r = build2_loc (loc, COMPOUND_EXPR, type, fold_ignored_result (captures[2]), _r);
    2117         2816 :                         if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 569, __FILE__, __LINE__, true);
    2118         2816 :                         return _r;
    2119              :                       }
    2120            0 : next_after_fail679:;
    2121              :                     }
    2122              :                   else
    2123              :                     {
    2124        54603 :                       if (cmp == LE_EXPR
    2125              : )
    2126              :                         {
    2127        15148 :                           if (TREE_SIDE_EFFECTS (_p0)) goto next_after_fail680;
    2128        14030 :                           if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail680;
    2129        14030 :                           {
    2130        14030 :                             tree res_op0;
    2131        14030 :                             res_op0 = captures[0];
    2132        14030 :                             tree res_op1;
    2133        14030 :                             res_op1 = captures[2];
    2134        14030 :                             tree _r;
    2135        14030 :                             _r = fold_build2_loc (loc, EQ_EXPR, type, res_op0, res_op1);
    2136        14030 :                             if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 570, __FILE__, __LINE__, true);
    2137        14030 :                             return _r;
    2138              :                           }
    2139       879465 : next_after_fail680:;
    2140              :                         }
    2141              :                       else
    2142              :                         {
    2143        39455 :                           if (cmp == GE_EXPR
    2144              : )
    2145              :                             {
    2146         8435 :                               if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail681;
    2147         8435 :                               {
    2148         8435 :                                 tree _r;
    2149         8435 :                                 _r =  constant_boolean_node (true, type);
    2150         8435 :                                 if (TREE_SIDE_EFFECTS (captures[1]))
    2151           51 :                                   _r = build2_loc (loc, COMPOUND_EXPR, type, fold_ignored_result (captures[1]), _r);
    2152         8435 :                                 if (TREE_SIDE_EFFECTS (captures[2]))
    2153            0 :                                   _r = build2_loc (loc, COMPOUND_EXPR, type, fold_ignored_result (captures[2]), _r);
    2154         8435 :                                 if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 571, __FILE__, __LINE__, true);
    2155         8435 :                                 return _r;
    2156              :                               }
    2157            0 : next_after_fail681:;
    2158              :                             }
    2159              :                           else
    2160              :                             {
    2161        31020 :                               if (cmp == GT_EXPR
    2162              : )
    2163              :                                 {
    2164        31020 :                                   if (TREE_SIDE_EFFECTS (_p0)) goto next_after_fail682;
    2165        25430 :                                   if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail682;
    2166        25430 :                                   {
    2167        25430 :                                     tree res_op0;
    2168        25430 :                                     res_op0 = captures[0];
    2169        25430 :                                     tree res_op1;
    2170        25430 :                                     res_op1 = captures[2];
    2171        25430 :                                     tree _r;
    2172        25430 :                                     _r = fold_build2_loc (loc, NE_EXPR, type, res_op0, res_op1);
    2173        25430 :                                     if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 572, __FILE__, __LINE__, true);
    2174        25430 :                                     return _r;
    2175              :                                   }
    2176       879465 : next_after_fail682:;
    2177              :                                 }
    2178              :                             }
    2179              :                         }
    2180              :                     }
    2181              :                 }
    2182              :               else
    2183              :                 {
    2184       884464 :                   if (wi::to_wide (cst) == max - 1
    2185              : )
    2186              :                     {
    2187         6683 :                       if (cmp == GT_EXPR
    2188              : )
    2189              :                         {
    2190         1404 :                           if (TREE_SIDE_EFFECTS (_p0)) goto next_after_fail683;
    2191         1404 :                           if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail683;
    2192         1404 :                           {
    2193         1404 :                             tree res_op0;
    2194         1404 :                             res_op0 = captures[0];
    2195         1404 :                             tree res_op1;
    2196         1404 :                             res_op1 =  build_uniform_cst (TREE_TYPE (captures[2]),
    2197         1404 :  wide_int_to_tree (TREE_TYPE (cst),
    2198         1404 :  wi::to_wide (cst)
    2199         2808 :  + 1));
    2200         1404 :                             tree _r;
    2201         1404 :                             _r = fold_build2_loc (loc, EQ_EXPR, type, res_op0, res_op1);
    2202         1404 :                             if (TREE_SIDE_EFFECTS (captures[2]))
    2203            0 :                               _r = build2_loc (loc, COMPOUND_EXPR, type, fold_ignored_result (captures[2]), _r);
    2204         1404 :                             if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 573, __FILE__, __LINE__, true);
    2205         1404 :                             return _r;
    2206              :                           }
    2207       879465 : next_after_fail683:;
    2208              :                         }
    2209              :                       else
    2210              :                         {
    2211         5279 :                           if (cmp == LE_EXPR
    2212              : )
    2213              :                             {
    2214         5279 :                               if (TREE_SIDE_EFFECTS (_p0)) goto next_after_fail684;
    2215         5279 :                               if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail684;
    2216         5279 :                               {
    2217         5279 :                                 tree res_op0;
    2218         5279 :                                 res_op0 = captures[0];
    2219         5279 :                                 tree res_op1;
    2220         5279 :                                 res_op1 =  build_uniform_cst (TREE_TYPE (captures[2]),
    2221         5279 :  wide_int_to_tree (TREE_TYPE (cst),
    2222         5279 :  wi::to_wide (cst)
    2223        10558 :  + 1));
    2224         5279 :                                 tree _r;
    2225         5279 :                                 _r = fold_build2_loc (loc, NE_EXPR, type, res_op0, res_op1);
    2226         5279 :                                 if (TREE_SIDE_EFFECTS (captures[2]))
    2227            0 :                                   _r = build2_loc (loc, COMPOUND_EXPR, type, fold_ignored_result (captures[2]), _r);
    2228         5279 :                                 if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 574, __FILE__, __LINE__, true);
    2229         5279 :                                 return _r;
    2230              :                               }
    2231       879465 : next_after_fail684:;
    2232              :                             }
    2233              :                         }
    2234              :                     }
    2235              :                   else
    2236              :                     {
    2237       877781 :                       if (wi::to_wide (cst) == min + 1
    2238              : )
    2239              :                         {
    2240        54606 :                           if (cmp == GE_EXPR
    2241              : )
    2242              :                             {
    2243         1805 :                               if (TREE_SIDE_EFFECTS (_p0)) goto next_after_fail685;
    2244         1805 :                               if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail685;
    2245         1805 :                               {
    2246         1805 :                                 tree res_op0;
    2247         1805 :                                 res_op0 = captures[0];
    2248         1805 :                                 tree res_op1;
    2249         1805 :                                 res_op1 =  build_uniform_cst (TREE_TYPE (captures[2]),
    2250         1805 :  wide_int_to_tree (TREE_TYPE (cst),
    2251         1805 :  wi::to_wide (cst)
    2252         3610 :  - 1));
    2253         1805 :                                 tree _r;
    2254         1805 :                                 _r = fold_build2_loc (loc, NE_EXPR, type, res_op0, res_op1);
    2255         1805 :                                 if (TREE_SIDE_EFFECTS (captures[2]))
    2256            0 :                                   _r = build2_loc (loc, COMPOUND_EXPR, type, fold_ignored_result (captures[2]), _r);
    2257         1805 :                                 if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 575, __FILE__, __LINE__, true);
    2258         1805 :                                 return _r;
    2259              :                               }
    2260       879465 : next_after_fail685:;
    2261              :                             }
    2262              :                           else
    2263              :                             {
    2264        52801 :                               if (cmp == LT_EXPR
    2265              : )
    2266              :                                 {
    2267          334 :                                   if (TREE_SIDE_EFFECTS (_p0)) goto next_after_fail686;
    2268          334 :                                   if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail686;
    2269          334 :                                   {
    2270          334 :                                     tree res_op0;
    2271          334 :                                     res_op0 = captures[0];
    2272          334 :                                     tree res_op1;
    2273          334 :                                     res_op1 =  build_uniform_cst (TREE_TYPE (captures[2]),
    2274          334 :  wide_int_to_tree (TREE_TYPE (cst),
    2275          334 :  wi::to_wide (cst)
    2276          668 :  - 1));
    2277          334 :                                     tree _r;
    2278          334 :                                     _r = fold_build2_loc (loc, EQ_EXPR, type, res_op0, res_op1);
    2279          334 :                                     if (TREE_SIDE_EFFECTS (captures[2]))
    2280            0 :                                       _r = build2_loc (loc, COMPOUND_EXPR, type, fold_ignored_result (captures[2]), _r);
    2281          334 :                                     if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 576, __FILE__, __LINE__, true);
    2282          334 :                                     return _r;
    2283              :                                   }
    2284       879465 : next_after_fail686:;
    2285              :                                 }
    2286              :                             }
    2287              :                         }
    2288              :                       else
    2289              :                         {
    2290       823175 :                           if (wi::to_wide (cst) == signed_max
    2291         2885 :  && TYPE_UNSIGNED (arg1_type)
    2292         2885 :  && TYPE_MODE (arg1_type) != BLKmode
    2293       823175 :  && prec == GET_MODE_PRECISION (SCALAR_INT_TYPE_MODE (arg1_type))
    2294       826060 :  && INTEGRAL_TYPE_P (arg1_type)
    2295              : )
    2296              :                             {
    2297         2885 :                               if (cmp == LE_EXPR || cmp == GT_EXPR
    2298              : )
    2299              :                                 {
    2300         2885 :                                   {
    2301         2885 :  tree st = signed_type_for (TREE_TYPE (captures[2]));
    2302         2885 :                                       if (cst == captures[2] && cmp == LE_EXPR
    2303              : )
    2304              :                                         {
    2305         2848 :                                           if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail687;
    2306         2848 :                                           {
    2307         2848 :                                             tree res_op0;
    2308         2848 :                                             {
    2309         2848 :                                               tree _o1[1], _r1;
    2310         2848 :                                               _o1[0] = captures[1];
    2311         2848 :                                               if (TREE_TYPE (_o1[0]) != st)
    2312              :                                                 {
    2313         2844 :                                                   _r1 = fold_build1_loc (loc, NOP_EXPR, st, _o1[0]);
    2314              :                                                 }
    2315              :                                               else
    2316              :                                                 _r1 = _o1[0];
    2317         2848 :                                               res_op0 = _r1;
    2318              :                                             }
    2319         2848 :                                             tree res_op1;
    2320         2848 :                                             res_op1 =  build_zero_cst (st);
    2321         2848 :                                             tree _r;
    2322         2848 :                                             _r = fold_build2_loc (loc, GE_EXPR, type, res_op0, res_op1);
    2323         2848 :                                             if (TREE_SIDE_EFFECTS (captures[2]))
    2324            0 :                                               _r = build2_loc (loc, COMPOUND_EXPR, type, fold_ignored_result (captures[2]), _r);
    2325         2848 :                                             if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 577, __FILE__, __LINE__, true);
    2326         2848 :                                             return _r;
    2327              :                                           }
    2328            0 : next_after_fail687:;
    2329            0 :                                         }
    2330              :                                       else
    2331              :                                         {
    2332           37 :                                           if (cst == captures[2] && cmp == GT_EXPR
    2333              : )
    2334              :                                             {
    2335           37 :                                               if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail688;
    2336           37 :                                               {
    2337           37 :                                                 tree res_op0;
    2338           37 :                                                 {
    2339           37 :                                                   tree _o1[1], _r1;
    2340           37 :                                                   _o1[0] = captures[1];
    2341           37 :                                                   if (TREE_TYPE (_o1[0]) != st)
    2342              :                                                     {
    2343           37 :                                                       _r1 = fold_build1_loc (loc, NOP_EXPR, st, _o1[0]);
    2344              :                                                     }
    2345              :                                                   else
    2346              :                                                     _r1 = _o1[0];
    2347           37 :                                                   res_op0 = _r1;
    2348              :                                                 }
    2349           37 :                                                 tree res_op1;
    2350           37 :                                                 res_op1 =  build_zero_cst (st);
    2351           37 :                                                 tree _r;
    2352           37 :                                                 _r = fold_build2_loc (loc, LT_EXPR, type, res_op0, res_op1);
    2353           37 :                                                 if (TREE_SIDE_EFFECTS (captures[2]))
    2354            0 :                                                   _r = build2_loc (loc, COMPOUND_EXPR, type, fold_ignored_result (captures[2]), _r);
    2355           37 :                                                 if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 578, __FILE__, __LINE__, true);
    2356           37 :                                                 return _r;
    2357              :                                               }
    2358            0 : next_after_fail688:;
    2359            0 :                                             }
    2360              :                                           else
    2361              :                                             {
    2362            0 :                                               if (cmp == LE_EXPR
    2363              : )
    2364              :                                                 {
    2365            0 :                                                   if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail689;
    2366            0 :                                                   {
    2367            0 :                                                     tree res_op0;
    2368            0 :                                                     {
    2369            0 :                                                       tree _o1[1], _r1;
    2370            0 :                                                       _o1[0] = captures[1];
    2371            0 :                                                       if (TREE_TYPE (_o1[0]) != st)
    2372              :                                                         {
    2373            0 :                                                           _r1 = fold_build1_loc (loc, VIEW_CONVERT_EXPR, st, _o1[0]);
    2374              :                                                         }
    2375              :                                                       else
    2376              :                                                         _r1 = _o1[0];
    2377            0 :                                                       res_op0 = _r1;
    2378              :                                                     }
    2379            0 :                                                     tree res_op1;
    2380            0 :                                                     res_op1 =  build_zero_cst (st);
    2381            0 :                                                     tree _r;
    2382            0 :                                                     _r = fold_build2_loc (loc, GE_EXPR, type, res_op0, res_op1);
    2383            0 :                                                     if (TREE_SIDE_EFFECTS (captures[2]))
    2384            0 :                                                       _r = build2_loc (loc, COMPOUND_EXPR, type, fold_ignored_result (captures[2]), _r);
    2385            0 :                                                     if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 579, __FILE__, __LINE__, true);
    2386            0 :                                                     return _r;
    2387              :                                                   }
    2388            0 : next_after_fail689:;
    2389              :                                                 }
    2390              :                                               else
    2391              :                                                 {
    2392            0 :                                                   if (cmp == GT_EXPR
    2393              : )
    2394              :                                                     {
    2395            0 :                                                       if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail690;
    2396            0 :                                                       {
    2397            0 :                                                         tree res_op0;
    2398            0 :                                                         {
    2399            0 :                                                           tree _o1[1], _r1;
    2400            0 :                                                           _o1[0] = captures[1];
    2401            0 :                                                           if (TREE_TYPE (_o1[0]) != st)
    2402              :                                                             {
    2403            0 :                                                               _r1 = fold_build1_loc (loc, VIEW_CONVERT_EXPR, st, _o1[0]);
    2404              :                                                             }
    2405              :                                                           else
    2406              :                                                             _r1 = _o1[0];
    2407            0 :                                                           res_op0 = _r1;
    2408              :                                                         }
    2409            0 :                                                         tree res_op1;
    2410            0 :                                                         res_op1 =  build_zero_cst (st);
    2411            0 :                                                         tree _r;
    2412            0 :                                                         _r = fold_build2_loc (loc, LT_EXPR, type, res_op0, res_op1);
    2413            0 :                                                         if (TREE_SIDE_EFFECTS (captures[2]))
    2414            0 :                                                           _r = build2_loc (loc, COMPOUND_EXPR, type, fold_ignored_result (captures[2]), _r);
    2415            0 :                                                         if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 580, __FILE__, __LINE__, true);
    2416            0 :                                                         return _r;
    2417              :                                                       }
    2418            0 : next_after_fail690:;
    2419              :                                                     }
    2420              :                                                 }
    2421              :                                             }
    2422              :                                         }
    2423              :                                   }
    2424              :                                 }
    2425              :                             }
    2426              :                         }
    2427              :                     }
    2428              :                 }
    2429              :             }
    2430       942554 :       }
    2431              :     }
    2432              :   return NULL_TREE;
    2433              : }
    2434              : 
    2435              : tree
    2436            2 : generic_simplify_454 (location_t ARG_UNUSED (loc), const tree ARG_UNUSED (type),
    2437              :  tree ARG_UNUSED (_p0), tree ARG_UNUSED (_p1), tree *ARG_UNUSED (captures))
    2438              : {
    2439            2 :   const bool debug_dump = dump_file && (dump_flags & TDF_FOLDING);
    2440            2 :   if (TREE_SIDE_EFFECTS (_p0)) goto next_after_fail799;
    2441            2 :   if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail799;
    2442            2 :   {
    2443            2 :     tree res_op0;
    2444            2 :     res_op0 = captures[0];
    2445            2 :     tree res_op1;
    2446            2 :     {
    2447            2 :       tree _o1[1], _r1;
    2448            2 :       _o1[0] = captures[5];
    2449            2 :       _r1 = fold_build1_loc (loc, BIT_NOT_EXPR, TREE_TYPE (_o1[0]), _o1[0]);
    2450            2 :       res_op1 = _r1;
    2451              :     }
    2452            2 :     tree _r;
    2453            2 :     _r = fold_build2_loc (loc, BIT_AND_EXPR, type, res_op0, res_op1);
    2454            2 :     if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 654, __FILE__, __LINE__, true);
    2455              :     return _r;
    2456              :   }
    2457              : next_after_fail799:;
    2458              :   return NULL_TREE;
    2459              : }
    2460              : 
    2461              : tree
    2462           65 : generic_simplify_460 (location_t ARG_UNUSED (loc), const tree ARG_UNUSED (type),
    2463              :  tree ARG_UNUSED (_p0), tree ARG_UNUSED (_p1), tree *ARG_UNUSED (captures))
    2464              : {
    2465           65 :   const bool debug_dump = dump_file && (dump_flags & TDF_FOLDING);
    2466           65 :   if (INTEGRAL_TYPE_P (type)
    2467           65 :  && INTEGRAL_TYPE_P (TREE_TYPE (captures[0]))
    2468           65 :  && TREE_CODE (TREE_TYPE (captures[0])) != BOOLEAN_TYPE
    2469          130 :  && (!TYPE_UNSIGNED (TREE_TYPE (captures[0]))
    2470           19 :  || TYPE_PRECISION (type) <= TYPE_PRECISION (TREE_TYPE (captures[0])))
    2471              : )
    2472              :     {
    2473           65 :       if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail805;
    2474           65 :       {
    2475           65 :         tree res_op0;
    2476           65 :         {
    2477           65 :           tree _o1[1], _r1;
    2478           65 :           _o1[0] = captures[0];
    2479           65 :           if (TREE_TYPE (_o1[0]) != type)
    2480              :             {
    2481           20 :               _r1 = fold_build1_loc (loc, NOP_EXPR, type, _o1[0]);
    2482              :             }
    2483              :           else
    2484              :             _r1 = _o1[0];
    2485           65 :           res_op0 = _r1;
    2486              :         }
    2487           65 :         tree res_op1;
    2488           65 :         res_op1 = captures[1];
    2489           65 :         tree _r;
    2490           65 :         _r = fold_build2_loc (loc, MULT_EXPR, type, res_op0, res_op1);
    2491           65 :         if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 659, __FILE__, __LINE__, true);
    2492           65 :         return _r;
    2493              :       }
    2494            0 : next_after_fail805:;
    2495              :     }
    2496              :   return NULL_TREE;
    2497              : }
    2498              : 
    2499              : tree
    2500      5279214 : generic_simplify_468 (location_t ARG_UNUSED (loc), const tree ARG_UNUSED (type),
    2501              :  tree ARG_UNUSED (_p0), tree ARG_UNUSED (_p1), tree *ARG_UNUSED (captures))
    2502              : {
    2503      5279214 :   const bool debug_dump = dump_file && (dump_flags & TDF_FOLDING);
    2504     10377060 :   if (POINTER_TYPE_P (TREE_TYPE (captures[0]))
    2505      5279234 :  && tree_nop_conversion_p (type, TREE_TYPE (captures[0]))
    2506              : )
    2507              :     {
    2508       181388 :       {
    2509       181388 :  unsigned int align;
    2510       181388 :  unsigned HOST_WIDE_INT bitpos;
    2511       181388 :  get_pointer_alignment_1 (captures[0], &align, &bitpos);
    2512       181388 :           if (wi::ltu_p (wi::to_wide (captures[1]), align / BITS_PER_UNIT)
    2513              : )
    2514              :             {
    2515         5451 :               if (TREE_SIDE_EFFECTS (captures[0])) goto next_after_fail813;
    2516         5451 :               if (TREE_SIDE_EFFECTS (captures[1])) goto next_after_fail813;
    2517         5451 :               if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail813;
    2518         5451 :               {
    2519         5451 :                 tree _r;
    2520        10902 :                 _r =  wide_int_to_tree (type, (wi::to_wide (captures[1])
    2521        10902 :  & (bitpos / BITS_PER_UNIT)));
    2522         5451 :                 if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 666, __FILE__, __LINE__, true);
    2523         5451 :                 return _r;
    2524              :               }
    2525       175937 : next_after_fail813:;
    2526              :             }
    2527              :       }
    2528              :     }
    2529              :   return NULL_TREE;
    2530              : }
    2531              : 
    2532              : tree
    2533            0 : generic_simplify_478 (location_t ARG_UNUSED (loc), const tree ARG_UNUSED (type),
    2534              :  tree ARG_UNUSED (_p0), tree ARG_UNUSED (_p1), tree *ARG_UNUSED (captures),
    2535              :  const enum tree_code ARG_UNUSED (code2),
    2536              :  const enum tree_code ARG_UNUSED (code1))
    2537              : {
    2538            0 :   const bool debug_dump = dump_file && (dump_flags & TDF_FOLDING);
    2539            0 :   if ((TREE_CODE (captures[2]) == INTEGER_CST
    2540            0 :  && TREE_CODE (captures[5]) == INTEGER_CST)
    2541            0 :  || ((INTEGRAL_TYPE_P (TREE_TYPE (captures[2]))
    2542            0 :  || (VECTOR_TYPE_P (TREE_TYPE (captures[2]))
    2543            0 :  && expand_vec_cmp_expr_p (TREE_TYPE (captures[2]), type, code2))
    2544            0 :  || POINTER_TYPE_P (TREE_TYPE (captures[2])))
    2545            0 :  && bitwise_equal_p (captures[2], captures[5]))
    2546              : )
    2547              :     {
    2548            0 :       {
    2549            0 :  bool one_before = false;
    2550            0 :  bool one_after = false;
    2551            0 :  int cmp = 0;
    2552            0 :  bool allbits = true;
    2553            0 :  if (TREE_CODE (captures[2]) == INTEGER_CST
    2554            0 :  && TREE_CODE (captures[5]) == INTEGER_CST)
    2555              :  {
    2556            0 :  allbits = TYPE_PRECISION (TREE_TYPE (captures[2])) <= TYPE_PRECISION (TREE_TYPE (captures[5]));
    2557            0 :  auto t1 = wi::to_wide (fold_convert (TREE_TYPE (captures[5]), captures[2]));
    2558            0 :  auto t2 = wi::to_wide (captures[5]);
    2559            0 :  cmp = wi::cmp (t1, t2, TYPE_SIGN (TREE_TYPE (captures[5])));
    2560            0 :  if (cmp < 0
    2561            0 :  && t1 == t2 - 1)
    2562              :  one_before = true;
    2563            0 :  if (cmp > 0
    2564            0 :  && t1 == t2 + 1)
    2565              :  one_after = true;
    2566              :  }
    2567            0 :  bool val;
    2568            0 :  switch (code2)
    2569              :  {
    2570            0 :  case EQ_EXPR: val = (cmp == 0); break;
    2571            0 :  case NE_EXPR: val = (cmp != 0); break;
    2572            0 :  case LT_EXPR: val = (cmp < 0); break;
    2573            0 :  case GT_EXPR: val = (cmp > 0); break;
    2574            0 :  case LE_EXPR: val = (cmp <= 0); break;
    2575            0 :  case GE_EXPR: val = (cmp >= 0); break;
    2576            0 :  default: gcc_unreachable ();
    2577              :  }
    2578            0 :           if (code1 == EQ_EXPR && val
    2579              : )
    2580              :             {
    2581            0 :               if (TREE_SIDE_EFFECTS (_p0)) goto next_after_fail845;
    2582            0 :               if (TREE_SIDE_EFFECTS (captures[5])) goto next_after_fail845;
    2583            0 :               if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail845;
    2584            0 :               {
    2585            0 :                 tree _r;
    2586            0 :                 _r = captures[0];
    2587            0 :                 if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 671, __FILE__, __LINE__, true);
    2588            0 :                 return _r;
    2589              :               }
    2590              : next_after_fail845:;
    2591              :             }
    2592              :           else
    2593              :             {
    2594            0 :               if (code1 == EQ_EXPR && !val
    2595              : )
    2596              :                 {
    2597            0 :                   if (TREE_SIDE_EFFECTS (captures[2])) goto next_after_fail846;
    2598            0 :                   if (TREE_SIDE_EFFECTS (captures[5])) goto next_after_fail846;
    2599            0 :                   if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail846;
    2600            0 :                   {
    2601            0 :                     tree _r;
    2602            0 :                     _r =  constant_boolean_node (false, type);
    2603            0 :                     if (TREE_SIDE_EFFECTS (captures[1]))
    2604            0 :                       _r = build2_loc (loc, COMPOUND_EXPR, type, fold_ignored_result (captures[1]), _r);
    2605            0 :                     if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 672, __FILE__, __LINE__, true);
    2606            0 :                     return _r;
    2607              :                   }
    2608              : next_after_fail846:;
    2609              :                 }
    2610              :               else
    2611              :                 {
    2612            0 :                   if (code1 == NE_EXPR && !val && allbits
    2613              : )
    2614              :                     {
    2615            0 :                       if (TREE_SIDE_EFFECTS (_p1)) goto next_after_fail847;
    2616            0 :                       if (TREE_SIDE_EFFECTS (captures[2])) goto next_after_fail847;
    2617            0 :                       if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail847;
    2618            0 :                       {
    2619            0 :                         tree _r;
    2620            0 :                         _r = captures[3];
    2621            0 :                         if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 673, __FILE__, __LINE__, true);
    2622            0 :                         return _r;
    2623              :                       }
    2624              : next_after_fail847:;
    2625              :                     }
    2626              :                   else
    2627              :                     {
    2628            0 :                       if ((code1 == NE_EXPR
    2629            0 :  && code2 == GE_EXPR
    2630            0 :  && cmp == 0
    2631            0 :  && allbits)
    2632            0 :  && ((VECTOR_BOOLEAN_TYPE_P (type)
    2633            0 :  && expand_vec_cmp_expr_p (TREE_TYPE (captures[2]), type, GT_EXPR))
    2634            0 :  || !VECTOR_TYPE_P (TREE_TYPE (captures[2])))
    2635              : )
    2636              :                         {
    2637            0 :                           if (TREE_SIDE_EFFECTS (_p1)) goto next_after_fail848;
    2638            0 :                           if (TREE_SIDE_EFFECTS (captures[2])) goto next_after_fail848;
    2639            0 :                           if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail848;
    2640            0 :                           {
    2641            0 :                             tree res_op0;
    2642            0 :                             res_op0 = captures[4];
    2643            0 :                             tree res_op1;
    2644            0 :                             {
    2645            0 :                               tree _o1[1], _r1;
    2646            0 :                               _o1[0] = captures[2];
    2647            0 :                               if (TREE_TYPE (_o1[0]) != TREE_TYPE (res_op0))
    2648              :                                 {
    2649            0 :                                   _r1 = fold_build1_loc (loc, NOP_EXPR, TREE_TYPE (res_op0), _o1[0]);
    2650              :                                 }
    2651              :                               else
    2652              :                                 _r1 = _o1[0];
    2653            0 :                               res_op1 = _r1;
    2654              :                             }
    2655            0 :                             tree _r;
    2656            0 :                             _r = fold_build2_loc (loc, GT_EXPR, type, res_op0, res_op1);
    2657            0 :                             if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 674, __FILE__, __LINE__, true);
    2658            0 :                             return _r;
    2659              :                           }
    2660              : next_after_fail848:;
    2661              :                         }
    2662              :                       else
    2663              :                         {
    2664            0 :                           if ((code1 == NE_EXPR
    2665            0 :  && code2 == LE_EXPR
    2666            0 :  && cmp == 0
    2667            0 :  && allbits)
    2668            0 :  && ((VECTOR_BOOLEAN_TYPE_P (type)
    2669            0 :  && expand_vec_cmp_expr_p (TREE_TYPE (captures[2]), type, LT_EXPR))
    2670            0 :  || !VECTOR_TYPE_P (TREE_TYPE (captures[2])))
    2671              : )
    2672              :                             {
    2673            0 :                               if (TREE_SIDE_EFFECTS (_p1)) goto next_after_fail849;
    2674            0 :                               if (TREE_SIDE_EFFECTS (captures[2])) goto next_after_fail849;
    2675            0 :                               if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail849;
    2676            0 :                               {
    2677            0 :                                 tree res_op0;
    2678            0 :                                 res_op0 = captures[4];
    2679            0 :                                 tree res_op1;
    2680            0 :                                 {
    2681            0 :                                   tree _o1[1], _r1;
    2682            0 :                                   _o1[0] = captures[2];
    2683            0 :                                   if (TREE_TYPE (_o1[0]) != TREE_TYPE (res_op0))
    2684              :                                     {
    2685            0 :                                       _r1 = fold_build1_loc (loc, NOP_EXPR, TREE_TYPE (res_op0), _o1[0]);
    2686              :                                     }
    2687              :                                   else
    2688              :                                     _r1 = _o1[0];
    2689            0 :                                   res_op1 = _r1;
    2690              :                                 }
    2691            0 :                                 tree _r;
    2692            0 :                                 _r = fold_build2_loc (loc, LT_EXPR, type, res_op0, res_op1);
    2693            0 :                                 if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 675, __FILE__, __LINE__, true);
    2694            0 :                                 return _r;
    2695              :                               }
    2696              : next_after_fail849:;
    2697              :                             }
    2698              :                           else
    2699              :                             {
    2700            0 :                               if ((code1 == NE_EXPR
    2701            0 :  && code2 == GT_EXPR
    2702              :  && one_after
    2703            0 :  && allbits)
    2704            0 :  && ((VECTOR_BOOLEAN_TYPE_P (type)
    2705            0 :  && expand_vec_cmp_expr_p (TREE_TYPE (captures[2]), type, GT_EXPR))
    2706            0 :  || !VECTOR_TYPE_P (TREE_TYPE (captures[2])))
    2707              : )
    2708              :                                 {
    2709            0 :                                   if (TREE_SIDE_EFFECTS (_p1)) goto next_after_fail850;
    2710            0 :                                   if (TREE_SIDE_EFFECTS (captures[2])) goto next_after_fail850;
    2711            0 :                                   if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail850;
    2712            0 :                                   {
    2713            0 :                                     tree res_op0;
    2714            0 :                                     res_op0 = captures[4];
    2715            0 :                                     tree res_op1;
    2716            0 :                                     {
    2717            0 :                                       tree _o1[1], _r1;
    2718            0 :                                       _o1[0] = captures[2];
    2719            0 :                                       if (TREE_TYPE (_o1[0]) != TREE_TYPE (res_op0))
    2720              :                                         {
    2721            0 :                                           _r1 = fold_build1_loc (loc, NOP_EXPR, TREE_TYPE (res_op0), _o1[0]);
    2722              :                                         }
    2723              :                                       else
    2724              :                                         _r1 = _o1[0];
    2725            0 :                                       res_op1 = _r1;
    2726              :                                     }
    2727            0 :                                     tree _r;
    2728            0 :                                     _r = fold_build2_loc (loc, GT_EXPR, type, res_op0, res_op1);
    2729            0 :                                     if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 676, __FILE__, __LINE__, true);
    2730            0 :                                     return _r;
    2731              :                                   }
    2732              : next_after_fail850:;
    2733              :                                 }
    2734              :                               else
    2735              :                                 {
    2736            0 :                                   if ((code1 == NE_EXPR
    2737            0 :  && code2 == LT_EXPR
    2738              :  && one_before
    2739            0 :  && allbits)
    2740            0 :  && ((VECTOR_BOOLEAN_TYPE_P (type)
    2741            0 :  && expand_vec_cmp_expr_p (TREE_TYPE (captures[2]), type, LT_EXPR))
    2742            0 :  || !VECTOR_TYPE_P (TREE_TYPE (captures[2])))
    2743              : )
    2744              :                                     {
    2745            0 :                                       if (TREE_SIDE_EFFECTS (_p1)) goto next_after_fail851;
    2746            0 :                                       if (TREE_SIDE_EFFECTS (captures[2])) goto next_after_fail851;
    2747            0 :                                       if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail851;
    2748            0 :                                       {
    2749            0 :                                         tree res_op0;
    2750            0 :                                         res_op0 = captures[4];
    2751            0 :                                         tree res_op1;
    2752            0 :                                         {
    2753            0 :                                           tree _o1[1], _r1;
    2754            0 :                                           _o1[0] = captures[2];
    2755            0 :                                           if (TREE_TYPE (_o1[0]) != TREE_TYPE (res_op0))
    2756              :                                             {
    2757            0 :                                               _r1 = fold_build1_loc (loc, NOP_EXPR, TREE_TYPE (res_op0), _o1[0]);
    2758              :                                             }
    2759              :                                           else
    2760              :                                             _r1 = _o1[0];
    2761            0 :                                           res_op1 = _r1;
    2762              :                                         }
    2763            0 :                                         tree _r;
    2764            0 :                                         _r = fold_build2_loc (loc, LT_EXPR, type, res_op0, res_op1);
    2765            0 :                                         if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 677, __FILE__, __LINE__, true);
    2766            0 :                                         return _r;
    2767              :                                       }
    2768              : next_after_fail851:;
    2769              :                                     }
    2770              :                                 }
    2771              :                             }
    2772              :                         }
    2773              :                     }
    2774              :                 }
    2775              :             }
    2776              :       }
    2777              :     }
    2778              :   return NULL_TREE;
    2779              : }
    2780              : 
    2781              : tree
    2782            0 : generic_simplify_507 (location_t ARG_UNUSED (loc), const tree ARG_UNUSED (type),
    2783              :  tree ARG_UNUSED (_p0), tree *ARG_UNUSED (captures),
    2784              :  const enum tree_code ARG_UNUSED (minmax),
    2785              :  const enum tree_code ARG_UNUSED (maxmin))
    2786              : {
    2787            0 :   const bool debug_dump = dump_file && (dump_flags & TDF_FOLDING);
    2788            0 :   if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail896;
    2789            0 :   {
    2790            0 :     tree res_op0;
    2791            0 :     res_op0 = captures[1];
    2792            0 :     tree res_op1;
    2793            0 :     {
    2794            0 :       tree _o1[1], _r1;
    2795            0 :       _o1[0] = captures[2];
    2796            0 :       _r1 = fold_build1_loc (loc, BIT_NOT_EXPR, TREE_TYPE (_o1[0]), _o1[0]);
    2797            0 :       res_op1 = _r1;
    2798              :     }
    2799            0 :     tree _r;
    2800            0 :     _r = fold_build2_loc (loc, maxmin, type, res_op0, res_op1);
    2801            0 :     if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 710, __FILE__, __LINE__, true);
    2802              :     return _r;
    2803              :   }
    2804            0 : next_after_fail896:;
    2805            0 :   return NULL_TREE;
    2806              : }
    2807              : 
    2808              : tree
    2809         1847 : generic_simplify_514 (location_t ARG_UNUSED (loc), const tree ARG_UNUSED (type),
    2810              :  tree ARG_UNUSED (_p0), tree *ARG_UNUSED (captures))
    2811              : {
    2812         1847 :   const bool debug_dump = dump_file && (dump_flags & TDF_FOLDING);
    2813         1847 :   if (! TYPE_UNSIGNED (type)
    2814         1433 :  && ! HONOR_SIGN_DEPENDENT_ROUNDING (type)
    2815         1847 :  && single_use (captures[0])
    2816              : )
    2817              :     {
    2818         1433 :       if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail904;
    2819         1433 :       {
    2820         1433 :         tree res_op0;
    2821         1433 :         res_op0 = captures[1];
    2822         1433 :         tree res_op1;
    2823         1433 :         {
    2824         1433 :           tree _o1[1], _r1;
    2825         1433 :           _o1[0] = captures[2];
    2826         1433 :           _r1 = fold_build1_loc (loc, NEGATE_EXPR, TREE_TYPE (_o1[0]), _o1[0]);
    2827         1433 :           res_op1 = _r1;
    2828              :         }
    2829         1433 :         tree _r;
    2830         1433 :         _r = fold_build2_loc (loc, MULT_EXPR, type, res_op0, res_op1);
    2831         1433 :         if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 717, __FILE__, __LINE__, true);
    2832         1433 :         return _r;
    2833              :       }
    2834            0 : next_after_fail904:;
    2835              :     }
    2836              :   return NULL_TREE;
    2837              : }
    2838              : 
    2839              : tree
    2840            0 : generic_simplify_523 (location_t ARG_UNUSED (loc), const tree ARG_UNUSED (type),
    2841              :  tree ARG_UNUSED (_p0), tree ARG_UNUSED (_p1), tree *ARG_UNUSED (captures),
    2842              :  const enum tree_code ARG_UNUSED (minmax))
    2843              : {
    2844            0 :   const bool debug_dump = dump_file && (dump_flags & TDF_FOLDING);
    2845            0 :   if (INTEGRAL_TYPE_P (type)
    2846            0 :  && TYPE_OVERFLOW_UNDEFINED (type)
    2847            0 :  && !TYPE_OVERFLOW_SANITIZED (type)
    2848              : )
    2849              :     {
    2850            0 :       if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail914;
    2851            0 :       {
    2852            0 :         tree res_op0;
    2853            0 :         {
    2854            0 :           tree _o1[2], _r1;
    2855            0 :           _o1[0] = captures[1];
    2856            0 :           _o1[1] = captures[4];
    2857            0 :           _r1 = fold_build2_loc (loc, minmax, TREE_TYPE (_o1[0]), _o1[0], _o1[1]);
    2858            0 :           res_op0 = _r1;
    2859              :         }
    2860            0 :         tree res_op1;
    2861            0 :         res_op1 = captures[2];
    2862            0 :         tree _r;
    2863            0 :         _r = fold_build2_loc (loc, MINUS_EXPR, type, res_op0, res_op1);
    2864            0 :         if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 726, __FILE__, __LINE__, true);
    2865            0 :         return _r;
    2866              :       }
    2867            0 : next_after_fail914:;
    2868              :     }
    2869              :   return NULL_TREE;
    2870              : }
    2871              : 
    2872              : tree
    2873            2 : generic_simplify_532 (location_t ARG_UNUSED (loc), const tree ARG_UNUSED (type),
    2874              :  tree ARG_UNUSED (_p0), tree ARG_UNUSED (_p1), tree *ARG_UNUSED (captures))
    2875              : {
    2876            2 :   const bool debug_dump = dump_file && (dump_flags & TDF_FOLDING);
    2877            2 :   if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail937;
    2878            2 :   {
    2879            2 :     tree _r;
    2880            2 :     _r = captures[1];
    2881            2 :     if (TREE_SIDE_EFFECTS (captures[0]))
    2882            0 :       _r = build2_loc (loc, COMPOUND_EXPR, type, fold_ignored_result (captures[0]), _r);
    2883            2 :     if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 737, __FILE__, __LINE__, true);
    2884              :     return _r;
    2885              :   }
    2886            0 : next_after_fail937:;
    2887            0 :   return NULL_TREE;
    2888              : }
    2889              : 
    2890              : tree
    2891            0 : generic_simplify_536 (location_t ARG_UNUSED (loc), const tree ARG_UNUSED (type),
    2892              :  tree ARG_UNUSED (_p0), tree ARG_UNUSED (_p1), tree *ARG_UNUSED (captures),
    2893              :  const combined_fn ARG_UNUSED (FMIN_ALL))
    2894              : {
    2895            0 :   const bool debug_dump = dump_file && (dump_flags & TDF_FOLDING);
    2896            0 :   if (flag_finite_math_only
    2897              : )
    2898              :     {
    2899            0 :       if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail941;
    2900            0 :       {
    2901            0 :         tree res_op0;
    2902            0 :         res_op0 = captures[0];
    2903            0 :         tree res_op1;
    2904            0 :         res_op1 = captures[1];
    2905            0 :         tree _r;
    2906            0 :         _r = fold_build2_loc (loc, MIN_EXPR, type, res_op0, res_op1);
    2907            0 :         if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 741, __FILE__, __LINE__, true);
    2908            0 :         return _r;
    2909              :       }
    2910            0 : next_after_fail941:;
    2911              :     }
    2912              :   return NULL_TREE;
    2913              : }
    2914              : 
    2915              : tree
    2916            0 : generic_simplify_542 (location_t ARG_UNUSED (loc), const tree ARG_UNUSED (type),
    2917              :  tree ARG_UNUSED (_p0), tree ARG_UNUSED (_p1), tree ARG_UNUSED (_p2), tree *ARG_UNUSED (captures),
    2918              :  const enum tree_code ARG_UNUSED (cmp))
    2919              : {
    2920            0 :   const bool debug_dump = dump_file && (dump_flags & TDF_FOLDING);
    2921            0 :   if (TREE_SIDE_EFFECTS (_p0)) goto next_after_fail947;
    2922            0 :   if (TREE_SIDE_EFFECTS (_p1)) goto next_after_fail947;
    2923            0 :   if (TREE_SIDE_EFFECTS (_p2)) goto next_after_fail947;
    2924            0 :   if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail947;
    2925            0 :   {
    2926            0 :     tree _r;
    2927            0 :     _r = captures[0];
    2928            0 :     if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 534, __FILE__, __LINE__, true);
    2929              :     return _r;
    2930              :   }
    2931              : next_after_fail947:;
    2932              :   return NULL_TREE;
    2933              : }
    2934              : 
    2935              : tree
    2936            0 : generic_simplify_552 (location_t ARG_UNUSED (loc), const tree ARG_UNUSED (type),
    2937              :  tree ARG_UNUSED (_p0), tree ARG_UNUSED (_p1), tree ARG_UNUSED (_p2), tree *ARG_UNUSED (captures),
    2938              :  const combined_fn ARG_UNUSED (cond_op))
    2939              : {
    2940            0 :   const bool debug_dump = dump_file && (dump_flags & TDF_FOLDING);
    2941            0 :   if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail957;
    2942            0 :   {
    2943            0 :     tree res_op0;
    2944            0 :     {
    2945            0 :       tree _o1[2], _r1;
    2946            0 :       _o1[0] = captures[2];
    2947            0 :       _o1[1] = captures[0];
    2948            0 :       _r1 = fold_build2_loc (loc, BIT_AND_EXPR, TREE_TYPE (_o1[0]), _o1[0], _o1[1]);
    2949            0 :       res_op0 = _r1;
    2950              :     }
    2951            0 :     tree res_op1;
    2952            0 :     res_op1 = captures[3];
    2953            0 :     tree res_op2;
    2954            0 :     res_op2 = captures[4];
    2955            0 :     tree res_op3;
    2956            0 :     res_op3 = captures[5];
    2957            0 :     tree res_op4;
    2958            0 :     res_op4 = captures[6];
    2959            0 :     tree _r;
    2960            0 :     _r = maybe_build_call_expr_loc (loc, cond_op, type, 5, res_op0, res_op1, res_op2, res_op3, res_op4);
    2961            0 :     if (!_r)
    2962            0 :       goto next_after_fail957;
    2963            0 :     if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 752, __FILE__, __LINE__, true);
    2964              :     return _r;
    2965              :   }
    2966              : next_after_fail957:;
    2967              :   return NULL_TREE;
    2968              : }
    2969              : 
    2970              : tree
    2971            0 : generic_simplify_558 (location_t ARG_UNUSED (loc), const tree ARG_UNUSED (type),
    2972              :  tree ARG_UNUSED (_p0), tree *ARG_UNUSED (captures),
    2973              :  const combined_fn ARG_UNUSED (bswap))
    2974              : {
    2975            0 :   const bool debug_dump = dump_file && (dump_flags & TDF_FOLDING);
    2976            0 :   if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail966;
    2977            0 :   {
    2978            0 :     tree res_op0;
    2979            0 :     res_op0 = captures[0];
    2980            0 :     tree _r;
    2981            0 :     _r = fold_build1_loc (loc, BIT_NOT_EXPR, type, res_op0);
    2982            0 :     if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 761, __FILE__, __LINE__, true);
    2983              :     return _r;
    2984              :   }
    2985            0 : next_after_fail966:;
    2986            0 :   return NULL_TREE;
    2987              : }
    2988              : 
    2989              : tree
    2990            0 : generic_simplify_565 (location_t ARG_UNUSED (loc), const tree ARG_UNUSED (type),
    2991              :  tree ARG_UNUSED (_p0), tree *ARG_UNUSED (captures),
    2992              :  const combined_fn ARG_UNUSED (logs))
    2993              : {
    2994            0 :   const bool debug_dump = dump_file && (dump_flags & TDF_FOLDING);
    2995            0 :   if (flag_unsafe_math_optimizations
    2996              : )
    2997              :     {
    2998            0 :       if (! HONOR_SIGN_DEPENDENT_ROUNDING (type)
    2999            0 :  && ! HONOR_NANS (type) && ! HONOR_INFINITIES (type)
    3000            0 :  && ! flag_trapping_math
    3001            0 :  && ! flag_errno_math
    3002              : )
    3003              :         {
    3004            0 :           if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail973;
    3005            0 :           {
    3006            0 :             tree res_op0;
    3007            0 :             {
    3008            0 :               tree _o1[1], _r1;
    3009            0 :               _o1[0] = captures[2];
    3010            0 :               _r1 = maybe_build_call_expr_loc (loc, logs, TREE_TYPE (_o1[0]), 1, _o1[0]);
    3011            0 :               if (!_r1)
    3012            0 :                 goto next_after_fail973;
    3013            0 :               res_op0 = _r1;
    3014              :             }
    3015            0 :             tree _r;
    3016            0 :             _r = fold_build1_loc (loc, NEGATE_EXPR, type, res_op0);
    3017            0 :             if (TREE_SIDE_EFFECTS (captures[1]))
    3018            0 :               _r = build2_loc (loc, COMPOUND_EXPR, type, fold_ignored_result (captures[1]), _r);
    3019            0 :             if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 768, __FILE__, __LINE__, true);
    3020            0 :             return _r;
    3021              :           }
    3022              : next_after_fail973:;
    3023              :         }
    3024              :     }
    3025              :   return NULL_TREE;
    3026              : }
    3027              : 
    3028              : tree
    3029            0 : generic_simplify_574 (location_t ARG_UNUSED (loc), const tree ARG_UNUSED (type),
    3030              :  tree ARG_UNUSED (_p0), tree *ARG_UNUSED (captures),
    3031              :  const combined_fn ARG_UNUSED (froms),
    3032              :  const combined_fn ARG_UNUSED (tos))
    3033              : {
    3034            0 :   const bool debug_dump = dump_file && (dump_flags & TDF_FOLDING);
    3035            0 :   if (optimize && canonicalize_math_p ()
    3036              : )
    3037              :     {
    3038            0 :       if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail982;
    3039            0 :       {
    3040            0 :         tree res_op0;
    3041            0 :         {
    3042            0 :           tree _o1[1], _r1;
    3043            0 :           _o1[0] = captures[0];
    3044            0 :           _r1 = maybe_build_call_expr_loc (loc, tos, TREE_TYPE (_o1[0]), 1, _o1[0]);
    3045            0 :           if (!_r1)
    3046            0 :             goto next_after_fail982;
    3047            0 :           res_op0 = _r1;
    3048              :         }
    3049            0 :         tree _r;
    3050            0 :         _r = fold_build1_loc (loc, NOP_EXPR, type, res_op0);
    3051            0 :         if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 777, __FILE__, __LINE__, true);
    3052            0 :         return _r;
    3053              :       }
    3054              : next_after_fail982:;
    3055              :     }
    3056              :   return NULL_TREE;
    3057              : }
    3058              : 
    3059              : tree
    3060            0 : generic_simplify_583 (location_t ARG_UNUSED (loc), const tree ARG_UNUSED (type),
    3061              :  tree ARG_UNUSED (_p0), tree *ARG_UNUSED (captures),
    3062              :  const combined_fn ARG_UNUSED (ifn),
    3063              :  const combined_fn ARG_UNUSED (lfn),
    3064              :  const combined_fn ARG_UNUSED (llfn))
    3065              : {
    3066            0 :   const bool debug_dump = dump_file && (dump_flags & TDF_FOLDING);
    3067            0 :   if (canonicalize_math_p ()
    3068              : )
    3069              :     {
    3070            0 :       if (TYPE_PRECISION (long_long_integer_type_node)
    3071            0 :  == TYPE_PRECISION (long_integer_type_node)
    3072              : )
    3073              :         {
    3074            0 :           if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail991;
    3075            0 :           {
    3076            0 :             tree res_op0;
    3077            0 :             res_op0 = captures[0];
    3078            0 :             tree _r;
    3079            0 :             _r = maybe_build_call_expr_loc (loc, lfn, type, 1, res_op0);
    3080            0 :             if (!_r)
    3081            0 :               goto next_after_fail991;
    3082            0 :             if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 786, __FILE__, __LINE__, true);
    3083            0 :             return _r;
    3084              :           }
    3085              : next_after_fail991:;
    3086              :         }
    3087              :     }
    3088              :   return NULL_TREE;
    3089              : }
    3090              : 
    3091              : tree
    3092            0 : generic_simplify_594 (location_t ARG_UNUSED (loc), const tree ARG_UNUSED (type),
    3093              :  tree ARG_UNUSED (_p0), tree ARG_UNUSED (_p1), tree ARG_UNUSED (_p2), tree *ARG_UNUSED (captures))
    3094              : {
    3095            0 :   const bool debug_dump = dump_file && (dump_flags & TDF_FOLDING);
    3096            0 :   if (canonicalize_math_after_vectorization_p ()
    3097              : )
    3098              :     {
    3099              :       if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1002;
    3100              :       {
    3101              :         tree res_op0;
    3102              :         res_op0 = captures[0];
    3103              :         tree res_op1;
    3104              :         res_op1 = captures[1];
    3105              :         tree res_op2;
    3106              :         res_op2 = captures[2];
    3107              :         tree _r;
    3108              :         _r = maybe_build_call_expr_loc (loc, CFN_FMS, type, 3, res_op0, res_op1, res_op2);
    3109              :         if (!_r)
    3110              :           goto next_after_fail1002;
    3111              :         if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 797, __FILE__, __LINE__, true);
    3112              :         return _r;
    3113              :       }
    3114            0 : next_after_fail1002:;
    3115              :     }
    3116            0 :   return NULL_TREE;
    3117              : }
    3118              : 
    3119              : tree
    3120            0 : generic_simplify_604 (location_t ARG_UNUSED (loc), const tree ARG_UNUSED (type),
    3121              :  tree ARG_UNUSED (_p0), tree *ARG_UNUSED (captures),
    3122              :  const combined_fn ARG_UNUSED (ctz))
    3123              : {
    3124            0 :   const bool debug_dump = dump_file && (dump_flags & TDF_FOLDING);
    3125            0 :   {
    3126            0 :  tree t = TREE_TYPE (captures[0]);
    3127            0 :       if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1012;
    3128            0 :       {
    3129            0 :         tree res_op0;
    3130            0 :         {
    3131            0 :           tree _o1[1], _r1;
    3132            0 :           _o1[0] = captures[1];
    3133            0 :           if (TREE_TYPE (_o1[0]) != t)
    3134              :             {
    3135            0 :               _r1 = fold_build1_loc (loc, NOP_EXPR, t, _o1[0]);
    3136              :             }
    3137              :           else
    3138              :             _r1 = _o1[0];
    3139            0 :           res_op0 = _r1;
    3140              :         }
    3141            0 :         tree _r;
    3142            0 :         _r = maybe_build_call_expr_loc (loc, ctz, type, 1, res_op0);
    3143            0 :         if (!_r)
    3144            0 :           goto next_after_fail1012;
    3145            0 :         if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 807, __FILE__, __LINE__, true);
    3146              :         return _r;
    3147              :       }
    3148              : next_after_fail1012:;
    3149              :   }
    3150              :   return NULL_TREE;
    3151              : }
    3152              : 
    3153              : tree
    3154            0 : generic_simplify_612 (location_t ARG_UNUSED (loc), const tree ARG_UNUSED (type),
    3155              :  tree ARG_UNUSED (_p0), tree *ARG_UNUSED (captures),
    3156              :  const enum tree_code ARG_UNUSED (rot),
    3157              :  const combined_fn ARG_UNUSED (popcount))
    3158              : {
    3159            0 :   const bool debug_dump = dump_file && (dump_flags & TDF_FOLDING);
    3160            0 :   if (INTEGRAL_TYPE_P (TREE_TYPE (captures[0]))
    3161            0 :  && INTEGRAL_TYPE_P (TREE_TYPE (captures[1]))
    3162            0 :  && (
    3163              : 
    3164            0 :  || !TREE_SIDE_EFFECTS (captures[3]))
    3165              : )
    3166              :     {
    3167            0 :       {
    3168            0 :  tree type0 = TREE_TYPE (captures[0]);
    3169            0 :  tree type1 = TREE_TYPE (captures[1]);
    3170            0 :  unsigned int prec0 = TYPE_PRECISION (type0);
    3171            0 :  unsigned int prec1 = TYPE_PRECISION (type1);
    3172            0 :           if (prec0 == prec1 || (prec0 > prec1 && TYPE_UNSIGNED (type1))
    3173              : )
    3174              :             {
    3175            0 :               if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1020;
    3176            0 :               {
    3177            0 :                 tree res_op0;
    3178            0 :                 {
    3179            0 :                   tree _o1[1], _r1;
    3180            0 :                   _o1[0] = captures[2];
    3181            0 :                   if (TREE_TYPE (_o1[0]) != type0)
    3182              :                     {
    3183            0 :                       _r1 = fold_build1_loc (loc, NOP_EXPR, type0, _o1[0]);
    3184              :                     }
    3185              :                   else
    3186              :                     _r1 = _o1[0];
    3187            0 :                   res_op0 = _r1;
    3188              :                 }
    3189            0 :                 tree _r;
    3190            0 :                 _r = maybe_build_call_expr_loc (loc, popcount, type, 1, res_op0);
    3191            0 :                 if (!_r)
    3192            0 :                   goto next_after_fail1020;
    3193            0 :                 if (TREE_SIDE_EFFECTS (captures[3]))
    3194            0 :                   _r = build2_loc (loc, COMPOUND_EXPR, type, fold_ignored_result (captures[3]), _r);
    3195            0 :                 if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 809, __FILE__, __LINE__, true);
    3196            0 :                 return _r;
    3197              :               }
    3198              : next_after_fail1020:;
    3199              :             }
    3200              :       }
    3201              :     }
    3202              :   return NULL_TREE;
    3203              : }
    3204              : 
    3205              : tree
    3206            0 : generic_simplify_622 (location_t ARG_UNUSED (loc), const tree ARG_UNUSED (type),
    3207              :  tree ARG_UNUSED (_p0), tree ARG_UNUSED (_p1), tree ARG_UNUSED (_p2), tree *ARG_UNUSED (captures))
    3208              : {
    3209            0 :   const bool debug_dump = dump_file && (dump_flags & TDF_FOLDING);
    3210            0 :   {
    3211            0 :  bool can_fold = false;
    3212            0 :  unsigned HOST_WIDE_INT nelts;
    3213            0 :  vec_perm_builder builder;
    3214            0 :  if (TYPE_VECTOR_SUBPARTS (type).is_constant (&nelts)
    3215            0 :  && tree_to_vec_perm_builder (&builder, captures[2]))
    3216              :  {
    3217            0 :  vec_perm_indices sel0 (builder, 2, VECTOR_CST_NELTS (captures[2]));
    3218            0 :  unsigned int sel0_first_idx = sel0[0].to_constant ();
    3219            0 :  unsigned int elt_size = vector_element_bits (TREE_TYPE (captures[0]));
    3220            0 :  unsigned int ia_size = tree_to_uhwi (TYPE_SIZE (type))
    3221            0 :  - elt_size * sel0_first_idx;
    3222            0 :  unsigned int ib_start;
    3223            0 :  if (sel0.series_p (0, 1, sel0_first_idx, 1)
    3224            0 :  && multiple_p (ia_size, vector_element_bits (type), &ib_start)
    3225            0 :  && tree_to_vec_perm_builder (&builder, captures[5]))
    3226              :  {
    3227            0 :  vec_perm_indices sel1 (builder, 2, VECTOR_CST_NELTS (captures[5]));
    3228            0 :  can_fold = sel1.series_p (ib_start, 1, nelts + ib_start, 1);
    3229            0 :  if (can_fold)
    3230            0 :  for (unsigned int i = 0; i < ib_start; i++)
    3231            0 :  if (sel1[i].to_constant () != i)
    3232              :  {
    3233              :  can_fold = false;
    3234              :  break;
    3235              :  }
    3236            0 :  }
    3237            0 :  }
    3238            0 :       if (can_fold
    3239              : )
    3240              :         {
    3241            0 :           if (TREE_SIDE_EFFECTS (captures[2])) goto next_after_fail1032;
    3242            0 :           if (TREE_SIDE_EFFECTS (captures[5])) goto next_after_fail1032;
    3243            0 :           if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1032;
    3244            0 :           {
    3245            0 :             tree res_op0;
    3246            0 :             {
    3247            0 :               tree _o1[3], _r1;
    3248            0 :               _o1[0] = captures[0];
    3249            0 :               _o1[1] = captures[4];
    3250            0 :               _o1[2] = captures[2];
    3251            0 :               _r1 = fold_build3_loc (loc, VEC_PERM_EXPR, TREE_TYPE (_o1[0]), _o1[0], _o1[1], _o1[2]);
    3252            0 :               res_op0 = _r1;
    3253              :             }
    3254            0 :             tree _r;
    3255            0 :             _r = fold_build1_loc (loc, VIEW_CONVERT_EXPR, type, res_op0);
    3256            0 :             if (TREE_SIDE_EFFECTS (captures[1]))
    3257            0 :               _r = build2_loc (loc, COMPOUND_EXPR, type, fold_ignored_result (captures[1]), _r);
    3258            0 :             if (TREE_SIDE_EFFECTS (captures[3]))
    3259            0 :               _r = build2_loc (loc, COMPOUND_EXPR, type, fold_ignored_result (captures[3]), _r);
    3260            0 :             if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 820, __FILE__, __LINE__, true);
    3261            0 :             return _r;
    3262              :           }
    3263            0 : next_after_fail1032:;
    3264              :         }
    3265            0 :   }
    3266            0 :   return NULL_TREE;
    3267              : }
    3268              : 
    3269              : tree
    3270         3678 : generic_simplify_PAREN_EXPR (location_t ARG_UNUSED (loc), enum tree_code ARG_UNUSED (code), const tree ARG_UNUSED (type), tree _p0)
    3271              : {
    3272         3678 :   const bool debug_dump = dump_file && (dump_flags & TDF_FOLDING);
    3273         3678 :   switch (TREE_CODE (_p0))
    3274              :     {
    3275            2 :     case PAREN_EXPR:
    3276            2 :       {
    3277            2 :         tree _q20 = TREE_OPERAND (_p0, 0);
    3278            2 :         {
    3279            2 :           tree captures[2] ATTRIBUTE_UNUSED = { _p0, _q20 };
    3280            2 :           if (TREE_SIDE_EFFECTS (_p0)) goto next_after_fail1126;
    3281            2 :           if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1126;
    3282            2 :           {
    3283            2 :             tree _r;
    3284            2 :             _r = captures[0];
    3285            2 :             if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 872, __FILE__, __LINE__, true);
    3286            2 :             return _r;
    3287              :           }
    3288            0 : next_after_fail1126:;
    3289              :         }
    3290            0 :         break;
    3291              :       }
    3292         3676 :     default:;
    3293              :     }
    3294         3676 : if (CONSTANT_CLASS_P (_p0))
    3295              :   {
    3296            1 :     {
    3297            1 :       tree captures[1] ATTRIBUTE_UNUSED = { _p0 };
    3298            1 :       if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1127;
    3299            1 :       {
    3300            1 :         tree _r;
    3301            1 :         _r = captures[0];
    3302            1 :         if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 873, __FILE__, __LINE__, true);
    3303            1 :         return _r;
    3304              :       }
    3305            0 : next_after_fail1127:;
    3306              :     }
    3307              :   }
    3308              :   return NULL_TREE;
    3309              : }
    3310              : 
    3311              : tree
    3312      1647151 : generic_simplify_REALPART_EXPR (location_t ARG_UNUSED (loc), enum tree_code ARG_UNUSED (code), const tree ARG_UNUSED (type), tree _p0)
    3313              : {
    3314      1647151 :   const bool debug_dump = dump_file && (dump_flags & TDF_FOLDING);
    3315      1647151 :   switch (TREE_CODE (_p0))
    3316              :     {
    3317         9611 :     case COMPLEX_EXPR:
    3318         9611 :       {
    3319         9611 :         tree _q20 = TREE_OPERAND (_p0, 0);
    3320         9611 :         tree _q21 = TREE_OPERAND (_p0, 1);
    3321         9611 :         {
    3322         9611 :           tree captures[2] ATTRIBUTE_UNUSED = { _q20, _q21 };
    3323         9611 :           if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1128;
    3324         9611 :           {
    3325         9611 :             tree _r;
    3326         9611 :             _r = captures[0];
    3327         9611 :             if (TREE_SIDE_EFFECTS (captures[1]))
    3328         1366 :               _r = build2_loc (loc, COMPOUND_EXPR, type, fold_ignored_result (captures[1]), _r);
    3329         9611 :             if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 874, __FILE__, __LINE__, true);
    3330         9611 :             return _r;
    3331              :           }
    3332            0 : next_after_fail1128:;
    3333              :         }
    3334            0 :         break;
    3335              :       }
    3336        45368 :     CASE_CONVERT:
    3337        45368 :       {
    3338        45368 :         tree _q20 = TREE_OPERAND (_p0, 0);
    3339        45368 :         switch (TREE_CODE (_q20))
    3340              :           {
    3341            0 :           case CONJ_EXPR:
    3342            0 :             {
    3343            0 :               tree _q30 = TREE_OPERAND (_q20, 0);
    3344            0 :               {
    3345            0 :                 tree captures[3] ATTRIBUTE_UNUSED = { _p0, _q20, _q30 };
    3346            0 :                 if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1129;
    3347            0 :                 {
    3348            0 :                   tree res_op0;
    3349            0 :                   {
    3350            0 :                     tree _o1[1], _r1;
    3351            0 :                     _o1[0] = captures[2];
    3352            0 :                     _r1 = fold_build1_loc (loc, REALPART_EXPR, TREE_TYPE (TREE_TYPE (_o1[0])), _o1[0]);
    3353            0 :                     res_op0 = _r1;
    3354              :                   }
    3355            0 :                   tree _r;
    3356            0 :                   _r = fold_build1_loc (loc, NOP_EXPR, type, res_op0);
    3357            0 :                   if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 875, __FILE__, __LINE__, true);
    3358            0 :                   return _r;
    3359              :                 }
    3360            0 : next_after_fail1129:;
    3361              :               }
    3362            0 :               break;
    3363              :             }
    3364            0 :           case PLUS_EXPR:
    3365            0 :             {
    3366            0 :               tree _q30 = TREE_OPERAND (_q20, 0);
    3367            0 :               tree _q31 = TREE_OPERAND (_q20, 1);
    3368            0 :               {
    3369            0 :                 tree captures[4] ATTRIBUTE_UNUSED = { _p0, _q20, _q30, _q31 };
    3370            0 :                 const enum tree_code op = PLUS_EXPR;
    3371            0 :                 if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1130;
    3372            0 :                 {
    3373            0 :                   tree res_op0;
    3374            0 :                   {
    3375            0 :                     tree _o1[2], _r1;
    3376            0 :                     {
    3377            0 :                       tree _o2[1], _r2;
    3378            0 :                       _o2[0] = captures[2];
    3379            0 :                       _r2 = fold_build1_loc (loc, REALPART_EXPR, TREE_TYPE (TREE_TYPE (_o2[0])), _o2[0]);
    3380            0 :                       _o1[0] = _r2;
    3381              :                     }
    3382            0 :                     {
    3383            0 :                       tree _o2[1], _r2;
    3384            0 :                       _o2[0] = captures[3];
    3385            0 :                       _r2 = fold_build1_loc (loc, REALPART_EXPR, TREE_TYPE (TREE_TYPE (_o2[0])), _o2[0]);
    3386            0 :                       _o1[1] = _r2;
    3387              :                     }
    3388            0 :                     _r1 = fold_build2_loc (loc, op, TREE_TYPE (_o1[0]), _o1[0], _o1[1]);
    3389            0 :                     res_op0 = _r1;
    3390              :                   }
    3391            0 :                   tree _r;
    3392            0 :                   _r = fold_build1_loc (loc, NOP_EXPR, type, res_op0);
    3393            0 :                   if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 876, __FILE__, __LINE__, true);
    3394            0 :                   return _r;
    3395              :                 }
    3396            0 : next_after_fail1130:;
    3397              :               }
    3398            0 :               break;
    3399              :             }
    3400            0 :           case MINUS_EXPR:
    3401            0 :             {
    3402            0 :               tree _q30 = TREE_OPERAND (_q20, 0);
    3403            0 :               tree _q31 = TREE_OPERAND (_q20, 1);
    3404            0 :               {
    3405            0 :                 tree captures[4] ATTRIBUTE_UNUSED = { _p0, _q20, _q30, _q31 };
    3406            0 :                 const enum tree_code op = MINUS_EXPR;
    3407            0 :                 if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1131;
    3408            0 :                 {
    3409            0 :                   tree res_op0;
    3410            0 :                   {
    3411            0 :                     tree _o1[2], _r1;
    3412            0 :                     {
    3413            0 :                       tree _o2[1], _r2;
    3414            0 :                       _o2[0] = captures[2];
    3415            0 :                       _r2 = fold_build1_loc (loc, REALPART_EXPR, TREE_TYPE (TREE_TYPE (_o2[0])), _o2[0]);
    3416            0 :                       _o1[0] = _r2;
    3417              :                     }
    3418            0 :                     {
    3419            0 :                       tree _o2[1], _r2;
    3420            0 :                       _o2[0] = captures[3];
    3421            0 :                       _r2 = fold_build1_loc (loc, REALPART_EXPR, TREE_TYPE (TREE_TYPE (_o2[0])), _o2[0]);
    3422            0 :                       _o1[1] = _r2;
    3423              :                     }
    3424            0 :                     _r1 = fold_build2_loc (loc, op, TREE_TYPE (_o1[0]), _o1[0], _o1[1]);
    3425            0 :                     res_op0 = _r1;
    3426              :                   }
    3427            0 :                   tree _r;
    3428            0 :                   _r = fold_build1_loc (loc, NOP_EXPR, type, res_op0);
    3429            0 :                   if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 876, __FILE__, __LINE__, true);
    3430            0 :                   return _r;
    3431              :                 }
    3432            0 : next_after_fail1131:;
    3433              :               }
    3434            0 :               break;
    3435              :             }
    3436            0 :           case CALL_EXPR:
    3437            0 :             switch (get_call_combined_fn (_q20))
    3438              :               {
    3439            0 :               case CFN_BUILT_IN_CEXPIF:
    3440            0 :                 if (call_expr_nargs (_q20) == 1)
    3441              :     {
    3442            0 :                     tree _q30 = CALL_EXPR_ARG (_q20, 0);
    3443            0 :                     {
    3444            0 :                       tree captures[3] ATTRIBUTE_UNUSED = { _p0, _q20, _q30 };
    3445            0 :                       if (single_use (captures[1]) && single_use (captures[0])
    3446              : )
    3447              :                         {
    3448            0 :                           if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1132;
    3449            0 :                           {
    3450            0 :                             tree res_op0;
    3451            0 :                             {
    3452            0 :                               tree _o1[1], _r1;
    3453            0 :                               _o1[0] = captures[2];
    3454            0 :                               _r1 = maybe_build_call_expr_loc (loc, CFN_BUILT_IN_COSF, TREE_TYPE (_o1[0]), 1, _o1[0]);
    3455            0 :                               if (!_r1)
    3456            0 :                                 goto next_after_fail1132;
    3457            0 :                               res_op0 = _r1;
    3458              :                             }
    3459            0 :                             tree _r;
    3460            0 :                             _r = fold_build1_loc (loc, NOP_EXPR, type, res_op0);
    3461            0 :                             if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 877, __FILE__, __LINE__, true);
    3462            0 :                             return _r;
    3463              :                           }
    3464            0 : next_after_fail1132:;
    3465              :                         }
    3466              :                     }
    3467              :                   }
    3468              :                 break;
    3469            0 :               case CFN_BUILT_IN_CEXPIL:
    3470            0 :                 if (call_expr_nargs (_q20) == 1)
    3471              :     {
    3472            0 :                     tree _q30 = CALL_EXPR_ARG (_q20, 0);
    3473            0 :                     {
    3474            0 :                       tree captures[3] ATTRIBUTE_UNUSED = { _p0, _q20, _q30 };
    3475            0 :                       if (single_use (captures[1]) && single_use (captures[0])
    3476              : )
    3477              :                         {
    3478            0 :                           if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1133;
    3479            0 :                           {
    3480            0 :                             tree res_op0;
    3481            0 :                             {
    3482            0 :                               tree _o1[1], _r1;
    3483            0 :                               _o1[0] = captures[2];
    3484            0 :                               _r1 = maybe_build_call_expr_loc (loc, CFN_BUILT_IN_COSL, TREE_TYPE (_o1[0]), 1, _o1[0]);
    3485            0 :                               if (!_r1)
    3486            0 :                                 goto next_after_fail1133;
    3487            0 :                               res_op0 = _r1;
    3488              :                             }
    3489            0 :                             tree _r;
    3490            0 :                             _r = fold_build1_loc (loc, NOP_EXPR, type, res_op0);
    3491            0 :                             if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 877, __FILE__, __LINE__, true);
    3492            0 :                             return _r;
    3493              :                           }
    3494            0 : next_after_fail1133:;
    3495              :                         }
    3496              :                     }
    3497              :                   }
    3498              :                 break;
    3499            0 :               case CFN_BUILT_IN_CEXPI:
    3500            0 :                 if (call_expr_nargs (_q20) == 1)
    3501              :     {
    3502            0 :                     tree _q30 = CALL_EXPR_ARG (_q20, 0);
    3503            0 :                     {
    3504            0 :                       tree captures[3] ATTRIBUTE_UNUSED = { _p0, _q20, _q30 };
    3505            0 :                       if (single_use (captures[1]) && single_use (captures[0])
    3506              : )
    3507              :                         {
    3508            0 :                           if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1134;
    3509            0 :                           {
    3510            0 :                             tree res_op0;
    3511            0 :                             {
    3512            0 :                               tree _o1[1], _r1;
    3513            0 :                               _o1[0] = captures[2];
    3514            0 :                               _r1 = maybe_build_call_expr_loc (loc, CFN_BUILT_IN_COS, TREE_TYPE (_o1[0]), 1, _o1[0]);
    3515            0 :                               if (!_r1)
    3516            0 :                                 goto next_after_fail1134;
    3517            0 :                               res_op0 = _r1;
    3518              :                             }
    3519            0 :                             tree _r;
    3520            0 :                             _r = fold_build1_loc (loc, NOP_EXPR, type, res_op0);
    3521            0 :                             if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 877, __FILE__, __LINE__, true);
    3522            0 :                             return _r;
    3523              :                           }
    3524            0 : next_after_fail1134:;
    3525              :                         }
    3526              :                     }
    3527              :                   }
    3528              :                 break;
    3529              :               default:;
    3530              :               }
    3531              :             break;
    3532              :           default:;
    3533              :           }
    3534              :         break;
    3535              :       }
    3536           16 :     case CONJ_EXPR:
    3537           16 :       {
    3538           16 :         tree _q20 = TREE_OPERAND (_p0, 0);
    3539           16 :         {
    3540           16 :           tree captures[3] ATTRIBUTE_UNUSED = { _p0, _p0, _q20 };
    3541           16 :           if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1135;
    3542           16 :           {
    3543           16 :             tree res_op0;
    3544           16 :             {
    3545           16 :               tree _o1[1], _r1;
    3546           16 :               _o1[0] = captures[2];
    3547           16 :               _r1 = fold_build1_loc (loc, REALPART_EXPR, TREE_TYPE (TREE_TYPE (_o1[0])), _o1[0]);
    3548           16 :               res_op0 = _r1;
    3549              :             }
    3550           16 :             tree _r;
    3551           16 :             _r = fold_build1_loc (loc, NOP_EXPR, type, res_op0);
    3552           16 :             if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 875, __FILE__, __LINE__, true);
    3553           16 :             return _r;
    3554              :           }
    3555            0 : next_after_fail1135:;
    3556              :         }
    3557            0 :         break;
    3558              :       }
    3559          407 :     case PLUS_EXPR:
    3560          407 :       {
    3561          407 :         tree _q20 = TREE_OPERAND (_p0, 0);
    3562          407 :         tree _q21 = TREE_OPERAND (_p0, 1);
    3563          407 :         {
    3564          407 :           tree captures[4] ATTRIBUTE_UNUSED = { _p0, _p0, _q20, _q21 };
    3565          407 :           const enum tree_code op = PLUS_EXPR;
    3566          407 :           if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1136;
    3567          407 :           {
    3568          407 :             tree res_op0;
    3569          407 :             {
    3570          407 :               tree _o1[2], _r1;
    3571          407 :               {
    3572          407 :                 tree _o2[1], _r2;
    3573          407 :                 _o2[0] = captures[2];
    3574          407 :                 _r2 = fold_build1_loc (loc, REALPART_EXPR, TREE_TYPE (TREE_TYPE (_o2[0])), _o2[0]);
    3575          407 :                 _o1[0] = _r2;
    3576              :               }
    3577          407 :               {
    3578          407 :                 tree _o2[1], _r2;
    3579          407 :                 _o2[0] = captures[3];
    3580          407 :                 _r2 = fold_build1_loc (loc, REALPART_EXPR, TREE_TYPE (TREE_TYPE (_o2[0])), _o2[0]);
    3581          407 :                 _o1[1] = _r2;
    3582              :               }
    3583          407 :               _r1 = fold_build2_loc (loc, op, TREE_TYPE (_o1[0]), _o1[0], _o1[1]);
    3584          407 :               res_op0 = _r1;
    3585              :             }
    3586          407 :             tree _r;
    3587          407 :             _r = fold_build1_loc (loc, NOP_EXPR, type, res_op0);
    3588          407 :             if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 876, __FILE__, __LINE__, true);
    3589          407 :             return _r;
    3590              :           }
    3591            0 : next_after_fail1136:;
    3592              :         }
    3593            0 :         break;
    3594              :       }
    3595           47 :     case MINUS_EXPR:
    3596           47 :       {
    3597           47 :         tree _q20 = TREE_OPERAND (_p0, 0);
    3598           47 :         tree _q21 = TREE_OPERAND (_p0, 1);
    3599           47 :         {
    3600           47 :           tree captures[4] ATTRIBUTE_UNUSED = { _p0, _p0, _q20, _q21 };
    3601           47 :           const enum tree_code op = MINUS_EXPR;
    3602           47 :           if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1137;
    3603           47 :           {
    3604           47 :             tree res_op0;
    3605           47 :             {
    3606           47 :               tree _o1[2], _r1;
    3607           47 :               {
    3608           47 :                 tree _o2[1], _r2;
    3609           47 :                 _o2[0] = captures[2];
    3610           47 :                 _r2 = fold_build1_loc (loc, REALPART_EXPR, TREE_TYPE (TREE_TYPE (_o2[0])), _o2[0]);
    3611           47 :                 _o1[0] = _r2;
    3612              :               }
    3613           47 :               {
    3614           47 :                 tree _o2[1], _r2;
    3615           47 :                 _o2[0] = captures[3];
    3616           47 :                 _r2 = fold_build1_loc (loc, REALPART_EXPR, TREE_TYPE (TREE_TYPE (_o2[0])), _o2[0]);
    3617           47 :                 _o1[1] = _r2;
    3618              :               }
    3619           47 :               _r1 = fold_build2_loc (loc, op, TREE_TYPE (_o1[0]), _o1[0], _o1[1]);
    3620           47 :               res_op0 = _r1;
    3621              :             }
    3622           47 :             tree _r;
    3623           47 :             _r = fold_build1_loc (loc, NOP_EXPR, type, res_op0);
    3624           47 :             if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 876, __FILE__, __LINE__, true);
    3625           47 :             return _r;
    3626              :           }
    3627            0 : next_after_fail1137:;
    3628              :         }
    3629            0 :         break;
    3630              :       }
    3631          263 :     case CALL_EXPR:
    3632          263 :       switch (get_call_combined_fn (_p0))
    3633              :         {
    3634            0 :         case CFN_BUILT_IN_CEXPIF:
    3635            0 :           if (call_expr_nargs (_p0) == 1)
    3636              :     {
    3637            0 :               tree _q20 = CALL_EXPR_ARG (_p0, 0);
    3638            0 :               {
    3639            0 :                 tree captures[3] ATTRIBUTE_UNUSED = { _p0, _p0, _q20 };
    3640            0 :                 if (single_use (captures[1]) && single_use (captures[0])
    3641              : )
    3642              :                   {
    3643            0 :                     if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1138;
    3644            0 :                     {
    3645            0 :                       tree res_op0;
    3646            0 :                       {
    3647            0 :                         tree _o1[1], _r1;
    3648            0 :                         _o1[0] = captures[2];
    3649            0 :                         _r1 = maybe_build_call_expr_loc (loc, CFN_BUILT_IN_COSF, TREE_TYPE (_o1[0]), 1, _o1[0]);
    3650            0 :                         if (!_r1)
    3651            0 :                           goto next_after_fail1138;
    3652            0 :                         res_op0 = _r1;
    3653              :                       }
    3654            0 :                       tree _r;
    3655            0 :                       _r = fold_build1_loc (loc, NOP_EXPR, type, res_op0);
    3656            0 :                       if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 877, __FILE__, __LINE__, true);
    3657            0 :                       return _r;
    3658              :                     }
    3659            0 : next_after_fail1138:;
    3660              :                   }
    3661              :               }
    3662              :             }
    3663              :           break;
    3664            0 :         case CFN_BUILT_IN_CEXPIL:
    3665            0 :           if (call_expr_nargs (_p0) == 1)
    3666              :     {
    3667            0 :               tree _q20 = CALL_EXPR_ARG (_p0, 0);
    3668            0 :               {
    3669            0 :                 tree captures[3] ATTRIBUTE_UNUSED = { _p0, _p0, _q20 };
    3670            0 :                 if (single_use (captures[1]) && single_use (captures[0])
    3671              : )
    3672              :                   {
    3673            0 :                     if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1139;
    3674            0 :                     {
    3675            0 :                       tree res_op0;
    3676            0 :                       {
    3677            0 :                         tree _o1[1], _r1;
    3678            0 :                         _o1[0] = captures[2];
    3679            0 :                         _r1 = maybe_build_call_expr_loc (loc, CFN_BUILT_IN_COSL, TREE_TYPE (_o1[0]), 1, _o1[0]);
    3680            0 :                         if (!_r1)
    3681            0 :                           goto next_after_fail1139;
    3682            0 :                         res_op0 = _r1;
    3683              :                       }
    3684            0 :                       tree _r;
    3685            0 :                       _r = fold_build1_loc (loc, NOP_EXPR, type, res_op0);
    3686            0 :                       if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 877, __FILE__, __LINE__, true);
    3687            0 :                       return _r;
    3688              :                     }
    3689            0 : next_after_fail1139:;
    3690              :                   }
    3691              :               }
    3692              :             }
    3693              :           break;
    3694            1 :         case CFN_BUILT_IN_CEXPI:
    3695            1 :           if (call_expr_nargs (_p0) == 1)
    3696              :     {
    3697            1 :               tree _q20 = CALL_EXPR_ARG (_p0, 0);
    3698            1 :               {
    3699            1 :                 tree captures[3] ATTRIBUTE_UNUSED = { _p0, _p0, _q20 };
    3700            1 :                 if (single_use (captures[1]) && single_use (captures[0])
    3701              : )
    3702              :                   {
    3703            1 :                     if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1140;
    3704            1 :                     {
    3705            1 :                       tree res_op0;
    3706            1 :                       {
    3707            1 :                         tree _o1[1], _r1;
    3708            1 :                         _o1[0] = captures[2];
    3709            1 :                         _r1 = maybe_build_call_expr_loc (loc, CFN_BUILT_IN_COS, TREE_TYPE (_o1[0]), 1, _o1[0]);
    3710            1 :                         if (!_r1)
    3711            0 :                           goto next_after_fail1140;
    3712            1 :                         res_op0 = _r1;
    3713              :                       }
    3714            1 :                       tree _r;
    3715            1 :                       _r = fold_build1_loc (loc, NOP_EXPR, type, res_op0);
    3716            1 :                       if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 877, __FILE__, __LINE__, true);
    3717            1 :                       return _r;
    3718              :                     }
    3719            0 : next_after_fail1140:;
    3720              :                   }
    3721              :               }
    3722              :             }
    3723              :           break;
    3724              :         default:;
    3725              :         }
    3726              :       break;
    3727              :     default:;
    3728              :     }
    3729              :   return NULL_TREE;
    3730              : }
    3731              : 
    3732              : tree
    3733      2868250 : generic_simplify_POINTER_DIFF_EXPR (location_t ARG_UNUSED (loc), enum tree_code ARG_UNUSED (code), const tree ARG_UNUSED (type), tree _p0, tree _p1)
    3734              : {
    3735      2868250 :   const bool debug_dump = dump_file && (dump_flags & TDF_FOLDING);
    3736      2868250 :   if (integer_zerop (_p1))
    3737              :     {
    3738           29 :       {
    3739           29 :         tree captures[1] ATTRIBUTE_UNUSED = { _p0 };
    3740           29 :         if (TREE_SIDE_EFFECTS (_p1)) goto next_after_fail1367;
    3741           29 :         if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1367;
    3742           29 :         {
    3743           29 :           tree res_op0;
    3744           29 :           res_op0 = captures[0];
    3745           29 :           tree _r;
    3746           29 :           _r = fold_build1_loc (loc, NOP_EXPR, type, res_op0);
    3747           29 :           if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 942, __FILE__, __LINE__, true);
    3748           29 :           return _r;
    3749              :         }
    3750              : next_after_fail1367:;
    3751              :       }
    3752              :     }
    3753      2868221 :   if ((_p1 == _p0 && ! TREE_SIDE_EFFECTS (_p1)) || operand_equal_p (_p1, _p0, 0))
    3754              :     {
    3755        39194 :       {
    3756        39194 :         tree captures[2] ATTRIBUTE_UNUSED = { _p0, _p0 };
    3757        39194 :         if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1368;
    3758        39194 :         {
    3759        39194 :           tree _r;
    3760        39194 :           _r =  build_zero_cst (type);
    3761        39194 :           if (TREE_SIDE_EFFECTS (captures[1]))
    3762            0 :             _r = build2_loc (loc, COMPOUND_EXPR, type, fold_ignored_result (captures[1]), _r);
    3763        39194 :           if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 943, __FILE__, __LINE__, true);
    3764        39194 :           return _r;
    3765              :         }
    3766            0 : next_after_fail1368:;
    3767              :       }
    3768              :     }
    3769      2829027 :   switch (TREE_CODE (_p0))
    3770              :     {
    3771       255000 :     case POINTER_PLUS_EXPR:
    3772       255000 :       {
    3773       255000 :         tree _q20 = TREE_OPERAND (_p0, 0);
    3774       255000 :         tree _q21 = TREE_OPERAND (_p0, 1);
    3775       255000 :         switch (TREE_CODE (_p1))
    3776              :           {
    3777        15325 :           case POINTER_PLUS_EXPR:
    3778        15325 :             {
    3779        15325 :               tree _q50 = TREE_OPERAND (_p1, 0);
    3780        15325 :               tree _q51 = TREE_OPERAND (_p1, 1);
    3781        15325 :               if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
    3782              :                 {
    3783        15294 :                   {
    3784        15294 :                     tree captures[3] ATTRIBUTE_UNUSED = { _q20, _q21, _q51 };
    3785        15294 :                     if (TYPE_OVERFLOW_WRAPS (TREE_TYPE (captures[1]))
    3786              : )
    3787              :                       {
    3788        15294 :                         if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1369;
    3789        15294 :                         {
    3790        15294 :                           tree res_op0;
    3791        15294 :                           {
    3792        15294 :                             tree _o1[2], _r1;
    3793        15294 :                             _o1[0] = captures[1];
    3794        15294 :                             _o1[1] = captures[2];
    3795        15294 :                             _r1 = fold_build2_loc (loc, MINUS_EXPR, TREE_TYPE (_o1[0]), _o1[0], _o1[1]);
    3796        15294 :                             res_op0 = _r1;
    3797              :                           }
    3798        15294 :                           tree _r;
    3799        15294 :                           _r = fold_build1_loc (loc, NOP_EXPR, type, res_op0);
    3800        15294 :                           if (TREE_SIDE_EFFECTS (captures[0]))
    3801            0 :                             _r = build2_loc (loc, COMPOUND_EXPR, type, fold_ignored_result (captures[0]), _r);
    3802        15294 :                           if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 944, __FILE__, __LINE__, true);
    3803        15294 :                           return _r;
    3804              :                         }
    3805            0 : next_after_fail1369:;
    3806              :                       }
    3807              :                   }
    3808              :                 }
    3809           31 :               if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
    3810              :                 {
    3811            1 :                   {
    3812            1 :                     tree captures[3] ATTRIBUTE_UNUSED = { _q20, _q21, _q50 };
    3813            1 :                     if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1370;
    3814            1 :                     {
    3815            1 :                       tree res_op0;
    3816            1 :                       res_op0 = captures[0];
    3817            1 :                       tree res_op1;
    3818            1 :                       res_op1 = captures[2];
    3819            1 :                       tree _r;
    3820            1 :                       _r = fold_build2_loc (loc, POINTER_DIFF_EXPR, type, res_op0, res_op1);
    3821            1 :                       if (TREE_SIDE_EFFECTS (captures[1]))
    3822            0 :                         _r = build2_loc (loc, COMPOUND_EXPR, type, fold_ignored_result (captures[1]), _r);
    3823            1 :                       if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 945, __FILE__, __LINE__, true);
    3824            1 :                       return _r;
    3825              :                     }
    3826            0 : next_after_fail1370:;
    3827              :                   }
    3828              :                 }
    3829              :               break;
    3830              :             }
    3831              :           default:;
    3832              :           }
    3833              :         break;
    3834              :       }
    3835       165304 :     CASE_CONVERT:
    3836       165304 :       {
    3837       165304 :         tree _q20 = TREE_OPERAND (_p0, 0);
    3838       165304 :         switch (TREE_CODE (_q20))
    3839              :           {
    3840         2017 :           case ADDR_EXPR:
    3841         2017 :             {
    3842         2017 :               switch (TREE_CODE (_p1))
    3843              :                 {
    3844          324 :                 CASE_CONVERT:
    3845          324 :                   {
    3846          324 :                     tree _q40 = TREE_OPERAND (_p1, 0);
    3847          324 :                     {
    3848          324 :                       tree captures[4] ATTRIBUTE_UNUSED = { _p0, _q20, _p1, _q40 };
    3849          324 :                       if (tree_nop_conversion_p (TREE_TYPE(captures[0]), TREE_TYPE (captures[1]))
    3850          324 :  && tree_nop_conversion_p (TREE_TYPE(captures[2]), TREE_TYPE (captures[3]))
    3851              : )
    3852              :                         {
    3853          324 :                           {
    3854          324 :  poly_int64 diff;
    3855          324 :                               if (ptr_difference_const (captures[1], captures[3], &diff)
    3856              : )
    3857              :                                 {
    3858          189 :                                   if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1371;
    3859          189 :                                   {
    3860          189 :                                     tree _r;
    3861          189 :                                     _r =  build_int_cst_type (type, diff);
    3862          189 :                                     if (TREE_SIDE_EFFECTS (captures[1]))
    3863            0 :                                       _r = build2_loc (loc, COMPOUND_EXPR, type, fold_ignored_result (captures[1]), _r);
    3864          189 :                                     if (TREE_SIDE_EFFECTS (captures[3]))
    3865            0 :                                       _r = build2_loc (loc, COMPOUND_EXPR, type, fold_ignored_result (captures[3]), _r);
    3866          189 :                                     if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 946, __FILE__, __LINE__, true);
    3867          189 :                                     return _r;
    3868              :                                   }
    3869            0 : next_after_fail1371:;
    3870              :                                 }
    3871              :                           }
    3872              :                         }
    3873              :                     }
    3874          135 :                     break;
    3875              :                   }
    3876         1828 :                 default:;
    3877              :                 }
    3878         1828 :               {
    3879         1828 :                 tree captures[4] ATTRIBUTE_UNUSED = { _p0, _q20, _p1, _p1 };
    3880         1828 :                 if (tree_nop_conversion_p (TREE_TYPE(captures[0]), TREE_TYPE (captures[1]))
    3881         1828 :  && tree_nop_conversion_p (TREE_TYPE(captures[2]), TREE_TYPE (captures[3]))
    3882              : )
    3883              :                   {
    3884         1828 :                     {
    3885         1828 :  poly_int64 diff;
    3886         1828 :                         if (ptr_difference_const (captures[1], captures[3], &diff)
    3887              : )
    3888              :                           {
    3889          103 :                             if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1372;
    3890          103 :                             {
    3891          103 :                               tree _r;
    3892          103 :                               _r =  build_int_cst_type (type, diff);
    3893          103 :                               if (TREE_SIDE_EFFECTS (captures[1]))
    3894            0 :                                 _r = build2_loc (loc, COMPOUND_EXPR, type, fold_ignored_result (captures[1]), _r);
    3895          103 :                               if (TREE_SIDE_EFFECTS (captures[2]))
    3896            0 :                                 _r = build2_loc (loc, COMPOUND_EXPR, type, fold_ignored_result (captures[2]), _r);
    3897          103 :                               if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 946, __FILE__, __LINE__, true);
    3898          103 :                               return _r;
    3899              :                             }
    3900            0 : next_after_fail1372:;
    3901              :                           }
    3902              :                     }
    3903              :                   }
    3904              :               }
    3905         1725 :               break;
    3906              :             }
    3907       165012 :           default:;
    3908              :           }
    3909       165012 :         switch (TREE_CODE (_p1))
    3910              :           {
    3911       133536 :           CASE_CONVERT:
    3912       133536 :             {
    3913       133536 :               tree _q40 = TREE_OPERAND (_p1, 0);
    3914       133536 :               switch (TREE_CODE (_q40))
    3915              :                 {
    3916        18209 :                 case ADDR_EXPR:
    3917        18209 :                   {
    3918        18209 :                     {
    3919        18209 :                       tree captures[4] ATTRIBUTE_UNUSED = { _p0, _q20, _p1, _q40 };
    3920        18209 :                       if (tree_nop_conversion_p (TREE_TYPE(captures[0]), TREE_TYPE (captures[1]))
    3921        18209 :  && tree_nop_conversion_p (TREE_TYPE(captures[2]), TREE_TYPE (captures[3]))
    3922              : )
    3923              :                         {
    3924        18209 :                           {
    3925        18209 :  poly_int64 diff;
    3926        18209 :                               if (ptr_difference_const (captures[1], captures[3], &diff)
    3927              : )
    3928              :                                 {
    3929           37 :                                   if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1373;
    3930           37 :                                   {
    3931           37 :                                     tree _r;
    3932           37 :                                     _r =  build_int_cst_type (type, diff);
    3933           37 :                                     if (TREE_SIDE_EFFECTS (captures[1]))
    3934            0 :                                       _r = build2_loc (loc, COMPOUND_EXPR, type, fold_ignored_result (captures[1]), _r);
    3935           37 :                                     if (TREE_SIDE_EFFECTS (captures[3]))
    3936            0 :                                       _r = build2_loc (loc, COMPOUND_EXPR, type, fold_ignored_result (captures[3]), _r);
    3937           37 :                                     if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 947, __FILE__, __LINE__, true);
    3938           37 :                                     return _r;
    3939              :                                   }
    3940            0 : next_after_fail1373:;
    3941              :                                 }
    3942              :                           }
    3943              :                         }
    3944              :                     }
    3945        18172 :                     break;
    3946              :                   }
    3947              :                 default:;
    3948              :                 }
    3949              :               break;
    3950              :             }
    3951           12 :           case ADDR_EXPR:
    3952           12 :             {
    3953           12 :               {
    3954           12 :                 tree captures[4] ATTRIBUTE_UNUSED = { _p0, _q20, _p1, _p1 };
    3955           12 :                 if (tree_nop_conversion_p (TREE_TYPE(captures[0]), TREE_TYPE (captures[1]))
    3956           12 :  && tree_nop_conversion_p (TREE_TYPE(captures[2]), TREE_TYPE (captures[3]))
    3957              : )
    3958              :                   {
    3959           12 :                     {
    3960           12 :  poly_int64 diff;
    3961           12 :                         if (ptr_difference_const (captures[1], captures[3], &diff)
    3962              : )
    3963              :                           {
    3964            0 :                             if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1374;
    3965            0 :                             {
    3966            0 :                               tree _r;
    3967            0 :                               _r =  build_int_cst_type (type, diff);
    3968            0 :                               if (TREE_SIDE_EFFECTS (captures[1]))
    3969            0 :                                 _r = build2_loc (loc, COMPOUND_EXPR, type, fold_ignored_result (captures[1]), _r);
    3970            0 :                               if (TREE_SIDE_EFFECTS (captures[2]))
    3971            0 :                                 _r = build2_loc (loc, COMPOUND_EXPR, type, fold_ignored_result (captures[2]), _r);
    3972            0 :                               if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 947, __FILE__, __LINE__, true);
    3973            0 :                               return _r;
    3974              :                             }
    3975            0 : next_after_fail1374:;
    3976              :                           }
    3977              :                     }
    3978              :                   }
    3979              :               }
    3980           12 :               break;
    3981              :             }
    3982              :           default:;
    3983              :           }
    3984              :         break;
    3985              :       }
    3986         3758 :     case ADDR_EXPR:
    3987         3758 :       {
    3988         3758 :         switch (TREE_CODE (_p1))
    3989              :           {
    3990           50 :           CASE_CONVERT:
    3991           50 :             {
    3992           50 :               tree _q30 = TREE_OPERAND (_p1, 0);
    3993           50 :               {
    3994           50 :                 tree captures[4] ATTRIBUTE_UNUSED = { _p0, _p0, _p1, _q30 };
    3995           50 :                 if (tree_nop_conversion_p (TREE_TYPE(captures[0]), TREE_TYPE (captures[1]))
    3996           50 :  && tree_nop_conversion_p (TREE_TYPE(captures[2]), TREE_TYPE (captures[3]))
    3997              : )
    3998              :                   {
    3999           50 :                     {
    4000           50 :  poly_int64 diff;
    4001           50 :                         if (ptr_difference_const (captures[1], captures[3], &diff)
    4002              : )
    4003              :                           {
    4004           29 :                             if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1375;
    4005           29 :                             {
    4006           29 :                               tree _r;
    4007           29 :                               _r =  build_int_cst_type (type, diff);
    4008           29 :                               if (TREE_SIDE_EFFECTS (captures[0]))
    4009            0 :                                 _r = build2_loc (loc, COMPOUND_EXPR, type, fold_ignored_result (captures[0]), _r);
    4010           29 :                               if (TREE_SIDE_EFFECTS (captures[3]))
    4011            0 :                                 _r = build2_loc (loc, COMPOUND_EXPR, type, fold_ignored_result (captures[3]), _r);
    4012           29 :                               if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 946, __FILE__, __LINE__, true);
    4013           29 :                               return _r;
    4014              :                             }
    4015            0 : next_after_fail1375:;
    4016              :                           }
    4017              :                     }
    4018              :                   }
    4019              :               }
    4020           21 :               break;
    4021              :             }
    4022         3729 :           default:;
    4023              :           }
    4024         3729 :         {
    4025         3729 :           tree captures[4] ATTRIBUTE_UNUSED = { _p0, _p0, _p1, _p1 };
    4026         3729 :           if (tree_nop_conversion_p (TREE_TYPE(captures[0]), TREE_TYPE (captures[1]))
    4027         3729 :  && tree_nop_conversion_p (TREE_TYPE(captures[2]), TREE_TYPE (captures[3]))
    4028              : )
    4029              :             {
    4030         3729 :               {
    4031         3729 :  poly_int64 diff;
    4032         3729 :                   if (ptr_difference_const (captures[1], captures[3], &diff)
    4033              : )
    4034              :                     {
    4035         2437 :                       if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1376;
    4036         2437 :                       {
    4037         2437 :                         tree _r;
    4038         2437 :                         _r =  build_int_cst_type (type, diff);
    4039         2437 :                         if (TREE_SIDE_EFFECTS (captures[0]))
    4040            0 :                           _r = build2_loc (loc, COMPOUND_EXPR, type, fold_ignored_result (captures[0]), _r);
    4041         2437 :                         if (TREE_SIDE_EFFECTS (captures[2]))
    4042            0 :                           _r = build2_loc (loc, COMPOUND_EXPR, type, fold_ignored_result (captures[2]), _r);
    4043         2437 :                         if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 946, __FILE__, __LINE__, true);
    4044         2437 :                         return _r;
    4045              :                       }
    4046            0 : next_after_fail1376:;
    4047              :                     }
    4048              :               }
    4049              :             }
    4050              :         }
    4051         1292 :         break;
    4052              :       }
    4053      2810937 :     default:;
    4054              :     }
    4055      2810937 :   switch (TREE_CODE (_p1))
    4056              :     {
    4057       550346 :     CASE_CONVERT:
    4058       550346 :       {
    4059       550346 :         tree _q30 = TREE_OPERAND (_p1, 0);
    4060       550346 :         switch (TREE_CODE (_q30))
    4061              :           {
    4062       374964 :           case ADDR_EXPR:
    4063       374964 :             {
    4064       374964 :               {
    4065       374964 :                 tree captures[4] ATTRIBUTE_UNUSED = { _p0, _p0, _p1, _q30 };
    4066       374964 :                 if (tree_nop_conversion_p (TREE_TYPE(captures[0]), TREE_TYPE (captures[1]))
    4067       374964 :  && tree_nop_conversion_p (TREE_TYPE(captures[2]), TREE_TYPE (captures[3]))
    4068              : )
    4069              :                   {
    4070       374964 :                     {
    4071       374964 :  poly_int64 diff;
    4072       374964 :                         if (ptr_difference_const (captures[1], captures[3], &diff)
    4073              : )
    4074              :                           {
    4075       233706 :                             if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1377;
    4076       233706 :                             {
    4077       233706 :                               tree _r;
    4078       233706 :                               _r =  build_int_cst_type (type, diff);
    4079       233706 :                               if (TREE_SIDE_EFFECTS (captures[0]))
    4080            0 :                                 _r = build2_loc (loc, COMPOUND_EXPR, type, fold_ignored_result (captures[0]), _r);
    4081       233706 :                               if (TREE_SIDE_EFFECTS (captures[3]))
    4082            0 :                                 _r = build2_loc (loc, COMPOUND_EXPR, type, fold_ignored_result (captures[3]), _r);
    4083       233706 :                               if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 947, __FILE__, __LINE__, true);
    4084       233706 :                               return _r;
    4085              :                             }
    4086            0 : next_after_fail1377:;
    4087              :                           }
    4088              :                     }
    4089              :                   }
    4090              :               }
    4091       141258 :               break;
    4092              :             }
    4093              :           default:;
    4094              :           }
    4095              :         break;
    4096              :       }
    4097         8028 :     case ADDR_EXPR:
    4098         8028 :       {
    4099         8028 :         {
    4100         8028 :           tree captures[4] ATTRIBUTE_UNUSED = { _p0, _p0, _p1, _p1 };
    4101         8028 :           if (tree_nop_conversion_p (TREE_TYPE(captures[0]), TREE_TYPE (captures[1]))
    4102         8028 :  && tree_nop_conversion_p (TREE_TYPE(captures[2]), TREE_TYPE (captures[3]))
    4103              : )
    4104              :             {
    4105         8028 :               {
    4106         8028 :  poly_int64 diff;
    4107         8028 :                   if (ptr_difference_const (captures[1], captures[3], &diff)
    4108              : )
    4109              :                     {
    4110           76 :                       if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1378;
    4111           76 :                       {
    4112           76 :                         tree _r;
    4113           76 :                         _r =  build_int_cst_type (type, diff);
    4114           76 :                         if (TREE_SIDE_EFFECTS (captures[0]))
    4115            0 :                           _r = build2_loc (loc, COMPOUND_EXPR, type, fold_ignored_result (captures[0]), _r);
    4116           76 :                         if (TREE_SIDE_EFFECTS (captures[2]))
    4117            0 :                           _r = build2_loc (loc, COMPOUND_EXPR, type, fold_ignored_result (captures[2]), _r);
    4118           76 :                         if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 947, __FILE__, __LINE__, true);
    4119           76 :                         return _r;
    4120              :                       }
    4121            0 : next_after_fail1378:;
    4122              :                     }
    4123              :               }
    4124              :             }
    4125              :         }
    4126         7952 :         break;
    4127              :       }
    4128      2577155 :     default:;
    4129              :     }
    4130      2577155 :   switch (TREE_CODE (_p0))
    4131              :     {
    4132         5923 :     case POINTER_PLUS_EXPR:
    4133         5923 :       {
    4134         5923 :         tree _q20 = TREE_OPERAND (_p0, 0);
    4135         5923 :         tree _q21 = TREE_OPERAND (_p0, 1);
    4136         5923 :         switch (TREE_CODE (_q20))
    4137              :           {
    4138           65 :           case ADDR_EXPR:
    4139           65 :             {
    4140           65 :               switch (TREE_CODE (_p1))
    4141              :                 {
    4142            0 :                 case POINTER_PLUS_EXPR:
    4143            0 :                   {
    4144            0 :                     tree _q50 = TREE_OPERAND (_p1, 0);
    4145            0 :                     tree _q51 = TREE_OPERAND (_p1, 1);
    4146            0 :                     switch (TREE_CODE (_q50))
    4147              :                       {
    4148            0 :                       case ADDR_EXPR:
    4149            0 :                         {
    4150            0 :                           {
    4151            0 :                             tree captures[4] ATTRIBUTE_UNUSED = { _q20, _q21, _q50, _q51 };
    4152            0 :                             {
    4153            0 :  poly_int64 diff;
    4154            0 :                                 if (ptr_difference_const (captures[0], captures[2], &diff)
    4155              : )
    4156              :                                   {
    4157            0 :                                     if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1379;
    4158            0 :                                     {
    4159            0 :                                       tree res_op0;
    4160            0 :                                       res_op0 =  build_int_cst_type (type, diff);
    4161            0 :                                       tree res_op1;
    4162            0 :                                       {
    4163            0 :                                         tree _o1[1], _r1;
    4164            0 :                                         {
    4165            0 :                                           tree _o2[2], _r2;
    4166            0 :                                           _o2[0] = captures[1];
    4167            0 :                                           _o2[1] = captures[3];
    4168            0 :                                           _r2 = fold_build2_loc (loc, MINUS_EXPR, TREE_TYPE (_o2[0]), _o2[0], _o2[1]);
    4169            0 :                                           _o1[0] = _r2;
    4170              :                                         }
    4171            0 :                                         if (TREE_TYPE (_o1[0]) != type)
    4172              :                                           {
    4173            0 :                                             _r1 = fold_build1_loc (loc, NOP_EXPR, type, _o1[0]);
    4174              :                                           }
    4175              :                                         else
    4176              :                                           _r1 = _o1[0];
    4177            0 :                                         res_op1 = _r1;
    4178              :                                       }
    4179            0 :                                       tree _r;
    4180            0 :                                       _r = fold_build2_loc (loc, PLUS_EXPR, type, res_op0, res_op1);
    4181            0 :                                       if (TREE_SIDE_EFFECTS (captures[0]))
    4182            0 :                                         _r = build2_loc (loc, COMPOUND_EXPR, type, fold_ignored_result (captures[0]), _r);
    4183            0 :                                       if (TREE_SIDE_EFFECTS (captures[2]))
    4184            0 :                                         _r = build2_loc (loc, COMPOUND_EXPR, type, fold_ignored_result (captures[2]), _r);
    4185            0 :                                       if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 948, __FILE__, __LINE__, true);
    4186            0 :                                       return _r;
    4187              :                                     }
    4188            0 : next_after_fail1379:;
    4189              :                                   }
    4190              :                             }
    4191              :                           }
    4192            0 :                           break;
    4193              :                         }
    4194              :                       default:;
    4195              :                       }
    4196              :                     break;
    4197              :                   }
    4198              :                 default:;
    4199              :                 }
    4200              :               break;
    4201              :             }
    4202         5923 :           default:;
    4203              :           }
    4204         5923 :         switch (TREE_CODE (_p1))
    4205              :           {
    4206          112 :           case ADDR_EXPR:
    4207          112 :             {
    4208          112 :               {
    4209          112 :                 tree captures[3] ATTRIBUTE_UNUSED = { _q20, _q21, _p1 };
    4210          112 :                 {
    4211          112 :  poly_int64 diff;
    4212          112 :                     if (ptr_difference_const (captures[0], captures[2], &diff)
    4213              : )
    4214              :                       {
    4215           98 :                         if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1380;
    4216           98 :                         {
    4217           98 :                           tree res_op0;
    4218           98 :                           res_op0 =  build_int_cst_type (type, diff);
    4219           98 :                           tree res_op1;
    4220           98 :                           {
    4221           98 :                             tree _o1[1], _r1;
    4222           98 :                             _o1[0] = captures[1];
    4223           98 :                             if (TREE_TYPE (_o1[0]) != type)
    4224              :                               {
    4225           98 :                                 _r1 = fold_build1_loc (loc, NOP_EXPR, type, _o1[0]);
    4226              :                               }
    4227              :                             else
    4228              :                               _r1 = _o1[0];
    4229           98 :                             res_op1 = _r1;
    4230              :                           }
    4231           98 :                           tree _r;
    4232           98 :                           _r = fold_build2_loc (loc, PLUS_EXPR, type, res_op0, res_op1);
    4233           98 :                           if (TREE_SIDE_EFFECTS (captures[0]))
    4234            0 :                             _r = build2_loc (loc, COMPOUND_EXPR, type, fold_ignored_result (captures[0]), _r);
    4235           98 :                           if (TREE_SIDE_EFFECTS (captures[2]))
    4236            0 :                             _r = build2_loc (loc, COMPOUND_EXPR, type, fold_ignored_result (captures[2]), _r);
    4237           98 :                           if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 949, __FILE__, __LINE__, true);
    4238           98 :                           return _r;
    4239              :                         }
    4240            0 : next_after_fail1380:;
    4241              :                       }
    4242              :                 }
    4243              :               }
    4244           14 :               break;
    4245              :             }
    4246         5825 :           default:;
    4247              :           }
    4248         5825 :         if ((_p1 == _q20 && ! TREE_SIDE_EFFECTS (_p1)) || operand_equal_p (_p1, _q20, 0))
    4249              :           {
    4250         1745 :             {
    4251         1745 :               tree captures[3] ATTRIBUTE_UNUSED = { _q20, _q21, _q20 };
    4252         1745 :               if (!TYPE_SATURATING (type)
    4253              : )
    4254              :                 {
    4255         1745 :                   if ((!FLOAT_TYPE_P (type) || flag_associative_math)
    4256         3490 :  && !FIXED_POINT_TYPE_P (type)
    4257              : )
    4258              :                     {
    4259         1745 :                       {
    4260         1745 :  tree stype = signed_type_for (TREE_TYPE (captures[1]));
    4261         1745 :                           if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1381;
    4262         1745 :                           {
    4263         1745 :                             tree res_op0;
    4264         1745 :                             {
    4265         1745 :                               tree _o1[1], _r1;
    4266         1745 :                               _o1[0] = captures[1];
    4267         1745 :                               if (TREE_TYPE (_o1[0]) != stype)
    4268              :                                 {
    4269         1745 :                                   _r1 = fold_build1_loc (loc, VIEW_CONVERT_EXPR, stype, _o1[0]);
    4270              :                                 }
    4271              :                               else
    4272              :                                 _r1 = _o1[0];
    4273         1745 :                               res_op0 = _r1;
    4274              :                             }
    4275         1745 :                             tree _r;
    4276         1745 :                             _r = fold_build1_loc (loc, NOP_EXPR, type, res_op0);
    4277         1745 :                             if (TREE_SIDE_EFFECTS (captures[2]))
    4278            0 :                               _r = build2_loc (loc, COMPOUND_EXPR, type, fold_ignored_result (captures[2]), _r);
    4279         1745 :                             if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 950, __FILE__, __LINE__, true);
    4280         1745 :                             return _r;
    4281              :                           }
    4282            0 : next_after_fail1381:;
    4283              :                       }
    4284              :                     }
    4285              :                 }
    4286              :             }
    4287              :           }
    4288              :         break;
    4289              :       }
    4290         1292 :     case ADDR_EXPR:
    4291         1292 :       {
    4292         1292 :         switch (TREE_CODE (_p1))
    4293              :           {
    4294            9 :           case POINTER_PLUS_EXPR:
    4295            9 :             {
    4296            9 :               tree _q30 = TREE_OPERAND (_p1, 0);
    4297            9 :               tree _q31 = TREE_OPERAND (_p1, 1);
    4298            9 :               {
    4299            9 :                 tree captures[3] ATTRIBUTE_UNUSED = { _p0, _q30, _q31 };
    4300            9 :                 {
    4301            9 :  poly_int64 diff;
    4302            9 :                     if (ptr_difference_const (captures[0], captures[1], &diff)
    4303              : )
    4304              :                       {
    4305            9 :                         if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1382;
    4306            9 :                         {
    4307            9 :                           tree res_op0;
    4308            9 :                           res_op0 =  build_int_cst_type (type, diff);
    4309            9 :                           tree res_op1;
    4310            9 :                           {
    4311            9 :                             tree _o1[1], _r1;
    4312            9 :                             _o1[0] = captures[2];
    4313            9 :                             if (TREE_TYPE (_o1[0]) != type)
    4314              :                               {
    4315            9 :                                 _r1 = fold_build1_loc (loc, NOP_EXPR, type, _o1[0]);
    4316              :                               }
    4317              :                             else
    4318              :                               _r1 = _o1[0];
    4319            9 :                             res_op1 = _r1;
    4320              :                           }
    4321            9 :                           tree _r;
    4322            9 :                           _r = fold_build2_loc (loc, MINUS_EXPR, type, res_op0, res_op1);
    4323            9 :                           if (TREE_SIDE_EFFECTS (captures[0]))
    4324            0 :                             _r = build2_loc (loc, COMPOUND_EXPR, type, fold_ignored_result (captures[0]), _r);
    4325            9 :                           if (TREE_SIDE_EFFECTS (captures[1]))
    4326            0 :                             _r = build2_loc (loc, COMPOUND_EXPR, type, fold_ignored_result (captures[1]), _r);
    4327            9 :                           if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 951, __FILE__, __LINE__, true);
    4328            9 :                           return _r;
    4329              :                         }
    4330            0 : next_after_fail1382:;
    4331              :                       }
    4332              :                 }
    4333              :               }
    4334            0 :               break;
    4335              :             }
    4336              :           default:;
    4337              :           }
    4338              :         break;
    4339              :       }
    4340      2575303 :     default:;
    4341              :     }
    4342      2575303 :   switch (TREE_CODE (_p1))
    4343              :     {
    4344          209 :     case POINTER_PLUS_EXPR:
    4345          209 :       {
    4346          209 :         tree _q30 = TREE_OPERAND (_p1, 0);
    4347          209 :         tree _q31 = TREE_OPERAND (_p1, 1);
    4348          209 :         if ((_q30 == _p0 && ! TREE_SIDE_EFFECTS (_q30)) || operand_equal_p (_q30, _p0, 0))
    4349              :           {
    4350          124 :             {
    4351          124 :               tree captures[3] ATTRIBUTE_UNUSED = { _q30, _q31, _p0 };
    4352          124 :               if (!TYPE_SATURATING (type)
    4353              : )
    4354              :                 {
    4355          124 :                   if ((!FLOAT_TYPE_P (type) || flag_associative_math)
    4356          248 :  && !FIXED_POINT_TYPE_P (type)
    4357              : )
    4358              :                     {
    4359          124 :                       {
    4360          124 :  tree stype = signed_type_for (TREE_TYPE (captures[1]));
    4361          124 :                           if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1383;
    4362          124 :                           {
    4363          124 :                             tree res_op0;
    4364          124 :                             {
    4365          124 :                               tree _o1[1], _r1;
    4366          124 :                               {
    4367          124 :                                 tree _o2[1], _r2;
    4368          124 :                                 _o2[0] = captures[1];
    4369          124 :                                 if (TREE_TYPE (_o2[0]) != stype)
    4370              :                                   {
    4371          124 :                                     _r2 = fold_build1_loc (loc, VIEW_CONVERT_EXPR, stype, _o2[0]);
    4372              :                                   }
    4373              :                                 else
    4374              :                                   _r2 = _o2[0];
    4375          124 :                                 _o1[0] = _r2;
    4376              :                               }
    4377          124 :                               if (TREE_TYPE (_o1[0]) != type)
    4378              :                                 {
    4379          124 :                                   _r1 = fold_build1_loc (loc, NOP_EXPR, type, _o1[0]);
    4380              :                                 }
    4381              :                               else
    4382              :                                 _r1 = _o1[0];
    4383          124 :                               res_op0 = _r1;
    4384              :                             }
    4385          124 :                             tree _r;
    4386          124 :                             _r = fold_build1_loc (loc, NEGATE_EXPR, type, res_op0);
    4387          124 :                             if (TREE_SIDE_EFFECTS (captures[2]))
    4388            0 :                               _r = build2_loc (loc, COMPOUND_EXPR, type, fold_ignored_result (captures[2]), _r);
    4389          124 :                             if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 952, __FILE__, __LINE__, true);
    4390          124 :                             return _r;
    4391              :                           }
    4392            0 : next_after_fail1383:;
    4393              :                       }
    4394              :                     }
    4395              :                 }
    4396              :             }
    4397              :           }
    4398              :         break;
    4399              :       }
    4400      2575179 :     default:;
    4401              :     }
    4402      2575179 :   switch (TREE_CODE (_p0))
    4403              :     {
    4404         4080 :     case POINTER_PLUS_EXPR:
    4405         4080 :       {
    4406         4080 :         tree _q20 = TREE_OPERAND (_p0, 0);
    4407         4080 :         tree _q21 = TREE_OPERAND (_p0, 1);
    4408         4080 :         switch (TREE_CODE (_p1))
    4409              :           {
    4410           30 :           case POINTER_PLUS_EXPR:
    4411           30 :             {
    4412           30 :               tree _q50 = TREE_OPERAND (_p1, 0);
    4413           30 :               tree _q51 = TREE_OPERAND (_p1, 1);
    4414           30 :               if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || operand_equal_p (_q50, _q20, 0))
    4415              :                 {
    4416            2 :                   {
    4417            2 :                     tree captures[4] ATTRIBUTE_UNUSED = { _q20, _q21, _q51, _q20 };
    4418            2 :                     if (!TYPE_SATURATING (type)
    4419              : )
    4420              :                       {
    4421            2 :                         if ((!FLOAT_TYPE_P (type) || flag_associative_math)
    4422            4 :  && !FIXED_POINT_TYPE_P (type)
    4423              : )
    4424              :                           {
    4425            2 :                             {
    4426            2 :  tree stype = signed_type_for (TREE_TYPE (captures[1]));
    4427            2 :                                 if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1384;
    4428            2 :                                 {
    4429            2 :                                   tree res_op0;
    4430            2 :                                   {
    4431            2 :                                     tree _o1[1], _r1;
    4432            2 :                                     {
    4433            2 :                                       tree _o2[1], _r2;
    4434            2 :                                       _o2[0] = captures[1];
    4435            2 :                                       if (TREE_TYPE (_o2[0]) != stype)
    4436              :                                         {
    4437            2 :                                           _r2 = fold_build1_loc (loc, VIEW_CONVERT_EXPR, stype, _o2[0]);
    4438              :                                         }
    4439              :                                       else
    4440              :                                         _r2 = _o2[0];
    4441            2 :                                       _o1[0] = _r2;
    4442              :                                     }
    4443            2 :                                     if (TREE_TYPE (_o1[0]) != type)
    4444              :                                       {
    4445            2 :                                         _r1 = fold_build1_loc (loc, NOP_EXPR, type, _o1[0]);
    4446              :                                       }
    4447              :                                     else
    4448              :                                       _r1 = _o1[0];
    4449            2 :                                     res_op0 = _r1;
    4450              :                                   }
    4451            2 :                                   tree res_op1;
    4452            2 :                                   {
    4453            2 :                                     tree _o1[1], _r1;
    4454            2 :                                     {
    4455            2 :                                       tree _o2[1], _r2;
    4456            2 :                                       _o2[0] = captures[2];
    4457            2 :                                       if (TREE_TYPE (_o2[0]) != stype)
    4458              :                                         {
    4459            2 :                                           _r2 = fold_build1_loc (loc, VIEW_CONVERT_EXPR, stype, _o2[0]);
    4460              :                                         }
    4461              :                                       else
    4462              :                                         _r2 = _o2[0];
    4463            2 :                                       _o1[0] = _r2;
    4464              :                                     }
    4465            2 :                                     if (TREE_TYPE (_o1[0]) != type)
    4466              :                                       {
    4467            2 :                                         _r1 = fold_build1_loc (loc, NOP_EXPR, type, _o1[0]);
    4468              :                                       }
    4469              :                                     else
    4470              :                                       _r1 = _o1[0];
    4471            2 :                                     res_op1 = _r1;
    4472              :                                   }
    4473            2 :                                   tree _r;
    4474            2 :                                   _r = fold_build2_loc (loc, MINUS_EXPR, type, res_op0, res_op1);
    4475            2 :                                   if (TREE_SIDE_EFFECTS (captures[3]))
    4476            0 :                                     _r = build2_loc (loc, COMPOUND_EXPR, type, fold_ignored_result (captures[3]), _r);
    4477            2 :                                   if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 953, __FILE__, __LINE__, true);
    4478            2 :                                   return _r;
    4479              :                                 }
    4480            0 : next_after_fail1384:;
    4481              :                             }
    4482              :                           }
    4483              :                       }
    4484              :                   }
    4485              :                 }
    4486              :               break;
    4487              :             }
    4488              :           default:;
    4489              :           }
    4490              :         break;
    4491              :       }
    4492      2575177 :     default:;
    4493              :     }
    4494      2575177 : if (integer_zerop (_p0))
    4495              :   {
    4496            0 :     {
    4497            0 :       tree captures[1] ATTRIBUTE_UNUSED = { _p1 };
    4498            0 :       if (TREE_SIDE_EFFECTS (_p0)) goto next_after_fail1385;
    4499            0 :       if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1385;
    4500            0 :       {
    4501            0 :         tree res_op0;
    4502            0 :         {
    4503            0 :           tree _o1[1], _r1;
    4504            0 :           _o1[0] = captures[0];
    4505            0 :           if (TREE_TYPE (_o1[0]) != type)
    4506              :             {
    4507            0 :               _r1 = fold_build1_loc (loc, NOP_EXPR, type, _o1[0]);
    4508              :             }
    4509              :           else
    4510              :             _r1 = _o1[0];
    4511            0 :           res_op0 = _r1;
    4512              :         }
    4513            0 :         tree _r;
    4514            0 :         _r = fold_build1_loc (loc, NEGATE_EXPR, type, res_op0);
    4515            0 :         if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 954, __FILE__, __LINE__, true);
    4516            0 :         return _r;
    4517              :       }
    4518              : next_after_fail1385:;
    4519              :     }
    4520              :   }
    4521              :   return NULL_TREE;
    4522              : }
    4523              : 
    4524              : tree
    4525      2190885 : generic_simplify_FLOOR_DIV_EXPR (location_t ARG_UNUSED (loc), enum tree_code ARG_UNUSED (code), const tree ARG_UNUSED (type), tree _p0, tree _p1)
    4526              : {
    4527      2190885 :   const bool debug_dump = dump_file && (dump_flags & TDF_FOLDING);
    4528      2190885 :   if (integer_onep (_p1))
    4529              :     {
    4530       769444 :       {
    4531       769444 :         tree captures[1] ATTRIBUTE_UNUSED = { _p0 };
    4532       769444 :         tree res = generic_simplify_180 (loc, type, _p0, _p1, captures, FLOOR_DIV_EXPR);
    4533       769444 :         if (res) return res;
    4534              :       }
    4535              :     }
    4536      1421441 :   if (integer_zerop (_p0))
    4537              :     {
    4538            4 :       {
    4539            4 :         tree captures[2] ATTRIBUTE_UNUSED = { _p0, _p1 };
    4540            4 :         tree res = generic_simplify_310 (loc, type, _p0, _p1, captures, FLOOR_DIV_EXPR);
    4541            4 :         if (res) return res;
    4542              :       }
    4543              :     }
    4544      1421437 :   switch (TREE_CODE (_p1))
    4545              :     {
    4546          969 :     case SSA_NAME:
    4547          969 :       {
    4548          969 :         {
    4549          969 :           tree captures[2] ATTRIBUTE_UNUSED = { _p0, _p1 };
    4550          969 :           tree res = generic_simplify_312 (loc, type, _p0, _p1, captures, FLOOR_DIV_EXPR);
    4551          969 :           if (res) return res;
    4552              :         }
    4553          969 :         break;
    4554              :       }
    4555      1421437 :     default:;
    4556              :     }
    4557      1421437 : if (integer_minus_onep (_p1))
    4558              :   {
    4559          229 :     {
    4560          229 :       tree captures[2] ATTRIBUTE_UNUSED = { _p0, _p1 };
    4561          229 :       tree res = generic_simplify_311 (loc, type, _p0, _p1, captures, FLOOR_DIV_EXPR);
    4562          229 :       if (res) return res;
    4563              :     }
    4564              :   }
    4565      1421376 :   if ((_p1 == _p0 && ! TREE_SIDE_EFFECTS (_p1)) || (operand_equal_p (_p1, _p0, 0) && types_match (_p1, _p0)))
    4566              :     {
    4567            0 :       {
    4568            0 :         tree captures[1] ATTRIBUTE_UNUSED = { _p0 };
    4569            0 :         tree res = generic_simplify_313 (loc, type, _p0, _p1, captures, FLOOR_DIV_EXPR);
    4570            0 :         if (res) return res;
    4571              :       }
    4572              :     }
    4573      1421376 :   switch (TREE_CODE (_p1))
    4574              :     {
    4575            0 :     case ABS_EXPR:
    4576            0 :       {
    4577            0 :         tree _q30 = TREE_OPERAND (_p1, 0);
    4578            0 :         if ((_q30 == _p0 && ! TREE_SIDE_EFFECTS (_q30)) || (operand_equal_p (_q30, _p0, 0) && types_match (_q30, _p0)))
    4579              :           {
    4580            0 :             {
    4581            0 :               tree captures[1] ATTRIBUTE_UNUSED = { _p0 };
    4582            0 :               tree res = generic_simplify_314 (loc, type, _p0, _p1, captures, FLOOR_DIV_EXPR);
    4583            0 :               if (res) return res;
    4584              :             }
    4585              :           }
    4586              :         break;
    4587              :       }
    4588      1421376 :     default:;
    4589              :     }
    4590      1421376 :   switch (TREE_CODE (_p0))
    4591              :     {
    4592            0 :     case ABS_EXPR:
    4593            0 :       {
    4594            0 :         tree _q20 = TREE_OPERAND (_p0, 0);
    4595            0 :         if ((_p1 == _q20 && ! TREE_SIDE_EFFECTS (_p1)) || (operand_equal_p (_p1, _q20, 0) && types_match (_p1, _q20)))
    4596              :           {
    4597            0 :             {
    4598            0 :               tree captures[1] ATTRIBUTE_UNUSED = { _q20 };
    4599            0 :               tree res = generic_simplify_314 (loc, type, _p0, _p1, captures, FLOOR_DIV_EXPR);
    4600            0 :               if (res) return res;
    4601              :             }
    4602              :           }
    4603              :         break;
    4604              :       }
    4605      1421376 :     default:;
    4606              :     }
    4607      1421376 :   switch (TREE_CODE (_p1))
    4608              :     {
    4609            0 :     case NEGATE_EXPR:
    4610            0 :       {
    4611            0 :         tree _q30 = TREE_OPERAND (_p1, 0);
    4612            0 :         if ((_q30 == _p0 && ! TREE_SIDE_EFFECTS (_q30)) || (operand_equal_p (_q30, _p0, 0) && types_match (_q30, _p0)))
    4613              :           {
    4614            0 :             {
    4615            0 :               tree captures[1] ATTRIBUTE_UNUSED = { _p0 };
    4616            0 :               tree res = generic_simplify_315 (loc, type, _p0, _p1, captures, FLOOR_DIV_EXPR);
    4617            0 :               if (res) return res;
    4618              :             }
    4619              :           }
    4620              :         break;
    4621              :       }
    4622      1421376 :     default:;
    4623              :     }
    4624      1421376 :   switch (TREE_CODE (_p0))
    4625              :     {
    4626          290 :     case NEGATE_EXPR:
    4627          290 :       {
    4628          290 :         tree _q20 = TREE_OPERAND (_p0, 0);
    4629          290 :         if ((_p1 == _q20 && ! TREE_SIDE_EFFECTS (_p1)) || (operand_equal_p (_p1, _q20, 0) && types_match (_p1, _q20)))
    4630              :           {
    4631            0 :             {
    4632            0 :               tree captures[1] ATTRIBUTE_UNUSED = { _q20 };
    4633            0 :               tree res = generic_simplify_315 (loc, type, _p0, _p1, captures, FLOOR_DIV_EXPR);
    4634            0 :               if (res) return res;
    4635              :             }
    4636              :           }
    4637              :         break;
    4638              :       }
    4639      1421376 :     default:;
    4640              :     }
    4641      1421376 :   {
    4642      1421376 :     tree captures[2] ATTRIBUTE_UNUSED = { _p0, _p1 };
    4643      1421376 :     tree res = generic_simplify_321 (loc, type, _p0, _p1, captures, FLOOR_DIV_EXPR, TRUNC_DIV_EXPR);
    4644      1421376 :     if (res) return res;
    4645              :   }
    4646         5553 :   switch (TREE_CODE (_p0))
    4647              :     {
    4648          388 :     CASE_CONVERT:
    4649          388 :       {
    4650          388 :         tree _q20 = TREE_OPERAND (_p0, 0);
    4651          388 :         switch (TREE_CODE (_q20))
    4652              :           {
    4653            0 :           case BIT_AND_EXPR:
    4654            0 :             {
    4655            0 :               tree _q30 = TREE_OPERAND (_q20, 0);
    4656            0 :               tree _q31 = TREE_OPERAND (_q20, 1);
    4657            0 :               switch (TREE_CODE (_q31))
    4658              :                 {
    4659            0 :                 case INTEGER_CST:
    4660            0 :                   {
    4661            0 :                     switch (TREE_CODE (_p1))
    4662              :                       {
    4663            0 :                       case INTEGER_CST:
    4664            0 :                         {
    4665            0 :                           {
    4666            0 :                             tree captures[3] ATTRIBUTE_UNUSED = { _q30, _q31, _p1 };
    4667            0 :                             tree res = generic_simplify_317 (loc, type, _p0, _p1, captures, FLOOR_DIV_EXPR);
    4668            0 :                             if (res) return res;
    4669              :                           }
    4670            0 :                           break;
    4671              :                         }
    4672              :                       default:;
    4673              :                       }
    4674              :                     break;
    4675              :                   }
    4676              :                 default:;
    4677              :                 }
    4678              :               break;
    4679              :             }
    4680              :           default:;
    4681              :           }
    4682              :         break;
    4683              :       }
    4684            0 :     case BIT_AND_EXPR:
    4685            0 :       {
    4686            0 :         tree _q20 = TREE_OPERAND (_p0, 0);
    4687            0 :         tree _q21 = TREE_OPERAND (_p0, 1);
    4688            0 :         switch (TREE_CODE (_q21))
    4689              :           {
    4690            0 :           case INTEGER_CST:
    4691            0 :             {
    4692            0 :               switch (TREE_CODE (_p1))
    4693              :                 {
    4694            0 :                 case INTEGER_CST:
    4695            0 :                   {
    4696            0 :                     {
    4697            0 :                       tree captures[3] ATTRIBUTE_UNUSED = { _q20, _q21, _p1 };
    4698            0 :                       tree res = generic_simplify_317 (loc, type, _p0, _p1, captures, FLOOR_DIV_EXPR);
    4699            0 :                       if (res) return res;
    4700              :                     }
    4701            0 :                     break;
    4702              :                   }
    4703              :                 default:;
    4704              :                 }
    4705              :               break;
    4706              :             }
    4707              :           default:;
    4708              :           }
    4709              :         break;
    4710              :       }
    4711            0 :     case MULT_EXPR:
    4712            0 :       {
    4713            0 :         tree _q20 = TREE_OPERAND (_p0, 0);
    4714            0 :         tree _q21 = TREE_OPERAND (_p0, 1);
    4715            0 :         if ((_p1 == _q21 && ! TREE_SIDE_EFFECTS (_p1)) || (operand_equal_p (_p1, _q21, 0) && types_match (_p1, _q21)))
    4716              :           {
    4717            0 :             {
    4718            0 :               tree captures[3] ATTRIBUTE_UNUSED = { _p0, _q20, _q21 };
    4719            0 :               tree res = generic_simplify_319 (loc, type, _p0, _p1, captures, FLOOR_DIV_EXPR);
    4720            0 :               if (res) return res;
    4721              :             }
    4722              :           }
    4723            0 :         if ((_p1 == _q20 && ! TREE_SIDE_EFFECTS (_p1)) || (operand_equal_p (_p1, _q20, 0) && types_match (_p1, _q20)))
    4724              :           {
    4725            0 :             {
    4726            0 :               tree captures[3] ATTRIBUTE_UNUSED = { _p0, _q21, _q20 };
    4727            0 :               tree res = generic_simplify_319 (loc, type, _p0, _p1, captures, FLOOR_DIV_EXPR);
    4728            0 :               if (res) return res;
    4729              :             }
    4730              :           }
    4731            0 :         switch (TREE_CODE (_q21))
    4732              :           {
    4733            0 :           case INTEGER_CST:
    4734            0 :             {
    4735            0 :               switch (TREE_CODE (_p1))
    4736              :                 {
    4737            0 :                 case MULT_EXPR:
    4738            0 :                   {
    4739            0 :                     tree _q50 = TREE_OPERAND (_p1, 0);
    4740            0 :                     tree _q51 = TREE_OPERAND (_p1, 1);
    4741            0 :                     if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
    4742              :                       {
    4743            0 :                         switch (TREE_CODE (_q51))
    4744              :                           {
    4745            0 :                           case INTEGER_CST:
    4746            0 :                             {
    4747            0 :                               {
    4748            0 :                                 tree captures[4] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _q51 };
    4749            0 :                                 tree res = generic_simplify_320 (loc, type, _p0, _p1, captures, FLOOR_DIV_EXPR);
    4750            0 :                                 if (res) return res;
    4751              :                               }
    4752            0 :                               break;
    4753              :                             }
    4754              :                           default:;
    4755              :                           }
    4756              :                       }
    4757              :                     break;
    4758              :                   }
    4759              :                 default:;
    4760              :                 }
    4761              :               break;
    4762              :             }
    4763              :           default:;
    4764              :           }
    4765              :         break;
    4766              :       }
    4767            0 :     case VEC_COND_EXPR:
    4768            0 :       {
    4769            0 :         tree _q20 = TREE_OPERAND (_p0, 0);
    4770            0 :         tree _q21 = TREE_OPERAND (_p0, 1);
    4771            0 :         tree _q22 = TREE_OPERAND (_p0, 2);
    4772            0 :         switch (TREE_CODE (_p1))
    4773              :           {
    4774            0 :           case VEC_COND_EXPR:
    4775            0 :             {
    4776            0 :               tree _q60 = TREE_OPERAND (_p1, 0);
    4777            0 :               tree _q61 = TREE_OPERAND (_p1, 1);
    4778            0 :               tree _q62 = TREE_OPERAND (_p1, 2);
    4779            0 :               if ((_q60 == _q20 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q20, 0) && types_match (_q60, _q20)))
    4780              :                 {
    4781            0 :                   {
    4782            0 :                     tree captures[7] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _q22, _p1, _q61, _q62 };
    4783            0 :                     if (VECTOR_TYPE_P (type)
    4784            0 :  && (TREE_CODE_CLASS (FLOOR_DIV_EXPR) != tcc_comparison
    4785              :  || types_match (type, TREE_TYPE (captures[2]))
    4786              :  || expand_vec_cond_expr_p (type, TREE_TYPE (captures[1]))
    4787              :  || (optimize_vectors_before_lowering_p ()
    4788              :  && !expand_vec_cond_expr_p (TREE_TYPE (captures[2]), TREE_TYPE (captures[1]))))
    4789              : )
    4790              :                       {
    4791            0 :                         if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1577;
    4792            0 :                         {
    4793            0 :                           tree res_op0;
    4794            0 :                           res_op0 = captures[1];
    4795            0 :                           tree res_op1;
    4796            0 :                           {
    4797            0 :                             tree _o1[2], _r1;
    4798            0 :                             _o1[0] = captures[2];
    4799            0 :                             _o1[1] = captures[5];
    4800            0 :                             _r1 = fold_build2_loc (loc, FLOOR_DIV_EXPR, type, _o1[0], _o1[1]);
    4801            0 :                             if (EXPR_P (_r1))
    4802            0 :                               goto next_after_fail1577;
    4803            0 :                             res_op1 = _r1;
    4804              :                           }
    4805            0 :                           tree res_op2;
    4806            0 :                           {
    4807            0 :                             tree _o1[2], _r1;
    4808            0 :                             _o1[0] = captures[3];
    4809            0 :                             _o1[1] = captures[6];
    4810            0 :                             _r1 = fold_build2_loc (loc, FLOOR_DIV_EXPR, type, _o1[0], _o1[1]);
    4811            0 :                             if (EXPR_P (_r1))
    4812            0 :                               goto next_after_fail1577;
    4813            0 :                             res_op2 = _r1;
    4814              :                           }
    4815            0 :                           tree _r;
    4816            0 :                           _r = fold_build3_loc (loc, VEC_COND_EXPR, type, res_op0, res_op1, res_op2);
    4817            0 :                           if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 890, __FILE__, __LINE__, true);
    4818            0 :                           return _r;
    4819              :                         }
    4820            0 : next_after_fail1577:;
    4821              :                       }
    4822              :                   }
    4823              :                 }
    4824              :               break;
    4825              :             }
    4826            0 :           default:;
    4827              :           }
    4828            0 :         {
    4829            0 :           tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _q22, _p1 };
    4830            0 :           if (VECTOR_TYPE_P (type)
    4831            0 :  && (TREE_CODE_CLASS (FLOOR_DIV_EXPR) != tcc_comparison
    4832              :  || types_match (type, TREE_TYPE (captures[2]))
    4833              :  || expand_vec_cond_expr_p (type, TREE_TYPE (captures[1]))
    4834              :  || (optimize_vectors_before_lowering_p ()
    4835              :  && !expand_vec_cond_expr_p (TREE_TYPE (captures[2]), TREE_TYPE (captures[1]))))
    4836              : )
    4837              :             {
    4838            0 :               if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1578;
    4839            0 :               {
    4840            0 :                 if (! tree_invariant_p (captures[4])) goto next_after_fail1578;
    4841            0 :                 tree res_op0;
    4842            0 :                 res_op0 = captures[1];
    4843            0 :                 tree res_op1;
    4844            0 :                 {
    4845            0 :                   tree _o1[2], _r1;
    4846            0 :                   _o1[0] = captures[2];
    4847            0 :                   _o1[1] = unshare_expr (captures[4]);
    4848            0 :                   _r1 = fold_build2_loc (loc, FLOOR_DIV_EXPR, type, _o1[0], _o1[1]);
    4849            0 :                   if (EXPR_P (_r1))
    4850            0 :                     goto next_after_fail1578;
    4851            0 :                   res_op1 = _r1;
    4852              :                 }
    4853            0 :                 tree res_op2;
    4854            0 :                 {
    4855            0 :                   tree _o1[2], _r1;
    4856            0 :                   _o1[0] = captures[3];
    4857            0 :                   _o1[1] = captures[4];
    4858            0 :                   _r1 = fold_build2_loc (loc, FLOOR_DIV_EXPR, type, _o1[0], _o1[1]);
    4859            0 :                   if (EXPR_P (_r1))
    4860            0 :                     goto next_after_fail1578;
    4861            0 :                   res_op2 = _r1;
    4862              :                 }
    4863            0 :                 tree _r;
    4864            0 :                 _r = fold_build3_loc (loc, VEC_COND_EXPR, type, res_op0, res_op1, res_op2);
    4865            0 :                 if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 892, __FILE__, __LINE__, true);
    4866            0 :                 return _r;
    4867              :               }
    4868            0 : next_after_fail1578:;
    4869              :             }
    4870              :         }
    4871            0 :         break;
    4872              :       }
    4873         5553 :     default:;
    4874              :     }
    4875         5553 :   switch (TREE_CODE (_p1))
    4876              :     {
    4877            0 :     case VEC_COND_EXPR:
    4878            0 :       {
    4879            0 :         tree _q30 = TREE_OPERAND (_p1, 0);
    4880            0 :         tree _q31 = TREE_OPERAND (_p1, 1);
    4881            0 :         tree _q32 = TREE_OPERAND (_p1, 2);
    4882            0 :         {
    4883            0 :           tree captures[5] ATTRIBUTE_UNUSED = { _p0, _p1, _q30, _q31, _q32 };
    4884            0 :           if (VECTOR_TYPE_P (type)
    4885            0 :  && (TREE_CODE_CLASS (FLOOR_DIV_EXPR) != tcc_comparison
    4886              :  || types_match (type, TREE_TYPE (captures[3]))
    4887              :  || expand_vec_cond_expr_p (type, TREE_TYPE (captures[2]))
    4888              :  || (optimize_vectors_before_lowering_p ()
    4889              :  && !expand_vec_cond_expr_p (TREE_TYPE (captures[3]), TREE_TYPE (captures[2]))))
    4890              : )
    4891              :             {
    4892            0 :               if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1579;
    4893            0 :               {
    4894            0 :                 if (! tree_invariant_p (captures[0])) goto next_after_fail1579;
    4895            0 :                 tree res_op0;
    4896            0 :                 res_op0 = captures[2];
    4897            0 :                 tree res_op1;
    4898            0 :                 {
    4899            0 :                   tree _o1[2], _r1;
    4900            0 :                   _o1[0] = unshare_expr (captures[0]);
    4901            0 :                   _o1[1] = captures[3];
    4902            0 :                   _r1 = fold_build2_loc (loc, FLOOR_DIV_EXPR, type, _o1[0], _o1[1]);
    4903            0 :                   if (EXPR_P (_r1))
    4904            0 :                     goto next_after_fail1579;
    4905            0 :                   res_op1 = _r1;
    4906              :                 }
    4907            0 :                 tree res_op2;
    4908            0 :                 {
    4909            0 :                   tree _o1[2], _r1;
    4910            0 :                   _o1[0] = captures[0];
    4911            0 :                   _o1[1] = captures[4];
    4912            0 :                   _r1 = fold_build2_loc (loc, FLOOR_DIV_EXPR, type, _o1[0], _o1[1]);
    4913            0 :                   if (EXPR_P (_r1))
    4914            0 :                     goto next_after_fail1579;
    4915            0 :                   res_op2 = _r1;
    4916              :                 }
    4917            0 :                 tree _r;
    4918            0 :                 _r = fold_build3_loc (loc, VEC_COND_EXPR, type, res_op0, res_op1, res_op2);
    4919            0 :                 if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 893, __FILE__, __LINE__, true);
    4920            0 :                 return _r;
    4921              :               }
    4922            0 : next_after_fail1579:;
    4923              :             }
    4924              :         }
    4925            0 :         break;
    4926              :       }
    4927              :     default:;
    4928              :     }
    4929              :   return NULL_TREE;
    4930              : }
    4931              : 
    4932              : tree
    4933       852973 : generic_simplify_FLOOR_MOD_EXPR (location_t ARG_UNUSED (loc), enum tree_code ARG_UNUSED (code), const tree ARG_UNUSED (type), tree _p0, tree _p1)
    4934              : {
    4935       852973 :   const bool debug_dump = dump_file && (dump_flags & TDF_FOLDING);
    4936       852973 :   {
    4937       852973 :     tree captures[2] ATTRIBUTE_UNUSED = { _p0, _p1 };
    4938       852973 :     tree res = generic_simplify_321 (loc, type, _p0, _p1, captures, FLOOR_MOD_EXPR, TRUNC_MOD_EXPR);
    4939       852973 :     if (res) return res;
    4940              :   }
    4941         3561 :   if (integer_zerop (_p0))
    4942              :     {
    4943            0 :       {
    4944            0 :         tree captures[2] ATTRIBUTE_UNUSED = { _p0, _p1 };
    4945            0 :         tree res = generic_simplify_322 (loc, type, _p0, _p1, captures, FLOOR_MOD_EXPR);
    4946            0 :         if (res) return res;
    4947              :       }
    4948              :     }
    4949         3561 :   if (integer_onep (_p1))
    4950              :     {
    4951            0 :       {
    4952            0 :         tree captures[1] ATTRIBUTE_UNUSED = { _p0 };
    4953            0 :         tree res = generic_simplify_323 (loc, type, _p0, _p1, captures, FLOOR_MOD_EXPR);
    4954            0 :         if (res) return res;
    4955              :       }
    4956              :     }
    4957         3561 :   if (integer_minus_onep (_p1))
    4958              :     {
    4959            0 :       {
    4960            0 :         tree captures[2] ATTRIBUTE_UNUSED = { _p0, _p1 };
    4961            0 :         tree res = generic_simplify_324 (loc, type, _p0, _p1, captures, FLOOR_MOD_EXPR);
    4962            0 :         if (res) return res;
    4963              :       }
    4964              :     }
    4965         3561 :   if ((_p1 == _p0 && ! TREE_SIDE_EFFECTS (_p1)) || (operand_equal_p (_p1, _p0, 0) && types_match (_p1, _p0)))
    4966              :     {
    4967            0 :       {
    4968            0 :         tree captures[1] ATTRIBUTE_UNUSED = { _p0 };
    4969            0 :         tree res = generic_simplify_325 (loc, type, _p0, _p1, captures, FLOOR_MOD_EXPR);
    4970            0 :         if (res) return res;
    4971              :       }
    4972              :     }
    4973         3561 :   switch (TREE_CODE (_p0))
    4974              :     {
    4975            0 :     case FLOOR_MOD_EXPR:
    4976            0 :       {
    4977            0 :         tree _q20 = TREE_OPERAND (_p0, 0);
    4978            0 :         tree _q21 = TREE_OPERAND (_p0, 1);
    4979            0 :         if ((_p1 == _q21 && ! TREE_SIDE_EFFECTS (_p1)) || (operand_equal_p (_p1, _q21, 0) && types_match (_p1, _q21)))
    4980              :           {
    4981            0 :             {
    4982            0 :               tree captures[3] ATTRIBUTE_UNUSED = { _p0, _q20, _q21 };
    4983            0 :               tree res = generic_simplify_326 (loc, type, _p0, _p1, captures, FLOOR_MOD_EXPR);
    4984            0 :               if (res) return res;
    4985              :             }
    4986              :           }
    4987              :         break;
    4988              :       }
    4989            4 :     case MULT_EXPR:
    4990            4 :       {
    4991            4 :         tree _q20 = TREE_OPERAND (_p0, 0);
    4992            4 :         tree _q21 = TREE_OPERAND (_p0, 1);
    4993            4 :         switch (TREE_CODE (_q21))
    4994              :           {
    4995            4 :           case INTEGER_CST:
    4996            4 :             {
    4997            4 :               switch (TREE_CODE (_p1))
    4998              :                 {
    4999            4 :                 case INTEGER_CST:
    5000            4 :                   {
    5001            4 :                     {
    5002            4 :                       tree captures[3] ATTRIBUTE_UNUSED = { _q20, _q21, _p1 };
    5003            4 :                       tree res = generic_simplify_327 (loc, type, _p0, _p1, captures, FLOOR_MOD_EXPR);
    5004            4 :                       if (res) return res;
    5005              :                     }
    5006            4 :                     break;
    5007              :                   }
    5008              :                 default:;
    5009              :                 }
    5010              :               break;
    5011              :             }
    5012              :           default:;
    5013              :           }
    5014              :         break;
    5015              :       }
    5016         3561 :     default:;
    5017              :     }
    5018         3561 :   switch (TREE_CODE (_p1))
    5019              :     {
    5020            1 :     CASE_CONVERT:
    5021            1 :       {
    5022            1 :         tree _q30 = TREE_OPERAND (_p1, 0);
    5023            1 :         {
    5024            1 :           tree _q30_pops[1];
    5025            1 :           if (tree_power_of_two_cand (_q30, _q30_pops))
    5026              :             {
    5027            0 :               tree _q40 = _q30_pops[0];
    5028            0 :               {
    5029            0 :                 tree captures[3] ATTRIBUTE_UNUSED = { _p0, _q30, _q40 };
    5030            0 :                 tree res = generic_simplify_328 (loc, type, _p0, _p1, captures, FLOOR_MOD_EXPR);
    5031            0 :                 if (res) return res;
    5032              :               }
    5033              :             }
    5034              :         }
    5035            1 :         break;
    5036              :       }
    5037         3561 :     default:;
    5038              :     }
    5039         3561 : {
    5040         3561 :   tree _p1_pops[1];
    5041         3561 :   if (tree_power_of_two_cand (_p1, _p1_pops))
    5042              :     {
    5043         1778 :       tree _q30 = _p1_pops[0];
    5044         1778 :       {
    5045         1778 :         tree captures[3] ATTRIBUTE_UNUSED = { _p0, _p1, _q30 };
    5046         1778 :         tree res = generic_simplify_328 (loc, type, _p0, _p1, captures, FLOOR_MOD_EXPR);
    5047         1778 :         if (res) return res;
    5048              :       }
    5049              :     }
    5050              : }
    5051         3521 :   switch (TREE_CODE (_p0))
    5052              :     {
    5053            0 :     case VEC_COND_EXPR:
    5054            0 :       {
    5055            0 :         tree _q20 = TREE_OPERAND (_p0, 0);
    5056            0 :         tree _q21 = TREE_OPERAND (_p0, 1);
    5057            0 :         tree _q22 = TREE_OPERAND (_p0, 2);
    5058            0 :         switch (TREE_CODE (_p1))
    5059              :           {
    5060            0 :           case VEC_COND_EXPR:
    5061            0 :             {
    5062            0 :               tree _q60 = TREE_OPERAND (_p1, 0);
    5063            0 :               tree _q61 = TREE_OPERAND (_p1, 1);
    5064            0 :               tree _q62 = TREE_OPERAND (_p1, 2);
    5065            0 :               if ((_q60 == _q20 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q20, 0) && types_match (_q60, _q20)))
    5066              :                 {
    5067            0 :                   {
    5068            0 :                     tree captures[7] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _q22, _p1, _q61, _q62 };
    5069            0 :                     if (VECTOR_TYPE_P (type)
    5070            0 :  && (TREE_CODE_CLASS (FLOOR_MOD_EXPR) != tcc_comparison
    5071              :  || types_match (type, TREE_TYPE (captures[2]))
    5072              :  || expand_vec_cond_expr_p (type, TREE_TYPE (captures[1]))
    5073              :  || (optimize_vectors_before_lowering_p ()
    5074              :  && !expand_vec_cond_expr_p (TREE_TYPE (captures[2]), TREE_TYPE (captures[1]))))
    5075              : )
    5076              :                       {
    5077            0 :                         if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1586;
    5078            0 :                         {
    5079            0 :                           tree res_op0;
    5080            0 :                           res_op0 = captures[1];
    5081            0 :                           tree res_op1;
    5082            0 :                           {
    5083            0 :                             tree _o1[2], _r1;
    5084            0 :                             _o1[0] = captures[2];
    5085            0 :                             _o1[1] = captures[5];
    5086            0 :                             _r1 = fold_build2_loc (loc, FLOOR_MOD_EXPR, type, _o1[0], _o1[1]);
    5087            0 :                             if (EXPR_P (_r1))
    5088            0 :                               goto next_after_fail1586;
    5089            0 :                             res_op1 = _r1;
    5090              :                           }
    5091            0 :                           tree res_op2;
    5092            0 :                           {
    5093            0 :                             tree _o1[2], _r1;
    5094            0 :                             _o1[0] = captures[3];
    5095            0 :                             _o1[1] = captures[6];
    5096            0 :                             _r1 = fold_build2_loc (loc, FLOOR_MOD_EXPR, type, _o1[0], _o1[1]);
    5097            0 :                             if (EXPR_P (_r1))
    5098            0 :                               goto next_after_fail1586;
    5099            0 :                             res_op2 = _r1;
    5100              :                           }
    5101            0 :                           tree _r;
    5102            0 :                           _r = fold_build3_loc (loc, VEC_COND_EXPR, type, res_op0, res_op1, res_op2);
    5103            0 :                           if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 890, __FILE__, __LINE__, true);
    5104            0 :                           return _r;
    5105              :                         }
    5106            0 : next_after_fail1586:;
    5107              :                       }
    5108              :                   }
    5109              :                 }
    5110              :               break;
    5111              :             }
    5112            0 :           default:;
    5113              :           }
    5114            0 :         {
    5115            0 :           tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _q22, _p1 };
    5116            0 :           if (VECTOR_TYPE_P (type)
    5117            0 :  && (TREE_CODE_CLASS (FLOOR_MOD_EXPR) != tcc_comparison
    5118              :  || types_match (type, TREE_TYPE (captures[2]))
    5119              :  || expand_vec_cond_expr_p (type, TREE_TYPE (captures[1]))
    5120              :  || (optimize_vectors_before_lowering_p ()
    5121              :  && !expand_vec_cond_expr_p (TREE_TYPE (captures[2]), TREE_TYPE (captures[1]))))
    5122              : )
    5123              :             {
    5124            0 :               if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1587;
    5125            0 :               {
    5126            0 :                 if (! tree_invariant_p (captures[4])) goto next_after_fail1587;
    5127            0 :                 tree res_op0;
    5128            0 :                 res_op0 = captures[1];
    5129            0 :                 tree res_op1;
    5130            0 :                 {
    5131            0 :                   tree _o1[2], _r1;
    5132            0 :                   _o1[0] = captures[2];
    5133            0 :                   _o1[1] = unshare_expr (captures[4]);
    5134            0 :                   _r1 = fold_build2_loc (loc, FLOOR_MOD_EXPR, type, _o1[0], _o1[1]);
    5135            0 :                   if (EXPR_P (_r1))
    5136            0 :                     goto next_after_fail1587;
    5137            0 :                   res_op1 = _r1;
    5138              :                 }
    5139            0 :                 tree res_op2;
    5140            0 :                 {
    5141            0 :                   tree _o1[2], _r1;
    5142            0 :                   _o1[0] = captures[3];
    5143            0 :                   _o1[1] = captures[4];
    5144            0 :                   _r1 = fold_build2_loc (loc, FLOOR_MOD_EXPR, type, _o1[0], _o1[1]);
    5145            0 :                   if (EXPR_P (_r1))
    5146            0 :                     goto next_after_fail1587;
    5147            0 :                   res_op2 = _r1;
    5148              :                 }
    5149            0 :                 tree _r;
    5150            0 :                 _r = fold_build3_loc (loc, VEC_COND_EXPR, type, res_op0, res_op1, res_op2);
    5151            0 :                 if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 892, __FILE__, __LINE__, true);
    5152            0 :                 return _r;
    5153              :               }
    5154            0 : next_after_fail1587:;
    5155              :             }
    5156              :         }
    5157            0 :         break;
    5158              :       }
    5159         3521 :     default:;
    5160              :     }
    5161         3521 :   switch (TREE_CODE (_p1))
    5162              :     {
    5163            0 :     case VEC_COND_EXPR:
    5164            0 :       {
    5165            0 :         tree _q30 = TREE_OPERAND (_p1, 0);
    5166            0 :         tree _q31 = TREE_OPERAND (_p1, 1);
    5167            0 :         tree _q32 = TREE_OPERAND (_p1, 2);
    5168            0 :         {
    5169            0 :           tree captures[5] ATTRIBUTE_UNUSED = { _p0, _p1, _q30, _q31, _q32 };
    5170            0 :           if (VECTOR_TYPE_P (type)
    5171            0 :  && (TREE_CODE_CLASS (FLOOR_MOD_EXPR) != tcc_comparison
    5172              :  || types_match (type, TREE_TYPE (captures[3]))
    5173              :  || expand_vec_cond_expr_p (type, TREE_TYPE (captures[2]))
    5174              :  || (optimize_vectors_before_lowering_p ()
    5175              :  && !expand_vec_cond_expr_p (TREE_TYPE (captures[3]), TREE_TYPE (captures[2]))))
    5176              : )
    5177              :             {
    5178            0 :               if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1588;
    5179            0 :               {
    5180            0 :                 if (! tree_invariant_p (captures[0])) goto next_after_fail1588;
    5181            0 :                 tree res_op0;
    5182            0 :                 res_op0 = captures[2];
    5183            0 :                 tree res_op1;
    5184            0 :                 {
    5185            0 :                   tree _o1[2], _r1;
    5186            0 :                   _o1[0] = unshare_expr (captures[0]);
    5187            0 :                   _o1[1] = captures[3];
    5188            0 :                   _r1 = fold_build2_loc (loc, FLOOR_MOD_EXPR, type, _o1[0], _o1[1]);
    5189            0 :                   if (EXPR_P (_r1))
    5190            0 :                     goto next_after_fail1588;
    5191            0 :                   res_op1 = _r1;
    5192              :                 }
    5193            0 :                 tree res_op2;
    5194            0 :                 {
    5195            0 :                   tree _o1[2], _r1;
    5196            0 :                   _o1[0] = captures[0];
    5197            0 :                   _o1[1] = captures[4];
    5198            0 :                   _r1 = fold_build2_loc (loc, FLOOR_MOD_EXPR, type, _o1[0], _o1[1]);
    5199            0 :                   if (EXPR_P (_r1))
    5200            0 :                     goto next_after_fail1588;
    5201            0 :                   res_op2 = _r1;
    5202              :                 }
    5203            0 :                 tree _r;
    5204            0 :                 _r = fold_build3_loc (loc, VEC_COND_EXPR, type, res_op0, res_op1, res_op2);
    5205            0 :                 if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 893, __FILE__, __LINE__, true);
    5206            0 :                 return _r;
    5207              :               }
    5208            0 : next_after_fail1588:;
    5209              :             }
    5210              :         }
    5211            0 :         break;
    5212              :       }
    5213              :     default:;
    5214              :     }
    5215              :   return NULL_TREE;
    5216              : }
    5217              : 
    5218              : tree
    5219     17653954 : generic_simplify_LT_EXPR (location_t ARG_UNUSED (loc), enum tree_code ARG_UNUSED (code), const tree ARG_UNUSED (type), tree _p0, tree _p1)
    5220              : {
    5221     17653954 :   const bool debug_dump = dump_file && (dump_flags & TDF_FOLDING);
    5222     17653954 :   switch (TREE_CODE (_p0))
    5223              :     {
    5224         2173 :     case RDIV_EXPR:
    5225         2173 :       {
    5226         2173 :         tree _q20 = TREE_OPERAND (_p0, 0);
    5227         2173 :         tree _q21 = TREE_OPERAND (_p0, 1);
    5228         2173 :         switch (TREE_CODE (_q20))
    5229              :           {
    5230          677 :           case REAL_CST:
    5231          677 :             {
    5232          677 :               if (real_zerop (_p1))
    5233              :                 {
    5234          392 :                   {
    5235          392 :                     tree captures[3] ATTRIBUTE_UNUSED = { _q20, _q21, _p1 };
    5236          392 :                     tree res = generic_simplify_374 (loc, type, _p0, _p1, captures, LT_EXPR, GT_EXPR);
    5237          392 :                     if (res) return res;
    5238              :                   }
    5239              :                 }
    5240              :               break;
    5241              :             }
    5242              :           default:;
    5243              :           }
    5244              :         break;
    5245              :       }
    5246         2943 :     case TRUNC_MOD_EXPR:
    5247         2943 :       {
    5248         2943 :         tree _q20 = TREE_OPERAND (_p0, 0);
    5249         2943 :         tree _q21 = TREE_OPERAND (_p0, 1);
    5250         2943 :         if ((_p1 == _q21 && ! TREE_SIDE_EFFECTS (_p1)) || (operand_equal_p (_p1, _q21, 0) && types_match (_p1, _q21)))
    5251              :           {
    5252           74 :             {
    5253           74 :               tree captures[2] ATTRIBUTE_UNUSED = { _q20, _q21 };
    5254           74 :               tree res = generic_simplify_375 (loc, type, _p0, _p1, captures, LT_EXPR);
    5255           74 :               if (res) return res;
    5256              :             }
    5257              :           }
    5258              :         break;
    5259              :       }
    5260       142571 :     case MULT_EXPR:
    5261       142571 :       {
    5262       142571 :         tree _q20 = TREE_OPERAND (_p0, 0);
    5263       142571 :         tree _q21 = TREE_OPERAND (_p0, 1);
    5264       142571 :         switch (TREE_CODE (_p1))
    5265              :           {
    5266        50642 :           case MULT_EXPR:
    5267        50642 :             {
    5268        50642 :               tree _q50 = TREE_OPERAND (_p1, 0);
    5269        50642 :               tree _q51 = TREE_OPERAND (_p1, 1);
    5270        50642 :               if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
    5271              :                 {
    5272        10224 :                   {
    5273        10224 :                     tree captures[3] ATTRIBUTE_UNUSED = { _q20, _q21, _q50 };
    5274        10224 :                     tree res = generic_simplify_376 (loc, type, _p0, _p1, captures, LT_EXPR);
    5275        10224 :                     if (res) return res;
    5276              :                   }
    5277              :                 }
    5278        42461 :               if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
    5279              :                 {
    5280            0 :                   {
    5281            0 :                     tree captures[3] ATTRIBUTE_UNUSED = { _q20, _q21, _q51 };
    5282            0 :                     tree res = generic_simplify_376 (loc, type, _p0, _p1, captures, LT_EXPR);
    5283            0 :                     if (res) return res;
    5284              :                   }
    5285              :                 }
    5286        42461 :               if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
    5287              :                 {
    5288            0 :                   {
    5289            0 :                     tree captures[3] ATTRIBUTE_UNUSED = { _q21, _q20, _q50 };
    5290            0 :                     tree res = generic_simplify_376 (loc, type, _p0, _p1, captures, LT_EXPR);
    5291            0 :                     if (res) return res;
    5292              :                   }
    5293              :                 }
    5294        42461 :               if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
    5295              :                 {
    5296         1374 :                   {
    5297         1374 :                     tree captures[3] ATTRIBUTE_UNUSED = { _q21, _q20, _q51 };
    5298         1374 :                     tree res = generic_simplify_376 (loc, type, _p0, _p1, captures, LT_EXPR);
    5299         1374 :                     if (res) return res;
    5300              :                   }
    5301              :                 }
    5302              :               break;
    5303              :             }
    5304              :           default:;
    5305              :           }
    5306              :         break;
    5307              :       }
    5308      3032943 :     CASE_CONVERT:
    5309      3032943 :       {
    5310      3032943 :         tree _q20 = TREE_OPERAND (_p0, 0);
    5311      3032943 :         switch (TREE_CODE (_q20))
    5312              :           {
    5313          107 :           case EXACT_DIV_EXPR:
    5314          107 :             {
    5315          107 :               tree _q30 = TREE_OPERAND (_q20, 0);
    5316          107 :               tree _q31 = TREE_OPERAND (_q20, 1);
    5317          107 :               switch (TREE_CODE (_q31))
    5318              :                 {
    5319          107 :                 case INTEGER_CST:
    5320          107 :                   {
    5321          107 :                     switch (TREE_CODE (_p1))
    5322              :                       {
    5323           37 :                       CASE_CONVERT:
    5324           37 :                         {
    5325           37 :                           tree _q60 = TREE_OPERAND (_p1, 0);
    5326           37 :                           switch (TREE_CODE (_q60))
    5327              :                             {
    5328            0 :                             case EXACT_DIV_EXPR:
    5329            0 :                               {
    5330            0 :                                 tree _q70 = TREE_OPERAND (_q60, 0);
    5331            0 :                                 tree _q71 = TREE_OPERAND (_q60, 1);
    5332            0 :                                 if ((_q71 == _q31 && ! TREE_SIDE_EFFECTS (_q71)) || (operand_equal_p (_q71, _q31, 0) && types_match (_q71, _q31)))
    5333              :                                   {
    5334            0 :                                     {
    5335            0 :                                       tree captures[4] ATTRIBUTE_UNUSED = { _p0, _q30, _q31, _q70 };
    5336            0 :                                       tree res = generic_simplify_206 (loc, type, _p0, _p1, captures, LT_EXPR);
    5337            0 :                                       if (res) return res;
    5338              :                                     }
    5339              :                                   }
    5340              :                                 break;
    5341              :                               }
    5342              :                             default:;
    5343              :                             }
    5344              :                           break;
    5345              :                         }
    5346              :                       default:;
    5347              :                       }
    5348              :                     break;
    5349              :                   }
    5350              :                 default:;
    5351              :                 }
    5352              :               break;
    5353              :             }
    5354              :           default:;
    5355              :           }
    5356              :         break;
    5357              :       }
    5358         1028 :     case EXACT_DIV_EXPR:
    5359         1028 :       {
    5360         1028 :         tree _q20 = TREE_OPERAND (_p0, 0);
    5361         1028 :         tree _q21 = TREE_OPERAND (_p0, 1);
    5362         1028 :         switch (TREE_CODE (_q21))
    5363              :           {
    5364         1028 :           case INTEGER_CST:
    5365         1028 :             {
    5366         1028 :               switch (TREE_CODE (_p1))
    5367              :                 {
    5368            2 :                 case EXACT_DIV_EXPR:
    5369            2 :                   {
    5370            2 :                     tree _q50 = TREE_OPERAND (_p1, 0);
    5371            2 :                     tree _q51 = TREE_OPERAND (_p1, 1);
    5372            2 :                     if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
    5373              :                       {
    5374            0 :                         {
    5375            0 :                           tree captures[4] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _q50 };
    5376            0 :                           tree res = generic_simplify_206 (loc, type, _p0, _p1, captures, LT_EXPR);
    5377            0 :                           if (res) return res;
    5378              :                         }
    5379              :                       }
    5380              :                     break;
    5381              :                   }
    5382              :                 default:;
    5383              :                 }
    5384              :               break;
    5385              :             }
    5386              :           default:;
    5387              :           }
    5388              :         break;
    5389              :       }
    5390        12427 :     case TRUNC_DIV_EXPR:
    5391        12427 :       {
    5392        12427 :         tree _q20 = TREE_OPERAND (_p0, 0);
    5393        12427 :         tree _q21 = TREE_OPERAND (_p0, 1);
    5394        12427 :         switch (TREE_CODE (_q21))
    5395              :           {
    5396         3483 :           case INTEGER_CST:
    5397         3483 :             {
    5398         3483 :               switch (TREE_CODE (_p1))
    5399              :                 {
    5400         1457 :                 case INTEGER_CST:
    5401         1457 :                   {
    5402         1457 :                     {
    5403         1457 :                       tree captures[4] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1 };
    5404         1457 :                       tree res = generic_simplify_215 (loc, type, _p0, _p1, captures, LT_EXPR);
    5405         1457 :                       if (res) return res;
    5406              :                     }
    5407          698 :                     break;
    5408              :                   }
    5409              :                 default:;
    5410              :                 }
    5411              :               break;
    5412              :             }
    5413              :           default:;
    5414              :           }
    5415              :         break;
    5416              :       }
    5417      2340342 :     case PLUS_EXPR:
    5418      2340342 :       {
    5419      2340342 :         tree _q20 = TREE_OPERAND (_p0, 0);
    5420      2340342 :         tree _q21 = TREE_OPERAND (_p0, 1);
    5421      2340342 :         switch (TREE_CODE (_p1))
    5422              :           {
    5423       344711 :           case PLUS_EXPR:
    5424       344711 :             {
    5425       344711 :               tree _q50 = TREE_OPERAND (_p1, 0);
    5426       344711 :               tree _q51 = TREE_OPERAND (_p1, 1);
    5427       344711 :               if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
    5428              :                 {
    5429       137443 :                   {
    5430       137443 :                     tree captures[3] ATTRIBUTE_UNUSED = { _q20, _q21, _q50 };
    5431       137443 :                     tree res = generic_simplify_377 (loc, type, _p0, _p1, captures, LT_EXPR);
    5432       137443 :                     if (res) return res;
    5433              :                   }
    5434              :                 }
    5435       285345 :               if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
    5436              :                 {
    5437           24 :                   {
    5438           24 :                     tree captures[3] ATTRIBUTE_UNUSED = { _q20, _q21, _q51 };
    5439           24 :                     tree res = generic_simplify_377 (loc, type, _p0, _p1, captures, LT_EXPR);
    5440           24 :                     if (res) return res;
    5441              :                   }
    5442              :                 }
    5443       285329 :               if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
    5444              :                 {
    5445           48 :                   {
    5446           48 :                     tree captures[3] ATTRIBUTE_UNUSED = { _q21, _q20, _q50 };
    5447           48 :                     tree res = generic_simplify_377 (loc, type, _p0, _p1, captures, LT_EXPR);
    5448           48 :                     if (res) return res;
    5449              :                   }
    5450              :                 }
    5451       285313 :               if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
    5452              :                 {
    5453         1735 :                   {
    5454         1735 :                     tree captures[3] ATTRIBUTE_UNUSED = { _q21, _q20, _q51 };
    5455         1735 :                     tree res = generic_simplify_377 (loc, type, _p0, _p1, captures, LT_EXPR);
    5456         1735 :                     if (res) return res;
    5457              :                   }
    5458              :                 }
    5459              :               break;
    5460              :             }
    5461      2280594 :           default:;
    5462              :           }
    5463      2280594 :         switch (TREE_CODE (_q21))
    5464              :           {
    5465      1761088 :           case INTEGER_CST:
    5466      1761088 :             {
    5467      1761088 :               switch (TREE_CODE (_p1))
    5468              :                 {
    5469       279978 :                 case PLUS_EXPR:
    5470       279978 :                   {
    5471       279978 :                     tree _q50 = TREE_OPERAND (_p1, 0);
    5472       279978 :                     tree _q51 = TREE_OPERAND (_p1, 1);
    5473       279978 :                     if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
    5474              :                       {
    5475        78077 :                         {
    5476        78077 :                           tree captures[3] ATTRIBUTE_UNUSED = { _q20, _q21, _q50 };
    5477        78077 :                           tree res = generic_simplify_378 (loc, type, _p0, _p1, captures, LT_EXPR);
    5478        78077 :                           if (res) return res;
    5479              :                         }
    5480              :                       }
    5481              :                     break;
    5482              :                   }
    5483              :                 default:;
    5484              :                 }
    5485              :               break;
    5486              :             }
    5487      2280589 :           default:;
    5488              :           }
    5489      2280589 :         if ((_p1 == _q21 && ! TREE_SIDE_EFFECTS (_p1)) || (operand_equal_p (_p1, _q21, 0) && types_match (_p1, _q21)))
    5490              :           {
    5491       208857 :             {
    5492       208857 :               tree captures[3] ATTRIBUTE_UNUSED = { _p0, _q20, _q21 };
    5493       208857 :               tree res = generic_simplify_379 (loc, type, _p0, _p1, captures, LT_EXPR);
    5494       208857 :               if (res) return res;
    5495              :             }
    5496              :           }
    5497      2099134 :         if ((_p1 == _q20 && ! TREE_SIDE_EFFECTS (_p1)) || (operand_equal_p (_p1, _q20, 0) && types_match (_p1, _q20)))
    5498              :           {
    5499        55789 :             {
    5500        55789 :               tree captures[3] ATTRIBUTE_UNUSED = { _p0, _q21, _q20 };
    5501        55789 :               tree res = generic_simplify_379 (loc, type, _p0, _p1, captures, LT_EXPR);
    5502        55789 :               if (res) return res;
    5503              :             }
    5504              :           }
    5505              :         break;
    5506              :       }
    5507       193391 :     case MINUS_EXPR:
    5508       193391 :       {
    5509       193391 :         tree _q20 = TREE_OPERAND (_p0, 0);
    5510       193391 :         tree _q21 = TREE_OPERAND (_p0, 1);
    5511       193391 :         switch (TREE_CODE (_p1))
    5512              :           {
    5513         5206 :           case MINUS_EXPR:
    5514         5206 :             {
    5515         5206 :               tree _q50 = TREE_OPERAND (_p1, 0);
    5516         5206 :               tree _q51 = TREE_OPERAND (_p1, 1);
    5517         5206 :               if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
    5518              :                 {
    5519            0 :                   {
    5520            0 :                     tree captures[3] ATTRIBUTE_UNUSED = { _q20, _q21, _q50 };
    5521            0 :                     tree res = generic_simplify_380 (loc, type, _p0, _p1, captures, LT_EXPR);
    5522            0 :                     if (res) return res;
    5523              :                   }
    5524              :                 }
    5525         5206 :               if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
    5526              :                 {
    5527          215 :                   {
    5528          215 :                     tree captures[3] ATTRIBUTE_UNUSED = { _q20, _q21, _q51 };
    5529          215 :                     tree res = generic_simplify_381 (loc, type, _p0, _p1, captures, LT_EXPR);
    5530          215 :                     if (res) return res;
    5531              :                   }
    5532              :                 }
    5533              :               break;
    5534              :             }
    5535              :           default:;
    5536              :           }
    5537              :         break;
    5538              :       }
    5539       108719 :     case POINTER_DIFF_EXPR:
    5540       108719 :       {
    5541       108719 :         tree _q20 = TREE_OPERAND (_p0, 0);
    5542       108719 :         tree _q21 = TREE_OPERAND (_p0, 1);
    5543       108719 :         switch (TREE_CODE (_p1))
    5544              :           {
    5545          430 :           case POINTER_DIFF_EXPR:
    5546          430 :             {
    5547          430 :               tree _q50 = TREE_OPERAND (_p1, 0);
    5548          430 :               tree _q51 = TREE_OPERAND (_p1, 1);
    5549          430 :               if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
    5550              :                 {
    5551            0 :                   {
    5552            0 :                     tree captures[4] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _q50 };
    5553            0 :                     tree res = generic_simplify_219 (loc, type, _p0, _p1, captures, LT_EXPR);
    5554            0 :                     if (res) return res;
    5555              :                   }
    5556              :                 }
    5557          430 :               if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
    5558              :                 {
    5559            0 :                   {
    5560            0 :                     tree captures[4] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _q51 };
    5561            0 :                     tree res = generic_simplify_220 (loc, type, _p0, _p1, captures, LT_EXPR);
    5562            0 :                     if (res) return res;
    5563              :                   }
    5564              :                 }
    5565              :               break;
    5566              :             }
    5567              :           default:;
    5568              :           }
    5569              :         break;
    5570              :       }
    5571     17403416 :     default:;
    5572              :     }
    5573     17403416 :   switch (TREE_CODE (_p1))
    5574              :     {
    5575       353041 :     case PLUS_EXPR:
    5576       353041 :       {
    5577       353041 :         tree _q30 = TREE_OPERAND (_p1, 0);
    5578       353041 :         tree _q31 = TREE_OPERAND (_p1, 1);
    5579       353041 :         if ((_q31 == _p0 && ! TREE_SIDE_EFFECTS (_q31)) || (operand_equal_p (_q31, _p0, 0) && types_match (_q31, _p0)))
    5580              :           {
    5581          120 :             {
    5582          120 :               tree captures[3] ATTRIBUTE_UNUSED = { _p1, _q30, _p0 };
    5583          120 :               tree res = generic_simplify_379 (loc, type, _p0, _p1, captures, GT_EXPR);
    5584          120 :               if (res) return res;
    5585              :             }
    5586              :           }
    5587       352921 :         if ((_q30 == _p0 && ! TREE_SIDE_EFFECTS (_q30)) || (operand_equal_p (_q30, _p0, 0) && types_match (_q30, _p0)))
    5588              :           {
    5589           80 :             {
    5590           80 :               tree captures[3] ATTRIBUTE_UNUSED = { _p1, _q31, _p0 };
    5591           80 :               tree res = generic_simplify_379 (loc, type, _p0, _p1, captures, GT_EXPR);
    5592           80 :               if (res) return res;
    5593              :             }
    5594              :           }
    5595              :         break;
    5596              :       }
    5597        23688 :     case MINUS_EXPR:
    5598        23688 :       {
    5599        23688 :         tree _q30 = TREE_OPERAND (_p1, 0);
    5600        23688 :         tree _q31 = TREE_OPERAND (_p1, 1);
    5601        23688 :         if ((_q30 == _p0 && ! TREE_SIDE_EFFECTS (_q30)) || (operand_equal_p (_q30, _p0, 0) && types_match (_q30, _p0)))
    5602              :           {
    5603            0 :             {
    5604            0 :               tree captures[3] ATTRIBUTE_UNUSED = { _p0, _p1, _q31 };
    5605            0 :               tree res = generic_simplify_218 (loc, type, _p0, _p1, captures, LT_EXPR);
    5606            0 :               if (res) return res;
    5607              :             }
    5608              :           }
    5609              :         break;
    5610              :       }
    5611     17403296 :     default:;
    5612              :     }
    5613     17403296 :   switch (TREE_CODE (_p0))
    5614              :     {
    5615       193391 :     case MINUS_EXPR:
    5616       193391 :       {
    5617       193391 :         tree _q20 = TREE_OPERAND (_p0, 0);
    5618       193391 :         tree _q21 = TREE_OPERAND (_p0, 1);
    5619       193391 :         if ((_p1 == _q20 && ! TREE_SIDE_EFFECTS (_p1)) || (operand_equal_p (_p1, _q20, 0) && types_match (_p1, _q20)))
    5620              :           {
    5621         3334 :             {
    5622         3334 :               tree captures[3] ATTRIBUTE_UNUSED = { _q20, _p0, _q21 };
    5623         3334 :               tree res = generic_simplify_218 (loc, type, _p0, _p1, captures, GT_EXPR);
    5624         3334 :               if (res) return res;
    5625              :             }
    5626              :           }
    5627              :         break;
    5628              :       }
    5629         1464 :     case BIT_IOR_EXPR:
    5630         1464 :       {
    5631         1464 :         tree _q20 = TREE_OPERAND (_p0, 0);
    5632         1464 :         tree _q21 = TREE_OPERAND (_p0, 1);
    5633         1464 :         if (tree_expr_nonnegative_p (_q20))
    5634              :           {
    5635          553 :             if ((_p1 == _q20 && ! TREE_SIDE_EFFECTS (_p1)) || (operand_equal_p (_p1, _q20, 0) && types_match (_p1, _q20)))
    5636              :               {
    5637            0 :                 {
    5638            0 :                   tree captures[2] ATTRIBUTE_UNUSED = { _q20, _q21 };
    5639            0 :                   tree res = generic_simplify_382 (loc, type, _p0, _p1, captures, LT_EXPR, BIT_IOR_EXPR);
    5640            0 :                   if (res) return res;
    5641              :                 }
    5642              :               }
    5643              :           }
    5644         1464 :         if (tree_expr_nonnegative_p (_q21))
    5645              :           {
    5646          811 :             if ((_p1 == _q21 && ! TREE_SIDE_EFFECTS (_p1)) || (operand_equal_p (_p1, _q21, 0) && types_match (_p1, _q21)))
    5647              :               {
    5648            0 :                 {
    5649            0 :                   tree captures[2] ATTRIBUTE_UNUSED = { _q21, _q20 };
    5650            0 :                   tree res = generic_simplify_382 (loc, type, _p0, _p1, captures, LT_EXPR, BIT_IOR_EXPR);
    5651            0 :                   if (res) return res;
    5652              :                 }
    5653              :               }
    5654              :           }
    5655              :         break;
    5656              :       }
    5657     17400872 :     default:;
    5658              :     }
    5659     17400872 :   switch (TREE_CODE (_p1))
    5660              :     {
    5661          458 :     case BIT_AND_EXPR:
    5662          458 :       {
    5663          458 :         tree _q30 = TREE_OPERAND (_p1, 0);
    5664          458 :         tree _q31 = TREE_OPERAND (_p1, 1);
    5665          458 :         if ((_q30 == _p0 && ! TREE_SIDE_EFFECTS (_q30)) || (operand_equal_p (_q30, _p0, 0) && types_match (_q30, _p0)))
    5666              :           {
    5667            0 :             if (tree_expr_nonnegative_p (_q30))
    5668              :               {
    5669            0 :                 {
    5670            0 :                   tree captures[2] ATTRIBUTE_UNUSED = { _p0, _q31 };
    5671            0 :                   tree res = generic_simplify_382 (loc, type, _p0, _p1, captures, GT_EXPR, BIT_AND_EXPR);
    5672            0 :                   if (res) return res;
    5673              :                 }
    5674              :               }
    5675              :           }
    5676          458 :         if ((_q31 == _p0 && ! TREE_SIDE_EFFECTS (_q31)) || (operand_equal_p (_q31, _p0, 0) && types_match (_q31, _p0)))
    5677              :           {
    5678            0 :             if (tree_expr_nonnegative_p (_q31))
    5679              :               {
    5680            0 :                 {
    5681            0 :                   tree captures[2] ATTRIBUTE_UNUSED = { _p0, _q30 };
    5682            0 :                   tree res = generic_simplify_382 (loc, type, _p0, _p1, captures, GT_EXPR, BIT_AND_EXPR);
    5683            0 :                   if (res) return res;
    5684              :                 }
    5685              :               }
    5686              :           }
    5687              :         break;
    5688              :       }
    5689     17400872 :     default:;
    5690              :     }
    5691     17400872 :   switch (TREE_CODE (_p0))
    5692              :     {
    5693         6559 :     case MAX_EXPR:
    5694         6559 :       {
    5695         6559 :         tree _q20 = TREE_OPERAND (_p0, 0);
    5696         6559 :         tree _q21 = TREE_OPERAND (_p0, 1);
    5697         6559 :         switch (TREE_CODE (_p1))
    5698              :           {
    5699            8 :           case MIN_EXPR:
    5700            8 :             {
    5701            8 :               tree _q50 = TREE_OPERAND (_p1, 0);
    5702            8 :               tree _q51 = TREE_OPERAND (_p1, 1);
    5703            8 :               if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
    5704              :                 {
    5705            0 :                   if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
    5706              :                     {
    5707            0 :                       {
    5708            0 :                         tree captures[2] ATTRIBUTE_UNUSED = { _q20, _q21 };
    5709            0 :                         tree res = generic_simplify_383 (loc, type, _p0, _p1, captures, GT_EXPR);
    5710            0 :                         if (res) return res;
    5711              :                       }
    5712              :                     }
    5713              :                 }
    5714              :               break;
    5715              :             }
    5716              :           default:;
    5717              :           }
    5718              :         break;
    5719              :       }
    5720         9801 :     case MIN_EXPR:
    5721         9801 :       {
    5722         9801 :         tree _q20 = TREE_OPERAND (_p0, 0);
    5723         9801 :         tree _q21 = TREE_OPERAND (_p0, 1);
    5724         9801 :         switch (TREE_CODE (_p1))
    5725              :           {
    5726            0 :           case MAX_EXPR:
    5727            0 :             {
    5728            0 :               tree _q50 = TREE_OPERAND (_p1, 0);
    5729            0 :               tree _q51 = TREE_OPERAND (_p1, 1);
    5730            0 :               if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
    5731              :                 {
    5732            0 :                   if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
    5733              :                     {
    5734            0 :                       {
    5735            0 :                         tree captures[2] ATTRIBUTE_UNUSED = { _q20, _q21 };
    5736            0 :                         tree res = generic_simplify_384 (loc, type, _p0, _p1, captures, LT_EXPR, NE_EXPR);
    5737            0 :                         if (res) return res;
    5738              :                       }
    5739              :                     }
    5740              :                 }
    5741              :               break;
    5742              :             }
    5743         9801 :           default:;
    5744              :           }
    5745         9801 :         if ((_p1 == _q20 && ! TREE_SIDE_EFFECTS (_p1)) || (operand_equal_p (_p1, _q20, 0) && types_match (_p1, _q20)))
    5746              :           {
    5747            1 :             {
    5748            1 :               tree captures[2] ATTRIBUTE_UNUSED = { _q20, _q21 };
    5749            1 :               tree res = generic_simplify_228 (loc, type, _p0, _p1, captures, MIN_EXPR, LT_EXPR, GT_EXPR);
    5750            1 :               if (res) return res;
    5751              :             }
    5752              :           }
    5753         9800 :         if ((_p1 == _q21 && ! TREE_SIDE_EFFECTS (_p1)) || (operand_equal_p (_p1, _q21, 0) && types_match (_p1, _q21)))
    5754              :           {
    5755            5 :             {
    5756            5 :               tree captures[2] ATTRIBUTE_UNUSED = { _q21, _q20 };
    5757            5 :               tree res = generic_simplify_228 (loc, type, _p0, _p1, captures, MIN_EXPR, LT_EXPR, GT_EXPR);
    5758            5 :               if (res) return res;
    5759              :             }
    5760              :           }
    5761              :         break;
    5762              :       }
    5763     17400869 :     default:;
    5764              :     }
    5765     17400869 :   switch (TREE_CODE (_p1))
    5766              :     {
    5767         1016 :     case MAX_EXPR:
    5768         1016 :       {
    5769         1016 :         tree _q30 = TREE_OPERAND (_p1, 0);
    5770         1016 :         tree _q31 = TREE_OPERAND (_p1, 1);
    5771         1016 :         if ((_q30 == _p0 && ! TREE_SIDE_EFFECTS (_q30)) || (operand_equal_p (_q30, _p0, 0) && types_match (_q30, _p0)))
    5772              :           {
    5773            0 :             {
    5774            0 :               tree captures[2] ATTRIBUTE_UNUSED = { _p0, _q31 };
    5775            0 :               tree res = generic_simplify_228 (loc, type, _p0, _p1, captures, MAX_EXPR, GT_EXPR, LT_EXPR);
    5776            0 :               if (res) return res;
    5777              :             }
    5778              :           }
    5779         1016 :         if ((_q31 == _p0 && ! TREE_SIDE_EFFECTS (_q31)) || (operand_equal_p (_q31, _p0, 0) && types_match (_q31, _p0)))
    5780              :           {
    5781            0 :             {
    5782            0 :               tree captures[2] ATTRIBUTE_UNUSED = { _p0, _q30 };
    5783            0 :               tree res = generic_simplify_228 (loc, type, _p0, _p1, captures, MAX_EXPR, GT_EXPR, LT_EXPR);
    5784            0 :               if (res) return res;
    5785              :             }
    5786              :           }
    5787              :         break;
    5788              :       }
    5789          911 :     case MIN_EXPR:
    5790          911 :       {
    5791          911 :         tree _q30 = TREE_OPERAND (_p1, 0);
    5792          911 :         tree _q31 = TREE_OPERAND (_p1, 1);
    5793          911 :         if ((_q30 == _p0 && ! TREE_SIDE_EFFECTS (_q30)) || (operand_equal_p (_q30, _p0, 0) && types_match (_q30, _p0)))
    5794              :           {
    5795            0 :             {
    5796            0 :               tree captures[2] ATTRIBUTE_UNUSED = { _p0, _q31 };
    5797            0 :               tree res = generic_simplify_385 (loc, type, _p0, _p1, captures, MIN_EXPR, LT_EXPR);
    5798            0 :               if (res) return res;
    5799              :             }
    5800              :           }
    5801          911 :         if ((_q31 == _p0 && ! TREE_SIDE_EFFECTS (_q31)) || (operand_equal_p (_q31, _p0, 0) && types_match (_q31, _p0)))
    5802              :           {
    5803            0 :             {
    5804            0 :               tree captures[2] ATTRIBUTE_UNUSED = { _p0, _q30 };
    5805            0 :               tree res = generic_simplify_385 (loc, type, _p0, _p1, captures, MIN_EXPR, LT_EXPR);
    5806            0 :               if (res) return res;
    5807              :             }
    5808              :           }
    5809              :         break;
    5810              :       }
    5811     17400869 :     default:;
    5812              :     }
    5813     17400869 :   switch (TREE_CODE (_p0))
    5814              :     {
    5815         6559 :     case MAX_EXPR:
    5816         6559 :       {
    5817         6559 :         tree _q20 = TREE_OPERAND (_p0, 0);
    5818         6559 :         tree _q21 = TREE_OPERAND (_p0, 1);
    5819         6559 :         if ((_p1 == _q20 && ! TREE_SIDE_EFFECTS (_p1)) || (operand_equal_p (_p1, _q20, 0) && types_match (_p1, _q20)))
    5820              :           {
    5821            1 :             {
    5822            1 :               tree captures[2] ATTRIBUTE_UNUSED = { _q20, _q21 };
    5823            1 :               tree res = generic_simplify_385 (loc, type, _p0, _p1, captures, MAX_EXPR, GT_EXPR);
    5824            1 :               if (res) return res;
    5825              :             }
    5826              :           }
    5827         6558 :         if ((_p1 == _q21 && ! TREE_SIDE_EFFECTS (_p1)) || (operand_equal_p (_p1, _q21, 0) && types_match (_p1, _q21)))
    5828              :           {
    5829            1 :             {
    5830            1 :               tree captures[2] ATTRIBUTE_UNUSED = { _q21, _q20 };
    5831            1 :               tree res = generic_simplify_385 (loc, type, _p0, _p1, captures, MAX_EXPR, GT_EXPR);
    5832            1 :               if (res) return res;
    5833              :             }
    5834              :           }
    5835         6557 :         switch (TREE_CODE (_q21))
    5836              :           {
    5837         6028 :           case INTEGER_CST:
    5838         6028 :             {
    5839         6028 :               switch (TREE_CODE (_p1))
    5840              :                 {
    5841            1 :                 case INTEGER_CST:
    5842            1 :                   {
    5843            1 :                     {
    5844            1 :                       tree captures[3] ATTRIBUTE_UNUSED = { _q20, _q21, _p1 };
    5845            1 :                       tree res = generic_simplify_386 (loc, type, _p0, _p1, captures, MAX_EXPR, LT_EXPR, BIT_AND_EXPR);
    5846            1 :                       if (res) return res;
    5847              :                     }
    5848            0 :                     break;
    5849              :                   }
    5850              :                 default:;
    5851              :                 }
    5852              :               break;
    5853              :             }
    5854              :           default:;
    5855              :           }
    5856              :         break;
    5857              :       }
    5858         9798 :     case MIN_EXPR:
    5859         9798 :       {
    5860         9798 :         tree _q20 = TREE_OPERAND (_p0, 0);
    5861         9798 :         tree _q21 = TREE_OPERAND (_p0, 1);
    5862         9798 :         switch (TREE_CODE (_q21))
    5863              :           {
    5864          774 :           case INTEGER_CST:
    5865          774 :             {
    5866          774 :               switch (TREE_CODE (_p1))
    5867              :                 {
    5868            2 :                 case INTEGER_CST:
    5869            2 :                   {
    5870            2 :                     {
    5871            2 :                       tree captures[3] ATTRIBUTE_UNUSED = { _q20, _q21, _p1 };
    5872            2 :                       tree res = generic_simplify_386 (loc, type, _p0, _p1, captures, MIN_EXPR, LT_EXPR, BIT_IOR_EXPR);
    5873            2 :                       if (res) return res;
    5874              :                     }
    5875            0 :                     break;
    5876              :                   }
    5877              :                 default:;
    5878              :                 }
    5879              :               break;
    5880              :             }
    5881              :           default:;
    5882              :           }
    5883              :         break;
    5884              :       }
    5885      3032823 :     CASE_CONVERT:
    5886      3032823 :       {
    5887      3032823 :         tree _q20 = TREE_OPERAND (_p0, 0);
    5888      3032823 :         switch (TREE_CODE (_q20))
    5889              :           {
    5890            0 :           case GE_EXPR:
    5891            0 :             {
    5892            0 :               tree _q30 = TREE_OPERAND (_q20, 0);
    5893            0 :               tree _q31 = TREE_OPERAND (_q20, 1);
    5894            0 :               if (tree_zero_one_valued_p (_q30))
    5895              :                 {
    5896            0 :                   if ((_p1 == _q31 && ! TREE_SIDE_EFFECTS (_p1)) || (operand_equal_p (_p1, _q31, 0) && types_match (_p1, _q31)))
    5897              :                     {
    5898            0 :                       {
    5899            0 :                         tree captures[2] ATTRIBUTE_UNUSED = { _q30, _q31 };
    5900            0 :                         tree res = generic_simplify_387 (loc, type, _p0, _p1, captures, LT_EXPR);
    5901            0 :                         if (res) return res;
    5902              :                       }
    5903              :                     }
    5904              :                 }
    5905              :               break;
    5906              :             }
    5907              :           default:;
    5908              :           }
    5909              :         break;
    5910              :       }
    5911           15 :     case GE_EXPR:
    5912           15 :       {
    5913           15 :         tree _q20 = TREE_OPERAND (_p0, 0);
    5914           15 :         tree _q21 = TREE_OPERAND (_p0, 1);
    5915           15 :         if (tree_zero_one_valued_p (_q20))
    5916              :           {
    5917            3 :             if ((_p1 == _q21 && ! TREE_SIDE_EFFECTS (_p1)) || (operand_equal_p (_p1, _q21, 0) && types_match (_p1, _q21)))
    5918              :               {
    5919            3 :                 {
    5920            3 :                   tree captures[2] ATTRIBUTE_UNUSED = { _q20, _q21 };
    5921            3 :                   tree res = generic_simplify_387 (loc, type, _p0, _p1, captures, LT_EXPR);
    5922            3 :                   if (res) return res;
    5923              :                 }
    5924              :               }
    5925              :           }
    5926              :         break;
    5927              :       }
    5928          904 :     case VEC_COND_EXPR:
    5929          904 :       {
    5930          904 :         tree _q20 = TREE_OPERAND (_p0, 0);
    5931          904 :         tree _q21 = TREE_OPERAND (_p0, 1);
    5932          904 :         tree _q22 = TREE_OPERAND (_p0, 2);
    5933          904 :         switch (TREE_CODE (_p1))
    5934              :           {
    5935            0 :           case VEC_COND_EXPR:
    5936            0 :             {
    5937            0 :               tree _q60 = TREE_OPERAND (_p1, 0);
    5938            0 :               tree _q61 = TREE_OPERAND (_p1, 1);
    5939            0 :               tree _q62 = TREE_OPERAND (_p1, 2);
    5940            0 :               if ((_q60 == _q20 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q20, 0) && types_match (_q60, _q20)))
    5941              :                 {
    5942            0 :                   {
    5943            0 :                     tree captures[7] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _q22, _p1, _q61, _q62 };
    5944            0 :                     if (VECTOR_TYPE_P (type)
    5945            0 :  && (TREE_CODE_CLASS (LT_EXPR) != tcc_comparison
    5946            0 :  || types_match (type, TREE_TYPE (captures[2]))
    5947            0 :  || expand_vec_cond_expr_p (type, TREE_TYPE (captures[1]))
    5948              :  || (optimize_vectors_before_lowering_p ()
    5949            0 :  && !expand_vec_cond_expr_p (TREE_TYPE (captures[2]), TREE_TYPE (captures[1]))))
    5950              : )
    5951              :                       {
    5952            0 :                         if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1627;
    5953            0 :                         {
    5954            0 :                           tree res_op0;
    5955            0 :                           res_op0 = captures[1];
    5956            0 :                           tree res_op1;
    5957            0 :                           {
    5958            0 :                             tree _o1[2], _r1;
    5959            0 :                             _o1[0] = captures[2];
    5960            0 :                             _o1[1] = captures[5];
    5961            0 :                             _r1 = fold_build2_loc (loc, LT_EXPR, type, _o1[0], _o1[1]);
    5962            0 :                             if (EXPR_P (_r1))
    5963            0 :                               goto next_after_fail1627;
    5964            0 :                             res_op1 = _r1;
    5965              :                           }
    5966            0 :                           tree res_op2;
    5967            0 :                           {
    5968            0 :                             tree _o1[2], _r1;
    5969            0 :                             _o1[0] = captures[3];
    5970            0 :                             _o1[1] = captures[6];
    5971            0 :                             _r1 = fold_build2_loc (loc, LT_EXPR, type, _o1[0], _o1[1]);
    5972            0 :                             if (EXPR_P (_r1))
    5973            0 :                               goto next_after_fail1627;
    5974            0 :                             res_op2 = _r1;
    5975              :                           }
    5976            0 :                           tree _r;
    5977            0 :                           _r = fold_build3_loc (loc, VEC_COND_EXPR, type, res_op0, res_op1, res_op2);
    5978            0 :                           if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 890, __FILE__, __LINE__, true);
    5979            0 :                           return _r;
    5980              :                         }
    5981            0 : next_after_fail1627:;
    5982              :                       }
    5983              :                   }
    5984              :                 }
    5985              :               break;
    5986              :             }
    5987          904 :           default:;
    5988              :           }
    5989          904 :         {
    5990          904 :           tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _q22, _p1 };
    5991          904 :           if (VECTOR_TYPE_P (type)
    5992          904 :  && (TREE_CODE_CLASS (LT_EXPR) != tcc_comparison
    5993          904 :  || types_match (type, TREE_TYPE (captures[2]))
    5994          904 :  || expand_vec_cond_expr_p (type, TREE_TYPE (captures[1]))
    5995              :  || (optimize_vectors_before_lowering_p ()
    5996            1 :  && !expand_vec_cond_expr_p (TREE_TYPE (captures[2]), TREE_TYPE (captures[1]))))
    5997              : )
    5998              :             {
    5999          904 :               if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1628;
    6000          904 :               {
    6001          904 :                 if (! tree_invariant_p (captures[4])) goto next_after_fail1628;
    6002           36 :                 tree res_op0;
    6003           36 :                 res_op0 = captures[1];
    6004           36 :                 tree res_op1;
    6005           36 :                 {
    6006           36 :                   tree _o1[2], _r1;
    6007           36 :                   _o1[0] = captures[2];
    6008           36 :                   _o1[1] = unshare_expr (captures[4]);
    6009           36 :                   _r1 = fold_build2_loc (loc, LT_EXPR, type, _o1[0], _o1[1]);
    6010           36 :                   if (EXPR_P (_r1))
    6011           35 :                     goto next_after_fail1628;
    6012            1 :                   res_op1 = _r1;
    6013              :                 }
    6014            1 :                 tree res_op2;
    6015            1 :                 {
    6016            1 :                   tree _o1[2], _r1;
    6017            1 :                   _o1[0] = captures[3];
    6018            1 :                   _o1[1] = captures[4];
    6019            1 :                   _r1 = fold_build2_loc (loc, LT_EXPR, type, _o1[0], _o1[1]);
    6020            1 :                   if (EXPR_P (_r1))
    6021            0 :                     goto next_after_fail1628;
    6022            1 :                   res_op2 = _r1;
    6023              :                 }
    6024            1 :                 tree _r;
    6025            1 :                 _r = fold_build3_loc (loc, VEC_COND_EXPR, type, res_op0, res_op1, res_op2);
    6026            1 :                 if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 892, __FILE__, __LINE__, true);
    6027            1 :                 return _r;
    6028              :               }
    6029          903 : next_after_fail1628:;
    6030              :             }
    6031              :         }
    6032          903 :         break;
    6033              :       }
    6034     17400860 :     default:;
    6035              :     }
    6036     17400860 :   switch (TREE_CODE (_p1))
    6037              :     {
    6038           68 :     case VEC_COND_EXPR:
    6039           68 :       {
    6040           68 :         tree _q30 = TREE_OPERAND (_p1, 0);
    6041           68 :         tree _q31 = TREE_OPERAND (_p1, 1);
    6042           68 :         tree _q32 = TREE_OPERAND (_p1, 2);
    6043           68 :         {
    6044           68 :           tree captures[5] ATTRIBUTE_UNUSED = { _p0, _p1, _q30, _q31, _q32 };
    6045           68 :           if (VECTOR_TYPE_P (type)
    6046           68 :  && (TREE_CODE_CLASS (LT_EXPR) != tcc_comparison
    6047           68 :  || types_match (type, TREE_TYPE (captures[3]))
    6048           68 :  || expand_vec_cond_expr_p (type, TREE_TYPE (captures[2]))
    6049              :  || (optimize_vectors_before_lowering_p ()
    6050            0 :  && !expand_vec_cond_expr_p (TREE_TYPE (captures[3]), TREE_TYPE (captures[2]))))
    6051              : )
    6052              :             {
    6053           68 :               if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1629;
    6054           68 :               {
    6055           68 :                 if (! tree_invariant_p (captures[0])) goto next_after_fail1629;
    6056            0 :                 tree res_op0;
    6057            0 :                 res_op0 = captures[2];
    6058            0 :                 tree res_op1;
    6059            0 :                 {
    6060            0 :                   tree _o1[2], _r1;
    6061            0 :                   _o1[0] = unshare_expr (captures[0]);
    6062            0 :                   _o1[1] = captures[3];
    6063            0 :                   _r1 = fold_build2_loc (loc, LT_EXPR, type, _o1[0], _o1[1]);
    6064            0 :                   if (EXPR_P (_r1))
    6065            0 :                     goto next_after_fail1629;
    6066            0 :                   res_op1 = _r1;
    6067              :                 }
    6068            0 :                 tree res_op2;
    6069            0 :                 {
    6070            0 :                   tree _o1[2], _r1;
    6071            0 :                   _o1[0] = captures[0];
    6072            0 :                   _o1[1] = captures[4];
    6073            0 :                   _r1 = fold_build2_loc (loc, LT_EXPR, type, _o1[0], _o1[1]);
    6074            0 :                   if (EXPR_P (_r1))
    6075            0 :                     goto next_after_fail1629;
    6076            0 :                   res_op2 = _r1;
    6077              :                 }
    6078            0 :                 tree _r;
    6079            0 :                 _r = fold_build3_loc (loc, VEC_COND_EXPR, type, res_op0, res_op1, res_op2);
    6080            0 :                 if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 893, __FILE__, __LINE__, true);
    6081            0 :                 return _r;
    6082              :               }
    6083           68 : next_after_fail1629:;
    6084              :             }
    6085              :         }
    6086           68 :         break;
    6087              :       }
    6088     17400860 :     default:;
    6089              :     }
    6090     17400860 : if (uniform_integer_cst_p (_p1))
    6091              :   {
    6092      6119634 :     {
    6093      6119634 :       tree captures[2] ATTRIBUTE_UNUSED = { _p0, _p1 };
    6094      6119634 :       tree res = generic_simplify_388 (loc, type, _p0, _p1, captures, LT_EXPR, LE_EXPR);
    6095      6119634 :       if (res) return res;
    6096              :     }
    6097              :   }
    6098     14944166 :   switch (TREE_CODE (_p0))
    6099              :     {
    6100       126097 :     case MULT_EXPR:
    6101       126097 :       {
    6102       126097 :         tree _q20 = TREE_OPERAND (_p0, 0);
    6103       126097 :         tree _q21 = TREE_OPERAND (_p0, 1);
    6104       126097 :         switch (TREE_CODE (_q21))
    6105              :           {
    6106        69214 :           case INTEGER_CST:
    6107        69214 :             {
    6108        69214 :               if (integer_zerop (_p1))
    6109              :                 {
    6110         5828 :                   {
    6111         5828 :                     tree captures[4] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1 };
    6112         5828 :                     tree res = generic_simplify_248 (loc, type, _p0, _p1, captures, LT_EXPR, GT_EXPR);
    6113         5828 :                     if (res) return res;
    6114              :                   }
    6115              :                 }
    6116              :               break;
    6117              :             }
    6118              :           default:;
    6119              :           }
    6120              :         break;
    6121              :       }
    6122     14941174 :     default:;
    6123              :     }
    6124     14941174 :   if ((_p1 == _p0 && ! TREE_SIDE_EFFECTS (_p1)) || (operand_equal_p (_p1, _p0, 0) && types_match (_p1, _p0)))
    6125              :     {
    6126         3913 :       {
    6127         3913 :         tree captures[1] ATTRIBUTE_UNUSED = { _p0 };
    6128         3913 :         tree res = generic_simplify_301 (loc, type, _p0, _p1, captures, LT_EXPR);
    6129         3913 :         if (res) return res;
    6130              :       }
    6131              :     }
    6132     14937261 :   switch (TREE_CODE (_p0))
    6133              :     {
    6134         2484 :     case BIT_NOT_EXPR:
    6135         2484 :       {
    6136         2484 :         tree _q20 = TREE_OPERAND (_p0, 0);
    6137         2484 :         switch (TREE_CODE (_p1))
    6138              :           {
    6139            7 :           case BIT_NOT_EXPR:
    6140            7 :             {
    6141            7 :               tree _q40 = TREE_OPERAND (_p1, 0);
    6142            7 :               {
    6143            7 :                 tree captures[5] ATTRIBUTE_UNUSED = { _p0, _p0, _q20, _p1, _q40 };
    6144            7 :                 tree res = generic_simplify_254 (loc, type, _p0, _p1, captures, LT_EXPR);
    6145            7 :                 if (res) return res;
    6146              :               }
    6147            0 :               break;
    6148              :             }
    6149         2477 :           default:;
    6150              :           }
    6151         2477 :       {
    6152         2477 :         tree _p1_pops[1];
    6153         2477 :         if (tree_nop_convert (_p1, _p1_pops))
    6154              :           {
    6155           24 :             tree _q40 = _p1_pops[0];
    6156           24 :             switch (TREE_CODE (_q40))
    6157              :               {
    6158            0 :               case BIT_NOT_EXPR:
    6159            0 :                 {
    6160            0 :                   tree _q50 = TREE_OPERAND (_q40, 0);
    6161            0 :                   {
    6162            0 :                     tree captures[5] ATTRIBUTE_UNUSED = { _p0, _p0, _q20, _q40, _q50 };
    6163            0 :                     tree res = generic_simplify_254 (loc, type, _p0, _p1, captures, LT_EXPR);
    6164            0 :                     if (res) return res;
    6165              :                   }
    6166            0 :                   break;
    6167              :                 }
    6168              :               default:;
    6169              :               }
    6170              :           }
    6171              :       }
    6172         2477 :       if (CONSTANT_CLASS_P (_p1))
    6173              :         {
    6174           20 :           {
    6175           20 :             tree captures[3] ATTRIBUTE_UNUSED = { _p0, _q20, _p1 };
    6176           20 :             tree res = generic_simplify_253 (loc, type, _p0, _p1, captures, LT_EXPR, GT_EXPR);
    6177           20 :             if (res) return res;
    6178              :           }
    6179              :         }
    6180              :         break;
    6181              :       }
    6182     14937234 :     default:;
    6183              :     }
    6184     14937234 : {
    6185     14937234 :   tree _p0_pops[1];
    6186     14937234 :   if (tree_nop_convert (_p0, _p0_pops))
    6187              :     {
    6188      1620865 :       tree _q20 = _p0_pops[0];
    6189      1620865 :       switch (TREE_CODE (_q20))
    6190              :         {
    6191            0 :         case BIT_NOT_EXPR:
    6192            0 :           {
    6193            0 :             tree _q30 = TREE_OPERAND (_q20, 0);
    6194            0 :             switch (TREE_CODE (_p1))
    6195              :               {
    6196            0 :               case BIT_NOT_EXPR:
    6197            0 :                 {
    6198            0 :                   tree _q50 = TREE_OPERAND (_p1, 0);
    6199            0 :                   {
    6200            0 :                     tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q20, _q30, _p1, _q50 };
    6201            0 :                     tree res = generic_simplify_252 (loc, type, _p0, _p1, captures, LT_EXPR);
    6202            0 :                     if (res) return res;
    6203              :                   }
    6204            0 :                   break;
    6205              :                 }
    6206            0 :               default:;
    6207              :               }
    6208            0 :           {
    6209            0 :             tree _p1_pops[1];
    6210            0 :             if (tree_nop_convert (_p1, _p1_pops))
    6211              :               {
    6212            0 :                 tree _q50 = _p1_pops[0];
    6213            0 :                 switch (TREE_CODE (_q50))
    6214              :                   {
    6215            0 :                   case BIT_NOT_EXPR:
    6216            0 :                     {
    6217            0 :                       tree _q60 = TREE_OPERAND (_q50, 0);
    6218            0 :                       {
    6219            0 :                         tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q20, _q30, _q50, _q60 };
    6220            0 :                         tree res = generic_simplify_252 (loc, type, _p0, _p1, captures, LT_EXPR);
    6221            0 :                         if (res) return res;
    6222              :                       }
    6223            0 :                       break;
    6224              :                     }
    6225              :                   default:;
    6226              :                   }
    6227              :               }
    6228              :           }
    6229            0 :           if (CONSTANT_CLASS_P (_p1))
    6230              :             {
    6231            0 :               {
    6232            0 :                 tree captures[3] ATTRIBUTE_UNUSED = { _q20, _q30, _p1 };
    6233            0 :                 tree res = generic_simplify_253 (loc, type, _p0, _p1, captures, LT_EXPR, GT_EXPR);
    6234            0 :                 if (res) return res;
    6235              :               }
    6236              :             }
    6237              :             break;
    6238              :           }
    6239              :         default:;
    6240              :         }
    6241              :     }
    6242              : }
    6243     14937234 :   switch (TREE_CODE (_p1))
    6244              :     {
    6245      2928032 :     case REAL_CST:
    6246      2928032 :       {
    6247      2928032 :         {
    6248      2928032 :           tree captures[2] ATTRIBUTE_UNUSED = { _p0, _p1 };
    6249      2928032 :           tree res = generic_simplify_255 (loc, type, _p0, _p1, captures, LT_EXPR);
    6250      2928032 :           if (res) return res;
    6251              :         }
    6252      2927950 :         break;
    6253              :       }
    6254     14937152 :     default:;
    6255              :     }
    6256     14937152 :   switch (TREE_CODE (_p0))
    6257              :     {
    6258      1976284 :     case PLUS_EXPR:
    6259      1976284 :       {
    6260      1976284 :         tree _q20 = TREE_OPERAND (_p0, 0);
    6261      1976284 :         tree _q21 = TREE_OPERAND (_p0, 1);
    6262      1976284 :         switch (TREE_CODE (_q21))
    6263              :           {
    6264          567 :           case REAL_CST:
    6265          567 :             {
    6266          567 :               switch (TREE_CODE (_p1))
    6267              :                 {
    6268          217 :                 case REAL_CST:
    6269          217 :                   {
    6270          217 :                     {
    6271          217 :                       tree captures[3] ATTRIBUTE_UNUSED = { _q20, _q21, _p1 };
    6272          217 :                       tree res = generic_simplify_256 (loc, type, _p0, _p1, captures, PLUS_EXPR, LT_EXPR);
    6273          217 :                       if (res) return res;
    6274              :                     }
    6275          215 :                     break;
    6276              :                   }
    6277              :                 default:;
    6278              :                 }
    6279              :               break;
    6280              :             }
    6281      1465543 :           case INTEGER_CST:
    6282      1465543 :             {
    6283      1465543 :               if ((_p1 == _q20 && ! TREE_SIDE_EFFECTS (_p1)) || (operand_equal_p (_p1, _q20, 0) && types_match (_p1, _q20)))
    6284              :                 {
    6285        17969 :                   {
    6286        17969 :                     tree captures[5] ATTRIBUTE_UNUSED = { _p0, _p0, _q20, _q20, _q21 };
    6287        17969 :                     tree res = generic_simplify_389 (loc, type, _p0, _p1, captures, LT_EXPR, GT_EXPR);
    6288        17969 :                     if (res) return res;
    6289              :                   }
    6290              :                 }
    6291              :               break;
    6292              :             }
    6293              :           default:;
    6294              :           }
    6295              :         break;
    6296              :       }
    6297       183796 :     case MINUS_EXPR:
    6298       183796 :       {
    6299       183796 :         tree _q20 = TREE_OPERAND (_p0, 0);
    6300       183796 :         tree _q21 = TREE_OPERAND (_p0, 1);
    6301       183796 :         switch (TREE_CODE (_q21))
    6302              :           {
    6303          202 :           case REAL_CST:
    6304          202 :             {
    6305          202 :               switch (TREE_CODE (_p1))
    6306              :                 {
    6307          187 :                 case REAL_CST:
    6308          187 :                   {
    6309          187 :                     {
    6310          187 :                       tree captures[3] ATTRIBUTE_UNUSED = { _q20, _q21, _p1 };
    6311          187 :                       tree res = generic_simplify_256 (loc, type, _p0, _p1, captures, MINUS_EXPR, LT_EXPR);
    6312          187 :                       if (res) return res;
    6313              :                     }
    6314          187 :                     break;
    6315              :                   }
    6316              :                 default:;
    6317              :                 }
    6318              :               break;
    6319              :             }
    6320       183796 :           default:;
    6321              :           }
    6322       183796 :         switch (TREE_CODE (_q20))
    6323              :           {
    6324        18901 :           case REAL_CST:
    6325        18901 :             {
    6326        18901 :               switch (TREE_CODE (_p1))
    6327              :                 {
    6328        18688 :                 case REAL_CST:
    6329        18688 :                   {
    6330        18688 :                     {
    6331        18688 :                       tree captures[3] ATTRIBUTE_UNUSED = { _q20, _q21, _p1 };
    6332        18688 :                       tree res = generic_simplify_257 (loc, type, _p0, _p1, captures, LT_EXPR);
    6333        18688 :                       if (res) return res;
    6334              :                     }
    6335        18678 :                     break;
    6336              :                   }
    6337              :                 default:;
    6338              :                 }
    6339              :               break;
    6340              :             }
    6341              :           default:;
    6342              :           }
    6343              :         break;
    6344              :       }
    6345        49183 :     case FLOAT_EXPR:
    6346        49183 :       {
    6347        49183 :         tree _q20 = TREE_OPERAND (_p0, 0);
    6348        49183 :         switch (TREE_CODE (_p1))
    6349              :           {
    6350          102 :           case FLOAT_EXPR:
    6351          102 :             {
    6352          102 :               tree _q40 = TREE_OPERAND (_p1, 0);
    6353          102 :               {
    6354          102 :                 tree captures[3] ATTRIBUTE_UNUSED = { _p0, _q20, _q40 };
    6355          102 :                 tree res = generic_simplify_260 (loc, type, _p0, _p1, captures, LT_EXPR, LT_EXPR);
    6356          102 :                 if (res) return res;
    6357              :               }
    6358           71 :               break;
    6359              :             }
    6360          656 :           case REAL_CST:
    6361          656 :             {
    6362          656 :               {
    6363          656 :                 tree captures[2] ATTRIBUTE_UNUSED = { _q20, _p1 };
    6364          656 :                 tree res = generic_simplify_261 (loc, type, _p0, _p1, captures, LT_EXPR, LE_EXPR);
    6365          656 :                 if (res) return res;
    6366              :               }
    6367          552 :               break;
    6368              :             }
    6369              :           default:;
    6370              :           }
    6371              :         break;
    6372              :       }
    6373          694 :     case EXACT_DIV_EXPR:
    6374          694 :       {
    6375          694 :         tree _q20 = TREE_OPERAND (_p0, 0);
    6376          694 :         tree _q21 = TREE_OPERAND (_p0, 1);
    6377          694 :         switch (TREE_CODE (_q21))
    6378              :           {
    6379          694 :           case INTEGER_CST:
    6380          694 :             {
    6381          694 :               switch (TREE_CODE (_p1))
    6382              :                 {
    6383           19 :                 case INTEGER_CST:
    6384           19 :                   {
    6385           19 :                     {
    6386           19 :                       tree captures[3] ATTRIBUTE_UNUSED = { _q20, _q21, _p1 };
    6387           19 :                       tree res = generic_simplify_390 (loc, type, _p0, _p1, captures, LT_EXPR);
    6388           19 :                       if (res) return res;
    6389              :                     }
    6390            0 :                     break;
    6391              :                   }
    6392              :                 default:;
    6393              :                 }
    6394              :               break;
    6395              :             }
    6396              :           default:;
    6397              :           }
    6398              :         break;
    6399              :       }
    6400      2581438 :     CASE_CONVERT:
    6401      2581438 :       {
    6402      2581438 :         tree _q20 = TREE_OPERAND (_p0, 0);
    6403      2581438 :         switch (TREE_CODE (_q20))
    6404              :           {
    6405          107 :           case EXACT_DIV_EXPR:
    6406          107 :             {
    6407          107 :               tree _q30 = TREE_OPERAND (_q20, 0);
    6408          107 :               tree _q31 = TREE_OPERAND (_q20, 1);
    6409          107 :               switch (TREE_CODE (_q31))
    6410              :                 {
    6411          107 :                 case INTEGER_CST:
    6412          107 :                   {
    6413          107 :                     switch (TREE_CODE (_p1))
    6414              :                       {
    6415            0 :                       case INTEGER_CST:
    6416            0 :                         {
    6417            0 :                           {
    6418            0 :                             tree captures[3] ATTRIBUTE_UNUSED = { _q30, _q31, _p1 };
    6419            0 :                             tree res = generic_simplify_391 (loc, type, _p0, _p1, captures, LT_EXPR, GE_EXPR);
    6420            0 :                             if (res) return res;
    6421              :                           }
    6422            0 :                           break;
    6423              :                         }
    6424              :                       default:;
    6425              :                       }
    6426              :                     break;
    6427              :                   }
    6428              :                 default:;
    6429              :                 }
    6430              :               break;
    6431              :             }
    6432      2581438 :           default:;
    6433              :           }
    6434      2581438 :         switch (TREE_CODE (_p1))
    6435              :           {
    6436      1393518 :           CASE_CONVERT:
    6437      1393518 :             {
    6438      1393518 :               tree _q40 = TREE_OPERAND (_p1, 0);
    6439      1393518 :               {
    6440      1393518 :                 tree captures[4] ATTRIBUTE_UNUSED = { _p0, _q20, _p1, _q40 };
    6441      1393518 :                 tree res = generic_simplify_265 (loc, type, _p0, _p1, captures, LT_EXPR);
    6442      1393518 :                 if (res) return res;
    6443              :               }
    6444      1140337 :               break;
    6445              :             }
    6446      2328257 :           default:;
    6447              :           }
    6448      2328257 :         {
    6449      2328257 :           tree captures[4] ATTRIBUTE_UNUSED = { _p0, _q20, _p1, _p1 };
    6450      2328257 :           tree res = generic_simplify_266 (loc, type, _p0, _p1, captures, LT_EXPR);
    6451      2328257 :           if (res) return res;
    6452              :         }
    6453      1942483 :         switch (TREE_CODE (_q20))
    6454              :           {
    6455        50843 :           case ADDR_EXPR:
    6456        50843 :             {
    6457        50843 :               switch (TREE_CODE (_p1))
    6458              :                 {
    6459        50348 :                 CASE_CONVERT:
    6460        50348 :                   {
    6461        50348 :                     tree _q40 = TREE_OPERAND (_p1, 0);
    6462        50348 :                     switch (TREE_CODE (_q40))
    6463              :                       {
    6464        50348 :                       case ADDR_EXPR:
    6465        50348 :                         {
    6466        50348 :                           {
    6467        50348 :                             tree captures[3] ATTRIBUTE_UNUSED = { _p0, _q20, _q40 };
    6468        50348 :                             tree res = generic_simplify_284 (loc, type, _p0, _p1, captures, LT_EXPR);
    6469        50348 :                             if (res) return res;
    6470              :                           }
    6471          310 :                           break;
    6472              :                         }
    6473              :                       default:;
    6474              :                       }
    6475              :                     break;
    6476              :                   }
    6477          468 :                 case ADDR_EXPR:
    6478          468 :                   {
    6479          468 :                     {
    6480          468 :                       tree captures[3] ATTRIBUTE_UNUSED = { _p0, _q20, _p1 };
    6481          468 :                       tree res = generic_simplify_284 (loc, type, _p0, _p1, captures, LT_EXPR);
    6482          468 :                       if (res) return res;
    6483              :                     }
    6484            0 :                     break;
    6485              :                   }
    6486              :                 default:;
    6487              :                 }
    6488              :               break;
    6489              :             }
    6490      1891977 :           default:;
    6491              :           }
    6492      1891977 :         if (uniform_integer_cst_p (_p1))
    6493              :           {
    6494       223172 :             {
    6495       223172 :               tree captures[3] ATTRIBUTE_UNUSED = { _p0, _q20, _p1 };
    6496       223172 :               tree res = generic_simplify_392 (loc, type, _p0, _p1, captures, LT_EXPR);
    6497       223172 :               if (res) return res;
    6498              :             }
    6499              :           }
    6500              :         break;
    6501              :       }
    6502         2277 :     case NEGATE_EXPR:
    6503         2277 :       {
    6504         2277 :         tree _q20 = TREE_OPERAND (_p0, 0);
    6505         2277 :         switch (TREE_CODE (_p1))
    6506              :           {
    6507            0 :           case NEGATE_EXPR:
    6508            0 :             {
    6509            0 :               tree _q40 = TREE_OPERAND (_p1, 0);
    6510            0 :               {
    6511            0 :                 tree captures[2] ATTRIBUTE_UNUSED = { _q20, _q40 };
    6512            0 :                 tree res = generic_simplify_263 (loc, type, _p0, _p1, captures, LT_EXPR, GT_EXPR);
    6513            0 :                 if (res) return res;
    6514              :               }
    6515            0 :               break;
    6516              :             }
    6517         2277 :           default:;
    6518              :           }
    6519         2277 :       if (CONSTANT_CLASS_P (_p1))
    6520              :         {
    6521          301 :           {
    6522          301 :             tree captures[2] ATTRIBUTE_UNUSED = { _q20, _p1 };
    6523          301 :             tree res = generic_simplify_264 (loc, type, _p0, _p1, captures, LT_EXPR, GT_EXPR);
    6524          301 :             if (res) return res;
    6525              :           }
    6526              :         }
    6527              :         break;
    6528              :       }
    6529        30067 :     case ADDR_EXPR:
    6530        30067 :       {
    6531        30067 :         switch (TREE_CODE (_p1))
    6532              :           {
    6533            0 :           CASE_CONVERT:
    6534            0 :             {
    6535            0 :               tree _q30 = TREE_OPERAND (_p1, 0);
    6536            0 :               switch (TREE_CODE (_q30))
    6537              :                 {
    6538            0 :                 case ADDR_EXPR:
    6539            0 :                   {
    6540            0 :                     {
    6541            0 :                       tree captures[3] ATTRIBUTE_UNUSED = { _p0, _p0, _q30 };
    6542            0 :                       tree res = generic_simplify_285 (loc, type, _p0, _p1, captures, LT_EXPR);
    6543            0 :                       if (res) return res;
    6544              :                     }
    6545            0 :                     break;
    6546              :                   }
    6547              :                 default:;
    6548              :                 }
    6549              :               break;
    6550              :             }
    6551        29644 :           case ADDR_EXPR:
    6552        29644 :             {
    6553        29644 :               {
    6554        29644 :                 tree captures[3] ATTRIBUTE_UNUSED = { _p0, _p0, _p1 };
    6555        29644 :                 tree res = generic_simplify_285 (loc, type, _p0, _p1, captures, LT_EXPR);
    6556        29644 :                 if (res) return res;
    6557              :               }
    6558          620 :               break;
    6559              :             }
    6560              :           default:;
    6561              :           }
    6562              :         break;
    6563              :       }
    6564      1720771 :     case CALL_EXPR:
    6565      1720771 :       switch (get_call_combined_fn (_p0))
    6566              :         {
    6567            5 :         case CFN_BUILT_IN_SQRTF:
    6568            5 :           if (call_expr_nargs (_p0) == 1)
    6569              :     {
    6570            5 :               tree _q20 = CALL_EXPR_ARG (_p0, 0);
    6571            5 :               switch (TREE_CODE (_p1))
    6572              :                 {
    6573            5 :                 case REAL_CST:
    6574            5 :                   {
    6575            5 :                     {
    6576            5 :                       tree captures[2] ATTRIBUTE_UNUSED = { _q20, _p1 };
    6577            5 :                       tree res = generic_simplify_258 (loc, type, _p0, _p1, captures, CFN_BUILT_IN_SQRTF, LT_EXPR);
    6578            5 :                       if (res) return res;
    6579              :                     }
    6580            0 :                     break;
    6581              :                   }
    6582            0 :                 case CALL_EXPR:
    6583            0 :                   switch (get_call_combined_fn (_p1))
    6584              :                     {
    6585            0 :                     case CFN_BUILT_IN_SQRTF:
    6586            0 :                       if (call_expr_nargs (_p1) == 1)
    6587              :     {
    6588            0 :                           tree _q40 = CALL_EXPR_ARG (_p1, 0);
    6589            0 :                           {
    6590            0 :                             tree captures[2] ATTRIBUTE_UNUSED = { _q20, _q40 };
    6591            0 :                             tree res = generic_simplify_259 (loc, type, _p0, _p1, captures, CFN_BUILT_IN_SQRTF, LT_EXPR);
    6592            0 :                             if (res) return res;
    6593              :                           }
    6594              :                         }
    6595              :                       break;
    6596              :                     default:;
    6597              :                     }
    6598              :                   break;
    6599              :                 default:;
    6600              :                 }
    6601              :             }
    6602              :           break;
    6603            0 :         case CFN_BUILT_IN_SQRTL:
    6604            0 :           if (call_expr_nargs (_p0) == 1)
    6605              :     {
    6606            0 :               tree _q20 = CALL_EXPR_ARG (_p0, 0);
    6607            0 :               switch (TREE_CODE (_p1))
    6608              :                 {
    6609            0 :                 case REAL_CST:
    6610            0 :                   {
    6611            0 :                     {
    6612            0 :                       tree captures[2] ATTRIBUTE_UNUSED = { _q20, _p1 };
    6613            0 :                       tree res = generic_simplify_258 (loc, type, _p0, _p1, captures, CFN_BUILT_IN_SQRTL, LT_EXPR);
    6614            0 :                       if (res) return res;
    6615              :                     }
    6616            0 :                     break;
    6617              :                   }
    6618            0 :                 case CALL_EXPR:
    6619            0 :                   switch (get_call_combined_fn (_p1))
    6620              :                     {
    6621            0 :                     case CFN_BUILT_IN_SQRTL:
    6622            0 :                       if (call_expr_nargs (_p1) == 1)
    6623              :     {
    6624            0 :                           tree _q40 = CALL_EXPR_ARG (_p1, 0);
    6625            0 :                           {
    6626            0 :                             tree captures[2] ATTRIBUTE_UNUSED = { _q20, _q40 };
    6627            0 :                             tree res = generic_simplify_259 (loc, type, _p0, _p1, captures, CFN_BUILT_IN_SQRTL, LT_EXPR);
    6628            0 :                             if (res) return res;
    6629              :                           }
    6630              :                         }
    6631              :                       break;
    6632              :                     default:;
    6633              :                     }
    6634              :                   break;
    6635              :                 default:;
    6636              :                 }
    6637              :             }
    6638              :           break;
    6639            4 :         case CFN_BUILT_IN_SQRT:
    6640            4 :           if (call_expr_nargs (_p0) == 1)
    6641              :     {
    6642            4 :               tree _q20 = CALL_EXPR_ARG (_p0, 0);
    6643            4 :               switch (TREE_CODE (_p1))
    6644              :                 {
    6645            4 :                 case REAL_CST:
    6646            4 :                   {
    6647            4 :                     {
    6648            4 :                       tree captures[2] ATTRIBUTE_UNUSED = { _q20, _p1 };
    6649            4 :                       tree res = generic_simplify_258 (loc, type, _p0, _p1, captures, CFN_BUILT_IN_SQRT, LT_EXPR);
    6650            4 :                       if (res) return res;
    6651              :                     }
    6652            1 :                     break;
    6653              :                   }
    6654            0 :                 case CALL_EXPR:
    6655            0 :                   switch (get_call_combined_fn (_p1))
    6656              :                     {
    6657            0 :                     case CFN_BUILT_IN_SQRT:
    6658            0 :                       if (call_expr_nargs (_p1) == 1)
    6659              :     {
    6660            0 :                           tree _q40 = CALL_EXPR_ARG (_p1, 0);
    6661            0 :                           {
    6662            0 :                             tree captures[2] ATTRIBUTE_UNUSED = { _q20, _q40 };
    6663            0 :                             tree res = generic_simplify_259 (loc, type, _p0, _p1, captures, CFN_BUILT_IN_SQRT, LT_EXPR);
    6664            0 :                             if (res) return res;
    6665              :                           }
    6666              :                         }
    6667              :                       break;
    6668              :                     default:;
    6669              :                     }
    6670              :                   break;
    6671              :                 default:;
    6672              :                 }
    6673              :             }
    6674              :           break;
    6675            0 :         case CFN_SQRT:
    6676            0 :           if (call_expr_nargs (_p0) == 1)
    6677              :     {
    6678            0 :               tree _q20 = CALL_EXPR_ARG (_p0, 0);
    6679            0 :               switch (TREE_CODE (_p1))
    6680              :                 {
    6681            0 :                 case REAL_CST:
    6682            0 :                   {
    6683            0 :                     {
    6684            0 :                       tree captures[2] ATTRIBUTE_UNUSED = { _q20, _p1 };
    6685            0 :                       tree res = generic_simplify_258 (loc, type, _p0, _p1, captures, CFN_SQRT, LT_EXPR);
    6686            0 :                       if (res) return res;
    6687              :                     }
    6688            0 :                     break;
    6689              :                   }
    6690            0 :                 case CALL_EXPR:
    6691            0 :                   switch (get_call_combined_fn (_p1))
    6692              :                     {
    6693            0 :                     case CFN_SQRT:
    6694            0 :                       if (call_expr_nargs (_p1) == 1)
    6695              :     {
    6696            0 :                           tree _q40 = CALL_EXPR_ARG (_p1, 0);
    6697            0 :                           {
    6698            0 :                             tree captures[2] ATTRIBUTE_UNUSED = { _q20, _q40 };
    6699            0 :                             tree res = generic_simplify_259 (loc, type, _p0, _p1, captures, CFN_SQRT, LT_EXPR);
    6700            0 :                             if (res) return res;
    6701              :                           }
    6702              :                         }
    6703              :                       break;
    6704              :                     default:;
    6705              :                     }
    6706              :                   break;
    6707              :                 default:;
    6708              :                 }
    6709              :             }
    6710              :           break;
    6711              :         default:;
    6712              :         }
    6713              :       break;
    6714     14197210 :     default:;
    6715              :     }
    6716     14197210 :   switch (TREE_CODE (_p1))
    6717              :     {
    6718      1877453 :     CASE_CONVERT:
    6719      1877453 :       {
    6720      1877453 :         tree _q30 = TREE_OPERAND (_p1, 0);
    6721      1877453 :         switch (TREE_CODE (_q30))
    6722              :           {
    6723            0 :           case NE_EXPR:
    6724            0 :             {
    6725            0 :               tree _q40 = TREE_OPERAND (_q30, 0);
    6726            0 :               tree _q41 = TREE_OPERAND (_q30, 1);
    6727            0 :               if ((_q40 == _p0 && ! TREE_SIDE_EFFECTS (_q40)) || (operand_equal_p (_q40, _p0, 0) && types_match (_q40, _p0)))
    6728              :                 {
    6729            0 :                   if (integer_zerop (_q41))
    6730              :                     {
    6731            0 :                       {
    6732            0 :                         tree captures[1] ATTRIBUTE_UNUSED = { _p0 };
    6733            0 :                         if (TYPE_UNSIGNED (TREE_TYPE (captures[0]))
    6734              : )
    6735              :                           {
    6736            0 :                             if (TREE_SIDE_EFFECTS (_p1)) goto next_after_fail1630;
    6737            0 :                             if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1630;
    6738            0 :                             {
    6739            0 :                               tree _r;
    6740            0 :                               _r =  constant_boolean_node (false, type);
    6741            0 :                               if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 999, __FILE__, __LINE__, true);
    6742            0 :                               return _r;
    6743              :                             }
    6744              : next_after_fail1630:;
    6745              :                           }
    6746              :                       }
    6747              :                     }
    6748              :                 }
    6749              :               break;
    6750              :             }
    6751              :           default:;
    6752              :           }
    6753              :         break;
    6754              :       }
    6755     14197210 :     default:;
    6756              :     }
    6757     14197210 : if (uniform_integer_cst_p (_p1))
    6758              :   {
    6759      3271296 :     {
    6760      3271296 :       tree captures[3] ATTRIBUTE_UNUSED = { _p0, _p0, _p1 };
    6761      3271296 :       tree res = generic_simplify_393 (loc, type, _p0, _p1, captures, LT_EXPR);
    6762      3271296 :       if (res) return res;
    6763              :     }
    6764              :   }
    6765     13739296 :   switch (TREE_CODE (_p0))
    6766              :     {
    6767      1888167 :     CASE_CONVERT:
    6768      1888167 :       {
    6769      1888167 :         tree _q20 = TREE_OPERAND (_p0, 0);
    6770      1888167 :         switch (TREE_CODE (_q20))
    6771              :           {
    6772        84544 :           case PLUS_EXPR:
    6773        84544 :             {
    6774        84544 :               tree _q30 = TREE_OPERAND (_q20, 0);
    6775        84544 :               tree _q31 = TREE_OPERAND (_q20, 1);
    6776        84544 :               switch (TREE_CODE (_q30))
    6777              :                 {
    6778        56351 :                 CASE_CONVERT:
    6779        56351 :                   {
    6780        56351 :                     tree _q40 = TREE_OPERAND (_q30, 0);
    6781        56351 :                     switch (TREE_CODE (_q31))
    6782              :                       {
    6783        56314 :                       case INTEGER_CST:
    6784        56314 :                         {
    6785        56314 :                           if ((_p1 == _q40 && ! TREE_SIDE_EFFECTS (_p1)) || (operand_equal_p (_p1, _q40, 0) && types_match (_p1, _q40)))
    6786              :                             {
    6787           27 :                               {
    6788           27 :                                 tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q20, _q30, _q40, _q31 };
    6789           27 :                                 tree res = generic_simplify_394 (loc, type, _p0, _p1, captures, LT_EXPR, GT_EXPR);
    6790           27 :                                 if (res) return res;
    6791              :                               }
    6792              :                             }
    6793              :                           break;
    6794              :                         }
    6795              :                       default:;
    6796              :                       }
    6797              :                     break;
    6798              :                   }
    6799              :                 default:;
    6800              :                 }
    6801              :               break;
    6802              :             }
    6803              :           default:;
    6804              :           }
    6805              :         break;
    6806              :       }
    6807     13739269 :     default:;
    6808              :     }
    6809     13739269 :   switch (TREE_CODE (_p1))
    6810              :     {
    6811      1877453 :     CASE_CONVERT:
    6812      1877453 :       {
    6813      1877453 :         tree _q30 = TREE_OPERAND (_p1, 0);
    6814      1877453 :         switch (TREE_CODE (_q30))
    6815              :           {
    6816        22777 :           case PLUS_EXPR:
    6817        22777 :             {
    6818        22777 :               tree _q40 = TREE_OPERAND (_q30, 0);
    6819        22777 :               tree _q41 = TREE_OPERAND (_q30, 1);
    6820        22777 :               switch (TREE_CODE (_q40))
    6821              :                 {
    6822        20742 :                 CASE_CONVERT:
    6823        20742 :                   {
    6824        20742 :                     tree _q50 = TREE_OPERAND (_q40, 0);
    6825        20742 :                     if ((_q50 == _p0 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _p0, 0) && types_match (_q50, _p0)))
    6826              :                       {
    6827            0 :                         switch (TREE_CODE (_q41))
    6828              :                           {
    6829            0 :                           case INTEGER_CST:
    6830            0 :                             {
    6831            0 :                               {
    6832            0 :                                 tree captures[5] ATTRIBUTE_UNUSED = { _p1, _q30, _q40, _p0, _q41 };
    6833            0 :                                 tree res = generic_simplify_394 (loc, type, _p0, _p1, captures, GT_EXPR, LE_EXPR);
    6834            0 :                                 if (res) return res;
    6835              :                               }
    6836            0 :                               break;
    6837              :                             }
    6838              :                           default:;
    6839              :                           }
    6840              :                       }
    6841              :                     break;
    6842              :                   }
    6843              :                 default:;
    6844              :                 }
    6845              :               break;
    6846              :             }
    6847              :           default:;
    6848              :           }
    6849              :         break;
    6850              :       }
    6851       352921 :     case PLUS_EXPR:
    6852       352921 :       {
    6853       352921 :         tree _q30 = TREE_OPERAND (_p1, 0);
    6854       352921 :         tree _q31 = TREE_OPERAND (_p1, 1);
    6855       352921 :         if ((_q30 == _p0 && ! TREE_SIDE_EFFECTS (_q30)) || (operand_equal_p (_q30, _p0, 0) && types_match (_q30, _p0)))
    6856              :           {
    6857           80 :             switch (TREE_CODE (_q31))
    6858              :               {
    6859           64 :               case INTEGER_CST:
    6860           64 :                 {
    6861           64 :                   {
    6862           64 :                     tree captures[5] ATTRIBUTE_UNUSED = { _p1, _p1, _q30, _p0, _q31 };
    6863           64 :                     tree res = generic_simplify_389 (loc, type, _p0, _p1, captures, GT_EXPR, LE_EXPR);
    6864           64 :                     if (res) return res;
    6865              :                   }
    6866            0 :                   break;
    6867              :                 }
    6868              :               default:;
    6869              :               }
    6870              :           }
    6871              :         break;
    6872              :       }
    6873        23688 :     case MINUS_EXPR:
    6874        23688 :       {
    6875        23688 :         tree _q30 = TREE_OPERAND (_p1, 0);
    6876        23688 :         tree _q31 = TREE_OPERAND (_p1, 1);
    6877        23688 :         if ((_q30 == _p0 && ! TREE_SIDE_EFFECTS (_q30)) || (operand_equal_p (_q30, _p0, 0) && types_match (_q30, _p0)))
    6878              :           {
    6879            0 :             {
    6880            0 :               tree captures[3] ATTRIBUTE_UNUSED = { _p1, _p0, _q31 };
    6881            0 :               tree res = generic_simplify_395 (loc, type, _p0, _p1, captures, GT_EXPR);
    6882            0 :               if (res) return res;
    6883              :             }
    6884              :           }
    6885              :         break;
    6886              :       }
    6887     13739205 :     default:;
    6888              :     }
    6889     13739205 :   switch (TREE_CODE (_p0))
    6890              :     {
    6891      1941534 :     case PLUS_EXPR:
    6892      1941534 :       {
    6893      1941534 :         tree _q20 = TREE_OPERAND (_p0, 0);
    6894      1941534 :         tree _q21 = TREE_OPERAND (_p0, 1);
    6895      1941534 :         switch (TREE_CODE (_q20))
    6896              :           {
    6897         1345 :           case MINUS_EXPR:
    6898         1345 :             {
    6899         1345 :               tree _q30 = TREE_OPERAND (_q20, 0);
    6900         1345 :               tree _q31 = TREE_OPERAND (_q20, 1);
    6901         1345 :               if (integer_minus_onep (_q21))
    6902              :                 {
    6903           49 :                   if ((_p1 == _q30 && ! TREE_SIDE_EFFECTS (_p1)) || (operand_equal_p (_p1, _q30, 0) && types_match (_p1, _q30)))
    6904              :                     {
    6905            1 :                       {
    6906            1 :                         tree captures[2] ATTRIBUTE_UNUSED = { _q30, _q31 };
    6907            1 :                         tree res = generic_simplify_396 (loc, type, _p0, _p1, captures, LT_EXPR);
    6908            1 :                         if (res) return res;
    6909              :                       }
    6910              :                     }
    6911              :                 }
    6912              :               break;
    6913              :             }
    6914              :           default:;
    6915              :           }
    6916              :         break;
    6917              :       }
    6918     13739204 :     default:;
    6919              :     }
    6920     13739204 :   switch (TREE_CODE (_p1))
    6921              :     {
    6922            0 :     case REALPART_EXPR:
    6923            0 :       {
    6924            0 :         tree _q30 = TREE_OPERAND (_p1, 0);
    6925            0 :         switch (TREE_CODE (_q30))
    6926              :           {
    6927            0 :           case CALL_EXPR:
    6928            0 :             switch (get_call_combined_fn (_q30))
    6929              :               {
    6930            0 :               case CFN_SUB_OVERFLOW:
    6931            0 :                 if (call_expr_nargs (_q30) == 2)
    6932              :     {
    6933            0 :                     tree _q40 = CALL_EXPR_ARG (_q30, 0);
    6934            0 :                     tree _q41 = CALL_EXPR_ARG (_q30, 1);
    6935            0 :                     if ((_q40 == _p0 && ! TREE_SIDE_EFFECTS (_q40)) || (operand_equal_p (_q40, _p0, 0) && types_match (_q40, _p0)))
    6936              :                       {
    6937            0 :                         {
    6938            0 :                           tree captures[3] ATTRIBUTE_UNUSED = { _q30, _p0, _q41 };
    6939            0 :                           tree res = generic_simplify_397 (loc, type, _p0, _p1, captures, GT_EXPR, NE_EXPR);
    6940            0 :                           if (res) return res;
    6941              :                         }
    6942              :                       }
    6943              :                   }
    6944              :                 break;
    6945              :               default:;
    6946              :               }
    6947              :             break;
    6948              :           default:;
    6949              :           }
    6950              :         break;
    6951              :       }
    6952     13739204 :     default:;
    6953              :     }
    6954     13739204 :   switch (TREE_CODE (_p0))
    6955              :     {
    6956           20 :     case REALPART_EXPR:
    6957           20 :       {
    6958           20 :         tree _q20 = TREE_OPERAND (_p0, 0);
    6959           20 :         switch (TREE_CODE (_q20))
    6960              :           {
    6961            0 :           case CALL_EXPR:
    6962            0 :             switch (get_call_combined_fn (_q20))
    6963              :               {
    6964            0 :               case CFN_ADD_OVERFLOW:
    6965            0 :                 if (call_expr_nargs (_q20) == 2)
    6966              :     {
    6967            0 :                     tree _q30 = CALL_EXPR_ARG (_q20, 0);
    6968            0 :                     tree _q31 = CALL_EXPR_ARG (_q20, 1);
    6969            0 :                     if ((_p1 == _q30 && ! TREE_SIDE_EFFECTS (_p1)) || (operand_equal_p (_p1, _q30, 0) && types_match (_p1, _q30)))
    6970              :                       {
    6971            0 :                         {
    6972            0 :                           tree captures[3] ATTRIBUTE_UNUSED = { _q20, _q30, _q31 };
    6973            0 :                           tree res = generic_simplify_398 (loc, type, _p0, _p1, captures, LT_EXPR, NE_EXPR);
    6974            0 :                           if (res) return res;
    6975              :                         }
    6976              :                       }
    6977            0 :                     if ((_p1 == _q31 && ! TREE_SIDE_EFFECTS (_p1)) || (operand_equal_p (_p1, _q31, 0) && types_match (_p1, _q31)))
    6978              :                       {
    6979            0 :                         {
    6980            0 :                           tree captures[3] ATTRIBUTE_UNUSED = { _q20, _q31, _q30 };
    6981            0 :                           tree res = generic_simplify_398 (loc, type, _p0, _p1, captures, LT_EXPR, NE_EXPR);
    6982            0 :                           if (res) return res;
    6983              :                         }
    6984              :                       }
    6985              :                   }
    6986              :                 break;
    6987              :               default:;
    6988              :               }
    6989              :             break;
    6990              :           default:;
    6991              :           }
    6992              :         break;
    6993              :       }
    6994         7226 :     case TRUNC_DIV_EXPR:
    6995         7226 :       {
    6996         7226 :         tree _q20 = TREE_OPERAND (_p0, 0);
    6997         7226 :         tree _q21 = TREE_OPERAND (_p0, 1);
    6998         7226 :         if (integer_all_onesp (_q20))
    6999              :           {
    7000         1056 :             {
    7001         1056 :               tree captures[3] ATTRIBUTE_UNUSED = { _p0, _q21, _p1 };
    7002         1056 :               tree res = generic_simplify_399 (loc, type, _p0, _p1, captures, LT_EXPR, NE_EXPR);
    7003         1056 :               if (res) return res;
    7004              :             }
    7005              :           }
    7006              :         break;
    7007              :       }
    7008       118384 :     case MULT_EXPR:
    7009       118384 :       {
    7010       118384 :         tree _q20 = TREE_OPERAND (_p0, 0);
    7011       118384 :         tree _q21 = TREE_OPERAND (_p0, 1);
    7012       118384 :         switch (TREE_CODE (_q21))
    7013              :           {
    7014        11651 :           case REAL_CST:
    7015        11651 :             {
    7016        11651 :               switch (TREE_CODE (_p1))
    7017              :                 {
    7018          825 :                 case REAL_CST:
    7019          825 :                   {
    7020          825 :                     {
    7021          825 :                       tree captures[3] ATTRIBUTE_UNUSED = { _q20, _q21, _p1 };
    7022          825 :                       tree res = generic_simplify_400 (loc, type, _p0, _p1, captures, LT_EXPR, GT_EXPR);
    7023          825 :                       if (res) return res;
    7024              :                     }
    7025          825 :                     break;
    7026              :                   }
    7027              :                 default:;
    7028              :                 }
    7029              :               break;
    7030              :             }
    7031              :           default:;
    7032              :           }
    7033              :         break;
    7034              :       }
    7035      1941533 :     case PLUS_EXPR:
    7036      1941533 :       {
    7037      1941533 :         tree _q20 = TREE_OPERAND (_p0, 0);
    7038      1941533 :         tree _q21 = TREE_OPERAND (_p0, 1);
    7039      1941533 :         switch (TREE_CODE (_q21))
    7040              :           {
    7041      1446178 :           case INTEGER_CST:
    7042      1446178 :             {
    7043      1446178 :               switch (TREE_CODE (_p1))
    7044              :                 {
    7045       229534 :                 case INTEGER_CST:
    7046       229534 :                   {
    7047       229534 :                     {
    7048       229534 :                       tree captures[4] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1 };
    7049       229534 :                       tree res = generic_simplify_401 (loc, type, _p0, _p1, captures, PLUS_EXPR, MINUS_EXPR, LT_EXPR, GT_EXPR);
    7050       229534 :                       if (res) return res;
    7051              :                     }
    7052        15222 :                     break;
    7053              :                   }
    7054              :                 default:;
    7055              :                 }
    7056              :               break;
    7057              :             }
    7058              :           default:;
    7059              :           }
    7060              :         break;
    7061              :       }
    7062       183636 :     case MINUS_EXPR:
    7063       183636 :       {
    7064       183636 :         tree _q20 = TREE_OPERAND (_p0, 0);
    7065       183636 :         tree _q21 = TREE_OPERAND (_p0, 1);
    7066       183636 :         switch (TREE_CODE (_q21))
    7067              :           {
    7068            0 :           case INTEGER_CST:
    7069            0 :             {
    7070            0 :               switch (TREE_CODE (_p1))
    7071              :                 {
    7072            0 :                 case INTEGER_CST:
    7073            0 :                   {
    7074            0 :                     {
    7075            0 :                       tree captures[4] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1 };
    7076            0 :                       tree res = generic_simplify_401 (loc, type, _p0, _p1, captures, MINUS_EXPR, PLUS_EXPR, LT_EXPR, GT_EXPR);
    7077            0 :                       if (res) return res;
    7078              :                     }
    7079            0 :                     break;
    7080              :                   }
    7081              :                 default:;
    7082              :                 }
    7083              :               break;
    7084              :             }
    7085       183636 :           default:;
    7086              :           }
    7087       183636 :         switch (TREE_CODE (_q20))
    7088              :           {
    7089        44682 :           case INTEGER_CST:
    7090        44682 :             {
    7091        44682 :               switch (TREE_CODE (_p1))
    7092              :                 {
    7093         1645 :                 case INTEGER_CST:
    7094         1645 :                   {
    7095         1645 :                     {
    7096         1645 :                       tree captures[3] ATTRIBUTE_UNUSED = { _q20, _q21, _p1 };
    7097         1645 :                       tree res = generic_simplify_291 (loc, type, _p0, _p1, captures, LT_EXPR, GT_EXPR);
    7098         1645 :                       if (res) return res;
    7099              :                     }
    7100            0 :                     break;
    7101              :                   }
    7102              :                 default:;
    7103              :                 }
    7104              :               break;
    7105              :             }
    7106              :           default:;
    7107              :           }
    7108              :         break;
    7109              :       }
    7110      1720748 :     case CALL_EXPR:
    7111      1720748 :       switch (get_call_combined_fn (_p0))
    7112              :         {
    7113            3 :         case CFN_BUILT_IN_CTZ:
    7114            3 :           if (call_expr_nargs (_p0) == 1)
    7115              :     {
    7116            3 :               tree _q20 = CALL_EXPR_ARG (_p0, 0);
    7117            3 :               switch (TREE_CODE (_p1))
    7118              :                 {
    7119            3 :                 case INTEGER_CST:
    7120            3 :                   {
    7121            3 :                     {
    7122            3 :                       tree captures[3] ATTRIBUTE_UNUSED = { _p0, _q20, _p1 };
    7123            3 :                       tree res = generic_simplify_402 (loc, type, _p0, _p1, captures, LT_EXPR, NE_EXPR, CFN_BUILT_IN_CTZ);
    7124            3 :                       if (res) return res;
    7125              :                     }
    7126            0 :                     break;
    7127              :                   }
    7128              :                 default:;
    7129              :                 }
    7130              :             }
    7131              :           break;
    7132            2 :         case CFN_BUILT_IN_CTZL:
    7133            2 :           if (call_expr_nargs (_p0) == 1)
    7134              :     {
    7135            2 :               tree _q20 = CALL_EXPR_ARG (_p0, 0);
    7136            2 :               switch (TREE_CODE (_p1))
    7137              :                 {
    7138            2 :                 case INTEGER_CST:
    7139            2 :                   {
    7140            2 :                     {
    7141            2 :                       tree captures[3] ATTRIBUTE_UNUSED = { _p0, _q20, _p1 };
    7142            2 :                       tree res = generic_simplify_402 (loc, type, _p0, _p1, captures, LT_EXPR, NE_EXPR, CFN_BUILT_IN_CTZL);
    7143            2 :                       if (res) return res;
    7144              :                     }
    7145            0 :                     break;
    7146              :                   }
    7147              :                 default:;
    7148              :                 }
    7149              :             }
    7150              :           break;
    7151            0 :         case CFN_BUILT_IN_CTZIMAX:
    7152            0 :           if (call_expr_nargs (_p0) == 1)
    7153              :     {
    7154            0 :               tree _q20 = CALL_EXPR_ARG (_p0, 0);
    7155            0 :               switch (TREE_CODE (_p1))
    7156              :                 {
    7157            0 :                 case INTEGER_CST:
    7158            0 :                   {
    7159            0 :                     {
    7160            0 :                       tree captures[3] ATTRIBUTE_UNUSED = { _p0, _q20, _p1 };
    7161            0 :                       tree res = generic_simplify_402 (loc, type, _p0, _p1, captures, LT_EXPR, NE_EXPR, CFN_BUILT_IN_CTZIMAX);
    7162            0 :                       if (res) return res;
    7163              :                     }
    7164            0 :                     break;
    7165              :                   }
    7166              :                 default:;
    7167              :                 }
    7168              :             }
    7169              :           break;
    7170            0 :         case CFN_CTZ:
    7171            0 :           if (call_expr_nargs (_p0) == 1)
    7172              :     {
    7173            0 :               tree _q20 = CALL_EXPR_ARG (_p0, 0);
    7174            0 :               switch (TREE_CODE (_p1))
    7175              :                 {
    7176            0 :                 case INTEGER_CST:
    7177            0 :                   {
    7178            0 :                     {
    7179            0 :                       tree captures[3] ATTRIBUTE_UNUSED = { _p0, _q20, _p1 };
    7180            0 :                       tree res = generic_simplify_402 (loc, type, _p0, _p1, captures, LT_EXPR, NE_EXPR, CFN_CTZ);
    7181            0 :                       if (res) return res;
    7182              :                     }
    7183            0 :                     break;
    7184              :                   }
    7185              :                 default:;
    7186              :                 }
    7187              :             }
    7188            0 :           if (call_expr_nargs (_p0) == 2)
    7189              :     {
    7190            0 :               tree _q20 = CALL_EXPR_ARG (_p0, 0);
    7191            0 :               tree _q21 = CALL_EXPR_ARG (_p0, 1);
    7192            0 :               switch (TREE_CODE (_p1))
    7193              :                 {
    7194            0 :                 case INTEGER_CST:
    7195            0 :                   {
    7196            0 :                     {
    7197            0 :                       tree captures[4] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1 };
    7198            0 :                       tree res = generic_simplify_403 (loc, type, _p0, _p1, captures, LT_EXPR, NE_EXPR);
    7199            0 :                       if (res) return res;
    7200              :                     }
    7201            0 :                     break;
    7202              :                   }
    7203              :                 default:;
    7204              :                 }
    7205              :             }
    7206              :           break;
    7207            2 :         case CFN_BUILT_IN_CTZLL:
    7208            2 :           if (call_expr_nargs (_p0) == 1)
    7209              :     {
    7210            2 :               tree _q20 = CALL_EXPR_ARG (_p0, 0);
    7211            2 :               switch (TREE_CODE (_p1))
    7212              :                 {
    7213            2 :                 case INTEGER_CST:
    7214            2 :                   {
    7215            2 :                     {
    7216            2 :                       tree captures[3] ATTRIBUTE_UNUSED = { _p0, _q20, _p1 };
    7217            2 :                       tree res = generic_simplify_402 (loc, type, _p0, _p1, captures, LT_EXPR, NE_EXPR, CFN_BUILT_IN_CTZLL);
    7218            2 :                       if (res) return res;
    7219              :                     }
    7220            0 :                     break;
    7221              :                   }
    7222              :                 default:;
    7223              :                 }
    7224              :             }
    7225              :           break;
    7226              :         default:;
    7227              :         }
    7228              :       break;
    7229              :     default:;
    7230              :     }
    7231              :   return NULL_TREE;
    7232              : }
    7233              : 
    7234              : tree
    7235     20215451 : generic_simplify_GT_EXPR (location_t ARG_UNUSED (loc), enum tree_code ARG_UNUSED (code), const tree ARG_UNUSED (type), tree _p0, tree _p1)
    7236              : {
    7237     20215451 :   const bool debug_dump = dump_file && (dump_flags & TDF_FOLDING);
    7238     20215451 :   switch (TREE_CODE (_p0))
    7239              :     {
    7240         1006 :     case RDIV_EXPR:
    7241         1006 :       {
    7242         1006 :         tree _q20 = TREE_OPERAND (_p0, 0);
    7243         1006 :         tree _q21 = TREE_OPERAND (_p0, 1);
    7244         1006 :         switch (TREE_CODE (_q20))
    7245              :           {
    7246           29 :           case REAL_CST:
    7247           29 :             {
    7248           29 :               if (real_zerop (_p1))
    7249              :                 {
    7250            0 :                   {
    7251            0 :                     tree captures[3] ATTRIBUTE_UNUSED = { _q20, _q21, _p1 };
    7252            0 :                     tree res = generic_simplify_374 (loc, type, _p0, _p1, captures, GT_EXPR, LT_EXPR);
    7253            0 :                     if (res) return res;
    7254              :                   }
    7255              :                 }
    7256              :               break;
    7257              :             }
    7258              :           default:;
    7259              :           }
    7260              :         break;
    7261              :       }
    7262     20215451 :     default:;
    7263              :     }
    7264     20215451 :   switch (TREE_CODE (_p1))
    7265              :     {
    7266           96 :     case TRUNC_MOD_EXPR:
    7267           96 :       {
    7268           96 :         tree _q30 = TREE_OPERAND (_p1, 0);
    7269           96 :         tree _q31 = TREE_OPERAND (_p1, 1);
    7270           96 :         if ((_q31 == _p0 && ! TREE_SIDE_EFFECTS (_q31)) || (operand_equal_p (_q31, _p0, 0) && types_match (_q31, _p0)))
    7271              :           {
    7272            0 :             {
    7273            0 :               tree captures[2] ATTRIBUTE_UNUSED = { _q30, _p0 };
    7274            0 :               tree res = generic_simplify_375 (loc, type, _p0, _p1, captures, LT_EXPR);
    7275            0 :               if (res) return res;
    7276              :             }
    7277              :           }
    7278              :         break;
    7279              :       }
    7280     20215451 :     default:;
    7281              :     }
    7282     20215451 :   switch (TREE_CODE (_p0))
    7283              :     {
    7284       179288 :     case MULT_EXPR:
    7285       179288 :       {
    7286       179288 :         tree _q20 = TREE_OPERAND (_p0, 0);
    7287       179288 :         tree _q21 = TREE_OPERAND (_p0, 1);
    7288       179288 :         switch (TREE_CODE (_p1))
    7289              :           {
    7290         7603 :           case MULT_EXPR:
    7291         7603 :             {
    7292         7603 :               tree _q50 = TREE_OPERAND (_p1, 0);
    7293         7603 :               tree _q51 = TREE_OPERAND (_p1, 1);
    7294         7603 :               if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
    7295              :                 {
    7296          592 :                   {
    7297          592 :                     tree captures[3] ATTRIBUTE_UNUSED = { _q20, _q21, _q50 };
    7298          592 :                     tree res = generic_simplify_376 (loc, type, _p0, _p1, captures, GT_EXPR);
    7299          592 :                     if (res) return res;
    7300              :                   }
    7301              :                 }
    7302         7118 :               if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
    7303              :                 {
    7304            8 :                   {
    7305            8 :                     tree captures[3] ATTRIBUTE_UNUSED = { _q20, _q21, _q51 };
    7306            8 :                     tree res = generic_simplify_376 (loc, type, _p0, _p1, captures, GT_EXPR);
    7307            8 :                     if (res) return res;
    7308              :                   }
    7309              :                 }
    7310         7118 :               if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
    7311              :                 {
    7312            0 :                   {
    7313            0 :                     tree captures[3] ATTRIBUTE_UNUSED = { _q21, _q20, _q50 };
    7314            0 :                     tree res = generic_simplify_376 (loc, type, _p0, _p1, captures, GT_EXPR);
    7315            0 :                     if (res) return res;
    7316              :                   }
    7317              :                 }
    7318         7118 :               if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
    7319              :                 {
    7320          646 :                   {
    7321          646 :                     tree captures[3] ATTRIBUTE_UNUSED = { _q21, _q20, _q51 };
    7322          646 :                     tree res = generic_simplify_376 (loc, type, _p0, _p1, captures, GT_EXPR);
    7323          646 :                     if (res) return res;
    7324              :                   }
    7325              :                 }
    7326              :               break;
    7327              :             }
    7328              :           default:;
    7329              :           }
    7330              :         break;
    7331              :       }
    7332      2135086 :     case PLUS_EXPR:
    7333      2135086 :       {
    7334      2135086 :         tree _q20 = TREE_OPERAND (_p0, 0);
    7335      2135086 :         tree _q21 = TREE_OPERAND (_p0, 1);
    7336      2135086 :         if (integer_minus_onep (_q21))
    7337              :           {
    7338       548123 :             switch (TREE_CODE (_p1))
    7339              :               {
    7340       413271 :               case INTEGER_CST:
    7341       413271 :                 {
    7342       413271 :                   {
    7343       413271 :                     tree captures[3] ATTRIBUTE_UNUSED = { _q20, _q21, _p1 };
    7344       413271 :                     tree res = generic_simplify_404 (loc, type, _p0, _p1, captures, GT_EXPR, LE_EXPR);
    7345       413271 :                     if (res) return res;
    7346              :                   }
    7347       408094 :                   break;
    7348              :                 }
    7349              :               default:;
    7350              :               }
    7351              :           }
    7352      2129909 :         switch (TREE_CODE (_p1))
    7353              :           {
    7354        60915 :           case PLUS_EXPR:
    7355        60915 :             {
    7356        60915 :               tree _q50 = TREE_OPERAND (_p1, 0);
    7357        60915 :               tree _q51 = TREE_OPERAND (_p1, 1);
    7358        60915 :               if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
    7359              :                 {
    7360         4602 :                   {
    7361         4602 :                     tree captures[3] ATTRIBUTE_UNUSED = { _q20, _q21, _q50 };
    7362         4602 :                     tree res = generic_simplify_377 (loc, type, _p0, _p1, captures, GT_EXPR);
    7363         4602 :                     if (res) return res;
    7364              :                   }
    7365              :                 }
    7366        57682 :               if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
    7367              :                 {
    7368          319 :                   {
    7369          319 :                     tree captures[3] ATTRIBUTE_UNUSED = { _q20, _q21, _q51 };
    7370          319 :                     tree res = generic_simplify_377 (loc, type, _p0, _p1, captures, GT_EXPR);
    7371          319 :                     if (res) return res;
    7372              :                   }
    7373              :                 }
    7374        57682 :               if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
    7375              :                 {
    7376           31 :                   {
    7377           31 :                     tree captures[3] ATTRIBUTE_UNUSED = { _q21, _q20, _q50 };
    7378           31 :                     tree res = generic_simplify_377 (loc, type, _p0, _p1, captures, GT_EXPR);
    7379           31 :                     if (res) return res;
    7380              :                   }
    7381              :                 }
    7382        57682 :               if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
    7383              :                 {
    7384          302 :                   {
    7385          302 :                     tree captures[3] ATTRIBUTE_UNUSED = { _q21, _q20, _q51 };
    7386          302 :                     tree res = generic_simplify_377 (loc, type, _p0, _p1, captures, GT_EXPR);
    7387          302 :                     if (res) return res;
    7388              :                   }
    7389              :                 }
    7390              :               break;
    7391              :             }
    7392      2126676 :           default:;
    7393              :           }
    7394      2126676 :         switch (TREE_CODE (_q21))
    7395              :           {
    7396      1953823 :           case INTEGER_CST:
    7397      1953823 :             {
    7398      1953823 :               switch (TREE_CODE (_p1))
    7399              :                 {
    7400        34737 :                 case PLUS_EXPR:
    7401        34737 :                   {
    7402        34737 :                     tree _q50 = TREE_OPERAND (_p1, 0);
    7403        34737 :                     tree _q51 = TREE_OPERAND (_p1, 1);
    7404        34737 :                     if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
    7405              :                       {
    7406         1343 :                         {
    7407         1343 :                           tree captures[3] ATTRIBUTE_UNUSED = { _q20, _q21, _q50 };
    7408         1343 :                           tree res = generic_simplify_378 (loc, type, _p0, _p1, captures, GT_EXPR);
    7409         1343 :                           if (res) return res;
    7410              :                         }
    7411              :                       }
    7412              :                     break;
    7413              :                   }
    7414              :                 default:;
    7415              :                 }
    7416              :               break;
    7417              :             }
    7418      2126676 :           default:;
    7419              :           }
    7420      2126676 :         if ((_p1 == _q21 && ! TREE_SIDE_EFFECTS (_p1)) || (operand_equal_p (_p1, _q21, 0) && types_match (_p1, _q21)))
    7421              :           {
    7422        59929 :             {
    7423        59929 :               tree captures[3] ATTRIBUTE_UNUSED = { _p0, _q20, _q21 };
    7424        59929 :               tree res = generic_simplify_379 (loc, type, _p0, _p1, captures, GT_EXPR);
    7425        59929 :               if (res) return res;
    7426              :             }
    7427              :           }
    7428      2088469 :         if ((_p1 == _q20 && ! TREE_SIDE_EFFECTS (_p1)) || (operand_equal_p (_p1, _q20, 0) && types_match (_p1, _q20)))
    7429              :           {
    7430         6343 :             {
    7431         6343 :               tree captures[3] ATTRIBUTE_UNUSED = { _p0, _q21, _q20 };
    7432         6343 :               tree res = generic_simplify_379 (loc, type, _p0, _p1, captures, GT_EXPR);
    7433         6343 :               if (res) return res;
    7434              :             }
    7435              :           }
    7436              :         break;
    7437              :       }
    7438      2344405 :     CASE_CONVERT:
    7439      2344405 :       {
    7440      2344405 :         tree _q20 = TREE_OPERAND (_p0, 0);
    7441      2344405 :         switch (TREE_CODE (_q20))
    7442              :           {
    7443            5 :           case EXACT_DIV_EXPR:
    7444            5 :             {
    7445            5 :               tree _q30 = TREE_OPERAND (_q20, 0);
    7446            5 :               tree _q31 = TREE_OPERAND (_q20, 1);
    7447            5 :               switch (TREE_CODE (_q31))
    7448              :                 {
    7449            5 :                 case INTEGER_CST:
    7450            5 :                   {
    7451            5 :                     switch (TREE_CODE (_p1))
    7452              :                       {
    7453            2 :                       CASE_CONVERT:
    7454            2 :                         {
    7455            2 :                           tree _q60 = TREE_OPERAND (_p1, 0);
    7456            2 :                           switch (TREE_CODE (_q60))
    7457              :                             {
    7458            0 :                             case EXACT_DIV_EXPR:
    7459            0 :                               {
    7460            0 :                                 tree _q70 = TREE_OPERAND (_q60, 0);
    7461            0 :                                 tree _q71 = TREE_OPERAND (_q60, 1);
    7462            0 :                                 if ((_q71 == _q31 && ! TREE_SIDE_EFFECTS (_q71)) || (operand_equal_p (_q71, _q31, 0) && types_match (_q71, _q31)))
    7463              :                                   {
    7464            0 :                                     {
    7465            0 :                                       tree captures[4] ATTRIBUTE_UNUSED = { _p0, _q30, _q31, _q70 };
    7466            0 :                                       tree res = generic_simplify_206 (loc, type, _p0, _p1, captures, GT_EXPR);
    7467            0 :                                       if (res) return res;
    7468              :                                     }
    7469              :                                   }
    7470              :                                 break;
    7471              :                               }
    7472              :                             default:;
    7473              :                             }
    7474              :                           break;
    7475              :                         }
    7476              :                       default:;
    7477              :                       }
    7478              :                     break;
    7479              :                   }
    7480              :                 default:;
    7481              :                 }
    7482              :               break;
    7483              :             }
    7484              :           default:;
    7485              :           }
    7486              :         break;
    7487              :       }
    7488         3598 :     case EXACT_DIV_EXPR:
    7489         3598 :       {
    7490         3598 :         tree _q20 = TREE_OPERAND (_p0, 0);
    7491         3598 :         tree _q21 = TREE_OPERAND (_p0, 1);
    7492         3598 :         switch (TREE_CODE (_q21))
    7493              :           {
    7494         3598 :           case INTEGER_CST:
    7495         3598 :             {
    7496         3598 :               switch (TREE_CODE (_p1))
    7497              :                 {
    7498            6 :                 case EXACT_DIV_EXPR:
    7499            6 :                   {
    7500            6 :                     tree _q50 = TREE_OPERAND (_p1, 0);
    7501            6 :                     tree _q51 = TREE_OPERAND (_p1, 1);
    7502            6 :                     if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
    7503              :                       {
    7504            0 :                         {
    7505            0 :                           tree captures[4] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _q50 };
    7506            0 :                           tree res = generic_simplify_206 (loc, type, _p0, _p1, captures, GT_EXPR);
    7507            0 :                           if (res) return res;
    7508              :                         }
    7509              :                       }
    7510              :                     break;
    7511              :                   }
    7512              :                 default:;
    7513              :                 }
    7514              :               break;
    7515              :             }
    7516              :           default:;
    7517              :           }
    7518              :         break;
    7519              :       }
    7520      1726510 :     case TRUNC_DIV_EXPR:
    7521      1726510 :       {
    7522      1726510 :         tree _q20 = TREE_OPERAND (_p0, 0);
    7523      1726510 :         tree _q21 = TREE_OPERAND (_p0, 1);
    7524      1726510 :         switch (TREE_CODE (_q21))
    7525              :           {
    7526      1718196 :           case INTEGER_CST:
    7527      1718196 :             {
    7528      1718196 :               switch (TREE_CODE (_p1))
    7529              :                 {
    7530      1704689 :                 case INTEGER_CST:
    7531      1704689 :                   {
    7532      1704689 :                     {
    7533      1704689 :                       tree captures[4] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1 };
    7534      1704689 :                       tree res = generic_simplify_215 (loc, type, _p0, _p1, captures, GT_EXPR);
    7535      1704689 :                       if (res) return res;
    7536              :                     }
    7537           69 :                     break;
    7538              :                   }
    7539              :                 default:;
    7540              :                 }
    7541              :               break;
    7542              :             }
    7543              :           default:;
    7544              :           }
    7545              :         break;
    7546              :       }
    7547       756746 :     case MINUS_EXPR:
    7548       756746 :       {
    7549       756746 :         tree _q20 = TREE_OPERAND (_p0, 0);
    7550       756746 :         tree _q21 = TREE_OPERAND (_p0, 1);
    7551       756746 :         switch (TREE_CODE (_p1))
    7552              :           {
    7553         3481 :           case MINUS_EXPR:
    7554         3481 :             {
    7555         3481 :               tree _q50 = TREE_OPERAND (_p1, 0);
    7556         3481 :               tree _q51 = TREE_OPERAND (_p1, 1);
    7557         3481 :               if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
    7558              :                 {
    7559          880 :                   {
    7560          880 :                     tree captures[3] ATTRIBUTE_UNUSED = { _q20, _q21, _q50 };
    7561          880 :                     tree res = generic_simplify_380 (loc, type, _p0, _p1, captures, GT_EXPR);
    7562          880 :                     if (res) return res;
    7563              :                   }
    7564              :                 }
    7565         3481 :               if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
    7566              :                 {
    7567          172 :                   {
    7568          172 :                     tree captures[3] ATTRIBUTE_UNUSED = { _q20, _q21, _q51 };
    7569          172 :                     tree res = generic_simplify_381 (loc, type, _p0, _p1, captures, GT_EXPR);
    7570          172 :                     if (res) return res;
    7571              :                   }
    7572              :                 }
    7573              :               break;
    7574              :             }
    7575              :           default:;
    7576              :           }
    7577              :         break;
    7578              :       }
    7579        49715 :     case POINTER_DIFF_EXPR:
    7580        49715 :       {
    7581        49715 :         tree _q20 = TREE_OPERAND (_p0, 0);
    7582        49715 :         tree _q21 = TREE_OPERAND (_p0, 1);
    7583        49715 :         switch (TREE_CODE (_p1))
    7584              :           {
    7585          311 :           case POINTER_DIFF_EXPR:
    7586          311 :             {
    7587          311 :               tree _q50 = TREE_OPERAND (_p1, 0);
    7588          311 :               tree _q51 = TREE_OPERAND (_p1, 1);
    7589          311 :               if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
    7590              :                 {
    7591           43 :                   {
    7592           43 :                     tree captures[4] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _q50 };
    7593           43 :                     tree res = generic_simplify_219 (loc, type, _p0, _p1, captures, GT_EXPR);
    7594           43 :                     if (res) return res;
    7595              :                   }
    7596              :                 }
    7597          268 :               if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
    7598              :                 {
    7599            0 :                   {
    7600            0 :                     tree captures[4] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _q51 };
    7601            0 :                     tree res = generic_simplify_220 (loc, type, _p0, _p1, captures, GT_EXPR);
    7602            0 :                     if (res) return res;
    7603              :                   }
    7604              :                 }
    7605              :               break;
    7606              :             }
    7607              :           default:;
    7608              :           }
    7609              :         break;
    7610              :       }
    7611     18462143 :     default:;
    7612              :     }
    7613     18462143 :   switch (TREE_CODE (_p1))
    7614              :     {
    7615       111419 :     case PLUS_EXPR:
    7616       111419 :       {
    7617       111419 :         tree _q30 = TREE_OPERAND (_p1, 0);
    7618       111419 :         tree _q31 = TREE_OPERAND (_p1, 1);
    7619       111419 :         if ((_q31 == _p0 && ! TREE_SIDE_EFFECTS (_q31)) || (operand_equal_p (_q31, _p0, 0) && types_match (_q31, _p0)))
    7620              :           {
    7621            0 :             {
    7622            0 :               tree captures[3] ATTRIBUTE_UNUSED = { _p1, _q30, _p0 };
    7623            0 :               tree res = generic_simplify_379 (loc, type, _p0, _p1, captures, LT_EXPR);
    7624            0 :               if (res) return res;
    7625              :             }
    7626              :           }
    7627       111419 :         if ((_q30 == _p0 && ! TREE_SIDE_EFFECTS (_q30)) || (operand_equal_p (_q30, _p0, 0) && types_match (_q30, _p0)))
    7628              :           {
    7629            4 :             {
    7630            4 :               tree captures[3] ATTRIBUTE_UNUSED = { _p1, _q31, _p0 };
    7631            4 :               tree res = generic_simplify_379 (loc, type, _p0, _p1, captures, LT_EXPR);
    7632            4 :               if (res) return res;
    7633              :             }
    7634              :           }
    7635              :         break;
    7636              :       }
    7637        11850 :     case MINUS_EXPR:
    7638        11850 :       {
    7639        11850 :         tree _q30 = TREE_OPERAND (_p1, 0);
    7640        11850 :         tree _q31 = TREE_OPERAND (_p1, 1);
    7641        11850 :         if ((_q30 == _p0 && ! TREE_SIDE_EFFECTS (_q30)) || (operand_equal_p (_q30, _p0, 0) && types_match (_q30, _p0)))
    7642              :           {
    7643            0 :             {
    7644            0 :               tree captures[3] ATTRIBUTE_UNUSED = { _p0, _p1, _q31 };
    7645            0 :               tree res = generic_simplify_218 (loc, type, _p0, _p1, captures, GT_EXPR);
    7646            0 :               if (res) return res;
    7647              :             }
    7648              :           }
    7649              :         break;
    7650              :       }
    7651     18462143 :     default:;
    7652              :     }
    7653     18462143 :   switch (TREE_CODE (_p0))
    7654              :     {
    7655       756746 :     case MINUS_EXPR:
    7656       756746 :       {
    7657       756746 :         tree _q20 = TREE_OPERAND (_p0, 0);
    7658       756746 :         tree _q21 = TREE_OPERAND (_p0, 1);
    7659       756746 :         if ((_p1 == _q20 && ! TREE_SIDE_EFFECTS (_p1)) || (operand_equal_p (_p1, _q20, 0) && types_match (_p1, _q20)))
    7660              :           {
    7661        16024 :             {
    7662        16024 :               tree captures[3] ATTRIBUTE_UNUSED = { _q20, _p0, _q21 };
    7663        16024 :               tree res = generic_simplify_218 (loc, type, _p0, _p1, captures, LT_EXPR);
    7664        16024 :               if (res) return res;
    7665              :             }
    7666              :           }
    7667              :         break;
    7668              :       }
    7669        20230 :     case BIT_AND_EXPR:
    7670        20230 :       {
    7671        20230 :         tree _q20 = TREE_OPERAND (_p0, 0);
    7672        20230 :         tree _q21 = TREE_OPERAND (_p0, 1);
    7673        20230 :         if (tree_expr_nonnegative_p (_q20))
    7674              :           {
    7675        18123 :             if ((_p1 == _q20 && ! TREE_SIDE_EFFECTS (_p1)) || (operand_equal_p (_p1, _q20, 0) && types_match (_p1, _q20)))
    7676              :               {
    7677            0 :                 {
    7678            0 :                   tree captures[2] ATTRIBUTE_UNUSED = { _q20, _q21 };
    7679            0 :                   tree res = generic_simplify_382 (loc, type, _p0, _p1, captures, GT_EXPR, BIT_AND_EXPR);
    7680            0 :                   if (res) return res;
    7681              :                 }
    7682              :               }
    7683              :           }
    7684        20230 :         if (tree_expr_nonnegative_p (_q21))
    7685              :           {
    7686        19222 :             if ((_p1 == _q21 && ! TREE_SIDE_EFFECTS (_p1)) || (operand_equal_p (_p1, _q21, 0) && types_match (_p1, _q21)))
    7687              :               {
    7688         3936 :                 {
    7689         3936 :                   tree captures[2] ATTRIBUTE_UNUSED = { _q21, _q20 };
    7690         3936 :                   tree res = generic_simplify_382 (loc, type, _p0, _p1, captures, GT_EXPR, BIT_AND_EXPR);
    7691         3936 :                   if (res) return res;
    7692              :                 }
    7693              :               }
    7694              :           }
    7695              :         break;
    7696              :       }
    7697     18458164 :     default:;
    7698              :     }
    7699     18458164 :   switch (TREE_CODE (_p1))
    7700              :     {
    7701           98 :     case BIT_IOR_EXPR:
    7702           98 :       {
    7703           98 :         tree _q30 = TREE_OPERAND (_p1, 0);
    7704           98 :         tree _q31 = TREE_OPERAND (_p1, 1);
    7705           98 :         if ((_q30 == _p0 && ! TREE_SIDE_EFFECTS (_q30)) || (operand_equal_p (_q30, _p0, 0) && types_match (_q30, _p0)))
    7706              :           {
    7707            0 :             if (tree_expr_nonnegative_p (_q30))
    7708              :               {
    7709            0 :                 {
    7710            0 :                   tree captures[2] ATTRIBUTE_UNUSED = { _p0, _q31 };
    7711            0 :                   tree res = generic_simplify_382 (loc, type, _p0, _p1, captures, LT_EXPR, BIT_IOR_EXPR);
    7712            0 :                   if (res) return res;
    7713              :                 }
    7714              :               }
    7715              :           }
    7716           98 :         if ((_q31 == _p0 && ! TREE_SIDE_EFFECTS (_q31)) || (operand_equal_p (_q31, _p0, 0) && types_match (_q31, _p0)))
    7717              :           {
    7718            0 :             if (tree_expr_nonnegative_p (_q31))
    7719              :               {
    7720            0 :                 {
    7721            0 :                   tree captures[2] ATTRIBUTE_UNUSED = { _p0, _q30 };
    7722            0 :                   tree res = generic_simplify_382 (loc, type, _p0, _p1, captures, LT_EXPR, BIT_IOR_EXPR);
    7723            0 :                   if (res) return res;
    7724              :                 }
    7725              :               }
    7726              :           }
    7727              :         break;
    7728              :       }
    7729     18458164 :     default:;
    7730              :     }
    7731     18458164 :   switch (TREE_CODE (_p0))
    7732              :     {
    7733        33387 :     case MIN_EXPR:
    7734        33387 :       {
    7735        33387 :         tree _q20 = TREE_OPERAND (_p0, 0);
    7736        33387 :         tree _q21 = TREE_OPERAND (_p0, 1);
    7737        33387 :         switch (TREE_CODE (_p1))
    7738              :           {
    7739            4 :           case MAX_EXPR:
    7740            4 :             {
    7741            4 :               tree _q50 = TREE_OPERAND (_p1, 0);
    7742            4 :               tree _q51 = TREE_OPERAND (_p1, 1);
    7743            4 :               if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
    7744              :                 {
    7745            0 :                   if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
    7746              :                     {
    7747            0 :                       {
    7748            0 :                         tree captures[2] ATTRIBUTE_UNUSED = { _q20, _q21 };
    7749            0 :                         tree res = generic_simplify_383 (loc, type, _p0, _p1, captures, GT_EXPR);
    7750            0 :                         if (res) return res;
    7751              :                       }
    7752              :                     }
    7753              :                 }
    7754              :               break;
    7755              :             }
    7756              :           default:;
    7757              :           }
    7758              :         break;
    7759              :       }
    7760        14048 :     case MAX_EXPR:
    7761        14048 :       {
    7762        14048 :         tree _q20 = TREE_OPERAND (_p0, 0);
    7763        14048 :         tree _q21 = TREE_OPERAND (_p0, 1);
    7764        14048 :         switch (TREE_CODE (_p1))
    7765              :           {
    7766           16 :           case MIN_EXPR:
    7767           16 :             {
    7768           16 :               tree _q50 = TREE_OPERAND (_p1, 0);
    7769           16 :               tree _q51 = TREE_OPERAND (_p1, 1);
    7770           16 :               if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
    7771              :                 {
    7772            0 :                   if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
    7773              :                     {
    7774            0 :                       {
    7775            0 :                         tree captures[2] ATTRIBUTE_UNUSED = { _q20, _q21 };
    7776            0 :                         tree res = generic_simplify_384 (loc, type, _p0, _p1, captures, LT_EXPR, NE_EXPR);
    7777            0 :                         if (res) return res;
    7778              :                       }
    7779              :                     }
    7780              :                 }
    7781              :               break;
    7782              :             }
    7783        14048 :           default:;
    7784              :           }
    7785        14048 :         if ((_p1 == _q20 && ! TREE_SIDE_EFFECTS (_p1)) || (operand_equal_p (_p1, _q20, 0) && types_match (_p1, _q20)))
    7786              :           {
    7787            1 :             {
    7788            1 :               tree captures[2] ATTRIBUTE_UNUSED = { _q20, _q21 };
    7789            1 :               tree res = generic_simplify_228 (loc, type, _p0, _p1, captures, MAX_EXPR, GT_EXPR, LT_EXPR);
    7790            1 :               if (res) return res;
    7791              :             }
    7792              :           }
    7793        14047 :         if ((_p1 == _q21 && ! TREE_SIDE_EFFECTS (_p1)) || (operand_equal_p (_p1, _q21, 0) && types_match (_p1, _q21)))
    7794              :           {
    7795           12 :             {
    7796           12 :               tree captures[2] ATTRIBUTE_UNUSED = { _q21, _q20 };
    7797           12 :               tree res = generic_simplify_228 (loc, type, _p0, _p1, captures, MAX_EXPR, GT_EXPR, LT_EXPR);
    7798           12 :               if (res) return res;
    7799              :             }
    7800              :           }
    7801              :         break;
    7802              :       }
    7803     18458154 :     default:;
    7804              :     }
    7805     18458154 :   switch (TREE_CODE (_p1))
    7806              :     {
    7807          119 :     case MIN_EXPR:
    7808          119 :       {
    7809          119 :         tree _q30 = TREE_OPERAND (_p1, 0);
    7810          119 :         tree _q31 = TREE_OPERAND (_p1, 1);
    7811          119 :         if ((_q30 == _p0 && ! TREE_SIDE_EFFECTS (_q30)) || (operand_equal_p (_q30, _p0, 0) && types_match (_q30, _p0)))
    7812              :           {
    7813            0 :             {
    7814            0 :               tree captures[2] ATTRIBUTE_UNUSED = { _p0, _q31 };
    7815            0 :               tree res = generic_simplify_228 (loc, type, _p0, _p1, captures, MIN_EXPR, LT_EXPR, GT_EXPR);
    7816            0 :               if (res) return res;
    7817              :             }
    7818              :           }
    7819          119 :         if ((_q31 == _p0 && ! TREE_SIDE_EFFECTS (_q31)) || (operand_equal_p (_q31, _p0, 0) && types_match (_q31, _p0)))
    7820              :           {
    7821            0 :             {
    7822            0 :               tree captures[2] ATTRIBUTE_UNUSED = { _p0, _q30 };
    7823            0 :               tree res = generic_simplify_228 (loc, type, _p0, _p1, captures, MIN_EXPR, LT_EXPR, GT_EXPR);
    7824            0 :               if (res) return res;
    7825              :             }
    7826              :           }
    7827              :         break;
    7828              :       }
    7829          691 :     case MAX_EXPR:
    7830          691 :       {
    7831          691 :         tree _q30 = TREE_OPERAND (_p1, 0);
    7832          691 :         tree _q31 = TREE_OPERAND (_p1, 1);
    7833          691 :         if ((_q30 == _p0 && ! TREE_SIDE_EFFECTS (_q30)) || (operand_equal_p (_q30, _p0, 0) && types_match (_q30, _p0)))
    7834              :           {
    7835            0 :             {
    7836            0 :               tree captures[2] ATTRIBUTE_UNUSED = { _p0, _q31 };
    7837            0 :               tree res = generic_simplify_385 (loc, type, _p0, _p1, captures, MAX_EXPR, GT_EXPR);
    7838            0 :               if (res) return res;
    7839              :             }
    7840              :           }
    7841          691 :         if ((_q31 == _p0 && ! TREE_SIDE_EFFECTS (_q31)) || (operand_equal_p (_q31, _p0, 0) && types_match (_q31, _p0)))
    7842              :           {
    7843            0 :             {
    7844            0 :               tree captures[2] ATTRIBUTE_UNUSED = { _p0, _q30 };
    7845            0 :               tree res = generic_simplify_385 (loc, type, _p0, _p1, captures, MAX_EXPR, GT_EXPR);
    7846            0 :               if (res) return res;
    7847              :             }
    7848              :           }
    7849              :         break;
    7850              :       }
    7851     18458154 :     default:;
    7852              :     }
    7853     18458154 :   switch (TREE_CODE (_p0))
    7854              :     {
    7855        33387 :     case MIN_EXPR:
    7856        33387 :       {
    7857        33387 :         tree _q20 = TREE_OPERAND (_p0, 0);
    7858        33387 :         tree _q21 = TREE_OPERAND (_p0, 1);
    7859        33387 :         if ((_p1 == _q20 && ! TREE_SIDE_EFFECTS (_p1)) || (operand_equal_p (_p1, _q20, 0) && types_match (_p1, _q20)))
    7860              :           {
    7861            1 :             {
    7862            1 :               tree captures[2] ATTRIBUTE_UNUSED = { _q20, _q21 };
    7863            1 :               tree res = generic_simplify_385 (loc, type, _p0, _p1, captures, MIN_EXPR, LT_EXPR);
    7864            1 :               if (res) return res;
    7865              :             }
    7866              :           }
    7867        33386 :         if ((_p1 == _q21 && ! TREE_SIDE_EFFECTS (_p1)) || (operand_equal_p (_p1, _q21, 0) && types_match (_p1, _q21)))
    7868              :           {
    7869            1 :             {
    7870            1 :               tree captures[2] ATTRIBUTE_UNUSED = { _q21, _q20 };
    7871            1 :               tree res = generic_simplify_385 (loc, type, _p0, _p1, captures, MIN_EXPR, LT_EXPR);
    7872            1 :               if (res) return res;
    7873              :             }
    7874              :           }
    7875        33385 :         switch (TREE_CODE (_q21))
    7876              :           {
    7877        20092 :           case INTEGER_CST:
    7878        20092 :             {
    7879        20092 :               switch (TREE_CODE (_p1))
    7880              :                 {
    7881           61 :                 case INTEGER_CST:
    7882           61 :                   {
    7883           61 :                     {
    7884           61 :                       tree captures[3] ATTRIBUTE_UNUSED = { _q20, _q21, _p1 };
    7885           61 :                       tree res = generic_simplify_386 (loc, type, _p0, _p1, captures, MIN_EXPR, GT_EXPR, BIT_AND_EXPR);
    7886           61 :                       if (res) return res;
    7887              :                     }
    7888            0 :                     break;
    7889              :                   }
    7890              :                 default:;
    7891              :                 }
    7892              :               break;
    7893              :             }
    7894              :           default:;
    7895              :           }
    7896              :         break;
    7897              :       }
    7898        14038 :     case MAX_EXPR:
    7899        14038 :       {
    7900        14038 :         tree _q20 = TREE_OPERAND (_p0, 0);
    7901        14038 :         tree _q21 = TREE_OPERAND (_p0, 1);
    7902        14038 :         switch (TREE_CODE (_q21))
    7903              :           {
    7904        13439 :           case INTEGER_CST:
    7905        13439 :             {
    7906        13439 :               switch (TREE_CODE (_p1))
    7907              :                 {
    7908            0 :                 case INTEGER_CST:
    7909            0 :                   {
    7910            0 :                     {
    7911            0 :                       tree captures[3] ATTRIBUTE_UNUSED = { _q20, _q21, _p1 };
    7912            0 :                       tree res = generic_simplify_386 (loc, type, _p0, _p1, captures, MAX_EXPR, GT_EXPR, BIT_IOR_EXPR);
    7913            0 :                       if (res) return res;
    7914              :                     }
    7915            0 :                     break;
    7916              :                   }
    7917              :                 default:;
    7918              :                 }
    7919              :               break;
    7920              :             }
    7921              :           default:;
    7922              :           }
    7923              :         break;
    7924              :       }
    7925          877 :     case VEC_COND_EXPR:
    7926          877 :       {
    7927          877 :         tree _q20 = TREE_OPERAND (_p0, 0);
    7928          877 :         tree _q21 = TREE_OPERAND (_p0, 1);
    7929          877 :         tree _q22 = TREE_OPERAND (_p0, 2);
    7930          877 :         switch (TREE_CODE (_p1))
    7931              :           {
    7932           14 :           case VEC_COND_EXPR:
    7933           14 :             {
    7934           14 :               tree _q60 = TREE_OPERAND (_p1, 0);
    7935           14 :               tree _q61 = TREE_OPERAND (_p1, 1);
    7936           14 :               tree _q62 = TREE_OPERAND (_p1, 2);
    7937           14 :               if ((_q60 == _q20 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q20, 0) && types_match (_q60, _q20)))
    7938              :                 {
    7939            0 :                   {
    7940            0 :                     tree captures[7] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _q22, _p1, _q61, _q62 };
    7941            0 :                     if (VECTOR_TYPE_P (type)
    7942            0 :  && (TREE_CODE_CLASS (GT_EXPR) != tcc_comparison
    7943            0 :  || types_match (type, TREE_TYPE (captures[2]))
    7944            0 :  || expand_vec_cond_expr_p (type, TREE_TYPE (captures[1]))
    7945              :  || (optimize_vectors_before_lowering_p ()
    7946            0 :  && !expand_vec_cond_expr_p (TREE_TYPE (captures[2]), TREE_TYPE (captures[1]))))
    7947              : )
    7948              :                       {
    7949            0 :                         if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1634;
    7950            0 :                         {
    7951            0 :                           tree res_op0;
    7952            0 :                           res_op0 = captures[1];
    7953            0 :                           tree res_op1;
    7954            0 :                           {
    7955            0 :                             tree _o1[2], _r1;
    7956            0 :                             _o1[0] = captures[2];
    7957            0 :                             _o1[1] = captures[5];
    7958            0 :                             _r1 = fold_build2_loc (loc, GT_EXPR, type, _o1[0], _o1[1]);
    7959            0 :                             if (EXPR_P (_r1))
    7960            0 :                               goto next_after_fail1634;
    7961            0 :                             res_op1 = _r1;
    7962              :                           }
    7963            0 :                           tree res_op2;
    7964            0 :                           {
    7965            0 :                             tree _o1[2], _r1;
    7966            0 :                             _o1[0] = captures[3];
    7967            0 :                             _o1[1] = captures[6];
    7968            0 :                             _r1 = fold_build2_loc (loc, GT_EXPR, type, _o1[0], _o1[1]);
    7969            0 :                             if (EXPR_P (_r1))
    7970            0 :                               goto next_after_fail1634;
    7971            0 :                             res_op2 = _r1;
    7972              :                           }
    7973            0 :                           tree _r;
    7974            0 :                           _r = fold_build3_loc (loc, VEC_COND_EXPR, type, res_op0, res_op1, res_op2);
    7975            0 :                           if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 890, __FILE__, __LINE__, true);
    7976            0 :                           return _r;
    7977              :                         }
    7978            0 : next_after_fail1634:;
    7979              :                       }
    7980              :                   }
    7981              :                 }
    7982              :               break;
    7983              :             }
    7984          877 :           default:;
    7985              :           }
    7986          877 :         {
    7987          877 :           tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _q22, _p1 };
    7988          877 :           if (VECTOR_TYPE_P (type)
    7989          877 :  && (TREE_CODE_CLASS (GT_EXPR) != tcc_comparison
    7990          877 :  || types_match (type, TREE_TYPE (captures[2]))
    7991          877 :  || expand_vec_cond_expr_p (type, TREE_TYPE (captures[1]))
    7992              :  || (optimize_vectors_before_lowering_p ()
    7993           10 :  && !expand_vec_cond_expr_p (TREE_TYPE (captures[2]), TREE_TYPE (captures[1]))))
    7994              : )
    7995              :             {
    7996          877 :               if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1635;
    7997          877 :               {
    7998          877 :                 if (! tree_invariant_p (captures[4])) goto next_after_fail1635;
    7999           21 :                 tree res_op0;
    8000           21 :                 res_op0 = captures[1];
    8001           21 :                 tree res_op1;
    8002           21 :                 {
    8003           21 :                   tree _o1[2], _r1;
    8004           21 :                   _o1[0] = captures[2];
    8005           21 :                   _o1[1] = unshare_expr (captures[4]);
    8006           21 :                   _r1 = fold_build2_loc (loc, GT_EXPR, type, _o1[0], _o1[1]);
    8007           21 :                   if (EXPR_P (_r1))
    8008           17 :                     goto next_after_fail1635;
    8009            4 :                   res_op1 = _r1;
    8010              :                 }
    8011            4 :                 tree res_op2;
    8012            4 :                 {
    8013            4 :                   tree _o1[2], _r1;
    8014            4 :                   _o1[0] = captures[3];
    8015            4 :                   _o1[1] = captures[4];
    8016            4 :                   _r1 = fold_build2_loc (loc, GT_EXPR, type, _o1[0], _o1[1]);
    8017            4 :                   if (EXPR_P (_r1))
    8018            4 :                     goto next_after_fail1635;
    8019            0 :                   res_op2 = _r1;
    8020              :                 }
    8021            0 :                 tree _r;
    8022            0 :                 _r = fold_build3_loc (loc, VEC_COND_EXPR, type, res_op0, res_op1, res_op2);
    8023            0 :                 if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 892, __FILE__, __LINE__, true);
    8024            0 :                 return _r;
    8025              :               }
    8026          877 : next_after_fail1635:;
    8027              :             }
    8028              :         }
    8029          877 :         break;
    8030              :       }
    8031     18458091 :     default:;
    8032              :     }
    8033     18458091 :   switch (TREE_CODE (_p1))
    8034              :     {
    8035           74 :     case VEC_COND_EXPR:
    8036           74 :       {
    8037           74 :         tree _q30 = TREE_OPERAND (_p1, 0);
    8038           74 :         tree _q31 = TREE_OPERAND (_p1, 1);
    8039           74 :         tree _q32 = TREE_OPERAND (_p1, 2);
    8040           74 :         {
    8041           74 :           tree captures[5] ATTRIBUTE_UNUSED = { _p0, _p1, _q30, _q31, _q32 };
    8042           74 :           if (VECTOR_TYPE_P (type)
    8043           74 :  && (TREE_CODE_CLASS (GT_EXPR) != tcc_comparison
    8044           74 :  || types_match (type, TREE_TYPE (captures[3]))
    8045           74 :  || expand_vec_cond_expr_p (type, TREE_TYPE (captures[2]))
    8046              :  || (optimize_vectors_before_lowering_p ()
    8047            7 :  && !expand_vec_cond_expr_p (TREE_TYPE (captures[3]), TREE_TYPE (captures[2]))))
    8048              : )
    8049              :             {
    8050           74 :               if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1636;
    8051           74 :               {
    8052           74 :                 if (! tree_invariant_p (captures[0])) goto next_after_fail1636;
    8053            0 :                 tree res_op0;
    8054            0 :                 res_op0 = captures[2];
    8055            0 :                 tree res_op1;
    8056            0 :                 {
    8057            0 :                   tree _o1[2], _r1;
    8058            0 :                   _o1[0] = unshare_expr (captures[0]);
    8059            0 :                   _o1[1] = captures[3];
    8060            0 :                   _r1 = fold_build2_loc (loc, GT_EXPR, type, _o1[0], _o1[1]);
    8061            0 :                   if (EXPR_P (_r1))
    8062            0 :                     goto next_after_fail1636;
    8063            0 :                   res_op1 = _r1;
    8064              :                 }
    8065            0 :                 tree res_op2;
    8066            0 :                 {
    8067            0 :                   tree _o1[2], _r1;
    8068            0 :                   _o1[0] = captures[0];
    8069            0 :                   _o1[1] = captures[4];
    8070            0 :                   _r1 = fold_build2_loc (loc, GT_EXPR, type, _o1[0], _o1[1]);
    8071            0 :                   if (EXPR_P (_r1))
    8072            0 :                     goto next_after_fail1636;
    8073            0 :                   res_op2 = _r1;
    8074              :                 }
    8075            0 :                 tree _r;
    8076            0 :                 _r = fold_build3_loc (loc, VEC_COND_EXPR, type, res_op0, res_op1, res_op2);
    8077            0 :                 if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 893, __FILE__, __LINE__, true);
    8078            0 :                 return _r;
    8079              :               }
    8080           74 : next_after_fail1636:;
    8081              :             }
    8082              :         }
    8083           74 :         break;
    8084              :       }
    8085     18458091 :     default:;
    8086              :     }
    8087     18458091 : if (uniform_integer_cst_p (_p1))
    8088              :   {
    8089     12896359 :     {
    8090     12896359 :       tree captures[2] ATTRIBUTE_UNUSED = { _p0, _p1 };
    8091     12896359 :       tree res = generic_simplify_405 (loc, type, _p0, _p1, captures, GT_EXPR, GE_EXPR);
    8092     12896359 :       if (res) return res;
    8093              :     }
    8094              :   }
    8095     18379440 :   switch (TREE_CODE (_p0))
    8096              :     {
    8097       178491 :     case MULT_EXPR:
    8098       178491 :       {
    8099       178491 :         tree _q20 = TREE_OPERAND (_p0, 0);
    8100       178491 :         tree _q21 = TREE_OPERAND (_p0, 1);
    8101       178491 :         switch (TREE_CODE (_q21))
    8102              :           {
    8103       140097 :           case INTEGER_CST:
    8104       140097 :             {
    8105       140097 :               if (integer_zerop (_p1))
    8106              :                 {
    8107         7437 :                   {
    8108         7437 :                     tree captures[4] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1 };
    8109         7437 :                     tree res = generic_simplify_248 (loc, type, _p0, _p1, captures, GT_EXPR, LT_EXPR);
    8110         7437 :                     if (res) return res;
    8111              :                   }
    8112              :                 }
    8113              :               break;
    8114              :             }
    8115              :           default:;
    8116              :           }
    8117              :         break;
    8118              :       }
    8119     18376981 :     default:;
    8120              :     }
    8121     18376981 :   if ((_p1 == _p0 && ! TREE_SIDE_EFFECTS (_p1)) || (operand_equal_p (_p1, _p0, 0) && types_match (_p1, _p0)))
    8122              :     {
    8123         1280 :       {
    8124         1280 :         tree captures[1] ATTRIBUTE_UNUSED = { _p0 };
    8125         1280 :         tree res = generic_simplify_301 (loc, type, _p0, _p1, captures, GT_EXPR);
    8126         1280 :         if (res) return res;
    8127              :       }
    8128              :     }
    8129     18375701 :   switch (TREE_CODE (_p0))
    8130              :     {
    8131       913149 :     case BIT_NOT_EXPR:
    8132       913149 :       {
    8133       913149 :         tree _q20 = TREE_OPERAND (_p0, 0);
    8134       913149 :         switch (TREE_CODE (_p1))
    8135              :           {
    8136           10 :           case BIT_NOT_EXPR:
    8137           10 :             {
    8138           10 :               tree _q40 = TREE_OPERAND (_p1, 0);
    8139           10 :               {
    8140           10 :                 tree captures[5] ATTRIBUTE_UNUSED = { _p0, _p0, _q20, _p1, _q40 };
    8141           10 :                 tree res = generic_simplify_254 (loc, type, _p0, _p1, captures, GT_EXPR);
    8142           10 :                 if (res) return res;
    8143              :               }
    8144            0 :               break;
    8145              :             }
    8146       913139 :           default:;
    8147              :           }
    8148       913139 :       {
    8149       913139 :         tree _p1_pops[1];
    8150       913139 :         if (tree_nop_convert (_p1, _p1_pops))
    8151              :           {
    8152            2 :             tree _q40 = _p1_pops[0];
    8153            2 :             switch (TREE_CODE (_q40))
    8154              :               {
    8155            0 :               case BIT_NOT_EXPR:
    8156            0 :                 {
    8157            0 :                   tree _q50 = TREE_OPERAND (_q40, 0);
    8158            0 :                   {
    8159            0 :                     tree captures[5] ATTRIBUTE_UNUSED = { _p0, _p0, _q20, _q40, _q50 };
    8160            0 :                     tree res = generic_simplify_254 (loc, type, _p0, _p1, captures, GT_EXPR);
    8161            0 :                     if (res) return res;
    8162              :                   }
    8163            0 :                   break;
    8164              :                 }
    8165              :               default:;
    8166              :               }
    8167              :           }
    8168              :       }
    8169       913139 :       if (CONSTANT_CLASS_P (_p1))
    8170              :         {
    8171       910874 :           {
    8172       910874 :             tree captures[3] ATTRIBUTE_UNUSED = { _p0, _q20, _p1 };
    8173       910874 :             tree res = generic_simplify_253 (loc, type, _p0, _p1, captures, GT_EXPR, LT_EXPR);
    8174       910874 :             if (res) return res;
    8175              :           }
    8176              :         }
    8177              :         break;
    8178              :       }
    8179     17464817 :     default:;
    8180              :     }
    8181     17464817 : {
    8182     17464817 :   tree _p0_pops[1];
    8183     17464817 :   if (tree_nop_convert (_p0, _p0_pops))
    8184              :     {
    8185       941089 :       tree _q20 = _p0_pops[0];
    8186       941089 :       switch (TREE_CODE (_q20))
    8187              :         {
    8188            0 :         case BIT_NOT_EXPR:
    8189            0 :           {
    8190            0 :             tree _q30 = TREE_OPERAND (_q20, 0);
    8191            0 :             switch (TREE_CODE (_p1))
    8192              :               {
    8193            0 :               case BIT_NOT_EXPR:
    8194            0 :                 {
    8195            0 :                   tree _q50 = TREE_OPERAND (_p1, 0);
    8196            0 :                   {
    8197            0 :                     tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q20, _q30, _p1, _q50 };
    8198            0 :                     tree res = generic_simplify_252 (loc, type, _p0, _p1, captures, GT_EXPR);
    8199            0 :                     if (res) return res;
    8200              :                   }
    8201            0 :                   break;
    8202              :                 }
    8203            0 :               default:;
    8204              :               }
    8205            0 :           {
    8206            0 :             tree _p1_pops[1];
    8207            0 :             if (tree_nop_convert (_p1, _p1_pops))
    8208              :               {
    8209            0 :                 tree _q50 = _p1_pops[0];
    8210            0 :                 switch (TREE_CODE (_q50))
    8211              :                   {
    8212            0 :                   case BIT_NOT_EXPR:
    8213            0 :                     {
    8214            0 :                       tree _q60 = TREE_OPERAND (_q50, 0);
    8215            0 :                       {
    8216            0 :                         tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q20, _q30, _q50, _q60 };
    8217            0 :                         tree res = generic_simplify_252 (loc, type, _p0, _p1, captures, GT_EXPR);
    8218            0 :                         if (res) return res;
    8219              :                       }
    8220            0 :                       break;
    8221              :                     }
    8222              :                   default:;
    8223              :                   }
    8224              :               }
    8225              :           }
    8226            0 :           if (CONSTANT_CLASS_P (_p1))
    8227              :             {
    8228            0 :               {
    8229            0 :                 tree captures[3] ATTRIBUTE_UNUSED = { _q20, _q30, _p1 };
    8230            0 :                 tree res = generic_simplify_253 (loc, type, _p0, _p1, captures, GT_EXPR, LT_EXPR);
    8231            0 :                 if (res) return res;
    8232              :               }
    8233              :             }
    8234              :             break;
    8235              :           }
    8236              :         default:;
    8237              :         }
    8238              :     }
    8239              : }
    8240     17464817 :   switch (TREE_CODE (_p1))
    8241              :     {
    8242       817756 :     case REAL_CST:
    8243       817756 :       {
    8244       817756 :         {
    8245       817756 :           tree captures[2] ATTRIBUTE_UNUSED = { _p0, _p1 };
    8246       817756 :           tree res = generic_simplify_255 (loc, type, _p0, _p1, captures, GT_EXPR);
    8247       817756 :           if (res) return res;
    8248              :         }
    8249       817708 :         break;
    8250              :       }
    8251     17464769 :     default:;
    8252              :     }
    8253     17464769 :   switch (TREE_CODE (_p0))
    8254              :     {
    8255      2086241 :     case PLUS_EXPR:
    8256      2086241 :       {
    8257      2086241 :         tree _q20 = TREE_OPERAND (_p0, 0);
    8258      2086241 :         tree _q21 = TREE_OPERAND (_p0, 1);
    8259      2086241 :         switch (TREE_CODE (_q21))
    8260              :           {
    8261          479 :           case REAL_CST:
    8262          479 :             {
    8263          479 :               switch (TREE_CODE (_p1))
    8264              :                 {
    8265          199 :                 case REAL_CST:
    8266          199 :                   {
    8267          199 :                     {
    8268          199 :                       tree captures[3] ATTRIBUTE_UNUSED = { _q20, _q21, _p1 };
    8269          199 :                       tree res = generic_simplify_256 (loc, type, _p0, _p1, captures, PLUS_EXPR, GT_EXPR);
    8270          199 :                       if (res) return res;
    8271              :                     }
    8272          199 :                     break;
    8273              :                   }
    8274              :                 default:;
    8275              :                 }
    8276              :               break;
    8277              :             }
    8278      1914702 :           case INTEGER_CST:
    8279      1914702 :             {
    8280      1914702 :               if ((_p1 == _q20 && ! TREE_SIDE_EFFECTS (_p1)) || (operand_equal_p (_p1, _q20, 0) && types_match (_p1, _q20)))
    8281              :                 {
    8282         1313 :                   {
    8283         1313 :                     tree captures[5] ATTRIBUTE_UNUSED = { _p0, _p0, _q20, _q20, _q21 };
    8284         1313 :                     tree res = generic_simplify_389 (loc, type, _p0, _p1, captures, GT_EXPR, LE_EXPR);
    8285         1313 :                     if (res) return res;
    8286              :                   }
    8287              :                 }
    8288              :               break;
    8289              :             }
    8290              :           default:;
    8291              :           }
    8292              :         break;
    8293              :       }
    8294       746439 :     case MINUS_EXPR:
    8295       746439 :       {
    8296       746439 :         tree _q20 = TREE_OPERAND (_p0, 0);
    8297       746439 :         tree _q21 = TREE_OPERAND (_p0, 1);
    8298       746439 :         switch (TREE_CODE (_q21))
    8299              :           {
    8300          743 :           case REAL_CST:
    8301          743 :             {
    8302          743 :               switch (TREE_CODE (_p1))
    8303              :                 {
    8304          529 :                 case REAL_CST:
    8305          529 :                   {
    8306          529 :                     {
    8307          529 :                       tree captures[3] ATTRIBUTE_UNUSED = { _q20, _q21, _p1 };
    8308          529 :                       tree res = generic_simplify_256 (loc, type, _p0, _p1, captures, MINUS_EXPR, GT_EXPR);
    8309          529 :                       if (res) return res;
    8310              :                     }
    8311          527 :                     break;
    8312              :                   }
    8313              :                 default:;
    8314              :                 }
    8315              :               break;
    8316              :             }
    8317       746437 :           default:;
    8318              :           }
    8319       746437 :         switch (TREE_CODE (_q20))
    8320              :           {
    8321           43 :           case REAL_CST:
    8322           43 :             {
    8323           43 :               switch (TREE_CODE (_p1))
    8324              :                 {
    8325           37 :                 case REAL_CST:
    8326           37 :                   {
    8327           37 :                     {
    8328           37 :                       tree captures[3] ATTRIBUTE_UNUSED = { _q20, _q21, _p1 };
    8329           37 :                       tree res = generic_simplify_257 (loc, type, _p0, _p1, captures, GT_EXPR);
    8330           37 :                       if (res) return res;
    8331              :                     }
    8332           35 :                     break;
    8333              :                   }
    8334              :                 default:;
    8335              :                 }
    8336              :               break;
    8337              :             }
    8338              :           default:;
    8339              :           }
    8340              :         break;
    8341              :       }
    8342        39773 :     case FLOAT_EXPR:
    8343        39773 :       {
    8344        39773 :         tree _q20 = TREE_OPERAND (_p0, 0);
    8345        39773 :         switch (TREE_CODE (_p1))
    8346              :           {
    8347           30 :           case FLOAT_EXPR:
    8348           30 :             {
    8349           30 :               tree _q40 = TREE_OPERAND (_p1, 0);
    8350           30 :               {
    8351           30 :                 tree captures[3] ATTRIBUTE_UNUSED = { _p0, _q20, _q40 };
    8352           30 :                 tree res = generic_simplify_260 (loc, type, _p0, _p1, captures, GT_EXPR, GT_EXPR);
    8353           30 :                 if (res) return res;
    8354              :               }
    8355           30 :               break;
    8356              :             }
    8357        38058 :           case REAL_CST:
    8358        38058 :             {
    8359        38058 :               {
    8360        38058 :                 tree captures[2] ATTRIBUTE_UNUSED = { _q20, _p1 };
    8361        38058 :                 tree res = generic_simplify_261 (loc, type, _p0, _p1, captures, GT_EXPR, GE_EXPR);
    8362        38058 :                 if (res) return res;
    8363              :               }
    8364        19205 :               break;
    8365              :             }
    8366              :           default:;
    8367              :           }
    8368              :         break;
    8369              :       }
    8370         3598 :     case EXACT_DIV_EXPR:
    8371         3598 :       {
    8372         3598 :         tree _q20 = TREE_OPERAND (_p0, 0);
    8373         3598 :         tree _q21 = TREE_OPERAND (_p0, 1);
    8374         3598 :         switch (TREE_CODE (_q21))
    8375              :           {
    8376         3598 :           case INTEGER_CST:
    8377         3598 :             {
    8378         3598 :               switch (TREE_CODE (_p1))
    8379              :                 {
    8380          181 :                 case INTEGER_CST:
    8381          181 :                   {
    8382          181 :                     {
    8383          181 :                       tree captures[3] ATTRIBUTE_UNUSED = { _q20, _q21, _p1 };
    8384          181 :                       tree res = generic_simplify_390 (loc, type, _p0, _p1, captures, GT_EXPR);
    8385          181 :                       if (res) return res;
    8386              :                     }
    8387            0 :                     break;
    8388              :                   }
    8389              :                 default:;
    8390              :                 }
    8391              :               break;
    8392              :             }
    8393              :           default:;
    8394              :           }
    8395              :         break;
    8396              :       }
    8397      2340749 :     CASE_CONVERT:
    8398      2340749 :       {
    8399      2340749 :         tree _q20 = TREE_OPERAND (_p0, 0);
    8400      2340749 :         switch (TREE_CODE (_q20))
    8401              :           {
    8402            5 :           case EXACT_DIV_EXPR:
    8403            5 :             {
    8404            5 :               tree _q30 = TREE_OPERAND (_q20, 0);
    8405            5 :               tree _q31 = TREE_OPERAND (_q20, 1);
    8406            5 :               switch (TREE_CODE (_q31))
    8407              :                 {
    8408            5 :                 case INTEGER_CST:
    8409            5 :                   {
    8410            5 :                     switch (TREE_CODE (_p1))
    8411              :                       {
    8412            0 :                       case INTEGER_CST:
    8413            0 :                         {
    8414            0 :                           {
    8415            0 :                             tree captures[3] ATTRIBUTE_UNUSED = { _q30, _q31, _p1 };
    8416            0 :                             tree res = generic_simplify_391 (loc, type, _p0, _p1, captures, GT_EXPR, LT_EXPR);
    8417            0 :                             if (res) return res;
    8418              :                           }
    8419            0 :                           break;
    8420              :                         }
    8421              :                       default:;
    8422              :                       }
    8423              :                     break;
    8424              :                   }
    8425              :                 default:;
    8426              :                 }
    8427              :               break;
    8428              :             }
    8429      2340749 :           default:;
    8430              :           }
    8431      2340749 :         switch (TREE_CODE (_p1))
    8432              :           {
    8433       172398 :           CASE_CONVERT:
    8434       172398 :             {
    8435       172398 :               tree _q40 = TREE_OPERAND (_p1, 0);
    8436       172398 :               {
    8437       172398 :                 tree captures[4] ATTRIBUTE_UNUSED = { _p0, _q20, _p1, _q40 };
    8438       172398 :                 tree res = generic_simplify_265 (loc, type, _p0, _p1, captures, GT_EXPR);
    8439       172398 :                 if (res) return res;
    8440              :               }
    8441       144810 :               break;
    8442              :             }
    8443      2313161 :           default:;
    8444              :           }
    8445      2313161 :         {
    8446      2313161 :           tree captures[4] ATTRIBUTE_UNUSED = { _p0, _q20, _p1, _p1 };
    8447      2313161 :           tree res = generic_simplify_266 (loc, type, _p0, _p1, captures, GT_EXPR);
    8448      2313161 :           if (res) return res;
    8449              :         }
    8450      1163397 :         switch (TREE_CODE (_q20))
    8451              :           {
    8452          854 :           case ADDR_EXPR:
    8453          854 :             {
    8454          854 :               switch (TREE_CODE (_p1))
    8455              :                 {
    8456          733 :                 CASE_CONVERT:
    8457          733 :                   {
    8458          733 :                     tree _q40 = TREE_OPERAND (_p1, 0);
    8459          733 :                     switch (TREE_CODE (_q40))
    8460              :                       {
    8461          733 :                       case ADDR_EXPR:
    8462          733 :                         {
    8463          733 :                           {
    8464          733 :                             tree captures[3] ATTRIBUTE_UNUSED = { _p0, _q20, _q40 };
    8465          733 :                             tree res = generic_simplify_284 (loc, type, _p0, _p1, captures, GT_EXPR);
    8466          733 :                             if (res) return res;
    8467              :                           }
    8468          240 :                           break;
    8469              :                         }
    8470              :                       default:;
    8471              :                       }
    8472              :                     break;
    8473              :                   }
    8474            0 :                 case ADDR_EXPR:
    8475            0 :                   {
    8476            0 :                     {
    8477            0 :                       tree captures[3] ATTRIBUTE_UNUSED = { _p0, _q20, _p1 };
    8478            0 :                       tree res = generic_simplify_284 (loc, type, _p0, _p1, captures, GT_EXPR);
    8479            0 :                       if (res) return res;
    8480              :                     }
    8481            0 :                     break;
    8482              :                   }
    8483              :                 default:;
    8484              :                 }
    8485              :               break;
    8486              :             }
    8487      1162904 :           default:;
    8488              :           }
    8489      1162904 :         if (uniform_integer_cst_p (_p1))
    8490              :           {
    8491       314472 :             {
    8492       314472 :               tree captures[3] ATTRIBUTE_UNUSED = { _p0, _q20, _p1 };
    8493       314472 :               tree res = generic_simplify_392 (loc, type, _p0, _p1, captures, GT_EXPR);
    8494       314472 :               if (res) return res;
    8495              :             }
    8496              :           }
    8497              :         break;
    8498              :       }
    8499        16291 :     case BIT_AND_EXPR:
    8500        16291 :       {
    8501        16291 :         tree _q20 = TREE_OPERAND (_p0, 0);
    8502        16291 :         tree _q21 = TREE_OPERAND (_p0, 1);
    8503        16291 :         switch (TREE_CODE (_q21))
    8504              :           {
    8505        15178 :           case INTEGER_CST:
    8506        15178 :             {
    8507        15178 :               switch (TREE_CODE (_p1))
    8508              :                 {
    8509         9269 :                 case INTEGER_CST:
    8510         9269 :                   {
    8511         9269 :                     {
    8512         9269 :                       tree captures[4] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1 };
    8513         9269 :                       tree res = generic_simplify_406 (loc, type, _p0, _p1, captures, GT_EXPR, NE_EXPR);
    8514         9269 :                       if (res) return res;
    8515              :                     }
    8516         8756 :                     break;
    8517              :                   }
    8518              :                 default:;
    8519              :                 }
    8520              :               break;
    8521              :             }
    8522              :           default:;
    8523              :           }
    8524              :         break;
    8525              :       }
    8526        10912 :     case NEGATE_EXPR:
    8527        10912 :       {
    8528        10912 :         tree _q20 = TREE_OPERAND (_p0, 0);
    8529        10912 :         switch (TREE_CODE (_p1))
    8530              :           {
    8531            4 :           case NEGATE_EXPR:
    8532            4 :             {
    8533            4 :               tree _q40 = TREE_OPERAND (_p1, 0);
    8534            4 :               {
    8535            4 :                 tree captures[2] ATTRIBUTE_UNUSED = { _q20, _q40 };
    8536            4 :                 tree res = generic_simplify_263 (loc, type, _p0, _p1, captures, GT_EXPR, LT_EXPR);
    8537            4 :                 if (res) return res;
    8538              :               }
    8539            4 :               break;
    8540              :             }
    8541        10912 :           default:;
    8542              :           }
    8543        10912 :       if (CONSTANT_CLASS_P (_p1))
    8544              :         {
    8545          690 :           {
    8546          690 :             tree captures[2] ATTRIBUTE_UNUSED = { _q20, _p1 };
    8547          690 :             tree res = generic_simplify_264 (loc, type, _p0, _p1, captures, GT_EXPR, LT_EXPR);
    8548          690 :             if (res) return res;
    8549              :           }
    8550              :         }
    8551              :         break;
    8552              :       }
    8553         4573 :     case ADDR_EXPR:
    8554         4573 :       {
    8555         4573 :         switch (TREE_CODE (_p1))
    8556              :           {
    8557            0 :           CASE_CONVERT:
    8558            0 :             {
    8559            0 :               tree _q30 = TREE_OPERAND (_p1, 0);
    8560            0 :               switch (TREE_CODE (_q30))
    8561              :                 {
    8562            0 :                 case ADDR_EXPR:
    8563            0 :                   {
    8564            0 :                     {
    8565            0 :                       tree captures[3] ATTRIBUTE_UNUSED = { _p0, _p0, _q30 };
    8566            0 :                       tree res = generic_simplify_285 (loc, type, _p0, _p1, captures, GT_EXPR);
    8567            0 :                       if (res) return res;
    8568              :                     }
    8569            0 :                     break;
    8570              :                   }
    8571              :                 default:;
    8572              :                 }
    8573              :               break;
    8574              :             }
    8575         4268 :           case ADDR_EXPR:
    8576         4268 :             {
    8577         4268 :               {
    8578         4268 :                 tree captures[3] ATTRIBUTE_UNUSED = { _p0, _p0, _p1 };
    8579         4268 :                 tree res = generic_simplify_285 (loc, type, _p0, _p1, captures, GT_EXPR);
    8580         4268 :                 if (res) return res;
    8581              :               }
    8582          702 :               break;
    8583              :             }
    8584              :           default:;
    8585              :           }
    8586              :         break;
    8587              :       }
    8588       299380 :     case CALL_EXPR:
    8589       299380 :       switch (get_call_combined_fn (_p0))
    8590              :         {
    8591            1 :         case CFN_BUILT_IN_SQRTF:
    8592            1 :           if (call_expr_nargs (_p0) == 1)
    8593              :     {
    8594            1 :               tree _q20 = CALL_EXPR_ARG (_p0, 0);
    8595            1 :               switch (TREE_CODE (_p1))
    8596              :                 {
    8597            1 :                 case REAL_CST:
    8598            1 :                   {
    8599            1 :                     {
    8600            1 :                       tree captures[2] ATTRIBUTE_UNUSED = { _q20, _p1 };
    8601            1 :                       tree res = generic_simplify_258 (loc, type, _p0, _p1, captures, CFN_BUILT_IN_SQRTF, GT_EXPR);
    8602            1 :                       if (res) return res;
    8603              :                     }
    8604            0 :                     break;
    8605              :                   }
    8606            0 :                 case CALL_EXPR:
    8607            0 :                   switch (get_call_combined_fn (_p1))
    8608              :                     {
    8609            0 :                     case CFN_BUILT_IN_SQRTF:
    8610            0 :                       if (call_expr_nargs (_p1) == 1)
    8611              :     {
    8612            0 :                           tree _q40 = CALL_EXPR_ARG (_p1, 0);
    8613            0 :                           {
    8614            0 :                             tree captures[2] ATTRIBUTE_UNUSED = { _q20, _q40 };
    8615            0 :                             tree res = generic_simplify_259 (loc, type, _p0, _p1, captures, CFN_BUILT_IN_SQRTF, GT_EXPR);
    8616            0 :                             if (res) return res;
    8617              :                           }
    8618              :                         }
    8619              :                       break;
    8620              :                     default:;
    8621              :                     }
    8622              :                   break;
    8623              :                 default:;
    8624              :                 }
    8625              :             }
    8626              :           break;
    8627            0 :         case CFN_BUILT_IN_SQRTL:
    8628            0 :           if (call_expr_nargs (_p0) == 1)
    8629              :     {
    8630            0 :               tree _q20 = CALL_EXPR_ARG (_p0, 0);
    8631            0 :               switch (TREE_CODE (_p1))
    8632              :                 {
    8633            0 :                 case REAL_CST:
    8634            0 :                   {
    8635            0 :                     {
    8636            0 :                       tree captures[2] ATTRIBUTE_UNUSED = { _q20, _p1 };
    8637            0 :                       tree res = generic_simplify_258 (loc, type, _p0, _p1, captures, CFN_BUILT_IN_SQRTL, GT_EXPR);
    8638            0 :                       if (res) return res;
    8639              :                     }
    8640            0 :                     break;
    8641              :                   }
    8642            0 :                 case CALL_EXPR:
    8643            0 :                   switch (get_call_combined_fn (_p1))
    8644              :                     {
    8645            0 :                     case CFN_BUILT_IN_SQRTL:
    8646            0 :                       if (call_expr_nargs (_p1) == 1)
    8647              :     {
    8648            0 :                           tree _q40 = CALL_EXPR_ARG (_p1, 0);
    8649            0 :                           {
    8650            0 :                             tree captures[2] ATTRIBUTE_UNUSED = { _q20, _q40 };
    8651            0 :                             tree res = generic_simplify_259 (loc, type, _p0, _p1, captures, CFN_BUILT_IN_SQRTL, GT_EXPR);
    8652            0 :                             if (res) return res;
    8653              :                           }
    8654              :                         }
    8655              :                       break;
    8656              :                     default:;
    8657              :                     }
    8658              :                   break;
    8659              :                 default:;
    8660              :                 }
    8661              :             }
    8662              :           break;
    8663            3 :         case CFN_BUILT_IN_SQRT:
    8664            3 :           if (call_expr_nargs (_p0) == 1)
    8665              :     {
    8666            3 :               tree _q20 = CALL_EXPR_ARG (_p0, 0);
    8667            3 :               switch (TREE_CODE (_p1))
    8668              :                 {
    8669            3 :                 case REAL_CST:
    8670            3 :                   {
    8671            3 :                     {
    8672            3 :                       tree captures[2] ATTRIBUTE_UNUSED = { _q20, _p1 };
    8673            3 :                       tree res = generic_simplify_258 (loc, type, _p0, _p1, captures, CFN_BUILT_IN_SQRT, GT_EXPR);
    8674            3 :                       if (res) return res;
    8675              :                     }
    8676            0 :                     break;
    8677              :                   }
    8678            0 :                 case CALL_EXPR:
    8679            0 :                   switch (get_call_combined_fn (_p1))
    8680              :                     {
    8681            0 :                     case CFN_BUILT_IN_SQRT:
    8682            0 :                       if (call_expr_nargs (_p1) == 1)
    8683              :     {
    8684            0 :                           tree _q40 = CALL_EXPR_ARG (_p1, 0);
    8685            0 :                           {
    8686            0 :                             tree captures[2] ATTRIBUTE_UNUSED = { _q20, _q40 };
    8687            0 :                             tree res = generic_simplify_259 (loc, type, _p0, _p1, captures, CFN_BUILT_IN_SQRT, GT_EXPR);
    8688            0 :                             if (res) return res;
    8689              :                           }
    8690              :                         }
    8691              :                       break;
    8692              :                     default:;
    8693              :                     }
    8694              :                   break;
    8695              :                 default:;
    8696              :                 }
    8697              :             }
    8698              :           break;
    8699            0 :         case CFN_SQRT:
    8700            0 :           if (call_expr_nargs (_p0) == 1)
    8701              :     {
    8702            0 :               tree _q20 = CALL_EXPR_ARG (_p0, 0);
    8703            0 :               switch (TREE_CODE (_p1))
    8704              :                 {
    8705            0 :                 case REAL_CST:
    8706            0 :                   {
    8707            0 :                     {
    8708            0 :                       tree captures[2] ATTRIBUTE_UNUSED = { _q20, _p1 };
    8709            0 :                       tree res = generic_simplify_258 (loc, type, _p0, _p1, captures, CFN_SQRT, GT_EXPR);
    8710            0 :                       if (res) return res;
    8711              :                     }
    8712            0 :                     break;
    8713              :                   }
    8714            0 :                 case CALL_EXPR:
    8715            0 :                   switch (get_call_combined_fn (_p1))
    8716              :                     {
    8717            0 :                     case CFN_SQRT:
    8718            0 :                       if (call_expr_nargs (_p1) == 1)
    8719              :     {
    8720            0 :                           tree _q40 = CALL_EXPR_ARG (_p1, 0);
    8721            0 :                           {
    8722            0 :                             tree captures[2] ATTRIBUTE_UNUSED = { _q20, _q40 };
    8723            0 :                             tree res = generic_simplify_259 (loc, type, _p0, _p1, captures, CFN_SQRT, GT_EXPR);
    8724            0 :                             if (res) return res;
    8725              :                           }
    8726              :                         }
    8727              :                       break;
    8728              :                     default:;
    8729              :                     }
    8730              :                   break;
    8731              :                 default:;
    8732              :                 }
    8733              :             }
    8734              :           break;
    8735              :         default:;
    8736              :         }
    8737              :       break;
    8738     16234969 :     default:;
    8739              :     }
    8740     16234969 :   if (uniform_integer_cst_p (_p1))
    8741              :     {
    8742     10726838 :       {
    8743     10726838 :         tree captures[3] ATTRIBUTE_UNUSED = { _p0, _p0, _p1 };
    8744     10726838 :         tree res = generic_simplify_393 (loc, type, _p0, _p1, captures, GT_EXPR);
    8745     10726838 :         if (res) return res;
    8746              :       }
    8747              :     }
    8748     15358429 :   switch (TREE_CODE (_p0))
    8749              :     {
    8750      1092703 :     CASE_CONVERT:
    8751      1092703 :       {
    8752      1092703 :         tree _q20 = TREE_OPERAND (_p0, 0);
    8753      1092703 :         switch (TREE_CODE (_q20))
    8754              :           {
    8755            1 :           case NE_EXPR:
    8756            1 :             {
    8757            1 :               tree _q30 = TREE_OPERAND (_q20, 0);
    8758            1 :               tree _q31 = TREE_OPERAND (_q20, 1);
    8759            1 :               if (integer_zerop (_q31))
    8760              :                 {
    8761            1 :                   if ((_p1 == _q30 && ! TREE_SIDE_EFFECTS (_p1)) || (operand_equal_p (_p1, _q30, 0) && types_match (_p1, _q30)))
    8762              :                     {
    8763            1 :                       {
    8764            1 :                         tree captures[1] ATTRIBUTE_UNUSED = { _q30 };
    8765            1 :                         if (TYPE_UNSIGNED (TREE_TYPE (captures[0]))
    8766              : )
    8767              :                           {
    8768            1 :                             if (TREE_SIDE_EFFECTS (_p0)) goto next_after_fail1637;
    8769            1 :                             if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1637;
    8770            1 :                             {
    8771            1 :                               tree _r;
    8772            1 :                               _r =  constant_boolean_node (false, type);
    8773            1 :                               if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 999, __FILE__, __LINE__, true);
    8774            1 :                               return _r;
    8775              :                             }
    8776              : next_after_fail1637:;
    8777              :                           }
    8778              :                       }
    8779              :                     }
    8780              :                 }
    8781              :               break;
    8782              :             }
    8783        50251 :           case PLUS_EXPR:
    8784        50251 :             {
    8785        50251 :               tree _q30 = TREE_OPERAND (_q20, 0);
    8786        50251 :               tree _q31 = TREE_OPERAND (_q20, 1);
    8787        50251 :               switch (TREE_CODE (_q30))
    8788              :                 {
    8789        34026 :                 CASE_CONVERT:
    8790        34026 :                   {
    8791        34026 :                     tree _q40 = TREE_OPERAND (_q30, 0);
    8792        34026 :                     switch (TREE_CODE (_q31))
    8793              :                       {
    8794        34022 :                       case INTEGER_CST:
    8795        34022 :                         {
    8796        34022 :                           if ((_p1 == _q40 && ! TREE_SIDE_EFFECTS (_p1)) || (operand_equal_p (_p1, _q40, 0) && types_match (_p1, _q40)))
    8797              :                             {
    8798            2 :                               {
    8799            2 :                                 tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q20, _q30, _q40, _q31 };
    8800            2 :                                 tree res = generic_simplify_394 (loc, type, _p0, _p1, captures, GT_EXPR, LE_EXPR);
    8801            2 :                                 if (res) return res;
    8802              :                               }
    8803              :                             }
    8804              :                           break;
    8805              :                         }
    8806              :                       default:;
    8807              :                       }
    8808              :                     break;
    8809              :                   }
    8810              :                 default:;
    8811              :                 }
    8812              :               break;
    8813              :             }
    8814              :           default:;
    8815              :           }
    8816              :         break;
    8817              :       }
    8818     15358426 :     default:;
    8819              :     }
    8820     15358426 :   switch (TREE_CODE (_p1))
    8821              :     {
    8822       616283 :     CASE_CONVERT:
    8823       616283 :       {
    8824       616283 :         tree _q30 = TREE_OPERAND (_p1, 0);
    8825       616283 :         switch (TREE_CODE (_q30))
    8826              :           {
    8827         3343 :           case PLUS_EXPR:
    8828         3343 :             {
    8829         3343 :               tree _q40 = TREE_OPERAND (_q30, 0);
    8830         3343 :               tree _q41 = TREE_OPERAND (_q30, 1);
    8831         3343 :               switch (TREE_CODE (_q40))
    8832              :                 {
    8833         3284 :                 CASE_CONVERT:
    8834         3284 :                   {
    8835         3284 :                     tree _q50 = TREE_OPERAND (_q40, 0);
    8836         3284 :                     if ((_q50 == _p0 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _p0, 0) && types_match (_q50, _p0)))
    8837              :                       {
    8838            0 :                         switch (TREE_CODE (_q41))
    8839              :                           {
    8840            0 :                           case INTEGER_CST:
    8841            0 :                             {
    8842            0 :                               {
    8843            0 :                                 tree captures[5] ATTRIBUTE_UNUSED = { _p1, _q30, _q40, _p0, _q41 };
    8844            0 :                                 tree res = generic_simplify_394 (loc, type, _p0, _p1, captures, LT_EXPR, GT_EXPR);
    8845            0 :                                 if (res) return res;
    8846              :                               }
    8847            0 :                               break;
    8848              :                             }
    8849              :                           default:;
    8850              :                           }
    8851              :                       }
    8852              :                     break;
    8853              :                   }
    8854              :                 default:;
    8855              :                 }
    8856              :               break;
    8857              :             }
    8858              :           default:;
    8859              :           }
    8860              :         break;
    8861              :       }
    8862       111419 :     case PLUS_EXPR:
    8863       111419 :       {
    8864       111419 :         tree _q30 = TREE_OPERAND (_p1, 0);
    8865       111419 :         tree _q31 = TREE_OPERAND (_p1, 1);
    8866       111419 :         if ((_q30 == _p0 && ! TREE_SIDE_EFFECTS (_q30)) || (operand_equal_p (_q30, _p0, 0) && types_match (_q30, _p0)))
    8867              :           {
    8868            4 :             switch (TREE_CODE (_q31))
    8869              :               {
    8870            4 :               case INTEGER_CST:
    8871            4 :                 {
    8872            4 :                   {
    8873            4 :                     tree captures[5] ATTRIBUTE_UNUSED = { _p1, _p1, _q30, _p0, _q31 };
    8874            4 :                     tree res = generic_simplify_389 (loc, type, _p0, _p1, captures, LT_EXPR, GT_EXPR);
    8875            4 :                     if (res) return res;
    8876              :                   }
    8877            0 :                   break;
    8878              :                 }
    8879              :               default:;
    8880              :               }
    8881              :           }
    8882              :         break;
    8883              :       }
    8884     15358422 :     default:;
    8885              :     }
    8886     15358422 :   switch (TREE_CODE (_p0))
    8887              :     {
    8888       655209 :     case MINUS_EXPR:
    8889       655209 :       {
    8890       655209 :         tree _q20 = TREE_OPERAND (_p0, 0);
    8891       655209 :         tree _q21 = TREE_OPERAND (_p0, 1);
    8892       655209 :         if ((_p1 == _q20 && ! TREE_SIDE_EFFECTS (_p1)) || (operand_equal_p (_p1, _q20, 0) && types_match (_p1, _q20)))
    8893              :           {
    8894         7609 :             {
    8895         7609 :               tree captures[3] ATTRIBUTE_UNUSED = { _p0, _q20, _q21 };
    8896         7609 :               tree res = generic_simplify_395 (loc, type, _p0, _p1, captures, GT_EXPR);
    8897         7609 :               if (res) return res;
    8898              :             }
    8899              :           }
    8900              :         break;
    8901              :       }
    8902     15350825 :     default:;
    8903              :     }
    8904     15350825 :   switch (TREE_CODE (_p1))
    8905              :     {
    8906       111415 :     case PLUS_EXPR:
    8907       111415 :       {
    8908       111415 :         tree _q30 = TREE_OPERAND (_p1, 0);
    8909       111415 :         tree _q31 = TREE_OPERAND (_p1, 1);
    8910       111415 :         switch (TREE_CODE (_q30))
    8911              :           {
    8912            3 :           case MINUS_EXPR:
    8913            3 :             {
    8914            3 :               tree _q40 = TREE_OPERAND (_q30, 0);
    8915            3 :               tree _q41 = TREE_OPERAND (_q30, 1);
    8916            3 :               if ((_q40 == _p0 && ! TREE_SIDE_EFFECTS (_q40)) || (operand_equal_p (_q40, _p0, 0) && types_match (_q40, _p0)))
    8917              :                 {
    8918            0 :                   if (integer_minus_onep (_q31))
    8919              :                     {
    8920            0 :                       {
    8921            0 :                         tree captures[2] ATTRIBUTE_UNUSED = { _p0, _q41 };
    8922            0 :                         tree res = generic_simplify_407 (loc, type, _p0, _p1, captures, LT_EXPR);
    8923            0 :                         if (res) return res;
    8924              :                       }
    8925              :                     }
    8926              :                 }
    8927              :               break;
    8928              :             }
    8929              :           default:;
    8930              :           }
    8931              :         break;
    8932              :       }
    8933     15350825 :     default:;
    8934              :     }
    8935     15350825 :   switch (TREE_CODE (_p0))
    8936              :     {
    8937           83 :     case REALPART_EXPR:
    8938           83 :       {
    8939           83 :         tree _q20 = TREE_OPERAND (_p0, 0);
    8940           83 :         switch (TREE_CODE (_q20))
    8941              :           {
    8942            0 :           case CALL_EXPR:
    8943            0 :             switch (get_call_combined_fn (_q20))
    8944              :               {
    8945            0 :               case CFN_SUB_OVERFLOW:
    8946            0 :                 if (call_expr_nargs (_q20) == 2)
    8947              :     {
    8948            0 :                     tree _q30 = CALL_EXPR_ARG (_q20, 0);
    8949            0 :                     tree _q31 = CALL_EXPR_ARG (_q20, 1);
    8950            0 :                     if ((_p1 == _q30 && ! TREE_SIDE_EFFECTS (_p1)) || (operand_equal_p (_p1, _q30, 0) && types_match (_p1, _q30)))
    8951              :                       {
    8952            0 :                         {
    8953            0 :                           tree captures[3] ATTRIBUTE_UNUSED = { _q20, _q30, _q31 };
    8954            0 :                           tree res = generic_simplify_408 (loc, type, _p0, _p1, captures, GT_EXPR, NE_EXPR);
    8955            0 :                           if (res) return res;
    8956              :                         }
    8957              :                       }
    8958              :                   }
    8959              :                 break;
    8960              :               default:;
    8961              :               }
    8962              :             break;
    8963              :           default:;
    8964              :           }
    8965              :         break;
    8966              :       }
    8967     15350825 :     default:;
    8968              :     }
    8969     15350825 :   switch (TREE_CODE (_p1))
    8970              :     {
    8971           20 :     case REALPART_EXPR:
    8972           20 :       {
    8973           20 :         tree _q30 = TREE_OPERAND (_p1, 0);
    8974           20 :         switch (TREE_CODE (_q30))
    8975              :           {
    8976            0 :           case CALL_EXPR:
    8977            0 :             switch (get_call_combined_fn (_q30))
    8978              :               {
    8979            0 :               case CFN_ADD_OVERFLOW:
    8980            0 :                 if (call_expr_nargs (_q30) == 2)
    8981              :     {
    8982            0 :                     tree _q40 = CALL_EXPR_ARG (_q30, 0);
    8983            0 :                     tree _q41 = CALL_EXPR_ARG (_q30, 1);
    8984            0 :                     if ((_q40 == _p0 && ! TREE_SIDE_EFFECTS (_q40)) || (operand_equal_p (_q40, _p0, 0) && types_match (_q40, _p0)))
    8985              :                       {
    8986            0 :                         {
    8987            0 :                           tree captures[3] ATTRIBUTE_UNUSED = { _q30, _p0, _q41 };
    8988            0 :                           tree res = generic_simplify_409 (loc, type, _p0, _p1, captures, LT_EXPR, NE_EXPR);
    8989            0 :                           if (res) return res;
    8990              :                         }
    8991              :                       }
    8992            0 :                     if ((_q41 == _p0 && ! TREE_SIDE_EFFECTS (_q41)) || (operand_equal_p (_q41, _p0, 0) && types_match (_q41, _p0)))
    8993              :                       {
    8994            0 :                         {
    8995            0 :                           tree captures[3] ATTRIBUTE_UNUSED = { _q30, _p0, _q40 };
    8996            0 :                           tree res = generic_simplify_409 (loc, type, _p0, _p1, captures, LT_EXPR, NE_EXPR);
    8997            0 :                           if (res) return res;
    8998              :                         }
    8999              :                       }
    9000              :                   }
    9001              :                 break;
    9002              :               default:;
    9003              :               }
    9004              :             break;
    9005              :           default:;
    9006              :           }
    9007              :         break;
    9008              :       }
    9009         1088 :     case TRUNC_DIV_EXPR:
    9010         1088 :       {
    9011         1088 :         tree _q30 = TREE_OPERAND (_p1, 0);
    9012         1088 :         tree _q31 = TREE_OPERAND (_p1, 1);
    9013         1088 :         if (integer_all_onesp (_q30))
    9014              :           {
    9015            0 :             {
    9016            0 :               tree captures[3] ATTRIBUTE_UNUSED = { _p1, _q31, _p0 };
    9017            0 :               tree res = generic_simplify_410 (loc, type, _p0, _p1, captures, LT_EXPR, NE_EXPR);
    9018            0 :               if (res) return res;
    9019              :             }
    9020              :           }
    9021              :         break;
    9022              :       }
    9023     15350825 :     default:;
    9024              :     }
    9025     15350825 :   switch (TREE_CODE (_p0))
    9026              :     {
    9027       168659 :     case MULT_EXPR:
    9028       168659 :       {
    9029       168659 :         tree _q20 = TREE_OPERAND (_p0, 0);
    9030       168659 :         tree _q21 = TREE_OPERAND (_p0, 1);
    9031       168659 :         switch (TREE_CODE (_q21))
    9032              :           {
    9033        22190 :           case REAL_CST:
    9034        22190 :             {
    9035        22190 :               switch (TREE_CODE (_p1))
    9036              :                 {
    9037           58 :                 case REAL_CST:
    9038           58 :                   {
    9039           58 :                     {
    9040           58 :                       tree captures[3] ATTRIBUTE_UNUSED = { _q20, _q21, _p1 };
    9041           58 :                       tree res = generic_simplify_400 (loc, type, _p0, _p1, captures, GT_EXPR, LT_EXPR);
    9042           58 :                       if (res) return res;
    9043              :                     }
    9044           57 :                     break;
    9045              :                   }
    9046              :                 default:;
    9047              :                 }
    9048              :               break;
    9049              :             }
    9050              :           default:;
    9051              :           }
    9052              :         break;
    9053              :       }
    9054      1977638 :     case PLUS_EXPR:
    9055      1977638 :       {
    9056      1977638 :         tree _q20 = TREE_OPERAND (_p0, 0);
    9057      1977638 :         tree _q21 = TREE_OPERAND (_p0, 1);
    9058      1977638 :         switch (TREE_CODE (_q21))
    9059              :           {
    9060      1806192 :           case INTEGER_CST:
    9061      1806192 :             {
    9062      1806192 :               switch (TREE_CODE (_p1))
    9063              :                 {
    9064      1258331 :                 case INTEGER_CST:
    9065      1258331 :                   {
    9066      1258331 :                     {
    9067      1258331 :                       tree captures[4] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1 };
    9068      1258331 :                       tree res = generic_simplify_401 (loc, type, _p0, _p1, captures, PLUS_EXPR, MINUS_EXPR, GT_EXPR, LT_EXPR);
    9069      1258331 :                       if (res) return res;
    9070              :                     }
    9071       821521 :                     break;
    9072              :                   }
    9073              :                 default:;
    9074              :                 }
    9075              :               break;
    9076              :             }
    9077              :           default:;
    9078              :           }
    9079              :         break;
    9080              :       }
    9081       647612 :     case MINUS_EXPR:
    9082       647612 :       {
    9083       647612 :         tree _q20 = TREE_OPERAND (_p0, 0);
    9084       647612 :         tree _q21 = TREE_OPERAND (_p0, 1);
    9085       647612 :         switch (TREE_CODE (_q21))
    9086              :           {
    9087         2226 :           case INTEGER_CST:
    9088         2226 :             {
    9089         2226 :               switch (TREE_CODE (_p1))
    9090              :                 {
    9091         2078 :                 case INTEGER_CST:
    9092         2078 :                   {
    9093         2078 :                     {
    9094         2078 :                       tree captures[4] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1 };
    9095         2078 :                       tree res = generic_simplify_401 (loc, type, _p0, _p1, captures, MINUS_EXPR, PLUS_EXPR, GT_EXPR, LT_EXPR);
    9096         2078 :                       if (res) return res;
    9097              :                     }
    9098         1920 :                     break;
    9099              :                   }
    9100              :                 default:;
    9101              :                 }
    9102              :               break;
    9103              :             }
    9104       647454 :           default:;
    9105              :           }
    9106       647454 :         switch (TREE_CODE (_q20))
    9107              :           {
    9108       553680 :           case INTEGER_CST:
    9109       553680 :             {
    9110       553680 :               switch (TREE_CODE (_p1))
    9111              :                 {
    9112       550867 :                 case INTEGER_CST:
    9113       550867 :                   {
    9114       550867 :                     {
    9115       550867 :                       tree captures[3] ATTRIBUTE_UNUSED = { _q20, _q21, _p1 };
    9116       550867 :                       tree res = generic_simplify_291 (loc, type, _p0, _p1, captures, GT_EXPR, LT_EXPR);
    9117       550867 :                       if (res) return res;
    9118              :                     }
    9119            0 :                     break;
    9120              :                   }
    9121              :                 default:;
    9122              :                 }
    9123              :               break;
    9124              :             }
    9125              :           default:;
    9126              :           }
    9127              :         break;
    9128              :       }
    9129       270679 :     case CALL_EXPR:
    9130       270679 :       switch (get_call_combined_fn (_p0))
    9131              :         {
    9132            4 :         case CFN_BUILT_IN_CTZ:
    9133            4 :           if (call_expr_nargs (_p0) == 1)
    9134              :     {
    9135            4 :               tree _q20 = CALL_EXPR_ARG (_p0, 0);
    9136            4 :               switch (TREE_CODE (_p1))
    9137              :                 {
    9138            4 :                 case INTEGER_CST:
    9139            4 :                   {
    9140            4 :                     {
    9141            4 :                       tree captures[3] ATTRIBUTE_UNUSED = { _p0, _q20, _p1 };
    9142            4 :                       tree res = generic_simplify_402 (loc, type, _p0, _p1, captures, GT_EXPR, EQ_EXPR, CFN_BUILT_IN_CTZ);
    9143            4 :                       if (res) return res;
    9144              :                     }
    9145            0 :                     break;
    9146              :                   }
    9147              :                 default:;
    9148              :                 }
    9149              :             }
    9150              :           break;
    9151           12 :         case CFN_BUILT_IN_FFS:
    9152           12 :           if (call_expr_nargs (_p0) == 1)
    9153              :     {
    9154           12 :               tree _q20 = CALL_EXPR_ARG (_p0, 0);
    9155           12 :               switch (TREE_CODE (_p1))
    9156              :                 {
    9157           12 :                 case INTEGER_CST:
    9158           12 :                   {
    9159           12 :                     {
    9160           12 :                       tree captures[3] ATTRIBUTE_UNUSED = { _p0, _q20, _p1 };
    9161           12 :                       tree res = generic_simplify_413 (loc, type, _p0, _p1, captures, GT_EXPR, NE_EXPR, EQ_EXPR, BIT_AND_EXPR, CFN_BUILT_IN_FFS);
    9162           12 :                       if (res) return res;
    9163              :                     }
    9164            6 :                     break;
    9165              :                   }
    9166              :                 default:;
    9167              :                 }
    9168              :             }
    9169              :           break;
    9170            0 :         case CFN_BUILT_IN_FFSIMAX:
    9171            0 :           if (call_expr_nargs (_p0) == 1)
    9172              :     {
    9173            0 :               tree _q20 = CALL_EXPR_ARG (_p0, 0);
    9174            0 :               switch (TREE_CODE (_p1))
    9175              :                 {
    9176            0 :                 case INTEGER_CST:
    9177            0 :                   {
    9178            0 :                     {
    9179            0 :                       tree captures[3] ATTRIBUTE_UNUSED = { _p0, _q20, _p1 };
    9180            0 :                       tree res = generic_simplify_413 (loc, type, _p0, _p1, captures, GT_EXPR, NE_EXPR, EQ_EXPR, BIT_AND_EXPR, CFN_BUILT_IN_FFSIMAX);
    9181            0 :                       if (res) return res;
    9182              :                     }
    9183            0 :                     break;
    9184              :                   }
    9185              :                 default:;
    9186              :                 }
    9187              :             }
    9188              :           break;
    9189           75 :         case CFN_BUILT_IN_POPCOUNT:
    9190           75 :           if (call_expr_nargs (_p0) == 1)
    9191              :     {
    9192           75 :               tree _q20 = CALL_EXPR_ARG (_p0, 0);
    9193           75 :               if (integer_zerop (_p1))
    9194              :                 {
    9195           36 :                   {
    9196           36 :                     tree captures[1] ATTRIBUTE_UNUSED = { _q20 };
    9197           36 :                     tree res = generic_simplify_296 (loc, type, _p0, _p1, captures, GT_EXPR, NE_EXPR, CFN_BUILT_IN_POPCOUNT);
    9198           36 :                     if (res) return res;
    9199              :                   }
    9200              :                 }
    9201              :             }
    9202              :           break;
    9203            2 :         case CFN_BUILT_IN_CTZL:
    9204            2 :           if (call_expr_nargs (_p0) == 1)
    9205              :     {
    9206            2 :               tree _q20 = CALL_EXPR_ARG (_p0, 0);
    9207            2 :               switch (TREE_CODE (_p1))
    9208              :                 {
    9209            2 :                 case INTEGER_CST:
    9210            2 :                   {
    9211            2 :                     {
    9212            2 :                       tree captures[3] ATTRIBUTE_UNUSED = { _p0, _q20, _p1 };
    9213            2 :                       tree res = generic_simplify_402 (loc, type, _p0, _p1, captures, GT_EXPR, EQ_EXPR, CFN_BUILT_IN_CTZL);
    9214            2 :                       if (res) return res;
    9215              :                     }
    9216            0 :                     break;
    9217              :                   }
    9218              :                 default:;
    9219              :                 }
    9220              :             }
    9221              :           break;
    9222            8 :         case CFN_BUILT_IN_FFSL:
    9223            8 :           if (call_expr_nargs (_p0) == 1)
    9224              :     {
    9225            8 :               tree _q20 = CALL_EXPR_ARG (_p0, 0);
    9226            8 :               switch (TREE_CODE (_p1))
    9227              :                 {
    9228            8 :                 case INTEGER_CST:
    9229            8 :                   {
    9230            8 :                     {
    9231            8 :                       tree captures[3] ATTRIBUTE_UNUSED = { _p0, _q20, _p1 };
    9232            8 :                       tree res = generic_simplify_413 (loc, type, _p0, _p1, captures, GT_EXPR, NE_EXPR, EQ_EXPR, BIT_AND_EXPR, CFN_BUILT_IN_FFSL);
    9233            8 :                       if (res) return res;
    9234              :                     }
    9235            4 :                     break;
    9236              :                   }
    9237              :                 default:;
    9238              :                 }
    9239              :             }
    9240              :           break;
    9241            3 :         case CFN_BUILT_IN_POPCOUNTLL:
    9242            3 :           if (call_expr_nargs (_p0) == 1)
    9243              :     {
    9244            3 :               tree _q20 = CALL_EXPR_ARG (_p0, 0);
    9245            3 :               if (integer_zerop (_p1))
    9246              :                 {
    9247            0 :                   {
    9248            0 :                     tree captures[1] ATTRIBUTE_UNUSED = { _q20 };
    9249            0 :                     tree res = generic_simplify_296 (loc, type, _p0, _p1, captures, GT_EXPR, NE_EXPR, CFN_BUILT_IN_POPCOUNTLL);
    9250            0 :                     if (res) return res;
    9251              :                   }
    9252              :                 }
    9253              :             }
    9254              :           break;
    9255            0 :         case CFN_BUILT_IN_CTZIMAX:
    9256            0 :           if (call_expr_nargs (_p0) == 1)
    9257              :     {
    9258            0 :               tree _q20 = CALL_EXPR_ARG (_p0, 0);
    9259            0 :               switch (TREE_CODE (_p1))
    9260              :                 {
    9261            0 :                 case INTEGER_CST:
    9262            0 :                   {
    9263            0 :                     {
    9264            0 :                       tree captures[3] ATTRIBUTE_UNUSED = { _p0, _q20, _p1 };
    9265            0 :                       tree res = generic_simplify_402 (loc, type, _p0, _p1, captures, GT_EXPR, EQ_EXPR, CFN_BUILT_IN_CTZIMAX);
    9266            0 :                       if (res) return res;
    9267              :                     }
    9268            0 :                     break;
    9269              :                   }
    9270              :                 default:;
    9271              :                 }
    9272              :             }
    9273              :           break;
    9274            0 :         case CFN_POPCOUNT:
    9275            0 :           if (call_expr_nargs (_p0) == 1)
    9276              :     {
    9277            0 :               tree _q20 = CALL_EXPR_ARG (_p0, 0);
    9278            0 :               if (integer_zerop (_p1))
    9279              :                 {
    9280            0 :                   {
    9281            0 :                     tree captures[1] ATTRIBUTE_UNUSED = { _q20 };
    9282            0 :                     tree res = generic_simplify_296 (loc, type, _p0, _p1, captures, GT_EXPR, NE_EXPR, CFN_POPCOUNT);
    9283            0 :                     if (res) return res;
    9284              :                   }
    9285              :                 }
    9286              :             }
    9287              :           break;
    9288            0 :         case CFN_CTZ:
    9289            0 :           if (call_expr_nargs (_p0) == 2)
    9290              :     {
    9291            0 :               tree _q20 = CALL_EXPR_ARG (_p0, 0);
    9292            0 :               tree _q21 = CALL_EXPR_ARG (_p0, 1);
    9293            0 :               switch (TREE_CODE (_p1))
    9294              :                 {
    9295            0 :                 case INTEGER_CST:
    9296            0 :                   {
    9297            0 :                     {
    9298            0 :                       tree captures[4] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1 };
    9299            0 :                       tree res = generic_simplify_403 (loc, type, _p0, _p1, captures, GT_EXPR, EQ_EXPR);
    9300            0 :                       if (res) return res;
    9301              :                     }
    9302            0 :                     break;
    9303              :                   }
    9304              :                 default:;
    9305              :                 }
    9306              :             }
    9307            0 :           if (call_expr_nargs (_p0) == 1)
    9308              :     {
    9309            0 :               tree _q20 = CALL_EXPR_ARG (_p0, 0);
    9310            0 :               switch (TREE_CODE (_p1))
    9311              :                 {
    9312            0 :                 case INTEGER_CST:
    9313            0 :                   {
    9314            0 :                     {
    9315            0 :                       tree captures[3] ATTRIBUTE_UNUSED = { _p0, _q20, _p1 };
    9316            0 :                       tree res = generic_simplify_402 (loc, type, _p0, _p1, captures, GT_EXPR, EQ_EXPR, CFN_CTZ);
    9317            0 :                       if (res) return res;
    9318              :                     }
    9319            0 :                     break;
    9320              :                   }
    9321              :                 default:;
    9322              :                 }
    9323              :             }
    9324              :           break;
    9325            0 :         case CFN_FFS:
    9326            0 :           if (call_expr_nargs (_p0) == 1)
    9327              :     {
    9328            0 :               tree _q20 = CALL_EXPR_ARG (_p0, 0);
    9329            0 :               switch (TREE_CODE (_p1))
    9330              :                 {
    9331            0 :                 case INTEGER_CST:
    9332            0 :                   {
    9333            0 :                     {
    9334            0 :                       tree captures[3] ATTRIBUTE_UNUSED = { _p0, _q20, _p1 };
    9335            0 :                       tree res = generic_simplify_413 (loc, type, _p0, _p1, captures, GT_EXPR, NE_EXPR, EQ_EXPR, BIT_AND_EXPR, CFN_FFS);
    9336            0 :                       if (res) return res;
    9337              :                     }
    9338            0 :                     break;
    9339              :                   }
    9340              :                 default:;
    9341              :                 }
    9342              :             }
    9343              :           break;
    9344            0 :         case CFN_BUILT_IN_POPCOUNTIMAX:
    9345            0 :           if (call_expr_nargs (_p0) == 1)
    9346              :     {
    9347            0 :               tree _q20 = CALL_EXPR_ARG (_p0, 0);
    9348            0 :               if (integer_zerop (_p1))
    9349              :                 {
    9350            0 :                   {
    9351            0 :                     tree captures[1] ATTRIBUTE_UNUSED = { _q20 };
    9352            0 :                     tree res = generic_simplify_296 (loc, type, _p0, _p1, captures, GT_EXPR, NE_EXPR, CFN_BUILT_IN_POPCOUNTIMAX);
    9353            0 :                     if (res) return res;
    9354              :                   }
    9355              :                 }
    9356              :             }
    9357              :           break;
    9358            3 :         case CFN_BUILT_IN_POPCOUNTL:
    9359            3 :           if (call_expr_nargs (_p0) == 1)
    9360              :     {
    9361            3 :               tree _q20 = CALL_EXPR_ARG (_p0, 0);
    9362            3 :               if (integer_zerop (_p1))
    9363              :                 {
    9364            0 :                   {
    9365            0 :                     tree captures[1] ATTRIBUTE_UNUSED = { _q20 };
    9366            0 :                     tree res = generic_simplify_296 (loc, type, _p0, _p1, captures, GT_EXPR, NE_EXPR, CFN_BUILT_IN_POPCOUNTL);
    9367            0 :                     if (res) return res;
    9368              :                   }
    9369              :                 }
    9370              :             }
    9371              :           break;
    9372           18 :         case CFN_BUILT_IN_CTZLL:
    9373           18 :           if (call_expr_nargs (_p0) == 1)
    9374              :     {
    9375           18 :               tree _q20 = CALL_EXPR_ARG (_p0, 0);
    9376           18 :               switch (TREE_CODE (_p1))
    9377              :                 {
    9378           18 :                 case INTEGER_CST:
    9379           18 :                   {
    9380           18 :                     {
    9381           18 :                       tree captures[3] ATTRIBUTE_UNUSED = { _p0, _q20, _p1 };
    9382           18 :                       tree res = generic_simplify_402 (loc, type, _p0, _p1, captures, GT_EXPR, EQ_EXPR, CFN_BUILT_IN_CTZLL);
    9383           18 :                       if (res) return res;
    9384              :                     }
    9385           16 :                     break;
    9386              :                   }
    9387              :                 default:;
    9388              :                 }
    9389              :             }
    9390              :           break;
    9391            9 :         case CFN_BUILT_IN_FFSLL:
    9392            9 :           if (call_expr_nargs (_p0) == 1)
    9393              :     {
    9394            9 :               tree _q20 = CALL_EXPR_ARG (_p0, 0);
    9395            9 :               switch (TREE_CODE (_p1))
    9396              :                 {
    9397            9 :                 case INTEGER_CST:
    9398            9 :                   {
    9399            9 :                     {
    9400            9 :                       tree captures[3] ATTRIBUTE_UNUSED = { _p0, _q20, _p1 };
    9401            9 :                       tree res = generic_simplify_413 (loc, type, _p0, _p1, captures, GT_EXPR, NE_EXPR, EQ_EXPR, BIT_AND_EXPR, CFN_BUILT_IN_FFSLL);
    9402            9 :                       if (res) return res;
    9403              :                     }
    9404            4 :                     break;
    9405              :                   }
    9406              :                 default:;
    9407              :                 }
    9408              :             }
    9409              :           break;
    9410              :         default:;
    9411              :         }
    9412              :       break;
    9413              :     default:;
    9414              :     }
    9415              :   return NULL_TREE;
    9416              : }
    9417              : 
    9418              : tree
    9419      6743155 : generic_simplify_BIT_AND_EXPR (location_t ARG_UNUSED (loc), enum tree_code ARG_UNUSED (code), const tree ARG_UNUSED (type), tree _p0, tree _p1)
    9420              : {
    9421      6743155 :   const bool debug_dump = dump_file && (dump_flags & TDF_FOLDING);
    9422      6743155 :   switch (TREE_CODE (_p0))
    9423              :     {
    9424        34972 :     case LSHIFT_EXPR:
    9425        34972 :       {
    9426        34972 :         tree _q20 = TREE_OPERAND (_p0, 0);
    9427        34972 :         tree _q21 = TREE_OPERAND (_p0, 1);
    9428        34972 :         switch (TREE_CODE (_p1))
    9429              :           {
    9430            1 :           case LSHIFT_EXPR:
    9431            1 :             {
    9432            1 :               tree _q50 = TREE_OPERAND (_p1, 0);
    9433            1 :               tree _q51 = TREE_OPERAND (_p1, 1);
    9434            1 :               if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
    9435              :                 {
    9436            1 :                   {
    9437            1 :                     tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q50 };
    9438            1 :                     tree res = generic_simplify_3 (loc, type, _p0, _p1, captures, BIT_AND_EXPR);
    9439            1 :                     if (res) return res;
    9440              :                   }
    9441              :                 }
    9442              :               break;
    9443              :             }
    9444              :           default:;
    9445              :           }
    9446              :         break;
    9447              :       }
    9448        80962 :     case RSHIFT_EXPR:
    9449        80962 :       {
    9450        80962 :         tree _q20 = TREE_OPERAND (_p0, 0);
    9451        80962 :         tree _q21 = TREE_OPERAND (_p0, 1);
    9452        80962 :         switch (TREE_CODE (_p1))
    9453              :           {
    9454            2 :           case RSHIFT_EXPR:
    9455            2 :             {
    9456            2 :               tree _q50 = TREE_OPERAND (_p1, 0);
    9457            2 :               tree _q51 = TREE_OPERAND (_p1, 1);
    9458            2 :               if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
    9459              :                 {
    9460            2 :                   {
    9461            2 :                     tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q50 };
    9462            2 :                     tree res = generic_simplify_4 (loc, type, _p0, _p1, captures, BIT_AND_EXPR);
    9463            2 :                     if (res) return res;
    9464              :                   }
    9465              :                 }
    9466              :               break;
    9467              :             }
    9468              :           default:;
    9469              :           }
    9470              :         break;
    9471              :       }
    9472      2004049 :     CASE_CONVERT:
    9473      2004049 :       {
    9474      2004049 :         tree _q20 = TREE_OPERAND (_p0, 0);
    9475      2004049 :         switch (TREE_CODE (_p1))
    9476              :           {
    9477       805343 :           CASE_CONVERT:
    9478       805343 :             {
    9479       805343 :               tree _q40 = TREE_OPERAND (_p1, 0);
    9480       805343 :               {
    9481       805343 :                 tree _q40_pops[1];
    9482       805343 :                 if (tree_maybe_bit_not (_q40, _q40_pops))
    9483              :                   {
    9484          250 :                     tree _q50 = _q40_pops[0];
    9485          250 :                     {
    9486          250 :                       tree captures[2] ATTRIBUTE_UNUSED = { _q20, _q50 };
    9487          250 :                       tree res = generic_simplify_448 (loc, type, _p0, _p1, captures);
    9488          250 :                       if (res) return res;
    9489              :                     }
    9490              :                   }
    9491              :               }
    9492       805343 :               break;
    9493              :             }
    9494      2004049 :           default:;
    9495              :           }
    9496      2004049 :         {
    9497      2004049 :           tree _q20_pops[1];
    9498      2004049 :           if (tree_maybe_bit_not (_q20, _q20_pops))
    9499              :             {
    9500          427 :               tree _q30 = _q20_pops[0];
    9501          427 :               switch (TREE_CODE (_p1))
    9502              :                 {
    9503          254 :                 CASE_CONVERT:
    9504          254 :                   {
    9505          254 :                     tree _q50 = TREE_OPERAND (_p1, 0);
    9506          254 :                     {
    9507          254 :                       tree captures[2] ATTRIBUTE_UNUSED = { _q50, _q30 };
    9508          254 :                       tree res = generic_simplify_448 (loc, type, _p0, _p1, captures);
    9509          254 :                       if (res) return res;
    9510              :                     }
    9511          254 :                     break;
    9512              :                   }
    9513              :                 default:;
    9514              :                 }
    9515              :             }
    9516              :         }
    9517      2004049 :         break;
    9518              :       }
    9519      6743152 :     default:;
    9520              :     }
    9521      6743152 :   {
    9522      6743152 :     tree _p1_pops[1];
    9523      6743152 :     if (tree_maybe_bit_not (_p1, _p1_pops))
    9524              :       {
    9525      4803049 :         tree _q30 = _p1_pops[0];
    9526      4803049 :         {
    9527      4803049 :           tree captures[2] ATTRIBUTE_UNUSED = { _p0, _q30 };
    9528      4803049 :           tree res = generic_simplify_448 (loc, type, _p0, _p1, captures);
    9529      4803049 :           if (res) return res;
    9530              :         }
    9531              :       }
    9532              :   }
    9533      6743136 :   {
    9534      6743136 :     tree _p0_pops[1];
    9535      6743136 :     if (tree_maybe_bit_not (_p0, _p0_pops))
    9536              :       {
    9537        70796 :         tree _q20 = _p0_pops[0];
    9538        70796 :         {
    9539        70796 :           tree captures[2] ATTRIBUTE_UNUSED = { _p1, _q20 };
    9540        70796 :           tree res = generic_simplify_448 (loc, type, _p0, _p1, captures);
    9541        70796 :           if (res) return res;
    9542              :         }
    9543              :       }
    9544              :   }
    9545      6743037 :   switch (TREE_CODE (_p1))
    9546              :     {
    9547        21308 :     case PLUS_EXPR:
    9548        21308 :       {
    9549        21308 :         tree _q30 = TREE_OPERAND (_p1, 0);
    9550        21308 :         tree _q31 = TREE_OPERAND (_p1, 1);
    9551        21308 :         switch (TREE_CODE (_q30))
    9552              :           {
    9553          163 :           case LSHIFT_EXPR:
    9554          163 :             {
    9555          163 :               tree _q40 = TREE_OPERAND (_q30, 0);
    9556          163 :               tree _q41 = TREE_OPERAND (_q30, 1);
    9557          163 :               if (integer_onep (_q40))
    9558              :                 {
    9559          163 :                   if (integer_minus_onep (_q31))
    9560              :                     {
    9561          163 :                       {
    9562          163 :                         tree captures[4] ATTRIBUTE_UNUSED = { _p0, _p1, _q30, _q41 };
    9563          163 :                         if (TYPE_UNSIGNED (type)
    9564              : )
    9565              :                           {
    9566          163 :                             if (TREE_SIDE_EFFECTS (_p1)) goto next_after_fail1670;
    9567          163 :                             if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1670;
    9568          163 :                             {
    9569          163 :                               tree res_op0;
    9570          163 :                               res_op0 = captures[0];
    9571          163 :                               tree res_op1;
    9572          163 :                               {
    9573          163 :                                 tree _o1[1], _r1;
    9574          163 :                                 {
    9575          163 :                                   tree _o2[2], _r2;
    9576          163 :                                   _o2[0] =  build_all_ones_cst (type);
    9577          163 :                                   _o2[1] = captures[3];
    9578          163 :                                   _r2 = fold_build2_loc (loc, LSHIFT_EXPR, TREE_TYPE (_o2[0]), _o2[0], _o2[1]);
    9579          163 :                                   _o1[0] = _r2;
    9580              :                                 }
    9581          163 :                                 _r1 = fold_build1_loc (loc, BIT_NOT_EXPR, TREE_TYPE (_o1[0]), _o1[0]);
    9582          163 :                                 res_op1 = _r1;
    9583              :                               }
    9584          163 :                               tree _r;
    9585          163 :                               _r = fold_build2_loc (loc, BIT_AND_EXPR, type, res_op0, res_op1);
    9586          163 :                               if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 1010, __FILE__, __LINE__, true);
    9587          163 :                               return _r;
    9588              :                             }
    9589            0 : next_after_fail1670:;
    9590              :                           }
    9591              :                       }
    9592              :                     }
    9593              :                 }
    9594              :               break;
    9595              :             }
    9596              :           default:;
    9597              :           }
    9598              :         break;
    9599              :       }
    9600      6742874 :     default:;
    9601              :     }
    9602      6742874 :   switch (TREE_CODE (_p0))
    9603              :     {
    9604       295766 :     case PLUS_EXPR:
    9605       295766 :       {
    9606       295766 :         tree _q20 = TREE_OPERAND (_p0, 0);
    9607       295766 :         tree _q21 = TREE_OPERAND (_p0, 1);
    9608       295766 :         switch (TREE_CODE (_q20))
    9609              :           {
    9610          169 :           case LSHIFT_EXPR:
    9611          169 :             {
    9612          169 :               tree _q30 = TREE_OPERAND (_q20, 0);
    9613          169 :               tree _q31 = TREE_OPERAND (_q20, 1);
    9614          169 :               if (integer_onep (_q30))
    9615              :                 {
    9616          162 :                   if (integer_minus_onep (_q21))
    9617              :                     {
    9618          162 :                       {
    9619          162 :                         tree captures[4] ATTRIBUTE_UNUSED = { _p1, _p0, _q20, _q31 };
    9620          162 :                         if (TYPE_UNSIGNED (type)
    9621              : )
    9622              :                           {
    9623          134 :                             if (TREE_SIDE_EFFECTS (_p0)) goto next_after_fail1671;
    9624          134 :                             if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1671;
    9625          134 :                             {
    9626          134 :                               tree res_op0;
    9627          134 :                               res_op0 = captures[0];
    9628          134 :                               tree res_op1;
    9629          134 :                               {
    9630          134 :                                 tree _o1[1], _r1;
    9631          134 :                                 {
    9632          134 :                                   tree _o2[2], _r2;
    9633          134 :                                   _o2[0] =  build_all_ones_cst (type);
    9634          134 :                                   _o2[1] = captures[3];
    9635          134 :                                   _r2 = fold_build2_loc (loc, LSHIFT_EXPR, TREE_TYPE (_o2[0]), _o2[0], _o2[1]);
    9636          134 :                                   _o1[0] = _r2;
    9637              :                                 }
    9638          134 :                                 _r1 = fold_build1_loc (loc, BIT_NOT_EXPR, TREE_TYPE (_o1[0]), _o1[0]);
    9639          134 :                                 res_op1 = _r1;
    9640              :                               }
    9641          134 :                               tree _r;
    9642          134 :                               _r = fold_build2_loc (loc, BIT_AND_EXPR, type, res_op0, res_op1);
    9643          134 :                               if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 1010, __FILE__, __LINE__, true);
    9644          134 :                               return _r;
    9645              :                             }
    9646           28 : next_after_fail1671:;
    9647              :                           }
    9648              :                       }
    9649              :                     }
    9650              :                 }
    9651              :               break;
    9652              :             }
    9653              :           default:;
    9654              :           }
    9655              :         break;
    9656              :       }
    9657         1871 :     case EQ_EXPR:
    9658         1871 :       {
    9659         1871 :         tree _q20 = TREE_OPERAND (_p0, 0);
    9660         1871 :         tree _q21 = TREE_OPERAND (_p0, 1);
    9661         1871 :         if (integer_zerop (_q21))
    9662              :           {
    9663          753 :             switch (TREE_CODE (_p1))
    9664              :               {
    9665           68 :               case EQ_EXPR:
    9666           68 :                 {
    9667           68 :                   tree _q50 = TREE_OPERAND (_p1, 0);
    9668           68 :                   tree _q51 = TREE_OPERAND (_p1, 1);
    9669           68 :                   if (integer_zerop (_q51))
    9670              :                     {
    9671           29 :                       {
    9672           29 :                         tree captures[3] ATTRIBUTE_UNUSED = { _q20, _q21, _q50 };
    9673           29 :                         tree res = generic_simplify_109 (loc, type, _p0, _p1, captures, BIT_AND_EXPR, EQ_EXPR);
    9674           29 :                         if (res) return res;
    9675              :                       }
    9676              :                     }
    9677              :                   break;
    9678              :                 }
    9679              :               default:;
    9680              :               }
    9681              :           }
    9682         1842 :         if (integer_all_onesp (_q21))
    9683              :           {
    9684            0 :             switch (TREE_CODE (_p1))
    9685              :               {
    9686            0 :               case EQ_EXPR:
    9687            0 :                 {
    9688            0 :                   tree _q50 = TREE_OPERAND (_p1, 0);
    9689            0 :                   tree _q51 = TREE_OPERAND (_p1, 1);
    9690            0 :                   if (integer_all_onesp (_q51))
    9691              :                     {
    9692            0 :                       {
    9693            0 :                         tree captures[3] ATTRIBUTE_UNUSED = { _q20, _q21, _q50 };
    9694            0 :                         tree res = generic_simplify_110 (loc, type, _p0, _p1, captures, BIT_AND_EXPR, EQ_EXPR);
    9695            0 :                         if (res) return res;
    9696              :                       }
    9697              :                     }
    9698              :                   break;
    9699              :                 }
    9700              :               default:;
    9701              :               }
    9702              :           }
    9703         1842 :         switch (TREE_CODE (_p1))
    9704              :           {
    9705            8 :           case BIT_IOR_EXPR:
    9706            8 :             {
    9707            8 :               tree _q50 = TREE_OPERAND (_p1, 0);
    9708            8 :               tree _q51 = TREE_OPERAND (_p1, 1);
    9709            8 :               if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
    9710              :                 {
    9711            0 :                   if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
    9712              :                     {
    9713            0 :                       {
    9714            0 :                         tree captures[2] ATTRIBUTE_UNUSED = { _q20, _q21 };
    9715            0 :                         tree res = generic_simplify_449 (loc, type, _p0, _p1, captures);
    9716            0 :                         if (res) return res;
    9717              :                       }
    9718              :                     }
    9719              :                 }
    9720            8 :               if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
    9721              :                 {
    9722            0 :                   if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
    9723              :                     {
    9724            0 :                       {
    9725            0 :                         tree captures[2] ATTRIBUTE_UNUSED = { _q21, _q20 };
    9726            0 :                         tree res = generic_simplify_449 (loc, type, _p0, _p1, captures);
    9727            0 :                         if (res) return res;
    9728              :                       }
    9729              :                     }
    9730              :                 }
    9731              :               break;
    9732              :             }
    9733         1842 :           default:;
    9734              :           }
    9735         1842 :         if ((_p1 == _q20 && ! TREE_SIDE_EFFECTS (_p1)) || (operand_equal_p (_p1, _q20, 0) && types_match (_p1, _q20)))
    9736              :           {
    9737           12 :             {
    9738           12 :               tree captures[2] ATTRIBUTE_UNUSED = { _q20, _q21 };
    9739           12 :               tree res = generic_simplify_450 (loc, type, _p0, _p1, captures);
    9740           12 :               if (res) return res;
    9741              :             }
    9742              :           }
    9743         1842 :         if ((_p1 == _q21 && ! TREE_SIDE_EFFECTS (_p1)) || (operand_equal_p (_p1, _q21, 0) && types_match (_p1, _q21)))
    9744              :           {
    9745            8 :             {
    9746            8 :               tree captures[2] ATTRIBUTE_UNUSED = { _q21, _q20 };
    9747            8 :               tree res = generic_simplify_450 (loc, type, _p0, _p1, captures);
    9748            8 :               if (res) return res;
    9749              :             }
    9750              :           }
    9751              :         break;
    9752              :       }
    9753         1615 :     case BIT_IOR_EXPR:
    9754         1615 :       {
    9755         1615 :         tree _q20 = TREE_OPERAND (_p0, 0);
    9756         1615 :         tree _q21 = TREE_OPERAND (_p0, 1);
    9757         1615 :         switch (TREE_CODE (_p1))
    9758              :           {
    9759          169 :           case BIT_NOT_EXPR:
    9760          169 :             {
    9761          169 :               tree _q50 = TREE_OPERAND (_p1, 0);
    9762          169 :               switch (TREE_CODE (_q50))
    9763              :                 {
    9764            6 :                 case BIT_XOR_EXPR:
    9765            6 :                   {
    9766            6 :                     tree _q60 = TREE_OPERAND (_q50, 0);
    9767            6 :                     tree _q61 = TREE_OPERAND (_q50, 1);
    9768            6 :                     if ((_q60 == _q20 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q20, 0) && types_match (_q60, _q20)))
    9769              :                       {
    9770            0 :                         if ((_q61 == _q21 && ! TREE_SIDE_EFFECTS (_q61)) || (operand_equal_p (_q61, _q21, 0) && types_match (_q61, _q21)))
    9771              :                           {
    9772            0 :                             {
    9773            0 :                               tree captures[2] ATTRIBUTE_UNUSED = { _q20, _q21 };
    9774            0 :                               tree res = generic_simplify_451 (loc, type, _p0, _p1, captures);
    9775            0 :                               if (res) return res;
    9776              :                             }
    9777              :                           }
    9778              :                       }
    9779            6 :                     if ((_q60 == _q21 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q21, 0) && types_match (_q60, _q21)))
    9780              :                       {
    9781            0 :                         if ((_q61 == _q20 && ! TREE_SIDE_EFFECTS (_q61)) || (operand_equal_p (_q61, _q20, 0) && types_match (_q61, _q20)))
    9782              :                           {
    9783            0 :                             {
    9784            0 :                               tree captures[2] ATTRIBUTE_UNUSED = { _q20, _q21 };
    9785            0 :                               tree res = generic_simplify_451 (loc, type, _p0, _p1, captures);
    9786            0 :                               if (res) return res;
    9787              :                             }
    9788              :                           }
    9789              :                       }
    9790              :                     break;
    9791              :                   }
    9792              :                 default:;
    9793              :                 }
    9794              :               break;
    9795              :             }
    9796           24 :           case EQ_EXPR:
    9797           24 :             {
    9798           24 :               tree _q50 = TREE_OPERAND (_p1, 0);
    9799           24 :               tree _q51 = TREE_OPERAND (_p1, 1);
    9800           24 :               if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
    9801              :                 {
    9802            8 :                   if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
    9803              :                     {
    9804            8 :                       {
    9805            8 :                         tree captures[2] ATTRIBUTE_UNUSED = { _q20, _q21 };
    9806            8 :                         tree res = generic_simplify_449 (loc, type, _p0, _p1, captures);
    9807            8 :                         if (res) return res;
    9808              :                       }
    9809              :                     }
    9810              :                 }
    9811           24 :               if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
    9812              :                 {
    9813            0 :                   if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
    9814              :                     {
    9815            0 :                       {
    9816            0 :                         tree captures[2] ATTRIBUTE_UNUSED = { _q20, _q21 };
    9817            0 :                         tree res = generic_simplify_449 (loc, type, _p0, _p1, captures);
    9818            0 :                         if (res) return res;
    9819              :                       }
    9820              :                     }
    9821              :                 }
    9822              :               break;
    9823              :             }
    9824         1615 :           default:;
    9825              :           }
    9826         1615 :       {
    9827         1615 :         tree _p1_pops[1];
    9828         1615 :         if (tree_nop_convert (_p1, _p1_pops))
    9829              :           {
    9830          139 :             tree _q50 = _p1_pops[0];
    9831          139 :             switch (TREE_CODE (_q50))
    9832              :               {
    9833            0 :               case EQ_EXPR:
    9834            0 :                 {
    9835            0 :                   tree _q60 = TREE_OPERAND (_q50, 0);
    9836            0 :                   tree _q61 = TREE_OPERAND (_q50, 1);
    9837            0 :                   if ((_q60 == _q20 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q20, 0) && types_match (_q60, _q20)))
    9838              :                     {
    9839            0 :                       if ((_q61 == _q21 && ! TREE_SIDE_EFFECTS (_q61)) || (operand_equal_p (_q61, _q21, 0) && types_match (_q61, _q21)))
    9840              :                         {
    9841            0 :                           {
    9842            0 :                             tree captures[2] ATTRIBUTE_UNUSED = { _q20, _q21 };
    9843            0 :                             tree res = generic_simplify_449 (loc, type, _p0, _p1, captures);
    9844            0 :                             if (res) return res;
    9845              :                           }
    9846              :                         }
    9847              :                     }
    9848            0 :                   if ((_q60 == _q21 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q21, 0) && types_match (_q60, _q21)))
    9849              :                     {
    9850            0 :                       if ((_q61 == _q20 && ! TREE_SIDE_EFFECTS (_q61)) || (operand_equal_p (_q61, _q20, 0) && types_match (_q61, _q20)))
    9851              :                         {
    9852            0 :                           {
    9853            0 :                             tree captures[2] ATTRIBUTE_UNUSED = { _q20, _q21 };
    9854            0 :                             tree res = generic_simplify_449 (loc, type, _p0, _p1, captures);
    9855            0 :                             if (res) return res;
    9856              :                           }
    9857              :                         }
    9858              :                     }
    9859              :                   break;
    9860              :                 }
    9861              :               default:;
    9862              :               }
    9863              :           }
    9864              :       }
    9865         1615 :         break;
    9866              :       }
    9867        66923 :     case BIT_NOT_EXPR:
    9868        66923 :       {
    9869        66923 :         tree _q20 = TREE_OPERAND (_p0, 0);
    9870        66923 :         switch (TREE_CODE (_q20))
    9871              :           {
    9872          140 :           case BIT_XOR_EXPR:
    9873          140 :             {
    9874          140 :               tree _q30 = TREE_OPERAND (_q20, 0);
    9875          140 :               tree _q31 = TREE_OPERAND (_q20, 1);
    9876          140 :               switch (TREE_CODE (_p1))
    9877              :                 {
    9878           48 :                 case BIT_IOR_EXPR:
    9879           48 :                   {
    9880           48 :                     tree _q60 = TREE_OPERAND (_p1, 0);
    9881           48 :                     tree _q61 = TREE_OPERAND (_p1, 1);
    9882           48 :                     if ((_q60 == _q30 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q30, 0) && types_match (_q60, _q30)))
    9883              :                       {
    9884            6 :                         if ((_q61 == _q31 && ! TREE_SIDE_EFFECTS (_q61)) || (operand_equal_p (_q61, _q31, 0) && types_match (_q61, _q31)))
    9885              :                           {
    9886            0 :                             {
    9887            0 :                               tree captures[2] ATTRIBUTE_UNUSED = { _q30, _q31 };
    9888            0 :                               tree res = generic_simplify_451 (loc, type, _p0, _p1, captures);
    9889            0 :                               if (res) return res;
    9890              :                             }
    9891              :                           }
    9892              :                       }
    9893           48 :                     if ((_q60 == _q31 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q31, 0) && types_match (_q60, _q31)))
    9894              :                       {
    9895            3 :                         if ((_q61 == _q30 && ! TREE_SIDE_EFFECTS (_q61)) || (operand_equal_p (_q61, _q30, 0) && types_match (_q61, _q30)))
    9896              :                           {
    9897            0 :                             {
    9898            0 :                               tree captures[2] ATTRIBUTE_UNUSED = { _q31, _q30 };
    9899            0 :                               tree res = generic_simplify_451 (loc, type, _p0, _p1, captures);
    9900            0 :                               if (res) return res;
    9901              :                             }
    9902              :                           }
    9903              :                       }
    9904              :                     break;
    9905              :                   }
    9906          140 :                 default:;
    9907              :                 }
    9908          140 :               if ((_p1 == _q30 && ! TREE_SIDE_EFFECTS (_p1)) || (operand_equal_p (_p1, _q30, 0) && types_match (_p1, _q30)))
    9909              :                 {
    9910            1 :                   {
    9911            1 :                     tree captures[2] ATTRIBUTE_UNUSED = { _q30, _q31 };
    9912            1 :                     tree res = generic_simplify_452 (loc, type, _p0, _p1, captures);
    9913            1 :                     if (res) return res;
    9914              :                   }
    9915              :                 }
    9916          139 :               if ((_p1 == _q31 && ! TREE_SIDE_EFFECTS (_p1)) || (operand_equal_p (_p1, _q31, 0) && types_match (_p1, _q31)))
    9917              :                 {
    9918            0 :                   {
    9919            0 :                     tree captures[2] ATTRIBUTE_UNUSED = { _q31, _q30 };
    9920            0 :                     tree res = generic_simplify_452 (loc, type, _p0, _p1, captures);
    9921            0 :                     if (res) return res;
    9922              :                   }
    9923              :                 }
    9924              :               break;
    9925              :             }
    9926              :           default:;
    9927              :           }
    9928              :         break;
    9929              :       }
    9930      6742710 :     default:;
    9931              :     }
    9932      6742710 : {
    9933      6742710 :   tree _p0_pops[1];
    9934      6742710 :   if (tree_nop_convert (_p0, _p0_pops))
    9935              :     {
    9936      1412188 :       tree _q20 = _p0_pops[0];
    9937      1412188 :       switch (TREE_CODE (_q20))
    9938              :         {
    9939            0 :         case EQ_EXPR:
    9940            0 :           {
    9941            0 :             tree _q30 = TREE_OPERAND (_q20, 0);
    9942            0 :             tree _q31 = TREE_OPERAND (_q20, 1);
    9943            0 :             switch (TREE_CODE (_p1))
    9944              :               {
    9945            0 :               case BIT_IOR_EXPR:
    9946            0 :                 {
    9947            0 :                   tree _q60 = TREE_OPERAND (_p1, 0);
    9948            0 :                   tree _q61 = TREE_OPERAND (_p1, 1);
    9949            0 :                   if ((_q60 == _q30 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q30, 0) && types_match (_q60, _q30)))
    9950              :                     {
    9951            0 :                       if ((_q61 == _q31 && ! TREE_SIDE_EFFECTS (_q61)) || (operand_equal_p (_q61, _q31, 0) && types_match (_q61, _q31)))
    9952              :                         {
    9953            0 :                           {
    9954            0 :                             tree captures[2] ATTRIBUTE_UNUSED = { _q30, _q31 };
    9955            0 :                             tree res = generic_simplify_449 (loc, type, _p0, _p1, captures);
    9956            0 :                             if (res) return res;
    9957              :                           }
    9958              :                         }
    9959              :                     }
    9960            0 :                   if ((_q60 == _q31 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q31, 0) && types_match (_q60, _q31)))
    9961              :                     {
    9962            0 :                       if ((_q61 == _q30 && ! TREE_SIDE_EFFECTS (_q61)) || (operand_equal_p (_q61, _q30, 0) && types_match (_q61, _q30)))
    9963              :                         {
    9964            0 :                           {
    9965            0 :                             tree captures[2] ATTRIBUTE_UNUSED = { _q31, _q30 };
    9966            0 :                             tree res = generic_simplify_449 (loc, type, _p0, _p1, captures);
    9967            0 :                             if (res) return res;
    9968              :                           }
    9969              :                         }
    9970              :                     }
    9971              :                   break;
    9972              :                 }
    9973            0 :               default:;
    9974              :               }
    9975            0 :             if ((_p1 == _q30 && ! TREE_SIDE_EFFECTS (_p1)) || (operand_equal_p (_p1, _q30, 0) && types_match (_p1, _q30)))
    9976              :               {
    9977            0 :                 {
    9978            0 :                   tree captures[2] ATTRIBUTE_UNUSED = { _q30, _q31 };
    9979            0 :                   tree res = generic_simplify_450 (loc, type, _p0, _p1, captures);
    9980            0 :                   if (res) return res;
    9981              :                 }
    9982              :               }
    9983            0 :             if ((_p1 == _q31 && ! TREE_SIDE_EFFECTS (_p1)) || (operand_equal_p (_p1, _q31, 0) && types_match (_p1, _q31)))
    9984              :               {
    9985            0 :                 {
    9986            0 :                   tree captures[2] ATTRIBUTE_UNUSED = { _q31, _q30 };
    9987            0 :                   tree res = generic_simplify_450 (loc, type, _p0, _p1, captures);
    9988            0 :                   if (res) return res;
    9989              :                 }
    9990              :               }
    9991              :             break;
    9992              :           }
    9993              :         default:;
    9994              :         }
    9995              :     }
    9996              : }
    9997      6742710 :   switch (TREE_CODE (_p1))
    9998              :     {
    9999        52622 :     case BIT_NOT_EXPR:
   10000        52622 :       {
   10001        52622 :         tree _q30 = TREE_OPERAND (_p1, 0);
   10002        52622 :         switch (TREE_CODE (_q30))
   10003              :           {
   10004            6 :           case BIT_XOR_EXPR:
   10005            6 :             {
   10006            6 :               tree _q40 = TREE_OPERAND (_q30, 0);
   10007            6 :               tree _q41 = TREE_OPERAND (_q30, 1);
   10008            6 :               if ((_q40 == _p0 && ! TREE_SIDE_EFFECTS (_q40)) || (operand_equal_p (_q40, _p0, 0) && types_match (_q40, _p0)))
   10009              :                 {
   10010            0 :                   {
   10011            0 :                     tree captures[2] ATTRIBUTE_UNUSED = { _p0, _q41 };
   10012            0 :                     tree res = generic_simplify_452 (loc, type, _p0, _p1, captures);
   10013            0 :                     if (res) return res;
   10014              :                   }
   10015              :                 }
   10016            6 :               if ((_q41 == _p0 && ! TREE_SIDE_EFFECTS (_q41)) || (operand_equal_p (_q41, _p0, 0) && types_match (_q41, _p0)))
   10017              :                 {
   10018            0 :                   {
   10019            0 :                     tree captures[2] ATTRIBUTE_UNUSED = { _p0, _q40 };
   10020            0 :                     tree res = generic_simplify_452 (loc, type, _p0, _p1, captures);
   10021            0 :                     if (res) return res;
   10022              :                   }
   10023              :                 }
   10024              :               break;
   10025              :             }
   10026              :           default:;
   10027              :           }
   10028              :         break;
   10029              :       }
   10030      6742710 :     default:;
   10031              :     }
   10032      6742710 :   switch (TREE_CODE (_p0))
   10033              :     {
   10034       295632 :     case PLUS_EXPR:
   10035       295632 :       {
   10036       295632 :         tree _q20 = TREE_OPERAND (_p0, 0);
   10037       295632 :         tree _q21 = TREE_OPERAND (_p0, 1);
   10038       295632 :         if (integer_minus_onep (_q21))
   10039              :           {
   10040       110590 :             switch (TREE_CODE (_p1))
   10041              :               {
   10042        10501 :               case NEGATE_EXPR:
   10043        10501 :                 {
   10044        10501 :                   tree _q50 = TREE_OPERAND (_p1, 0);
   10045        10501 :                   if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
   10046              :                     {
   10047            9 :                       {
   10048            9 :                         tree captures[1] ATTRIBUTE_UNUSED = { _q20 };
   10049            9 :                         tree res = generic_simplify_8 (loc, type, _p0, _p1, captures, BIT_AND_EXPR);
   10050            9 :                         if (res) return res;
   10051              :                       }
   10052              :                     }
   10053              :                   break;
   10054              :                 }
   10055              :               default:;
   10056              :               }
   10057              :           }
   10058              :         break;
   10059              :       }
   10060        47190 :     case NEGATE_EXPR:
   10061        47190 :       {
   10062        47190 :         tree _q20 = TREE_OPERAND (_p0, 0);
   10063        47190 :         switch (TREE_CODE (_p1))
   10064              :           {
   10065           26 :           case PLUS_EXPR:
   10066           26 :             {
   10067           26 :               tree _q40 = TREE_OPERAND (_p1, 0);
   10068           26 :               tree _q41 = TREE_OPERAND (_p1, 1);
   10069           26 :               if ((_q40 == _q20 && ! TREE_SIDE_EFFECTS (_q40)) || (operand_equal_p (_q40, _q20, 0) && types_match (_q40, _q20)))
   10070              :                 {
   10071            0 :                   if (integer_minus_onep (_q41))
   10072              :                     {
   10073            0 :                       {
   10074            0 :                         tree captures[1] ATTRIBUTE_UNUSED = { _q20 };
   10075            0 :                         tree res = generic_simplify_9 (loc, type, _p0, _p1, captures, BIT_AND_EXPR);
   10076            0 :                         if (res) return res;
   10077              :                       }
   10078              :                     }
   10079              :                 }
   10080              :               break;
   10081              :             }
   10082            0 :           case MINUS_EXPR:
   10083            0 :             {
   10084            0 :               tree _q40 = TREE_OPERAND (_p1, 0);
   10085            0 :               tree _q41 = TREE_OPERAND (_p1, 1);
   10086            0 :               if ((_q40 == _q20 && ! TREE_SIDE_EFFECTS (_q40)) || (operand_equal_p (_q40, _q20, 0) && types_match (_q40, _q20)))
   10087              :                 {
   10088            0 :                   if (integer_onep (_q41))
   10089              :                     {
   10090            0 :                       {
   10091            0 :                         tree captures[1] ATTRIBUTE_UNUSED = { _q20 };
   10092            0 :                         tree res = generic_simplify_10 (loc, type, _p0, _p1, captures, BIT_AND_EXPR);
   10093            0 :                         if (res) return res;
   10094              :                       }
   10095              :                     }
   10096              :                 }
   10097              :               break;
   10098              :             }
   10099              :           default:;
   10100              :           }
   10101              :         break;
   10102              :       }
   10103       680517 :     case MINUS_EXPR:
   10104       680517 :       {
   10105       680517 :         tree _q20 = TREE_OPERAND (_p0, 0);
   10106       680517 :         tree _q21 = TREE_OPERAND (_p0, 1);
   10107       680517 :         if (integer_onep (_q21))
   10108              :           {
   10109          805 :             switch (TREE_CODE (_p1))
   10110              :               {
   10111            0 :               case NEGATE_EXPR:
   10112            0 :                 {
   10113            0 :                   tree _q50 = TREE_OPERAND (_p1, 0);
   10114            0 :                   if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
   10115              :                     {
   10116            0 :                       {
   10117            0 :                         tree captures[1] ATTRIBUTE_UNUSED = { _q20 };
   10118            0 :                         tree res = generic_simplify_11 (loc, type, _p0, _p1, captures, BIT_AND_EXPR);
   10119            0 :                         if (res) return res;
   10120              :                       }
   10121              :                     }
   10122              :                   break;
   10123              :                 }
   10124              :               default:;
   10125              :               }
   10126              :           }
   10127              :         break;
   10128              :       }
   10129      6742701 :     default:;
   10130              :     }
   10131      6742701 :   switch (TREE_CODE (_p1))
   10132              :     {
   10133         1780 :     case EQ_EXPR:
   10134         1780 :       {
   10135         1780 :         tree _q30 = TREE_OPERAND (_p1, 0);
   10136         1780 :         tree _q31 = TREE_OPERAND (_p1, 1);
   10137         1780 :         if ((_q30 == _p0 && ! TREE_SIDE_EFFECTS (_q30)) || (operand_equal_p (_q30, _p0, 0) && types_match (_q30, _p0)))
   10138              :           {
   10139            1 :             {
   10140            1 :               tree captures[2] ATTRIBUTE_UNUSED = { _p0, _q31 };
   10141            1 :               tree res = generic_simplify_450 (loc, type, _p0, _p1, captures);
   10142            1 :               if (res) return res;
   10143              :             }
   10144              :           }
   10145         1780 :         if ((_q31 == _p0 && ! TREE_SIDE_EFFECTS (_q31)) || (operand_equal_p (_q31, _p0, 0) && types_match (_q31, _p0)))
   10146              :           {
   10147            0 :             {
   10148            0 :               tree captures[2] ATTRIBUTE_UNUSED = { _p0, _q30 };
   10149            0 :               tree res = generic_simplify_450 (loc, type, _p0, _p1, captures);
   10150            0 :               if (res) return res;
   10151              :             }
   10152              :           }
   10153              :         break;
   10154              :       }
   10155          257 :     case BIT_XOR_EXPR:
   10156          257 :       {
   10157          257 :         tree _q30 = TREE_OPERAND (_p1, 0);
   10158          257 :         tree _q31 = TREE_OPERAND (_p1, 1);
   10159          257 :         {
   10160          257 :           tree captures[3] ATTRIBUTE_UNUSED = { _p0, _q30, _q31 };
   10161          257 :           tree res = generic_simplify_453 (loc, type, _p0, _p1, captures);
   10162          257 :           if (res) return res;
   10163              :         }
   10164          256 :         {
   10165          256 :           tree captures[3] ATTRIBUTE_UNUSED = { _p0, _q31, _q30 };
   10166          256 :           tree res = generic_simplify_453 (loc, type, _p0, _p1, captures);
   10167          256 :           if (res) return res;
   10168              :         }
   10169          256 :         break;
   10170              :       }
   10171      6742700 :     default:;
   10172              :     }
   10173      6742700 : {
   10174      6742700 :   tree _p1_pops[1];
   10175      6742700 :   if (tree_nop_convert (_p1, _p1_pops))
   10176              :     {
   10177       960478 :       tree _q30 = _p1_pops[0];
   10178       960478 :       switch (TREE_CODE (_q30))
   10179              :         {
   10180            0 :         case EQ_EXPR:
   10181            0 :           {
   10182            0 :             tree _q40 = TREE_OPERAND (_q30, 0);
   10183            0 :             tree _q41 = TREE_OPERAND (_q30, 1);
   10184            0 :             if ((_q40 == _p0 && ! TREE_SIDE_EFFECTS (_q40)) || (operand_equal_p (_q40, _p0, 0) && types_match (_q40, _p0)))
   10185              :               {
   10186            0 :                 {
   10187            0 :                   tree captures[2] ATTRIBUTE_UNUSED = { _p0, _q41 };
   10188            0 :                   tree res = generic_simplify_450 (loc, type, _p0, _p1, captures);
   10189            0 :                   if (res) return res;
   10190              :                 }
   10191              :               }
   10192            0 :             if ((_q41 == _p0 && ! TREE_SIDE_EFFECTS (_q41)) || (operand_equal_p (_q41, _p0, 0) && types_match (_q41, _p0)))
   10193              :               {
   10194            0 :                 {
   10195            0 :                   tree captures[2] ATTRIBUTE_UNUSED = { _p0, _q40 };
   10196            0 :                   tree res = generic_simplify_450 (loc, type, _p0, _p1, captures);
   10197            0 :                   if (res) return res;
   10198              :                 }
   10199              :               }
   10200              :             break;
   10201              :           }
   10202              :         default:;
   10203              :         }
   10204              :     }
   10205              : }
   10206      6742700 :   switch (TREE_CODE (_p0))
   10207              :     {
   10208        61863 :     case BIT_XOR_EXPR:
   10209        61863 :       {
   10210        61863 :         tree _q20 = TREE_OPERAND (_p0, 0);
   10211        61863 :         tree _q21 = TREE_OPERAND (_p0, 1);
   10212        61863 :         {
   10213        61863 :           tree captures[3] ATTRIBUTE_UNUSED = { _p1, _q20, _q21 };
   10214        61863 :           tree res = generic_simplify_453 (loc, type, _p0, _p1, captures);
   10215        61863 :           if (res) return res;
   10216              :         }
   10217        61863 :         {
   10218        61863 :           tree captures[3] ATTRIBUTE_UNUSED = { _p1, _q21, _q20 };
   10219        61863 :           tree res = generic_simplify_453 (loc, type, _p0, _p1, captures);
   10220        61863 :           if (res) return res;
   10221              :         }
   10222        61863 :         switch (TREE_CODE (_p1))
   10223              :           {
   10224          152 :           case BIT_XOR_EXPR:
   10225          152 :             {
   10226          152 :               tree _q50 = TREE_OPERAND (_p1, 0);
   10227          152 :               tree _q51 = TREE_OPERAND (_p1, 1);
   10228          152 :               switch (TREE_CODE (_q50))
   10229              :                 {
   10230            3 :                 case BIT_XOR_EXPR:
   10231            3 :                   {
   10232            3 :                     tree _q60 = TREE_OPERAND (_q50, 0);
   10233            3 :                     tree _q61 = TREE_OPERAND (_q50, 1);
   10234            3 :                     if ((_q60 == _q21 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q21, 0) && types_match (_q60, _q21)))
   10235              :                       {
   10236            2 :                         if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
   10237              :                           {
   10238            1 :                             {
   10239            1 :                               tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q50, _q61 };
   10240            1 :                               tree res = generic_simplify_454 (loc, type, _p0, _p1, captures);
   10241            1 :                               if (res) return res;
   10242              :                             }
   10243              :                           }
   10244              :                       }
   10245            2 :                     if ((_q61 == _q21 && ! TREE_SIDE_EFFECTS (_q61)) || (operand_equal_p (_q61, _q21, 0) && types_match (_q61, _q21)))
   10246              :                       {
   10247            0 :                         if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
   10248              :                           {
   10249            0 :                             {
   10250            0 :                               tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q50, _q60 };
   10251            0 :                               tree res = generic_simplify_454 (loc, type, _p0, _p1, captures);
   10252            0 :                               if (res) return res;
   10253              :                             }
   10254              :                           }
   10255              :                       }
   10256            2 :                     if ((_q60 == _q20 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q20, 0) && types_match (_q60, _q20)))
   10257              :                       {
   10258            1 :                         if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
   10259              :                           {
   10260            1 :                             {
   10261            1 :                               tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q50, _q61 };
   10262            1 :                               tree res = generic_simplify_454 (loc, type, _p0, _p1, captures);
   10263            1 :                               if (res) return res;
   10264              :                             }
   10265              :                           }
   10266              :                       }
   10267            1 :                     if ((_q61 == _q20 && ! TREE_SIDE_EFFECTS (_q61)) || (operand_equal_p (_q61, _q20, 0) && types_match (_q61, _q20)))
   10268              :                       {
   10269            1 :                         if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
   10270              :                           {
   10271            0 :                             {
   10272            0 :                               tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q50, _q60 };
   10273            0 :                               tree res = generic_simplify_454 (loc, type, _p0, _p1, captures);
   10274            0 :                               if (res) return res;
   10275              :                             }
   10276              :                           }
   10277              :                       }
   10278              :                     break;
   10279              :                   }
   10280          150 :                 default:;
   10281              :                 }
   10282          150 :               if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
   10283              :                 {
   10284           47 :                   switch (TREE_CODE (_q51))
   10285              :                     {
   10286            0 :                     case BIT_XOR_EXPR:
   10287            0 :                       {
   10288            0 :                         tree _q70 = TREE_OPERAND (_q51, 0);
   10289            0 :                         tree _q71 = TREE_OPERAND (_q51, 1);
   10290            0 :                         if ((_q70 == _q21 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q21, 0) && types_match (_q70, _q21)))
   10291              :                           {
   10292            0 :                             {
   10293            0 :                               tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q51, _q71 };
   10294            0 :                               tree res = generic_simplify_454 (loc, type, _p0, _p1, captures);
   10295            0 :                               if (res) return res;
   10296              :                             }
   10297              :                           }
   10298            0 :                         if ((_q71 == _q21 && ! TREE_SIDE_EFFECTS (_q71)) || (operand_equal_p (_q71, _q21, 0) && types_match (_q71, _q21)))
   10299              :                           {
   10300            0 :                             {
   10301            0 :                               tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q51, _q70 };
   10302            0 :                               tree res = generic_simplify_454 (loc, type, _p0, _p1, captures);
   10303            0 :                               if (res) return res;
   10304              :                             }
   10305              :                           }
   10306              :                         break;
   10307              :                       }
   10308              :                     default:;
   10309              :                     }
   10310              :                 }
   10311          150 :               if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
   10312              :                 {
   10313            0 :                   switch (TREE_CODE (_q51))
   10314              :                     {
   10315            0 :                     case BIT_XOR_EXPR:
   10316            0 :                       {
   10317            0 :                         tree _q70 = TREE_OPERAND (_q51, 0);
   10318            0 :                         tree _q71 = TREE_OPERAND (_q51, 1);
   10319            0 :                         if ((_q70 == _q20 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q20, 0) && types_match (_q70, _q20)))
   10320              :                           {
   10321            0 :                             {
   10322            0 :                               tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q51, _q71 };
   10323            0 :                               tree res = generic_simplify_454 (loc, type, _p0, _p1, captures);
   10324            0 :                               if (res) return res;
   10325              :                             }
   10326              :                           }
   10327            0 :                         if ((_q71 == _q20 && ! TREE_SIDE_EFFECTS (_q71)) || (operand_equal_p (_q71, _q20, 0) && types_match (_q71, _q20)))
   10328              :                           {
   10329            0 :                             {
   10330            0 :                               tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q51, _q70 };
   10331            0 :                               tree res = generic_simplify_454 (loc, type, _p0, _p1, captures);
   10332            0 :                               if (res) return res;
   10333              :                             }
   10334              :                           }
   10335              :                         break;
   10336              :                       }
   10337              :                     default:;
   10338              :                     }
   10339              :                 }
   10340              :               break;
   10341              :             }
   10342        61861 :           default:;
   10343              :           }
   10344        61861 :         switch (TREE_CODE (_q20))
   10345              :           {
   10346           11 :           case BIT_XOR_EXPR:
   10347           11 :             {
   10348           11 :               tree _q30 = TREE_OPERAND (_q20, 0);
   10349           11 :               tree _q31 = TREE_OPERAND (_q20, 1);
   10350           11 :               switch (TREE_CODE (_p1))
   10351              :                 {
   10352            0 :                 case BIT_XOR_EXPR:
   10353            0 :                   {
   10354            0 :                     tree _q70 = TREE_OPERAND (_p1, 0);
   10355            0 :                     tree _q71 = TREE_OPERAND (_p1, 1);
   10356            0 :                     if ((_q70 == _q21 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q21, 0) && types_match (_q70, _q21)))
   10357              :                       {
   10358            0 :                         if ((_q71 == _q30 && ! TREE_SIDE_EFFECTS (_q71)) || (operand_equal_p (_q71, _q30, 0) && types_match (_q71, _q30)))
   10359              :                           {
   10360            0 :                             {
   10361            0 :                               tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q21, _q30, _p0, _q20, _q31 };
   10362            0 :                               tree res = generic_simplify_455 (loc, type, _p0, _p1, captures);
   10363            0 :                               if (res) return res;
   10364              :                             }
   10365              :                           }
   10366            0 :                         if ((_q71 == _q31 && ! TREE_SIDE_EFFECTS (_q71)) || (operand_equal_p (_q71, _q31, 0) && types_match (_q71, _q31)))
   10367              :                           {
   10368            0 :                             {
   10369            0 :                               tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q21, _q31, _p0, _q20, _q30 };
   10370            0 :                               tree res = generic_simplify_455 (loc, type, _p0, _p1, captures);
   10371            0 :                               if (res) return res;
   10372              :                             }
   10373              :                           }
   10374              :                       }
   10375            0 :                     if ((_q70 == _q30 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q30, 0) && types_match (_q70, _q30)))
   10376              :                       {
   10377            0 :                         if ((_q71 == _q21 && ! TREE_SIDE_EFFECTS (_q71)) || (operand_equal_p (_q71, _q21, 0) && types_match (_q71, _q21)))
   10378              :                           {
   10379            0 :                             {
   10380            0 :                               tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q21, _q30, _p0, _q20, _q31 };
   10381            0 :                               tree res = generic_simplify_455 (loc, type, _p0, _p1, captures);
   10382            0 :                               if (res) return res;
   10383              :                             }
   10384              :                           }
   10385              :                       }
   10386            0 :                     if ((_q70 == _q31 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q31, 0) && types_match (_q70, _q31)))
   10387              :                       {
   10388            0 :                         if ((_q71 == _q21 && ! TREE_SIDE_EFFECTS (_q71)) || (operand_equal_p (_q71, _q21, 0) && types_match (_q71, _q21)))
   10389              :                           {
   10390            0 :                             {
   10391            0 :                               tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q21, _q31, _p0, _q20, _q30 };
   10392            0 :                               tree res = generic_simplify_455 (loc, type, _p0, _p1, captures);
   10393            0 :                               if (res) return res;
   10394              :                             }
   10395              :                           }
   10396              :                       }
   10397              :                     break;
   10398              :                   }
   10399              :                 default:;
   10400              :                 }
   10401              :               break;
   10402              :             }
   10403        61861 :           default:;
   10404              :           }
   10405        61861 :         switch (TREE_CODE (_q21))
   10406              :           {
   10407            0 :           case BIT_XOR_EXPR:
   10408            0 :             {
   10409            0 :               tree _q40 = TREE_OPERAND (_q21, 0);
   10410            0 :               tree _q41 = TREE_OPERAND (_q21, 1);
   10411            0 :               switch (TREE_CODE (_p1))
   10412              :                 {
   10413            0 :                 case BIT_XOR_EXPR:
   10414            0 :                   {
   10415            0 :                     tree _q70 = TREE_OPERAND (_p1, 0);
   10416            0 :                     tree _q71 = TREE_OPERAND (_p1, 1);
   10417            0 :                     if ((_q70 == _q20 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q20, 0) && types_match (_q70, _q20)))
   10418              :                       {
   10419            0 :                         if ((_q71 == _q40 && ! TREE_SIDE_EFFECTS (_q71)) || (operand_equal_p (_q71, _q40, 0) && types_match (_q71, _q40)))
   10420              :                           {
   10421            0 :                             {
   10422            0 :                               tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q20, _q40, _p0, _q21, _q41 };
   10423            0 :                               tree res = generic_simplify_455 (loc, type, _p0, _p1, captures);
   10424            0 :                               if (res) return res;
   10425              :                             }
   10426              :                           }
   10427            0 :                         if ((_q71 == _q41 && ! TREE_SIDE_EFFECTS (_q71)) || (operand_equal_p (_q71, _q41, 0) && types_match (_q71, _q41)))
   10428              :                           {
   10429            0 :                             {
   10430            0 :                               tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q20, _q41, _p0, _q21, _q40 };
   10431            0 :                               tree res = generic_simplify_455 (loc, type, _p0, _p1, captures);
   10432            0 :                               if (res) return res;
   10433              :                             }
   10434              :                           }
   10435              :                       }
   10436            0 :                     if ((_q70 == _q40 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q40, 0) && types_match (_q70, _q40)))
   10437              :                       {
   10438            0 :                         if ((_q71 == _q20 && ! TREE_SIDE_EFFECTS (_q71)) || (operand_equal_p (_q71, _q20, 0) && types_match (_q71, _q20)))
   10439              :                           {
   10440            0 :                             {
   10441            0 :                               tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q20, _q40, _p0, _q21, _q41 };
   10442            0 :                               tree res = generic_simplify_455 (loc, type, _p0, _p1, captures);
   10443            0 :                               if (res) return res;
   10444              :                             }
   10445              :                           }
   10446              :                       }
   10447            0 :                     if ((_q70 == _q41 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q41, 0) && types_match (_q70, _q41)))
   10448              :                       {
   10449            0 :                         if ((_q71 == _q20 && ! TREE_SIDE_EFFECTS (_q71)) || (operand_equal_p (_q71, _q20, 0) && types_match (_q71, _q20)))
   10450              :                           {
   10451            0 :                             {
   10452            0 :                               tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q20, _q41, _p0, _q21, _q40 };
   10453            0 :                               tree res = generic_simplify_455 (loc, type, _p0, _p1, captures);
   10454            0 :                               if (res) return res;
   10455              :                             }
   10456              :                           }
   10457              :                       }
   10458              :                     break;
   10459              :                   }
   10460              :                 default:;
   10461              :                 }
   10462              :               break;
   10463              :             }
   10464              :           default:;
   10465              :           }
   10466              :         break;
   10467              :       }
   10468        66921 :     case BIT_NOT_EXPR:
   10469        66921 :       {
   10470        66921 :         tree _q20 = TREE_OPERAND (_p0, 0);
   10471        66921 :         switch (TREE_CODE (_q20))
   10472              :           {
   10473          187 :           case SSA_NAME:
   10474          187 :             {
   10475          187 :               switch (TREE_CODE (_p1))
   10476              :                 {
   10477          187 :                 case INTEGER_CST:
   10478          187 :                   {
   10479          187 :                     {
   10480          187 :                       tree captures[2] ATTRIBUTE_UNUSED = { _q20, _p1 };
   10481          374 :                       if (INTEGRAL_TYPE_P (TREE_TYPE (captures[0]))
   10482          561 :  && wi::bit_and_not (get_nonzero_bits (captures[0]), wi::to_wide (captures[1])) == 0
   10483              : )
   10484              :                         {
   10485           14 :                           if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1672;
   10486           14 :                           {
   10487           14 :                             tree res_op0;
   10488           14 :                             res_op0 = captures[0];
   10489           14 :                             tree res_op1;
   10490           14 :                             res_op1 = captures[1];
   10491           14 :                             tree _r;
   10492           14 :                             _r = fold_build2_loc (loc, BIT_XOR_EXPR, type, res_op0, res_op1);
   10493           14 :                             if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 1011, __FILE__, __LINE__, true);
   10494           14 :                             return _r;
   10495              :                           }
   10496            0 : next_after_fail1672:;
   10497              :                         }
   10498              :                     }
   10499          173 :                     break;
   10500              :                   }
   10501              :                 default:;
   10502              :                 }
   10503              :               break;
   10504              :             }
   10505              :           default:;
   10506              :           }
   10507              :         break;
   10508              :       }
   10509       295623 :     case PLUS_EXPR:
   10510       295623 :       {
   10511       295623 :         tree _q20 = TREE_OPERAND (_p0, 0);
   10512       295623 :         tree _q21 = TREE_OPERAND (_p0, 1);
   10513       295623 :         switch (TREE_CODE (_q20))
   10514              :           {
   10515           24 :           case BIT_AND_EXPR:
   10516           24 :             {
   10517           24 :               tree _q30 = TREE_OPERAND (_q20, 0);
   10518           24 :               tree _q31 = TREE_OPERAND (_q20, 1);
   10519           24 :               switch (TREE_CODE (_q31))
   10520              :                 {
   10521           20 :                 case INTEGER_CST:
   10522           20 :                   {
   10523           20 :                     switch (TREE_CODE (_p1))
   10524              :                       {
   10525           20 :                       case INTEGER_CST:
   10526           20 :                         {
   10527           20 :                           {
   10528           20 :                             tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q30, _q31, _q21, _p1 };
   10529           20 :                             tree res = generic_simplify_456 (loc, type, _p0, _p1, captures, BIT_AND_EXPR, PLUS_EXPR);
   10530           20 :                             if (res) return res;
   10531              :                           }
   10532           12 :                           break;
   10533              :                         }
   10534              :                       default:;
   10535              :                       }
   10536              :                     break;
   10537              :                   }
   10538              :                 default:;
   10539              :                 }
   10540              :               break;
   10541              :             }
   10542           64 :           case BIT_IOR_EXPR:
   10543           64 :             {
   10544           64 :               tree _q30 = TREE_OPERAND (_q20, 0);
   10545           64 :               tree _q31 = TREE_OPERAND (_q20, 1);
   10546           64 :               switch (TREE_CODE (_q31))
   10547              :                 {
   10548           52 :                 case INTEGER_CST:
   10549           52 :                   {
   10550           52 :                     switch (TREE_CODE (_p1))
   10551              :                       {
   10552           52 :                       case INTEGER_CST:
   10553           52 :                         {
   10554           52 :                           {
   10555           52 :                             tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q30, _q31, _q21, _p1 };
   10556           52 :                             tree res = generic_simplify_456 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR, PLUS_EXPR);
   10557           52 :                             if (res) return res;
   10558              :                           }
   10559           48 :                           break;
   10560              :                         }
   10561              :                       default:;
   10562              :                       }
   10563              :                     break;
   10564              :                   }
   10565              :                 default:;
   10566              :                 }
   10567              :               break;
   10568              :             }
   10569           24 :           case BIT_XOR_EXPR:
   10570           24 :             {
   10571           24 :               tree _q30 = TREE_OPERAND (_q20, 0);
   10572           24 :               tree _q31 = TREE_OPERAND (_q20, 1);
   10573           24 :               switch (TREE_CODE (_q31))
   10574              :                 {
   10575            4 :                 case INTEGER_CST:
   10576            4 :                   {
   10577            4 :                     switch (TREE_CODE (_p1))
   10578              :                       {
   10579            4 :                       case INTEGER_CST:
   10580            4 :                         {
   10581            4 :                           {
   10582            4 :                             tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q30, _q31, _q21, _p1 };
   10583            4 :                             tree res = generic_simplify_456 (loc, type, _p0, _p1, captures, BIT_XOR_EXPR, PLUS_EXPR);
   10584            4 :                             if (res) return res;
   10585              :                           }
   10586            0 :                           break;
   10587              :                         }
   10588              :                       default:;
   10589              :                       }
   10590              :                     break;
   10591              :                   }
   10592              :                 default:;
   10593              :                 }
   10594              :               break;
   10595              :             }
   10596       295607 :           default:;
   10597              :           }
   10598       295607 :         switch (TREE_CODE (_q21))
   10599              :           {
   10600            0 :           case BIT_AND_EXPR:
   10601            0 :             {
   10602            0 :               tree _q40 = TREE_OPERAND (_q21, 0);
   10603            0 :               tree _q41 = TREE_OPERAND (_q21, 1);
   10604            0 :               switch (TREE_CODE (_q41))
   10605              :                 {
   10606            0 :                 case INTEGER_CST:
   10607            0 :                   {
   10608            0 :                     switch (TREE_CODE (_p1))
   10609              :                       {
   10610            0 :                       case INTEGER_CST:
   10611            0 :                         {
   10612            0 :                           {
   10613            0 :                             tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _q40, _q41, _p1 };
   10614            0 :                             tree res = generic_simplify_457 (loc, type, _p0, _p1, captures, BIT_AND_EXPR, PLUS_EXPR);
   10615            0 :                             if (res) return res;
   10616              :                           }
   10617            0 :                           break;
   10618              :                         }
   10619              :                       default:;
   10620              :                       }
   10621              :                     break;
   10622              :                   }
   10623              :                 default:;
   10624              :                 }
   10625              :               break;
   10626              :             }
   10627            0 :           case BIT_IOR_EXPR:
   10628            0 :             {
   10629            0 :               tree _q40 = TREE_OPERAND (_q21, 0);
   10630            0 :               tree _q41 = TREE_OPERAND (_q21, 1);
   10631            0 :               switch (TREE_CODE (_q41))
   10632              :                 {
   10633            0 :                 case INTEGER_CST:
   10634            0 :                   {
   10635            0 :                     switch (TREE_CODE (_p1))
   10636              :                       {
   10637            0 :                       case INTEGER_CST:
   10638            0 :                         {
   10639            0 :                           {
   10640            0 :                             tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _q40, _q41, _p1 };
   10641            0 :                             tree res = generic_simplify_457 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR, PLUS_EXPR);
   10642            0 :                             if (res) return res;
   10643              :                           }
   10644            0 :                           break;
   10645              :                         }
   10646              :                       default:;
   10647              :                       }
   10648              :                     break;
   10649              :                   }
   10650              :                 default:;
   10651              :                 }
   10652              :               break;
   10653              :             }
   10654            0 :           case BIT_XOR_EXPR:
   10655            0 :             {
   10656            0 :               tree _q40 = TREE_OPERAND (_q21, 0);
   10657            0 :               tree _q41 = TREE_OPERAND (_q21, 1);
   10658            0 :               switch (TREE_CODE (_q41))
   10659              :                 {
   10660            0 :                 case INTEGER_CST:
   10661            0 :                   {
   10662            0 :                     switch (TREE_CODE (_p1))
   10663              :                       {
   10664            0 :                       case INTEGER_CST:
   10665            0 :                         {
   10666            0 :                           {
   10667            0 :                             tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _q40, _q41, _p1 };
   10668            0 :                             tree res = generic_simplify_457 (loc, type, _p0, _p1, captures, BIT_XOR_EXPR, PLUS_EXPR);
   10669            0 :                             if (res) return res;
   10670              :                           }
   10671            0 :                           break;
   10672              :                         }
   10673              :                       default:;
   10674              :                       }
   10675              :                     break;
   10676              :                   }
   10677              :                 default:;
   10678              :                 }
   10679              :               break;
   10680              :             }
   10681       295607 :           default:;
   10682              :           }
   10683       295607 :         switch (TREE_CODE (_p1))
   10684              :           {
   10685       211301 :           case INTEGER_CST:
   10686       211301 :             {
   10687       211301 :               {
   10688       211301 :                 tree captures[4] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1 };
   10689       211301 :                 tree res = generic_simplify_458 (loc, type, _p0, _p1, captures, PLUS_EXPR);
   10690       211301 :                 if (res) return res;
   10691              :               }
   10692        83902 :               break;
   10693              :             }
   10694              :           default:;
   10695              :           }
   10696              :         break;
   10697              :       }
   10698       680517 :     case MINUS_EXPR:
   10699       680517 :       {
   10700       680517 :         tree _q20 = TREE_OPERAND (_p0, 0);
   10701       680517 :         tree _q21 = TREE_OPERAND (_p0, 1);
   10702       680517 :         switch (TREE_CODE (_q20))
   10703              :           {
   10704            4 :           case BIT_AND_EXPR:
   10705            4 :             {
   10706            4 :               tree _q30 = TREE_OPERAND (_q20, 0);
   10707            4 :               tree _q31 = TREE_OPERAND (_q20, 1);
   10708            4 :               switch (TREE_CODE (_q31))
   10709              :                 {
   10710            2 :                 case INTEGER_CST:
   10711            2 :                   {
   10712            2 :                     switch (TREE_CODE (_p1))
   10713              :                       {
   10714            2 :                       case INTEGER_CST:
   10715            2 :                         {
   10716            2 :                           {
   10717            2 :                             tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q30, _q31, _q21, _p1 };
   10718            2 :                             tree res = generic_simplify_456 (loc, type, _p0, _p1, captures, BIT_AND_EXPR, MINUS_EXPR);
   10719            2 :                             if (res) return res;
   10720              :                           }
   10721            0 :                           break;
   10722              :                         }
   10723              :                       default:;
   10724              :                       }
   10725              :                     break;
   10726              :                   }
   10727              :                 default:;
   10728              :                 }
   10729              :               break;
   10730              :             }
   10731            4 :           case BIT_IOR_EXPR:
   10732            4 :             {
   10733            4 :               tree _q30 = TREE_OPERAND (_q20, 0);
   10734            4 :               tree _q31 = TREE_OPERAND (_q20, 1);
   10735            4 :               switch (TREE_CODE (_q31))
   10736              :                 {
   10737            2 :                 case INTEGER_CST:
   10738            2 :                   {
   10739            2 :                     switch (TREE_CODE (_p1))
   10740              :                       {
   10741            2 :                       case INTEGER_CST:
   10742            2 :                         {
   10743            2 :                           {
   10744            2 :                             tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q30, _q31, _q21, _p1 };
   10745            2 :                             tree res = generic_simplify_456 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR, MINUS_EXPR);
   10746            2 :                             if (res) return res;
   10747              :                           }
   10748            0 :                           break;
   10749              :                         }
   10750              :                       default:;
   10751              :                       }
   10752              :                     break;
   10753              :                   }
   10754              :                 default:;
   10755              :                 }
   10756              :               break;
   10757              :             }
   10758            4 :           case BIT_XOR_EXPR:
   10759            4 :             {
   10760            4 :               tree _q30 = TREE_OPERAND (_q20, 0);
   10761            4 :               tree _q31 = TREE_OPERAND (_q20, 1);
   10762            4 :               switch (TREE_CODE (_q31))
   10763              :                 {
   10764            2 :                 case INTEGER_CST:
   10765            2 :                   {
   10766            2 :                     switch (TREE_CODE (_p1))
   10767              :                       {
   10768            2 :                       case INTEGER_CST:
   10769            2 :                         {
   10770            2 :                           {
   10771            2 :                             tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q30, _q31, _q21, _p1 };
   10772            2 :                             tree res = generic_simplify_456 (loc, type, _p0, _p1, captures, BIT_XOR_EXPR, MINUS_EXPR);
   10773            2 :                             if (res) return res;
   10774              :                           }
   10775            0 :                           break;
   10776              :                         }
   10777              :                       default:;
   10778              :                       }
   10779              :                     break;
   10780              :                   }
   10781              :                 default:;
   10782              :                 }
   10783              :               break;
   10784              :             }
   10785       680511 :           default:;
   10786              :           }
   10787       680511 :         switch (TREE_CODE (_q21))
   10788              :           {
   10789          360 :           case BIT_AND_EXPR:
   10790          360 :             {
   10791          360 :               tree _q40 = TREE_OPERAND (_q21, 0);
   10792          360 :               tree _q41 = TREE_OPERAND (_q21, 1);
   10793          360 :               switch (TREE_CODE (_q41))
   10794              :                 {
   10795          358 :                 case INTEGER_CST:
   10796          358 :                   {
   10797          358 :                     switch (TREE_CODE (_p1))
   10798              :                       {
   10799          358 :                       case INTEGER_CST:
   10800          358 :                         {
   10801          358 :                           {
   10802          358 :                             tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _q40, _q41, _p1 };
   10803          358 :                             tree res = generic_simplify_457 (loc, type, _p0, _p1, captures, BIT_AND_EXPR, MINUS_EXPR);
   10804          358 :                             if (res) return res;
   10805              :                           }
   10806            1 :                           break;
   10807              :                         }
   10808              :                       default:;
   10809              :                       }
   10810              :                     break;
   10811              :                   }
   10812              :                 default:;
   10813              :                 }
   10814              :               break;
   10815              :             }
   10816            4 :           case BIT_IOR_EXPR:
   10817            4 :             {
   10818            4 :               tree _q40 = TREE_OPERAND (_q21, 0);
   10819            4 :               tree _q41 = TREE_OPERAND (_q21, 1);
   10820            4 :               switch (TREE_CODE (_q41))
   10821              :                 {
   10822            2 :                 case INTEGER_CST:
   10823            2 :                   {
   10824            2 :                     switch (TREE_CODE (_p1))
   10825              :                       {
   10826            2 :                       case INTEGER_CST:
   10827            2 :                         {
   10828            2 :                           {
   10829            2 :                             tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _q40, _q41, _p1 };
   10830            2 :                             tree res = generic_simplify_457 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR, MINUS_EXPR);
   10831            2 :                             if (res) return res;
   10832              :                           }
   10833            0 :                           break;
   10834              :                         }
   10835              :                       default:;
   10836              :                       }
   10837              :                     break;
   10838              :                   }
   10839              :                 default:;
   10840              :                 }
   10841              :               break;
   10842              :             }
   10843            4 :           case BIT_XOR_EXPR:
   10844            4 :             {
   10845            4 :               tree _q40 = TREE_OPERAND (_q21, 0);
   10846            4 :               tree _q41 = TREE_OPERAND (_q21, 1);
   10847            4 :               switch (TREE_CODE (_q41))
   10848              :                 {
   10849            2 :                 case INTEGER_CST:
   10850            2 :                   {
   10851            2 :                     switch (TREE_CODE (_p1))
   10852              :                       {
   10853            2 :                       case INTEGER_CST:
   10854            2 :                         {
   10855            2 :                           {
   10856            2 :                             tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _q40, _q41, _p1 };
   10857            2 :                             tree res = generic_simplify_457 (loc, type, _p0, _p1, captures, BIT_XOR_EXPR, MINUS_EXPR);
   10858            2 :                             if (res) return res;
   10859              :                           }
   10860            0 :                           break;
   10861              :                         }
   10862              :                       default:;
   10863              :                       }
   10864              :                     break;
   10865              :                   }
   10866              :                 default:;
   10867              :                 }
   10868              :               break;
   10869              :             }
   10870       680150 :           default:;
   10871              :           }
   10872       680150 :         switch (TREE_CODE (_p1))
   10873              :           {
   10874       679948 :           case INTEGER_CST:
   10875       679948 :             {
   10876       679948 :               {
   10877       679948 :                 tree captures[4] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1 };
   10878       679948 :                 tree res = generic_simplify_458 (loc, type, _p0, _p1, captures, MINUS_EXPR);
   10879       679948 :                 if (res) return res;
   10880              :               }
   10881       489530 :               break;
   10882              :             }
   10883              :           default:;
   10884              :           }
   10885              :         break;
   10886              :       }
   10887        47190 :     case NEGATE_EXPR:
   10888        47190 :       {
   10889        47190 :         tree _q20 = TREE_OPERAND (_p0, 0);
   10890        47190 :         switch (TREE_CODE (_q20))
   10891              :           {
   10892           25 :           case BIT_AND_EXPR:
   10893           25 :             {
   10894           25 :               tree _q30 = TREE_OPERAND (_q20, 0);
   10895           25 :               tree _q31 = TREE_OPERAND (_q20, 1);
   10896           25 :               switch (TREE_CODE (_q31))
   10897              :                 {
   10898           21 :                 case INTEGER_CST:
   10899           21 :                   {
   10900           21 :                     switch (TREE_CODE (_p1))
   10901              :                       {
   10902           11 :                       case INTEGER_CST:
   10903           11 :                         {
   10904           11 :                           {
   10905           11 :                             tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q20, _q30, _q31, _p1 };
   10906           11 :                             tree res = generic_simplify_459 (loc, type, _p0, _p1, captures, BIT_AND_EXPR);
   10907           11 :                             if (res) return res;
   10908              :                           }
   10909            8 :                           break;
   10910              :                         }
   10911              :                       default:;
   10912              :                       }
   10913              :                     break;
   10914              :                   }
   10915              :                 default:;
   10916              :                 }
   10917              :               break;
   10918              :             }
   10919           44 :           case BIT_IOR_EXPR:
   10920           44 :             {
   10921           44 :               tree _q30 = TREE_OPERAND (_q20, 0);
   10922           44 :               tree _q31 = TREE_OPERAND (_q20, 1);
   10923           44 :               switch (TREE_CODE (_q31))
   10924              :                 {
   10925            2 :                 case INTEGER_CST:
   10926            2 :                   {
   10927            2 :                     switch (TREE_CODE (_p1))
   10928              :                       {
   10929            2 :                       case INTEGER_CST:
   10930            2 :                         {
   10931            2 :                           {
   10932            2 :                             tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q20, _q30, _q31, _p1 };
   10933            2 :                             tree res = generic_simplify_459 (loc, type, _p0, _p1, captures, BIT_IOR_EXPR);
   10934            2 :                             if (res) return res;
   10935              :                           }
   10936            0 :                           break;
   10937              :                         }
   10938              :                       default:;
   10939              :                       }
   10940              :                     break;
   10941              :                   }
   10942              :                 default:;
   10943              :                 }
   10944              :               break;
   10945              :             }
   10946            4 :           case BIT_XOR_EXPR:
   10947            4 :             {
   10948            4 :               tree _q30 = TREE_OPERAND (_q20, 0);
   10949            4 :               tree _q31 = TREE_OPERAND (_q20, 1);
   10950            4 :               switch (TREE_CODE (_q31))
   10951              :                 {
   10952            2 :                 case INTEGER_CST:
   10953            2 :                   {
   10954            2 :                     switch (TREE_CODE (_p1))
   10955              :                       {
   10956            2 :                       case INTEGER_CST:
   10957            2 :                         {
   10958            2 :                           {
   10959            2 :                             tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q20, _q30, _q31, _p1 };
   10960            2 :                             tree res = generic_simplify_459 (loc, type, _p0, _p1, captures, BIT_XOR_EXPR);
   10961            2 :                             if (res) return res;
   10962              :                           }
   10963            0 :                           break;
   10964              :                         }
   10965              :                       default:;
   10966              :                       }
   10967              :                     break;
   10968              :                   }
   10969              :                 default:;
   10970              :                 }
   10971              :               break;
   10972              :             }
   10973        47183 :           default:;
   10974              :           }
   10975        47183 :       if (tree_zero_one_valued_p (_q20))
   10976              :         {
   10977           21 :           {
   10978           21 :             tree captures[2] ATTRIBUTE_UNUSED = { _q20, _p1 };
   10979           21 :             tree res = generic_simplify_460 (loc, type, _p0, _p1, captures);
   10980           21 :             if (res) return res;
   10981              :           }
   10982              :         }
   10983              :         break;
   10984              :       }
   10985      6424456 :     default:;
   10986              :     }
   10987      6424456 :   if (integer_zerop (_p1))
   10988              :     {
   10989         3886 :       {
   10990         3886 :         tree captures[2] ATTRIBUTE_UNUSED = { _p0, _p1 };
   10991         3886 :         if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1673;
   10992         3886 :         {
   10993         3886 :           tree _r;
   10994         3886 :           _r = captures[1];
   10995         3886 :           if (TREE_SIDE_EFFECTS (captures[0]))
   10996           51 :             _r = build2_loc (loc, COMPOUND_EXPR, type, fold_ignored_result (captures[0]), _r);
   10997         3886 :           if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 1012, __FILE__, __LINE__, true);
   10998         3886 :           return _r;
   10999              :         }
   11000            0 : next_after_fail1673:;
   11001              :       }
   11002              :     }
   11003      6420570 :   if (integer_all_onesp (_p1))
   11004              :     {
   11005        45228 :       {
   11006        45228 :         tree captures[1] ATTRIBUTE_UNUSED = { _p0 };
   11007        45228 :         if (TREE_SIDE_EFFECTS (_p1)) goto next_after_fail1674;
   11008        45228 :         if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1674;
   11009        45228 :         {
   11010        45228 :           tree res_op0;
   11011        45228 :           res_op0 = captures[0];
   11012        45228 :           tree _r;
   11013        45228 :           _r = non_lvalue_loc (loc, res_op0);
   11014        45228 :           if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 1013, __FILE__, __LINE__, true);
   11015        45228 :           return _r;
   11016              :         }
   11017              : next_after_fail1674:;
   11018              :       }
   11019              :     }
   11020      6375342 :   if ((_p1 == _p0 && ! TREE_SIDE_EFFECTS (_p1)) || (operand_equal_p (_p1, _p0, 0) && types_match (_p1, _p0)))
   11021              :     {
   11022          131 :       {
   11023          131 :         tree captures[1] ATTRIBUTE_UNUSED = { _p0 };
   11024          131 :         tree res = generic_simplify_126 (loc, type, _p0, _p1, captures, BIT_AND_EXPR);
   11025          131 :         if (res) return res;
   11026              :       }
   11027              :     }
   11028      6375211 :   switch (TREE_CODE (_p1))
   11029              :     {
   11030        52622 :     case BIT_NOT_EXPR:
   11031        52622 :       {
   11032        52622 :         tree _q30 = TREE_OPERAND (_p1, 0);
   11033        52622 :         switch (TREE_CODE (_q30))
   11034              :           {
   11035           13 :           case BIT_AND_EXPR:
   11036           13 :             {
   11037           13 :               tree _q40 = TREE_OPERAND (_q30, 0);
   11038           13 :               tree _q41 = TREE_OPERAND (_q30, 1);
   11039           13 :               if ((_q40 == _p0 && ! TREE_SIDE_EFFECTS (_q40)) || (operand_equal_p (_q40, _p0, 0) && types_match (_q40, _p0)))
   11040              :                 {
   11041            0 :                   {
   11042            0 :                     tree captures[3] ATTRIBUTE_UNUSED = { _p0, _q30, _q41 };
   11043            0 :                     tree res = generic_simplify_127 (loc, type, _p0, _p1, captures, BIT_AND_EXPR);
   11044            0 :                     if (res) return res;
   11045              :                   }
   11046              :                 }
   11047           13 :               if ((_q41 == _p0 && ! TREE_SIDE_EFFECTS (_q41)) || (operand_equal_p (_q41, _p0, 0) && types_match (_q41, _p0)))
   11048              :                 {
   11049            0 :                   {
   11050            0 :                     tree captures[3] ATTRIBUTE_UNUSED = { _p0, _q30, _q40 };
   11051            0 :                     tree res = generic_simplify_127 (loc, type, _p0, _p1, captures, BIT_AND_EXPR);
   11052            0 :                     if (res) return res;
   11053              :                   }
   11054              :                 }
   11055              :               break;
   11056              :             }
   11057              :           default:;
   11058              :           }
   11059              :         break;
   11060              :       }
   11061      6375211 :     default:;
   11062              :     }
   11063      6375211 :   switch (TREE_CODE (_p0))
   11064              :     {
   11065        66891 :     case BIT_NOT_EXPR:
   11066        66891 :       {
   11067        66891 :         tree _q20 = TREE_OPERAND (_p0, 0);
   11068        66891 :         switch (TREE_CODE (_q20))
   11069              :           {
   11070           28 :           case BIT_AND_EXPR:
   11071           28 :             {
   11072           28 :               tree _q30 = TREE_OPERAND (_q20, 0);
   11073           28 :               tree _q31 = TREE_OPERAND (_q20, 1);
   11074           28 :               if ((_p1 == _q30 && ! TREE_SIDE_EFFECTS (_p1)) || (operand_equal_p (_p1, _q30, 0) && types_match (_p1, _q30)))
   11075              :                 {
   11076            4 :                   {
   11077            4 :                     tree captures[3] ATTRIBUTE_UNUSED = { _q30, _q20, _q31 };
   11078            4 :                     tree res = generic_simplify_127 (loc, type, _p0, _p1, captures, BIT_AND_EXPR);
   11079            4 :                     if (res) return res;
   11080              :                   }
   11081              :                 }
   11082           24 :               if ((_p1 == _q31 && ! TREE_SIDE_EFFECTS (_p1)) || (operand_equal_p (_p1, _q31, 0) && types_match (_p1, _q31)))
   11083              :                 {
   11084            3 :                   {
   11085            3 :                     tree captures[3] ATTRIBUTE_UNUSED = { _q31, _q20, _q30 };
   11086            3 :                     tree res = generic_simplify_127 (loc, type, _p0, _p1, captures, BIT_AND_EXPR);
   11087            3 :                     if (res) return res;
   11088              :                   }
   11089              :                 }
   11090           21 :               switch (TREE_CODE (_p1))
   11091              :                 {
   11092            0 :                 case BIT_IOR_EXPR:
   11093            0 :                   {
   11094            0 :                     tree _q60 = TREE_OPERAND (_p1, 0);
   11095            0 :                     tree _q61 = TREE_OPERAND (_p1, 1);
   11096            0 :                     if ((_q60 == _q30 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q30, 0) && types_match (_q60, _q30)))
   11097              :                       {
   11098            0 :                         if ((_q61 == _q31 && ! TREE_SIDE_EFFECTS (_q61)) || (operand_equal_p (_q61, _q31, 0) && types_match (_q61, _q31)))
   11099              :                           {
   11100            0 :                             {
   11101            0 :                               tree captures[2] ATTRIBUTE_UNUSED = { _q30, _q31 };
   11102            0 :                               tree res = generic_simplify_461 (loc, type, _p0, _p1, captures);
   11103            0 :                               if (res) return res;
   11104              :                             }
   11105              :                           }
   11106              :                       }
   11107              :                     break;
   11108              :                   }
   11109              :                 default:;
   11110              :                 }
   11111              :               break;
   11112              :             }
   11113        66884 :           default:;
   11114              :           }
   11115        66884 :         switch (TREE_CODE (_p1))
   11116              :           {
   11117        27556 :           CASE_CONVERT:
   11118        27556 :             {
   11119        27556 :               tree _q40 = TREE_OPERAND (_p1, 0);
   11120        27556 :               switch (TREE_CODE (_q40))
   11121              :                 {
   11122            0 :                 case BIT_NOT_EXPR:
   11123            0 :                   {
   11124            0 :                     tree _q50 = TREE_OPERAND (_q40, 0);
   11125            0 :                     {
   11126            0 :                       tree captures[2] ATTRIBUTE_UNUSED = { _q20, _q50 };
   11127            0 :                       tree res = generic_simplify_131 (loc, type, _p0, _p1, captures, BIT_AND_EXPR, BIT_IOR_EXPR);
   11128            0 :                       if (res) return res;
   11129              :                     }
   11130            0 :                     break;
   11131              :                   }
   11132              :                 default:;
   11133              :                 }
   11134              :               break;
   11135              :             }
   11136           44 :           case BIT_NOT_EXPR:
   11137           44 :             {
   11138           44 :               tree _q40 = TREE_OPERAND (_p1, 0);
   11139           44 :               {
   11140           44 :                 tree captures[2] ATTRIBUTE_UNUSED = { _q20, _q40 };
   11141           44 :                 tree res = generic_simplify_131 (loc, type, _p0, _p1, captures, BIT_AND_EXPR, BIT_IOR_EXPR);
   11142           44 :                 if (res) return res;
   11143              :               }
   11144            0 :               break;
   11145              :             }
   11146              :           default:;
   11147              :           }
   11148              :         break;
   11149              :       }
   11150         1585 :     case BIT_IOR_EXPR:
   11151         1585 :       {
   11152         1585 :         tree _q20 = TREE_OPERAND (_p0, 0);
   11153         1585 :         tree _q21 = TREE_OPERAND (_p0, 1);
   11154         1585 :         switch (TREE_CODE (_p1))
   11155              :           {
   11156          169 :           case BIT_NOT_EXPR:
   11157          169 :             {
   11158          169 :               tree _q50 = TREE_OPERAND (_p1, 0);
   11159          169 :               switch (TREE_CODE (_q50))
   11160              :                 {
   11161            0 :                 case BIT_AND_EXPR:
   11162            0 :                   {
   11163            0 :                     tree _q60 = TREE_OPERAND (_q50, 0);
   11164            0 :                     tree _q61 = TREE_OPERAND (_q50, 1);
   11165            0 :                     if ((_q60 == _q20 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q20, 0) && types_match (_q60, _q20)))
   11166              :                       {
   11167            0 :                         if ((_q61 == _q21 && ! TREE_SIDE_EFFECTS (_q61)) || (operand_equal_p (_q61, _q21, 0) && types_match (_q61, _q21)))
   11168              :                           {
   11169            0 :                             {
   11170            0 :                               tree captures[2] ATTRIBUTE_UNUSED = { _q20, _q21 };
   11171            0 :                               tree res = generic_simplify_461 (loc, type, _p0, _p1, captures);
   11172            0 :                               if (res) return res;
   11173              :                             }
   11174              :                           }
   11175              :                       }
   11176              :                     break;
   11177              :                   }
   11178              :                 default:;
   11179              :                 }
   11180              :               break;
   11181              :             }
   11182            2 :           case BIT_XOR_EXPR:
   11183            2 :             {
   11184            2 :               tree _q50 = TREE_OPERAND (_p1, 0);
   11185            2 :               tree _q51 = TREE_OPERAND (_p1, 1);
   11186            2 :               if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
   11187              :                 {
   11188            0 :                   {
   11189            0 :                     tree captures[3] ATTRIBUTE_UNUSED = { _q20, _q21, _q51 };
   11190            0 :                     tree res = generic_simplify_462 (loc, type, _p0, _p1, captures);
   11191            0 :                     if (res) return res;
   11192              :                   }
   11193              :                 }
   11194            2 :               if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
   11195              :                 {
   11196            2 :                   {
   11197            2 :                     tree captures[3] ATTRIBUTE_UNUSED = { _q20, _q21, _q50 };
   11198            2 :                     tree res = generic_simplify_462 (loc, type, _p0, _p1, captures);
   11199            2 :                     if (res) return res;
   11200              :                   }
   11201              :                 }
   11202            2 :               if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
   11203              :                 {
   11204            0 :                   {
   11205            0 :                     tree captures[3] ATTRIBUTE_UNUSED = { _q21, _q20, _q51 };
   11206            0 :                     tree res = generic_simplify_462 (loc, type, _p0, _p1, captures);
   11207            0 :                     if (res) return res;
   11208              :                   }
   11209              :                 }
   11210            2 :               if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
   11211              :                 {
   11212            0 :                   {
   11213            0 :                     tree captures[3] ATTRIBUTE_UNUSED = { _q21, _q20, _q50 };
   11214            0 :                     tree res = generic_simplify_462 (loc, type, _p0, _p1, captures);
   11215            0 :                     if (res) return res;
   11216              :                   }
   11217              :                 }
   11218              :               break;
   11219              :             }
   11220         1585 :           default:;
   11221              :           }
   11222         1585 :         switch (TREE_CODE (_q20))
   11223              :           {
   11224          127 :           case BIT_NOT_EXPR:
   11225          127 :             {
   11226          127 :               tree _q30 = TREE_OPERAND (_q20, 0);
   11227          127 :               switch (TREE_CODE (_p1))
   11228              :                 {
   11229            2 :                 case BIT_IOR_EXPR:
   11230            2 :                   {
   11231            2 :                     tree _q60 = TREE_OPERAND (_p1, 0);
   11232            2 :                     tree _q61 = TREE_OPERAND (_p1, 1);
   11233            2 :                     if ((_q60 == _q30 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q30, 0) && types_match (_q60, _q30)))
   11234              :                       {
   11235            0 :                         switch (TREE_CODE (_q61))
   11236              :                           {
   11237            0 :                           case BIT_NOT_EXPR:
   11238            0 :                             {
   11239            0 :                               tree _q80 = TREE_OPERAND (_q61, 0);
   11240            0 :                               if ((_q80 == _q21 && ! TREE_SIDE_EFFECTS (_q80)) || (operand_equal_p (_q80, _q21, 0) && types_match (_q80, _q21)))
   11241              :                                 {
   11242            0 :                                   {
   11243            0 :                                     tree captures[4] ATTRIBUTE_UNUSED = { _p0, _q30, _q21, _p1 };
   11244            0 :                                     tree res = generic_simplify_463 (loc, type, _p0, _p1, captures);
   11245            0 :                                     if (res) return res;
   11246              :                                   }
   11247              :                                 }
   11248              :                               break;
   11249              :                             }
   11250              :                           default:;
   11251              :                           }
   11252              :                       }
   11253            2 :                     switch (TREE_CODE (_q60))
   11254              :                       {
   11255            2 :                       case BIT_NOT_EXPR:
   11256            2 :                         {
   11257            2 :                           tree _q70 = TREE_OPERAND (_q60, 0);
   11258            2 :                           if ((_q70 == _q21 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q21, 0) && types_match (_q70, _q21)))
   11259              :                             {
   11260            2 :                               if ((_q61 == _q30 && ! TREE_SIDE_EFFECTS (_q61)) || (operand_equal_p (_q61, _q30, 0) && types_match (_q61, _q30)))
   11261              :                                 {
   11262            2 :                                   {
   11263            2 :                                     tree captures[4] ATTRIBUTE_UNUSED = { _p0, _q30, _q21, _p1 };
   11264            2 :                                     tree res = generic_simplify_463 (loc, type, _p0, _p1, captures);
   11265            2 :                                     if (res) return res;
   11266              :                                   }
   11267              :                                 }
   11268              :                             }
   11269              :                           break;
   11270              :                         }
   11271              :                       default:;
   11272              :                       }
   11273              :                     break;
   11274              :                   }
   11275              :                 default:;
   11276              :                 }
   11277              :               break;
   11278              :             }
   11279         1583 :           default:;
   11280              :           }
   11281         1583 :         switch (TREE_CODE (_q21))
   11282              :           {
   11283            0 :           case BIT_NOT_EXPR:
   11284            0 :             {
   11285            0 :               tree _q40 = TREE_OPERAND (_q21, 0);
   11286            0 :               switch (TREE_CODE (_p1))
   11287              :                 {
   11288            0 :                 case BIT_IOR_EXPR:
   11289            0 :                   {
   11290            0 :                     tree _q60 = TREE_OPERAND (_p1, 0);
   11291            0 :                     tree _q61 = TREE_OPERAND (_p1, 1);
   11292            0 :                     if ((_q60 == _q40 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q40, 0) && types_match (_q60, _q40)))
   11293              :                       {
   11294            0 :                         switch (TREE_CODE (_q61))
   11295              :                           {
   11296            0 :                           case BIT_NOT_EXPR:
   11297            0 :                             {
   11298            0 :                               tree _q80 = TREE_OPERAND (_q61, 0);
   11299            0 :                               if ((_q80 == _q20 && ! TREE_SIDE_EFFECTS (_q80)) || (operand_equal_p (_q80, _q20, 0) && types_match (_q80, _q20)))
   11300              :                                 {
   11301            0 :                                   {
   11302            0 :                                     tree captures[4] ATTRIBUTE_UNUSED = { _p0, _q40, _q20, _p1 };
   11303            0 :                                     tree res = generic_simplify_463 (loc, type, _p0, _p1, captures);
   11304            0 :                                     if (res) return res;
   11305              :                                   }
   11306              :                                 }
   11307              :                               break;
   11308              :                             }
   11309              :                           default:;
   11310              :                           }
   11311              :                       }
   11312            0 :                     switch (TREE_CODE (_q60))
   11313              :                       {
   11314            0 :                       case BIT_NOT_EXPR:
   11315            0 :                         {
   11316            0 :                           tree _q70 = TREE_OPERAND (_q60, 0);
   11317            0 :                           if ((_q70 == _q20 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q20, 0) && types_match (_q70, _q20)))
   11318              :                             {
   11319            0 :                               if ((_q61 == _q40 && ! TREE_SIDE_EFFECTS (_q61)) || (operand_equal_p (_q61, _q40, 0) && types_match (_q61, _q40)))
   11320              :                                 {
   11321            0 :                                   {
   11322            0 :                                     tree captures[4] ATTRIBUTE_UNUSED = { _p0, _q40, _q20, _p1 };
   11323            0 :                                     tree res = generic_simplify_463 (loc, type, _p0, _p1, captures);
   11324            0 :                                     if (res) return res;
   11325              :                                   }
   11326              :                                 }
   11327              :                             }
   11328              :                           break;
   11329              :                         }
   11330              :                       default:;
   11331              :                       }
   11332              :                     break;
   11333              :                   }
   11334              :                 default:;
   11335              :                 }
   11336              :               break;
   11337              :             }
   11338              :           default:;
   11339              :           }
   11340              :         break;
   11341              :       }
   11342        61805 :     case BIT_XOR_EXPR:
   11343        61805 :       {
   11344        61805 :         tree _q20 = TREE_OPERAND (_p0, 0);
   11345        61805 :         tree _q21 = TREE_OPERAND (_p0, 1);
   11346        61805 :         switch (TREE_CODE (_p1))
   11347              :           {
   11348          133 :           case BIT_IOR_EXPR:
   11349          133 :             {
   11350          133 :               tree _q50 = TREE_OPERAND (_p1, 0);
   11351          133 :               tree _q51 = TREE_OPERAND (_p1, 1);
   11352          133 :               if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
   11353              :                 {
   11354           18 :                   {
   11355           18 :                     tree captures[3] ATTRIBUTE_UNUSED = { _q50, _q20, _q21 };
   11356           18 :                     tree res = generic_simplify_462 (loc, type, _p0, _p1, captures);
   11357           18 :                     if (res) return res;
   11358              :                   }
   11359              :                 }
   11360          133 :               if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
   11361              :                 {
   11362           33 :                   {
   11363           33 :                     tree captures[3] ATTRIBUTE_UNUSED = { _q50, _q21, _q20 };
   11364           33 :                     tree res = generic_simplify_462 (loc, type, _p0, _p1, captures);
   11365           33 :                     if (res) return res;
   11366              :                   }
   11367              :                 }
   11368          133 :               if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
   11369              :                 {
   11370           30 :                   {
   11371           30 :                     tree captures[3] ATTRIBUTE_UNUSED = { _q51, _q20, _q21 };
   11372           30 :                     tree res = generic_simplify_462 (loc, type, _p0, _p1, captures);
   11373           30 :                     if (res) return res;
   11374              :                   }
   11375              :                 }
   11376          133 :               if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
   11377              :                 {
   11378           21 :                   {
   11379           21 :                     tree captures[3] ATTRIBUTE_UNUSED = { _q51, _q21, _q20 };
   11380           21 :                     tree res = generic_simplify_462 (loc, type, _p0, _p1, captures);
   11381           21 :                     if (res) return res;
   11382              :                   }
   11383              :                 }
   11384              :               break;
   11385              :             }
   11386        61805 :           default:;
   11387              :           }
   11388        61805 :         if ((_p1 == _q21 && ! TREE_SIDE_EFFECTS (_p1)) || (operand_equal_p (_p1, _q21, 0) && types_match (_p1, _q21)))
   11389              :           {
   11390           31 :             {
   11391           31 :               tree captures[3] ATTRIBUTE_UNUSED = { _p0, _q20, _q21 };
   11392           31 :               tree res = generic_simplify_28 (loc, type, _p0, _p1, captures, BIT_AND_EXPR, BIT_XOR_EXPR);
   11393           31 :               if (res) return res;
   11394              :             }
   11395              :           }
   11396        61774 :         if ((_p1 == _q20 && ! TREE_SIDE_EFFECTS (_p1)) || (operand_equal_p (_p1, _q20, 0) && types_match (_p1, _q20)))
   11397              :           {
   11398            2 :             {
   11399            2 :               tree captures[3] ATTRIBUTE_UNUSED = { _p0, _q21, _q20 };
   11400            2 :               tree res = generic_simplify_28 (loc, type, _p0, _p1, captures, BIT_AND_EXPR, BIT_XOR_EXPR);
   11401            2 :               if (res) return res;
   11402              :             }
   11403              :           }
   11404              :         break;
   11405              :       }
   11406      1966271 :     CASE_CONVERT:
   11407      1966271 :       {
   11408      1966271 :         tree _q20 = TREE_OPERAND (_p0, 0);
   11409      1966271 :         switch (TREE_CODE (_q20))
   11410              :           {
   11411          164 :           case BIT_NOT_EXPR:
   11412          164 :             {
   11413          164 :               tree _q30 = TREE_OPERAND (_q20, 0);
   11414          164 :               switch (TREE_CODE (_p1))
   11415              :                 {
   11416           34 :                 CASE_CONVERT:
   11417           34 :                   {
   11418           34 :                     tree _q50 = TREE_OPERAND (_p1, 0);
   11419           34 :                     switch (TREE_CODE (_q50))
   11420              :                       {
   11421            0 :                       case BIT_NOT_EXPR:
   11422            0 :                         {
   11423            0 :                           tree _q60 = TREE_OPERAND (_q50, 0);
   11424            0 :                           {
   11425            0 :                             tree captures[2] ATTRIBUTE_UNUSED = { _q30, _q60 };
   11426            0 :                             tree res = generic_simplify_131 (loc, type, _p0, _p1, captures, BIT_AND_EXPR, BIT_IOR_EXPR);
   11427            0 :                             if (res) return res;
   11428              :                           }
   11429            0 :                           break;
   11430              :                         }
   11431              :                       default:;
   11432              :                       }
   11433              :                     break;
   11434              :                   }
   11435            1 :                 case BIT_NOT_EXPR:
   11436            1 :                   {
   11437            1 :                     tree _q50 = TREE_OPERAND (_p1, 0);
   11438            1 :                     {
   11439            1 :                       tree captures[2] ATTRIBUTE_UNUSED = { _q30, _q50 };
   11440            1 :                       tree res = generic_simplify_131 (loc, type, _p0, _p1, captures, BIT_AND_EXPR, BIT_IOR_EXPR);
   11441            1 :                       if (res) return res;
   11442              :                     }
   11443            0 :                     break;
   11444              :                   }
   11445              :                 default:;
   11446              :                 }
   11447              :               break;
   11448              :             }
   11449              :           default:;
   11450              :           }
   11451              :         break;
   11452              :       }
   11453      6375124 :     default:;
   11454              :     }
   11455      6375124 :   switch (TREE_CODE (_p1))
   11456              :     {
   11457          254 :     case BIT_XOR_EXPR:
   11458          254 :       {
   11459          254 :         tree _q30 = TREE_OPERAND (_p1, 0);
   11460          254 :         tree _q31 = TREE_OPERAND (_p1, 1);
   11461          254 :         if ((_q31 == _p0 && ! TREE_SIDE_EFFECTS (_q31)) || (operand_equal_p (_q31, _p0, 0) && types_match (_q31, _p0)))
   11462              :           {
   11463            0 :             {
   11464            0 :               tree captures[3] ATTRIBUTE_UNUSED = { _p1, _q30, _p0 };
   11465            0 :               tree res = generic_simplify_28 (loc, type, _p0, _p1, captures, BIT_AND_EXPR, BIT_XOR_EXPR);
   11466            0 :               if (res) return res;
   11467              :             }
   11468              :           }
   11469          254 :         if ((_q30 == _p0 && ! TREE_SIDE_EFFECTS (_q30)) || (operand_equal_p (_q30, _p0, 0) && types_match (_q30, _p0)))
   11470              :           {
   11471            1 :             {
   11472            1 :               tree captures[3] ATTRIBUTE_UNUSED = { _p1, _q31, _p0 };
   11473            1 :               tree res = generic_simplify_28 (loc, type, _p0, _p1, captures, BIT_AND_EXPR, BIT_XOR_EXPR);
   11474            1 :               if (res) return res;
   11475              :             }
   11476              :           }
   11477              :         break;
   11478              :       }
   11479      6375123 :     default:;
   11480              :     }
   11481      6375123 :   switch (TREE_CODE (_p0))
   11482              :     {
   11483      1966270 :     CASE_CONVERT:
   11484      1966270 :       {
   11485      1966270 :         tree _q20 = TREE_OPERAND (_p0, 0);
   11486      1966270 :         switch (TREE_CODE (_q20))
   11487              :           {
   11488          171 :           case BIT_IOR_EXPR:
   11489          171 :             {
   11490          171 :               tree _q30 = TREE_OPERAND (_q20, 0);
   11491          171 :               tree _q31 = TREE_OPERAND (_q20, 1);
   11492          171 :               switch (TREE_CODE (_p1))
   11493              :                 {
   11494           12 :                 CASE_CONVERT:
   11495           12 :                   {
   11496           12 :                     tree _q60 = TREE_OPERAND (_p1, 0);
   11497           12 :                     switch (TREE_CODE (_q60))
   11498              :                       {
   11499            0 :                       case BIT_IOR_EXPR:
   11500            0 :                         {
   11501            0 :                           tree _q70 = TREE_OPERAND (_q60, 0);
   11502            0 :                           tree _q71 = TREE_OPERAND (_q60, 1);
   11503            0 :                           if ((_q70 == _q30 && ! TREE_SIDE_EFFECTS (_q70)) || operand_equal_p (_q70, _q30, 0))
   11504              :                             {
   11505            0 :                               {
   11506            0 :                                 tree captures[4] ATTRIBUTE_UNUSED = { _q30, _q31, _q71, _q30 };
   11507            0 :                                 tree res = generic_simplify_29 (loc, type, _p0, _p1, captures, BIT_AND_EXPR, BIT_IOR_EXPR);
   11508            0 :                                 if (res) return res;
   11509              :                               }
   11510              :                             }
   11511            0 :                           if ((_q71 == _q30 && ! TREE_SIDE_EFFECTS (_q71)) || operand_equal_p (_q71, _q30, 0))
   11512              :                             {
   11513            0 :                               {
   11514            0 :                                 tree captures[4] ATTRIBUTE_UNUSED = { _q30, _q31, _q70, _q30 };
   11515            0 :                                 tree res = generic_simplify_29 (loc, type, _p0, _p1, captures, BIT_AND_EXPR, BIT_IOR_EXPR);
   11516            0 :                                 if (res) return res;
   11517              :                               }
   11518              :                             }
   11519            0 :                           if ((_q70 == _q31 && ! TREE_SIDE_EFFECTS (_q70)) || operand_equal_p (_q70, _q31, 0))
   11520              :                             {
   11521            0 :                               {
   11522            0 :                                 tree captures[4] ATTRIBUTE_UNUSED = { _q31, _q30, _q71, _q31 };
   11523            0 :                                 tree res = generic_simplify_29 (loc, type, _p0, _p1, captures, BIT_AND_EXPR, BIT_IOR_EXPR);
   11524            0 :                                 if (res) return res;
   11525              :                               }
   11526              :                             }
   11527            0 :                           if ((_q71 == _q31 && ! TREE_SIDE_EFFECTS (_q71)) || operand_equal_p (_q71, _q31, 0))
   11528              :                             {
   11529            0 :                               {
   11530            0 :                                 tree captures[4] ATTRIBUTE_UNUSED = { _q31, _q30, _q70, _q31 };
   11531            0 :                                 tree res = generic_simplify_29 (loc, type, _p0, _p1, captures, BIT_AND_EXPR, BIT_IOR_EXPR);
   11532            0 :                                 if (res) return res;
   11533              :                               }
   11534              :                             }
   11535              :                           break;
   11536              :                         }
   11537              :                       default:;
   11538              :                       }
   11539              :                     break;
   11540              :                   }
   11541              :                 default:;
   11542              :                 }
   11543              :               break;
   11544              :             }
   11545           40 :           case BIT_AND_EXPR:
   11546           40 :             {
   11547           40 :               tree _q30 = TREE_OPERAND (_q20, 0);
   11548           40 :               tree _q31 = TREE_OPERAND (_q20, 1);
   11549           40 :               switch (TREE_CODE (_p1))
   11550              :                 {
   11551            0 :                 CASE_CONVERT:
   11552            0 :                   {
   11553            0 :                     tree _q60 = TREE_OPERAND (_p1, 0);
   11554            0 :                     if ((_q60 == _q31 && ! TREE_SIDE_EFFECTS (_q60)) || operand_equal_p (_q60, _q31, 0))
   11555              :                       {
   11556            0 :                         {
   11557            0 :                           tree captures[4] ATTRIBUTE_UNUSED = { _p0, _q30, _q31, _q31 };
   11558            0 :                           tree res = generic_simplify_118 (loc, type, _p0, _p1, captures, BIT_AND_EXPR);
   11559            0 :                           if (res) return res;
   11560              :                         }
   11561              :                       }
   11562            0 :                     if ((_q60 == _q30 && ! TREE_SIDE_EFFECTS (_q60)) || operand_equal_p (_q60, _q30, 0))
   11563              :                       {
   11564            0 :                         {
   11565            0 :                           tree captures[4] ATTRIBUTE_UNUSED = { _p0, _q31, _q30, _q30 };
   11566            0 :                           tree res = generic_simplify_118 (loc, type, _p0, _p1, captures, BIT_AND_EXPR);
   11567            0 :                           if (res) return res;
   11568              :                         }
   11569              :                       }
   11570              :                     break;
   11571              :                   }
   11572           40 :                 default:;
   11573              :                 }
   11574           40 :               if ((_p1 == _q31 && ! TREE_SIDE_EFFECTS (_p1)) || operand_equal_p (_p1, _q31, 0))
   11575              :                 {
   11576            0 :                   {
   11577            0 :                     tree captures[4] ATTRIBUTE_UNUSED = { _p0, _q30, _q31, _q31 };
   11578            0 :                     tree res = generic_simplify_118 (loc, type, _p0, _p1, captures, BIT_AND_EXPR);
   11579            0 :                     if (res) return res;
   11580              :                   }
   11581              :                 }
   11582           40 :               if ((_p1 == _q30 && ! TREE_SIDE_EFFECTS (_p1)) || operand_equal_p (_p1, _q30, 0))
   11583              :                 {
   11584            0 :                   {
   11585            0 :                     tree captures[4] ATTRIBUTE_UNUSED = { _p0, _q31, _q30, _q30 };
   11586            0 :                     tree res = generic_simplify_118 (loc, type, _p0, _p1, captures, BIT_AND_EXPR);
   11587            0 :                     if (res) return res;
   11588              :                   }
   11589              :                 }
   11590              :               break;
   11591              :             }
   11592      1966270 :           default:;
   11593              :           }
   11594      1966270 :         switch (TREE_CODE (_p1))
   11595              :           {
   11596       805343 :           CASE_CONVERT:
   11597       805343 :             {
   11598       805343 :               tree _q40 = TREE_OPERAND (_p1, 0);
   11599       805343 :               switch (TREE_CODE (_q40))
   11600              :                 {
   11601            0 :                 case BIT_AND_EXPR:
   11602            0 :                   {
   11603            0 :                     tree _q50 = TREE_OPERAND (_q40, 0);
   11604            0 :                     tree _q51 = TREE_OPERAND (_q40, 1);
   11605            0 :                     if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || operand_equal_p (_q51, _q20, 0))
   11606              :                       {
   11607            0 :                         {
   11608            0 :                           tree captures[4] ATTRIBUTE_UNUSED = { _p1, _q50, _q51, _q20 };
   11609            0 :                           tree res = generic_simplify_133 (loc, type, _p0, _p1, captures, BIT_AND_EXPR);
   11610            0 :                           if (res) return res;
   11611              :                         }
   11612              :                       }
   11613            0 :                     if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || operand_equal_p (_q50, _q20, 0))
   11614              :                       {
   11615            0 :                         {
   11616            0 :                           tree captures[4] ATTRIBUTE_UNUSED = { _p1, _q51, _q50, _q20 };
   11617            0 :                           tree res = generic_simplify_133 (loc, type, _p0, _p1, captures, BIT_AND_EXPR);
   11618            0 :                           if (res) return res;
   11619              :                         }
   11620              :                       }
   11621              :                     break;
   11622              :                   }
   11623              :                 default:;
   11624              :                 }
   11625              :               break;
   11626              :             }
   11627           47 :           case BIT_AND_EXPR:
   11628           47 :             {
   11629           47 :               tree _q40 = TREE_OPERAND (_p1, 0);
   11630           47 :               tree _q41 = TREE_OPERAND (_p1, 1);
   11631           47 :               if ((_q41 == _q20 && ! TREE_SIDE_EFFECTS (_q41)) || operand_equal_p (_q41, _q20, 0))
   11632              :                 {
   11633            0 :                   {
   11634            0 :                     tree captures[4] ATTRIBUTE_UNUSED = { _p1, _q40, _q41, _q20 };
   11635            0 :                     tree res = generic_simplify_133 (loc, type, _p0, _p1, captures, BIT_AND_EXPR);
   11636            0 :                     if (res) return res;
   11637              :                   }
   11638              :                 }
   11639           47 :               if ((_q40 == _q20 && ! TREE_SIDE_EFFECTS (_q40)) || operand_equal_p (_q40, _q20, 0))
   11640              :                 {
   11641            0 :                   {
   11642            0 :                     tree captures[4] ATTRIBUTE_UNUSED = { _p1, _q41, _q40, _q20 };
   11643            0 :                     tree res = generic_simplify_133 (loc, type, _p0, _p1, captures, BIT_AND_EXPR);
   11644            0 :                     if (res) return res;
   11645              :                   }
   11646              :                 }
   11647              :               break;
   11648              :             }
   11649              :           default:;
   11650              :           }
   11651              :         break;
   11652              :       }
   11653         1583 :     case BIT_IOR_EXPR:
   11654         1583 :       {
   11655         1583 :         tree _q20 = TREE_OPERAND (_p0, 0);
   11656         1583 :         tree _q21 = TREE_OPERAND (_p0, 1);
   11657         1583 :         switch (TREE_CODE (_p1))
   11658              :           {
   11659            9 :           case BIT_IOR_EXPR:
   11660            9 :             {
   11661            9 :               tree _q50 = TREE_OPERAND (_p1, 0);
   11662            9 :               tree _q51 = TREE_OPERAND (_p1, 1);
   11663            9 :               if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || operand_equal_p (_q50, _q20, 0))
   11664              :                 {
   11665            0 :                   {
   11666            0 :                     tree captures[4] ATTRIBUTE_UNUSED = { _q20, _q21, _q51, _q20 };
   11667            0 :                     tree res = generic_simplify_29 (loc, type, _p0, _p1, captures, BIT_AND_EXPR, BIT_IOR_EXPR);
   11668            0 :                     if (res) return res;
   11669              :                   }
   11670              :                 }
   11671            9 :               if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || operand_equal_p (_q51, _q20, 0))
   11672              :                 {
   11673            0 :                   {
   11674            0 :                     tree captures[4] ATTRIBUTE_UNUSED = { _q20, _q21, _q50, _q20 };
   11675            0 :                     tree res = generic_simplify_29 (loc, type, _p0, _p1, captures, BIT_AND_EXPR, BIT_IOR_EXPR);
   11676            0 :                     if (res) return res;
   11677              :                   }
   11678              :                 }
   11679            9 :               if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || operand_equal_p (_q50, _q21, 0))
   11680              :                 {
   11681            0 :                   {
   11682            0 :                     tree captures[4] ATTRIBUTE_UNUSED = { _q21, _q20, _q51, _q21 };
   11683            0 :                     tree res = generic_simplify_29 (loc, type, _p0, _p1, captures, BIT_AND_EXPR, BIT_IOR_EXPR);
   11684            0 :                     if (res) return res;
   11685              :                   }
   11686              :                 }
   11687            9 :               if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || operand_equal_p (_q51, _q21, 0))
   11688              :                 {
   11689            0 :                   {
   11690            0 :                     tree captures[4] ATTRIBUTE_UNUSED = { _q21, _q20, _q50, _q21 };
   11691            0 :                     tree res = generic_simplify_29 (loc, type, _p0, _p1, captures, BIT_AND_EXPR, BIT_IOR_EXPR);
   11692            0 :                     if (res) return res;
   11693              :                   }
   11694              :                 }
   11695              :               break;
   11696              :             }
   11697              :           default:;
   11698              :           }
   11699              :         break;
   11700              :       }
   11701      6375123 :     default:;
   11702              :     }
   11703      6375123 :   switch (TREE_CODE (_p1))
   11704              :     {
   11705       952323 :     CASE_CONVERT:
   11706       952323 :       {
   11707       952323 :         tree _q30 = TREE_OPERAND (_p1, 0);
   11708       952323 :         switch (TREE_CODE (_q30))
   11709              :           {
   11710            8 :           case BIT_AND_EXPR:
   11711            8 :             {
   11712            8 :               tree _q40 = TREE_OPERAND (_q30, 0);
   11713            8 :               tree _q41 = TREE_OPERAND (_q30, 1);
   11714            8 :               if ((_q41 == _p0 && ! TREE_SIDE_EFFECTS (_q41)) || operand_equal_p (_q41, _p0, 0))
   11715              :                 {
   11716            0 :                   {
   11717            0 :                     tree captures[4] ATTRIBUTE_UNUSED = { _p1, _q40, _q41, _p0 };
   11718            0 :                     tree res = generic_simplify_133 (loc, type, _p0, _p1, captures, BIT_AND_EXPR);
   11719            0 :                     if (res) return res;
   11720              :                   }
   11721              :                 }
   11722            8 :               if ((_q40 == _p0 && ! TREE_SIDE_EFFECTS (_q40)) || operand_equal_p (_q40, _p0, 0))
   11723              :                 {
   11724            0 :                   {
   11725            0 :                     tree captures[4] ATTRIBUTE_UNUSED = { _p1, _q41, _q40, _p0 };
   11726            0 :                     tree res = generic_simplify_133 (loc, type, _p0, _p1, captures, BIT_AND_EXPR);
   11727            0 :                     if (res) return res;
   11728              :                   }
   11729              :                 }
   11730              :               break;
   11731              :             }
   11732              :           default:;
   11733              :           }
   11734              :         break;
   11735              :       }
   11736      6375123 :     default:;
   11737              :     }
   11738      6375123 :   switch (TREE_CODE (_p0))
   11739              :     {
   11740         1591 :     case BIT_AND_EXPR:
   11741         1591 :       {
   11742         1591 :         tree _q20 = TREE_OPERAND (_p0, 0);
   11743         1591 :         tree _q21 = TREE_OPERAND (_p0, 1);
   11744         1591 :         switch (TREE_CODE (_p1))
   11745              :           {
   11746           82 :           CASE_CONVERT:
   11747           82 :             {
   11748           82 :               tree _q50 = TREE_OPERAND (_p1, 0);
   11749           82 :               if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || operand_equal_p (_q50, _q21, 0))
   11750              :                 {
   11751            0 :                   {
   11752            0 :                     tree captures[4] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _q21 };
   11753            0 :                     tree res = generic_simplify_118 (loc, type, _p0, _p1, captures, BIT_AND_EXPR);
   11754            0 :                     if (res) return res;
   11755              :                   }
   11756              :                 }
   11757           82 :               if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || operand_equal_p (_q50, _q20, 0))
   11758              :                 {
   11759            0 :                   {
   11760            0 :                     tree captures[4] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _q20 };
   11761            0 :                     tree res = generic_simplify_118 (loc, type, _p0, _p1, captures, BIT_AND_EXPR);
   11762            0 :                     if (res) return res;
   11763              :                   }
   11764              :                 }
   11765              :               break;
   11766              :             }
   11767         1591 :           default:;
   11768              :           }
   11769         1591 :         if ((_p1 == _q21 && ! TREE_SIDE_EFFECTS (_p1)) || operand_equal_p (_p1, _q21, 0))
   11770              :           {
   11771            0 :             {
   11772            0 :               tree captures[4] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _q21 };
   11773            0 :               tree res = generic_simplify_118 (loc, type, _p0, _p1, captures, BIT_AND_EXPR);
   11774            0 :               if (res) return res;
   11775              :             }
   11776              :           }
   11777         1591 :         if ((_p1 == _q20 && ! TREE_SIDE_EFFECTS (_p1)) || operand_equal_p (_p1, _q20, 0))
   11778              :           {
   11779            0 :             {
   11780            0 :               tree captures[4] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _q20 };
   11781            0 :               tree res = generic_simplify_118 (loc, type, _p0, _p1, captures, BIT_AND_EXPR);
   11782            0 :               if (res) return res;
   11783              :             }
   11784              :           }
   11785         1591 :         {
   11786         1591 :           tree captures[3] ATTRIBUTE_UNUSED = { _q20, _q21, _p1 };
   11787         1591 :           tree res = generic_simplify_464 (loc, type, _p0, _p1, captures);
   11788         1591 :           if (res) return res;
   11789              :         }
   11790         1583 :         switch (TREE_CODE (_p1))
   11791              :           {
   11792           82 :           CASE_CONVERT:
   11793           82 :             {
   11794           82 :               tree _q50 = TREE_OPERAND (_p1, 0);
   11795           82 :               switch (TREE_CODE (_q50))
   11796              :                 {
   11797            8 :                 case BIT_AND_EXPR:
   11798            8 :                   {
   11799            8 :                     tree _q60 = TREE_OPERAND (_q50, 0);
   11800            8 :                     tree _q61 = TREE_OPERAND (_q50, 1);
   11801            8 :                     if ((_q60 == _q20 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q20, 0) && types_match (_q60, _q20)))
   11802              :                       {
   11803            0 :                         {
   11804            0 :                           tree captures[7] ATTRIBUTE_UNUSED = { _p0, _p0, _q20, _q21, _p1, _q50, _q61 };
   11805            0 :                           tree res = generic_simplify_135 (loc, type, _p0, _p1, captures, BIT_AND_EXPR);
   11806            0 :                           if (res) return res;
   11807              :                         }
   11808              :                       }
   11809            8 :                     if ((_q61 == _q20 && ! TREE_SIDE_EFFECTS (_q61)) || (operand_equal_p (_q61, _q20, 0) && types_match (_q61, _q20)))
   11810              :                       {
   11811            0 :                         {
   11812            0 :                           tree captures[7] ATTRIBUTE_UNUSED = { _p0, _p0, _q20, _q21, _p1, _q50, _q60 };
   11813            0 :                           tree res = generic_simplify_135 (loc, type, _p0, _p1, captures, BIT_AND_EXPR);
   11814            0 :                           if (res) return res;
   11815              :                         }
   11816              :                       }
   11817            8 :                     if ((_q60 == _q21 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q21, 0) && types_match (_q60, _q21)))
   11818              :                       {
   11819            0 :                         {
   11820            0 :                           tree captures[7] ATTRIBUTE_UNUSED = { _p0, _p0, _q21, _q20, _p1, _q50, _q61 };
   11821            0 :                           tree res = generic_simplify_135 (loc, type, _p0, _p1, captures, BIT_AND_EXPR);
   11822            0 :                           if (res) return res;
   11823              :                         }
   11824              :                       }
   11825            8 :                     if ((_q61 == _q21 && ! TREE_SIDE_EFFECTS (_q61)) || (operand_equal_p (_q61, _q21, 0) && types_match (_q61, _q21)))
   11826              :                       {
   11827            0 :                         {
   11828            0 :                           tree captures[7] ATTRIBUTE_UNUSED = { _p0, _p0, _q21, _q20, _p1, _q50, _q60 };
   11829            0 :                           tree res = generic_simplify_135 (loc, type, _p0, _p1, captures, BIT_AND_EXPR);
   11830            0 :                           if (res) return res;
   11831              :                         }
   11832              :                       }
   11833              :                     break;
   11834              :                   }
   11835              :                 default:;
   11836              :                 }
   11837              :               break;
   11838              :             }
   11839           12 :           case BIT_AND_EXPR:
   11840           12 :             {
   11841           12 :               tree _q50 = TREE_OPERAND (_p1, 0);
   11842           12 :               tree _q51 = TREE_OPERAND (_p1, 1);
   11843           12 :               if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
   11844              :                 {
   11845            0 :                   {
   11846            0 :                     tree captures[7] ATTRIBUTE_UNUSED = { _p0, _p0, _q20, _q21, _p1, _p1, _q51 };
   11847            0 :                     tree res = generic_simplify_136 (loc, type, _p0, _p1, captures, BIT_AND_EXPR);
   11848            0 :                     if (res) return res;
   11849              :                   }
   11850              :                 }
   11851           12 :               if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
   11852              :                 {
   11853            0 :                   {
   11854            0 :                     tree captures[7] ATTRIBUTE_UNUSED = { _p0, _p0, _q20, _q21, _p1, _p1, _q50 };
   11855            0 :                     tree res = generic_simplify_136 (loc, type, _p0, _p1, captures, BIT_AND_EXPR);
   11856            0 :                     if (res) return res;
   11857              :                   }
   11858              :                 }
   11859           12 :               if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
   11860              :                 {
   11861            0 :                   {
   11862            0 :                     tree captures[7] ATTRIBUTE_UNUSED = { _p0, _p0, _q21, _q20, _p1, _p1, _q51 };
   11863            0 :                     tree res = generic_simplify_136 (loc, type, _p0, _p1, captures, BIT_AND_EXPR);
   11864            0 :                     if (res) return res;
   11865              :                   }
   11866              :                 }
   11867           12 :               if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
   11868              :                 {
   11869            0 :                   {
   11870            0 :                     tree captures[7] ATTRIBUTE_UNUSED = { _p0, _p0, _q21, _q20, _p1, _p1, _q50 };
   11871            0 :                     tree res = generic_simplify_136 (loc, type, _p0, _p1, captures, BIT_AND_EXPR);
   11872            0 :                     if (res) return res;
   11873              :                   }
   11874              :                 }
   11875              :               break;
   11876              :             }
   11877              :           default:;
   11878              :           }
   11879              :         break;
   11880              :       }
   11881      6375115 :     default:;
   11882              :     }
   11883      6375115 :   switch (TREE_CODE (_p1))
   11884              :     {
   11885           76 :     case BIT_AND_EXPR:
   11886           76 :       {
   11887           76 :         tree _q30 = TREE_OPERAND (_p1, 0);
   11888           76 :         tree _q31 = TREE_OPERAND (_p1, 1);
   11889           76 :         if ((_q31 == _p0 && ! TREE_SIDE_EFFECTS (_q31)) || operand_equal_p (_q31, _p0, 0))
   11890              :           {
   11891            0 :             {
   11892            0 :               tree captures[4] ATTRIBUTE_UNUSED = { _p1, _q30, _q31, _p0 };
   11893            0 :               tree res = generic_simplify_133 (loc, type, _p0, _p1, captures, BIT_AND_EXPR);
   11894            0 :               if (res) return res;
   11895              :             }
   11896              :           }
   11897           76 :         if ((_q30 == _p0 && ! TREE_SIDE_EFFECTS (_q30)) || operand_equal_p (_q30, _p0, 0))
   11898              :           {
   11899            0 :             {
   11900            0 :               tree captures[4] ATTRIBUTE_UNUSED = { _p1, _q31, _q30, _p0 };
   11901            0 :               tree res = generic_simplify_133 (loc, type, _p0, _p1, captures, BIT_AND_EXPR);
   11902            0 :               if (res) return res;
   11903              :             }
   11904              :           }
   11905           76 :         {
   11906           76 :           tree captures[3] ATTRIBUTE_UNUSED = { _q30, _q31, _p0 };
   11907           76 :           tree res = generic_simplify_464 (loc, type, _p0, _p1, captures);
   11908           76 :           if (res) return res;
   11909              :         }
   11910           76 :         break;
   11911              :       }
   11912      6375115 :     default:;
   11913              :     }
   11914      6375115 :   switch (TREE_CODE (_p0))
   11915              :     {
   11916      1966270 :     CASE_CONVERT:
   11917      1966270 :       {
   11918      1966270 :         tree _q20 = TREE_OPERAND (_p0, 0);
   11919      1966270 :         switch (TREE_CODE (_q20))
   11920              :           {
   11921           40 :           case BIT_AND_EXPR:
   11922           40 :             {
   11923           40 :               tree _q30 = TREE_OPERAND (_q20, 0);
   11924           40 :               tree _q31 = TREE_OPERAND (_q20, 1);
   11925           40 :               switch (TREE_CODE (_p1))
   11926              :                 {
   11927            0 :                 CASE_CONVERT:
   11928            0 :                   {
   11929            0 :                     tree _q60 = TREE_OPERAND (_p1, 0);
   11930            0 :                     switch (TREE_CODE (_q60))
   11931              :                       {
   11932            0 :                       case BIT_AND_EXPR:
   11933            0 :                         {
   11934            0 :                           tree _q70 = TREE_OPERAND (_q60, 0);
   11935            0 :                           tree _q71 = TREE_OPERAND (_q60, 1);
   11936            0 :                           if ((_q70 == _q30 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q30, 0) && types_match (_q70, _q30)))
   11937              :                             {
   11938            0 :                               {
   11939            0 :                                 tree captures[7] ATTRIBUTE_UNUSED = { _p0, _q20, _q30, _q31, _p1, _q60, _q71 };
   11940            0 :                                 tree res = generic_simplify_137 (loc, type, _p0, _p1, captures, BIT_AND_EXPR);
   11941            0 :                                 if (res) return res;
   11942              :                               }
   11943              :                             }
   11944            0 :                           if ((_q71 == _q30 && ! TREE_SIDE_EFFECTS (_q71)) || (operand_equal_p (_q71, _q30, 0) && types_match (_q71, _q30)))
   11945              :                             {
   11946            0 :                               {
   11947            0 :                                 tree captures[7] ATTRIBUTE_UNUSED = { _p0, _q20, _q30, _q31, _p1, _q60, _q70 };
   11948            0 :                                 tree res = generic_simplify_137 (loc, type, _p0, _p1, captures, BIT_AND_EXPR);
   11949            0 :                                 if (res) return res;
   11950              :                               }
   11951              :                             }
   11952            0 :                           if ((_q70 == _q31 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q31, 0) && types_match (_q70, _q31)))
   11953              :                             {
   11954            0 :                               {
   11955            0 :                                 tree captures[7] ATTRIBUTE_UNUSED = { _p0, _q20, _q31, _q30, _p1, _q60, _q71 };
   11956            0 :                                 tree res = generic_simplify_137 (loc, type, _p0, _p1, captures, BIT_AND_EXPR);
   11957            0 :                                 if (res) return res;
   11958              :                               }
   11959              :                             }
   11960            0 :                           if ((_q71 == _q31 && ! TREE_SIDE_EFFECTS (_q71)) || (operand_equal_p (_q71, _q31, 0) && types_match (_q71, _q31)))
   11961              :                             {
   11962            0 :                               {
   11963            0 :                                 tree captures[7] ATTRIBUTE_UNUSED = { _p0, _q20, _q31, _q30, _p1, _q60, _q70 };
   11964            0 :                                 tree res = generic_simplify_137 (loc, type, _p0, _p1, captures, BIT_AND_EXPR);
   11965            0 :                                 if (res) return res;
   11966              :                               }
   11967              :                             }
   11968              :                           break;
   11969              :                         }
   11970              :                       default:;
   11971              :                       }
   11972              :                     break;
   11973              :                   }
   11974            0 :                 case BIT_AND_EXPR:
   11975            0 :                   {
   11976            0 :                     tree _q60 = TREE_OPERAND (_p1, 0);
   11977            0 :                     tree _q61 = TREE_OPERAND (_p1, 1);
   11978            0 :                     if ((_q60 == _q30 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q30, 0) && types_match (_q60, _q30)))
   11979              :                       {
   11980            0 :                         {
   11981            0 :                           tree captures[7] ATTRIBUTE_UNUSED = { _p0, _q20, _q30, _q31, _p1, _p1, _q61 };
   11982            0 :                           tree res = generic_simplify_138 (loc, type, _p0, _p1, captures, BIT_AND_EXPR);
   11983            0 :                           if (res) return res;
   11984              :                         }
   11985              :                       }
   11986            0 :                     if ((_q61 == _q30 && ! TREE_SIDE_EFFECTS (_q61)) || (operand_equal_p (_q61, _q30, 0) && types_match (_q61, _q30)))
   11987              :                       {
   11988            0 :                         {
   11989            0 :                           tree captures[7] ATTRIBUTE_UNUSED = { _p0, _q20, _q30, _q31, _p1, _p1, _q60 };
   11990            0 :                           tree res = generic_simplify_138 (loc, type, _p0, _p1, captures, BIT_AND_EXPR);
   11991            0 :                           if (res) return res;
   11992              :                         }
   11993              :                       }
   11994            0 :                     if ((_q60 == _q31 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q31, 0) && types_match (_q60, _q31)))
   11995              :                       {
   11996            0 :                         {
   11997            0 :                           tree captures[7] ATTRIBUTE_UNUSED = { _p0, _q20, _q31, _q30, _p1, _p1, _q61 };
   11998            0 :                           tree res = generic_simplify_138 (loc, type, _p0, _p1, captures, BIT_AND_EXPR);
   11999            0 :                           if (res) return res;
   12000              :                         }
   12001              :                       }
   12002            0 :                     if ((_q61 == _q31 && ! TREE_SIDE_EFFECTS (_q61)) || (operand_equal_p (_q61, _q31, 0) && types_match (_q61, _q31)))
   12003              :                       {
   12004            0 :                         {
   12005            0 :                           tree captures[7] ATTRIBUTE_UNUSED = { _p0, _q20, _q31, _q30, _p1, _p1, _q60 };
   12006            0 :                           tree res = generic_simplify_138 (loc, type, _p0, _p1, captures, BIT_AND_EXPR);
   12007            0 :                           if (res) return res;
   12008              :                         }
   12009              :                       }
   12010              :                     break;
   12011              :                   }
   12012              :                 default:;
   12013              :                 }
   12014              :               break;
   12015              :             }
   12016      1966270 :           default:;
   12017              :           }
   12018      1966270 :         switch (TREE_CODE (_p1))
   12019              :           {
   12020       805343 :           CASE_CONVERT:
   12021       805343 :             {
   12022       805343 :               tree _q40 = TREE_OPERAND (_p1, 0);
   12023       805343 :               {
   12024       805343 :                 tree captures[4] ATTRIBUTE_UNUSED = { _p0, _q20, _p1, _q40 };
   12025       805343 :                 tree res = generic_simplify_31 (loc, type, _p0, _p1, captures, BIT_AND_EXPR);
   12026       805343 :                 if (res) return res;
   12027              :               }
   12028       805343 :               break;
   12029              :             }
   12030      1966270 :           default:;
   12031              :           }
   12032      1966270 :         {
   12033      1966270 :           tree captures[4] ATTRIBUTE_UNUSED = { _p0, _q20, _p1, _p1 };
   12034      1966270 :           tree res = generic_simplify_32 (loc, type, _p0, _p1, captures, BIT_AND_EXPR);
   12035      1966270 :           if (res) return res;
   12036              :         }
   12037      1966270 :         break;
   12038              :       }
   12039         1583 :     case BIT_IOR_EXPR:
   12040         1583 :       {
   12041         1583 :         tree _q20 = TREE_OPERAND (_p0, 0);
   12042         1583 :         tree _q21 = TREE_OPERAND (_p0, 1);
   12043         1583 :         if ((_p1 == _q20 && ! TREE_SIDE_EFFECTS (_p1)) || (operand_equal_p (_p1, _q20, 0) && types_match (_p1, _q20)))
   12044              :           {
   12045            2 :             {
   12046            2 :               tree captures[2] ATTRIBUTE_UNUSED = { _q20, _q21 };
   12047            2 :               tree res = generic_simplify_139 (loc, type, _p0, _p1, captures, BIT_AND_EXPR, BIT_IOR_EXPR);
   12048            2 :               if (res) return res;
   12049              :             }
   12050              :           }
   12051         1581 :         if ((_p1 == _q21 && ! TREE_SIDE_EFFECTS (_p1)) || (operand_equal_p (_p1, _q21, 0) && types_match (_p1, _q21)))
   12052              :           {
   12053            4 :             {
   12054            4 :               tree captures[2] ATTRIBUTE_UNUSED = { _q21, _q20 };
   12055            4 :               tree res = generic_simplify_139 (loc, type, _p0, _p1, captures, BIT_AND_EXPR, BIT_IOR_EXPR);
   12056            4 :               if (res) return res;
   12057              :             }
   12058              :           }
   12059         1577 :         {
   12060         1577 :           tree captures[3] ATTRIBUTE_UNUSED = { _q20, _q21, _p1 };
   12061         1577 :           tree res = generic_simplify_140 (loc, type, _p0, _p1, captures, BIT_AND_EXPR, BIT_IOR_EXPR);
   12062         1577 :           if (res) return res;
   12063              :         }
   12064         1572 :         {
   12065         1572 :           tree captures[3] ATTRIBUTE_UNUSED = { _q21, _q20, _p1 };
   12066         1572 :           tree res = generic_simplify_140 (loc, type, _p0, _p1, captures, BIT_AND_EXPR, BIT_IOR_EXPR);
   12067         1572 :           if (res) return res;
   12068              :         }
   12069         1572 :         switch (TREE_CODE (_p1))
   12070              :           {
   12071            1 :           case BIT_AND_EXPR:
   12072            1 :             {
   12073            1 :               tree _q50 = TREE_OPERAND (_p1, 0);
   12074            1 :               tree _q51 = TREE_OPERAND (_p1, 1);
   12075            1 :               if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
   12076              :                 {
   12077            1 :                   {
   12078            1 :                     tree captures[4] ATTRIBUTE_UNUSED = { _q20, _q21, _p1, _q51 };
   12079            1 :                     tree res = generic_simplify_141 (loc, type, _p0, _p1, captures, BIT_AND_EXPR, BIT_IOR_EXPR);
   12080            1 :                     if (res) return res;
   12081              :                   }
   12082              :                 }
   12083            0 :               if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
   12084              :                 {
   12085            0 :                   {
   12086            0 :                     tree captures[4] ATTRIBUTE_UNUSED = { _q20, _q21, _p1, _q50 };
   12087            0 :                     tree res = generic_simplify_141 (loc, type, _p0, _p1, captures, BIT_AND_EXPR, BIT_IOR_EXPR);
   12088            0 :                     if (res) return res;
   12089              :                   }
   12090              :                 }
   12091            0 :               if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
   12092              :                 {
   12093            0 :                   {
   12094            0 :                     tree captures[4] ATTRIBUTE_UNUSED = { _q21, _q20, _p1, _q51 };
   12095            0 :                     tree res = generic_simplify_141 (loc, type, _p0, _p1, captures, BIT_AND_EXPR, BIT_IOR_EXPR);
   12096            0 :                     if (res) return res;
   12097              :                   }
   12098              :                 }
   12099            0 :               if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
   12100              :                 {
   12101            0 :                   {
   12102            0 :                     tree captures[4] ATTRIBUTE_UNUSED = { _q21, _q20, _p1, _q50 };
   12103            0 :                     tree res = generic_simplify_141 (loc, type, _p0, _p1, captures, BIT_AND_EXPR, BIT_IOR_EXPR);
   12104            0 :                     if (res) return res;
   12105              :                   }
   12106              :                 }
   12107              :               break;
   12108              :             }
   12109          168 :           case BIT_NOT_EXPR:
   12110          168 :             {
   12111          168 :               tree _q50 = TREE_OPERAND (_p1, 0);
   12112          168 :               switch (TREE_CODE (_q50))
   12113              :                 {
   12114            9 :                 case BIT_IOR_EXPR:
   12115            9 :                   {
   12116            9 :                     tree _q60 = TREE_OPERAND (_q50, 0);
   12117            9 :                     tree _q61 = TREE_OPERAND (_q50, 1);
   12118            9 :                     if ((_q60 == _q21 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q21, 0) && types_match (_q60, _q21)))
   12119              :                       {
   12120            0 :                         {
   12121            0 :                           tree captures[4] ATTRIBUTE_UNUSED = { _q20, _q21, _p1, _q61 };
   12122            0 :                           tree res = generic_simplify_142 (loc, type, _p0, _p1, captures, BIT_AND_EXPR, BIT_IOR_EXPR);
   12123            0 :                           if (res) return res;
   12124              :                         }
   12125              :                       }
   12126            9 :                     if ((_q61 == _q21 && ! TREE_SIDE_EFFECTS (_q61)) || (operand_equal_p (_q61, _q21, 0) && types_match (_q61, _q21)))
   12127              :                       {
   12128            1 :                         {
   12129            1 :                           tree captures[4] ATTRIBUTE_UNUSED = { _q20, _q21, _p1, _q60 };
   12130            1 :                           tree res = generic_simplify_142 (loc, type, _p0, _p1, captures, BIT_AND_EXPR, BIT_IOR_EXPR);
   12131            1 :                           if (res) return res;
   12132              :                         }
   12133              :                       }
   12134            8 :                     if ((_q60 == _q20 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q20, 0) && types_match (_q60, _q20)))
   12135              :                       {
   12136            0 :                         {
   12137            0 :                           tree captures[4] ATTRIBUTE_UNUSED = { _q21, _q20, _p1, _q61 };
   12138            0 :                           tree res = generic_simplify_142 (loc, type, _p0, _p1, captures, BIT_AND_EXPR, BIT_IOR_EXPR);
   12139            0 :                           if (res) return res;
   12140              :                         }
   12141              :                       }
   12142            8 :                     if ((_q61 == _q20 && ! TREE_SIDE_EFFECTS (_q61)) || (operand_equal_p (_q61, _q20, 0) && types_match (_q61, _q20)))
   12143              :                       {
   12144            0 :                         {
   12145            0 :                           tree captures[4] ATTRIBUTE_UNUSED = { _q21, _q20, _p1, _q60 };
   12146            0 :                           tree res = generic_simplify_142 (loc, type, _p0, _p1, captures, BIT_AND_EXPR, BIT_IOR_EXPR);
   12147            0 :                           if (res) return res;
   12148              :                         }
   12149              :                       }
   12150              :                     break;
   12151              :                   }
   12152              :                 default:;
   12153              :                 }
   12154              :               break;
   12155              :             }
   12156              :           default:;
   12157              :           }
   12158              :         break;
   12159              :       }
   12160      6375102 :     default:;
   12161              :     }
   12162      6375102 :   switch (TREE_CODE (_p1))
   12163              :     {
   12164          476 :     case BIT_IOR_EXPR:
   12165          476 :       {
   12166          476 :         tree _q30 = TREE_OPERAND (_p1, 0);
   12167          476 :         tree _q31 = TREE_OPERAND (_p1, 1);
   12168          476 :         if ((_q30 == _p0 && ! TREE_SIDE_EFFECTS (_q30)) || (operand_equal_p (_q30, _p0, 0) && types_match (_q30, _p0)))
   12169              :           {
   12170            0 :             {
   12171            0 :               tree captures[2] ATTRIBUTE_UNUSED = { _p0, _q31 };
   12172            0 :               tree res = generic_simplify_139 (loc, type, _p0, _p1, captures, BIT_AND_EXPR, BIT_IOR_EXPR);
   12173            0 :               if (res) return res;
   12174              :             }
   12175              :           }
   12176          476 :         if ((_q31 == _p0 && ! TREE_SIDE_EFFECTS (_q31)) || (operand_equal_p (_q31, _p0, 0) && types_match (_q31, _p0)))
   12177              :           {
   12178            0 :             {
   12179            0 :               tree captures[2] ATTRIBUTE_UNUSED = { _p0, _q30 };
   12180            0 :               tree res = generic_simplify_139 (loc, type, _p0, _p1, captures, BIT_AND_EXPR, BIT_IOR_EXPR);
   12181            0 :               if (res) return res;
   12182              :             }
   12183              :           }
   12184          476 :         {
   12185          476 :           tree captures[3] ATTRIBUTE_UNUSED = { _q30, _q31, _p0 };
   12186          476 :           tree res = generic_simplify_140 (loc, type, _p0, _p1, captures, BIT_AND_EXPR, BIT_IOR_EXPR);
   12187          476 :           if (res) return res;
   12188              :         }
   12189          476 :         {
   12190          476 :           tree captures[3] ATTRIBUTE_UNUSED = { _q31, _q30, _p0 };
   12191          476 :           tree res = generic_simplify_140 (loc, type, _p0, _p1, captures, BIT_AND_EXPR, BIT_IOR_EXPR);
   12192          476 :           if (res) return res;
   12193              :         }
   12194          475 :         break;
   12195              :       }
   12196      6375101 :     default:;
   12197              :     }
   12198      6375101 :   switch (TREE_CODE (_p0))
   12199              :     {
   12200         1583 :     case BIT_AND_EXPR:
   12201         1583 :       {
   12202         1583 :         tree _q20 = TREE_OPERAND (_p0, 0);
   12203         1583 :         tree _q21 = TREE_OPERAND (_p0, 1);
   12204         1583 :         switch (TREE_CODE (_p1))
   12205              :           {
   12206           16 :           case BIT_IOR_EXPR:
   12207           16 :             {
   12208           16 :               tree _q50 = TREE_OPERAND (_p1, 0);
   12209           16 :               tree _q51 = TREE_OPERAND (_p1, 1);
   12210           16 :               if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
   12211              :                 {
   12212            0 :                   {
   12213            0 :                     tree captures[4] ATTRIBUTE_UNUSED = { _q20, _q51, _p0, _q21 };
   12214            0 :                     tree res = generic_simplify_145 (loc, type, _p0, _p1, captures, BIT_AND_EXPR, BIT_IOR_EXPR);
   12215            0 :                     if (res) return res;
   12216              :                   }
   12217              :                 }
   12218           16 :               if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
   12219              :                 {
   12220            0 :                   {
   12221            0 :                     tree captures[4] ATTRIBUTE_UNUSED = { _q21, _q51, _p0, _q20 };
   12222            0 :                     tree res = generic_simplify_145 (loc, type, _p0, _p1, captures, BIT_AND_EXPR, BIT_IOR_EXPR);
   12223            0 :                     if (res) return res;
   12224              :                   }
   12225              :                 }
   12226           16 :               if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
   12227              :                 {
   12228            0 :                   {
   12229            0 :                     tree captures[4] ATTRIBUTE_UNUSED = { _q20, _q50, _p0, _q21 };
   12230            0 :                     tree res = generic_simplify_145 (loc, type, _p0, _p1, captures, BIT_AND_EXPR, BIT_IOR_EXPR);
   12231            0 :                     if (res) return res;
   12232              :                   }
   12233              :                 }
   12234           16 :               if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
   12235              :                 {
   12236            0 :                   {
   12237            0 :                     tree captures[4] ATTRIBUTE_UNUSED = { _q21, _q50, _p0, _q20 };
   12238            0 :                     tree res = generic_simplify_145 (loc, type, _p0, _p1, captures, BIT_AND_EXPR, BIT_IOR_EXPR);
   12239            0 :                     if (res) return res;
   12240              :                   }
   12241              :                 }
   12242              :               break;
   12243              :             }
   12244              :           default:;
   12245              :           }
   12246              :         break;
   12247              :       }
   12248        66839 :     case BIT_NOT_EXPR:
   12249        66839 :       {
   12250        66839 :         tree _q20 = TREE_OPERAND (_p0, 0);
   12251        66839 :         switch (TREE_CODE (_q20))
   12252              :           {
   12253           11 :           case BIT_IOR_EXPR:
   12254           11 :             {
   12255           11 :               tree _q30 = TREE_OPERAND (_q20, 0);
   12256           11 :               tree _q31 = TREE_OPERAND (_q20, 1);
   12257           11 :               switch (TREE_CODE (_p1))
   12258              :                 {
   12259            0 :                 case BIT_IOR_EXPR:
   12260            0 :                   {
   12261            0 :                     tree _q60 = TREE_OPERAND (_p1, 0);
   12262            0 :                     tree _q61 = TREE_OPERAND (_p1, 1);
   12263            0 :                     if ((_q61 == _q30 && ! TREE_SIDE_EFFECTS (_q61)) || (operand_equal_p (_q61, _q30, 0) && types_match (_q61, _q30)))
   12264              :                       {
   12265            0 :                         {
   12266            0 :                           tree captures[4] ATTRIBUTE_UNUSED = { _q60, _q30, _p0, _q31 };
   12267            0 :                           tree res = generic_simplify_146 (loc, type, _p0, _p1, captures, BIT_AND_EXPR, BIT_IOR_EXPR);
   12268            0 :                           if (res) return res;
   12269              :                         }
   12270              :                       }
   12271            0 :                     if ((_q61 == _q31 && ! TREE_SIDE_EFFECTS (_q61)) || (operand_equal_p (_q61, _q31, 0) && types_match (_q61, _q31)))
   12272              :                       {
   12273            0 :                         {
   12274            0 :                           tree captures[4] ATTRIBUTE_UNUSED = { _q60, _q31, _p0, _q30 };
   12275            0 :                           tree res = generic_simplify_146 (loc, type, _p0, _p1, captures, BIT_AND_EXPR, BIT_IOR_EXPR);
   12276            0 :                           if (res) return res;
   12277              :                         }
   12278              :                       }
   12279            0 :                     if ((_q60 == _q30 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q30, 0) && types_match (_q60, _q30)))
   12280              :                       {
   12281            0 :                         {
   12282            0 :                           tree captures[4] ATTRIBUTE_UNUSED = { _q61, _q30, _p0, _q31 };
   12283            0 :                           tree res = generic_simplify_146 (loc, type, _p0, _p1, captures, BIT_AND_EXPR, BIT_IOR_EXPR);
   12284            0 :                           if (res) return res;
   12285              :                         }
   12286              :                       }
   12287            0 :                     if ((_q60 == _q31 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q31, 0) && types_match (_q60, _q31)))
   12288              :                       {
   12289            0 :                         {
   12290            0 :                           tree captures[4] ATTRIBUTE_UNUSED = { _q61, _q31, _p0, _q30 };
   12291            0 :                           tree res = generic_simplify_146 (loc, type, _p0, _p1, captures, BIT_AND_EXPR, BIT_IOR_EXPR);
   12292            0 :                           if (res) return res;
   12293              :                         }
   12294              :                       }
   12295              :                     break;
   12296              :                   }
   12297           11 :                 default:;
   12298              :                 }
   12299           11 :               if ((_p1 == _q30 && ! TREE_SIDE_EFFECTS (_p1)) || (operand_equal_p (_p1, _q30, 0) && types_match (_p1, _q30)))
   12300              :                 {
   12301            0 :                   {
   12302            0 :                     tree captures[2] ATTRIBUTE_UNUSED = { _q30, _q31 };
   12303            0 :                     tree res = generic_simplify_147 (loc, type, _p0, _p1, captures, BIT_AND_EXPR, BIT_IOR_EXPR);
   12304            0 :                     if (res) return res;
   12305              :                   }
   12306              :                 }
   12307           11 :               if ((_p1 == _q31 && ! TREE_SIDE_EFFECTS (_p1)) || (operand_equal_p (_p1, _q31, 0) && types_match (_p1, _q31)))
   12308              :                 {
   12309            1 :                   {
   12310            1 :                     tree captures[2] ATTRIBUTE_UNUSED = { _q31, _q30 };
   12311            1 :                     tree res = generic_simplify_147 (loc, type, _p0, _p1, captures, BIT_AND_EXPR, BIT_IOR_EXPR);
   12312            1 :                     if (res) return res;
   12313              :                   }
   12314              :                 }
   12315              :               break;
   12316              :             }
   12317              :           default:;
   12318              :           }
   12319              :         break;
   12320              :       }
   12321      6375100 :     default:;
   12322              :     }
   12323      6375100 :   switch (TREE_CODE (_p1))
   12324              :     {
   12325        52575 :     case BIT_NOT_EXPR:
   12326        52575 :       {
   12327        52575 :         tree _q30 = TREE_OPERAND (_p1, 0);
   12328        52575 :         switch (TREE_CODE (_q30))
   12329              :           {
   12330            8 :           case BIT_IOR_EXPR:
   12331            8 :             {
   12332            8 :               tree _q40 = TREE_OPERAND (_q30, 0);
   12333            8 :               tree _q41 = TREE_OPERAND (_q30, 1);
   12334            8 :               if ((_q40 == _p0 && ! TREE_SIDE_EFFECTS (_q40)) || (operand_equal_p (_q40, _p0, 0) && types_match (_q40, _p0)))
   12335              :                 {
   12336            0 :                   {
   12337            0 :                     tree captures[2] ATTRIBUTE_UNUSED = { _p0, _q41 };
   12338            0 :                     tree res = generic_simplify_147 (loc, type, _p0, _p1, captures, BIT_AND_EXPR, BIT_IOR_EXPR);
   12339            0 :                     if (res) return res;
   12340              :                   }
   12341              :                 }
   12342            8 :               if ((_q41 == _p0 && ! TREE_SIDE_EFFECTS (_q41)) || (operand_equal_p (_q41, _p0, 0) && types_match (_q41, _p0)))
   12343              :                 {
   12344            0 :                   {
   12345            0 :                     tree captures[2] ATTRIBUTE_UNUSED = { _p0, _q40 };
   12346            0 :                     tree res = generic_simplify_147 (loc, type, _p0, _p1, captures, BIT_AND_EXPR, BIT_IOR_EXPR);
   12347            0 :                     if (res) return res;
   12348              :                   }
   12349              :                 }
   12350              :               break;
   12351              :             }
   12352              :           default:;
   12353              :           }
   12354              :         break;
   12355              :       }
   12356      6375100 :     default:;
   12357              :     }
   12358      6375100 :   switch (TREE_CODE (_p0))
   12359              :     {
   12360         1570 :     case BIT_IOR_EXPR:
   12361         1570 :       {
   12362         1570 :         tree _q20 = TREE_OPERAND (_p0, 0);
   12363         1570 :         tree _q21 = TREE_OPERAND (_p0, 1);
   12364         1570 :         if (CONSTANT_CLASS_P (_q21))
   12365              :           {
   12366          459 :             if (CONSTANT_CLASS_P (_p1))
   12367              :               {
   12368           25 :                 {
   12369           25 :                   tree captures[3] ATTRIBUTE_UNUSED = { _q20, _q21, _p1 };
   12370           25 :                   if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1675;
   12371           25 :                   {
   12372           25 :                     if (! tree_invariant_p (captures[2])) goto next_after_fail1675;
   12373           25 :                     tree res_op0;
   12374           25 :                     {
   12375           25 :                       tree _o1[2], _r1;
   12376           25 :                       _o1[0] = captures[0];
   12377           25 :                       _o1[1] = unshare_expr (captures[2]);
   12378           25 :                       _r1 = fold_build2_loc (loc, BIT_AND_EXPR, TREE_TYPE (_o1[0]), _o1[0], _o1[1]);
   12379           25 :                       res_op0 = _r1;
   12380              :                     }
   12381           25 :                     tree res_op1;
   12382           25 :                     {
   12383           25 :                       tree _o1[2], _r1;
   12384           25 :                       _o1[0] = captures[1];
   12385           25 :                       _o1[1] = captures[2];
   12386           25 :                       _r1 = fold_build2_loc (loc, BIT_AND_EXPR, TREE_TYPE (_o1[0]), _o1[0], _o1[1]);
   12387           25 :                       if (EXPR_P (_r1))
   12388            0 :                         goto next_after_fail1675;
   12389           25 :                       res_op1 = _r1;
   12390              :                     }
   12391           25 :                     tree _r;
   12392           25 :                     _r = fold_build2_loc (loc, BIT_IOR_EXPR, type, res_op0, res_op1);
   12393           25 :                     if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 1014, __FILE__, __LINE__, true);
   12394           25 :                     return _r;
   12395              :                   }
   12396            0 : next_after_fail1675:;
   12397              :                 }
   12398              :               }
   12399              :           }
   12400              :         break;
   12401              :       }
   12402         1583 :     case BIT_AND_EXPR:
   12403         1583 :       {
   12404         1583 :         tree _q20 = TREE_OPERAND (_p0, 0);
   12405         1583 :         tree _q21 = TREE_OPERAND (_p0, 1);
   12406         1583 :         if (CONSTANT_CLASS_P (_q21))
   12407              :           {
   12408          508 :             if (CONSTANT_CLASS_P (_p1))
   12409              :               {
   12410          441 :                 {
   12411          441 :                   tree captures[3] ATTRIBUTE_UNUSED = { _q20, _q21, _p1 };
   12412          441 :                   tree res = generic_simplify_33 (loc, type, _p0, _p1, captures, BIT_AND_EXPR);
   12413          441 :                   if (res) return res;
   12414              :                 }
   12415              :               }
   12416              :           }
   12417              :         break;
   12418              :       }
   12419      6374634 :     default:;
   12420              :     }
   12421      6374634 :   {
   12422      6374634 :     tree _p1_pops[1];
   12423      6374634 :     if (tree_logical_inverted_value (_p1, _p1_pops))
   12424              :       {
   12425          897 :         tree _q30 = _p1_pops[0];
   12426          897 :         if ((_q30 == _p0 && ! TREE_SIDE_EFFECTS (_q30)) || (operand_equal_p (_q30, _p0, 0) && types_match (_q30, _p0)))
   12427              :           {
   12428            1 :             {
   12429            1 :               tree captures[1] ATTRIBUTE_UNUSED = { _p0 };
   12430            1 :               tree res = generic_simplify_465 (loc, type, _p0, _p1, captures);
   12431            1 :               if (res) return res;
   12432              :             }
   12433              :           }
   12434              :       }
   12435              :   }
   12436      6374633 :   switch (TREE_CODE (_p0))
   12437              :     {
   12438      1966270 :     CASE_CONVERT:
   12439      1966270 :       {
   12440      1966270 :         tree _q20 = TREE_OPERAND (_p0, 0);
   12441      1966270 :         switch (TREE_CODE (_q20))
   12442              :           {
   12443         6049 :           case NEGATE_EXPR:
   12444         6049 :             {
   12445         6049 :               tree _q30 = TREE_OPERAND (_q20, 0);
   12446         6049 :               if (tree_zero_one_valued_p (_q30))
   12447              :                 {
   12448            2 :                   {
   12449            2 :                     tree captures[2] ATTRIBUTE_UNUSED = { _q30, _p1 };
   12450            2 :                     tree res = generic_simplify_460 (loc, type, _p0, _p1, captures);
   12451            2 :                     if (res) return res;
   12452              :                   }
   12453              :                 }
   12454              :               break;
   12455              :             }
   12456              :           default:;
   12457              :           }
   12458              :         break;
   12459              :       }
   12460      6374631 :     default:;
   12461              :     }
   12462      6374631 : {
   12463      6374631 :   tree _p0_pops[1];
   12464      6374631 :   if (tree_logical_inverted_value (_p0, _p0_pops))
   12465              :     {
   12466          526 :       tree _q20 = _p0_pops[0];
   12467          526 :       if ((_p1 == _q20 && ! TREE_SIDE_EFFECTS (_p1)) || (operand_equal_p (_p1, _q20, 0) && types_match (_p1, _q20)))
   12468              :         {
   12469           12 :           {
   12470           12 :             tree captures[1] ATTRIBUTE_UNUSED = { _q20 };
   12471           12 :             tree res = generic_simplify_465 (loc, type, _p0, _p1, captures);
   12472           12 :             if (res) return res;
   12473              :           }
   12474              :         }
   12475              :     }
   12476              : }
   12477      6374619 :   switch (TREE_CODE (_p1))
   12478              :     {
   12479       952323 :     CASE_CONVERT:
   12480       952323 :       {
   12481       952323 :         tree _q30 = TREE_OPERAND (_p1, 0);
   12482       952323 :         switch (TREE_CODE (_q30))
   12483              :           {
   12484          108 :           case NEGATE_EXPR:
   12485          108 :             {
   12486          108 :               tree _q40 = TREE_OPERAND (_q30, 0);
   12487          108 :               if (tree_zero_one_valued_p (_q40))
   12488              :                 {
   12489           18 :                   {
   12490           18 :                     tree captures[2] ATTRIBUTE_UNUSED = { _q40, _p0 };
   12491           18 :                     tree res = generic_simplify_460 (loc, type, _p0, _p1, captures);
   12492           18 :                     if (res) return res;
   12493              :                   }
   12494              :                 }
   12495              :               break;
   12496              :             }
   12497              :           default:;
   12498              :           }
   12499              :         break;
   12500              :       }
   12501        10640 :     case NEGATE_EXPR:
   12502        10640 :       {
   12503        10640 :         tree _q30 = TREE_OPERAND (_p1, 0);
   12504        10640 :         if (tree_zero_one_valued_p (_q30))
   12505              :           {
   12506           24 :             {
   12507           24 :               tree captures[2] ATTRIBUTE_UNUSED = { _q30, _p0 };
   12508           24 :               tree res = generic_simplify_460 (loc, type, _p0, _p1, captures);
   12509           24 :               if (res) return res;
   12510              :             }
   12511              :           }
   12512              :         break;
   12513              :       }
   12514      6374577 :     default:;
   12515              :     }
   12516      6374577 :   switch (TREE_CODE (_p0))
   12517              :     {
   12518        47149 :     case NEGATE_EXPR:
   12519        47149 :       {
   12520        47149 :         tree _q20 = TREE_OPERAND (_p0, 0);
   12521        47149 :         switch (TREE_CODE (_q20))
   12522              :           {
   12523         5463 :           CASE_CONVERT:
   12524         5463 :             {
   12525         5463 :               tree _q30 = TREE_OPERAND (_q20, 0);
   12526         5463 :               switch (TREE_CODE (_q30))
   12527              :                 {
   12528            0 :                 case LT_EXPR:
   12529            0 :                   {
   12530            0 :                     tree _q40 = TREE_OPERAND (_q30, 0);
   12531            0 :                     tree _q41 = TREE_OPERAND (_q30, 1);
   12532            0 :                     {
   12533            0 :                       tree captures[4] ATTRIBUTE_UNUSED = { _q30, _q40, _q41, _p1 };
   12534            0 :                       tree res = generic_simplify_466 (loc, type, _p0, _p1, captures, LT_EXPR);
   12535            0 :                       if (res) return res;
   12536              :                     }
   12537            0 :                     break;
   12538              :                   }
   12539            0 :                 case LE_EXPR:
   12540            0 :                   {
   12541            0 :                     tree _q40 = TREE_OPERAND (_q30, 0);
   12542            0 :                     tree _q41 = TREE_OPERAND (_q30, 1);
   12543            0 :                     {
   12544            0 :                       tree captures[4] ATTRIBUTE_UNUSED = { _q30, _q40, _q41, _p1 };
   12545            0 :                       tree res = generic_simplify_466 (loc, type, _p0, _p1, captures, LE_EXPR);
   12546            0 :                       if (res) return res;
   12547              :                     }
   12548            0 :                     break;
   12549              :                   }
   12550            0 :                 case EQ_EXPR:
   12551            0 :                   {
   12552            0 :                     tree _q40 = TREE_OPERAND (_q30, 0);
   12553            0 :                     tree _q41 = TREE_OPERAND (_q30, 1);
   12554            0 :                     {
   12555            0 :                       tree captures[4] ATTRIBUTE_UNUSED = { _q30, _q40, _q41, _p1 };
   12556            0 :                       tree res = generic_simplify_466 (loc, type, _p0, _p1, captures, EQ_EXPR);
   12557            0 :                       if (res) return res;
   12558              :                     }
   12559            0 :                     break;
   12560              :                   }
   12561            0 :                 case NE_EXPR:
   12562            0 :                   {
   12563            0 :                     tree _q40 = TREE_OPERAND (_q30, 0);
   12564            0 :                     tree _q41 = TREE_OPERAND (_q30, 1);
   12565            0 :                     {
   12566            0 :                       tree captures[4] ATTRIBUTE_UNUSED = { _q30, _q40, _q41, _p1 };
   12567            0 :                       tree res = generic_simplify_466 (loc, type, _p0, _p1, captures, NE_EXPR);
   12568            0 :                       if (res) return res;
   12569              :                     }
   12570            0 :                     break;
   12571              :                   }
   12572            0 :                 case GE_EXPR:
   12573            0 :                   {
   12574            0 :                     tree _q40 = TREE_OPERAND (_q30, 0);
   12575            0 :                     tree _q41 = TREE_OPERAND (_q30, 1);
   12576            0 :                     {
   12577            0 :                       tree captures[4] ATTRIBUTE_UNUSED = { _q30, _q40, _q41, _p1 };
   12578            0 :                       tree res = generic_simplify_466 (loc, type, _p0, _p1, captures, GE_EXPR);
   12579            0 :                       if (res) return res;
   12580              :                     }
   12581            0 :                     break;
   12582              :                   }
   12583            0 :                 case GT_EXPR:
   12584            0 :                   {
   12585            0 :                     tree _q40 = TREE_OPERAND (_q30, 0);
   12586            0 :                     tree _q41 = TREE_OPERAND (_q30, 1);
   12587            0 :                     {
   12588            0 :                       tree captures[4] ATTRIBUTE_UNUSED = { _q30, _q40, _q41, _p1 };
   12589            0 :                       tree res = generic_simplify_466 (loc, type, _p0, _p1, captures, GT_EXPR);
   12590            0 :                       if (res) return res;
   12591              :                     }
   12592            0 :                     break;
   12593              :                   }
   12594            0 :                 case UNORDERED_EXPR:
   12595            0 :                   {
   12596            0 :                     tree _q40 = TREE_OPERAND (_q30, 0);
   12597            0 :                     tree _q41 = TREE_OPERAND (_q30, 1);
   12598            0 :                     {
   12599            0 :                       tree captures[4] ATTRIBUTE_UNUSED = { _q30, _q40, _q41, _p1 };
   12600            0 :                       tree res = generic_simplify_466 (loc, type, _p0, _p1, captures, UNORDERED_EXPR);
   12601            0 :                       if (res) return res;
   12602              :                     }
   12603            0 :                     break;
   12604              :                   }
   12605            0 :                 case ORDERED_EXPR:
   12606            0 :                   {
   12607            0 :                     tree _q40 = TREE_OPERAND (_q30, 0);
   12608            0 :                     tree _q41 = TREE_OPERAND (_q30, 1);
   12609            0 :                     {
   12610            0 :                       tree captures[4] ATTRIBUTE_UNUSED = { _q30, _q40, _q41, _p1 };
   12611            0 :                       tree res = generic_simplify_466 (loc, type, _p0, _p1, captures, ORDERED_EXPR);
   12612            0 :                       if (res) return res;
   12613              :                     }
   12614            0 :                     break;
   12615              :                   }
   12616            0 :                 case UNLT_EXPR:
   12617            0 :                   {
   12618            0 :                     tree _q40 = TREE_OPERAND (_q30, 0);
   12619            0 :                     tree _q41 = TREE_OPERAND (_q30, 1);
   12620            0 :                     {
   12621            0 :                       tree captures[4] ATTRIBUTE_UNUSED = { _q30, _q40, _q41, _p1 };
   12622            0 :                       tree res = generic_simplify_466 (loc, type, _p0, _p1, captures, UNLT_EXPR);
   12623            0 :                       if (res) return res;
   12624              :                     }
   12625            0 :                     break;
   12626              :                   }
   12627            0 :                 case UNLE_EXPR:
   12628            0 :                   {
   12629            0 :                     tree _q40 = TREE_OPERAND (_q30, 0);
   12630            0 :                     tree _q41 = TREE_OPERAND (_q30, 1);
   12631            0 :                     {
   12632            0 :                       tree captures[4] ATTRIBUTE_UNUSED = { _q30, _q40, _q41, _p1 };
   12633            0 :                       tree res = generic_simplify_466 (loc, type, _p0, _p1, captures, UNLE_EXPR);
   12634            0 :                       if (res) return res;
   12635              :                     }
   12636            0 :                     break;
   12637              :                   }
   12638            0 :                 case UNGT_EXPR:
   12639            0 :                   {
   12640            0 :                     tree _q40 = TREE_OPERAND (_q30, 0);
   12641            0 :                     tree _q41 = TREE_OPERAND (_q30, 1);
   12642            0 :                     {
   12643            0 :                       tree captures[4] ATTRIBUTE_UNUSED = { _q30, _q40, _q41, _p1 };
   12644            0 :                       tree res = generic_simplify_466 (loc, type, _p0, _p1, captures, UNGT_EXPR);
   12645            0 :                       if (res) return res;
   12646              :                     }
   12647            0 :                     break;
   12648              :                   }
   12649            0 :                 case UNGE_EXPR:
   12650            0 :                   {
   12651            0 :                     tree _q40 = TREE_OPERAND (_q30, 0);
   12652            0 :                     tree _q41 = TREE_OPERAND (_q30, 1);
   12653            0 :                     {
   12654            0 :                       tree captures[4] ATTRIBUTE_UNUSED = { _q30, _q40, _q41, _p1 };
   12655            0 :                       tree res = generic_simplify_466 (loc, type, _p0, _p1, captures, UNGE_EXPR);
   12656            0 :                       if (res) return res;
   12657              :                     }
   12658            0 :                     break;
   12659              :                   }
   12660            0 :                 case UNEQ_EXPR:
   12661            0 :                   {
   12662            0 :                     tree _q40 = TREE_OPERAND (_q30, 0);
   12663            0 :                     tree _q41 = TREE_OPERAND (_q30, 1);
   12664            0 :                     {
   12665            0 :                       tree captures[4] ATTRIBUTE_UNUSED = { _q30, _q40, _q41, _p1 };
   12666            0 :                       tree res = generic_simplify_466 (loc, type, _p0, _p1, captures, UNEQ_EXPR);
   12667            0 :                       if (res) return res;
   12668              :                     }
   12669            0 :                     break;
   12670              :                   }
   12671            0 :                 case LTGT_EXPR:
   12672            0 :                   {
   12673            0 :                     tree _q40 = TREE_OPERAND (_q30, 0);
   12674            0 :                     tree _q41 = TREE_OPERAND (_q30, 1);
   12675            0 :                     {
   12676            0 :                       tree captures[4] ATTRIBUTE_UNUSED = { _q30, _q40, _q41, _p1 };
   12677            0 :                       tree res = generic_simplify_466 (loc, type, _p0, _p1, captures, LTGT_EXPR);
   12678            0 :                       if (res) return res;
   12679              :                     }
   12680            0 :                     break;
   12681              :                   }
   12682              :                 default:;
   12683              :                 }
   12684              :               break;
   12685              :             }
   12686              :           default:;
   12687              :           }
   12688              :         break;
   12689              :       }
   12690      6374577 :     default:;
   12691              :     }
   12692      6374577 :   switch (TREE_CODE (_p1))
   12693              :     {
   12694        10616 :     case NEGATE_EXPR:
   12695        10616 :       {
   12696        10616 :         tree _q30 = TREE_OPERAND (_p1, 0);
   12697        10616 :         switch (TREE_CODE (_q30))
   12698              :           {
   12699           65 :           CASE_CONVERT:
   12700           65 :             {
   12701           65 :               tree _q40 = TREE_OPERAND (_q30, 0);
   12702           65 :               switch (TREE_CODE (_q40))
   12703              :                 {
   12704            0 :                 case LT_EXPR:
   12705            0 :                   {
   12706            0 :                     tree _q50 = TREE_OPERAND (_q40, 0);
   12707            0 :                     tree _q51 = TREE_OPERAND (_q40, 1);
   12708            0 :                     {
   12709            0 :                       tree captures[4] ATTRIBUTE_UNUSED = { _q40, _q50, _q51, _p0 };
   12710            0 :                       tree res = generic_simplify_467 (loc, type, _p0, _p1, captures, LT_EXPR);
   12711            0 :                       if (res) return res;
   12712              :                     }
   12713            0 :                     break;
   12714              :                   }
   12715            0 :                 case LE_EXPR:
   12716            0 :                   {
   12717            0 :                     tree _q50 = TREE_OPERAND (_q40, 0);
   12718            0 :                     tree _q51 = TREE_OPERAND (_q40, 1);
   12719            0 :                     {
   12720            0 :                       tree captures[4] ATTRIBUTE_UNUSED = { _q40, _q50, _q51, _p0 };
   12721            0 :                       tree res = generic_simplify_467 (loc, type, _p0, _p1, captures, LE_EXPR);
   12722            0 :                       if (res) return res;
   12723              :                     }
   12724            0 :                     break;
   12725              :                   }
   12726            0 :                 case EQ_EXPR:
   12727            0 :                   {
   12728            0 :                     tree _q50 = TREE_OPERAND (_q40, 0);
   12729            0 :                     tree _q51 = TREE_OPERAND (_q40, 1);
   12730            0 :                     {
   12731            0 :                       tree captures[4] ATTRIBUTE_UNUSED = { _q40, _q50, _q51, _p0 };
   12732            0 :                       tree res = generic_simplify_467 (loc, type, _p0, _p1, captures, EQ_EXPR);
   12733            0 :                       if (res) return res;
   12734              :                     }
   12735            0 :                     break;
   12736              :                   }
   12737            0 :                 case NE_EXPR:
   12738            0 :                   {
   12739            0 :                     tree _q50 = TREE_OPERAND (_q40, 0);
   12740            0 :                     tree _q51 = TREE_OPERAND (_q40, 1);
   12741            0 :                     {
   12742            0 :                       tree captures[4] ATTRIBUTE_UNUSED = { _q40, _q50, _q51, _p0 };
   12743            0 :                       tree res = generic_simplify_467 (loc, type, _p0, _p1, captures, NE_EXPR);
   12744            0 :                       if (res) return res;
   12745              :                     }
   12746            0 :                     break;
   12747              :                   }
   12748            0 :                 case GE_EXPR:
   12749            0 :                   {
   12750            0 :                     tree _q50 = TREE_OPERAND (_q40, 0);
   12751            0 :                     tree _q51 = TREE_OPERAND (_q40, 1);
   12752            0 :                     {
   12753            0 :                       tree captures[4] ATTRIBUTE_UNUSED = { _q40, _q50, _q51, _p0 };
   12754            0 :                       tree res = generic_simplify_467 (loc, type, _p0, _p1, captures, GE_EXPR);
   12755            0 :                       if (res) return res;
   12756              :                     }
   12757            0 :                     break;
   12758              :                   }
   12759            0 :                 case GT_EXPR:
   12760            0 :                   {
   12761            0 :                     tree _q50 = TREE_OPERAND (_q40, 0);
   12762            0 :                     tree _q51 = TREE_OPERAND (_q40, 1);
   12763            0 :                     {
   12764            0 :                       tree captures[4] ATTRIBUTE_UNUSED = { _q40, _q50, _q51, _p0 };
   12765            0 :                       tree res = generic_simplify_467 (loc, type, _p0, _p1, captures, GT_EXPR);
   12766            0 :                       if (res) return res;
   12767              :                     }
   12768            0 :                     break;
   12769              :                   }
   12770            0 :                 case UNORDERED_EXPR:
   12771            0 :                   {
   12772            0 :                     tree _q50 = TREE_OPERAND (_q40, 0);
   12773            0 :                     tree _q51 = TREE_OPERAND (_q40, 1);
   12774            0 :                     {
   12775            0 :                       tree captures[4] ATTRIBUTE_UNUSED = { _q40, _q50, _q51, _p0 };
   12776            0 :                       tree res = generic_simplify_467 (loc, type, _p0, _p1, captures, UNORDERED_EXPR);
   12777            0 :                       if (res) return res;
   12778              :                     }
   12779            0 :                     break;
   12780              :                   }
   12781            0 :                 case ORDERED_EXPR:
   12782            0 :                   {
   12783            0 :                     tree _q50 = TREE_OPERAND (_q40, 0);
   12784            0 :                     tree _q51 = TREE_OPERAND (_q40, 1);
   12785            0 :                     {
   12786            0 :                       tree captures[4] ATTRIBUTE_UNUSED = { _q40, _q50, _q51, _p0 };
   12787            0 :                       tree res = generic_simplify_467 (loc, type, _p0, _p1, captures, ORDERED_EXPR);
   12788            0 :                       if (res) return res;
   12789              :                     }
   12790            0 :                     break;
   12791              :                   }
   12792            0 :                 case UNLT_EXPR:
   12793            0 :                   {
   12794            0 :                     tree _q50 = TREE_OPERAND (_q40, 0);
   12795            0 :                     tree _q51 = TREE_OPERAND (_q40, 1);
   12796            0 :                     {
   12797            0 :                       tree captures[4] ATTRIBUTE_UNUSED = { _q40, _q50, _q51, _p0 };
   12798            0 :                       tree res = generic_simplify_467 (loc, type, _p0, _p1, captures, UNLT_EXPR);
   12799            0 :                       if (res) return res;
   12800              :                     }
   12801            0 :                     break;
   12802              :                   }
   12803            0 :                 case UNLE_EXPR:
   12804            0 :                   {
   12805            0 :                     tree _q50 = TREE_OPERAND (_q40, 0);
   12806            0 :                     tree _q51 = TREE_OPERAND (_q40, 1);
   12807            0 :                     {
   12808            0 :                       tree captures[4] ATTRIBUTE_UNUSED = { _q40, _q50, _q51, _p0 };
   12809            0 :                       tree res = generic_simplify_467 (loc, type, _p0, _p1, captures, UNLE_EXPR);
   12810            0 :                       if (res) return res;
   12811              :                     }
   12812            0 :                     break;
   12813              :                   }
   12814            0 :                 case UNGT_EXPR:
   12815            0 :                   {
   12816            0 :                     tree _q50 = TREE_OPERAND (_q40, 0);
   12817            0 :                     tree _q51 = TREE_OPERAND (_q40, 1);
   12818            0 :                     {
   12819            0 :                       tree captures[4] ATTRIBUTE_UNUSED = { _q40, _q50, _q51, _p0 };
   12820            0 :                       tree res = generic_simplify_467 (loc, type, _p0, _p1, captures, UNGT_EXPR);
   12821            0 :                       if (res) return res;
   12822              :                     }
   12823            0 :                     break;
   12824              :                   }
   12825            0 :                 case UNGE_EXPR:
   12826            0 :                   {
   12827            0 :                     tree _q50 = TREE_OPERAND (_q40, 0);
   12828            0 :                     tree _q51 = TREE_OPERAND (_q40, 1);
   12829            0 :                     {
   12830            0 :                       tree captures[4] ATTRIBUTE_UNUSED = { _q40, _q50, _q51, _p0 };
   12831            0 :                       tree res = generic_simplify_467 (loc, type, _p0, _p1, captures, UNGE_EXPR);
   12832            0 :                       if (res) return res;
   12833              :                     }
   12834            0 :                     break;
   12835              :                   }
   12836            0 :                 case UNEQ_EXPR:
   12837            0 :                   {
   12838            0 :                     tree _q50 = TREE_OPERAND (_q40, 0);
   12839            0 :                     tree _q51 = TREE_OPERAND (_q40, 1);
   12840            0 :                     {
   12841            0 :                       tree captures[4] ATTRIBUTE_UNUSED = { _q40, _q50, _q51, _p0 };
   12842            0 :                       tree res = generic_simplify_467 (loc, type, _p0, _p1, captures, UNEQ_EXPR);
   12843            0 :                       if (res) return res;
   12844              :                     }
   12845            0 :                     break;
   12846              :                   }
   12847            0 :                 case LTGT_EXPR:
   12848            0 :                   {
   12849            0 :                     tree _q50 = TREE_OPERAND (_q40, 0);
   12850            0 :                     tree _q51 = TREE_OPERAND (_q40, 1);
   12851            0 :                     {
   12852            0 :                       tree captures[4] ATTRIBUTE_UNUSED = { _q40, _q50, _q51, _p0 };
   12853            0 :                       tree res = generic_simplify_467 (loc, type, _p0, _p1, captures, LTGT_EXPR);
   12854            0 :                       if (res) return res;
   12855              :                     }
   12856            0 :                     break;
   12857              :                   }
   12858              :                 default:;
   12859              :                 }
   12860              :               break;
   12861              :             }
   12862              :           default:;
   12863              :           }
   12864              :         break;
   12865              :       }
   12866      6374577 :     default:;
   12867              :     }
   12868      6374577 :   switch (TREE_CODE (_p0))
   12869              :     {
   12870      1966266 :     CASE_CONVERT:
   12871      1966266 :       {
   12872      1966266 :         tree _q20 = TREE_OPERAND (_p0, 0);
   12873      1966266 :         switch (TREE_CODE (_p1))
   12874              :           {
   12875       905813 :           case INTEGER_CST:
   12876       905813 :             {
   12877       905813 :               {
   12878       905813 :                 tree captures[2] ATTRIBUTE_UNUSED = { _q20, _p1 };
   12879       905813 :                 tree res = generic_simplify_468 (loc, type, _p0, _p1, captures);
   12880       905813 :                 if (res) return res;
   12881              :               }
   12882       900362 :               break;
   12883              :             }
   12884              :           default:;
   12885              :           }
   12886              :         break;
   12887              :       }
   12888      6369126 :     default:;
   12889              :     }
   12890      6369126 :   switch (TREE_CODE (_p1))
   12891              :     {
   12892      4373401 :     case INTEGER_CST:
   12893      4373401 :       {
   12894      4373401 :         {
   12895      4373401 :           tree captures[2] ATTRIBUTE_UNUSED = { _p0, _p1 };
   12896      4373401 :           tree res = generic_simplify_468 (loc, type, _p0, _p1, captures);
   12897      4373401 :           if (res) return res;
   12898              :         }
   12899      4373401 :         break;
   12900              :       }
   12901      6369126 :     default:;
   12902              :     }
   12903      6369126 :   switch (TREE_CODE (_p0))
   12904              :     {
   12905          356 :     case GT_EXPR:
   12906          356 :       {
   12907          356 :         tree _q20 = TREE_OPERAND (_p0, 0);
   12908          356 :         tree _q21 = TREE_OPERAND (_p0, 1);
   12909          356 :         switch (TREE_CODE (_p1))
   12910              :           {
   12911           59 :           case EQ_EXPR:
   12912           59 :             {
   12913           59 :               tree _q50 = TREE_OPERAND (_p1, 0);
   12914           59 :               tree _q51 = TREE_OPERAND (_p1, 1);
   12915           59 :               if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
   12916              :                 {
   12917            8 :                   if (tree_min_value (_q51))
   12918              :                     {
   12919            4 :                       {
   12920            4 :                         tree captures[3] ATTRIBUTE_UNUSED = { _p0, _q20, _q21 };
   12921            4 :                         tree res = generic_simplify_469 (loc, type, _p0, _p1, captures, EQ_EXPR);
   12922            4 :                         if (res) return res;
   12923              :                       }
   12924              :                     }
   12925              :                 }
   12926           55 :               if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
   12927              :                 {
   12928            0 :                   if (tree_max_value (_q51))
   12929              :                     {
   12930            0 :                       {
   12931            0 :                         tree captures[3] ATTRIBUTE_UNUSED = { _p0, _q21, _q20 };
   12932            0 :                         tree res = generic_simplify_470 (loc, type, _p0, _p1, captures, EQ_EXPR);
   12933            0 :                         if (res) return res;
   12934              :                       }
   12935              :                     }
   12936              :                 }
   12937              :               break;
   12938              :             }
   12939            4 :           case NE_EXPR:
   12940            4 :             {
   12941            4 :               tree _q50 = TREE_OPERAND (_p1, 0);
   12942            4 :               tree _q51 = TREE_OPERAND (_p1, 1);
   12943            4 :               if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
   12944              :                 {
   12945            4 :                   if (tree_min_value (_q51))
   12946              :                     {
   12947            4 :                       {
   12948            4 :                         tree captures[3] ATTRIBUTE_UNUSED = { _p0, _q20, _q21 };
   12949            4 :                         tree res = generic_simplify_469 (loc, type, _p0, _p1, captures, NE_EXPR);
   12950            4 :                         if (res) return res;
   12951              :                       }
   12952              :                     }
   12953              :                 }
   12954            0 :               if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
   12955              :                 {
   12956            0 :                   if (tree_max_value (_q51))
   12957              :                     {
   12958            0 :                       {
   12959            0 :                         tree captures[3] ATTRIBUTE_UNUSED = { _p0, _q21, _q20 };
   12960            0 :                         tree res = generic_simplify_470 (loc, type, _p0, _p1, captures, NE_EXPR);
   12961            0 :                         if (res) return res;
   12962              :                       }
   12963              :                     }
   12964              :                 }
   12965              :               break;
   12966              :             }
   12967          348 :           default:;
   12968              :           }
   12969          348 :         switch (TREE_CODE (_q20))
   12970              :           {
   12971            0 :           CASE_CONVERT:
   12972            0 :             {
   12973            0 :               tree _q30 = TREE_OPERAND (_q20, 0);
   12974            0 :               switch (TREE_CODE (_p1))
   12975              :                 {
   12976            0 :                 case EQ_EXPR:
   12977            0 :                   {
   12978            0 :                     tree _q60 = TREE_OPERAND (_p1, 0);
   12979            0 :                     tree _q61 = TREE_OPERAND (_p1, 1);
   12980            0 :                     if ((_q60 == _q30 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q30, 0) && types_match (_q60, _q30)))
   12981              :                       {
   12982            0 :                         {
   12983            0 :                           tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q30, _q61, _p0, _q20, _q21 };
   12984            0 :                           tree res = generic_simplify_471 (loc, type, _p0, _p1, captures, GT_EXPR, EQ_EXPR);
   12985            0 :                           if (res) return res;
   12986              :                         }
   12987              :                       }
   12988            0 :                     if ((_q61 == _q30 && ! TREE_SIDE_EFFECTS (_q61)) || (operand_equal_p (_q61, _q30, 0) && types_match (_q61, _q30)))
   12989              :                       {
   12990            0 :                         {
   12991            0 :                           tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q30, _q60, _p0, _q20, _q21 };
   12992            0 :                           tree res = generic_simplify_471 (loc, type, _p0, _p1, captures, GT_EXPR, EQ_EXPR);
   12993            0 :                           if (res) return res;
   12994              :                         }
   12995              :                       }
   12996              :                     break;
   12997              :                   }
   12998            0 :                 case NE_EXPR:
   12999            0 :                   {
   13000            0 :                     tree _q60 = TREE_OPERAND (_p1, 0);
   13001            0 :                     tree _q61 = TREE_OPERAND (_p1, 1);
   13002            0 :                     if ((_q60 == _q30 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q30, 0) && types_match (_q60, _q30)))
   13003              :                       {
   13004            0 :                         {
   13005            0 :                           tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q30, _q61, _p0, _q20, _q21 };
   13006            0 :                           tree res = generic_simplify_471 (loc, type, _p0, _p1, captures, GT_EXPR, NE_EXPR);
   13007            0 :                           if (res) return res;
   13008              :                         }
   13009              :                       }
   13010            0 :                     if ((_q61 == _q30 && ! TREE_SIDE_EFFECTS (_q61)) || (operand_equal_p (_q61, _q30, 0) && types_match (_q61, _q30)))
   13011              :                       {
   13012            0 :                         {
   13013            0 :                           tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q30, _q60, _p0, _q20, _q21 };
   13014            0 :                           tree res = generic_simplify_471 (loc, type, _p0, _p1, captures, GT_EXPR, NE_EXPR);
   13015            0 :                           if (res) return res;
   13016              :                         }
   13017              :                       }
   13018              :                     break;
   13019              :                   }
   13020              :                 default:;
   13021              :                 }
   13022              :               break;
   13023              :             }
   13024          348 :           default:;
   13025              :           }
   13026          348 :         switch (TREE_CODE (_q21))
   13027              :           {
   13028            0 :           CASE_CONVERT:
   13029            0 :             {
   13030            0 :               tree _q40 = TREE_OPERAND (_q21, 0);
   13031            0 :               switch (TREE_CODE (_p1))
   13032              :                 {
   13033            0 :                 case EQ_EXPR:
   13034            0 :                   {
   13035            0 :                     tree _q60 = TREE_OPERAND (_p1, 0);
   13036            0 :                     tree _q61 = TREE_OPERAND (_p1, 1);
   13037            0 :                     if ((_q60 == _q40 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q40, 0) && types_match (_q60, _q40)))
   13038              :                       {
   13039            0 :                         {
   13040            0 :                           tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q40, _q61, _p0, _q21, _q20 };
   13041            0 :                           tree res = generic_simplify_471 (loc, type, _p0, _p1, captures, LT_EXPR, EQ_EXPR);
   13042            0 :                           if (res) return res;
   13043              :                         }
   13044              :                       }
   13045            0 :                     if ((_q61 == _q40 && ! TREE_SIDE_EFFECTS (_q61)) || (operand_equal_p (_q61, _q40, 0) && types_match (_q61, _q40)))
   13046              :                       {
   13047            0 :                         {
   13048            0 :                           tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q40, _q60, _p0, _q21, _q20 };
   13049            0 :                           tree res = generic_simplify_471 (loc, type, _p0, _p1, captures, LT_EXPR, EQ_EXPR);
   13050            0 :                           if (res) return res;
   13051              :                         }
   13052              :                       }
   13053              :                     break;
   13054              :                   }
   13055            0 :                 case NE_EXPR:
   13056            0 :                   {
   13057            0 :                     tree _q60 = TREE_OPERAND (_p1, 0);
   13058            0 :                     tree _q61 = TREE_OPERAND (_p1, 1);
   13059            0 :                     if ((_q60 == _q40 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q40, 0) && types_match (_q60, _q40)))
   13060              :                       {
   13061            0 :                         {
   13062            0 :                           tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q40, _q61, _p0, _q21, _q20 };
   13063            0 :                           tree res = generic_simplify_471 (loc, type, _p0, _p1, captures, LT_EXPR, NE_EXPR);
   13064            0 :                           if (res) return res;
   13065              :                         }
   13066              :                       }
   13067            0 :                     if ((_q61 == _q40 && ! TREE_SIDE_EFFECTS (_q61)) || (operand_equal_p (_q61, _q40, 0) && types_match (_q61, _q40)))
   13068              :                       {
   13069            0 :                         {
   13070            0 :                           tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q40, _q60, _p0, _q21, _q20 };
   13071            0 :                           tree res = generic_simplify_471 (loc, type, _p0, _p1, captures, LT_EXPR, NE_EXPR);
   13072            0 :                           if (res) return res;
   13073              :                         }
   13074              :                       }
   13075              :                     break;
   13076              :                   }
   13077              :                 default:;
   13078              :                 }
   13079              :               break;
   13080              :             }
   13081          348 :           default:;
   13082              :           }
   13083          348 :         switch (TREE_CODE (_p1))
   13084              :           {
   13085           55 :           case EQ_EXPR:
   13086           55 :             {
   13087           55 :               tree _q50 = TREE_OPERAND (_p1, 0);
   13088           55 :               tree _q51 = TREE_OPERAND (_p1, 1);
   13089           55 :               if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
   13090              :                 {
   13091            4 :                   {
   13092            4 :                     tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q20, _q51, _p0, _q20, _q21 };
   13093            4 :                     tree res = generic_simplify_472 (loc, type, _p0, _p1, captures, GT_EXPR, EQ_EXPR);
   13094            4 :                     if (res) return res;
   13095              :                   }
   13096              :                 }
   13097           55 :               if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
   13098              :                 {
   13099            0 :                   {
   13100            0 :                     tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q21, _q51, _p0, _q21, _q20 };
   13101            0 :                     tree res = generic_simplify_472 (loc, type, _p0, _p1, captures, LT_EXPR, EQ_EXPR);
   13102            0 :                     if (res) return res;
   13103              :                   }
   13104              :                 }
   13105           55 :               if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
   13106              :                 {
   13107            0 :                   {
   13108            0 :                     tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q20, _q50, _p0, _q20, _q21 };
   13109            0 :                     tree res = generic_simplify_472 (loc, type, _p0, _p1, captures, GT_EXPR, EQ_EXPR);
   13110            0 :                     if (res) return res;
   13111              :                   }
   13112              :                 }
   13113           55 :               if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
   13114              :                 {
   13115            0 :                   {
   13116            0 :                     tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q21, _q50, _p0, _q21, _q20 };
   13117            0 :                     tree res = generic_simplify_472 (loc, type, _p0, _p1, captures, LT_EXPR, EQ_EXPR);
   13118            0 :                     if (res) return res;
   13119              :                   }
   13120              :                 }
   13121              :               break;
   13122              :             }
   13123            0 :           case NE_EXPR:
   13124            0 :             {
   13125            0 :               tree _q50 = TREE_OPERAND (_p1, 0);
   13126            0 :               tree _q51 = TREE_OPERAND (_p1, 1);
   13127            0 :               if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
   13128              :                 {
   13129            0 :                   {
   13130            0 :                     tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q20, _q51, _p0, _q20, _q21 };
   13131            0 :                     tree res = generic_simplify_472 (loc, type, _p0, _p1, captures, GT_EXPR, NE_EXPR);
   13132            0 :                     if (res) return res;
   13133              :                   }
   13134              :                 }
   13135            0 :               if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
   13136              :                 {
   13137            0 :                   {
   13138            0 :                     tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q21, _q51, _p0, _q21, _q20 };
   13139            0 :                     tree res = generic_simplify_472 (loc, type, _p0, _p1, captures, LT_EXPR, NE_EXPR);
   13140            0 :                     if (res) return res;
   13141              :                   }
   13142              :                 }
   13143            0 :               if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
   13144              :                 {
   13145            0 :                   {
   13146            0 :                     tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q20, _q50, _p0, _q20, _q21 };
   13147            0 :                     tree res = generic_simplify_472 (loc, type, _p0, _p1, captures, GT_EXPR, NE_EXPR);
   13148            0 :                     if (res) return res;
   13149              :                   }
   13150              :                 }
   13151            0 :               if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
   13152              :                 {
   13153            0 :                   {
   13154            0 :                     tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q21, _q50, _p0, _q21, _q20 };
   13155            0 :                     tree res = generic_simplify_472 (loc, type, _p0, _p1, captures, LT_EXPR, NE_EXPR);
   13156            0 :                     if (res) return res;
   13157              :                   }
   13158              :                 }
   13159              :               break;
   13160              :             }
   13161           67 :           case LT_EXPR:
   13162           67 :             {
   13163           67 :               tree _q50 = TREE_OPERAND (_p1, 0);
   13164           67 :               tree _q51 = TREE_OPERAND (_p1, 1);
   13165           67 :               if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
   13166              :                 {
   13167            4 :                   {
   13168            4 :                     tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q51 };
   13169            4 :                     tree res = generic_simplify_473 (loc, type, _p0, _p1, captures, LT_EXPR, GT_EXPR);
   13170            4 :                     if (res) return res;
   13171              :                   }
   13172              :                 }
   13173           67 :               if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
   13174              :                 {
   13175            0 :                   {
   13176            0 :                     tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q50 };
   13177            0 :                     tree res = generic_simplify_473 (loc, type, _p0, _p1, captures, GT_EXPR, GT_EXPR);
   13178            0 :                     if (res) return res;
   13179              :                   }
   13180              :                 }
   13181           67 :               if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
   13182              :                 {
   13183            0 :                   {
   13184            0 :                     tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q51 };
   13185            0 :                     tree res = generic_simplify_473 (loc, type, _p0, _p1, captures, LT_EXPR, LT_EXPR);
   13186            0 :                     if (res) return res;
   13187              :                   }
   13188              :                 }
   13189           67 :               if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
   13190              :                 {
   13191            4 :                   {
   13192            4 :                     tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q50 };
   13193            4 :                     tree res = generic_simplify_473 (loc, type, _p0, _p1, captures, GT_EXPR, LT_EXPR);
   13194            4 :                     if (res) return res;
   13195              :                   }
   13196              :                 }
   13197              :               break;
   13198              :             }
   13199           72 :           case LE_EXPR:
   13200           72 :             {
   13201           72 :               tree _q50 = TREE_OPERAND (_p1, 0);
   13202           72 :               tree _q51 = TREE_OPERAND (_p1, 1);
   13203           72 :               if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
   13204              :                 {
   13205           23 :                   {
   13206           23 :                     tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q51 };
   13207           23 :                     tree res = generic_simplify_473 (loc, type, _p0, _p1, captures, LE_EXPR, GT_EXPR);
   13208           23 :                     if (res) return res;
   13209              :                   }
   13210              :                 }
   13211           72 :               if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
   13212              :                 {
   13213            0 :                   {
   13214            0 :                     tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q50 };
   13215            0 :                     tree res = generic_simplify_473 (loc, type, _p0, _p1, captures, GE_EXPR, GT_EXPR);
   13216            0 :                     if (res) return res;
   13217              :                   }
   13218              :                 }
   13219           72 :               if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
   13220              :                 {
   13221            0 :                   {
   13222            0 :                     tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q51 };
   13223            0 :                     tree res = generic_simplify_473 (loc, type, _p0, _p1, captures, LE_EXPR, LT_EXPR);
   13224            0 :                     if (res) return res;
   13225              :                   }
   13226              :                 }
   13227           72 :               if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
   13228              :                 {
   13229            0 :                   {
   13230            0 :                     tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q50 };
   13231            0 :                     tree res = generic_simplify_473 (loc, type, _p0, _p1, captures, GE_EXPR, LT_EXPR);
   13232            0 :                     if (res) return res;
   13233              :                   }
   13234              :                 }
   13235              :               break;
   13236              :             }
   13237           85 :           case GT_EXPR:
   13238           85 :             {
   13239           85 :               tree _q50 = TREE_OPERAND (_p1, 0);
   13240           85 :               tree _q51 = TREE_OPERAND (_p1, 1);
   13241           85 :               if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
   13242              :                 {
   13243            0 :                   {
   13244            0 :                     tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q51 };
   13245            0 :                     tree res = generic_simplify_473 (loc, type, _p0, _p1, captures, GT_EXPR, GT_EXPR);
   13246            0 :                     if (res) return res;
   13247              :                   }
   13248              :                 }
   13249           85 :               if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
   13250              :                 {
   13251            0 :                   {
   13252            0 :                     tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q50 };
   13253            0 :                     tree res = generic_simplify_473 (loc, type, _p0, _p1, captures, LT_EXPR, GT_EXPR);
   13254            0 :                     if (res) return res;
   13255              :                   }
   13256              :                 }
   13257           85 :               if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
   13258              :                 {
   13259            0 :                   {
   13260            0 :                     tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q51 };
   13261            0 :                     tree res = generic_simplify_473 (loc, type, _p0, _p1, captures, GT_EXPR, LT_EXPR);
   13262            0 :                     if (res) return res;
   13263              :                   }
   13264              :                 }
   13265           85 :               if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
   13266              :                 {
   13267           35 :                   {
   13268           35 :                     tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q50 };
   13269           35 :                     tree res = generic_simplify_473 (loc, type, _p0, _p1, captures, LT_EXPR, LT_EXPR);
   13270           35 :                     if (res) return res;
   13271              :                   }
   13272              :                 }
   13273              :               break;
   13274              :             }
   13275            0 :           case GE_EXPR:
   13276            0 :             {
   13277            0 :               tree _q50 = TREE_OPERAND (_p1, 0);
   13278            0 :               tree _q51 = TREE_OPERAND (_p1, 1);
   13279            0 :               if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
   13280              :                 {
   13281            0 :                   {
   13282            0 :                     tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q51 };
   13283            0 :                     tree res = generic_simplify_473 (loc, type, _p0, _p1, captures, GE_EXPR, GT_EXPR);
   13284            0 :                     if (res) return res;
   13285              :                   }
   13286              :                 }
   13287            0 :               if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
   13288              :                 {
   13289            0 :                   {
   13290            0 :                     tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q50 };
   13291            0 :                     tree res = generic_simplify_473 (loc, type, _p0, _p1, captures, LE_EXPR, GT_EXPR);
   13292            0 :                     if (res) return res;
   13293              :                   }
   13294              :                 }
   13295            0 :               if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
   13296              :                 {
   13297            0 :                   {
   13298            0 :                     tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q51 };
   13299            0 :                     tree res = generic_simplify_473 (loc, type, _p0, _p1, captures, GE_EXPR, LT_EXPR);
   13300            0 :                     if (res) return res;
   13301              :                   }
   13302              :                 }
   13303            0 :               if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
   13304              :                 {
   13305            0 :                   {
   13306            0 :                     tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q50 };
   13307            0 :                     tree res = generic_simplify_473 (loc, type, _p0, _p1, captures, LE_EXPR, LT_EXPR);
   13308            0 :                     if (res) return res;
   13309              :                   }
   13310              :                 }
   13311              :               break;
   13312              :             }
   13313              :           default:;
   13314              :           }
   13315              :         break;
   13316              :       }
   13317           92 :     case LT_EXPR:
   13318           92 :       {
   13319           92 :         tree _q20 = TREE_OPERAND (_p0, 0);
   13320           92 :         tree _q21 = TREE_OPERAND (_p0, 1);
   13321           92 :         switch (TREE_CODE (_p1))
   13322              :           {
   13323           35 :           case EQ_EXPR:
   13324           35 :             {
   13325           35 :               tree _q50 = TREE_OPERAND (_p1, 0);
   13326           35 :               tree _q51 = TREE_OPERAND (_p1, 1);
   13327           35 :               if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
   13328              :                 {
   13329            0 :                   if (tree_min_value (_q51))
   13330              :                     {
   13331            0 :                       {
   13332            0 :                         tree captures[3] ATTRIBUTE_UNUSED = { _p0, _q21, _q20 };
   13333            0 :                         tree res = generic_simplify_469 (loc, type, _p0, _p1, captures, EQ_EXPR);
   13334            0 :                         if (res) return res;
   13335              :                       }
   13336              :                     }
   13337              :                 }
   13338           35 :               if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
   13339              :                 {
   13340            4 :                   if (tree_max_value (_q51))
   13341              :                     {
   13342            4 :                       {
   13343            4 :                         tree captures[3] ATTRIBUTE_UNUSED = { _p0, _q20, _q21 };
   13344            4 :                         tree res = generic_simplify_470 (loc, type, _p0, _p1, captures, EQ_EXPR);
   13345            4 :                         if (res) return res;
   13346              :                       }
   13347              :                     }
   13348              :                 }
   13349              :               break;
   13350              :             }
   13351            6 :           case NE_EXPR:
   13352            6 :             {
   13353            6 :               tree _q50 = TREE_OPERAND (_p1, 0);
   13354            6 :               tree _q51 = TREE_OPERAND (_p1, 1);
   13355            6 :               if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
   13356              :                 {
   13357            0 :                   if (tree_min_value (_q51))
   13358              :                     {
   13359            0 :                       {
   13360            0 :                         tree captures[3] ATTRIBUTE_UNUSED = { _p0, _q21, _q20 };
   13361            0 :                         tree res = generic_simplify_469 (loc, type, _p0, _p1, captures, NE_EXPR);
   13362            0 :                         if (res) return res;
   13363              :                       }
   13364              :                     }
   13365              :                 }
   13366            6 :               if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
   13367              :                 {
   13368            4 :                   if (tree_max_value (_q51))
   13369              :                     {
   13370            4 :                       {
   13371            4 :                         tree captures[3] ATTRIBUTE_UNUSED = { _p0, _q20, _q21 };
   13372            4 :                         tree res = generic_simplify_470 (loc, type, _p0, _p1, captures, NE_EXPR);
   13373            4 :                         if (res) return res;
   13374              :                       }
   13375              :                     }
   13376              :                 }
   13377              :               break;
   13378              :             }
   13379           84 :           default:;
   13380              :           }
   13381           84 :         switch (TREE_CODE (_q20))
   13382              :           {
   13383            8 :           CASE_CONVERT:
   13384            8 :             {
   13385            8 :               tree _q30 = TREE_OPERAND (_q20, 0);
   13386            8 :               switch (TREE_CODE (_p1))
   13387              :                 {
   13388            0 :                 case EQ_EXPR:
   13389            0 :                   {
   13390            0 :                     tree _q60 = TREE_OPERAND (_p1, 0);
   13391            0 :                     tree _q61 = TREE_OPERAND (_p1, 1);
   13392            0 :                     if ((_q60 == _q30 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q30, 0) && types_match (_q60, _q30)))
   13393              :                       {
   13394            0 :                         {
   13395            0 :                           tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q30, _q61, _p0, _q20, _q21 };
   13396            0 :                           tree res = generic_simplify_471 (loc, type, _p0, _p1, captures, LT_EXPR, EQ_EXPR);
   13397            0 :                           if (res) return res;
   13398              :                         }
   13399              :                       }
   13400            0 :                     if ((_q61 == _q30 && ! TREE_SIDE_EFFECTS (_q61)) || (operand_equal_p (_q61, _q30, 0) && types_match (_q61, _q30)))
   13401              :                       {
   13402            0 :                         {
   13403            0 :                           tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q30, _q60, _p0, _q20, _q21 };
   13404            0 :                           tree res = generic_simplify_471 (loc, type, _p0, _p1, captures, LT_EXPR, EQ_EXPR);
   13405            0 :                           if (res) return res;
   13406              :                         }
   13407              :                       }
   13408              :                     break;
   13409              :                   }
   13410            0 :                 case NE_EXPR:
   13411            0 :                   {
   13412            0 :                     tree _q60 = TREE_OPERAND (_p1, 0);
   13413            0 :                     tree _q61 = TREE_OPERAND (_p1, 1);
   13414            0 :                     if ((_q60 == _q30 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q30, 0) && types_match (_q60, _q30)))
   13415              :                       {
   13416            0 :                         {
   13417            0 :                           tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q30, _q61, _p0, _q20, _q21 };
   13418            0 :                           tree res = generic_simplify_471 (loc, type, _p0, _p1, captures, LT_EXPR, NE_EXPR);
   13419            0 :                           if (res) return res;
   13420              :                         }
   13421              :                       }
   13422            0 :                     if ((_q61 == _q30 && ! TREE_SIDE_EFFECTS (_q61)) || (operand_equal_p (_q61, _q30, 0) && types_match (_q61, _q30)))
   13423              :                       {
   13424            0 :                         {
   13425            0 :                           tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q30, _q60, _p0, _q20, _q21 };
   13426            0 :                           tree res = generic_simplify_471 (loc, type, _p0, _p1, captures, LT_EXPR, NE_EXPR);
   13427            0 :                           if (res) return res;
   13428              :                         }
   13429              :                       }
   13430              :                     break;
   13431              :                   }
   13432              :                 default:;
   13433              :                 }
   13434              :               break;
   13435              :             }
   13436           84 :           default:;
   13437              :           }
   13438           84 :         switch (TREE_CODE (_q21))
   13439              :           {
   13440            5 :           CASE_CONVERT:
   13441            5 :             {
   13442            5 :               tree _q40 = TREE_OPERAND (_q21, 0);
   13443            5 :               switch (TREE_CODE (_p1))
   13444              :                 {
   13445            0 :                 case EQ_EXPR:
   13446            0 :                   {
   13447            0 :                     tree _q60 = TREE_OPERAND (_p1, 0);
   13448            0 :                     tree _q61 = TREE_OPERAND (_p1, 1);
   13449            0 :                     if ((_q60 == _q40 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q40, 0) && types_match (_q60, _q40)))
   13450              :                       {
   13451            0 :                         {
   13452            0 :                           tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q40, _q61, _p0, _q21, _q20 };
   13453            0 :                           tree res = generic_simplify_471 (loc, type, _p0, _p1, captures, GT_EXPR, EQ_EXPR);
   13454            0 :                           if (res) return res;
   13455              :                         }
   13456              :                       }
   13457            0 :                     if ((_q61 == _q40 && ! TREE_SIDE_EFFECTS (_q61)) || (operand_equal_p (_q61, _q40, 0) && types_match (_q61, _q40)))
   13458              :                       {
   13459            0 :                         {
   13460            0 :                           tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q40, _q60, _p0, _q21, _q20 };
   13461            0 :                           tree res = generic_simplify_471 (loc, type, _p0, _p1, captures, GT_EXPR, EQ_EXPR);
   13462            0 :                           if (res) return res;
   13463              :                         }
   13464              :                       }
   13465              :                     break;
   13466              :                   }
   13467            0 :                 case NE_EXPR:
   13468            0 :                   {
   13469            0 :                     tree _q60 = TREE_OPERAND (_p1, 0);
   13470            0 :                     tree _q61 = TREE_OPERAND (_p1, 1);
   13471            0 :                     if ((_q60 == _q40 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q40, 0) && types_match (_q60, _q40)))
   13472              :                       {
   13473            0 :                         {
   13474            0 :                           tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q40, _q61, _p0, _q21, _q20 };
   13475            0 :                           tree res = generic_simplify_471 (loc, type, _p0, _p1, captures, GT_EXPR, NE_EXPR);
   13476            0 :                           if (res) return res;
   13477              :                         }
   13478              :                       }
   13479            0 :                     if ((_q61 == _q40 && ! TREE_SIDE_EFFECTS (_q61)) || (operand_equal_p (_q61, _q40, 0) && types_match (_q61, _q40)))
   13480              :                       {
   13481            0 :                         {
   13482            0 :                           tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q40, _q60, _p0, _q21, _q20 };
   13483            0 :                           tree res = generic_simplify_471 (loc, type, _p0, _p1, captures, GT_EXPR, NE_EXPR);
   13484            0 :                           if (res) return res;
   13485              :                         }
   13486              :                       }
   13487              :                     break;
   13488              :                   }
   13489              :                 default:;
   13490              :                 }
   13491              :               break;
   13492              :             }
   13493           84 :           default:;
   13494              :           }
   13495           84 :         switch (TREE_CODE (_p1))
   13496              :           {
   13497           31 :           case EQ_EXPR:
   13498           31 :             {
   13499           31 :               tree _q50 = TREE_OPERAND (_p1, 0);
   13500           31 :               tree _q51 = TREE_OPERAND (_p1, 1);
   13501           31 :               if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
   13502              :                 {
   13503            0 :                   {
   13504            0 :                     tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q20, _q51, _p0, _q20, _q21 };
   13505            0 :                     tree res = generic_simplify_472 (loc, type, _p0, _p1, captures, LT_EXPR, EQ_EXPR);
   13506            0 :                     if (res) return res;
   13507              :                   }
   13508              :                 }
   13509           31 :               if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
   13510              :                 {
   13511            0 :                   {
   13512            0 :                     tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q21, _q51, _p0, _q21, _q20 };
   13513            0 :                     tree res = generic_simplify_472 (loc, type, _p0, _p1, captures, GT_EXPR, EQ_EXPR);
   13514            0 :                     if (res) return res;
   13515              :                   }
   13516              :                 }
   13517           31 :               if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
   13518              :                 {
   13519            0 :                   {
   13520            0 :                     tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q20, _q50, _p0, _q20, _q21 };
   13521            0 :                     tree res = generic_simplify_472 (loc, type, _p0, _p1, captures, LT_EXPR, EQ_EXPR);
   13522            0 :                     if (res) return res;
   13523              :                   }
   13524              :                 }
   13525           31 :               if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
   13526              :                 {
   13527            0 :                   {
   13528            0 :                     tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q21, _q50, _p0, _q21, _q20 };
   13529            0 :                     tree res = generic_simplify_472 (loc, type, _p0, _p1, captures, GT_EXPR, EQ_EXPR);
   13530            0 :                     if (res) return res;
   13531              :                   }
   13532              :                 }
   13533              :               break;
   13534              :             }
   13535            2 :           case NE_EXPR:
   13536            2 :             {
   13537            2 :               tree _q50 = TREE_OPERAND (_p1, 0);
   13538            2 :               tree _q51 = TREE_OPERAND (_p1, 1);
   13539            2 :               if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
   13540              :                 {
   13541            0 :                   {
   13542            0 :                     tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q20, _q51, _p0, _q20, _q21 };
   13543            0 :                     tree res = generic_simplify_472 (loc, type, _p0, _p1, captures, LT_EXPR, NE_EXPR);
   13544            0 :                     if (res) return res;
   13545              :                   }
   13546              :                 }
   13547            2 :               if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
   13548              :                 {
   13549            0 :                   {
   13550            0 :                     tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q21, _q51, _p0, _q21, _q20 };
   13551            0 :                     tree res = generic_simplify_472 (loc, type, _p0, _p1, captures, GT_EXPR, NE_EXPR);
   13552            0 :                     if (res) return res;
   13553              :                   }
   13554              :                 }
   13555            2 :               if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
   13556              :                 {
   13557            0 :                   {
   13558            0 :                     tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q20, _q50, _p0, _q20, _q21 };
   13559            0 :                     tree res = generic_simplify_472 (loc, type, _p0, _p1, captures, LT_EXPR, NE_EXPR);
   13560            0 :                     if (res) return res;
   13561              :                   }
   13562              :                 }
   13563            2 :               if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
   13564              :                 {
   13565            2 :                   {
   13566            2 :                     tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q21, _q50, _p0, _q21, _q20 };
   13567            2 :                     tree res = generic_simplify_472 (loc, type, _p0, _p1, captures, GT_EXPR, NE_EXPR);
   13568            2 :                     if (res) return res;
   13569              :                   }
   13570              :                 }
   13571              :               break;
   13572              :             }
   13573            8 :           case LT_EXPR:
   13574            8 :             {
   13575            8 :               tree _q50 = TREE_OPERAND (_p1, 0);
   13576            8 :               tree _q51 = TREE_OPERAND (_p1, 1);
   13577            8 :               if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
   13578              :                 {
   13579            0 :                   {
   13580            0 :                     tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q51 };
   13581            0 :                     tree res = generic_simplify_473 (loc, type, _p0, _p1, captures, LT_EXPR, LT_EXPR);
   13582            0 :                     if (res) return res;
   13583              :                   }
   13584              :                 }
   13585            8 :               if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
   13586              :                 {
   13587            0 :                   {
   13588            0 :                     tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q50 };
   13589            0 :                     tree res = generic_simplify_473 (loc, type, _p0, _p1, captures, GT_EXPR, LT_EXPR);
   13590            0 :                     if (res) return res;
   13591              :                   }
   13592              :                 }
   13593            8 :               if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
   13594              :                 {
   13595            0 :                   {
   13596            0 :                     tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q51 };
   13597            0 :                     tree res = generic_simplify_473 (loc, type, _p0, _p1, captures, LT_EXPR, GT_EXPR);
   13598            0 :                     if (res) return res;
   13599              :                   }
   13600              :                 }
   13601            8 :               if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
   13602              :                 {
   13603            0 :                   {
   13604            0 :                     tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q50 };
   13605            0 :                     tree res = generic_simplify_473 (loc, type, _p0, _p1, captures, GT_EXPR, GT_EXPR);
   13606            0 :                     if (res) return res;
   13607              :                   }
   13608              :                 }
   13609              :               break;
   13610              :             }
   13611            0 :           case LE_EXPR:
   13612            0 :             {
   13613            0 :               tree _q50 = TREE_OPERAND (_p1, 0);
   13614            0 :               tree _q51 = TREE_OPERAND (_p1, 1);
   13615            0 :               if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
   13616              :                 {
   13617            0 :                   {
   13618            0 :                     tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q51 };
   13619            0 :                     tree res = generic_simplify_473 (loc, type, _p0, _p1, captures, LE_EXPR, LT_EXPR);
   13620            0 :                     if (res) return res;
   13621              :                   }
   13622              :                 }
   13623            0 :               if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
   13624              :                 {
   13625            0 :                   {
   13626            0 :                     tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q50 };
   13627            0 :                     tree res = generic_simplify_473 (loc, type, _p0, _p1, captures, GE_EXPR, LT_EXPR);
   13628            0 :                     if (res) return res;
   13629              :                   }
   13630              :                 }
   13631            0 :               if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
   13632              :                 {
   13633            0 :                   {
   13634            0 :                     tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q51 };
   13635            0 :                     tree res = generic_simplify_473 (loc, type, _p0, _p1, captures, LE_EXPR, GT_EXPR);
   13636            0 :                     if (res) return res;
   13637              :                   }
   13638              :                 }
   13639            0 :               if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
   13640              :                 {
   13641            0 :                   {
   13642            0 :                     tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q50 };
   13643            0 :                     tree res = generic_simplify_473 (loc, type, _p0, _p1, captures, GE_EXPR, GT_EXPR);
   13644            0 :                     if (res) return res;
   13645              :                   }
   13646              :                 }
   13647              :               break;
   13648              :             }
   13649            5 :           case GT_EXPR:
   13650            5 :             {
   13651            5 :               tree _q50 = TREE_OPERAND (_p1, 0);
   13652            5 :               tree _q51 = TREE_OPERAND (_p1, 1);
   13653            5 :               if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
   13654              :                 {
   13655            4 :                   {
   13656            4 :                     tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q51 };
   13657            4 :                     tree res = generic_simplify_473 (loc, type, _p0, _p1, captures, GT_EXPR, LT_EXPR);
   13658            4 :                     if (res) return res;
   13659              :                   }
   13660              :                 }
   13661            1 :               if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
   13662              :                 {
   13663            0 :                   {
   13664            0 :                     tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q50 };
   13665            0 :                     tree res = generic_simplify_473 (loc, type, _p0, _p1, captures, LT_EXPR, LT_EXPR);
   13666            0 :                     if (res) return res;
   13667              :                   }
   13668              :                 }
   13669            1 :               if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
   13670              :                 {
   13671            0 :                   {
   13672            0 :                     tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q51 };
   13673            0 :                     tree res = generic_simplify_473 (loc, type, _p0, _p1, captures, GT_EXPR, GT_EXPR);
   13674            0 :                     if (res) return res;
   13675              :                   }
   13676              :                 }
   13677            1 :               if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
   13678              :                 {
   13679            0 :                   {
   13680            0 :                     tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q50 };
   13681            0 :                     tree res = generic_simplify_473 (loc, type, _p0, _p1, captures, LT_EXPR, GT_EXPR);
   13682            0 :                     if (res) return res;
   13683              :                   }
   13684              :                 }
   13685              :               break;
   13686              :             }
   13687            0 :           case GE_EXPR:
   13688            0 :             {
   13689            0 :               tree _q50 = TREE_OPERAND (_p1, 0);
   13690            0 :               tree _q51 = TREE_OPERAND (_p1, 1);
   13691            0 :               if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
   13692              :                 {
   13693            0 :                   {
   13694            0 :                     tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q51 };
   13695            0 :                     tree res = generic_simplify_473 (loc, type, _p0, _p1, captures, GE_EXPR, LT_EXPR);
   13696            0 :                     if (res) return res;
   13697              :                   }
   13698              :                 }
   13699            0 :               if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
   13700              :                 {
   13701            0 :                   {
   13702            0 :                     tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q50 };
   13703            0 :                     tree res = generic_simplify_473 (loc, type, _p0, _p1, captures, LE_EXPR, LT_EXPR);
   13704            0 :                     if (res) return res;
   13705              :                   }
   13706              :                 }
   13707            0 :               if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
   13708              :                 {
   13709            0 :                   {
   13710            0 :                     tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q51 };
   13711            0 :                     tree res = generic_simplify_473 (loc, type, _p0, _p1, captures, GE_EXPR, GT_EXPR);
   13712            0 :                     if (res) return res;
   13713              :                   }
   13714              :                 }
   13715            0 :               if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
   13716              :                 {
   13717            0 :                   {
   13718            0 :                     tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q50 };
   13719            0 :                     tree res = generic_simplify_473 (loc, type, _p0, _p1, captures, LE_EXPR, GT_EXPR);
   13720            0 :                     if (res) return res;
   13721              :                   }
   13722              :                 }
   13723              :               break;
   13724              :             }
   13725              :           default:;
   13726              :           }
   13727              :         break;
   13728              :       }
   13729         1072 :     case EQ_EXPR:
   13730         1072 :       {
   13731         1072 :         tree _q20 = TREE_OPERAND (_p0, 0);
   13732         1072 :         tree _q21 = TREE_OPERAND (_p0, 1);
   13733         1072 :         if (tree_min_value (_q21))
   13734              :           {
   13735           40 :             switch (TREE_CODE (_p1))
   13736              :               {
   13737            0 :               case GT_EXPR:
   13738            0 :                 {
   13739            0 :                   tree _q50 = TREE_OPERAND (_p1, 0);
   13740            0 :                   tree _q51 = TREE_OPERAND (_p1, 1);
   13741            0 :                   if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
   13742              :                     {
   13743            0 :                       {
   13744            0 :                         tree captures[3] ATTRIBUTE_UNUSED = { _p1, _q20, _q51 };
   13745            0 :                         tree res = generic_simplify_474 (loc, type, _p0, _p1, captures, EQ_EXPR);
   13746            0 :                         if (res) return res;
   13747              :                       }
   13748              :                     }
   13749              :                   break;
   13750              :                 }
   13751           14 :               case LT_EXPR:
   13752           14 :                 {
   13753           14 :                   tree _q50 = TREE_OPERAND (_p1, 0);
   13754           14 :                   tree _q51 = TREE_OPERAND (_p1, 1);
   13755           14 :                   if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
   13756              :                     {
   13757            0 :                       {
   13758            0 :                         tree captures[3] ATTRIBUTE_UNUSED = { _p1, _q20, _q50 };
   13759            0 :                         tree res = generic_simplify_474 (loc, type, _p0, _p1, captures, EQ_EXPR);
   13760            0 :                         if (res) return res;
   13761              :                       }
   13762              :                     }
   13763              :                   break;
   13764              :                 }
   13765            0 :               case LE_EXPR:
   13766            0 :                 {
   13767            0 :                   tree _q50 = TREE_OPERAND (_p1, 0);
   13768            0 :                   tree _q51 = TREE_OPERAND (_p1, 1);
   13769            0 :                   if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
   13770              :                     {
   13771            0 :                       {
   13772            0 :                         tree captures[3] ATTRIBUTE_UNUSED = { _q20, _q51, _p0 };
   13773            0 :                         tree res = generic_simplify_475 (loc, type, _p0, _p1, captures);
   13774            0 :                         if (res) return res;
   13775              :                       }
   13776              :                     }
   13777              :                   break;
   13778              :                 }
   13779            0 :               case GE_EXPR:
   13780            0 :                 {
   13781            0 :                   tree _q50 = TREE_OPERAND (_p1, 0);
   13782            0 :                   tree _q51 = TREE_OPERAND (_p1, 1);
   13783            0 :                   if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
   13784              :                     {
   13785            0 :                       {
   13786            0 :                         tree captures[3] ATTRIBUTE_UNUSED = { _q20, _q50, _p0 };
   13787            0 :                         tree res = generic_simplify_475 (loc, type, _p0, _p1, captures);
   13788            0 :                         if (res) return res;
   13789              :                       }
   13790              :                     }
   13791              :                   break;
   13792              :                 }
   13793              :               default:;
   13794              :               }
   13795              :           }
   13796         1072 :         if (tree_max_value (_q21))
   13797              :           {
   13798            0 :             switch (TREE_CODE (_p1))
   13799              :               {
   13800            0 :               case LT_EXPR:
   13801            0 :                 {
   13802            0 :                   tree _q50 = TREE_OPERAND (_p1, 0);
   13803            0 :                   tree _q51 = TREE_OPERAND (_p1, 1);
   13804            0 :                   if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
   13805              :                     {
   13806            0 :                       {
   13807            0 :                         tree captures[3] ATTRIBUTE_UNUSED = { _p1, _q20, _q51 };
   13808            0 :                         tree res = generic_simplify_476 (loc, type, _p0, _p1, captures, EQ_EXPR);
   13809            0 :                         if (res) return res;
   13810              :                       }
   13811              :                     }
   13812              :                   break;
   13813              :                 }
   13814            0 :               case GT_EXPR:
   13815            0 :                 {
   13816            0 :                   tree _q50 = TREE_OPERAND (_p1, 0);
   13817            0 :                   tree _q51 = TREE_OPERAND (_p1, 1);
   13818            0 :                   if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
   13819              :                     {
   13820            0 :                       {
   13821            0 :                         tree captures[3] ATTRIBUTE_UNUSED = { _p1, _q20, _q50 };
   13822            0 :                         tree res = generic_simplify_476 (loc, type, _p0, _p1, captures, EQ_EXPR);
   13823            0 :                         if (res) return res;
   13824              :                       }
   13825              :                     }
   13826              :                   break;
   13827              :                 }
   13828            0 :               case GE_EXPR:
   13829            0 :                 {
   13830            0 :                   tree _q50 = TREE_OPERAND (_p1, 0);
   13831            0 :                   tree _q51 = TREE_OPERAND (_p1, 1);
   13832            0 :                   if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
   13833              :                     {
   13834            0 :                       {
   13835            0 :                         tree captures[3] ATTRIBUTE_UNUSED = { _q20, _q51, _p0 };
   13836            0 :                         tree res = generic_simplify_477 (loc, type, _p0, _p1, captures);
   13837            0 :                         if (res) return res;
   13838              :                       }
   13839              :                     }
   13840              :                   break;
   13841              :                 }
   13842            0 :               case LE_EXPR:
   13843            0 :                 {
   13844            0 :                   tree _q50 = TREE_OPERAND (_p1, 0);
   13845            0 :                   tree _q51 = TREE_OPERAND (_p1, 1);
   13846            0 :                   if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
   13847              :                     {
   13848            0 :                       {
   13849            0 :                         tree captures[3] ATTRIBUTE_UNUSED = { _q20, _q50, _p0 };
   13850            0 :                         tree res = generic_simplify_477 (loc, type, _p0, _p1, captures);
   13851            0 :                         if (res) return res;
   13852              :                       }
   13853              :                     }
   13854              :                   break;
   13855              :                 }
   13856              :               default:;
   13857              :               }
   13858              :           }
   13859         1072 :         switch (TREE_CODE (_p1))
   13860              :           {
   13861          537 :           case EQ_EXPR:
   13862          537 :             {
   13863          537 :               tree _q50 = TREE_OPERAND (_p1, 0);
   13864          537 :               tree _q51 = TREE_OPERAND (_p1, 1);
   13865          537 :               switch (TREE_CODE (_q50))
   13866              :                 {
   13867            0 :                 CASE_CONVERT:
   13868            0 :                   {
   13869            0 :                     tree _q60 = TREE_OPERAND (_q50, 0);
   13870            0 :                     if ((_q60 == _q20 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q20, 0) && types_match (_q60, _q20)))
   13871              :                       {
   13872            0 :                         {
   13873            0 :                           tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q50, _q51 };
   13874            0 :                           tree res = generic_simplify_478 (loc, type, _p0, _p1, captures, EQ_EXPR, EQ_EXPR);
   13875            0 :                           if (res) return res;
   13876              :                         }
   13877              :                       }
   13878            0 :                     if ((_q60 == _q21 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q21, 0) && types_match (_q60, _q21)))
   13879              :                       {
   13880            0 :                         {
   13881            0 :                           tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q50, _q51 };
   13882            0 :                           tree res = generic_simplify_478 (loc, type, _p0, _p1, captures, EQ_EXPR, EQ_EXPR);
   13883            0 :                           if (res) return res;
   13884              :                         }
   13885              :                       }
   13886              :                     break;
   13887              :                   }
   13888          537 :                 default:;
   13889              :                 }
   13890          537 :               switch (TREE_CODE (_q51))
   13891              :                 {
   13892            0 :                 CASE_CONVERT:
   13893            0 :                   {
   13894            0 :                     tree _q70 = TREE_OPERAND (_q51, 0);
   13895            0 :                     if ((_q70 == _q20 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q20, 0) && types_match (_q70, _q20)))
   13896              :                       {
   13897            0 :                         {
   13898            0 :                           tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q51, _q50 };
   13899            0 :                           tree res = generic_simplify_478 (loc, type, _p0, _p1, captures, EQ_EXPR, EQ_EXPR);
   13900            0 :                           if (res) return res;
   13901              :                         }
   13902              :                       }
   13903            0 :                     if ((_q70 == _q21 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q21, 0) && types_match (_q70, _q21)))
   13904              :                       {
   13905            0 :                         {
   13906            0 :                           tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q51, _q50 };
   13907            0 :                           tree res = generic_simplify_478 (loc, type, _p0, _p1, captures, EQ_EXPR, EQ_EXPR);
   13908            0 :                           if (res) return res;
   13909              :                         }
   13910              :                       }
   13911              :                     break;
   13912              :                   }
   13913              :                 default:;
   13914              :                 }
   13915              :               break;
   13916              :             }
   13917           33 :           case NE_EXPR:
   13918           33 :             {
   13919           33 :               tree _q50 = TREE_OPERAND (_p1, 0);
   13920           33 :               tree _q51 = TREE_OPERAND (_p1, 1);
   13921           33 :               switch (TREE_CODE (_q50))
   13922              :                 {
   13923            0 :                 CASE_CONVERT:
   13924            0 :                   {
   13925            0 :                     tree _q60 = TREE_OPERAND (_q50, 0);
   13926            0 :                     if ((_q60 == _q20 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q20, 0) && types_match (_q60, _q20)))
   13927              :                       {
   13928            0 :                         {
   13929            0 :                           tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q50, _q51 };
   13930            0 :                           tree res = generic_simplify_478 (loc, type, _p0, _p1, captures, NE_EXPR, EQ_EXPR);
   13931            0 :                           if (res) return res;
   13932              :                         }
   13933              :                       }
   13934            0 :                     if ((_q60 == _q21 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q21, 0) && types_match (_q60, _q21)))
   13935              :                       {
   13936            0 :                         {
   13937            0 :                           tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q50, _q51 };
   13938            0 :                           tree res = generic_simplify_478 (loc, type, _p0, _p1, captures, NE_EXPR, EQ_EXPR);
   13939            0 :                           if (res) return res;
   13940              :                         }
   13941              :                       }
   13942              :                     break;
   13943              :                   }
   13944           33 :                 default:;
   13945              :                 }
   13946           33 :               switch (TREE_CODE (_q51))
   13947              :                 {
   13948            0 :                 CASE_CONVERT:
   13949            0 :                   {
   13950            0 :                     tree _q70 = TREE_OPERAND (_q51, 0);
   13951            0 :                     if ((_q70 == _q20 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q20, 0) && types_match (_q70, _q20)))
   13952              :                       {
   13953            0 :                         {
   13954            0 :                           tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q51, _q50 };
   13955            0 :                           tree res = generic_simplify_478 (loc, type, _p0, _p1, captures, NE_EXPR, EQ_EXPR);
   13956            0 :                           if (res) return res;
   13957              :                         }
   13958              :                       }
   13959            0 :                     if ((_q70 == _q21 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q21, 0) && types_match (_q70, _q21)))
   13960              :                       {
   13961            0 :                         {
   13962            0 :                           tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q51, _q50 };
   13963            0 :                           tree res = generic_simplify_478 (loc, type, _p0, _p1, captures, NE_EXPR, EQ_EXPR);
   13964            0 :                           if (res) return res;
   13965              :                         }
   13966              :                       }
   13967              :                     break;
   13968              :                   }
   13969              :                 default:;
   13970              :                 }
   13971              :               break;
   13972              :             }
   13973           19 :           case LT_EXPR:
   13974           19 :             {
   13975           19 :               tree _q50 = TREE_OPERAND (_p1, 0);
   13976           19 :               tree _q51 = TREE_OPERAND (_p1, 1);
   13977           19 :               switch (TREE_CODE (_q50))
   13978              :                 {
   13979            0 :                 CASE_CONVERT:
   13980            0 :                   {
   13981            0 :                     tree _q60 = TREE_OPERAND (_q50, 0);
   13982            0 :                     if ((_q60 == _q20 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q20, 0) && types_match (_q60, _q20)))
   13983              :                       {
   13984            0 :                         {
   13985            0 :                           tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q50, _q51 };
   13986            0 :                           tree res = generic_simplify_478 (loc, type, _p0, _p1, captures, LT_EXPR, EQ_EXPR);
   13987            0 :                           if (res) return res;
   13988              :                         }
   13989              :                       }
   13990            0 :                     if ((_q60 == _q21 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q21, 0) && types_match (_q60, _q21)))
   13991              :                       {
   13992            0 :                         {
   13993            0 :                           tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q50, _q51 };
   13994            0 :                           tree res = generic_simplify_478 (loc, type, _p0, _p1, captures, LT_EXPR, EQ_EXPR);
   13995            0 :                           if (res) return res;
   13996              :                         }
   13997              :                       }
   13998              :                     break;
   13999              :                   }
   14000           19 :                 default:;
   14001              :                 }
   14002           19 :               switch (TREE_CODE (_q51))
   14003              :                 {
   14004            0 :                 CASE_CONVERT:
   14005            0 :                   {
   14006            0 :                     tree _q70 = TREE_OPERAND (_q51, 0);
   14007            0 :                     if ((_q70 == _q20 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q20, 0) && types_match (_q70, _q20)))
   14008              :                       {
   14009            0 :                         {
   14010            0 :                           tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q51, _q50 };
   14011            0 :                           tree res = generic_simplify_478 (loc, type, _p0, _p1, captures, GT_EXPR, EQ_EXPR);
   14012            0 :                           if (res) return res;
   14013              :                         }
   14014              :                       }
   14015            0 :                     if ((_q70 == _q21 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q21, 0) && types_match (_q70, _q21)))
   14016              :                       {
   14017            0 :                         {
   14018            0 :                           tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q51, _q50 };
   14019            0 :                           tree res = generic_simplify_478 (loc, type, _p0, _p1, captures, GT_EXPR, EQ_EXPR);
   14020            0 :                           if (res) return res;
   14021              :                         }
   14022              :                       }
   14023              :                     break;
   14024              :                   }
   14025              :                 default:;
   14026              :                 }
   14027              :               break;
   14028              :             }
   14029           12 :           case GT_EXPR:
   14030           12 :             {
   14031           12 :               tree _q50 = TREE_OPERAND (_p1, 0);
   14032           12 :               tree _q51 = TREE_OPERAND (_p1, 1);
   14033           12 :               switch (TREE_CODE (_q50))
   14034              :                 {
   14035            0 :                 CASE_CONVERT:
   14036            0 :                   {
   14037            0 :                     tree _q60 = TREE_OPERAND (_q50, 0);
   14038            0 :                     if ((_q60 == _q20 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q20, 0) && types_match (_q60, _q20)))
   14039              :                       {
   14040            0 :                         {
   14041            0 :                           tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q50, _q51 };
   14042            0 :                           tree res = generic_simplify_478 (loc, type, _p0, _p1, captures, GT_EXPR, EQ_EXPR);
   14043            0 :                           if (res) return res;
   14044              :                         }
   14045              :                       }
   14046            0 :                     if ((_q60 == _q21 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q21, 0) && types_match (_q60, _q21)))
   14047              :                       {
   14048            0 :                         {
   14049            0 :                           tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q50, _q51 };
   14050            0 :                           tree res = generic_simplify_478 (loc, type, _p0, _p1, captures, GT_EXPR, EQ_EXPR);
   14051            0 :                           if (res) return res;
   14052              :                         }
   14053              :                       }
   14054              :                     break;
   14055              :                   }
   14056           12 :                 default:;
   14057              :                 }
   14058           12 :               switch (TREE_CODE (_q51))
   14059              :                 {
   14060            0 :                 CASE_CONVERT:
   14061            0 :                   {
   14062            0 :                     tree _q70 = TREE_OPERAND (_q51, 0);
   14063            0 :                     if ((_q70 == _q20 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q20, 0) && types_match (_q70, _q20)))
   14064              :                       {
   14065            0 :                         {
   14066            0 :                           tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q51, _q50 };
   14067            0 :                           tree res = generic_simplify_478 (loc, type, _p0, _p1, captures, LT_EXPR, EQ_EXPR);
   14068            0 :                           if (res) return res;
   14069              :                         }
   14070              :                       }
   14071            0 :                     if ((_q70 == _q21 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q21, 0) && types_match (_q70, _q21)))
   14072              :                       {
   14073            0 :                         {
   14074            0 :                           tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q51, _q50 };
   14075            0 :                           tree res = generic_simplify_478 (loc, type, _p0, _p1, captures, LT_EXPR, EQ_EXPR);
   14076            0 :                           if (res) return res;
   14077              :                         }
   14078              :                       }
   14079              :                     break;
   14080              :                   }
   14081              :                 default:;
   14082              :                 }
   14083              :               break;
   14084              :             }
   14085           36 :           case LE_EXPR:
   14086           36 :             {
   14087           36 :               tree _q50 = TREE_OPERAND (_p1, 0);
   14088           36 :               tree _q51 = TREE_OPERAND (_p1, 1);
   14089           36 :               switch (TREE_CODE (_q50))
   14090              :                 {
   14091           12 :                 CASE_CONVERT:
   14092           12 :                   {
   14093           12 :                     tree _q60 = TREE_OPERAND (_q50, 0);
   14094           12 :                     if ((_q60 == _q20 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q20, 0) && types_match (_q60, _q20)))
   14095              :                       {
   14096            0 :                         {
   14097            0 :                           tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q50, _q51 };
   14098            0 :                           tree res = generic_simplify_478 (loc, type, _p0, _p1, captures, LE_EXPR, EQ_EXPR);
   14099            0 :                           if (res) return res;
   14100              :                         }
   14101              :                       }
   14102           12 :                     if ((_q60 == _q21 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q21, 0) && types_match (_q60, _q21)))
   14103              :                       {
   14104            0 :                         {
   14105            0 :                           tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q50, _q51 };
   14106            0 :                           tree res = generic_simplify_478 (loc, type, _p0, _p1, captures, LE_EXPR, EQ_EXPR);
   14107            0 :                           if (res) return res;
   14108              :                         }
   14109              :                       }
   14110              :                     break;
   14111              :                   }
   14112           36 :                 default:;
   14113              :                 }
   14114           36 :               switch (TREE_CODE (_q51))
   14115              :                 {
   14116            0 :                 CASE_CONVERT:
   14117            0 :                   {
   14118            0 :                     tree _q70 = TREE_OPERAND (_q51, 0);
   14119            0 :                     if ((_q70 == _q20 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q20, 0) && types_match (_q70, _q20)))
   14120              :                       {
   14121            0 :                         {
   14122            0 :                           tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q51, _q50 };
   14123            0 :                           tree res = generic_simplify_478 (loc, type, _p0, _p1, captures, GE_EXPR, EQ_EXPR);
   14124            0 :                           if (res) return res;
   14125              :                         }
   14126              :                       }
   14127            0 :                     if ((_q70 == _q21 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q21, 0) && types_match (_q70, _q21)))
   14128              :                       {
   14129            0 :                         {
   14130            0 :                           tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q51, _q50 };
   14131            0 :                           tree res = generic_simplify_478 (loc, type, _p0, _p1, captures, GE_EXPR, EQ_EXPR);
   14132            0 :                           if (res) return res;
   14133              :                         }
   14134              :                       }
   14135              :                     break;
   14136              :                   }
   14137              :                 default:;
   14138              :                 }
   14139              :               break;
   14140              :             }
   14141            4 :           case GE_EXPR:
   14142            4 :             {
   14143            4 :               tree _q50 = TREE_OPERAND (_p1, 0);
   14144            4 :               tree _q51 = TREE_OPERAND (_p1, 1);
   14145            4 :               switch (TREE_CODE (_q50))
   14146              :                 {
   14147            0 :                 CASE_CONVERT:
   14148            0 :                   {
   14149            0 :                     tree _q60 = TREE_OPERAND (_q50, 0);
   14150            0 :                     if ((_q60 == _q20 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q20, 0) && types_match (_q60, _q20)))
   14151              :                       {
   14152            0 :                         {
   14153            0 :                           tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q50, _q51 };
   14154            0 :                           tree res = generic_simplify_478 (loc, type, _p0, _p1, captures, GE_EXPR, EQ_EXPR);
   14155            0 :                           if (res) return res;
   14156              :                         }
   14157              :                       }
   14158            0 :                     if ((_q60 == _q21 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q21, 0) && types_match (_q60, _q21)))
   14159              :                       {
   14160            0 :                         {
   14161            0 :                           tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q50, _q51 };
   14162            0 :                           tree res = generic_simplify_478 (loc, type, _p0, _p1, captures, GE_EXPR, EQ_EXPR);
   14163            0 :                           if (res) return res;
   14164              :                         }
   14165              :                       }
   14166              :                     break;
   14167              :                   }
   14168            4 :                 default:;
   14169              :                 }
   14170            4 :               switch (TREE_CODE (_q51))
   14171              :                 {
   14172            0 :                 CASE_CONVERT:
   14173            0 :                   {
   14174            0 :                     tree _q70 = TREE_OPERAND (_q51, 0);
   14175            0 :                     if ((_q70 == _q20 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q20, 0) && types_match (_q70, _q20)))
   14176              :                       {
   14177            0 :                         {
   14178            0 :                           tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q51, _q50 };
   14179            0 :                           tree res = generic_simplify_478 (loc, type, _p0, _p1, captures, LE_EXPR, EQ_EXPR);
   14180            0 :                           if (res) return res;
   14181              :                         }
   14182              :                       }
   14183            0 :                     if ((_q70 == _q21 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q21, 0) && types_match (_q70, _q21)))
   14184              :                       {
   14185            0 :                         {
   14186            0 :                           tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q51, _q50 };
   14187            0 :                           tree res = generic_simplify_478 (loc, type, _p0, _p1, captures, LE_EXPR, EQ_EXPR);
   14188            0 :                           if (res) return res;
   14189              :                         }
   14190              :                       }
   14191              :                     break;
   14192              :                   }
   14193              :                 default:;
   14194              :                 }
   14195              :               break;
   14196              :             }
   14197         1072 :           default:;
   14198              :           }
   14199         1072 :         switch (TREE_CODE (_q20))
   14200              :           {
   14201            0 :           CASE_CONVERT:
   14202            0 :             {
   14203            0 :               tree _q30 = TREE_OPERAND (_q20, 0);
   14204            0 :               switch (TREE_CODE (_p1))
   14205              :                 {
   14206            0 :                 case EQ_EXPR:
   14207            0 :                   {
   14208            0 :                     tree _q60 = TREE_OPERAND (_p1, 0);
   14209            0 :                     tree _q61 = TREE_OPERAND (_p1, 1);
   14210            0 :                     if ((_q60 == _q30 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q30, 0) && types_match (_q60, _q30)))
   14211              :                       {
   14212            0 :                         {
   14213            0 :                           tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q30, _q61, _p0, _q20, _q21 };
   14214            0 :                           tree res = generic_simplify_471 (loc, type, _p0, _p1, captures, EQ_EXPR, EQ_EXPR);
   14215            0 :                           if (res) return res;
   14216              :                         }
   14217              :                       }
   14218            0 :                     if ((_q61 == _q30 && ! TREE_SIDE_EFFECTS (_q61)) || (operand_equal_p (_q61, _q30, 0) && types_match (_q61, _q30)))
   14219              :                       {
   14220            0 :                         {
   14221            0 :                           tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q30, _q60, _p0, _q20, _q21 };
   14222            0 :                           tree res = generic_simplify_471 (loc, type, _p0, _p1, captures, EQ_EXPR, EQ_EXPR);
   14223            0 :                           if (res) return res;
   14224              :                         }
   14225              :                       }
   14226              :                     break;
   14227              :                   }
   14228            0 :                 case NE_EXPR:
   14229            0 :                   {
   14230            0 :                     tree _q60 = TREE_OPERAND (_p1, 0);
   14231            0 :                     tree _q61 = TREE_OPERAND (_p1, 1);
   14232            0 :                     if ((_q60 == _q30 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q30, 0) && types_match (_q60, _q30)))
   14233              :                       {
   14234            0 :                         {
   14235            0 :                           tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q30, _q61, _p0, _q20, _q21 };
   14236            0 :                           tree res = generic_simplify_471 (loc, type, _p0, _p1, captures, EQ_EXPR, NE_EXPR);
   14237            0 :                           if (res) return res;
   14238              :                         }
   14239              :                       }
   14240            0 :                     if ((_q61 == _q30 && ! TREE_SIDE_EFFECTS (_q61)) || (operand_equal_p (_q61, _q30, 0) && types_match (_q61, _q30)))
   14241              :                       {
   14242            0 :                         {
   14243            0 :                           tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q30, _q60, _p0, _q20, _q21 };
   14244            0 :                           tree res = generic_simplify_471 (loc, type, _p0, _p1, captures, EQ_EXPR, NE_EXPR);
   14245            0 :                           if (res) return res;
   14246              :                         }
   14247              :                       }
   14248              :                     break;
   14249              :                   }
   14250              :                 default:;
   14251              :                 }
   14252              :               break;
   14253              :             }
   14254         1072 :           default:;
   14255              :           }
   14256         1072 :         switch (TREE_CODE (_q21))
   14257              :           {
   14258            0 :           CASE_CONVERT:
   14259            0 :             {
   14260            0 :               tree _q40 = TREE_OPERAND (_q21, 0);
   14261            0 :               switch (TREE_CODE (_p1))
   14262              :                 {
   14263            0 :                 case EQ_EXPR:
   14264            0 :                   {
   14265            0 :                     tree _q60 = TREE_OPERAND (_p1, 0);
   14266            0 :                     tree _q61 = TREE_OPERAND (_p1, 1);
   14267            0 :                     if ((_q60 == _q40 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q40, 0) && types_match (_q60, _q40)))
   14268              :                       {
   14269            0 :                         {
   14270            0 :                           tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q40, _q61, _p0, _q21, _q20 };
   14271            0 :                           tree res = generic_simplify_471 (loc, type, _p0, _p1, captures, EQ_EXPR, EQ_EXPR);
   14272            0 :                           if (res) return res;
   14273              :                         }
   14274              :                       }
   14275            0 :                     if ((_q61 == _q40 && ! TREE_SIDE_EFFECTS (_q61)) || (operand_equal_p (_q61, _q40, 0) && types_match (_q61, _q40)))
   14276              :                       {
   14277            0 :                         {
   14278            0 :                           tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q40, _q60, _p0, _q21, _q20 };
   14279            0 :                           tree res = generic_simplify_471 (loc, type, _p0, _p1, captures, EQ_EXPR, EQ_EXPR);
   14280            0 :                           if (res) return res;
   14281              :                         }
   14282              :                       }
   14283              :                     break;
   14284              :                   }
   14285            0 :                 case NE_EXPR:
   14286            0 :                   {
   14287            0 :                     tree _q60 = TREE_OPERAND (_p1, 0);
   14288            0 :                     tree _q61 = TREE_OPERAND (_p1, 1);
   14289            0 :                     if ((_q60 == _q40 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q40, 0) && types_match (_q60, _q40)))
   14290              :                       {
   14291            0 :                         {
   14292            0 :                           tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q40, _q61, _p0, _q21, _q20 };
   14293            0 :                           tree res = generic_simplify_471 (loc, type, _p0, _p1, captures, EQ_EXPR, NE_EXPR);
   14294            0 :                           if (res) return res;
   14295              :                         }
   14296              :                       }
   14297            0 :                     if ((_q61 == _q40 && ! TREE_SIDE_EFFECTS (_q61)) || (operand_equal_p (_q61, _q40, 0) && types_match (_q61, _q40)))
   14298              :                       {
   14299            0 :                         {
   14300            0 :                           tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q40, _q60, _p0, _q21, _q20 };
   14301            0 :                           tree res = generic_simplify_471 (loc, type, _p0, _p1, captures, EQ_EXPR, NE_EXPR);
   14302            0 :                           if (res) return res;
   14303              :                         }
   14304              :                       }
   14305              :                     break;
   14306              :                   }
   14307              :                 default:;
   14308              :                 }
   14309              :               break;
   14310              :             }
   14311         1072 :           default:;
   14312              :           }
   14313         1072 :         switch (TREE_CODE (_p1))
   14314              :           {
   14315          537 :           case EQ_EXPR:
   14316          537 :             {
   14317          537 :               tree _q50 = TREE_OPERAND (_p1, 0);
   14318          537 :               tree _q51 = TREE_OPERAND (_p1, 1);
   14319          537 :               if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
   14320              :                 {
   14321            0 :                   {
   14322            0 :                     tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q50, _q51 };
   14323            0 :                     tree res = generic_simplify_479 (loc, type, _p0, _p1, captures, EQ_EXPR, EQ_EXPR);
   14324            0 :                     if (res) return res;
   14325              :                   }
   14326            0 :                   {
   14327            0 :                     tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q20, _q51, _p0, _q20, _q21 };
   14328            0 :                     tree res = generic_simplify_472 (loc, type, _p0, _p1, captures, EQ_EXPR, EQ_EXPR);
   14329            0 :                     if (res) return res;
   14330              :                   }
   14331              :                 }
   14332          537 :               if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
   14333              :                 {
   14334            0 :                   {
   14335            0 :                     tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q51, _q50 };
   14336            0 :                     tree res = generic_simplify_479 (loc, type, _p0, _p1, captures, EQ_EXPR, EQ_EXPR);
   14337            0 :                     if (res) return res;
   14338              :                   }
   14339              :                 }
   14340          537 :               if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
   14341              :                 {
   14342            0 :                   {
   14343            0 :                     tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q50, _q51 };
   14344            0 :                     tree res = generic_simplify_479 (loc, type, _p0, _p1, captures, EQ_EXPR, EQ_EXPR);
   14345            0 :                     if (res) return res;
   14346              :                   }
   14347            0 :                   {
   14348            0 :                     tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q21, _q51, _p0, _q21, _q20 };
   14349            0 :                     tree res = generic_simplify_472 (loc, type, _p0, _p1, captures, EQ_EXPR, EQ_EXPR);
   14350            0 :                     if (res) return res;
   14351              :                   }
   14352              :                 }
   14353          537 :               if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
   14354              :                 {
   14355          178 :                   {
   14356          178 :                     tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q51, _q50 };
   14357          178 :                     tree res = generic_simplify_479 (loc, type, _p0, _p1, captures, EQ_EXPR, EQ_EXPR);
   14358          178 :                     if (res) return res;
   14359              :                   }
   14360          178 :                   {
   14361          178 :                     tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q21, _q50, _p0, _q21, _q20 };
   14362          178 :                     tree res = generic_simplify_472 (loc, type, _p0, _p1, captures, EQ_EXPR, EQ_EXPR);
   14363          178 :                     if (res) return res;
   14364              :                   }
   14365              :                 }
   14366          537 :               if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
   14367              :                 {
   14368            0 :                   {
   14369            0 :                     tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q20, _q50, _p0, _q20, _q21 };
   14370            0 :                     tree res = generic_simplify_472 (loc, type, _p0, _p1, captures, EQ_EXPR, EQ_EXPR);
   14371            0 :                     if (res) return res;
   14372              :                   }
   14373              :                 }
   14374              :               break;
   14375              :             }
   14376           33 :           case NE_EXPR:
   14377           33 :             {
   14378           33 :               tree _q50 = TREE_OPERAND (_p1, 0);
   14379           33 :               tree _q51 = TREE_OPERAND (_p1, 1);
   14380           33 :               if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
   14381              :                 {
   14382            0 :                   {
   14383            0 :                     tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q50, _q51 };
   14384            0 :                     tree res = generic_simplify_479 (loc, type, _p0, _p1, captures, NE_EXPR, EQ_EXPR);
   14385            0 :                     if (res) return res;
   14386              :                   }
   14387            0 :                   {
   14388            0 :                     tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q20, _q51, _p0, _q20, _q21 };
   14389            0 :                     tree res = generic_simplify_472 (loc, type, _p0, _p1, captures, EQ_EXPR, NE_EXPR);
   14390            0 :                     if (res) return res;
   14391              :                   }
   14392              :                 }
   14393           33 :               if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
   14394              :                 {
   14395            0 :                   {
   14396            0 :                     tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q51, _q50 };
   14397            0 :                     tree res = generic_simplify_479 (loc, type, _p0, _p1, captures, NE_EXPR, EQ_EXPR);
   14398            0 :                     if (res) return res;
   14399              :                   }
   14400              :                 }
   14401           33 :               if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
   14402              :                 {
   14403            0 :                   {
   14404            0 :                     tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q50, _q51 };
   14405            0 :                     tree res = generic_simplify_479 (loc, type, _p0, _p1, captures, NE_EXPR, EQ_EXPR);
   14406            0 :                     if (res) return res;
   14407              :                   }
   14408            0 :                   {
   14409            0 :                     tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q21, _q51, _p0, _q21, _q20 };
   14410            0 :                     tree res = generic_simplify_472 (loc, type, _p0, _p1, captures, EQ_EXPR, NE_EXPR);
   14411            0 :                     if (res) return res;
   14412              :                   }
   14413              :                 }
   14414           33 :               if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
   14415              :                 {
   14416           11 :                   {
   14417           11 :                     tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q51, _q50 };
   14418           11 :                     tree res = generic_simplify_479 (loc, type, _p0, _p1, captures, NE_EXPR, EQ_EXPR);
   14419           11 :                     if (res) return res;
   14420              :                   }
   14421           11 :                   {
   14422           11 :                     tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q21, _q50, _p0, _q21, _q20 };
   14423           11 :                     tree res = generic_simplify_472 (loc, type, _p0, _p1, captures, EQ_EXPR, NE_EXPR);
   14424           11 :                     if (res) return res;
   14425              :                   }
   14426              :                 }
   14427           33 :               if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
   14428              :                 {
   14429            0 :                   {
   14430            0 :                     tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q20, _q50, _p0, _q20, _q21 };
   14431            0 :                     tree res = generic_simplify_472 (loc, type, _p0, _p1, captures, EQ_EXPR, NE_EXPR);
   14432            0 :                     if (res) return res;
   14433              :                   }
   14434              :                 }
   14435              :               break;
   14436              :             }
   14437           19 :           case LT_EXPR:
   14438           19 :             {
   14439           19 :               tree _q50 = TREE_OPERAND (_p1, 0);
   14440           19 :               tree _q51 = TREE_OPERAND (_p1, 1);
   14441           19 :               if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
   14442              :                 {
   14443            0 :                   {
   14444            0 :                     tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q50, _q51 };
   14445            0 :                     tree res = generic_simplify_479 (loc, type, _p0, _p1, captures, LT_EXPR, EQ_EXPR);
   14446            0 :                     if (res) return res;
   14447              :                   }
   14448              :                 }
   14449           19 :               if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
   14450              :                 {
   14451            0 :                   {
   14452            0 :                     tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q51, _q50 };
   14453            0 :                     tree res = generic_simplify_479 (loc, type, _p0, _p1, captures, GT_EXPR, EQ_EXPR);
   14454            0 :                     if (res) return res;
   14455              :                   }
   14456              :                 }
   14457           19 :               if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
   14458              :                 {
   14459            0 :                   {
   14460            0 :                     tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q50, _q51 };
   14461            0 :                     tree res = generic_simplify_479 (loc, type, _p0, _p1, captures, LT_EXPR, EQ_EXPR);
   14462            0 :                     if (res) return res;
   14463              :                   }
   14464              :                 }
   14465           19 :               if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
   14466              :                 {
   14467            0 :                   {
   14468            0 :                     tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q51, _q50 };
   14469            0 :                     tree res = generic_simplify_479 (loc, type, _p0, _p1, captures, GT_EXPR, EQ_EXPR);
   14470            0 :                     if (res) return res;
   14471              :                   }
   14472              :                 }
   14473              :               break;
   14474              :             }
   14475           12 :           case GT_EXPR:
   14476           12 :             {
   14477           12 :               tree _q50 = TREE_OPERAND (_p1, 0);
   14478           12 :               tree _q51 = TREE_OPERAND (_p1, 1);
   14479           12 :               if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
   14480              :                 {
   14481            0 :                   {
   14482            0 :                     tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q50, _q51 };
   14483            0 :                     tree res = generic_simplify_479 (loc, type, _p0, _p1, captures, GT_EXPR, EQ_EXPR);
   14484            0 :                     if (res) return res;
   14485              :                   }
   14486              :                 }
   14487           12 :               if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
   14488              :                 {
   14489            0 :                   {
   14490            0 :                     tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q51, _q50 };
   14491            0 :                     tree res = generic_simplify_479 (loc, type, _p0, _p1, captures, LT_EXPR, EQ_EXPR);
   14492            0 :                     if (res) return res;
   14493              :                   }
   14494              :                 }
   14495           12 :               if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
   14496              :                 {
   14497            0 :                   {
   14498            0 :                     tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q50, _q51 };
   14499            0 :                     tree res = generic_simplify_479 (loc, type, _p0, _p1, captures, GT_EXPR, EQ_EXPR);
   14500            0 :                     if (res) return res;
   14501              :                   }
   14502              :                 }
   14503           12 :               if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
   14504              :                 {
   14505            0 :                   {
   14506            0 :                     tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q51, _q50 };
   14507            0 :                     tree res = generic_simplify_479 (loc, type, _p0, _p1, captures, LT_EXPR, EQ_EXPR);
   14508            0 :                     if (res) return res;
   14509              :                   }
   14510              :                 }
   14511              :               break;
   14512              :             }
   14513           36 :           case LE_EXPR:
   14514           36 :             {
   14515           36 :               tree _q50 = TREE_OPERAND (_p1, 0);
   14516           36 :               tree _q51 = TREE_OPERAND (_p1, 1);
   14517           36 :               if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
   14518              :                 {
   14519            0 :                   {
   14520            0 :                     tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q50, _q51 };
   14521            0 :                     tree res = generic_simplify_479 (loc, type, _p0, _p1, captures, LE_EXPR, EQ_EXPR);
   14522            0 :                     if (res) return res;
   14523              :                   }
   14524              :                 }
   14525           36 :               if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
   14526              :                 {
   14527            0 :                   {
   14528            0 :                     tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q51, _q50 };
   14529            0 :                     tree res = generic_simplify_479 (loc, type, _p0, _p1, captures, GE_EXPR, EQ_EXPR);
   14530            0 :                     if (res) return res;
   14531              :                   }
   14532              :                 }
   14533           36 :               if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
   14534              :                 {
   14535            0 :                   {
   14536            0 :                     tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q50, _q51 };
   14537            0 :                     tree res = generic_simplify_479 (loc, type, _p0, _p1, captures, LE_EXPR, EQ_EXPR);
   14538            0 :                     if (res) return res;
   14539              :                   }
   14540              :                 }
   14541           36 :               if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
   14542              :                 {
   14543            0 :                   {
   14544            0 :                     tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q51, _q50 };
   14545            0 :                     tree res = generic_simplify_479 (loc, type, _p0, _p1, captures, GE_EXPR, EQ_EXPR);
   14546            0 :                     if (res) return res;
   14547              :                   }
   14548              :                 }
   14549              :               break;
   14550              :             }
   14551            4 :           case GE_EXPR:
   14552            4 :             {
   14553            4 :               tree _q50 = TREE_OPERAND (_p1, 0);
   14554            4 :               tree _q51 = TREE_OPERAND (_p1, 1);
   14555            4 :               if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
   14556              :                 {
   14557            0 :                   {
   14558            0 :                     tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q50, _q51 };
   14559            0 :                     tree res = generic_simplify_479 (loc, type, _p0, _p1, captures, GE_EXPR, EQ_EXPR);
   14560            0 :                     if (res) return res;
   14561              :                   }
   14562              :                 }
   14563            4 :               if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
   14564              :                 {
   14565            0 :                   {
   14566            0 :                     tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q51, _q50 };
   14567            0 :                     tree res = generic_simplify_479 (loc, type, _p0, _p1, captures, LE_EXPR, EQ_EXPR);
   14568            0 :                     if (res) return res;
   14569              :                   }
   14570              :                 }
   14571            4 :               if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
   14572              :                 {
   14573            0 :                   {
   14574            0 :                     tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q50, _q51 };
   14575            0 :                     tree res = generic_simplify_479 (loc, type, _p0, _p1, captures, GE_EXPR, EQ_EXPR);
   14576            0 :                     if (res) return res;
   14577              :                   }
   14578              :                 }
   14579            4 :               if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
   14580              :                 {
   14581            0 :                   {
   14582            0 :                     tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q51, _q50 };
   14583            0 :                     tree res = generic_simplify_479 (loc, type, _p0, _p1, captures, LE_EXPR, EQ_EXPR);
   14584            0 :                     if (res) return res;
   14585              :                   }
   14586              :                 }
   14587              :               break;
   14588              :             }
   14589              :           default:;
   14590              :           }
   14591              :         break;
   14592              :       }
   14593          139 :     case NE_EXPR:
   14594          139 :       {
   14595          139 :         tree _q20 = TREE_OPERAND (_p0, 0);
   14596          139 :         tree _q21 = TREE_OPERAND (_p0, 1);
   14597          139 :         if (tree_min_value (_q21))
   14598              :           {
   14599           16 :             switch (TREE_CODE (_p1))
   14600              :               {
   14601            0 :               case GT_EXPR:
   14602            0 :                 {
   14603            0 :                   tree _q50 = TREE_OPERAND (_p1, 0);
   14604            0 :                   tree _q51 = TREE_OPERAND (_p1, 1);
   14605            0 :                   if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
   14606              :                     {
   14607            0 :                       {
   14608            0 :                         tree captures[3] ATTRIBUTE_UNUSED = { _p1, _q20, _q51 };
   14609            0 :                         tree res = generic_simplify_474 (loc, type, _p0, _p1, captures, NE_EXPR);
   14610            0 :                         if (res) return res;
   14611              :                       }
   14612              :                     }
   14613              :                   break;
   14614              :                 }
   14615            0 :               case LT_EXPR:
   14616            0 :                 {
   14617            0 :                   tree _q50 = TREE_OPERAND (_p1, 0);
   14618            0 :                   tree _q51 = TREE_OPERAND (_p1, 1);
   14619            0 :                   if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
   14620              :                     {
   14621            0 :                       {
   14622            0 :                         tree captures[3] ATTRIBUTE_UNUSED = { _p1, _q20, _q50 };
   14623            0 :                         tree res = generic_simplify_474 (loc, type, _p0, _p1, captures, NE_EXPR);
   14624            0 :                         if (res) return res;
   14625              :                       }
   14626              :                     }
   14627              :                   break;
   14628              :                 }
   14629            3 :               case GE_EXPR:
   14630            3 :                 {
   14631            3 :                   tree _q50 = TREE_OPERAND (_p1, 0);
   14632            3 :                   tree _q51 = TREE_OPERAND (_p1, 1);
   14633            3 :                   if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
   14634              :                     {
   14635            3 :                       {
   14636            3 :                         tree captures[4] ATTRIBUTE_UNUSED = { _p0, _q20, _p1, _q50 };
   14637            3 :                         tree res = generic_simplify_480 (loc, type, _p0, _p1, captures);
   14638            3 :                         if (res) return res;
   14639              :                       }
   14640              :                     }
   14641              :                   break;
   14642              :                 }
   14643            0 :               case LE_EXPR:
   14644            0 :                 {
   14645            0 :                   tree _q50 = TREE_OPERAND (_p1, 0);
   14646            0 :                   tree _q51 = TREE_OPERAND (_p1, 1);
   14647            0 :                   if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
   14648              :                     {
   14649            0 :                       {
   14650            0 :                         tree captures[4] ATTRIBUTE_UNUSED = { _p0, _q20, _p1, _q51 };
   14651            0 :                         tree res = generic_simplify_480 (loc, type, _p0, _p1, captures);
   14652            0 :                         if (res) return res;
   14653              :                       }
   14654              :                     }
   14655              :                   break;
   14656              :                 }
   14657              :               default:;
   14658              :               }
   14659              :           }
   14660          136 :         if (tree_max_value (_q21))
   14661              :           {
   14662            0 :             switch (TREE_CODE (_p1))
   14663              :               {
   14664            0 :               case LT_EXPR:
   14665            0 :                 {
   14666            0 :                   tree _q50 = TREE_OPERAND (_p1, 0);
   14667            0 :                   tree _q51 = TREE_OPERAND (_p1, 1);
   14668            0 :                   if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
   14669              :                     {
   14670            0 :                       {
   14671            0 :                         tree captures[3] ATTRIBUTE_UNUSED = { _p1, _q20, _q51 };
   14672            0 :                         tree res = generic_simplify_476 (loc, type, _p0, _p1, captures, NE_EXPR);
   14673            0 :                         if (res) return res;
   14674              :                       }
   14675              :                     }
   14676              :                   break;
   14677              :                 }
   14678            0 :               case GT_EXPR:
   14679            0 :                 {
   14680            0 :                   tree _q50 = TREE_OPERAND (_p1, 0);
   14681            0 :                   tree _q51 = TREE_OPERAND (_p1, 1);
   14682            0 :                   if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
   14683              :                     {
   14684            0 :                       {
   14685            0 :                         tree captures[3] ATTRIBUTE_UNUSED = { _p1, _q20, _q50 };
   14686            0 :                         tree res = generic_simplify_476 (loc, type, _p0, _p1, captures, NE_EXPR);
   14687            0 :                         if (res) return res;
   14688              :                       }
   14689              :                     }
   14690              :                   break;
   14691              :                 }
   14692              :               default:;
   14693              :               }
   14694              :           }
   14695          136 :         switch (TREE_CODE (_p1))
   14696              :           {
   14697           20 :           case EQ_EXPR:
   14698           20 :             {
   14699           20 :               tree _q50 = TREE_OPERAND (_p1, 0);
   14700           20 :               tree _q51 = TREE_OPERAND (_p1, 1);
   14701           20 :               switch (TREE_CODE (_q50))
   14702              :                 {
   14703            0 :                 CASE_CONVERT:
   14704            0 :                   {
   14705            0 :                     tree _q60 = TREE_OPERAND (_q50, 0);
   14706            0 :                     if ((_q60 == _q20 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q20, 0) && types_match (_q60, _q20)))
   14707              :                       {
   14708            0 :                         {
   14709            0 :                           tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q50, _q51 };
   14710            0 :                           tree res = generic_simplify_478 (loc, type, _p0, _p1, captures, EQ_EXPR, NE_EXPR);
   14711            0 :                           if (res) return res;
   14712              :                         }
   14713              :                       }
   14714            0 :                     if ((_q60 == _q21 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q21, 0) && types_match (_q60, _q21)))
   14715              :                       {
   14716            0 :                         {
   14717            0 :                           tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q50, _q51 };
   14718            0 :                           tree res = generic_simplify_478 (loc, type, _p0, _p1, captures, EQ_EXPR, NE_EXPR);
   14719            0 :                           if (res) return res;
   14720              :                         }
   14721              :                       }
   14722              :                     break;
   14723              :                   }
   14724           20 :                 default:;
   14725              :                 }
   14726           20 :               switch (TREE_CODE (_q51))
   14727              :                 {
   14728            0 :                 CASE_CONVERT:
   14729            0 :                   {
   14730            0 :                     tree _q70 = TREE_OPERAND (_q51, 0);
   14731            0 :                     if ((_q70 == _q20 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q20, 0) && types_match (_q70, _q20)))
   14732              :                       {
   14733            0 :                         {
   14734            0 :                           tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q51, _q50 };
   14735            0 :                           tree res = generic_simplify_478 (loc, type, _p0, _p1, captures, EQ_EXPR, NE_EXPR);
   14736            0 :                           if (res) return res;
   14737              :                         }
   14738              :                       }
   14739            0 :                     if ((_q70 == _q21 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q21, 0) && types_match (_q70, _q21)))
   14740              :                       {
   14741            0 :                         {
   14742            0 :                           tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q51, _q50 };
   14743            0 :                           tree res = generic_simplify_478 (loc, type, _p0, _p1, captures, EQ_EXPR, NE_EXPR);
   14744            0 :                           if (res) return res;
   14745              :                         }
   14746              :                       }
   14747              :                     break;
   14748              :                   }
   14749              :                 default:;
   14750              :                 }
   14751              :               break;
   14752              :             }
   14753            3 :           case NE_EXPR:
   14754            3 :             {
   14755            3 :               tree _q50 = TREE_OPERAND (_p1, 0);
   14756            3 :               tree _q51 = TREE_OPERAND (_p1, 1);
   14757            3 :               switch (TREE_CODE (_q50))
   14758              :                 {
   14759            0 :                 CASE_CONVERT:
   14760            0 :                   {
   14761            0 :                     tree _q60 = TREE_OPERAND (_q50, 0);
   14762            0 :                     if ((_q60 == _q20 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q20, 0) && types_match (_q60, _q20)))
   14763              :                       {
   14764            0 :                         {
   14765            0 :                           tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q50, _q51 };
   14766            0 :                           tree res = generic_simplify_478 (loc, type, _p0, _p1, captures, NE_EXPR, NE_EXPR);
   14767            0 :                           if (res) return res;
   14768              :                         }
   14769              :                       }
   14770            0 :                     if ((_q60 == _q21 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q21, 0) && types_match (_q60, _q21)))
   14771              :                       {
   14772            0 :                         {
   14773            0 :                           tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q50, _q51 };
   14774            0 :                           tree res = generic_simplify_478 (loc, type, _p0, _p1, captures, NE_EXPR, NE_EXPR);
   14775            0 :                           if (res) return res;
   14776              :                         }
   14777              :                       }
   14778              :                     break;
   14779              :                   }
   14780            3 :                 default:;
   14781              :                 }
   14782            3 :               switch (TREE_CODE (_q51))
   14783              :                 {
   14784            0 :                 CASE_CONVERT:
   14785            0 :                   {
   14786            0 :                     tree _q70 = TREE_OPERAND (_q51, 0);
   14787            0 :                     if ((_q70 == _q20 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q20, 0) && types_match (_q70, _q20)))
   14788              :                       {
   14789            0 :                         {
   14790            0 :                           tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q51, _q50 };
   14791            0 :                           tree res = generic_simplify_478 (loc, type, _p0, _p1, captures, NE_EXPR, NE_EXPR);
   14792            0 :                           if (res) return res;
   14793              :                         }
   14794              :                       }
   14795            0 :                     if ((_q70 == _q21 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q21, 0) && types_match (_q70, _q21)))
   14796              :                       {
   14797            0 :                         {
   14798            0 :                           tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q51, _q50 };
   14799            0 :                           tree res = generic_simplify_478 (loc, type, _p0, _p1, captures, NE_EXPR, NE_EXPR);
   14800            0 :                           if (res) return res;
   14801              :                         }
   14802              :                       }
   14803              :                     break;
   14804              :                   }
   14805              :                 default:;
   14806              :                 }
   14807              :               break;
   14808              :             }
   14809            0 :           case LT_EXPR:
   14810            0 :             {
   14811            0 :               tree _q50 = TREE_OPERAND (_p1, 0);
   14812            0 :               tree _q51 = TREE_OPERAND (_p1, 1);
   14813            0 :               switch (TREE_CODE (_q50))
   14814              :                 {
   14815            0 :                 CASE_CONVERT:
   14816            0 :                   {
   14817            0 :                     tree _q60 = TREE_OPERAND (_q50, 0);
   14818            0 :                     if ((_q60 == _q20 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q20, 0) && types_match (_q60, _q20)))
   14819              :                       {
   14820            0 :                         {
   14821            0 :                           tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q50, _q51 };
   14822            0 :                           tree res = generic_simplify_478 (loc, type, _p0, _p1, captures, LT_EXPR, NE_EXPR);
   14823            0 :                           if (res) return res;
   14824              :                         }
   14825              :                       }
   14826            0 :                     if ((_q60 == _q21 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q21, 0) && types_match (_q60, _q21)))
   14827              :                       {
   14828            0 :                         {
   14829            0 :                           tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q50, _q51 };
   14830            0 :                           tree res = generic_simplify_478 (loc, type, _p0, _p1, captures, LT_EXPR, NE_EXPR);
   14831            0 :                           if (res) return res;
   14832              :                         }
   14833              :                       }
   14834              :                     break;
   14835              :                   }
   14836            0 :                 default:;
   14837              :                 }
   14838            0 :               switch (TREE_CODE (_q51))
   14839              :                 {
   14840            0 :                 CASE_CONVERT:
   14841            0 :                   {
   14842            0 :                     tree _q70 = TREE_OPERAND (_q51, 0);
   14843            0 :                     if ((_q70 == _q20 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q20, 0) && types_match (_q70, _q20)))
   14844              :                       {
   14845            0 :                         {
   14846            0 :                           tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q51, _q50 };
   14847            0 :                           tree res = generic_simplify_478 (loc, type, _p0, _p1, captures, GT_EXPR, NE_EXPR);
   14848            0 :                           if (res) return res;
   14849              :                         }
   14850              :                       }
   14851            0 :                     if ((_q70 == _q21 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q21, 0) && types_match (_q70, _q21)))
   14852              :                       {
   14853            0 :                         {
   14854            0 :                           tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q51, _q50 };
   14855            0 :                           tree res = generic_simplify_478 (loc, type, _p0, _p1, captures, GT_EXPR, NE_EXPR);
   14856            0 :                           if (res) return res;
   14857              :                         }
   14858              :                       }
   14859              :                     break;
   14860              :                   }
   14861              :                 default:;
   14862              :                 }
   14863              :               break;
   14864              :             }
   14865            4 :           case GT_EXPR:
   14866            4 :             {
   14867            4 :               tree _q50 = TREE_OPERAND (_p1, 0);
   14868            4 :               tree _q51 = TREE_OPERAND (_p1, 1);
   14869            4 :               switch (TREE_CODE (_q50))
   14870              :                 {
   14871            0 :                 CASE_CONVERT:
   14872            0 :                   {
   14873            0 :                     tree _q60 = TREE_OPERAND (_q50, 0);
   14874            0 :                     if ((_q60 == _q20 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q20, 0) && types_match (_q60, _q20)))
   14875              :                       {
   14876            0 :                         {
   14877            0 :                           tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q50, _q51 };
   14878            0 :                           tree res = generic_simplify_478 (loc, type, _p0, _p1, captures, GT_EXPR, NE_EXPR);
   14879            0 :                           if (res) return res;
   14880              :                         }
   14881              :                       }
   14882            0 :                     if ((_q60 == _q21 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q21, 0) && types_match (_q60, _q21)))
   14883              :                       {
   14884            0 :                         {
   14885            0 :                           tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q50, _q51 };
   14886            0 :                           tree res = generic_simplify_478 (loc, type, _p0, _p1, captures, GT_EXPR, NE_EXPR);
   14887            0 :                           if (res) return res;
   14888              :                         }
   14889              :                       }
   14890              :                     break;
   14891              :                   }
   14892            4 :                 default:;
   14893              :                 }
   14894            4 :               switch (TREE_CODE (_q51))
   14895              :                 {
   14896            0 :                 CASE_CONVERT:
   14897            0 :                   {
   14898            0 :                     tree _q70 = TREE_OPERAND (_q51, 0);
   14899            0 :                     if ((_q70 == _q20 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q20, 0) && types_match (_q70, _q20)))
   14900              :                       {
   14901            0 :                         {
   14902            0 :                           tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q51, _q50 };
   14903            0 :                           tree res = generic_simplify_478 (loc, type, _p0, _p1, captures, LT_EXPR, NE_EXPR);
   14904            0 :                           if (res) return res;
   14905              :                         }
   14906              :                       }
   14907            0 :                     if ((_q70 == _q21 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q21, 0) && types_match (_q70, _q21)))
   14908              :                       {
   14909            0 :                         {
   14910            0 :                           tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q51, _q50 };
   14911            0 :                           tree res = generic_simplify_478 (loc, type, _p0, _p1, captures, LT_EXPR, NE_EXPR);
   14912            0 :                           if (res) return res;
   14913              :                         }
   14914              :                       }
   14915              :                     break;
   14916              :                   }
   14917              :                 default:;
   14918              :                 }
   14919              :               break;
   14920              :             }
   14921            0 :           case LE_EXPR:
   14922            0 :             {
   14923            0 :               tree _q50 = TREE_OPERAND (_p1, 0);
   14924            0 :               tree _q51 = TREE_OPERAND (_p1, 1);
   14925            0 :               switch (TREE_CODE (_q50))
   14926              :                 {
   14927            0 :                 CASE_CONVERT:
   14928            0 :                   {
   14929            0 :                     tree _q60 = TREE_OPERAND (_q50, 0);
   14930            0 :                     if ((_q60 == _q20 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q20, 0) && types_match (_q60, _q20)))
   14931              :                       {
   14932            0 :                         {
   14933            0 :                           tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q50, _q51 };
   14934            0 :                           tree res = generic_simplify_478 (loc, type, _p0, _p1, captures, LE_EXPR, NE_EXPR);
   14935            0 :                           if (res) return res;
   14936              :                         }
   14937              :                       }
   14938            0 :                     if ((_q60 == _q21 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q21, 0) && types_match (_q60, _q21)))
   14939              :                       {
   14940            0 :                         {
   14941            0 :                           tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q50, _q51 };
   14942            0 :                           tree res = generic_simplify_478 (loc, type, _p0, _p1, captures, LE_EXPR, NE_EXPR);
   14943            0 :                           if (res) return res;
   14944              :                         }
   14945              :                       }
   14946              :                     break;
   14947              :                   }
   14948            0 :                 default:;
   14949              :                 }
   14950            0 :               switch (TREE_CODE (_q51))
   14951              :                 {
   14952            0 :                 CASE_CONVERT:
   14953            0 :                   {
   14954            0 :                     tree _q70 = TREE_OPERAND (_q51, 0);
   14955            0 :                     if ((_q70 == _q20 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q20, 0) && types_match (_q70, _q20)))
   14956              :                       {
   14957            0 :                         {
   14958            0 :                           tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q51, _q50 };
   14959            0 :                           tree res = generic_simplify_478 (loc, type, _p0, _p1, captures, GE_EXPR, NE_EXPR);
   14960            0 :                           if (res) return res;
   14961              :                         }
   14962              :                       }
   14963            0 :                     if ((_q70 == _q21 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q21, 0) && types_match (_q70, _q21)))
   14964              :                       {
   14965            0 :                         {
   14966            0 :                           tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q51, _q50 };
   14967            0 :                           tree res = generic_simplify_478 (loc, type, _p0, _p1, captures, GE_EXPR, NE_EXPR);
   14968            0 :                           if (res) return res;
   14969              :                         }
   14970              :                       }
   14971              :                     break;
   14972              :                   }
   14973              :                 default:;
   14974              :                 }
   14975              :               break;
   14976              :             }
   14977           14 :           case GE_EXPR:
   14978           14 :             {
   14979           14 :               tree _q50 = TREE_OPERAND (_p1, 0);
   14980           14 :               tree _q51 = TREE_OPERAND (_p1, 1);
   14981           14 :               switch (TREE_CODE (_q50))
   14982              :                 {
   14983            0 :                 CASE_CONVERT:
   14984            0 :                   {
   14985            0 :                     tree _q60 = TREE_OPERAND (_q50, 0);
   14986            0 :                     if ((_q60 == _q20 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q20, 0) && types_match (_q60, _q20)))
   14987              :                       {
   14988            0 :                         {
   14989            0 :                           tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q50, _q51 };
   14990            0 :                           tree res = generic_simplify_478 (loc, type, _p0, _p1, captures, GE_EXPR, NE_EXPR);
   14991            0 :                           if (res) return res;
   14992              :                         }
   14993              :                       }
   14994            0 :                     if ((_q60 == _q21 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q21, 0) && types_match (_q60, _q21)))
   14995              :                       {
   14996            0 :                         {
   14997            0 :                           tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q50, _q51 };
   14998            0 :                           tree res = generic_simplify_478 (loc, type, _p0, _p1, captures, GE_EXPR, NE_EXPR);
   14999            0 :                           if (res) return res;
   15000              :                         }
   15001              :                       }
   15002              :                     break;
   15003              :                   }
   15004           14 :                 default:;
   15005              :                 }
   15006           14 :               switch (TREE_CODE (_q51))
   15007              :                 {
   15008            0 :                 CASE_CONVERT:
   15009            0 :                   {
   15010            0 :                     tree _q70 = TREE_OPERAND (_q51, 0);
   15011            0 :                     if ((_q70 == _q20 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q20, 0) && types_match (_q70, _q20)))
   15012              :                       {
   15013            0 :                         {
   15014            0 :                           tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q51, _q50 };
   15015            0 :                           tree res = generic_simplify_478 (loc, type, _p0, _p1, captures, LE_EXPR, NE_EXPR);
   15016            0 :                           if (res) return res;
   15017              :                         }
   15018              :                       }
   15019            0 :                     if ((_q70 == _q21 && ! TREE_SIDE_EFFECTS (_q70)) || (operand_equal_p (_q70, _q21, 0) && types_match (_q70, _q21)))
   15020              :                       {
   15021            0 :                         {
   15022            0 :                           tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q51, _q50 };
   15023            0 :                           tree res = generic_simplify_478 (loc, type, _p0, _p1, captures, LE_EXPR, NE_EXPR);
   15024            0 :                           if (res) return res;
   15025              :                         }
   15026              :                       }
   15027              :                     break;
   15028              :                   }
   15029              :                 default:;
   15030              :                 }
   15031              :               break;
   15032              :             }
   15033          136 :           default:;
   15034              :           }
   15035          136 :         switch (TREE_CODE (_q20))
   15036              :           {
   15037            0 :           CASE_CONVERT:
   15038            0 :             {
   15039            0 :               tree _q30 = TREE_OPERAND (_q20, 0);
   15040            0 :               switch (TREE_CODE (_p1))
   15041              :                 {
   15042            0 :                 case EQ_EXPR:
   15043            0 :                   {
   15044            0 :                     tree _q60 = TREE_OPERAND (_p1, 0);
   15045            0 :                     tree _q61 = TREE_OPERAND (_p1, 1);
   15046            0 :                     if ((_q60 == _q30 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q30, 0) && types_match (_q60, _q30)))
   15047              :                       {
   15048            0 :                         {
   15049            0 :                           tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q30, _q61, _p0, _q20, _q21 };
   15050            0 :                           tree res = generic_simplify_471 (loc, type, _p0, _p1, captures, NE_EXPR, EQ_EXPR);
   15051            0 :                           if (res) return res;
   15052              :                         }
   15053              :                       }
   15054            0 :                     if ((_q61 == _q30 && ! TREE_SIDE_EFFECTS (_q61)) || (operand_equal_p (_q61, _q30, 0) && types_match (_q61, _q30)))
   15055              :                       {
   15056            0 :                         {
   15057            0 :                           tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q30, _q60, _p0, _q20, _q21 };
   15058            0 :                           tree res = generic_simplify_471 (loc, type, _p0, _p1, captures, NE_EXPR, EQ_EXPR);
   15059            0 :                           if (res) return res;
   15060              :                         }
   15061              :                       }
   15062              :                     break;
   15063              :                   }
   15064            0 :                 case NE_EXPR:
   15065            0 :                   {
   15066            0 :                     tree _q60 = TREE_OPERAND (_p1, 0);
   15067            0 :                     tree _q61 = TREE_OPERAND (_p1, 1);
   15068            0 :                     if ((_q60 == _q30 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q30, 0) && types_match (_q60, _q30)))
   15069              :                       {
   15070            0 :                         {
   15071            0 :                           tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q30, _q61, _p0, _q20, _q21 };
   15072            0 :                           tree res = generic_simplify_471 (loc, type, _p0, _p1, captures, NE_EXPR, NE_EXPR);
   15073            0 :                           if (res) return res;
   15074              :                         }
   15075              :                       }
   15076            0 :                     if ((_q61 == _q30 && ! TREE_SIDE_EFFECTS (_q61)) || (operand_equal_p (_q61, _q30, 0) && types_match (_q61, _q30)))
   15077              :                       {
   15078            0 :                         {
   15079            0 :                           tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q30, _q60, _p0, _q20, _q21 };
   15080            0 :                           tree res = generic_simplify_471 (loc, type, _p0, _p1, captures, NE_EXPR, NE_EXPR);
   15081            0 :                           if (res) return res;
   15082              :                         }
   15083              :                       }
   15084              :                     break;
   15085              :                   }
   15086              :                 default:;
   15087              :                 }
   15088              :               break;
   15089              :             }
   15090          136 :           default:;
   15091              :           }
   15092          136 :         switch (TREE_CODE (_q21))
   15093              :           {
   15094            0 :           CASE_CONVERT:
   15095            0 :             {
   15096            0 :               tree _q40 = TREE_OPERAND (_q21, 0);
   15097            0 :               switch (TREE_CODE (_p1))
   15098              :                 {
   15099            0 :                 case EQ_EXPR:
   15100            0 :                   {
   15101            0 :                     tree _q60 = TREE_OPERAND (_p1, 0);
   15102            0 :                     tree _q61 = TREE_OPERAND (_p1, 1);
   15103            0 :                     if ((_q60 == _q40 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q40, 0) && types_match (_q60, _q40)))
   15104              :                       {
   15105            0 :                         {
   15106            0 :                           tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q40, _q61, _p0, _q21, _q20 };
   15107            0 :                           tree res = generic_simplify_471 (loc, type, _p0, _p1, captures, NE_EXPR, EQ_EXPR);
   15108            0 :                           if (res) return res;
   15109              :                         }
   15110              :                       }
   15111            0 :                     if ((_q61 == _q40 && ! TREE_SIDE_EFFECTS (_q61)) || (operand_equal_p (_q61, _q40, 0) && types_match (_q61, _q40)))
   15112              :                       {
   15113            0 :                         {
   15114            0 :                           tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q40, _q60, _p0, _q21, _q20 };
   15115            0 :                           tree res = generic_simplify_471 (loc, type, _p0, _p1, captures, NE_EXPR, EQ_EXPR);
   15116            0 :                           if (res) return res;
   15117              :                         }
   15118              :                       }
   15119              :                     break;
   15120              :                   }
   15121            0 :                 case NE_EXPR:
   15122            0 :                   {
   15123            0 :                     tree _q60 = TREE_OPERAND (_p1, 0);
   15124            0 :                     tree _q61 = TREE_OPERAND (_p1, 1);
   15125            0 :                     if ((_q60 == _q40 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q40, 0) && types_match (_q60, _q40)))
   15126              :                       {
   15127            0 :                         {
   15128            0 :                           tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q40, _q61, _p0, _q21, _q20 };
   15129            0 :                           tree res = generic_simplify_471 (loc, type, _p0, _p1, captures, NE_EXPR, NE_EXPR);
   15130            0 :                           if (res) return res;
   15131              :                         }
   15132              :                       }
   15133            0 :                     if ((_q61 == _q40 && ! TREE_SIDE_EFFECTS (_q61)) || (operand_equal_p (_q61, _q40, 0) && types_match (_q61, _q40)))
   15134              :                       {
   15135            0 :                         {
   15136            0 :                           tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q40, _q60, _p0, _q21, _q20 };
   15137            0 :                           tree res = generic_simplify_471 (loc, type, _p0, _p1, captures, NE_EXPR, NE_EXPR);
   15138            0 :                           if (res) return res;
   15139              :                         }
   15140              :                       }
   15141              :                     break;
   15142              :                   }
   15143              :                 default:;
   15144              :                 }
   15145              :               break;
   15146              :             }
   15147          136 :           default:;
   15148              :           }
   15149          136 :         switch (TREE_CODE (_p1))
   15150              :           {
   15151           20 :           case EQ_EXPR:
   15152           20 :             {
   15153           20 :               tree _q50 = TREE_OPERAND (_p1, 0);
   15154           20 :               tree _q51 = TREE_OPERAND (_p1, 1);
   15155           20 :               if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
   15156              :                 {
   15157            0 :                   {
   15158            0 :                     tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q50, _q51 };
   15159            0 :                     tree res = generic_simplify_479 (loc, type, _p0, _p1, captures, EQ_EXPR, NE_EXPR);
   15160            0 :                     if (res) return res;
   15161              :                   }
   15162            0 :                   {
   15163            0 :                     tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q20, _q51, _p0, _q20, _q21 };
   15164            0 :                     tree res = generic_simplify_472 (loc, type, _p0, _p1, captures, NE_EXPR, EQ_EXPR);
   15165            0 :                     if (res) return res;
   15166              :                   }
   15167              :                 }
   15168           20 :               if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
   15169              :                 {
   15170            0 :                   {
   15171            0 :                     tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q51, _q50 };
   15172            0 :                     tree res = generic_simplify_479 (loc, type, _p0, _p1, captures, EQ_EXPR, NE_EXPR);
   15173            0 :                     if (res) return res;
   15174              :                   }
   15175              :                 }
   15176           20 :               if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
   15177              :                 {
   15178            0 :                   {
   15179            0 :                     tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q50, _q51 };
   15180            0 :                     tree res = generic_simplify_479 (loc, type, _p0, _p1, captures, EQ_EXPR, NE_EXPR);
   15181            0 :                     if (res) return res;
   15182              :                   }
   15183            0 :                   {
   15184            0 :                     tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q21, _q51, _p0, _q21, _q20 };
   15185            0 :                     tree res = generic_simplify_472 (loc, type, _p0, _p1, captures, NE_EXPR, EQ_EXPR);
   15186            0 :                     if (res) return res;
   15187              :                   }
   15188              :                 }
   15189           20 :               if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
   15190              :                 {
   15191            4 :                   {
   15192            4 :                     tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q51, _q50 };
   15193            4 :                     tree res = generic_simplify_479 (loc, type, _p0, _p1, captures, EQ_EXPR, NE_EXPR);
   15194            4 :                     if (res) return res;
   15195              :                   }
   15196            4 :                   {
   15197            4 :                     tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q21, _q50, _p0, _q21, _q20 };
   15198            4 :                     tree res = generic_simplify_472 (loc, type, _p0, _p1, captures, NE_EXPR, EQ_EXPR);
   15199            4 :                     if (res) return res;
   15200              :                   }
   15201              :                 }
   15202           20 :               if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
   15203              :                 {
   15204            0 :                   {
   15205            0 :                     tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q20, _q50, _p0, _q20, _q21 };
   15206            0 :                     tree res = generic_simplify_472 (loc, type, _p0, _p1, captures, NE_EXPR, EQ_EXPR);
   15207            0 :                     if (res) return res;
   15208              :                   }
   15209              :                 }
   15210              :               break;
   15211              :             }
   15212            3 :           case NE_EXPR:
   15213            3 :             {
   15214            3 :               tree _q50 = TREE_OPERAND (_p1, 0);
   15215            3 :               tree _q51 = TREE_OPERAND (_p1, 1);
   15216            3 :               if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
   15217              :                 {
   15218            2 :                   {
   15219            2 :                     tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q50, _q51 };
   15220            2 :                     tree res = generic_simplify_479 (loc, type, _p0, _p1, captures, NE_EXPR, NE_EXPR);
   15221            2 :                     if (res) return res;
   15222              :                   }
   15223            2 :                   {
   15224            2 :                     tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q20, _q51, _p0, _q20, _q21 };
   15225            2 :                     tree res = generic_simplify_472 (loc, type, _p0, _p1, captures, NE_EXPR, NE_EXPR);
   15226            2 :                     if (res) return res;
   15227              :                   }
   15228              :                 }
   15229            3 :               if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
   15230              :                 {
   15231            0 :                   {
   15232            0 :                     tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q51, _q50 };
   15233            0 :                     tree res = generic_simplify_479 (loc, type, _p0, _p1, captures, NE_EXPR, NE_EXPR);
   15234            0 :                     if (res) return res;
   15235              :                   }
   15236              :                 }
   15237            3 :               if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
   15238              :                 {
   15239            0 :                   {
   15240            0 :                     tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q50, _q51 };
   15241            0 :                     tree res = generic_simplify_479 (loc, type, _p0, _p1, captures, NE_EXPR, NE_EXPR);
   15242            0 :                     if (res) return res;
   15243              :                   }
   15244            0 :                   {
   15245            0 :                     tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q21, _q51, _p0, _q21, _q20 };
   15246            0 :                     tree res = generic_simplify_472 (loc, type, _p0, _p1, captures, NE_EXPR, NE_EXPR);
   15247            0 :                     if (res) return res;
   15248              :                   }
   15249              :                 }
   15250            3 :               if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
   15251              :                 {
   15252            0 :                   {
   15253            0 :                     tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q51, _q50 };
   15254            0 :                     tree res = generic_simplify_479 (loc, type, _p0, _p1, captures, NE_EXPR, NE_EXPR);
   15255            0 :                     if (res) return res;
   15256              :                   }
   15257            0 :                   {
   15258            0 :                     tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q21, _q50, _p0, _q21, _q20 };
   15259            0 :                     tree res = generic_simplify_472 (loc, type, _p0, _p1, captures, NE_EXPR, NE_EXPR);
   15260            0 :                     if (res) return res;
   15261              :                   }
   15262              :                 }
   15263            3 :               if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
   15264              :                 {
   15265            0 :                   {
   15266            0 :                     tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q20, _q50, _p0, _q20, _q21 };
   15267            0 :                     tree res = generic_simplify_472 (loc, type, _p0, _p1, captures, NE_EXPR, NE_EXPR);
   15268            0 :                     if (res) return res;
   15269              :                   }
   15270              :                 }
   15271              :               break;
   15272              :             }
   15273            0 :           case LT_EXPR:
   15274            0 :             {
   15275            0 :               tree _q50 = TREE_OPERAND (_p1, 0);
   15276            0 :               tree _q51 = TREE_OPERAND (_p1, 1);
   15277            0 :               if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
   15278              :                 {
   15279            0 :                   {
   15280            0 :                     tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q50, _q51 };
   15281            0 :                     tree res = generic_simplify_479 (loc, type, _p0, _p1, captures, LT_EXPR, NE_EXPR);
   15282            0 :                     if (res) return res;
   15283              :                   }
   15284              :                 }
   15285            0 :               if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
   15286              :                 {
   15287            0 :                   {
   15288            0 :                     tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q51, _q50 };
   15289            0 :                     tree res = generic_simplify_479 (loc, type, _p0, _p1, captures, GT_EXPR, NE_EXPR);
   15290            0 :                     if (res) return res;
   15291              :                   }
   15292              :                 }
   15293            0 :               if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
   15294              :                 {
   15295            0 :                   {
   15296            0 :                     tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q50, _q51 };
   15297            0 :                     tree res = generic_simplify_479 (loc, type, _p0, _p1, captures, LT_EXPR, NE_EXPR);
   15298            0 :                     if (res) return res;
   15299              :                   }
   15300              :                 }
   15301            0 :               if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
   15302              :                 {
   15303            0 :                   {
   15304            0 :                     tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q51, _q50 };
   15305            0 :                     tree res = generic_simplify_479 (loc, type, _p0, _p1, captures, GT_EXPR, NE_EXPR);
   15306            0 :                     if (res) return res;
   15307              :                   }
   15308              :                 }
   15309              :               break;
   15310              :             }
   15311            4 :           case GT_EXPR:
   15312            4 :             {
   15313            4 :               tree _q50 = TREE_OPERAND (_p1, 0);
   15314            4 :               tree _q51 = TREE_OPERAND (_p1, 1);
   15315            4 :               if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
   15316              :                 {
   15317            4 :                   {
   15318            4 :                     tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q50, _q51 };
   15319            4 :                     tree res = generic_simplify_479 (loc, type, _p0, _p1, captures, GT_EXPR, NE_EXPR);
   15320            4 :                     if (res) return res;
   15321              :                   }
   15322              :                 }
   15323            4 :               if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
   15324              :                 {
   15325            0 :                   {
   15326            0 :                     tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q51, _q50 };
   15327            0 :                     tree res = generic_simplify_479 (loc, type, _p0, _p1, captures, LT_EXPR, NE_EXPR);
   15328            0 :                     if (res) return res;
   15329              :                   }
   15330              :                 }
   15331            4 :               if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
   15332              :                 {
   15333            0 :                   {
   15334            0 :                     tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q50, _q51 };
   15335            0 :                     tree res = generic_simplify_479 (loc, type, _p0, _p1, captures, GT_EXPR, NE_EXPR);
   15336            0 :                     if (res) return res;
   15337              :                   }
   15338              :                 }
   15339            4 :               if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
   15340              :                 {
   15341            0 :                   {
   15342            0 :                     tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q51, _q50 };
   15343            0 :                     tree res = generic_simplify_479 (loc, type, _p0, _p1, captures, LT_EXPR, NE_EXPR);
   15344            0 :                     if (res) return res;
   15345              :                   }
   15346              :                 }
   15347              :               break;
   15348              :             }
   15349            0 :           case LE_EXPR:
   15350            0 :             {
   15351            0 :               tree _q50 = TREE_OPERAND (_p1, 0);
   15352            0 :               tree _q51 = TREE_OPERAND (_p1, 1);
   15353            0 :               if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
   15354              :                 {
   15355            0 :                   {
   15356            0 :                     tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q50, _q51 };
   15357            0 :                     tree res = generic_simplify_479 (loc, type, _p0, _p1, captures, LE_EXPR, NE_EXPR);
   15358            0 :                     if (res) return res;
   15359              :                   }
   15360              :                 }
   15361            0 :               if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
   15362              :                 {
   15363            0 :                   {
   15364            0 :                     tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q51, _q50 };
   15365            0 :                     tree res = generic_simplify_479 (loc, type, _p0, _p1, captures, GE_EXPR, NE_EXPR);
   15366            0 :                     if (res) return res;
   15367              :                   }
   15368              :                 }
   15369            0 :               if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
   15370              :                 {
   15371            0 :                   {
   15372            0 :                     tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q50, _q51 };
   15373            0 :                     tree res = generic_simplify_479 (loc, type, _p0, _p1, captures, LE_EXPR, NE_EXPR);
   15374            0 :                     if (res) return res;
   15375              :                   }
   15376              :                 }
   15377            0 :               if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
   15378              :                 {
   15379            0 :                   {
   15380            0 :                     tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q51, _q50 };
   15381            0 :                     tree res = generic_simplify_479 (loc, type, _p0, _p1, captures, GE_EXPR, NE_EXPR);
   15382            0 :                     if (res) return res;
   15383              :                   }
   15384              :                 }
   15385              :               break;
   15386              :             }
   15387           14 :           case GE_EXPR:
   15388           14 :             {
   15389           14 :               tree _q50 = TREE_OPERAND (_p1, 0);
   15390           14 :               tree _q51 = TREE_OPERAND (_p1, 1);
   15391           14 :               if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
   15392              :                 {
   15393            0 :                   {
   15394            0 :                     tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q50, _q51 };
   15395            0 :                     tree res = generic_simplify_479 (loc, type, _p0, _p1, captures, GE_EXPR, NE_EXPR);
   15396            0 :                     if (res) return res;
   15397              :                   }
   15398              :                 }
   15399           14 :               if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
   15400              :                 {
   15401            0 :                   {
   15402            0 :                     tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q51, _q50 };
   15403            0 :                     tree res = generic_simplify_479 (loc, type, _p0, _p1, captures, LE_EXPR, NE_EXPR);
   15404            0 :                     if (res) return res;
   15405              :                   }
   15406              :                 }
   15407           14 :               if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
   15408              :                 {
   15409            0 :                   {
   15410            0 :                     tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q50, _q51 };
   15411            0 :                     tree res = generic_simplify_479 (loc, type, _p0, _p1, captures, GE_EXPR, NE_EXPR);
   15412            0 :                     if (res) return res;
   15413              :                   }
   15414              :                 }
   15415           14 :               if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
   15416              :                 {
   15417           14 :                   {
   15418           14 :                     tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q51, _q50 };
   15419           14 :                     tree res = generic_simplify_479 (loc, type, _p0, _p1, captures, LE_EXPR, NE_EXPR);
   15420           14 :                     if (res) return res;
   15421              :                   }
   15422              :                 }
   15423              :               break;
   15424              :             }
   15425              :           default:;
   15426              :           }
   15427              :         break;
   15428              :       }
   15429           36 :     case LE_EXPR:
   15430           36 :       {
   15431           36 :         tree _q20 = TREE_OPERAND (_p0, 0);
   15432           36 :         tree _q21 = TREE_OPERAND (_p0, 1);
   15433           36 :         switch (TREE_CODE (_p1))
   15434              :           {
   15435           16 :           case EQ_EXPR:
   15436           16 :             {
   15437           16 :               tree _q50 = TREE_OPERAND (_p1, 0);
   15438           16 :               tree _q51 = TREE_OPERAND (_p1, 1);
   15439           16 :               if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
   15440              :                 {
   15441            4 :                   if (tree_min_value (_q51))
   15442              :                     {
   15443            4 :                       {
   15444            4 :                         tree captures[3] ATTRIBUTE_UNUSED = { _q20, _q21, _p1 };
   15445            4 :                         tree res = generic_simplify_481 (loc, type, _p0, _p1, captures);
   15446            4 :                         if (res) return res;
   15447              :                       }
   15448              :                     }
   15449              :                 }
   15450           12 :               if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
   15451              :                 {
   15452            0 :                   if (tree_max_value (_q51))
   15453              :                     {
   15454            0 :                       {
   15455            0 :                         tree captures[3] ATTRIBUTE_UNUSED = { _q21, _q20, _p1 };
   15456            0 :                         tree res = generic_simplify_482 (loc, type, _p0, _p1, captures);
   15457            0 :                         if (res) return res;
   15458              :                       }
   15459              :                     }
   15460              :                 }
   15461              :               break;
   15462              :             }
   15463            0 :           case NE_EXPR:
   15464            0 :             {
   15465            0 :               tree _q50 = TREE_OPERAND (_p1, 0);
   15466            0 :               tree _q51 = TREE_OPERAND (_p1, 1);
   15467            0 :               if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
   15468              :                 {
   15469            0 :                   if (tree_min_value (_q51))
   15470              :                     {
   15471            0 :                       {
   15472            0 :                         tree captures[4] ATTRIBUTE_UNUSED = { _p1, _q20, _p0, _q21 };
   15473            0 :                         tree res = generic_simplify_483 (loc, type, _p0, _p1, captures);
   15474            0 :                         if (res) return res;
   15475              :                       }
   15476              :                     }
   15477              :                 }
   15478              :               break;
   15479              :             }
   15480           32 :           default:;
   15481              :           }
   15482           32 :         switch (TREE_CODE (_q20))
   15483              :           {
   15484            0 :           CASE_CONVERT:
   15485            0 :             {
   15486            0 :               tree _q30 = TREE_OPERAND (_q20, 0);
   15487            0 :               switch (TREE_CODE (_p1))
   15488              :                 {
   15489            0 :                 case EQ_EXPR:
   15490            0 :                   {
   15491            0 :                     tree _q60 = TREE_OPERAND (_p1, 0);
   15492            0 :                     tree _q61 = TREE_OPERAND (_p1, 1);
   15493            0 :                     if ((_q60 == _q30 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q30, 0) && types_match (_q60, _q30)))
   15494              :                       {
   15495            0 :                         {
   15496            0 :                           tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q30, _q61, _p0, _q20, _q21 };
   15497            0 :                           tree res = generic_simplify_471 (loc, type, _p0, _p1, captures, LE_EXPR, EQ_EXPR);
   15498            0 :                           if (res) return res;
   15499              :                         }
   15500              :                       }
   15501            0 :                     if ((_q61 == _q30 && ! TREE_SIDE_EFFECTS (_q61)) || (operand_equal_p (_q61, _q30, 0) && types_match (_q61, _q30)))
   15502              :                       {
   15503            0 :                         {
   15504            0 :                           tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q30, _q60, _p0, _q20, _q21 };
   15505            0 :                           tree res = generic_simplify_471 (loc, type, _p0, _p1, captures, LE_EXPR, EQ_EXPR);
   15506            0 :                           if (res) return res;
   15507              :                         }
   15508              :                       }
   15509              :                     break;
   15510              :                   }
   15511            0 :                 case NE_EXPR:
   15512            0 :                   {
   15513            0 :                     tree _q60 = TREE_OPERAND (_p1, 0);
   15514            0 :                     tree _q61 = TREE_OPERAND (_p1, 1);
   15515            0 :                     if ((_q60 == _q30 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q30, 0) && types_match (_q60, _q30)))
   15516              :                       {
   15517            0 :                         {
   15518            0 :                           tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q30, _q61, _p0, _q20, _q21 };
   15519            0 :                           tree res = generic_simplify_471 (loc, type, _p0, _p1, captures, LE_EXPR, NE_EXPR);
   15520            0 :                           if (res) return res;
   15521              :                         }
   15522              :                       }
   15523            0 :                     if ((_q61 == _q30 && ! TREE_SIDE_EFFECTS (_q61)) || (operand_equal_p (_q61, _q30, 0) && types_match (_q61, _q30)))
   15524              :                       {
   15525            0 :                         {
   15526            0 :                           tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q30, _q60, _p0, _q20, _q21 };
   15527            0 :                           tree res = generic_simplify_471 (loc, type, _p0, _p1, captures, LE_EXPR, NE_EXPR);
   15528            0 :                           if (res) return res;
   15529              :                         }
   15530              :                       }
   15531              :                     break;
   15532              :                   }
   15533              :                 default:;
   15534              :                 }
   15535              :               break;
   15536              :             }
   15537           32 :           default:;
   15538              :           }
   15539           32 :         switch (TREE_CODE (_q21))
   15540              :           {
   15541            0 :           CASE_CONVERT:
   15542            0 :             {
   15543            0 :               tree _q40 = TREE_OPERAND (_q21, 0);
   15544            0 :               switch (TREE_CODE (_p1))
   15545              :                 {
   15546            0 :                 case EQ_EXPR:
   15547            0 :                   {
   15548            0 :                     tree _q60 = TREE_OPERAND (_p1, 0);
   15549            0 :                     tree _q61 = TREE_OPERAND (_p1, 1);
   15550            0 :                     if ((_q60 == _q40 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q40, 0) && types_match (_q60, _q40)))
   15551              :                       {
   15552            0 :                         {
   15553            0 :                           tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q40, _q61, _p0, _q21, _q20 };
   15554            0 :                           tree res = generic_simplify_471 (loc, type, _p0, _p1, captures, GE_EXPR, EQ_EXPR);
   15555            0 :                           if (res) return res;
   15556              :                         }
   15557              :                       }
   15558            0 :                     if ((_q61 == _q40 && ! TREE_SIDE_EFFECTS (_q61)) || (operand_equal_p (_q61, _q40, 0) && types_match (_q61, _q40)))
   15559              :                       {
   15560            0 :                         {
   15561            0 :                           tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q40, _q60, _p0, _q21, _q20 };
   15562            0 :                           tree res = generic_simplify_471 (loc, type, _p0, _p1, captures, GE_EXPR, EQ_EXPR);
   15563            0 :                           if (res) return res;
   15564              :                         }
   15565              :                       }
   15566              :                     break;
   15567              :                   }
   15568            0 :                 case NE_EXPR:
   15569            0 :                   {
   15570            0 :                     tree _q60 = TREE_OPERAND (_p1, 0);
   15571            0 :                     tree _q61 = TREE_OPERAND (_p1, 1);
   15572            0 :                     if ((_q60 == _q40 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q40, 0) && types_match (_q60, _q40)))
   15573              :                       {
   15574            0 :                         {
   15575            0 :                           tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q40, _q61, _p0, _q21, _q20 };
   15576            0 :                           tree res = generic_simplify_471 (loc, type, _p0, _p1, captures, GE_EXPR, NE_EXPR);
   15577            0 :                           if (res) return res;
   15578              :                         }
   15579              :                       }
   15580            0 :                     if ((_q61 == _q40 && ! TREE_SIDE_EFFECTS (_q61)) || (operand_equal_p (_q61, _q40, 0) && types_match (_q61, _q40)))
   15581              :                       {
   15582            0 :                         {
   15583            0 :                           tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q40, _q60, _p0, _q21, _q20 };
   15584            0 :                           tree res = generic_simplify_471 (loc, type, _p0, _p1, captures, GE_EXPR, NE_EXPR);
   15585            0 :                           if (res) return res;
   15586              :                         }
   15587              :                       }
   15588              :                     break;
   15589              :                   }
   15590              :                 default:;
   15591              :                 }
   15592              :               break;
   15593              :             }
   15594           32 :           default:;
   15595              :           }
   15596           32 :         switch (TREE_CODE (_p1))
   15597              :           {
   15598           12 :           case EQ_EXPR:
   15599           12 :             {
   15600           12 :               tree _q50 = TREE_OPERAND (_p1, 0);
   15601           12 :               tree _q51 = TREE_OPERAND (_p1, 1);
   15602           12 :               if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
   15603              :                 {
   15604            0 :                   {
   15605            0 :                     tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q20, _q51, _p0, _q20, _q21 };
   15606            0 :                     tree res = generic_simplify_472 (loc, type, _p0, _p1, captures, LE_EXPR, EQ_EXPR);
   15607            0 :                     if (res) return res;
   15608              :                   }
   15609              :                 }
   15610           12 :               if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
   15611              :                 {
   15612            0 :                   {
   15613            0 :                     tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q21, _q51, _p0, _q21, _q20 };
   15614            0 :                     tree res = generic_simplify_472 (loc, type, _p0, _p1, captures, GE_EXPR, EQ_EXPR);
   15615            0 :                     if (res) return res;
   15616              :                   }
   15617              :                 }
   15618           12 :               if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
   15619              :                 {
   15620            0 :                   {
   15621            0 :                     tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q20, _q50, _p0, _q20, _q21 };
   15622            0 :                     tree res = generic_simplify_472 (loc, type, _p0, _p1, captures, LE_EXPR, EQ_EXPR);
   15623            0 :                     if (res) return res;
   15624              :                   }
   15625              :                 }
   15626           12 :               if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
   15627              :                 {
   15628            0 :                   {
   15629            0 :                     tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q21, _q50, _p0, _q21, _q20 };
   15630            0 :                     tree res = generic_simplify_472 (loc, type, _p0, _p1, captures, GE_EXPR, EQ_EXPR);
   15631            0 :                     if (res) return res;
   15632              :                   }
   15633              :                 }
   15634              :               break;
   15635              :             }
   15636            0 :           case NE_EXPR:
   15637            0 :             {
   15638            0 :               tree _q50 = TREE_OPERAND (_p1, 0);
   15639            0 :               tree _q51 = TREE_OPERAND (_p1, 1);
   15640            0 :               if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
   15641              :                 {
   15642            0 :                   {
   15643            0 :                     tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q20, _q51, _p0, _q20, _q21 };
   15644            0 :                     tree res = generic_simplify_472 (loc, type, _p0, _p1, captures, LE_EXPR, NE_EXPR);
   15645            0 :                     if (res) return res;
   15646              :                   }
   15647              :                 }
   15648            0 :               if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
   15649              :                 {
   15650            0 :                   {
   15651            0 :                     tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q21, _q51, _p0, _q21, _q20 };
   15652            0 :                     tree res = generic_simplify_472 (loc, type, _p0, _p1, captures, GE_EXPR, NE_EXPR);
   15653            0 :                     if (res) return res;
   15654              :                   }
   15655              :                 }
   15656            0 :               if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
   15657              :                 {
   15658            0 :                   {
   15659            0 :                     tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q20, _q50, _p0, _q20, _q21 };
   15660            0 :                     tree res = generic_simplify_472 (loc, type, _p0, _p1, captures, LE_EXPR, NE_EXPR);
   15661            0 :                     if (res) return res;
   15662              :                   }
   15663              :                 }
   15664            0 :               if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
   15665              :                 {
   15666            0 :                   {
   15667            0 :                     tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q21, _q50, _p0, _q21, _q20 };
   15668            0 :                     tree res = generic_simplify_472 (loc, type, _p0, _p1, captures, GE_EXPR, NE_EXPR);
   15669            0 :                     if (res) return res;
   15670              :                   }
   15671              :                 }
   15672              :               break;
   15673              :             }
   15674            0 :           case LT_EXPR:
   15675            0 :             {
   15676            0 :               tree _q50 = TREE_OPERAND (_p1, 0);
   15677            0 :               tree _q51 = TREE_OPERAND (_p1, 1);
   15678            0 :               if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
   15679              :                 {
   15680            0 :                   {
   15681            0 :                     tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q51 };
   15682            0 :                     tree res = generic_simplify_473 (loc, type, _p0, _p1, captures, LT_EXPR, LE_EXPR);
   15683            0 :                     if (res) return res;
   15684              :                   }
   15685              :                 }
   15686            0 :               if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
   15687              :                 {
   15688            0 :                   {
   15689            0 :                     tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q50 };
   15690            0 :                     tree res = generic_simplify_473 (loc, type, _p0, _p1, captures, GT_EXPR, LE_EXPR);
   15691            0 :                     if (res) return res;
   15692              :                   }
   15693              :                 }
   15694            0 :               if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
   15695              :                 {
   15696            0 :                   {
   15697            0 :                     tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q51 };
   15698            0 :                     tree res = generic_simplify_473 (loc, type, _p0, _p1, captures, LT_EXPR, GE_EXPR);
   15699            0 :                     if (res) return res;
   15700              :                   }
   15701              :                 }
   15702            0 :               if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
   15703              :                 {
   15704            0 :                   {
   15705            0 :                     tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q50 };
   15706            0 :                     tree res = generic_simplify_473 (loc, type, _p0, _p1, captures, GT_EXPR, GE_EXPR);
   15707            0 :                     if (res) return res;
   15708              :                   }
   15709              :                 }
   15710              :               break;
   15711              :             }
   15712            5 :           case LE_EXPR:
   15713            5 :             {
   15714            5 :               tree _q50 = TREE_OPERAND (_p1, 0);
   15715            5 :               tree _q51 = TREE_OPERAND (_p1, 1);
   15716            5 :               if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
   15717              :                 {
   15718            0 :                   {
   15719            0 :                     tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q51 };
   15720            0 :                     tree res = generic_simplify_473 (loc, type, _p0, _p1, captures, LE_EXPR, LE_EXPR);
   15721            0 :                     if (res) return res;
   15722              :                   }
   15723              :                 }
   15724            5 :               if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
   15725              :                 {
   15726            0 :                   {
   15727            0 :                     tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q50 };
   15728            0 :                     tree res = generic_simplify_473 (loc, type, _p0, _p1, captures, GE_EXPR, LE_EXPR);
   15729            0 :                     if (res) return res;
   15730              :                   }
   15731              :                 }
   15732            5 :               if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
   15733              :                 {
   15734            0 :                   {
   15735            0 :                     tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q51 };
   15736            0 :                     tree res = generic_simplify_473 (loc, type, _p0, _p1, captures, LE_EXPR, GE_EXPR);
   15737            0 :                     if (res) return res;
   15738              :                   }
   15739              :                 }
   15740            5 :               if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
   15741              :                 {
   15742            4 :                   {
   15743            4 :                     tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q50 };
   15744            4 :                     tree res = generic_simplify_473 (loc, type, _p0, _p1, captures, GE_EXPR, GE_EXPR);
   15745            4 :                     if (res) return res;
   15746              :                   }
   15747              :                 }
   15748              :               break;
   15749              :             }
   15750            4 :           case GT_EXPR:
   15751            4 :             {
   15752            4 :               tree _q50 = TREE_OPERAND (_p1, 0);
   15753            4 :               tree _q51 = TREE_OPERAND (_p1, 1);
   15754            4 :               if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
   15755              :                 {
   15756            0 :                   {
   15757            0 :                     tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q51 };
   15758            0 :                     tree res = generic_simplify_473 (loc, type, _p0, _p1, captures, GT_EXPR, LE_EXPR);
   15759            0 :                     if (res) return res;
   15760              :                   }
   15761              :                 }
   15762            4 :               if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
   15763              :                 {
   15764            0 :                   {
   15765            0 :                     tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q50 };
   15766            0 :                     tree res = generic_simplify_473 (loc, type, _p0, _p1, captures, LT_EXPR, LE_EXPR);
   15767            0 :                     if (res) return res;
   15768              :                   }
   15769              :                 }
   15770            4 :               if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
   15771              :                 {
   15772            0 :                   {
   15773            0 :                     tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q51 };
   15774            0 :                     tree res = generic_simplify_473 (loc, type, _p0, _p1, captures, GT_EXPR, GE_EXPR);
   15775            0 :                     if (res) return res;
   15776              :                   }
   15777              :                 }
   15778            4 :               if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
   15779              :                 {
   15780            0 :                   {
   15781            0 :                     tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q50 };
   15782            0 :                     tree res = generic_simplify_473 (loc, type, _p0, _p1, captures, LT_EXPR, GE_EXPR);
   15783            0 :                     if (res) return res;
   15784              :                   }
   15785              :                 }
   15786              :               break;
   15787              :             }
   15788            0 :           case GE_EXPR:
   15789            0 :             {
   15790            0 :               tree _q50 = TREE_OPERAND (_p1, 0);
   15791            0 :               tree _q51 = TREE_OPERAND (_p1, 1);
   15792            0 :               if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
   15793              :                 {
   15794            0 :                   {
   15795            0 :                     tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q51 };
   15796            0 :                     tree res = generic_simplify_473 (loc, type, _p0, _p1, captures, GE_EXPR, LE_EXPR);
   15797            0 :                     if (res) return res;
   15798              :                   }
   15799              :                 }
   15800            0 :               if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
   15801              :                 {
   15802            0 :                   {
   15803            0 :                     tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q50 };
   15804            0 :                     tree res = generic_simplify_473 (loc, type, _p0, _p1, captures, LE_EXPR, LE_EXPR);
   15805            0 :                     if (res) return res;
   15806              :                   }
   15807              :                 }
   15808            0 :               if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
   15809              :                 {
   15810            0 :                   {
   15811            0 :                     tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q51 };
   15812            0 :                     tree res = generic_simplify_473 (loc, type, _p0, _p1, captures, GE_EXPR, GE_EXPR);
   15813            0 :                     if (res) return res;
   15814              :                   }
   15815              :                 }
   15816            0 :               if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
   15817              :                 {
   15818            0 :                   {
   15819            0 :                     tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q50 };
   15820            0 :                     tree res = generic_simplify_473 (loc, type, _p0, _p1, captures, LE_EXPR, GE_EXPR);
   15821            0 :                     if (res) return res;
   15822              :                   }
   15823              :                 }
   15824              :               break;
   15825              :             }
   15826              :           default:;
   15827              :           }
   15828              :         break;
   15829              :       }
   15830           78 :     case GE_EXPR:
   15831           78 :       {
   15832           78 :         tree _q20 = TREE_OPERAND (_p0, 0);
   15833           78 :         tree _q21 = TREE_OPERAND (_p0, 1);
   15834           78 :         switch (TREE_CODE (_p1))
   15835              :           {
   15836           10 :           case EQ_EXPR:
   15837           10 :             {
   15838           10 :               tree _q50 = TREE_OPERAND (_p1, 0);
   15839           10 :               tree _q51 = TREE_OPERAND (_p1, 1);
   15840           10 :               if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
   15841              :                 {
   15842            0 :                   if (tree_min_value (_q51))
   15843              :                     {
   15844            0 :                       {
   15845            0 :                         tree captures[3] ATTRIBUTE_UNUSED = { _q21, _q20, _p1 };
   15846            0 :                         tree res = generic_simplify_481 (loc, type, _p0, _p1, captures);
   15847            0 :                         if (res) return res;
   15848              :                       }
   15849              :                     }
   15850              :                 }
   15851           10 :               if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
   15852              :                 {
   15853            4 :                   if (tree_max_value (_q51))
   15854              :                     {
   15855            4 :                       {
   15856            4 :                         tree captures[3] ATTRIBUTE_UNUSED = { _q20, _q21, _p1 };
   15857            4 :                         tree res = generic_simplify_482 (loc, type, _p0, _p1, captures);
   15858            4 :                         if (res) return res;
   15859              :                       }
   15860              :                     }
   15861              :                 }
   15862              :               break;
   15863              :             }
   15864            0 :           case NE_EXPR:
   15865            0 :             {
   15866            0 :               tree _q50 = TREE_OPERAND (_p1, 0);
   15867            0 :               tree _q51 = TREE_OPERAND (_p1, 1);
   15868            0 :               if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
   15869              :                 {
   15870            0 :                   if (tree_min_value (_q51))
   15871              :                     {
   15872            0 :                       {
   15873            0 :                         tree captures[4] ATTRIBUTE_UNUSED = { _p1, _q21, _p0, _q20 };
   15874            0 :                         tree res = generic_simplify_483 (loc, type, _p0, _p1, captures);
   15875            0 :                         if (res) return res;
   15876              :                       }
   15877              :                     }
   15878              :                 }
   15879              :               break;
   15880              :             }
   15881           74 :           default:;
   15882              :           }
   15883           74 :         switch (TREE_CODE (_q20))
   15884              :           {
   15885            4 :           CASE_CONVERT:
   15886            4 :             {
   15887            4 :               tree _q30 = TREE_OPERAND (_q20, 0);
   15888            4 :               switch (TREE_CODE (_p1))
   15889              :                 {
   15890            0 :                 case EQ_EXPR:
   15891            0 :                   {
   15892            0 :                     tree _q60 = TREE_OPERAND (_p1, 0);
   15893            0 :                     tree _q61 = TREE_OPERAND (_p1, 1);
   15894            0 :                     if ((_q60 == _q30 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q30, 0) && types_match (_q60, _q30)))
   15895              :                       {
   15896            0 :                         {
   15897            0 :                           tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q30, _q61, _p0, _q20, _q21 };
   15898            0 :                           tree res = generic_simplify_471 (loc, type, _p0, _p1, captures, GE_EXPR, EQ_EXPR);
   15899            0 :                           if (res) return res;
   15900              :                         }
   15901              :                       }
   15902            0 :                     if ((_q61 == _q30 && ! TREE_SIDE_EFFECTS (_q61)) || (operand_equal_p (_q61, _q30, 0) && types_match (_q61, _q30)))
   15903              :                       {
   15904            0 :                         {
   15905            0 :                           tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q30, _q60, _p0, _q20, _q21 };
   15906            0 :                           tree res = generic_simplify_471 (loc, type, _p0, _p1, captures, GE_EXPR, EQ_EXPR);
   15907            0 :                           if (res) return res;
   15908              :                         }
   15909              :                       }
   15910              :                     break;
   15911              :                   }
   15912            0 :                 case NE_EXPR:
   15913            0 :                   {
   15914            0 :                     tree _q60 = TREE_OPERAND (_p1, 0);
   15915            0 :                     tree _q61 = TREE_OPERAND (_p1, 1);
   15916            0 :                     if ((_q60 == _q30 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q30, 0) && types_match (_q60, _q30)))
   15917              :                       {
   15918            0 :                         {
   15919            0 :                           tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q30, _q61, _p0, _q20, _q21 };
   15920            0 :                           tree res = generic_simplify_471 (loc, type, _p0, _p1, captures, GE_EXPR, NE_EXPR);
   15921            0 :                           if (res) return res;
   15922              :                         }
   15923              :                       }
   15924            0 :                     if ((_q61 == _q30 && ! TREE_SIDE_EFFECTS (_q61)) || (operand_equal_p (_q61, _q30, 0) && types_match (_q61, _q30)))
   15925              :                       {
   15926            0 :                         {
   15927            0 :                           tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q30, _q60, _p0, _q20, _q21 };
   15928            0 :                           tree res = generic_simplify_471 (loc, type, _p0, _p1, captures, GE_EXPR, NE_EXPR);
   15929            0 :                           if (res) return res;
   15930              :                         }
   15931              :                       }
   15932              :                     break;
   15933              :                   }
   15934              :                 default:;
   15935              :                 }
   15936              :               break;
   15937              :             }
   15938           74 :           default:;
   15939              :           }
   15940           74 :         switch (TREE_CODE (_q21))
   15941              :           {
   15942            0 :           CASE_CONVERT:
   15943            0 :             {
   15944            0 :               tree _q40 = TREE_OPERAND (_q21, 0);
   15945            0 :               switch (TREE_CODE (_p1))
   15946              :                 {
   15947            0 :                 case EQ_EXPR:
   15948            0 :                   {
   15949            0 :                     tree _q60 = TREE_OPERAND (_p1, 0);
   15950            0 :                     tree _q61 = TREE_OPERAND (_p1, 1);
   15951            0 :                     if ((_q60 == _q40 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q40, 0) && types_match (_q60, _q40)))
   15952              :                       {
   15953            0 :                         {
   15954            0 :                           tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q40, _q61, _p0, _q21, _q20 };
   15955            0 :                           tree res = generic_simplify_471 (loc, type, _p0, _p1, captures, LE_EXPR, EQ_EXPR);
   15956            0 :                           if (res) return res;
   15957              :                         }
   15958              :                       }
   15959            0 :                     if ((_q61 == _q40 && ! TREE_SIDE_EFFECTS (_q61)) || (operand_equal_p (_q61, _q40, 0) && types_match (_q61, _q40)))
   15960              :                       {
   15961            0 :                         {
   15962            0 :                           tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q40, _q60, _p0, _q21, _q20 };
   15963            0 :                           tree res = generic_simplify_471 (loc, type, _p0, _p1, captures, LE_EXPR, EQ_EXPR);
   15964            0 :                           if (res) return res;
   15965              :                         }
   15966              :                       }
   15967              :                     break;
   15968              :                   }
   15969            0 :                 case NE_EXPR:
   15970            0 :                   {
   15971            0 :                     tree _q60 = TREE_OPERAND (_p1, 0);
   15972            0 :                     tree _q61 = TREE_OPERAND (_p1, 1);
   15973            0 :                     if ((_q60 == _q40 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q40, 0) && types_match (_q60, _q40)))
   15974              :                       {
   15975            0 :                         {
   15976            0 :                           tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q40, _q61, _p0, _q21, _q20 };
   15977            0 :                           tree res = generic_simplify_471 (loc, type, _p0, _p1, captures, LE_EXPR, NE_EXPR);
   15978            0 :                           if (res) return res;
   15979              :                         }
   15980              :                       }
   15981            0 :                     if ((_q61 == _q40 && ! TREE_SIDE_EFFECTS (_q61)) || (operand_equal_p (_q61, _q40, 0) && types_match (_q61, _q40)))
   15982              :                       {
   15983            0 :                         {
   15984            0 :                           tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q40, _q60, _p0, _q21, _q20 };
   15985            0 :                           tree res = generic_simplify_471 (loc, type, _p0, _p1, captures, LE_EXPR, NE_EXPR);
   15986            0 :                           if (res) return res;
   15987              :                         }
   15988              :                       }
   15989              :                     break;
   15990              :                   }
   15991              :                 default:;
   15992              :                 }
   15993              :               break;
   15994              :             }
   15995           74 :           default:;
   15996              :           }
   15997           74 :         switch (TREE_CODE (_p1))
   15998              :           {
   15999            6 :           case EQ_EXPR:
   16000            6 :             {
   16001            6 :               tree _q50 = TREE_OPERAND (_p1, 0);
   16002            6 :               tree _q51 = TREE_OPERAND (_p1, 1);
   16003            6 :               if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
   16004              :                 {
   16005            0 :                   {
   16006            0 :                     tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q20, _q51, _p0, _q20, _q21 };
   16007            0 :                     tree res = generic_simplify_472 (loc, type, _p0, _p1, captures, GE_EXPR, EQ_EXPR);
   16008            0 :                     if (res) return res;
   16009              :                   }
   16010              :                 }
   16011            6 :               if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
   16012              :                 {
   16013            0 :                   {
   16014            0 :                     tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q21, _q51, _p0, _q21, _q20 };
   16015            0 :                     tree res = generic_simplify_472 (loc, type, _p0, _p1, captures, LE_EXPR, EQ_EXPR);
   16016            0 :                     if (res) return res;
   16017              :                   }
   16018              :                 }
   16019            6 :               if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
   16020              :                 {
   16021            0 :                   {
   16022            0 :                     tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q20, _q50, _p0, _q20, _q21 };
   16023            0 :                     tree res = generic_simplify_472 (loc, type, _p0, _p1, captures, GE_EXPR, EQ_EXPR);
   16024            0 :                     if (res) return res;
   16025              :                   }
   16026              :                 }
   16027            6 :               if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
   16028              :                 {
   16029            0 :                   {
   16030            0 :                     tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q21, _q50, _p0, _q21, _q20 };
   16031            0 :                     tree res = generic_simplify_472 (loc, type, _p0, _p1, captures, LE_EXPR, EQ_EXPR);
   16032            0 :                     if (res) return res;
   16033              :                   }
   16034              :                 }
   16035              :               break;
   16036              :             }
   16037            0 :           case NE_EXPR:
   16038            0 :             {
   16039            0 :               tree _q50 = TREE_OPERAND (_p1, 0);
   16040            0 :               tree _q51 = TREE_OPERAND (_p1, 1);
   16041            0 :               if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
   16042              :                 {
   16043            0 :                   {
   16044            0 :                     tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q20, _q51, _p0, _q20, _q21 };
   16045            0 :                     tree res = generic_simplify_472 (loc, type, _p0, _p1, captures, GE_EXPR, NE_EXPR);
   16046            0 :                     if (res) return res;
   16047              :                   }
   16048              :                 }
   16049            0 :               if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
   16050              :                 {
   16051            0 :                   {
   16052            0 :                     tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q21, _q51, _p0, _q21, _q20 };
   16053            0 :                     tree res = generic_simplify_472 (loc, type, _p0, _p1, captures, LE_EXPR, NE_EXPR);
   16054            0 :                     if (res) return res;
   16055              :                   }
   16056              :                 }
   16057            0 :               if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
   16058              :                 {
   16059            0 :                   {
   16060            0 :                     tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q20, _q50, _p0, _q20, _q21 };
   16061            0 :                     tree res = generic_simplify_472 (loc, type, _p0, _p1, captures, GE_EXPR, NE_EXPR);
   16062            0 :                     if (res) return res;
   16063              :                   }
   16064              :                 }
   16065            0 :               if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
   16066              :                 {
   16067            0 :                   {
   16068            0 :                     tree captures[6] ATTRIBUTE_UNUSED = { _p1, _q21, _q50, _p0, _q21, _q20 };
   16069            0 :                     tree res = generic_simplify_472 (loc, type, _p0, _p1, captures, LE_EXPR, NE_EXPR);
   16070            0 :                     if (res) return res;
   16071              :                   }
   16072              :                 }
   16073              :               break;
   16074              :             }
   16075           12 :           case LT_EXPR:
   16076           12 :             {
   16077           12 :               tree _q50 = TREE_OPERAND (_p1, 0);
   16078           12 :               tree _q51 = TREE_OPERAND (_p1, 1);
   16079           12 :               if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
   16080              :                 {
   16081           12 :                   {
   16082           12 :                     tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q51 };
   16083           12 :                     tree res = generic_simplify_473 (loc, type, _p0, _p1, captures, LT_EXPR, GE_EXPR);
   16084           12 :                     if (res) return res;
   16085              :                   }
   16086              :                 }
   16087           11 :               if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
   16088              :                 {
   16089            0 :                   {
   16090            0 :                     tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q50 };
   16091            0 :                     tree res = generic_simplify_473 (loc, type, _p0, _p1, captures, GT_EXPR, GE_EXPR);
   16092            0 :                     if (res) return res;
   16093              :                   }
   16094              :                 }
   16095           11 :               if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
   16096              :                 {
   16097            0 :                   {
   16098            0 :                     tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q51 };
   16099            0 :                     tree res = generic_simplify_473 (loc, type, _p0, _p1, captures, LT_EXPR, LE_EXPR);
   16100            0 :                     if (res) return res;
   16101              :                   }
   16102              :                 }
   16103           11 :               if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
   16104              :                 {
   16105            0 :                   {
   16106            0 :                     tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q50 };
   16107            0 :                     tree res = generic_simplify_473 (loc, type, _p0, _p1, captures, GT_EXPR, LE_EXPR);
   16108            0 :                     if (res) return res;
   16109              :                   }
   16110              :                 }
   16111              :               break;
   16112              :             }
   16113           17 :           case LE_EXPR:
   16114           17 :             {
   16115           17 :               tree _q50 = TREE_OPERAND (_p1, 0);
   16116           17 :               tree _q51 = TREE_OPERAND (_p1, 1);
   16117           17 :               if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
   16118              :                 {
   16119           14 :                   {
   16120           14 :                     tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q51 };
   16121           14 :                     tree res = generic_simplify_473 (loc, type, _p0, _p1, captures, LE_EXPR, GE_EXPR);
   16122           14 :                     if (res) return res;
   16123              :                   }
   16124              :                 }
   16125           17 :               if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
   16126              :                 {
   16127            0 :                   {
   16128            0 :                     tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q50 };
   16129            0 :                     tree res = generic_simplify_473 (loc, type, _p0, _p1, captures, GE_EXPR, GE_EXPR);
   16130            0 :                     if (res) return res;
   16131              :                   }
   16132              :                 }
   16133           17 :               if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
   16134              :                 {
   16135            0 :                   {
   16136            0 :                     tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q51 };
   16137            0 :                     tree res = generic_simplify_473 (loc, type, _p0, _p1, captures, LE_EXPR, LE_EXPR);
   16138            0 :                     if (res) return res;
   16139              :                   }
   16140              :                 }
   16141           17 :               if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
   16142              :                 {
   16143            0 :                   {
   16144            0 :                     tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q50 };
   16145            0 :                     tree res = generic_simplify_473 (loc, type, _p0, _p1, captures, GE_EXPR, LE_EXPR);
   16146            0 :                     if (res) return res;
   16147              :                   }
   16148              :                 }
   16149              :               break;
   16150              :             }
   16151            0 :           case GT_EXPR:
   16152            0 :             {
   16153            0 :               tree _q50 = TREE_OPERAND (_p1, 0);
   16154            0 :               tree _q51 = TREE_OPERAND (_p1, 1);
   16155            0 :               if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
   16156              :                 {
   16157            0 :                   {
   16158            0 :                     tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q51 };
   16159            0 :                     tree res = generic_simplify_473 (loc, type, _p0, _p1, captures, GT_EXPR, GE_EXPR);
   16160            0 :                     if (res) return res;
   16161              :                   }
   16162              :                 }
   16163            0 :               if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
   16164              :                 {
   16165            0 :                   {
   16166            0 :                     tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q50 };
   16167            0 :                     tree res = generic_simplify_473 (loc, type, _p0, _p1, captures, LT_EXPR, GE_EXPR);
   16168            0 :                     if (res) return res;
   16169              :                   }
   16170              :                 }
   16171            0 :               if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
   16172              :                 {
   16173            0 :                   {
   16174            0 :                     tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q51 };
   16175            0 :                     tree res = generic_simplify_473 (loc, type, _p0, _p1, captures, GT_EXPR, LE_EXPR);
   16176            0 :                     if (res) return res;
   16177              :                   }
   16178              :                 }
   16179            0 :               if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
   16180              :                 {
   16181            0 :                   {
   16182            0 :                     tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q50 };
   16183            0 :                     tree res = generic_simplify_473 (loc, type, _p0, _p1, captures, LT_EXPR, LE_EXPR);
   16184            0 :                     if (res) return res;
   16185              :                   }
   16186              :                 }
   16187              :               break;
   16188              :             }
   16189           11 :           case GE_EXPR:
   16190           11 :             {
   16191           11 :               tree _q50 = TREE_OPERAND (_p1, 0);
   16192           11 :               tree _q51 = TREE_OPERAND (_p1, 1);
   16193           11 :               if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
   16194              :                 {
   16195            7 :                   {
   16196            7 :                     tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q51 };
   16197            7 :                     tree res = generic_simplify_473 (loc, type, _p0, _p1, captures, GE_EXPR, GE_EXPR);
   16198            7 :                     if (res) return res;
   16199              :                   }
   16200              :                 }
   16201           11 :               if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
   16202              :                 {
   16203            0 :                   {
   16204            0 :                     tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q50 };
   16205            0 :                     tree res = generic_simplify_473 (loc, type, _p0, _p1, captures, LE_EXPR, GE_EXPR);
   16206            0 :                     if (res) return res;
   16207              :                   }
   16208              :                 }
   16209           11 :               if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
   16210              :                 {
   16211            4 :                   {
   16212            4 :                     tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q51 };
   16213            4 :                     tree res = generic_simplify_473 (loc, type, _p0, _p1, captures, GE_EXPR, LE_EXPR);
   16214            4 :                     if (res) return res;
   16215              :                   }
   16216              :                 }
   16217           11 :               if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
   16218              :                 {
   16219            0 :                   {
   16220            0 :                     tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q50 };
   16221            0 :                     tree res = generic_simplify_473 (loc, type, _p0, _p1, captures, LE_EXPR, LE_EXPR);
   16222            0 :                     if (res) return res;
   16223              :                   }
   16224              :                 }
   16225              :               break;
   16226              :             }
   16227              :           default:;
   16228              :           }
   16229              :         break;
   16230              :       }
   16231            0 :     case MIN_EXPR:
   16232            0 :       {
   16233            0 :         tree _q20 = TREE_OPERAND (_p0, 0);
   16234            0 :         tree _q21 = TREE_OPERAND (_p0, 1);
   16235            0 :         switch (TREE_CODE (_p1))
   16236              :           {
   16237            0 :           case MAX_EXPR:
   16238            0 :             {
   16239            0 :               tree _q50 = TREE_OPERAND (_p1, 0);
   16240            0 :               tree _q51 = TREE_OPERAND (_p1, 1);
   16241            0 :               if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
   16242              :                 {
   16243            0 :                   if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
   16244              :                     {
   16245            0 :                       {
   16246            0 :                         tree captures[2] ATTRIBUTE_UNUSED = { _q20, _q21 };
   16247            0 :                         if (!HONOR_NANS (captures[0])
   16248              : )
   16249              :                           {
   16250            0 :                             if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1676;
   16251            0 :                             {
   16252            0 :                               tree res_op0;
   16253            0 :                               res_op0 = captures[0];
   16254            0 :                               tree res_op1;
   16255            0 :                               res_op1 = captures[1];
   16256            0 :                               tree _r;
   16257            0 :                               _r = fold_build2_loc (loc, BIT_AND_EXPR, type, res_op0, res_op1);
   16258            0 :                               if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 889, __FILE__, __LINE__, true);
   16259            0 :                               return _r;
   16260              :                             }
   16261            0 : next_after_fail1676:;
   16262              :                           }
   16263              :                       }
   16264              :                     }
   16265              :                 }
   16266            0 :               if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
   16267              :                 {
   16268            0 :                   if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
   16269              :                     {
   16270            0 :                       {
   16271            0 :                         tree captures[2] ATTRIBUTE_UNUSED = { _q21, _q20 };
   16272            0 :                         if (!HONOR_NANS (captures[0])
   16273              : )
   16274              :                           {
   16275            0 :                             if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1677;
   16276            0 :                             {
   16277            0 :                               tree res_op0;
   16278            0 :                               res_op0 = captures[0];
   16279            0 :                               tree res_op1;
   16280            0 :                               res_op1 = captures[1];
   16281            0 :                               tree _r;
   16282            0 :                               _r = fold_build2_loc (loc, BIT_AND_EXPR, type, res_op0, res_op1);
   16283            0 :                               if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 889, __FILE__, __LINE__, true);
   16284            0 :                               return _r;
   16285              :                             }
   16286            0 : next_after_fail1677:;
   16287              :                           }
   16288              :                       }
   16289              :                     }
   16290              :                 }
   16291              :               break;
   16292              :             }
   16293              :           default:;
   16294              :           }
   16295              :         break;
   16296              :       }
   16297           80 :     case MAX_EXPR:
   16298           80 :       {
   16299           80 :         tree _q20 = TREE_OPERAND (_p0, 0);
   16300           80 :         tree _q21 = TREE_OPERAND (_p0, 1);
   16301           80 :         switch (TREE_CODE (_p1))
   16302              :           {
   16303            0 :           case MIN_EXPR:
   16304            0 :             {
   16305            0 :               tree _q50 = TREE_OPERAND (_p1, 0);
   16306            0 :               tree _q51 = TREE_OPERAND (_p1, 1);
   16307            0 :               if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
   16308              :                 {
   16309            0 :                   if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
   16310              :                     {
   16311            0 :                       {
   16312            0 :                         tree captures[2] ATTRIBUTE_UNUSED = { _q20, _q21 };
   16313            0 :                         if (!HONOR_NANS (captures[0])
   16314              : )
   16315              :                           {
   16316            0 :                             if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1678;
   16317            0 :                             {
   16318            0 :                               tree res_op0;
   16319            0 :                               res_op0 = captures[0];
   16320            0 :                               tree res_op1;
   16321            0 :                               res_op1 = captures[1];
   16322            0 :                               tree _r;
   16323            0 :                               _r = fold_build2_loc (loc, BIT_AND_EXPR, type, res_op0, res_op1);
   16324            0 :                               if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 889, __FILE__, __LINE__, true);
   16325            0 :                               return _r;
   16326              :                             }
   16327            0 : next_after_fail1678:;
   16328              :                           }
   16329              :                       }
   16330              :                     }
   16331              :                 }
   16332            0 :               if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
   16333              :                 {
   16334            0 :                   if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
   16335              :                     {
   16336            0 :                       {
   16337            0 :                         tree captures[2] ATTRIBUTE_UNUSED = { _q20, _q21 };
   16338            0 :                         if (!HONOR_NANS (captures[0])
   16339              : )
   16340              :                           {
   16341            0 :                             if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1679;
   16342            0 :                             {
   16343            0 :                               tree res_op0;
   16344            0 :                               res_op0 = captures[0];
   16345            0 :                               tree res_op1;
   16346            0 :                               res_op1 = captures[1];
   16347            0 :                               tree _r;
   16348            0 :                               _r = fold_build2_loc (loc, BIT_AND_EXPR, type, res_op0, res_op1);
   16349            0 :                               if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 889, __FILE__, __LINE__, true);
   16350            0 :                               return _r;
   16351              :                             }
   16352            0 : next_after_fail1679:;
   16353              :                           }
   16354              :                       }
   16355              :                     }
   16356              :                 }
   16357              :               break;
   16358              :             }
   16359              :           default:;
   16360              :           }
   16361              :         break;
   16362              :       }
   16363       122583 :     case MULT_EXPR:
   16364       122583 :       {
   16365       122583 :         tree _q20 = TREE_OPERAND (_p0, 0);
   16366       122583 :         tree _q21 = TREE_OPERAND (_p0, 1);
   16367       122583 :         if (tree_zero_one_valued_p (_q20))
   16368              :           {
   16369            4 :             {
   16370            4 :               tree captures[4] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1 };
   16371            4 :               tree res = generic_simplify_484 (loc, type, _p0, _p1, captures);
   16372            4 :               if (res) return res;
   16373              :             }
   16374              :           }
   16375       122581 :         if (tree_zero_one_valued_p (_q21))
   16376              :           {
   16377            0 :             {
   16378            0 :               tree captures[4] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1 };
   16379            0 :               tree res = generic_simplify_484 (loc, type, _p0, _p1, captures);
   16380            0 :               if (res) return res;
   16381              :             }
   16382              :           }
   16383              :         break;
   16384              :       }
   16385      6369092 :     default:;
   16386              :     }
   16387      6369092 :   switch (TREE_CODE (_p1))
   16388              :     {
   16389           26 :     case MULT_EXPR:
   16390           26 :       {
   16391           26 :         tree _q30 = TREE_OPERAND (_p1, 0);
   16392           26 :         tree _q31 = TREE_OPERAND (_p1, 1);
   16393           26 :         if (tree_zero_one_valued_p (_q30))
   16394              :           {
   16395            0 :             {
   16396            0 :               tree captures[4] ATTRIBUTE_UNUSED = { _p1, _q30, _q31, _p0 };
   16397            0 :               tree res = generic_simplify_484 (loc, type, _p0, _p1, captures);
   16398            0 :               if (res) return res;
   16399              :             }
   16400              :           }
   16401           26 :         if (tree_zero_one_valued_p (_q31))
   16402              :           {
   16403            0 :             {
   16404            0 :               tree captures[4] ATTRIBUTE_UNUSED = { _p1, _q31, _q30, _p0 };
   16405            0 :               tree res = generic_simplify_484 (loc, type, _p0, _p1, captures);
   16406            0 :               if (res) return res;
   16407              :             }
   16408              :           }
   16409              :         break;
   16410              :       }
   16411      6369092 :     default:;
   16412              :     }
   16413      6369092 :   switch (TREE_CODE (_p0))
   16414              :     {
   16415        34286 :     case LSHIFT_EXPR:
   16416        34286 :       {
   16417        34286 :         tree _q20 = TREE_OPERAND (_p0, 0);
   16418        34286 :         tree _q21 = TREE_OPERAND (_p0, 1);
   16419        34286 :         switch (TREE_CODE (_q20))
   16420              :           {
   16421         5273 :           case INTEGER_CST:
   16422         5273 :             {
   16423         5273 :               if (integer_onep (_p1))
   16424              :                 {
   16425           44 :                   {
   16426           44 :                     tree captures[2] ATTRIBUTE_UNUSED = { _q20, _q21 };
   16427           44 :                     if ((wi::to_wide (captures[0]) & 1) != 0
   16428              : )
   16429              :                       {
   16430           40 :                         if (TREE_SIDE_EFFECTS (_p1)) goto next_after_fail1680;
   16431           40 :                         if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1680;
   16432           40 :                         {
   16433           40 :                           tree res_op0;
   16434           40 :                           {
   16435           40 :                             tree _o1[2], _r1;
   16436           40 :                             _o1[0] = captures[1];
   16437           40 :                             _o1[1] =  build_zero_cst (TREE_TYPE (captures[1]));
   16438           40 :                             _r1 = fold_build2_loc (loc, EQ_EXPR, boolean_type_node, _o1[0], _o1[1]);
   16439           40 :                             res_op0 = _r1;
   16440              :                           }
   16441           40 :                           tree _r;
   16442           40 :                           _r = fold_build1_loc (loc, NOP_EXPR, type, res_op0);
   16443           40 :                           if (TREE_SIDE_EFFECTS (captures[0]))
   16444            0 :                             _r = build2_loc (loc, COMPOUND_EXPR, type, fold_ignored_result (captures[0]), _r);
   16445           40 :                           if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 1015, __FILE__, __LINE__, true);
   16446           40 :                           return _r;
   16447              :                         }
   16448            0 : next_after_fail1680:;
   16449              :                       }
   16450              :                     else
   16451              :                       {
   16452            4 :                         if (TREE_SIDE_EFFECTS (_p1)) goto next_after_fail1681;
   16453            4 :                         if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1681;
   16454            4 :                         {
   16455            4 :                           tree _r;
   16456            4 :                           _r =  build_zero_cst (type);
   16457            4 :                           if (TREE_SIDE_EFFECTS (captures[0]))
   16458            0 :                             _r = build2_loc (loc, COMPOUND_EXPR, type, fold_ignored_result (captures[0]), _r);
   16459            4 :                           if (TREE_SIDE_EFFECTS (captures[1]))
   16460            0 :                             _r = build2_loc (loc, COMPOUND_EXPR, type, fold_ignored_result (captures[1]), _r);
   16461            4 :                           if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 1016, __FILE__, __LINE__, true);
   16462            4 :                           return _r;
   16463              :                         }
   16464            0 : next_after_fail1681:;
   16465              :                       }
   16466              :                   }
   16467              :                 }
   16468              :               break;
   16469              :             }
   16470         5339 :           CASE_CONVERT:
   16471         5339 :             {
   16472         5339 :               tree _q30 = TREE_OPERAND (_q20, 0);
   16473         5339 :               switch (TREE_CODE (_q21))
   16474              :                 {
   16475         5235 :                 case INTEGER_CST:
   16476         5235 :                   {
   16477         5235 :                     switch (TREE_CODE (_p1))
   16478              :                       {
   16479         5235 :                       case INTEGER_CST:
   16480         5235 :                         {
   16481         5235 :                           {
   16482         5235 :                             tree captures[6] ATTRIBUTE_UNUSED = { _p0, _p0, _q20, _q30, _q21, _p1 };
   16483         5235 :                             tree res = generic_simplify_485 (loc, type, _p0, _p1, captures, LSHIFT_EXPR);
   16484         5235 :                             if (res) return res;
   16485              :                           }
   16486         4579 :                           break;
   16487              :                         }
   16488              :                       default:;
   16489              :                       }
   16490              :                     break;
   16491              :                   }
   16492              :                 default:;
   16493              :                 }
   16494              :               break;
   16495              :             }
   16496        33586 :           default:;
   16497              :           }
   16498        33586 :         switch (TREE_CODE (_q21))
   16499              :           {
   16500        27952 :           case INTEGER_CST:
   16501        27952 :             {
   16502        27952 :               switch (TREE_CODE (_p1))
   16503              :                 {
   16504        27915 :                 case INTEGER_CST:
   16505        27915 :                   {
   16506        27915 :                     {
   16507        27915 :                       tree captures[6] ATTRIBUTE_UNUSED = { _p0, _p0, _q20, _q20, _q21, _p1 };
   16508        27915 :                       tree res = generic_simplify_486 (loc, type, _p0, _p1, captures, LSHIFT_EXPR);
   16509        27915 :                       if (res) return res;
   16510              :                     }
   16511        17101 :                     break;
   16512              :                   }
   16513              :                 default:;
   16514              :                 }
   16515              :               break;
   16516              :             }
   16517              :           default:;
   16518              :           }
   16519              :         break;
   16520              :       }
   16521      1960815 :     CASE_CONVERT:
   16522      1960815 :       {
   16523      1960815 :         tree _q20 = TREE_OPERAND (_p0, 0);
   16524      1960815 :         switch (TREE_CODE (_q20))
   16525              :           {
   16526        74787 :           case LSHIFT_EXPR:
   16527        74787 :             {
   16528        74787 :               tree _q30 = TREE_OPERAND (_q20, 0);
   16529        74787 :               tree _q31 = TREE_OPERAND (_q20, 1);
   16530        74787 :               switch (TREE_CODE (_q30))
   16531              :                 {
   16532          147 :                 CASE_CONVERT:
   16533          147 :                   {
   16534          147 :                     tree _q40 = TREE_OPERAND (_q30, 0);
   16535          147 :                     switch (TREE_CODE (_q31))
   16536              :                       {
   16537           79 :                       case INTEGER_CST:
   16538           79 :                         {
   16539           79 :                           switch (TREE_CODE (_p1))
   16540              :                             {
   16541           79 :                             case INTEGER_CST:
   16542           79 :                               {
   16543           79 :                                 {
   16544           79 :                                   tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q30, _q40, _q31, _p1 };
   16545           79 :                                   tree res = generic_simplify_487 (loc, type, _p0, _p1, captures, LSHIFT_EXPR);
   16546           79 :                                   if (res) return res;
   16547              :                                 }
   16548           79 :                                 break;
   16549              :                               }
   16550              :                             default:;
   16551              :                             }
   16552              :                           break;
   16553              :                         }
   16554              :                       default:;
   16555              :                       }
   16556              :                     break;
   16557              :                   }
   16558        74787 :                 default:;
   16559              :                 }
   16560        74787 :               switch (TREE_CODE (_q31))
   16561              :                 {
   16562           79 :                 case INTEGER_CST:
   16563           79 :                   {
   16564           79 :                     switch (TREE_CODE (_p1))
   16565              :                       {
   16566           79 :                       case INTEGER_CST:
   16567           79 :                         {
   16568           79 :                           {
   16569           79 :                             tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q30, _q30, _q31, _p1 };
   16570           79 :                             tree res = generic_simplify_488 (loc, type, _p0, _p1, captures, LSHIFT_EXPR);
   16571           79 :                             if (res) return res;
   16572              :                           }
   16573           79 :                           break;
   16574              :                         }
   16575              :                       default:;
   16576              :                       }
   16577              :                     break;
   16578              :                   }
   16579              :                 default:;
   16580              :                 }
   16581              :               break;
   16582              :             }
   16583       111484 :           case RSHIFT_EXPR:
   16584       111484 :             {
   16585       111484 :               tree _q30 = TREE_OPERAND (_q20, 0);
   16586       111484 :               tree _q31 = TREE_OPERAND (_q20, 1);
   16587       111484 :               switch (TREE_CODE (_q30))
   16588              :                 {
   16589        32482 :                 CASE_CONVERT:
   16590        32482 :                   {
   16591        32482 :                     tree _q40 = TREE_OPERAND (_q30, 0);
   16592        32482 :                     switch (TREE_CODE (_q31))
   16593              :                       {
   16594        32355 :                       case INTEGER_CST:
   16595        32355 :                         {
   16596        32355 :                           switch (TREE_CODE (_p1))
   16597              :                             {
   16598        32355 :                             case INTEGER_CST:
   16599        32355 :                               {
   16600        32355 :                                 {
   16601        32355 :                                   tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q30, _q40, _q31, _p1 };
   16602        32355 :                                   tree res = generic_simplify_487 (loc, type, _p0, _p1, captures, RSHIFT_EXPR);
   16603        32355 :                                   if (res) return res;
   16604              :                                 }
   16605        32298 :                                 break;
   16606              :                               }
   16607              :                             default:;
   16608              :                             }
   16609              :                           break;
   16610              :                         }
   16611        32425 :                       default:;
   16612              :                       }
   16613        32425 :                     switch (TREE_CODE (_q40))
   16614              :                       {
   16615            2 :                       case CALL_EXPR:
   16616            2 :                         switch (get_call_combined_fn (_q40))
   16617              :                           {
   16618            0 :                           case CFN_BUILT_IN_BSWAP128:
   16619            0 :                             if (call_expr_nargs (_q40) == 1)
   16620              :     {
   16621            0 :                                 tree _q50 = CALL_EXPR_ARG (_q40, 0);
   16622            0 :                                 switch (TREE_CODE (_q31))
   16623              :                                   {
   16624            0 :                                   case INTEGER_CST:
   16625            0 :                                     {
   16626            0 :                                       switch (TREE_CODE (_p1))
   16627              :                                         {
   16628            0 :                                         case INTEGER_CST:
   16629            0 :                                           {
   16630            0 :                                             {
   16631            0 :                                               tree captures[5] ATTRIBUTE_UNUSED = { _q20, _q40, _q50, _q31, _p1 };
   16632            0 :                                               tree res = generic_simplify_489 (loc, type, _p0, _p1, captures, CFN_BUILT_IN_BSWAP128);
   16633            0 :                                               if (res) return res;
   16634              :                                             }
   16635            0 :                                             break;
   16636              :                                           }
   16637              :                                         default:;
   16638              :                                         }
   16639              :                                       break;
   16640              :                                     }
   16641              :                                   default:;
   16642              :                                   }
   16643              :                               }
   16644              :                             break;
   16645            2 :                           case CFN_BUILT_IN_BSWAP16:
   16646            2 :                             if (call_expr_nargs (_q40) == 1)
   16647              :     {
   16648            2 :                                 tree _q50 = CALL_EXPR_ARG (_q40, 0);
   16649            2 :                                 switch (TREE_CODE (_q31))
   16650              :                                   {
   16651            2 :                                   case INTEGER_CST:
   16652            2 :                                     {
   16653            2 :                                       switch (TREE_CODE (_p1))
   16654              :                                         {
   16655            2 :                                         case INTEGER_CST:
   16656            2 :                                           {
   16657            2 :                                             {
   16658            2 :                                               tree captures[5] ATTRIBUTE_UNUSED = { _q20, _q40, _q50, _q31, _p1 };
   16659            2 :                                               tree res = generic_simplify_489 (loc, type, _p0, _p1, captures, CFN_BUILT_IN_BSWAP16);
   16660            2 :                                               if (res) return res;
   16661              :                                             }
   16662            0 :                                             break;
   16663              :                                           }
   16664              :                                         default:;
   16665              :                                         }
   16666              :                                       break;
   16667              :                                     }
   16668              :                                   default:;
   16669              :                                   }
   16670              :                               }
   16671              :                             break;
   16672            0 :                           case CFN_BUILT_IN_BSWAP32:
   16673            0 :                             if (call_expr_nargs (_q40) == 1)
   16674              :     {
   16675            0 :                                 tree _q50 = CALL_EXPR_ARG (_q40, 0);
   16676            0 :                                 switch (TREE_CODE (_q31))
   16677              :                                   {
   16678            0 :                                   case INTEGER_CST:
   16679            0 :                                     {
   16680            0 :                                       switch (TREE_CODE (_p1))
   16681              :                                         {
   16682            0 :                                         case INTEGER_CST:
   16683            0 :                                           {
   16684            0 :                                             {
   16685            0 :                                               tree captures[5] ATTRIBUTE_UNUSED = { _q20, _q40, _q50, _q31, _p1 };
   16686            0 :                                               tree res = generic_simplify_489 (loc, type, _p0, _p1, captures, CFN_BUILT_IN_BSWAP32);
   16687            0 :                                               if (res) return res;
   16688              :                                             }
   16689            0 :                                             break;
   16690              :                                           }
   16691              :                                         default:;
   16692              :                                         }
   16693              :                                       break;
   16694              :                                     }
   16695              :                                   default:;
   16696              :                                   }
   16697              :                               }
   16698              :                             break;
   16699            0 :                           case CFN_BUILT_IN_BSWAP64:
   16700            0 :                             if (call_expr_nargs (_q40) == 1)
   16701              :     {
   16702            0 :                                 tree _q50 = CALL_EXPR_ARG (_q40, 0);
   16703            0 :                                 switch (TREE_CODE (_q31))
   16704              :                                   {
   16705            0 :                                   case INTEGER_CST:
   16706            0 :                                     {
   16707            0 :                                       switch (TREE_CODE (_p1))
   16708              :                                         {
   16709            0 :                                         case INTEGER_CST:
   16710            0 :                                           {
   16711            0 :                                             {
   16712            0 :                                               tree captures[5] ATTRIBUTE_UNUSED = { _q20, _q40, _q50, _q31, _p1 };
   16713            0 :                                               tree res = generic_simplify_489 (loc, type, _p0, _p1, captures, CFN_BUILT_IN_BSWAP64);
   16714            0 :                                               if (res) return res;
   16715              :                                             }
   16716            0 :                                             break;
   16717              :                                           }
   16718              :                                         default:;
   16719              :                                         }
   16720              :                                       break;
   16721              :                                     }
   16722              :                                   default:;
   16723              :                                   }
   16724              :                               }
   16725              :                             break;
   16726              :                           default:;
   16727              :                           }
   16728              :                         break;
   16729              :                       default:;
   16730              :                       }
   16731              :                     break;
   16732              :                   }
   16733       111425 :                 default:;
   16734              :                 }
   16735       111425 :               switch (TREE_CODE (_q31))
   16736              :                 {
   16737        38873 :                 case INTEGER_CST:
   16738        38873 :                   {
   16739        38873 :                     switch (TREE_CODE (_p1))
   16740              :                       {
   16741        38801 :                       case INTEGER_CST:
   16742        38801 :                         {
   16743        38801 :                           {
   16744        38801 :                             tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q30, _q30, _q31, _p1 };
   16745        38801 :                             tree res = generic_simplify_488 (loc, type, _p0, _p1, captures, RSHIFT_EXPR);
   16746        38801 :                             if (res) return res;
   16747              :                           }
   16748        38729 :                           break;
   16749              :                         }
   16750              :                       default:;
   16751              :                       }
   16752              :                     break;
   16753              :                   }
   16754       111353 :                 default:;
   16755              :                 }
   16756       111353 :               switch (TREE_CODE (_q30))
   16757              :                 {
   16758           80 :                 case CALL_EXPR:
   16759           80 :                   switch (get_call_combined_fn (_q30))
   16760              :                     {
   16761            0 :                     case CFN_BUILT_IN_BSWAP128:
   16762            0 :                       if (call_expr_nargs (_q30) == 1)
   16763              :     {
   16764            0 :                           tree _q40 = CALL_EXPR_ARG (_q30, 0);
   16765            0 :                           switch (TREE_CODE (_q31))
   16766              :                             {
   16767            0 :                             case INTEGER_CST:
   16768            0 :                               {
   16769            0 :                                 switch (TREE_CODE (_p1))
   16770              :                                   {
   16771            0 :                                   case INTEGER_CST:
   16772            0 :                                     {
   16773            0 :                                       {
   16774            0 :                                         tree captures[5] ATTRIBUTE_UNUSED = { _q20, _q30, _q40, _q31, _p1 };
   16775            0 :                                         tree res = generic_simplify_489 (loc, type, _p0, _p1, captures, CFN_BUILT_IN_BSWAP128);
   16776            0 :                                         if (res) return res;
   16777              :                                       }
   16778            0 :                                       break;
   16779              :                                     }
   16780              :                                   default:;
   16781              :                                   }
   16782              :                                 break;
   16783              :                               }
   16784              :                             default:;
   16785              :                             }
   16786              :                         }
   16787              :                       break;
   16788            9 :                     case CFN_BUILT_IN_BSWAP16:
   16789            9 :                       if (call_expr_nargs (_q30) == 1)
   16790              :     {
   16791            9 :                           tree _q40 = CALL_EXPR_ARG (_q30, 0);
   16792            9 :                           switch (TREE_CODE (_q31))
   16793              :                             {
   16794            9 :                             case INTEGER_CST:
   16795            9 :                               {
   16796            9 :                                 switch (TREE_CODE (_p1))
   16797              :                                   {
   16798            9 :                                   case INTEGER_CST:
   16799            9 :                                     {
   16800            9 :                                       {
   16801            9 :                                         tree captures[5] ATTRIBUTE_UNUSED = { _q20, _q30, _q40, _q31, _p1 };
   16802            9 :                                         tree res = generic_simplify_489 (loc, type, _p0, _p1, captures, CFN_BUILT_IN_BSWAP16);
   16803            9 :                                         if (res) return res;
   16804              :                                       }
   16805            0 :                                       break;
   16806              :                                     }
   16807              :                                   default:;
   16808              :                                   }
   16809              :                                 break;
   16810              :                               }
   16811              :                             default:;
   16812              :                             }
   16813              :                         }
   16814              :                       break;
   16815            0 :                     case CFN_BUILT_IN_BSWAP32:
   16816            0 :                       if (call_expr_nargs (_q30) == 1)
   16817              :     {
   16818            0 :                           tree _q40 = CALL_EXPR_ARG (_q30, 0);
   16819            0 :                           switch (TREE_CODE (_q31))
   16820              :                             {
   16821            0 :                             case INTEGER_CST:
   16822            0 :                               {
   16823            0 :                                 switch (TREE_CODE (_p1))
   16824              :                                   {
   16825            0 :                                   case INTEGER_CST:
   16826            0 :                                     {
   16827            0 :                                       {
   16828            0 :                                         tree captures[5] ATTRIBUTE_UNUSED = { _q20, _q30, _q40, _q31, _p1 };
   16829            0 :                                         tree res = generic_simplify_489 (loc, type, _p0, _p1, captures, CFN_BUILT_IN_BSWAP32);
   16830            0 :                                         if (res) return res;
   16831              :                                       }
   16832            0 :                                       break;
   16833              :                                     }
   16834              :                                   default:;
   16835              :                                   }
   16836              :                                 break;
   16837              :                               }
   16838              :                             default:;
   16839              :                             }
   16840              :                         }
   16841              :                       break;
   16842           71 :                     case CFN_BUILT_IN_BSWAP64:
   16843           71 :                       if (call_expr_nargs (_q30) == 1)
   16844              :     {
   16845           71 :                           tree _q40 = CALL_EXPR_ARG (_q30, 0);
   16846           71 :                           switch (TREE_CODE (_q31))
   16847              :                             {
   16848           70 :                             case INTEGER_CST:
   16849           70 :                               {
   16850           70 :                                 switch (TREE_CODE (_p1))
   16851              :                                   {
   16852           70 :                                   case INTEGER_CST:
   16853           70 :                                     {
   16854           70 :                                       {
   16855           70 :                                         tree captures[5] ATTRIBUTE_UNUSED = { _q20, _q30, _q40, _q31, _p1 };
   16856           70 :                                         tree res = generic_simplify_489 (loc, type, _p0, _p1, captures, CFN_BUILT_IN_BSWAP64);
   16857           70 :                                         if (res) return res;
   16858              :                                       }
   16859            0 :                                       break;
   16860              :                                     }
   16861              :                                   default:;
   16862              :                                   }
   16863              :                                 break;
   16864              :                               }
   16865              :                             default:;
   16866              :                             }
   16867              :                         }
   16868              :                       break;
   16869              :                     default:;
   16870              :                     }
   16871              :                   break;
   16872              :                 default:;
   16873              :                 }
   16874              :               break;
   16875              :             }
   16876        29670 :           case CALL_EXPR:
   16877        29670 :             switch (get_call_combined_fn (_q20))
   16878              :               {
   16879            0 :               case CFN_BUILT_IN_BSWAP128:
   16880            0 :                 if (call_expr_nargs (_q20) == 1)
   16881              :     {
   16882            0 :                     tree _q30 = CALL_EXPR_ARG (_q20, 0);
   16883            0 :                     switch (TREE_CODE (_p1))
   16884              :                       {
   16885            0 :                       case INTEGER_CST:
   16886            0 :                         {
   16887            0 :                           {
   16888            0 :                             tree captures[3] ATTRIBUTE_UNUSED = { _q20, _q30, _p1 };
   16889            0 :                             tree res = generic_simplify_490 (loc, type, _p0, _p1, captures, CFN_BUILT_IN_BSWAP128);
   16890            0 :                             if (res) return res;
   16891              :                           }
   16892            0 :                           break;
   16893              :                         }
   16894              :                       default:;
   16895              :                       }
   16896              :                   }
   16897              :                 break;
   16898           10 :               case CFN_BUILT_IN_BSWAP16:
   16899           10 :                 if (call_expr_nargs (_q20) == 1)
   16900              :     {
   16901           10 :                     tree _q30 = CALL_EXPR_ARG (_q20, 0);
   16902           10 :                     switch (TREE_CODE (_p1))
   16903              :                       {
   16904           10 :                       case INTEGER_CST:
   16905           10 :                         {
   16906           10 :                           {
   16907           10 :                             tree captures[3] ATTRIBUTE_UNUSED = { _q20, _q30, _p1 };
   16908           10 :                             tree res = generic_simplify_490 (loc, type, _p0, _p1, captures, CFN_BUILT_IN_BSWAP16);
   16909           10 :                             if (res) return res;
   16910              :                           }
   16911            0 :                           break;
   16912              :                         }
   16913              :                       default:;
   16914              :                       }
   16915              :                   }
   16916              :                 break;
   16917            4 :               case CFN_BUILT_IN_BSWAP32:
   16918            4 :                 if (call_expr_nargs (_q20) == 1)
   16919              :     {
   16920            4 :                     tree _q30 = CALL_EXPR_ARG (_q20, 0);
   16921            4 :                     switch (TREE_CODE (_p1))
   16922              :                       {
   16923            4 :                       case INTEGER_CST:
   16924            4 :                         {
   16925            4 :                           {
   16926            4 :                             tree captures[3] ATTRIBUTE_UNUSED = { _q20, _q30, _p1 };
   16927            4 :                             tree res = generic_simplify_490 (loc, type, _p0, _p1, captures, CFN_BUILT_IN_BSWAP32);
   16928            4 :                             if (res) return res;
   16929              :                           }
   16930            0 :                           break;
   16931              :                         }
   16932              :                       default:;
   16933              :                       }
   16934              :                   }
   16935              :                 break;
   16936            4 :               case CFN_BUILT_IN_BSWAP64:
   16937            4 :                 if (call_expr_nargs (_q20) == 1)
   16938              :     {
   16939            4 :                     tree _q30 = CALL_EXPR_ARG (_q20, 0);
   16940            4 :                     switch (TREE_CODE (_p1))
   16941              :                       {
   16942            4 :                       case INTEGER_CST:
   16943            4 :                         {
   16944            4 :                           {
   16945            4 :                             tree captures[3] ATTRIBUTE_UNUSED = { _q20, _q30, _p1 };
   16946            4 :                             tree res = generic_simplify_490 (loc, type, _p0, _p1, captures, CFN_BUILT_IN_BSWAP64);
   16947            4 :                             if (res) return res;
   16948              :                           }
   16949            0 :                           break;
   16950              :                         }
   16951              :                       default:;
   16952              :                       }
   16953              :                   }
   16954              :                 break;
   16955              :               default:;
   16956              :               }
   16957              :             break;
   16958              :           default:;
   16959              :           }
   16960              :         break;
   16961              :       }
   16962        78992 :     case RSHIFT_EXPR:
   16963        78992 :       {
   16964        78992 :         tree _q20 = TREE_OPERAND (_p0, 0);
   16965        78992 :         tree _q21 = TREE_OPERAND (_p0, 1);
   16966        78992 :         switch (TREE_CODE (_q20))
   16967              :           {
   16968        28514 :           CASE_CONVERT:
   16969        28514 :             {
   16970        28514 :               tree _q30 = TREE_OPERAND (_q20, 0);
   16971        28514 :               switch (TREE_CODE (_q21))
   16972              :                 {
   16973        25276 :                 case INTEGER_CST:
   16974        25276 :                   {
   16975        25276 :                     switch (TREE_CODE (_p1))
   16976              :                       {
   16977        25276 :                       case INTEGER_CST:
   16978        25276 :                         {
   16979        25276 :                           {
   16980        25276 :                             tree captures[6] ATTRIBUTE_UNUSED = { _p0, _p0, _q20, _q30, _q21, _p1 };
   16981        25276 :                             tree res = generic_simplify_485 (loc, type, _p0, _p1, captures, RSHIFT_EXPR);
   16982        25276 :                             if (res) return res;
   16983              :                           }
   16984        24952 :                           break;
   16985              :                         }
   16986              :                       default:;
   16987              :                       }
   16988              :                     break;
   16989              :                   }
   16990        28190 :                 default:;
   16991              :                 }
   16992        28190 :               switch (TREE_CODE (_q30))
   16993              :                 {
   16994           22 :                 case CALL_EXPR:
   16995           22 :                   switch (get_call_combined_fn (_q30))
   16996              :                     {
   16997            0 :                     case CFN_BUILT_IN_BSWAP128:
   16998            0 :                       if (call_expr_nargs (_q30) == 1)
   16999              :     {
   17000            0 :                           tree _q40 = CALL_EXPR_ARG (_q30, 0);
   17001            0 :                           switch (TREE_CODE (_q21))
   17002              :                             {
   17003            0 :                             case INTEGER_CST:
   17004            0 :                               {
   17005            0 :                                 switch (TREE_CODE (_p1))
   17006              :                                   {
   17007            0 :                                   case INTEGER_CST:
   17008            0 :                                     {
   17009            0 :                                       {
   17010            0 :                                         tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q30, _q40, _q21, _p1 };
   17011            0 :                                         tree res = generic_simplify_489 (loc, type, _p0, _p1, captures, CFN_BUILT_IN_BSWAP128);
   17012            0 :                                         if (res) return res;
   17013              :                                       }
   17014            0 :                                       break;
   17015              :                                     }
   17016              :                                   default:;
   17017              :                                   }
   17018              :                                 break;
   17019              :                               }
   17020              :                             default:;
   17021              :                             }
   17022              :                         }
   17023              :                       break;
   17024            1 :                     case CFN_BUILT_IN_BSWAP16:
   17025            1 :                       if (call_expr_nargs (_q30) == 1)
   17026              :     {
   17027            1 :                           tree _q40 = CALL_EXPR_ARG (_q30, 0);
   17028            1 :                           switch (TREE_CODE (_q21))
   17029              :                             {
   17030            0 :                             case INTEGER_CST:
   17031            0 :                               {
   17032            0 :                                 switch (TREE_CODE (_p1))
   17033              :                                   {
   17034            0 :                                   case INTEGER_CST:
   17035            0 :                                     {
   17036            0 :                                       {
   17037            0 :                                         tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q30, _q40, _q21, _p1 };
   17038            0 :                                         tree res = generic_simplify_489 (loc, type, _p0, _p1, captures, CFN_BUILT_IN_BSWAP16);
   17039            0 :                                         if (res) return res;
   17040              :                                       }
   17041            0 :                                       break;
   17042              :                                     }
   17043              :                                   default:;
   17044              :                                   }
   17045              :                                 break;
   17046              :                               }
   17047              :                             default:;
   17048              :                             }
   17049              :                         }
   17050              :                       break;
   17051            9 :                     case CFN_BUILT_IN_BSWAP32:
   17052            9 :                       if (call_expr_nargs (_q30) == 1)
   17053              :     {
   17054            9 :                           tree _q40 = CALL_EXPR_ARG (_q30, 0);
   17055            9 :                           switch (TREE_CODE (_q21))
   17056              :                             {
   17057            9 :                             case INTEGER_CST:
   17058            9 :                               {
   17059            9 :                                 switch (TREE_CODE (_p1))
   17060              :                                   {
   17061            9 :                                   case INTEGER_CST:
   17062            9 :                                     {
   17063            9 :                                       {
   17064            9 :                                         tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q30, _q40, _q21, _p1 };
   17065            9 :                                         tree res = generic_simplify_489 (loc, type, _p0, _p1, captures, CFN_BUILT_IN_BSWAP32);
   17066            9 :                                         if (res) return res;
   17067              :                                       }
   17068            0 :                                       break;
   17069              :                                     }
   17070              :                                   default:;
   17071              :                                   }
   17072              :                                 break;
   17073              :                               }
   17074              :                             default:;
   17075              :                             }
   17076              :                         }
   17077              :                       break;
   17078           12 :                     case CFN_BUILT_IN_BSWAP64:
   17079           12 :                       if (call_expr_nargs (_q30) == 1)
   17080              :     {
   17081           12 :                           tree _q40 = CALL_EXPR_ARG (_q30, 0);
   17082           12 :                           switch (TREE_CODE (_q21))
   17083              :                             {
   17084           12 :                             case INTEGER_CST:
   17085           12 :                               {
   17086           12 :                                 switch (TREE_CODE (_p1))
   17087              :                                   {
   17088           12 :                                   case INTEGER_CST:
   17089           12 :                                     {
   17090           12 :                                       {
   17091           12 :                                         tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q30, _q40, _q21, _p1 };
   17092           12 :                                         tree res = generic_simplify_489 (loc, type, _p0, _p1, captures, CFN_BUILT_IN_BSWAP64);
   17093           12 :                                         if (res) return res;
   17094              :                                       }
   17095            0 :                                       break;
   17096              :                                     }
   17097              :                                   default:;
   17098              :                                   }
   17099              :                                 break;
   17100              :                               }
   17101              :                             default:;
   17102              :                             }
   17103              :                         }
   17104              :                       break;
   17105              :                     default:;
   17106              :                     }
   17107              :                   break;
   17108              :                 default:;
   17109              :                 }
   17110              :               break;
   17111              :             }
   17112        78647 :           default:;
   17113              :           }
   17114        78647 :         switch (TREE_CODE (_q21))
   17115              :           {
   17116        34305 :           case INTEGER_CST:
   17117        34305 :             {
   17118        34305 :               switch (TREE_CODE (_p1))
   17119              :                 {
   17120        34160 :                 case INTEGER_CST:
   17121        34160 :                   {
   17122        34160 :                     {
   17123        34160 :                       tree captures[6] ATTRIBUTE_UNUSED = { _p0, _p0, _q20, _q20, _q21, _p1 };
   17124        34160 :                       tree res = generic_simplify_486 (loc, type, _p0, _p1, captures, RSHIFT_EXPR);
   17125        34160 :                       if (res) return res;
   17126              :                     }
   17127        32365 :                     break;
   17128              :                   }
   17129              :                 default:;
   17130              :                 }
   17131              :               break;
   17132              :             }
   17133        76852 :           default:;
   17134              :           }
   17135        76852 :         switch (TREE_CODE (_q20))
   17136              :           {
   17137          140 :           case CALL_EXPR:
   17138          140 :             switch (get_call_combined_fn (_q20))
   17139              :               {
   17140            0 :               case CFN_BUILT_IN_BSWAP128:
   17141            0 :                 if (call_expr_nargs (_q20) == 1)
   17142              :     {
   17143            0 :                     tree _q30 = CALL_EXPR_ARG (_q20, 0);
   17144            0 :                     switch (TREE_CODE (_q21))
   17145              :                       {
   17146            0 :                       case INTEGER_CST:
   17147            0 :                         {
   17148            0 :                           switch (TREE_CODE (_p1))
   17149              :                             {
   17150            0 :                             case INTEGER_CST:
   17151            0 :                               {
   17152            0 :                                 {
   17153            0 :                                   tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q20, _q30, _q21, _p1 };
   17154            0 :                                   tree res = generic_simplify_489 (loc, type, _p0, _p1, captures, CFN_BUILT_IN_BSWAP128);
   17155            0 :                                   if (res) return res;
   17156              :                                 }
   17157            0 :                                 break;
   17158              :                               }
   17159              :                             default:;
   17160              :                             }
   17161              :                           break;
   17162              :                         }
   17163              :                       default:;
   17164              :                       }
   17165              :                   }
   17166              :                 break;
   17167            0 :               case CFN_BUILT_IN_BSWAP16:
   17168            0 :                 if (call_expr_nargs (_q20) == 1)
   17169              :     {
   17170            0 :                     tree _q30 = CALL_EXPR_ARG (_q20, 0);
   17171            0 :                     switch (TREE_CODE (_q21))
   17172              :                       {
   17173            0 :                       case INTEGER_CST:
   17174            0 :                         {
   17175            0 :                           switch (TREE_CODE (_p1))
   17176              :                             {
   17177            0 :                             case INTEGER_CST:
   17178            0 :                               {
   17179            0 :                                 {
   17180            0 :                                   tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q20, _q30, _q21, _p1 };
   17181            0 :                                   tree res = generic_simplify_489 (loc, type, _p0, _p1, captures, CFN_BUILT_IN_BSWAP16);
   17182            0 :                                   if (res) return res;
   17183              :                                 }
   17184            0 :                                 break;
   17185              :                               }
   17186              :                             default:;
   17187              :                             }
   17188              :                           break;
   17189              :                         }
   17190              :                       default:;
   17191              :                       }
   17192              :                   }
   17193              :                 break;
   17194           60 :               case CFN_BUILT_IN_BSWAP32:
   17195           60 :                 if (call_expr_nargs (_q20) == 1)
   17196              :     {
   17197           60 :                     tree _q30 = CALL_EXPR_ARG (_q20, 0);
   17198           60 :                     switch (TREE_CODE (_q21))
   17199              :                       {
   17200           59 :                       case INTEGER_CST:
   17201           59 :                         {
   17202           59 :                           switch (TREE_CODE (_p1))
   17203              :                             {
   17204           59 :                             case INTEGER_CST:
   17205           59 :                               {
   17206           59 :                                 {
   17207           59 :                                   tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q20, _q30, _q21, _p1 };
   17208           59 :                                   tree res = generic_simplify_489 (loc, type, _p0, _p1, captures, CFN_BUILT_IN_BSWAP32);
   17209           59 :                                   if (res) return res;
   17210              :                                 }
   17211            0 :                                 break;
   17212              :                               }
   17213              :                             default:;
   17214              :                             }
   17215              :                           break;
   17216              :                         }
   17217              :                       default:;
   17218              :                       }
   17219              :                   }
   17220              :                 break;
   17221           73 :               case CFN_BUILT_IN_BSWAP64:
   17222           73 :                 if (call_expr_nargs (_q20) == 1)
   17223              :     {
   17224           73 :                     tree _q30 = CALL_EXPR_ARG (_q20, 0);
   17225           73 :                     switch (TREE_CODE (_q21))
   17226              :                       {
   17227           73 :                       case INTEGER_CST:
   17228           73 :                         {
   17229           73 :                           switch (TREE_CODE (_p1))
   17230              :                             {
   17231           73 :                             case INTEGER_CST:
   17232           73 :                               {
   17233           73 :                                 {
   17234           73 :                                   tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q20, _q30, _q21, _p1 };
   17235           73 :                                   tree res = generic_simplify_489 (loc, type, _p0, _p1, captures, CFN_BUILT_IN_BSWAP64);
   17236           73 :                                   if (res) return res;
   17237              :                                 }
   17238            0 :                                 break;
   17239              :                               }
   17240              :                             default:;
   17241              :                             }
   17242              :                           break;
   17243              :                         }
   17244              :                       default:;
   17245              :                       }
   17246              :                   }
   17247              :                 break;
   17248              :               default:;
   17249              :               }
   17250              :             break;
   17251              :           default:;
   17252              :           }
   17253              :         break;
   17254              :       }
   17255           65 :     case VEC_COND_EXPR:
   17256           65 :       {
   17257           65 :         tree _q20 = TREE_OPERAND (_p0, 0);
   17258           65 :         tree _q21 = TREE_OPERAND (_p0, 1);
   17259           65 :         tree _q22 = TREE_OPERAND (_p0, 2);
   17260           65 :         switch (TREE_CODE (_p1))
   17261              :           {
   17262           47 :           case VEC_COND_EXPR:
   17263           47 :             {
   17264           47 :               tree _q60 = TREE_OPERAND (_p1, 0);
   17265           47 :               tree _q61 = TREE_OPERAND (_p1, 1);
   17266           47 :               tree _q62 = TREE_OPERAND (_p1, 2);
   17267           47 :               if ((_q60 == _q20 && ! TREE_SIDE_EFFECTS (_q60)) || (operand_equal_p (_q60, _q20, 0) && types_match (_q60, _q20)))
   17268              :                 {
   17269            0 :                   {
   17270            0 :                     tree captures[7] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _q22, _p1, _q61, _q62 };
   17271            0 :                     if (VECTOR_TYPE_P (type)
   17272            0 :  && (TREE_CODE_CLASS (BIT_AND_EXPR) != tcc_comparison
   17273              :  || types_match (type, TREE_TYPE (captures[2]))
   17274              :  || expand_vec_cond_expr_p (type, TREE_TYPE (captures[1]))
   17275              :  || (optimize_vectors_before_lowering_p ()
   17276              :  && !expand_vec_cond_expr_p (TREE_TYPE (captures[2]), TREE_TYPE (captures[1]))))
   17277              : )
   17278              :                       {
   17279            0 :                         if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1682;
   17280            0 :                         {
   17281            0 :                           tree res_op0;
   17282            0 :                           res_op0 = captures[1];
   17283            0 :                           tree res_op1;
   17284            0 :                           {
   17285            0 :                             tree _o1[2], _r1;
   17286            0 :                             _o1[0] = captures[2];
   17287            0 :                             _o1[1] = captures[5];
   17288            0 :                             _r1 = fold_build2_loc (loc, BIT_AND_EXPR, type, _o1[0], _o1[1]);
   17289            0 :                             if (EXPR_P (_r1))
   17290            0 :                               goto next_after_fail1682;
   17291            0 :                             res_op1 = _r1;
   17292              :                           }
   17293            0 :                           tree res_op2;
   17294            0 :                           {
   17295            0 :                             tree _o1[2], _r1;
   17296            0 :                             _o1[0] = captures[3];
   17297            0 :                             _o1[1] = captures[6];
   17298            0 :                             _r1 = fold_build2_loc (loc, BIT_AND_EXPR, type, _o1[0], _o1[1]);
   17299            0 :                             if (EXPR_P (_r1))
   17300            0 :                               goto next_after_fail1682;
   17301            0 :                             res_op2 = _r1;
   17302              :                           }
   17303            0 :                           tree _r;
   17304            0 :                           _r = fold_build3_loc (loc, VEC_COND_EXPR, type, res_op0, res_op1, res_op2);
   17305            0 :                           if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 890, __FILE__, __LINE__, true);
   17306            0 :                           return _r;
   17307              :                         }
   17308            0 : next_after_fail1682:;
   17309              :                       }
   17310              :                   }
   17311              :                 }
   17312              :               break;
   17313              :             }
   17314           65 :           default:;
   17315              :           }
   17316           65 :         if (integer_minus_onep (_q21))
   17317              :           {
   17318           65 :             if (integer_zerop (_q22))
   17319              :               {
   17320           65 :                 switch (TREE_CODE (_p1))
   17321              :                   {
   17322           47 :                   case VEC_COND_EXPR:
   17323           47 :                     {
   17324           47 :                       tree _q60 = TREE_OPERAND (_p1, 0);
   17325           47 :                       tree _q61 = TREE_OPERAND (_p1, 1);
   17326           47 :                       tree _q62 = TREE_OPERAND (_p1, 2);
   17327           47 :                       if ((_q61 == _q21 && ! TREE_SIDE_EFFECTS (_q61)) || (operand_equal_p (_q61, _q21, 0) && types_match (_q61, _q21)))
   17328              :                         {
   17329           47 :                           if ((_q62 == _q22 && ! TREE_SIDE_EFFECTS (_q62)) || (operand_equal_p (_q62, _q22, 0) && types_match (_q62, _q22)))
   17330              :                             {
   17331           47 :                               {
   17332           47 :                                 tree captures[4] ATTRIBUTE_UNUSED = { _q20, _q21, _q22, _q60 };
   17333           47 :                                 const enum tree_code lop = BIT_AND_EXPR;
   17334           47 :                                 if (target_supports_op_p (TREE_TYPE (captures[0]), lop, optab_vector)
   17335              : )
   17336              :                                   {
   17337           47 :                                     if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1683;
   17338           47 :                                     {
   17339           47 :                                       tree res_op0;
   17340           47 :                                       {
   17341           47 :                                         tree _o1[2], _r1;
   17342           47 :                                         _o1[0] = captures[0];
   17343           47 :                                         _o1[1] = captures[3];
   17344           47 :                                         _r1 = fold_build2_loc (loc, lop, TREE_TYPE (_o1[0]), _o1[0], _o1[1]);
   17345           47 :                                         res_op0 = _r1;
   17346              :                                       }
   17347           47 :                                       tree res_op1;
   17348           47 :                                       res_op1 = captures[1];
   17349           47 :                                       tree res_op2;
   17350           47 :                                       res_op2 = captures[2];
   17351           47 :                                       tree _r;
   17352           47 :                                       _r = fold_build3_loc (loc, VEC_COND_EXPR, type, res_op0, res_op1, res_op2);
   17353           47 :                                       if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 891, __FILE__, __LINE__, true);
   17354           47 :                                       return _r;
   17355              :                                     }
   17356            0 : next_after_fail1683:;
   17357              :                                   }
   17358              :                               }
   17359            0 :                               {
   17360            0 :                                 tree captures[4] ATTRIBUTE_UNUSED = { _q20, _q21, _q22, _q60 };
   17361            0 :                                 const enum tree_code lop = BIT_AND_EXPR;
   17362            0 :                                 if (target_supports_op_p (TREE_TYPE (captures[0]), lop, optab_vector)
   17363              : )
   17364              :                                   {
   17365            0 :                                     if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1684;
   17366            0 :                                     {
   17367            0 :                                       tree res_op0;
   17368            0 :                                       {
   17369            0 :                                         tree _o1[2], _r1;
   17370            0 :                                         _o1[0] = captures[0];
   17371            0 :                                         _o1[1] = captures[3];
   17372            0 :                                         _r1 = fold_build2_loc (loc, lop, TREE_TYPE (_o1[0]), _o1[0], _o1[1]);
   17373            0 :                                         res_op0 = _r1;
   17374              :                                       }
   17375            0 :                                       tree res_op1;
   17376            0 :                                       res_op1 = captures[1];
   17377            0 :                                       tree res_op2;
   17378            0 :                                       res_op2 = captures[2];
   17379            0 :                                       tree _r;
   17380            0 :                                       _r = fold_build3_loc (loc, VEC_COND_EXPR, type, res_op0, res_op1, res_op2);
   17381            0 :                                       if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 891, __FILE__, __LINE__, true);
   17382            0 :                                       return _r;
   17383              :                                     }
   17384            0 : next_after_fail1684:;
   17385              :                                   }
   17386              :                               }
   17387            0 :                               {
   17388            0 :                                 tree captures[4] ATTRIBUTE_UNUSED = { _q20, _q21, _q22, _q60 };
   17389            0 :                                 const enum tree_code lop = BIT_AND_EXPR;
   17390            0 :                                 if (target_supports_op_p (TREE_TYPE (captures[0]), lop, optab_vector)
   17391              : )
   17392              :                                   {
   17393            0 :                                     if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1685;
   17394            0 :                                     {
   17395            0 :                                       tree res_op0;
   17396            0 :                                       {
   17397            0 :                                         tree _o1[2], _r1;
   17398            0 :                                         _o1[0] = captures[0];
   17399            0 :                                         _o1[1] = captures[3];
   17400            0 :                                         _r1 = fold_build2_loc (loc, lop, TREE_TYPE (_o1[0]), _o1[0], _o1[1]);
   17401            0 :                                         res_op0 = _r1;
   17402              :                                       }
   17403            0 :                                       tree res_op1;
   17404            0 :                                       res_op1 = captures[1];
   17405            0 :                                       tree res_op2;
   17406            0 :                                       res_op2 = captures[2];
   17407            0 :                                       tree _r;
   17408            0 :                                       _r = fold_build3_loc (loc, VEC_COND_EXPR, type, res_op0, res_op1, res_op2);
   17409            0 :                                       if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 891, __FILE__, __LINE__, true);
   17410            0 :                                       return _r;
   17411              :                                     }
   17412            0 : next_after_fail1685:;
   17413              :                                   }
   17414              :                               }
   17415            0 :                               {
   17416            0 :                                 tree captures[4] ATTRIBUTE_UNUSED = { _q20, _q21, _q22, _q60 };
   17417            0 :                                 const enum tree_code lop = BIT_AND_EXPR;
   17418            0 :                                 if (target_supports_op_p (TREE_TYPE (captures[0]), lop, optab_vector)
   17419              : )
   17420              :                                   {
   17421            0 :                                     if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1686;
   17422            0 :                                     {
   17423            0 :                                       tree res_op0;
   17424            0 :                                       {
   17425            0 :                                         tree _o1[2], _r1;
   17426            0 :                                         _o1[0] = captures[0];
   17427            0 :                                         _o1[1] = captures[3];
   17428            0 :                                         _r1 = fold_build2_loc (loc, lop, TREE_TYPE (_o1[0]), _o1[0], _o1[1]);
   17429            0 :                                         res_op0 = _r1;
   17430              :                                       }
   17431            0 :                                       tree res_op1;
   17432            0 :                                       res_op1 = captures[1];
   17433            0 :                                       tree res_op2;
   17434            0 :                                       res_op2 = captures[2];
   17435            0 :                                       tree _r;
   17436            0 :                                       _r = fold_build3_loc (loc, VEC_COND_EXPR, type, res_op0, res_op1, res_op2);
   17437            0 :                                       if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 891, __FILE__, __LINE__, true);
   17438            0 :                                       return _r;
   17439              :                                     }
   17440            0 : next_after_fail1686:;
   17441              :                                   }
   17442              :                               }
   17443            0 :                               {
   17444            0 :                                 tree captures[4] ATTRIBUTE_UNUSED = { _q20, _q21, _q22, _q60 };
   17445            0 :                                 const enum tree_code lop = BIT_AND_EXPR;
   17446            0 :                                 if (target_supports_op_p (TREE_TYPE (captures[0]), lop, optab_vector)
   17447              : )
   17448              :                                   {
   17449            0 :                                     if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1687;
   17450            0 :                                     {
   17451            0 :                                       tree res_op0;
   17452            0 :                                       {
   17453            0 :                                         tree _o1[2], _r1;
   17454            0 :                                         _o1[0] = captures[0];
   17455            0 :                                         _o1[1] = captures[3];
   17456            0 :                                         _r1 = fold_build2_loc (loc, lop, TREE_TYPE (_o1[0]), _o1[0], _o1[1]);
   17457            0 :                                         res_op0 = _r1;
   17458              :                                       }
   17459            0 :                                       tree res_op1;
   17460            0 :                                       res_op1 = captures[1];
   17461            0 :                                       tree res_op2;
   17462            0 :                                       res_op2 = captures[2];
   17463            0 :                                       tree _r;
   17464            0 :                                       _r = fold_build3_loc (loc, VEC_COND_EXPR, type, res_op0, res_op1, res_op2);
   17465            0 :                                       if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 891, __FILE__, __LINE__, true);
   17466            0 :                                       return _r;
   17467              :                                     }
   17468            0 : next_after_fail1687:;
   17469              :                                   }
   17470              :                               }
   17471            0 :                               {
   17472            0 :                                 tree captures[4] ATTRIBUTE_UNUSED = { _q20, _q21, _q22, _q60 };
   17473            0 :                                 const enum tree_code lop = BIT_AND_EXPR;
   17474            0 :                                 if (target_supports_op_p (TREE_TYPE (captures[0]), lop, optab_vector)
   17475              : )
   17476              :                                   {
   17477            0 :                                     if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1688;
   17478            0 :                                     {
   17479            0 :                                       tree res_op0;
   17480            0 :                                       {
   17481            0 :                                         tree _o1[2], _r1;
   17482            0 :                                         _o1[0] = captures[0];
   17483            0 :                                         _o1[1] = captures[3];
   17484            0 :                                         _r1 = fold_build2_loc (loc, lop, TREE_TYPE (_o1[0]), _o1[0], _o1[1]);
   17485            0 :                                         res_op0 = _r1;
   17486              :                                       }
   17487            0 :                                       tree res_op1;
   17488            0 :                                       res_op1 = captures[1];
   17489            0 :                                       tree res_op2;
   17490            0 :                                       res_op2 = captures[2];
   17491            0 :                                       tree _r;
   17492            0 :                                       _r = fold_build3_loc (loc, VEC_COND_EXPR, type, res_op0, res_op1, res_op2);
   17493            0 :                                       if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 891, __FILE__, __LINE__, true);
   17494            0 :                                       return _r;
   17495              :                                     }
   17496            0 : next_after_fail1688:;
   17497              :                                   }
   17498              :                               }
   17499            0 :                               {
   17500            0 :                                 tree captures[4] ATTRIBUTE_UNUSED = { _q20, _q21, _q22, _q60 };
   17501            0 :                                 const enum tree_code lop = BIT_AND_EXPR;
   17502            0 :                                 if (target_supports_op_p (TREE_TYPE (captures[0]), lop, optab_vector)
   17503              : )
   17504              :                                   {
   17505            0 :                                     if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1689;
   17506            0 :                                     {
   17507            0 :                                       tree res_op0;
   17508            0 :                                       {
   17509            0 :                                         tree _o1[2], _r1;
   17510            0 :                                         _o1[0] = captures[0];
   17511            0 :                                         _o1[1] = captures[3];
   17512            0 :                                         _r1 = fold_build2_loc (loc, lop, TREE_TYPE (_o1[0]), _o1[0], _o1[1]);
   17513            0 :                                         res_op0 = _r1;
   17514              :                                       }
   17515            0 :                                       tree res_op1;
   17516            0 :                                       res_op1 = captures[1];
   17517            0 :                                       tree res_op2;
   17518            0 :                                       res_op2 = captures[2];
   17519            0 :                                       tree _r;
   17520            0 :                                       _r = fold_build3_loc (loc, VEC_COND_EXPR, type, res_op0, res_op1, res_op2);
   17521            0 :                                       if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 891, __FILE__, __LINE__, true);
   17522            0 :                                       return _r;
   17523              :                                     }
   17524            0 : next_after_fail1689:;
   17525              :                                   }
   17526              :                               }
   17527            0 :                               {
   17528            0 :                                 tree captures[4] ATTRIBUTE_UNUSED = { _q20, _q21, _q22, _q60 };
   17529            0 :                                 const enum tree_code lop = BIT_AND_EXPR;
   17530            0 :                                 if (target_supports_op_p (TREE_TYPE (captures[0]), lop, optab_vector)
   17531              : )
   17532              :                                   {
   17533            0 :                                     if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1690;
   17534            0 :                                     {
   17535            0 :                                       tree res_op0;
   17536            0 :                                       {
   17537            0 :                                         tree _o1[2], _r1;
   17538            0 :                                         _o1[0] = captures[0];
   17539            0 :                                         _o1[1] = captures[3];
   17540            0 :                                         _r1 = fold_build2_loc (loc, lop, TREE_TYPE (_o1[0]), _o1[0], _o1[1]);
   17541            0 :                                         res_op0 = _r1;
   17542              :                                       }
   17543            0 :                                       tree res_op1;
   17544            0 :                                       res_op1 = captures[1];
   17545            0 :                                       tree res_op2;
   17546            0 :                                       res_op2 = captures[2];
   17547            0 :                                       tree _r;
   17548            0 :                                       _r = fold_build3_loc (loc, VEC_COND_EXPR, type, res_op0, res_op1, res_op2);
   17549            0 :                                       if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 891, __FILE__, __LINE__, true);
   17550            0 :                                       return _r;
   17551              :                                     }
   17552            0 : next_after_fail1690:;
   17553              :                                   }
   17554              :                               }
   17555            0 :                               {
   17556            0 :                                 tree captures[4] ATTRIBUTE_UNUSED = { _q20, _q21, _q22, _q60 };
   17557            0 :                                 const enum tree_code lop = BIT_AND_EXPR;
   17558            0 :                                 if (target_supports_op_p (TREE_TYPE (captures[0]), lop, optab_vector)
   17559              : )
   17560              :                                   {
   17561            0 :                                     if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1691;
   17562            0 :                                     {
   17563            0 :                                       tree res_op0;
   17564            0 :                                       {
   17565            0 :                                         tree _o1[2], _r1;
   17566            0 :                                         _o1[0] = captures[0];
   17567            0 :                                         _o1[1] = captures[3];
   17568            0 :                                         _r1 = fold_build2_loc (loc, lop, TREE_TYPE (_o1[0]), _o1[0], _o1[1]);
   17569            0 :                                         res_op0 = _r1;
   17570              :                                       }
   17571            0 :                                       tree res_op1;
   17572            0 :                                       res_op1 = captures[1];
   17573            0 :                                       tree res_op2;
   17574            0 :                                       res_op2 = captures[2];
   17575            0 :                                       tree _r;
   17576            0 :                                       _r = fold_build3_loc (loc, VEC_COND_EXPR, type, res_op0, res_op1, res_op2);
   17577            0 :                                       if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 891, __FILE__, __LINE__, true);
   17578            0 :                                       return _r;
   17579              :                                     }
   17580            0 : next_after_fail1691:;
   17581              :                                   }
   17582              :                               }
   17583            0 :                               {
   17584            0 :                                 tree captures[4] ATTRIBUTE_UNUSED = { _q20, _q21, _q22, _q60 };
   17585            0 :                                 const enum tree_code lop = BIT_AND_EXPR;
   17586            0 :                                 if (target_supports_op_p (TREE_TYPE (captures[0]), lop, optab_vector)
   17587              : )
   17588              :                                   {
   17589            0 :                                     if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1692;
   17590            0 :                                     {
   17591            0 :                                       tree res_op0;
   17592            0 :                                       {
   17593            0 :                                         tree _o1[2], _r1;
   17594            0 :                                         _o1[0] = captures[0];
   17595            0 :                                         _o1[1] = captures[3];
   17596            0 :                                         _r1 = fold_build2_loc (loc, lop, TREE_TYPE (_o1[0]), _o1[0], _o1[1]);
   17597            0 :                                         res_op0 = _r1;
   17598              :                                       }
   17599            0 :                                       tree res_op1;
   17600            0 :                                       res_op1 = captures[1];
   17601            0 :                                       tree res_op2;
   17602            0 :                                       res_op2 = captures[2];
   17603            0 :                                       tree _r;
   17604            0 :                                       _r = fold_build3_loc (loc, VEC_COND_EXPR, type, res_op0, res_op1, res_op2);
   17605            0 :                                       if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 891, __FILE__, __LINE__, true);
   17606            0 :                                       return _r;
   17607              :                                     }
   17608            0 : next_after_fail1692:;
   17609              :                                   }
   17610              :                               }
   17611            0 :                               {
   17612            0 :                                 tree captures[4] ATTRIBUTE_UNUSED = { _q20, _q21, _q22, _q60 };
   17613            0 :                                 const enum tree_code lop = BIT_AND_EXPR;
   17614            0 :                                 if (target_supports_op_p (TREE_TYPE (captures[0]), lop, optab_vector)
   17615              : )
   17616              :                                   {
   17617            0 :                                     if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1693;
   17618            0 :                                     {
   17619            0 :                                       tree res_op0;
   17620            0 :                                       {
   17621            0 :                                         tree _o1[2], _r1;
   17622            0 :                                         _o1[0] = captures[0];
   17623            0 :                                         _o1[1] = captures[3];
   17624            0 :                                         _r1 = fold_build2_loc (loc, lop, TREE_TYPE (_o1[0]), _o1[0], _o1[1]);
   17625            0 :                                         res_op0 = _r1;
   17626              :                                       }
   17627            0 :                                       tree res_op1;
   17628            0 :                                       res_op1 = captures[1];
   17629            0 :                                       tree res_op2;
   17630            0 :                                       res_op2 = captures[2];
   17631            0 :                                       tree _r;
   17632            0 :                                       _r = fold_build3_loc (loc, VEC_COND_EXPR, type, res_op0, res_op1, res_op2);
   17633            0 :                                       if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 891, __FILE__, __LINE__, true);
   17634            0 :                                       return _r;
   17635              :                                     }
   17636            0 : next_after_fail1693:;
   17637              :                                   }
   17638              :                               }
   17639            0 :                               {
   17640            0 :                                 tree captures[4] ATTRIBUTE_UNUSED = { _q20, _q21, _q22, _q60 };
   17641            0 :                                 const enum tree_code lop = BIT_AND_EXPR;
   17642            0 :                                 if (target_supports_op_p (TREE_TYPE (captures[0]), lop, optab_vector)
   17643              : )
   17644              :                                   {
   17645            0 :                                     if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1694;
   17646            0 :                                     {
   17647            0 :                                       tree res_op0;
   17648            0 :                                       {
   17649            0 :                                         tree _o1[2], _r1;
   17650            0 :                                         _o1[0] = captures[0];
   17651            0 :                                         _o1[1] = captures[3];
   17652            0 :                                         _r1 = fold_build2_loc (loc, lop, TREE_TYPE (_o1[0]), _o1[0], _o1[1]);
   17653            0 :                                         res_op0 = _r1;
   17654              :                                       }
   17655            0 :                                       tree res_op1;
   17656            0 :                                       res_op1 = captures[1];
   17657            0 :                                       tree res_op2;
   17658            0 :                                       res_op2 = captures[2];
   17659            0 :                                       tree _r;
   17660            0 :                                       _r = fold_build3_loc (loc, VEC_COND_EXPR, type, res_op0, res_op1, res_op2);
   17661            0 :                                       if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 891, __FILE__, __LINE__, true);
   17662            0 :                                       return _r;
   17663              :                                     }
   17664            0 : next_after_fail1694:;
   17665              :                                   }
   17666              :                               }
   17667            0 :                               {
   17668            0 :                                 tree captures[4] ATTRIBUTE_UNUSED = { _q20, _q21, _q22, _q60 };
   17669            0 :                                 const enum tree_code lop = BIT_AND_EXPR;
   17670            0 :                                 if (target_supports_op_p (TREE_TYPE (captures[0]), lop, optab_vector)
   17671              : )
   17672              :                                   {
   17673            0 :                                     if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1695;
   17674            0 :                                     {
   17675            0 :                                       tree res_op0;
   17676            0 :                                       {
   17677            0 :                                         tree _o1[2], _r1;
   17678            0 :                                         _o1[0] = captures[0];
   17679            0 :                                         _o1[1] = captures[3];
   17680            0 :                                         _r1 = fold_build2_loc (loc, lop, TREE_TYPE (_o1[0]), _o1[0], _o1[1]);
   17681            0 :                                         res_op0 = _r1;
   17682              :                                       }
   17683            0 :                                       tree res_op1;
   17684            0 :                                       res_op1 = captures[1];
   17685            0 :                                       tree res_op2;
   17686            0 :                                       res_op2 = captures[2];
   17687            0 :                                       tree _r;
   17688            0 :                                       _r = fold_build3_loc (loc, VEC_COND_EXPR, type, res_op0, res_op1, res_op2);
   17689            0 :                                       if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 891, __FILE__, __LINE__, true);
   17690            0 :                                       return _r;
   17691              :                                     }
   17692            0 : next_after_fail1695:;
   17693              :                                   }
   17694              :                               }
   17695            0 :                               {
   17696            0 :                                 tree captures[4] ATTRIBUTE_UNUSED = { _q20, _q21, _q22, _q60 };
   17697            0 :                                 const enum tree_code lop = BIT_AND_EXPR;
   17698            0 :                                 if (target_supports_op_p (TREE_TYPE (captures[0]), lop, optab_vector)
   17699              : )
   17700              :                                   {
   17701            0 :                                     if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1696;
   17702            0 :                                     {
   17703            0 :                                       tree res_op0;
   17704            0 :                                       {
   17705            0 :                                         tree _o1[2], _r1;
   17706            0 :                                         _o1[0] = captures[0];
   17707            0 :                                         _o1[1] = captures[3];
   17708            0 :                                         _r1 = fold_build2_loc (loc, lop, TREE_TYPE (_o1[0]), _o1[0], _o1[1]);
   17709            0 :                                         res_op0 = _r1;
   17710              :                                       }
   17711            0 :                                       tree res_op1;
   17712            0 :                                       res_op1 = captures[1];
   17713            0 :                                       tree res_op2;
   17714            0 :                                       res_op2 = captures[2];
   17715            0 :                                       tree _r;
   17716            0 :                                       _r = fold_build3_loc (loc, VEC_COND_EXPR, type, res_op0, res_op1, res_op2);
   17717            0 :                                       if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 891, __FILE__, __LINE__, true);
   17718            0 :                                       return _r;
   17719              :                                     }
   17720            0 : next_after_fail1696:;
   17721              :                                   }
   17722              :                               }
   17723            0 :                               {
   17724            0 :                                 tree captures[4] ATTRIBUTE_UNUSED = { _q20, _q21, _q22, _q60 };
   17725            0 :                                 const enum tree_code lop = BIT_AND_EXPR;
   17726            0 :                                 if (target_supports_op_p (TREE_TYPE (captures[0]), lop, optab_vector)
   17727              : )
   17728              :                                   {
   17729            0 :                                     if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1697;
   17730            0 :                                     {
   17731            0 :                                       tree res_op0;
   17732            0 :                                       {
   17733            0 :                                         tree _o1[2], _r1;
   17734            0 :                                         _o1[0] = captures[0];
   17735            0 :                                         _o1[1] = captures[3];
   17736            0 :                                         _r1 = fold_build2_loc (loc, lop, TREE_TYPE (_o1[0]), _o1[0], _o1[1]);
   17737            0 :                                         res_op0 = _r1;
   17738              :                                       }
   17739            0 :                                       tree res_op1;
   17740            0 :                                       res_op1 = captures[1];
   17741            0 :                                       tree res_op2;
   17742            0 :                                       res_op2 = captures[2];
   17743            0 :                                       tree _r;
   17744            0 :                                       _r = fold_build3_loc (loc, VEC_COND_EXPR, type, res_op0, res_op1, res_op2);
   17745            0 :                                       if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 891, __FILE__, __LINE__, true);
   17746            0 :                                       return _r;
   17747              :                                     }
   17748            0 : next_after_fail1697:;
   17749              :                                   }
   17750              :                               }
   17751            0 :                               {
   17752            0 :                                 tree captures[4] ATTRIBUTE_UNUSED = { _q20, _q21, _q22, _q60 };
   17753            0 :                                 const enum tree_code lop = BIT_AND_EXPR;
   17754            0 :                                 if (target_supports_op_p (TREE_TYPE (captures[0]), lop, optab_vector)
   17755              : )
   17756              :                                   {
   17757            0 :                                     if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1698;
   17758            0 :                                     {
   17759            0 :                                       tree res_op0;
   17760            0 :                                       {
   17761            0 :                                         tree _o1[2], _r1;
   17762            0 :                                         _o1[0] = captures[0];
   17763            0 :                                         _o1[1] = captures[3];
   17764            0 :                                         _r1 = fold_build2_loc (loc, lop, TREE_TYPE (_o1[0]), _o1[0], _o1[1]);
   17765            0 :                                         res_op0 = _r1;
   17766              :                                       }
   17767            0 :                                       tree res_op1;
   17768            0 :                                       res_op1 = captures[1];
   17769            0 :                                       tree res_op2;
   17770            0 :                                       res_op2 = captures[2];
   17771            0 :                                       tree _r;
   17772            0 :                                       _r = fold_build3_loc (loc, VEC_COND_EXPR, type, res_op0, res_op1, res_op2);
   17773            0 :                                       if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 891, __FILE__, __LINE__, true);
   17774            0 :                                       return _r;
   17775              :                                     }
   17776            0 : next_after_fail1698:;
   17777              :                                   }
   17778              :                               }
   17779            0 :                               {
   17780            0 :                                 tree captures[4] ATTRIBUTE_UNUSED = { _q20, _q21, _q22, _q60 };
   17781            0 :                                 const enum tree_code lop = BIT_AND_EXPR;
   17782            0 :                                 if (target_supports_op_p (TREE_TYPE (captures[0]), lop, optab_vector)
   17783              : )
   17784              :                                   {
   17785            0 :                                     if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1699;
   17786            0 :                                     {
   17787            0 :                                       tree res_op0;
   17788            0 :                                       {
   17789            0 :                                         tree _o1[2], _r1;
   17790            0 :                                         _o1[0] = captures[0];
   17791            0 :                                         _o1[1] = captures[3];
   17792            0 :                                         _r1 = fold_build2_loc (loc, lop, TREE_TYPE (_o1[0]), _o1[0], _o1[1]);
   17793            0 :                                         res_op0 = _r1;
   17794              :                                       }
   17795            0 :                                       tree res_op1;
   17796            0 :                                       res_op1 = captures[1];
   17797            0 :                                       tree res_op2;
   17798            0 :                                       res_op2 = captures[2];
   17799            0 :                                       tree _r;
   17800            0 :                                       _r = fold_build3_loc (loc, VEC_COND_EXPR, type, res_op0, res_op1, res_op2);
   17801            0 :                                       if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 891, __FILE__, __LINE__, true);
   17802            0 :                                       return _r;
   17803              :                                     }
   17804            0 : next_after_fail1699:;
   17805              :                                   }
   17806              :                               }
   17807            0 :                               {
   17808            0 :                                 tree captures[4] ATTRIBUTE_UNUSED = { _q20, _q21, _q22, _q60 };
   17809            0 :                                 const enum tree_code lop = BIT_AND_EXPR;
   17810            0 :                                 if (target_supports_op_p (TREE_TYPE (captures[0]), lop, optab_vector)
   17811              : )
   17812              :                                   {
   17813            0 :                                     if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1700;
   17814            0 :                                     {
   17815            0 :                                       tree res_op0;
   17816            0 :                                       {
   17817            0 :                                         tree _o1[2], _r1;
   17818            0 :                                         _o1[0] = captures[0];
   17819            0 :                                         _o1[1] = captures[3];
   17820            0 :                                         _r1 = fold_build2_loc (loc, lop, TREE_TYPE (_o1[0]), _o1[0], _o1[1]);
   17821            0 :                                         res_op0 = _r1;
   17822              :                                       }
   17823            0 :                                       tree res_op1;
   17824            0 :                                       res_op1 = captures[1];
   17825            0 :                                       tree res_op2;
   17826            0 :                                       res_op2 = captures[2];
   17827            0 :                                       tree _r;
   17828            0 :                                       _r = fold_build3_loc (loc, VEC_COND_EXPR, type, res_op0, res_op1, res_op2);
   17829            0 :                                       if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 891, __FILE__, __LINE__, true);
   17830            0 :                                       return _r;
   17831              :                                     }
   17832            0 : next_after_fail1700:;
   17833              :                                   }
   17834              :                               }
   17835            0 :                               {
   17836            0 :                                 tree captures[4] ATTRIBUTE_UNUSED = { _q20, _q21, _q22, _q60 };
   17837            0 :                                 const enum tree_code lop = BIT_AND_EXPR;
   17838            0 :                                 if (target_supports_op_p (TREE_TYPE (captures[0]), lop, optab_vector)
   17839              : )
   17840              :                                   {
   17841            0 :                                     if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1701;
   17842            0 :                                     {
   17843            0 :                                       tree res_op0;
   17844            0 :                                       {
   17845            0 :                                         tree _o1[2], _r1;
   17846            0 :                                         _o1[0] = captures[0];
   17847            0 :                                         _o1[1] = captures[3];
   17848            0 :                                         _r1 = fold_build2_loc (loc, lop, TREE_TYPE (_o1[0]), _o1[0], _o1[1]);
   17849            0 :                                         res_op0 = _r1;
   17850              :                                       }
   17851            0 :                                       tree res_op1;
   17852            0 :                                       res_op1 = captures[1];
   17853            0 :                                       tree res_op2;
   17854            0 :                                       res_op2 = captures[2];
   17855            0 :                                       tree _r;
   17856            0 :                                       _r = fold_build3_loc (loc, VEC_COND_EXPR, type, res_op0, res_op1, res_op2);
   17857            0 :                                       if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 891, __FILE__, __LINE__, true);
   17858            0 :                                       return _r;
   17859              :                                     }
   17860            0 : next_after_fail1701:;
   17861              :                                   }
   17862              :                               }
   17863            0 :                               {
   17864            0 :                                 tree captures[4] ATTRIBUTE_UNUSED = { _q20, _q21, _q22, _q60 };
   17865            0 :                                 const enum tree_code lop = BIT_AND_EXPR;
   17866            0 :                                 if (target_supports_op_p (TREE_TYPE (captures[0]), lop, optab_vector)
   17867              : )
   17868              :                                   {
   17869            0 :                                     if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1702;
   17870            0 :                                     {
   17871            0 :                                       tree res_op0;
   17872            0 :                                       {
   17873            0 :                                         tree _o1[2], _r1;
   17874            0 :                                         _o1[0] = captures[0];
   17875            0 :                                         _o1[1] = captures[3];
   17876            0 :                                         _r1 = fold_build2_loc (loc, lop, TREE_TYPE (_o1[0]), _o1[0], _o1[1]);
   17877            0 :                                         res_op0 = _r1;
   17878              :                                       }
   17879            0 :                                       tree res_op1;
   17880            0 :                                       res_op1 = captures[1];
   17881            0 :                                       tree res_op2;
   17882            0 :                                       res_op2 = captures[2];
   17883            0 :                                       tree _r;
   17884            0 :                                       _r = fold_build3_loc (loc, VEC_COND_EXPR, type, res_op0, res_op1, res_op2);
   17885            0 :                                       if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 891, __FILE__, __LINE__, true);
   17886            0 :                                       return _r;
   17887              :                                     }
   17888            0 : next_after_fail1702:;
   17889              :                                   }
   17890              :                               }
   17891            0 :                               {
   17892            0 :                                 tree captures[4] ATTRIBUTE_UNUSED = { _q20, _q21, _q22, _q60 };
   17893            0 :                                 const enum tree_code lop = BIT_AND_EXPR;
   17894            0 :                                 if (target_supports_op_p (TREE_TYPE (captures[0]), lop, optab_vector)
   17895              : )
   17896              :                                   {
   17897            0 :                                     if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1703;
   17898            0 :                                     {
   17899            0 :                                       tree res_op0;
   17900            0 :                                       {
   17901            0 :                                         tree _o1[2], _r1;
   17902            0 :                                         _o1[0] = captures[0];
   17903            0 :                                         _o1[1] = captures[3];
   17904            0 :                                         _r1 = fold_build2_loc (loc, lop, TREE_TYPE (_o1[0]), _o1[0], _o1[1]);
   17905            0 :                                         res_op0 = _r1;
   17906              :                                       }
   17907            0 :                                       tree res_op1;
   17908            0 :                                       res_op1 = captures[1];
   17909            0 :                                       tree res_op2;
   17910            0 :                                       res_op2 = captures[2];
   17911            0 :                                       tree _r;
   17912            0 :                                       _r = fold_build3_loc (loc, VEC_COND_EXPR, type, res_op0, res_op1, res_op2);
   17913            0 :                                       if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 891, __FILE__, __LINE__, true);
   17914            0 :                                       return _r;
   17915              :                                     }
   17916            0 : next_after_fail1703:;
   17917              :                                   }
   17918              :                               }
   17919            0 :                               {
   17920            0 :                                 tree captures[4] ATTRIBUTE_UNUSED = { _q20, _q21, _q22, _q60 };
   17921            0 :                                 const enum tree_code lop = BIT_AND_EXPR;
   17922            0 :                                 if (target_supports_op_p (TREE_TYPE (captures[0]), lop, optab_vector)
   17923              : )
   17924              :                                   {
   17925            0 :                                     if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1704;
   17926            0 :                                     {
   17927            0 :                                       tree res_op0;
   17928            0 :                                       {
   17929            0 :                                         tree _o1[2], _r1;
   17930            0 :                                         _o1[0] = captures[0];
   17931            0 :                                         _o1[1] = captures[3];
   17932            0 :                                         _r1 = fold_build2_loc (loc, lop, TREE_TYPE (_o1[0]), _o1[0], _o1[1]);
   17933            0 :                                         res_op0 = _r1;
   17934              :                                       }
   17935            0 :                                       tree res_op1;
   17936            0 :                                       res_op1 = captures[1];
   17937            0 :                                       tree res_op2;
   17938            0 :                                       res_op2 = captures[2];
   17939            0 :                                       tree _r;
   17940            0 :                                       _r = fold_build3_loc (loc, VEC_COND_EXPR, type, res_op0, res_op1, res_op2);
   17941            0 :                                       if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 891, __FILE__, __LINE__, true);
   17942            0 :                                       return _r;
   17943              :                                     }
   17944            0 : next_after_fail1704:;
   17945              :                                   }
   17946              :                               }
   17947            0 :                               {
   17948            0 :                                 tree captures[4] ATTRIBUTE_UNUSED = { _q20, _q21, _q22, _q60 };
   17949            0 :                                 const enum tree_code lop = BIT_AND_EXPR;
   17950            0 :                                 if (target_supports_op_p (TREE_TYPE (captures[0]), lop, optab_vector)
   17951              : )
   17952              :                                   {
   17953            0 :                                     if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1705;
   17954            0 :                                     {
   17955            0 :                                       tree res_op0;
   17956            0 :                                       {
   17957            0 :                                         tree _o1[2], _r1;
   17958            0 :                                         _o1[0] = captures[0];
   17959            0 :                                         _o1[1] = captures[3];
   17960            0 :                                         _r1 = fold_build2_loc (loc, lop, TREE_TYPE (_o1[0]), _o1[0], _o1[1]);
   17961            0 :                                         res_op0 = _r1;
   17962              :                                       }
   17963            0 :                                       tree res_op1;
   17964            0 :                                       res_op1 = captures[1];
   17965            0 :                                       tree res_op2;
   17966            0 :                                       res_op2 = captures[2];
   17967            0 :                                       tree _r;
   17968            0 :                                       _r = fold_build3_loc (loc, VEC_COND_EXPR, type, res_op0, res_op1, res_op2);
   17969            0 :                                       if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 891, __FILE__, __LINE__, true);
   17970            0 :                                       return _r;
   17971              :                                     }
   17972            0 : next_after_fail1705:;
   17973              :                                   }
   17974              :                               }
   17975            0 :                               {
   17976            0 :                                 tree captures[4] ATTRIBUTE_UNUSED = { _q20, _q21, _q22, _q60 };
   17977            0 :                                 const enum tree_code lop = BIT_AND_EXPR;
   17978            0 :                                 if (target_supports_op_p (TREE_TYPE (captures[0]), lop, optab_vector)
   17979              : )
   17980              :                                   {
   17981            0 :                                     if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1706;
   17982            0 :                                     {
   17983            0 :                                       tree res_op0;
   17984            0 :                                       {
   17985            0 :                                         tree _o1[2], _r1;
   17986            0 :                                         _o1[0] = captures[0];
   17987            0 :                                         _o1[1] = captures[3];
   17988            0 :                                         _r1 = fold_build2_loc (loc, lop, TREE_TYPE (_o1[0]), _o1[0], _o1[1]);
   17989            0 :                                         res_op0 = _r1;
   17990              :                                       }
   17991            0 :                                       tree res_op1;
   17992            0 :                                       res_op1 = captures[1];
   17993            0 :                                       tree res_op2;
   17994            0 :                                       res_op2 = captures[2];
   17995            0 :                                       tree _r;
   17996            0 :                                       _r = fold_build3_loc (loc, VEC_COND_EXPR, type, res_op0, res_op1, res_op2);
   17997            0 :                                       if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 891, __FILE__, __LINE__, true);
   17998            0 :                                       return _r;
   17999              :                                     }
   18000            0 : next_after_fail1706:;
   18001              :                                   }
   18002              :                               }
   18003            0 :                               {
   18004            0 :                                 tree captures[4] ATTRIBUTE_UNUSED = { _q20, _q21, _q22, _q60 };
   18005            0 :                                 const enum tree_code lop = BIT_AND_EXPR;
   18006            0 :                                 if (target_supports_op_p (TREE_TYPE (captures[0]), lop, optab_vector)
   18007              : )
   18008              :                                   {
   18009            0 :                                     if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1707;
   18010            0 :                                     {
   18011            0 :                                       tree res_op0;
   18012            0 :                                       {
   18013            0 :                                         tree _o1[2], _r1;
   18014            0 :                                         _o1[0] = captures[0];
   18015            0 :                                         _o1[1] = captures[3];
   18016            0 :                                         _r1 = fold_build2_loc (loc, lop, TREE_TYPE (_o1[0]), _o1[0], _o1[1]);
   18017            0 :                                         res_op0 = _r1;
   18018              :                                       }
   18019            0 :                                       tree res_op1;
   18020            0 :                                       res_op1 = captures[1];
   18021            0 :                                       tree res_op2;
   18022            0 :                                       res_op2 = captures[2];
   18023            0 :                                       tree _r;
   18024            0 :                                       _r = fold_build3_loc (loc, VEC_COND_EXPR, type, res_op0, res_op1, res_op2);
   18025            0 :                                       if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 891, __FILE__, __LINE__, true);
   18026            0 :                                       return _r;
   18027              :                                     }
   18028            0 : next_after_fail1707:;
   18029              :                                   }
   18030              :                               }
   18031            0 :                               {
   18032            0 :                                 tree captures[4] ATTRIBUTE_UNUSED = { _q20, _q21, _q22, _q60 };
   18033            0 :                                 const enum tree_code lop = BIT_AND_EXPR;
   18034            0 :                                 if (target_supports_op_p (TREE_TYPE (captures[0]), lop, optab_vector)
   18035              : )
   18036              :                                   {
   18037            0 :                                     if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1708;
   18038            0 :                                     {
   18039            0 :                                       tree res_op0;
   18040            0 :                                       {
   18041            0 :                                         tree _o1[2], _r1;
   18042            0 :                                         _o1[0] = captures[0];
   18043            0 :                                         _o1[1] = captures[3];
   18044            0 :                                         _r1 = fold_build2_loc (loc, lop, TREE_TYPE (_o1[0]), _o1[0], _o1[1]);
   18045            0 :                                         res_op0 = _r1;
   18046              :                                       }
   18047            0 :                                       tree res_op1;
   18048            0 :                                       res_op1 = captures[1];
   18049            0 :                                       tree res_op2;
   18050            0 :                                       res_op2 = captures[2];
   18051            0 :                                       tree _r;
   18052            0 :                                       _r = fold_build3_loc (loc, VEC_COND_EXPR, type, res_op0, res_op1, res_op2);
   18053            0 :                                       if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 891, __FILE__, __LINE__, true);
   18054            0 :                                       return _r;
   18055              :                                     }
   18056            0 : next_after_fail1708:;
   18057              :                                   }
   18058              :                               }
   18059            0 :                               {
   18060            0 :                                 tree captures[4] ATTRIBUTE_UNUSED = { _q20, _q21, _q22, _q60 };
   18061            0 :                                 const enum tree_code lop = BIT_AND_EXPR;
   18062            0 :                                 if (target_supports_op_p (TREE_TYPE (captures[0]), lop, optab_vector)
   18063              : )
   18064              :                                   {
   18065            0 :                                     if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1709;
   18066            0 :                                     {
   18067            0 :                                       tree res_op0;
   18068            0 :                                       {
   18069            0 :                                         tree _o1[2], _r1;
   18070            0 :                                         _o1[0] = captures[0];
   18071            0 :                                         _o1[1] = captures[3];
   18072            0 :                                         _r1 = fold_build2_loc (loc, lop, TREE_TYPE (_o1[0]), _o1[0], _o1[1]);
   18073            0 :                                         res_op0 = _r1;
   18074              :                                       }
   18075            0 :                                       tree res_op1;
   18076            0 :                                       res_op1 = captures[1];
   18077            0 :                                       tree res_op2;
   18078            0 :                                       res_op2 = captures[2];
   18079            0 :                                       tree _r;
   18080            0 :                                       _r = fold_build3_loc (loc, VEC_COND_EXPR, type, res_op0, res_op1, res_op2);
   18081            0 :                                       if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 891, __FILE__, __LINE__, true);
   18082            0 :                                       return _r;
   18083              :                                     }
   18084            0 : next_after_fail1709:;
   18085              :                                   }
   18086              :                               }
   18087            0 :                               {
   18088            0 :                                 tree captures[4] ATTRIBUTE_UNUSED = { _q20, _q21, _q22, _q60 };
   18089            0 :                                 const enum tree_code lop = BIT_AND_EXPR;
   18090            0 :                                 if (target_supports_op_p (TREE_TYPE (captures[0]), lop, optab_vector)
   18091              : )
   18092              :                                   {
   18093            0 :                                     if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1710;
   18094            0 :                                     {
   18095            0 :                                       tree res_op0;
   18096            0 :                                       {
   18097            0 :                                         tree _o1[2], _r1;
   18098            0 :                                         _o1[0] = captures[0];
   18099            0 :                                         _o1[1] = captures[3];
   18100            0 :                                         _r1 = fold_build2_loc (loc, lop, TREE_TYPE (_o1[0]), _o1[0], _o1[1]);
   18101            0 :                                         res_op0 = _r1;
   18102              :                                       }
   18103            0 :                                       tree res_op1;
   18104            0 :                                       res_op1 = captures[1];
   18105            0 :                                       tree res_op2;
   18106            0 :                                       res_op2 = captures[2];
   18107            0 :                                       tree _r;
   18108            0 :                                       _r = fold_build3_loc (loc, VEC_COND_EXPR, type, res_op0, res_op1, res_op2);
   18109            0 :                                       if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 891, __FILE__, __LINE__, true);
   18110            0 :                                       return _r;
   18111              :                                     }
   18112            0 : next_after_fail1710:;
   18113              :                                   }
   18114              :                               }
   18115            0 :                               {
   18116            0 :                                 tree captures[4] ATTRIBUTE_UNUSED = { _q20, _q21, _q22, _q60 };
   18117            0 :                                 const enum tree_code lop = BIT_AND_EXPR;
   18118            0 :                                 if (target_supports_op_p (TREE_TYPE (captures[0]), lop, optab_vector)
   18119              : )
   18120              :                                   {
   18121            0 :                                     if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1711;
   18122            0 :                                     {
   18123            0 :                                       tree res_op0;
   18124            0 :                                       {
   18125            0 :                                         tree _o1[2], _r1;
   18126            0 :                                         _o1[0] = captures[0];
   18127            0 :                                         _o1[1] = captures[3];
   18128            0 :                                         _r1 = fold_build2_loc (loc, lop, TREE_TYPE (_o1[0]), _o1[0], _o1[1]);
   18129            0 :                                         res_op0 = _r1;
   18130              :                                       }
   18131            0 :                                       tree res_op1;
   18132            0 :                                       res_op1 = captures[1];
   18133            0 :                                       tree res_op2;
   18134            0 :                                       res_op2 = captures[2];
   18135            0 :                                       tree _r;
   18136            0 :                                       _r = fold_build3_loc (loc, VEC_COND_EXPR, type, res_op0, res_op1, res_op2);
   18137            0 :                                       if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 891, __FILE__, __LINE__, true);
   18138            0 :                                       return _r;
   18139              :                                     }
   18140            0 : next_after_fail1711:;
   18141              :                                   }
   18142              :                               }
   18143            0 :                               {
   18144            0 :                                 tree captures[4] ATTRIBUTE_UNUSED = { _q20, _q21, _q22, _q60 };
   18145            0 :                                 const enum tree_code lop = BIT_AND_EXPR;
   18146            0 :                                 if (target_supports_op_p (TREE_TYPE (captures[0]), lop, optab_vector)
   18147              : )
   18148              :                                   {
   18149            0 :                                     if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1712;
   18150            0 :                                     {
   18151            0 :                                       tree res_op0;
   18152            0 :                                       {
   18153            0 :                                         tree _o1[2], _r1;
   18154            0 :                                         _o1[0] = captures[0];
   18155            0 :                                         _o1[1] = captures[3];
   18156            0 :                                         _r1 = fold_build2_loc (loc, lop, TREE_TYPE (_o1[0]), _o1[0], _o1[1]);
   18157            0 :                                         res_op0 = _r1;
   18158              :                                       }
   18159            0 :                                       tree res_op1;
   18160            0 :                                       res_op1 = captures[1];
   18161            0 :                                       tree res_op2;
   18162            0 :                                       res_op2 = captures[2];
   18163            0 :                                       tree _r;
   18164            0 :                                       _r = fold_build3_loc (loc, VEC_COND_EXPR, type, res_op0, res_op1, res_op2);
   18165            0 :                                       if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 891, __FILE__, __LINE__, true);
   18166            0 :                                       return _r;
   18167              :                                     }
   18168            0 : next_after_fail1712:;
   18169              :                                   }
   18170              :                               }
   18171            0 :                               {
   18172            0 :                                 tree captures[4] ATTRIBUTE_UNUSED = { _q20, _q21, _q22, _q60 };
   18173            0 :                                 const enum tree_code lop = BIT_AND_EXPR;
   18174            0 :                                 if (target_supports_op_p (TREE_TYPE (captures[0]), lop, optab_vector)
   18175              : )
   18176              :                                   {
   18177            0 :                                     if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1713;
   18178            0 :                                     {
   18179            0 :                                       tree res_op0;
   18180            0 :                                       {
   18181            0 :                                         tree _o1[2], _r1;
   18182            0 :                                         _o1[0] = captures[0];
   18183            0 :                                         _o1[1] = captures[3];
   18184            0 :                                         _r1 = fold_build2_loc (loc, lop, TREE_TYPE (_o1[0]), _o1[0], _o1[1]);
   18185            0 :                                         res_op0 = _r1;
   18186              :                                       }
   18187            0 :                                       tree res_op1;
   18188            0 :                                       res_op1 = captures[1];
   18189            0 :                                       tree res_op2;
   18190            0 :                                       res_op2 = captures[2];
   18191            0 :                                       tree _r;
   18192            0 :                                       _r = fold_build3_loc (loc, VEC_COND_EXPR, type, res_op0, res_op1, res_op2);
   18193            0 :                                       if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 891, __FILE__, __LINE__, true);
   18194            0 :                                       return _r;
   18195              :                                     }
   18196            0 : next_after_fail1713:;
   18197              :                                   }
   18198              :                               }
   18199            0 :                               {
   18200            0 :                                 tree captures[4] ATTRIBUTE_UNUSED = { _q20, _q21, _q22, _q60 };
   18201            0 :                                 const enum tree_code lop = BIT_AND_EXPR;
   18202            0 :                                 if (target_supports_op_p (TREE_TYPE (captures[0]), lop, optab_vector)
   18203              : )
   18204              :                                   {
   18205            0 :                                     if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1714;
   18206            0 :                                     {
   18207            0 :                                       tree res_op0;
   18208            0 :                                       {
   18209            0 :                                         tree _o1[2], _r1;
   18210            0 :                                         _o1[0] = captures[0];
   18211            0 :                                         _o1[1] = captures[3];
   18212            0 :                                         _r1 = fold_build2_loc (loc, lop, TREE_TYPE (_o1[0]), _o1[0], _o1[1]);
   18213            0 :                                         res_op0 = _r1;
   18214              :                                       }
   18215            0 :                                       tree res_op1;
   18216            0 :                                       res_op1 = captures[1];
   18217            0 :                                       tree res_op2;
   18218            0 :                                       res_op2 = captures[2];
   18219            0 :                                       tree _r;
   18220            0 :                                       _r = fold_build3_loc (loc, VEC_COND_EXPR, type, res_op0, res_op1, res_op2);
   18221            0 :                                       if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 891, __FILE__, __LINE__, true);
   18222            0 :                                       return _r;
   18223              :                                     }
   18224            0 : next_after_fail1714:;
   18225              :                                   }
   18226              :                               }
   18227            0 :                               {
   18228            0 :                                 tree captures[4] ATTRIBUTE_UNUSED = { _q20, _q21, _q22, _q60 };
   18229            0 :                                 const enum tree_code lop = BIT_AND_EXPR;
   18230            0 :                                 if (target_supports_op_p (TREE_TYPE (captures[0]), lop, optab_vector)
   18231              : )
   18232              :                                   {
   18233            0 :                                     if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1715;
   18234            0 :                                     {
   18235            0 :                                       tree res_op0;
   18236            0 :                                       {
   18237            0 :                                         tree _o1[2], _r1;
   18238            0 :                                         _o1[0] = captures[0];
   18239            0 :                                         _o1[1] = captures[3];
   18240            0 :                                         _r1 = fold_build2_loc (loc, lop, TREE_TYPE (_o1[0]), _o1[0], _o1[1]);
   18241            0 :                                         res_op0 = _r1;
   18242              :                                       }
   18243            0 :                                       tree res_op1;
   18244            0 :                                       res_op1 = captures[1];
   18245            0 :                                       tree res_op2;
   18246            0 :                                       res_op2 = captures[2];
   18247            0 :                                       tree _r;
   18248            0 :                                       _r = fold_build3_loc (loc, VEC_COND_EXPR, type, res_op0, res_op1, res_op2);
   18249            0 :                                       if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 891, __FILE__, __LINE__, true);
   18250            0 :                                       return _r;
   18251              :                                     }
   18252            0 : next_after_fail1715:;
   18253              :                                   }
   18254              :                               }
   18255            0 :                               {
   18256            0 :                                 tree captures[4] ATTRIBUTE_UNUSED = { _q20, _q21, _q22, _q60 };
   18257            0 :                                 const enum tree_code lop = BIT_AND_EXPR;
   18258            0 :                                 if (target_supports_op_p (TREE_TYPE (captures[0]), lop, optab_vector)
   18259              : )
   18260              :                                   {
   18261            0 :                                     if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1716;
   18262            0 :                                     {
   18263            0 :                                       tree res_op0;
   18264            0 :                                       {
   18265            0 :                                         tree _o1[2], _r1;
   18266            0 :                                         _o1[0] = captures[0];
   18267            0 :                                         _o1[1] = captures[3];
   18268            0 :                                         _r1 = fold_build2_loc (loc, lop, TREE_TYPE (_o1[0]), _o1[0], _o1[1]);
   18269            0 :                                         res_op0 = _r1;
   18270              :                                       }
   18271            0 :                                       tree res_op1;
   18272            0 :                                       res_op1 = captures[1];
   18273            0 :                                       tree res_op2;
   18274            0 :                                       res_op2 = captures[2];
   18275            0 :                                       tree _r;
   18276            0 :                                       _r = fold_build3_loc (loc, VEC_COND_EXPR, type, res_op0, res_op1, res_op2);
   18277            0 :                                       if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 891, __FILE__, __LINE__, true);
   18278            0 :                                       return _r;
   18279              :                                     }
   18280            0 : next_after_fail1716:;
   18281              :                                   }
   18282              :                               }
   18283              :                             }
   18284              :                         }
   18285              :                       break;
   18286              :                     }
   18287              :                   default:;
   18288              :                   }
   18289              :               }
   18290              :           }
   18291           18 :         {
   18292           18 :           tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _q22, _p1 };
   18293           18 :           if (VECTOR_TYPE_P (type)
   18294           18 :  && (TREE_CODE_CLASS (BIT_AND_EXPR) != tcc_comparison
   18295              :  || types_match (type, TREE_TYPE (captures[2]))
   18296              :  || expand_vec_cond_expr_p (type, TREE_TYPE (captures[1]))
   18297              :  || (optimize_vectors_before_lowering_p ()
   18298              :  && !expand_vec_cond_expr_p (TREE_TYPE (captures[2]), TREE_TYPE (captures[1]))))
   18299              : )
   18300              :             {
   18301           18 :               if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1717;
   18302           18 :               {
   18303           18 :                 if (! tree_invariant_p (captures[4])) goto next_after_fail1717;
   18304           14 :                 tree res_op0;
   18305           14 :                 res_op0 = captures[1];
   18306           14 :                 tree res_op1;
   18307           14 :                 {
   18308           14 :                   tree _o1[2], _r1;
   18309           14 :                   _o1[0] = captures[2];
   18310           14 :                   _o1[1] = unshare_expr (captures[4]);
   18311           14 :                   _r1 = fold_build2_loc (loc, BIT_AND_EXPR, type, _o1[0], _o1[1]);
   18312           14 :                   if (EXPR_P (_r1))
   18313            0 :                     goto next_after_fail1717;
   18314           14 :                   res_op1 = _r1;
   18315              :                 }
   18316           14 :                 tree res_op2;
   18317           14 :                 {
   18318           14 :                   tree _o1[2], _r1;
   18319           14 :                   _o1[0] = captures[3];
   18320           14 :                   _o1[1] = captures[4];
   18321           14 :                   _r1 = fold_build2_loc (loc, BIT_AND_EXPR, type, _o1[0], _o1[1]);
   18322           14 :                   if (EXPR_P (_r1))
   18323            0 :                     goto next_after_fail1717;
   18324           14 :                   res_op2 = _r1;
   18325              :                 }
   18326           14 :                 tree _r;
   18327           14 :                 _r = fold_build3_loc (loc, VEC_COND_EXPR, type, res_op0, res_op1, res_op2);
   18328           14 :                 if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 892, __FILE__, __LINE__, true);
   18329           14 :                 return _r;
   18330              :               }
   18331            4 : next_after_fail1717:;
   18332              :             }
   18333              :         }
   18334            4 :         break;
   18335              :       }
   18336       199797 :     case CALL_EXPR:
   18337       199797 :       switch (get_call_combined_fn (_p0))
   18338              :         {
   18339            0 :         case CFN_BUILT_IN_BSWAP128:
   18340            0 :           if (call_expr_nargs (_p0) == 1)
   18341              :     {
   18342            0 :               tree _q20 = CALL_EXPR_ARG (_p0, 0);
   18343            0 :               switch (TREE_CODE (_p1))
   18344              :                 {
   18345            0 :                 case INTEGER_CST:
   18346            0 :                   {
   18347            0 :                     {
   18348            0 :                       tree captures[3] ATTRIBUTE_UNUSED = { _p0, _q20, _p1 };
   18349            0 :                       tree res = generic_simplify_490 (loc, type, _p0, _p1, captures, CFN_BUILT_IN_BSWAP128);
   18350            0 :                       if (res) return res;
   18351              :                     }
   18352            0 :                     break;
   18353              :                   }
   18354              :                 default:;
   18355              :                 }
   18356              :             }
   18357              :           break;
   18358            0 :         case CFN_BUILT_IN_BSWAP16:
   18359            0 :           if (call_expr_nargs (_p0) == 1)
   18360              :     {
   18361            0 :               tree _q20 = CALL_EXPR_ARG (_p0, 0);
   18362            0 :               switch (TREE_CODE (_p1))
   18363              :                 {
   18364            0 :                 case INTEGER_CST:
   18365            0 :                   {
   18366            0 :                     {
   18367            0 :                       tree captures[3] ATTRIBUTE_UNUSED = { _p0, _q20, _p1 };
   18368            0 :                       tree res = generic_simplify_490 (loc, type, _p0, _p1, captures, CFN_BUILT_IN_BSWAP16);
   18369            0 :                       if (res) return res;
   18370              :                     }
   18371            0 :                     break;
   18372              :                   }
   18373              :                 default:;
   18374              :                 }
   18375              :             }
   18376              :           break;
   18377           10 :         case CFN_BUILT_IN_BSWAP32:
   18378           10 :           if (call_expr_nargs (_p0) == 1)
   18379              :     {
   18380           10 :               tree _q20 = CALL_EXPR_ARG (_p0, 0);
   18381           10 :               switch (TREE_CODE (_p1))
   18382              :                 {
   18383            9 :                 case INTEGER_CST:
   18384            9 :                   {
   18385            9 :                     {
   18386            9 :                       tree captures[3] ATTRIBUTE_UNUSED = { _p0, _q20, _p1 };
   18387            9 :                       tree res = generic_simplify_490 (loc, type, _p0, _p1, captures, CFN_BUILT_IN_BSWAP32);
   18388            9 :                       if (res) return res;
   18389              :                     }
   18390            1 :                     break;
   18391              :                   }
   18392              :                 default:;
   18393              :                 }
   18394              :             }
   18395              :           break;
   18396            8 :         case CFN_BUILT_IN_BSWAP64:
   18397            8 :           if (call_expr_nargs (_p0) == 1)
   18398              :     {
   18399            8 :               tree _q20 = CALL_EXPR_ARG (_p0, 0);
   18400            8 :               switch (TREE_CODE (_p1))
   18401              :                 {
   18402            7 :                 case INTEGER_CST:
   18403            7 :                   {
   18404            7 :                     {
   18405            7 :                       tree captures[3] ATTRIBUTE_UNUSED = { _p0, _q20, _p1 };
   18406            7 :                       tree res = generic_simplify_490 (loc, type, _p0, _p1, captures, CFN_BUILT_IN_BSWAP64);
   18407            7 :                       if (res) return res;
   18408              :                     }
   18409            1 :                     break;
   18410              :                   }
   18411              :                 default:;
   18412              :                 }
   18413              :             }
   18414              :           break;
   18415              :         default:;
   18416              :         }
   18417              :       break;
   18418      6355003 :     default:;
   18419              :     }
   18420      6355003 :   switch (TREE_CODE (_p1))
   18421              :     {
   18422            1 :     case VEC_COND_EXPR:
   18423            1 :       {
   18424            1 :         tree _q30 = TREE_OPERAND (_p1, 0);
   18425            1 :         tree _q31 = TREE_OPERAND (_p1, 1);
   18426            1 :         tree _q32 = TREE_OPERAND (_p1, 2);
   18427            1 :         {
   18428            1 :           tree captures[5] ATTRIBUTE_UNUSED = { _p0, _p1, _q30, _q31, _q32 };
   18429            1 :           if (VECTOR_TYPE_P (type)
   18430            1 :  && (TREE_CODE_CLASS (BIT_AND_EXPR) != tcc_comparison
   18431              :  || types_match (type, TREE_TYPE (captures[3]))
   18432              :  || expand_vec_cond_expr_p (type, TREE_TYPE (captures[2]))
   18433              :  || (optimize_vectors_before_lowering_p ()
   18434              :  && !expand_vec_cond_expr_p (TREE_TYPE (captures[3]), TREE_TYPE (captures[2]))))
   18435              : )
   18436              :             {
   18437            1 :               if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1718;
   18438            1 :               {
   18439            1 :                 if (! tree_invariant_p (captures[0])) goto next_after_fail1718;
   18440            0 :                 tree res_op0;
   18441            0 :                 res_op0 = captures[2];
   18442            0 :                 tree res_op1;
   18443            0 :                 {
   18444            0 :                   tree _o1[2], _r1;
   18445            0 :                   _o1[0] = unshare_expr (captures[0]);
   18446            0 :                   _o1[1] = captures[3];
   18447            0 :                   _r1 = fold_build2_loc (loc, BIT_AND_EXPR, type, _o1[0], _o1[1]);
   18448            0 :                   if (EXPR_P (_r1))
   18449            0 :                     goto next_after_fail1718;
   18450            0 :                   res_op1 = _r1;
   18451              :                 }
   18452            0 :                 tree res_op2;
   18453            0 :                 {
   18454            0 :                   tree _o1[2], _r1;
   18455            0 :                   _o1[0] = captures[0];
   18456            0 :                   _o1[1] = captures[4];
   18457            0 :                   _r1 = fold_build2_loc (loc, BIT_AND_EXPR, type, _o1[0], _o1[1]);
   18458            0 :                   if (EXPR_P (_r1))
   18459            0 :                     goto next_after_fail1718;
   18460            0 :                   res_op2 = _r1;
   18461              :                 }
   18462            0 :                 tree _r;
   18463            0 :                 _r = fold_build3_loc (loc, VEC_COND_EXPR, type, res_op0, res_op1, res_op2);
   18464            0 :                 if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 893, __FILE__, __LINE__, true);
   18465            0 :                 return _r;
   18466              :               }
   18467            1 : next_after_fail1718:;
   18468              :             }
   18469              :         }
   18470            1 :         break;
   18471              :       }
   18472      6355003 :     default:;
   18473              :     }
   18474      6355003 :   switch (TREE_CODE (_p0))
   18475              :     {
   18476            0 :     case ORDERED_EXPR:
   18477            0 :       {
   18478            0 :         tree _q20 = TREE_OPERAND (_p0, 0);
   18479            0 :         tree _q21 = TREE_OPERAND (_p0, 1);
   18480            0 :         switch (TREE_CODE (_p1))
   18481              :           {
   18482            0 :           case NE_EXPR:
   18483            0 :             {
   18484            0 :               tree _q50 = TREE_OPERAND (_p1, 0);
   18485            0 :               tree _q51 = TREE_OPERAND (_p1, 1);
   18486            0 :               if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
   18487              :                 {
   18488            0 :                   if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
   18489              :                     {
   18490            0 :                       {
   18491            0 :                         tree captures[2] ATTRIBUTE_UNUSED = { _q20, _q21 };
   18492            0 :                         tree res = generic_simplify_491 (loc, type, _p0, _p1, captures);
   18493            0 :                         if (res) return res;
   18494              :                       }
   18495              :                     }
   18496              :                 }
   18497              :               break;
   18498              :             }
   18499            0 :           default:;
   18500              :           }
   18501            0 :         if ((_q21 == _q20 && ! TREE_SIDE_EFFECTS (_q21)) || (operand_equal_p (_q21, _q20, 0) && types_match (_q21, _q20)))
   18502              :           {
   18503            0 :             switch (TREE_CODE (_p1))
   18504              :               {
   18505            0 :               case ORDERED_EXPR:
   18506            0 :                 {
   18507            0 :                   tree _q50 = TREE_OPERAND (_p1, 0);
   18508            0 :                   tree _q51 = TREE_OPERAND (_p1, 1);
   18509            0 :                   if ((_q51 == _q50 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q50, 0) && types_match (_q51, _q50)))
   18510              :                     {
   18511            0 :                       {
   18512            0 :                         tree captures[2] ATTRIBUTE_UNUSED = { _q20, _q50 };
   18513            0 :                         if (types_match (captures[0], captures[1])
   18514              : )
   18515              :                           {
   18516            0 :                             if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1719;
   18517            0 :                             {
   18518            0 :                               tree res_op0;
   18519            0 :                               res_op0 = captures[0];
   18520            0 :                               tree res_op1;
   18521            0 :                               res_op1 = captures[1];
   18522            0 :                               tree _r;
   18523            0 :                               _r = fold_build2_loc (loc, ORDERED_EXPR, type, res_op0, res_op1);
   18524            0 :                               if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 1017, __FILE__, __LINE__, true);
   18525            0 :                               return _r;
   18526              :                             }
   18527            0 : next_after_fail1719:;
   18528              :                           }
   18529              :                       }
   18530              :                     }
   18531            0 :                   if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
   18532              :                     {
   18533            0 :                       {
   18534            0 :                         tree captures[3] ATTRIBUTE_UNUSED = { _q20, _p1, _q51 };
   18535            0 :                         tree res = generic_simplify_492 (loc, type, _p0, _p1, captures);
   18536            0 :                         if (res) return res;
   18537              :                       }
   18538              :                     }
   18539            0 :                   if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
   18540              :                     {
   18541            0 :                       {
   18542            0 :                         tree captures[3] ATTRIBUTE_UNUSED = { _q20, _p1, _q50 };
   18543            0 :                         tree res = generic_simplify_492 (loc, type, _p0, _p1, captures);
   18544            0 :                         if (res) return res;
   18545              :                       }
   18546              :                     }
   18547              :                   break;
   18548              :                 }
   18549              :               default:;
   18550              :               }
   18551              :           }
   18552            0 :         switch (TREE_CODE (_p1))
   18553              :           {
   18554            0 :           case ORDERED_EXPR:
   18555            0 :             {
   18556            0 :               tree _q50 = TREE_OPERAND (_p1, 0);
   18557            0 :               tree _q51 = TREE_OPERAND (_p1, 1);
   18558            0 :               if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
   18559              :                 {
   18560            0 :                   if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
   18561              :                     {
   18562            0 :                       {
   18563            0 :                         tree captures[3] ATTRIBUTE_UNUSED = { _q20, _p0, _q21 };
   18564            0 :                         tree res = generic_simplify_493 (loc, type, _p0, _p1, captures);
   18565            0 :                         if (res) return res;
   18566              :                       }
   18567              :                     }
   18568              :                 }
   18569            0 :               if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
   18570              :                 {
   18571            0 :                   if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
   18572              :                     {
   18573            0 :                       {
   18574            0 :                         tree captures[3] ATTRIBUTE_UNUSED = { _q21, _p0, _q20 };
   18575            0 :                         tree res = generic_simplify_493 (loc, type, _p0, _p1, captures);
   18576            0 :                         if (res) return res;
   18577              :                       }
   18578              :                     }
   18579              :                 }
   18580              :               break;
   18581              :             }
   18582              :           default:;
   18583              :           }
   18584              :         break;
   18585              :       }
   18586          136 :     case NE_EXPR:
   18587          136 :       {
   18588          136 :         tree _q20 = TREE_OPERAND (_p0, 0);
   18589          136 :         tree _q21 = TREE_OPERAND (_p0, 1);
   18590          136 :         switch (TREE_CODE (_p1))
   18591              :           {
   18592            0 :           case ORDERED_EXPR:
   18593            0 :             {
   18594            0 :               tree _q50 = TREE_OPERAND (_p1, 0);
   18595            0 :               tree _q51 = TREE_OPERAND (_p1, 1);
   18596            0 :               if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
   18597              :                 {
   18598            0 :                   if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
   18599              :                     {
   18600            0 :                       {
   18601            0 :                         tree captures[2] ATTRIBUTE_UNUSED = { _q20, _q21 };
   18602            0 :                         tree res = generic_simplify_491 (loc, type, _p0, _p1, captures);
   18603            0 :                         if (res) return res;
   18604              :                       }
   18605              :                     }
   18606              :                 }
   18607              :               break;
   18608              :             }
   18609              :           default:;
   18610              :           }
   18611              :         break;
   18612              :       }
   18613       489695 :     case MINUS_EXPR:
   18614       489695 :       {
   18615       489695 :         tree _q20 = TREE_OPERAND (_p0, 0);
   18616       489695 :         tree _q21 = TREE_OPERAND (_p0, 1);
   18617       489695 :         switch (TREE_CODE (_q20))
   18618              :           {
   18619       424738 :           CASE_CONVERT:
   18620       424738 :             {
   18621       424738 :               tree _q30 = TREE_OPERAND (_q20, 0);
   18622       424738 :               switch (TREE_CODE (_q21))
   18623              :                 {
   18624       420192 :                 CASE_CONVERT:
   18625       420192 :                   {
   18626       420192 :                     tree _q50 = TREE_OPERAND (_q21, 0);
   18627       420192 :                     switch (TREE_CODE (_p1))
   18628              :                       {
   18629       420168 :                       case INTEGER_CST:
   18630       420168 :                         {
   18631       420168 :                           {
   18632       420168 :                             tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q30, _q21, _q50, _p1 };
   18633       420168 :                             tree res = generic_simplify_494 (loc, type, _p0, _p1, captures, MINUS_EXPR);
   18634       420168 :                             if (res) return res;
   18635              :                           }
   18636       420158 :                           break;
   18637              :                         }
   18638              :                       default:;
   18639              :                       }
   18640              :                     break;
   18641              :                   }
   18642              :                 default:;
   18643              :                 }
   18644              :               break;
   18645              :             }
   18646              :           default:;
   18647              :           }
   18648              :         break;
   18649              :       }
   18650       166685 :     case PLUS_EXPR:
   18651       166685 :       {
   18652       166685 :         tree _q20 = TREE_OPERAND (_p0, 0);
   18653       166685 :         tree _q21 = TREE_OPERAND (_p0, 1);
   18654       166685 :         switch (TREE_CODE (_q20))
   18655              :           {
   18656        47562 :           CASE_CONVERT:
   18657        47562 :             {
   18658        47562 :               tree _q30 = TREE_OPERAND (_q20, 0);
   18659        47562 :               switch (TREE_CODE (_q21))
   18660              :                 {
   18661          119 :                 CASE_CONVERT:
   18662          119 :                   {
   18663          119 :                     tree _q50 = TREE_OPERAND (_q21, 0);
   18664          119 :                     switch (TREE_CODE (_p1))
   18665              :                       {
   18666           60 :                       case INTEGER_CST:
   18667           60 :                         {
   18668           60 :                           {
   18669           60 :                             tree captures[6] ATTRIBUTE_UNUSED = { _p0, _q20, _q30, _q21, _q50, _p1 };
   18670           60 :                             tree res = generic_simplify_494 (loc, type, _p0, _p1, captures, PLUS_EXPR);
   18671           60 :                             if (res) return res;
   18672              :                           }
   18673           45 :                           break;
   18674              :                         }
   18675              :                       default:;
   18676              :                       }
   18677              :                     break;
   18678              :                   }
   18679              :                 default:;
   18680              :                 }
   18681              :               break;
   18682              :             }
   18683              :           default:;
   18684              :           }
   18685              :         break;
   18686              :       }
   18687           80 :     case LT_EXPR:
   18688           80 :       {
   18689           80 :         tree _q20 = TREE_OPERAND (_p0, 0);
   18690           80 :         tree _q21 = TREE_OPERAND (_p0, 1);
   18691           80 :         switch (TREE_CODE (_p1))
   18692              :           {
   18693            8 :           case LT_EXPR:
   18694            8 :             {
   18695            8 :               tree _q50 = TREE_OPERAND (_p1, 0);
   18696            8 :               tree _q51 = TREE_OPERAND (_p1, 1);
   18697            8 :               if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
   18698              :                 {
   18699            0 :                   {
   18700            0 :                     tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q51 };
   18701            0 :                     tree res = generic_simplify_173 (loc, type, _p0, _p1, captures, BIT_AND_EXPR, LT_EXPR, MIN_EXPR);
   18702            0 :                     if (res) return res;
   18703              :                   }
   18704              :                 }
   18705            8 :               if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
   18706              :                 {
   18707            0 :                   {
   18708            0 :                     tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q50 };
   18709            0 :                     tree res = generic_simplify_173 (loc, type, _p0, _p1, captures, BIT_AND_EXPR, GT_EXPR, MAX_EXPR);
   18710            0 :                     if (res) return res;
   18711              :                   }
   18712              :                 }
   18713              :               break;
   18714              :             }
   18715            1 :           case GT_EXPR:
   18716            1 :             {
   18717            1 :               tree _q50 = TREE_OPERAND (_p1, 0);
   18718            1 :               tree _q51 = TREE_OPERAND (_p1, 1);
   18719            1 :               if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
   18720              :                 {
   18721            0 :                   {
   18722            0 :                     tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q50 };
   18723            0 :                     tree res = generic_simplify_173 (loc, type, _p0, _p1, captures, BIT_AND_EXPR, LT_EXPR, MIN_EXPR);
   18724            0 :                     if (res) return res;
   18725              :                   }
   18726              :                 }
   18727            1 :               if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
   18728              :                 {
   18729            0 :                   {
   18730            0 :                     tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q51 };
   18731            0 :                     tree res = generic_simplify_173 (loc, type, _p0, _p1, captures, BIT_AND_EXPR, GT_EXPR, MAX_EXPR);
   18732            0 :                     if (res) return res;
   18733              :                   }
   18734              :                 }
   18735              :               break;
   18736              :             }
   18737              :           default:;
   18738              :           }
   18739              :         break;
   18740              :       }
   18741           32 :     case LE_EXPR:
   18742           32 :       {
   18743           32 :         tree _q20 = TREE_OPERAND (_p0, 0);
   18744           32 :         tree _q21 = TREE_OPERAND (_p0, 1);
   18745           32 :         switch (TREE_CODE (_p1))
   18746              :           {
   18747            5 :           case LE_EXPR:
   18748            5 :             {
   18749            5 :               tree _q50 = TREE_OPERAND (_p1, 0);
   18750            5 :               tree _q51 = TREE_OPERAND (_p1, 1);
   18751            5 :               if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
   18752              :                 {
   18753            0 :                   {
   18754            0 :                     tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q51 };
   18755            0 :                     tree res = generic_simplify_173 (loc, type, _p0, _p1, captures, BIT_AND_EXPR, LE_EXPR, MIN_EXPR);
   18756            0 :                     if (res) return res;
   18757              :                   }
   18758              :                 }
   18759            5 :               if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
   18760              :                 {
   18761            4 :                   {
   18762            4 :                     tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q50 };
   18763            4 :                     tree res = generic_simplify_173 (loc, type, _p0, _p1, captures, BIT_AND_EXPR, GE_EXPR, MAX_EXPR);
   18764            4 :                     if (res) return res;
   18765              :                   }
   18766              :                 }
   18767              :               break;
   18768              :             }
   18769            0 :           case GE_EXPR:
   18770            0 :             {
   18771            0 :               tree _q50 = TREE_OPERAND (_p1, 0);
   18772            0 :               tree _q51 = TREE_OPERAND (_p1, 1);
   18773            0 :               if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
   18774              :                 {
   18775            0 :                   {
   18776            0 :                     tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q50 };
   18777            0 :                     tree res = generic_simplify_173 (loc, type, _p0, _p1, captures, BIT_AND_EXPR, LE_EXPR, MIN_EXPR);
   18778            0 :                     if (res) return res;
   18779              :                   }
   18780              :                 }
   18781            0 :               if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
   18782              :                 {
   18783            0 :                   {
   18784            0 :                     tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q51 };
   18785            0 :                     tree res = generic_simplify_173 (loc, type, _p0, _p1, captures, BIT_AND_EXPR, GE_EXPR, MAX_EXPR);
   18786            0 :                     if (res) return res;
   18787              :                   }
   18788              :                 }
   18789              :               break;
   18790              :             }
   18791              :           default:;
   18792              :           }
   18793              :         break;
   18794              :       }
   18795          348 :     case GT_EXPR:
   18796          348 :       {
   18797          348 :         tree _q20 = TREE_OPERAND (_p0, 0);
   18798          348 :         tree _q21 = TREE_OPERAND (_p0, 1);
   18799          348 :         switch (TREE_CODE (_p1))
   18800              :           {
   18801           85 :           case GT_EXPR:
   18802           85 :             {
   18803           85 :               tree _q50 = TREE_OPERAND (_p1, 0);
   18804           85 :               tree _q51 = TREE_OPERAND (_p1, 1);
   18805           85 :               if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
   18806              :                 {
   18807            0 :                   {
   18808            0 :                     tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q51 };
   18809            0 :                     tree res = generic_simplify_173 (loc, type, _p0, _p1, captures, BIT_AND_EXPR, GT_EXPR, MAX_EXPR);
   18810            0 :                     if (res) return res;
   18811              :                   }
   18812              :                 }
   18813           85 :               if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
   18814              :                 {
   18815           35 :                   {
   18816           35 :                     tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q50 };
   18817           35 :                     tree res = generic_simplify_173 (loc, type, _p0, _p1, captures, BIT_AND_EXPR, LT_EXPR, MIN_EXPR);
   18818           35 :                     if (res) return res;
   18819              :                   }
   18820              :                 }
   18821              :               break;
   18822              :             }
   18823           67 :           case LT_EXPR:
   18824           67 :             {
   18825           67 :               tree _q50 = TREE_OPERAND (_p1, 0);
   18826           67 :               tree _q51 = TREE_OPERAND (_p1, 1);
   18827           67 :               if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
   18828              :                 {
   18829            0 :                   {
   18830            0 :                     tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q50 };
   18831            0 :                     tree res = generic_simplify_173 (loc, type, _p0, _p1, captures, BIT_AND_EXPR, GT_EXPR, MAX_EXPR);
   18832            0 :                     if (res) return res;
   18833              :                   }
   18834              :                 }
   18835           67 :               if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
   18836              :                 {
   18837            0 :                   {
   18838            0 :                     tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q51 };
   18839            0 :                     tree res = generic_simplify_173 (loc, type, _p0, _p1, captures, BIT_AND_EXPR, LT_EXPR, MIN_EXPR);
   18840            0 :                     if (res) return res;
   18841              :                   }
   18842              :                 }
   18843              :               break;
   18844              :             }
   18845              :           default:;
   18846              :           }
   18847              :         break;
   18848              :       }
   18849           73 :     case GE_EXPR:
   18850           73 :       {
   18851           73 :         tree _q20 = TREE_OPERAND (_p0, 0);
   18852           73 :         tree _q21 = TREE_OPERAND (_p0, 1);
   18853           73 :         switch (TREE_CODE (_p1))
   18854              :           {
   18855           11 :           case GE_EXPR:
   18856           11 :             {
   18857           11 :               tree _q50 = TREE_OPERAND (_p1, 0);
   18858           11 :               tree _q51 = TREE_OPERAND (_p1, 1);
   18859           11 :               if ((_q50 == _q20 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q20, 0) && types_match (_q50, _q20)))
   18860              :                 {
   18861            7 :                   {
   18862            7 :                     tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q51 };
   18863            7 :                     tree res = generic_simplify_173 (loc, type, _p0, _p1, captures, BIT_AND_EXPR, GE_EXPR, MAX_EXPR);
   18864            7 :                     if (res) return res;
   18865              :                   }
   18866              :                 }
   18867           11 :               if ((_q51 == _q21 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q21, 0) && types_match (_q51, _q21)))
   18868              :                 {
   18869            0 :                   {
   18870            0 :                     tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q50 };
   18871            0 :                     tree res = generic_simplify_173 (loc, type, _p0, _p1, captures, BIT_AND_EXPR, LE_EXPR, MIN_EXPR);
   18872            0 :                     if (res) return res;
   18873              :                   }
   18874              :                 }
   18875              :               break;
   18876              :             }
   18877           17 :           case LE_EXPR:
   18878           17 :             {
   18879           17 :               tree _q50 = TREE_OPERAND (_p1, 0);
   18880           17 :               tree _q51 = TREE_OPERAND (_p1, 1);
   18881           17 :               if ((_q51 == _q20 && ! TREE_SIDE_EFFECTS (_q51)) || (operand_equal_p (_q51, _q20, 0) && types_match (_q51, _q20)))
   18882              :                 {
   18883            0 :                   {
   18884            0 :                     tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q20, _q21, _p1, _q50 };
   18885            0 :                     tree res = generic_simplify_173 (loc, type, _p0, _p1, captures, BIT_AND_EXPR, GE_EXPR, MAX_EXPR);
   18886            0 :                     if (res) return res;
   18887              :                   }
   18888              :                 }
   18889           17 :               if ((_q50 == _q21 && ! TREE_SIDE_EFFECTS (_q50)) || (operand_equal_p (_q50, _q21, 0) && types_match (_q50, _q21)))
   18890              :                 {
   18891            0 :                   {
   18892            0 :                     tree captures[5] ATTRIBUTE_UNUSED = { _p0, _q21, _q20, _p1, _q51 };
   18893            0 :                     tree res = generic_simplify_173 (loc, type, _p0, _p1, captures, BIT_AND_EXPR, LE_EXPR, MIN_EXPR);
   18894            0 :                     if (res) return res;
   18895              :                   }
   18896              :                 }
   18897              :               break;
   18898              :             }
   18899              :           default:;
   18900              :           }
   18901              :         break;
   18902              :       }
   18903        47149 :     case NEGATE_EXPR:
   18904        47149 :       {
   18905        47149 :         tree _q20 = TREE_OPERAND (_p0, 0);
   18906        47149 :         if (integer_onep (_p1))
   18907              :           {
   18908         1439 :             {
   18909         1439 :               tree captures[2] ATTRIBUTE_UNUSED = { _q20, _p1 };
   18910         1439 :               if (!TYPE_OVERFLOW_SANITIZED (type)
   18911              : )
   18912              :                 {
   18913         1426 :                   if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1720;
   18914         1426 :                   {
   18915         1426 :                     tree res_op0;
   18916         1426 :                     res_op0 = captures[0];
   18917         1426 :                     tree res_op1;
   18918         1426 :                     res_op1 = captures[1];
   18919         1426 :                     tree _r;
   18920         1426 :                     _r = fold_build2_loc (loc, BIT_AND_EXPR, type, res_op0, res_op1);
   18921         1426 :                     if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 1018, __FILE__, __LINE__, true);
   18922         1426 :                     return _r;
   18923              :                   }
   18924            0 : next_after_fail1720:;
   18925              :                 }
   18926              :             }
   18927              :           }
   18928              :         break;
   18929              :       }
   18930            1 :     case VEC_PERM_EXPR:
   18931            1 :       {
   18932            1 :         tree _q20 = TREE_OPERAND (_p0, 0);
   18933            1 :         tree _q21 = TREE_OPERAND (_p0, 1);
   18934            1 :         tree _q22 = TREE_OPERAND (_p0, 2);
   18935            1 :         if ((_q21 == _q20 && ! TREE_SIDE_EFFECTS (_q21)) || (operand_equal_p (_q21, _q20, 0) && types_match (_q21, _q20)))
   18936              :           {
   18937            0 :             switch (TREE_CODE (_p1))
   18938              :               {
   18939            0 :               case VEC_PERM_EXPR:
   18940            0 :                 {
   18941            0 :                   tree _q60 = TREE_OPERAND (_p1, 0);
   18942            0 :                   tree _q61 = TREE_OPERAND (_p1, 1);
   18943            0 :                   tree _q62 = TREE_OPERAND (_p1, 2);
   18944            0 :                   if ((_q61 == _q60 && ! TREE_SIDE_EFFECTS (_q61)) || (operand_equal_p (_q61, _q60, 0) && types_match (_q61, _q60)))
   18945              :                     {
   18946            0 :                       if ((_q62 == _q22 && ! TREE_SIDE_EFFECTS (_q62)) || (operand_equal_p (_q62, _q22, 0) && types_match (_q62, _q22)))
   18947              :                         {
   18948            0 :                           {
   18949            0 :                             tree captures[4] ATTRIBUTE_UNUSED = { _q20, _q22, _q60 };
   18950            0 :                             if (VECTOR_INTEGER_TYPE_P (type)
   18951              : )
   18952              :                               {
   18953            0 :                                 if (UNLIKELY (!dbg_cnt (match))) goto next_after_fail1721;
   18954            0 :                                 {
   18955            0 :                                   tree res_op0;
   18956            0 :                                   {
   18957            0 :                                     tree _o1[2], _r1;
   18958            0 :                                     _o1[0] = captures[0];
   18959            0 :                                     _o1[1] = captures[2];
   18960            0 :                                     _r1 = fold_build2_loc (loc, BIT_AND_EXPR, TREE_TYPE (_o1[0]), _o1[0], _o1[1]);
   18961            0 :                                     captures[3] = _r1;
   18962              :                                   }
   18963            0 :                                   res_op0 = unshare_expr (captures[3]);
   18964            0 :                                   tree res_op1;
   18965            0 :                                   res_op1 = captures[3];
   18966            0 :                                   tree res_op2;
   18967            0 :                                   res_op2 = captures[1];
   18968            0 :                                   tree _r;
   18969            0 :                                   _r = fold_build3_loc (loc, VEC_PERM_EXPR, type, res_op0, res_op1, res_op2);
   18970            0 :                                   if (UNLIKELY (debug_dump)) generic_dump_logs ("match.pd", 894, __FILE__, __LINE__, true);
   18971            0 :                                   return _r;
   18972              :                                 }
   18973            0 : next_after_fail1721:;
   18974              :                               }
   18975              :                           }
   18976              :                         }
   18977              :                     }
   18978              :                   break;
   18979              :                 }
   18980              :               default:;
   18981              :               }
   18982              :           }
   18983              :         break;
   18984              :       }
   18985       199783 :     case CALL_EXPR:
   18986       199783 :       switch (get_call_combined_fn (_p0))
   18987              :         {
   18988            1 :         case CFN_BUILT_IN_POPCOUNT:
   18989            1 :           if (call_expr_nargs (_p0) == 1)
   18990              :     {
   18991            1 :               tree _q20 = CALL_EXPR_ARG (_p0, 0);
   18992            1 :               if (integer_onep (_p1))
   18993              :                 {
   18994            1 :                   {
   18995            1 :                     tree captures[1] ATTRIBUTE_UNUSED = { _q20 };
   18996            1 :                     tree res = generic_simplify_495 (loc, type, _p0, _p1, captures, CFN_BUILT_IN_POPCOUNT, CFN_BUILT_IN_PARITY);
   18997            1 :                     if (res) return res;
   18998              :                   }
   18999              :                 }
   19000              :             }
   19001              :           break;
   19002            1 :         case CFN_BUILT_IN_POPCOUNTLL:
   19003            1 :           if (call_expr_nargs (_p0) == 1)
   19004              :     {
   19005            1 :               tree _q20 = CALL_EXPR_ARG (_p0, 0);
   19006            1 :               if (integer_onep (_p1))
   19007              :                 {
   19008            1 :                   {
   19009            1 :                     tree captures[1] ATTRIBUTE_UNUSED = { _q20 };
   19010            1 :                     tree res = generic_simplify_495 (loc, type, _p0, _p1, captures, CFN_BUILT_IN_POPCOUNTLL, CFN_BUILT_IN_PARITYLL);
   19011            1 :                     if (res) return res;
   19012              :                   }
   19013              :                 }
   19014              :             }
   19015              :           break;
   19016            0 :         case CFN_POPCOUNT:
   19017            0 :           if (call_expr_nargs (_p0) == 1)
   19018              :     {
   19019            0 :               tree _q20 = CALL_EXPR_ARG (_p0, 0);
   19020            0 :               if (integer_onep (_p1))
   19021              :                 {
   19022            0 :                   {
   19023            0 :                     tree captures[1] ATTRIBUTE_UNUSED = { _q20 };
   19024            0 :                     tree res = generic_simplify_495 (loc, type, _p0, _p1, captures, CFN_POPCOUNT, CFN_PARITY);
   19025            0 :                     if (res) return res;
   19026              :                   }
   19027              :                 }
   19028              :             }
   19029              :           break;
   19030            0 :         case CFN_BUILT_IN_POPCOUNTIMAX:
   19031            0 :           if (call_expr_nargs (_p0) == 1)
   19032              :     {
   19033            0 :               tree _q20 = CALL_EXPR_ARG (_p0, 0);
   19034            0 :               if (integer_onep (_p1))
   19035              :                 {
   19036            0 :                   {
   19037            0 :                     tree captures[1] ATTRIBUTE_UNUSED = { _q20 };
   19038            0 :                     tree res = generic_simplify_495 (loc, type, _p0, _p1, captures, CFN_BUILT_IN_POPCOUNTIMAX, CFN_BUILT_IN_PARITYIMAX);
   19039            0 :                     if (res) return res;
   19040              :                   }
   19041              :                 }
   19042              :             }
   19043              :           break;
   19044            1 :         case CFN_BUILT_IN_POPCOUNTL:
   19045            1 :           if (call_expr_nargs (_p0) == 1)
   19046              :     {
   19047            1 :               tree _q20 = CALL_EXPR_ARG (_p0, 0);
   19048            1 :               if (integer_onep (_p1))
   19049              :                 {
   19050            1 :                   {
   19051            1 :                     tree captures[1] ATTRIBUTE_UNUSED = { _q20 };
   19052            1 :                     tree res = generic_simplify_495 (loc, type, _p0, _p1, captures, CFN_BUILT_IN_POPCOUNTL, CFN_BUILT_IN_PARITYL);
   19053            1 :                     if (res) return res;
   19054              :                   }
   19055              :                 }
   19056              :             }
   19057              :           break;
   19058              :         default:;
   19059              :         }
   19060              :       break;
   19061              :     default:;
   19062              :     }
   19063              :   return NULL_TREE;
   19064              : }
   19065              : #pragma GCC diagnostic pop
        

Generated by: LCOV version 2.4-beta

LCOV profile is generated on x86_64 machine using following configure options: configure --disable-bootstrap --enable-coverage=opt --enable-languages=c,c++,fortran,go,jit,lto,rust,m2 --enable-host-shared. GCC test suite is run with the built compiler.