LCOV - code coverage report
Current view: top level - /mnt/build/buildbot/bld/build-lcov/gcc - insn-recog-8.cc (source / functions) Coverage Total Hit
Test: gcc.info Lines: 92.0 % 3821 3516
Test Date: 2026-07-11 15:47:05 Functions: 96.4 % 192 185
Legend: Lines:     hit not hit

            Line data    Source code
       1              : /* Generated automatically by the program `genrecog' from the target
       2              :    machine description file.  */
       3              : 
       4              : #define IN_TARGET_CODE 1
       5              : 
       6              : #include "config.h"
       7              : #include "system.h"
       8              : #include "coretypes.h"
       9              : #include "backend.h"
      10              : #include "predict.h"
      11              : #include "rtl.h"
      12              : #include "memmodel.h"
      13              : #include "tm_p.h"
      14              : #include "emit-rtl.h"
      15              : #include "insn-config.h"
      16              : #include "recog.h"
      17              : #include "output.h"
      18              : #include "flags.h"
      19              : #include "df.h"
      20              : #include "resource.h"
      21              : #include "diagnostic-core.h"
      22              : #include "reload.h"
      23              : #include "regs.h"
      24              : #include "tm-constrs.h"
      25              : #include "insn-recog.h"
      26              : 
      27              : 
      28              : /* `recog' contains a decision tree that recognizes whether the rtx
      29              :    X0 is a valid instruction.
      30              : 
      31              :    recog returns -1 if the rtx is not valid.  If the rtx is valid, recog
      32              :    returns a nonnegative number which is the insn code number for the
      33              :    pattern that matched.  This is the same as the order in the machine
      34              :    description of the entry that matched.  This number can be used as an
      35              :    index into `insn_data' and other tables.
      36              :    The third parameter to recog is an optional pointer to an int.  If
      37              :    present, recog will accept a pattern if it matches except for missing
      38              :    CLOBBER expressions at the end.  In that case, the value pointed to by
      39              :    the optional pointer will be set to the number of CLOBBERs that need
      40              :    to be added (it should be initialized to zero by the caller).  If it   is set nonzero, the caller should allocate a PARALLEL of the
      41              :    appropriate size, copy the initial entries, and call add_clobbers
      42              :    (found in insn-emit.cc) to fill in the CLOBBERs.
      43              : 
      44              :    The function split_insns returns 0 if the rtl could not
      45              :    be split or the split rtl as an INSN list if it can be.
      46              : 
      47              :    The function peephole2_insns returns 0 if the rtl could not
      48              :    be matched. If there was a match, the new rtl is returned in an INSN list,
      49              :    and LAST_INSN will point to the last recognized insn in the old sequence.
      50              : */
      51              : 
      52              : 
      53              : 
      54              : 
      55              : int
      56       364100 : pattern7 (rtx x1, int *pnum_clobbers)
      57              : {
      58       364100 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
      59       364100 :   rtx x2, x3, x4, x5;
      60       364100 :   int res ATTRIBUTE_UNUSED;
      61       364100 :   x2 = XEXP (x1, 0);
      62       364100 :   operands[0] = x2;
      63       364100 :   x3 = XEXP (x1, 1);
      64       364100 :   x4 = XEXP (x3, 0);
      65       364100 :   operands[1] = x4;
      66       364100 :   x5 = XEXP (x3, 1);
      67       364100 :   operands[2] = x5;
      68       364100 :   switch (GET_MODE (operands[0]))
      69              :     {
      70         7318 :     case E_SFmode:
      71         7318 :       return pattern3 (x3, 
      72         7318 : E_SFmode); /* [-1, 0] */
      73              : 
      74         2306 :     case E_DFmode:
      75         2306 :       if (pattern3 (x3, 
      76              : E_DFmode) != 0)
      77              :         return -1;
      78              :       return 1;
      79              : 
      80           72 :     case E_HFmode:
      81           72 :       if (pattern3 (x3, 
      82              : E_HFmode) != 0)
      83              :         return -1;
      84              :       return 2;
      85              : 
      86          310 :     case E_TImode:
      87          310 :       if (pnum_clobbers == NULL
      88          310 :           || pattern4 (x3, 
      89              : E_TImode) != 0)
      90          180 :         return -1;
      91              :       return 3;
      92              : 
      93          537 :     case E_QImode:
      94          537 :       if (pnum_clobbers == NULL
      95          537 :           || pattern4 (x3, 
      96              : E_QImode) != 0)
      97          307 :         return -1;
      98              :       return 4;
      99              : 
     100          670 :     case E_HImode:
     101          670 :       if (pnum_clobbers == NULL
     102          670 :           || pattern4 (x3, 
     103              : E_HImode) != 0)
     104          424 :         return -1;
     105              :       return 5;
     106              : 
     107          496 :     case E_V8QImode:
     108          496 :       if (pattern5 (x3, 
     109              : E_V8QImode) != 0)
     110              :         return -1;
     111              :       return 6;
     112              : 
     113          216 :     case E_V2SImode:
     114          216 :       if (pattern5 (x3, 
     115              : E_V2SImode) != 0)
     116              :         return -1;
     117              :       return 7;
     118              : 
     119          810 :     case E_V4HImode:
     120          810 :       if (pattern6 (x3, 
     121              : E_V4HImode) != 0)
     122              :         return -1;
     123              :       return 8;
     124              : 
     125          160 :     case E_V4QImode:
     126          160 :       if (pattern5 (x3, 
     127              : E_V4QImode) != 0)
     128              :         return -1;
     129              :       return 9;
     130              : 
     131           44 :     case E_V2QImode:
     132           44 :       if (pattern5 (x3, 
     133              : E_V2QImode) != 0)
     134              :         return -1;
     135              :       return 10;
     136              : 
     137          349 :     case E_V2HImode:
     138          349 :       if (pattern5 (x3, 
     139              : E_V2HImode) != 0)
     140              :         return -1;
     141              :       return 11;
     142              : 
     143              :     default:
     144              :       return -1;
     145              :     }
     146              : }
     147              : 
     148              : int
     149           98 : pattern28 (rtx x1)
     150              : {
     151           98 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
     152           98 :   int res ATTRIBUTE_UNUSED;
     153           98 :   switch (GET_MODE (operands[0]))
     154              :     {
     155           64 :     case E_V4SImode:
     156           64 :       if (!register_operand (operands[0], E_V4SImode)
     157           64 :           || GET_MODE (x1) != E_V4SImode)
     158              :         return -1;
     159              :       return 0;
     160              : 
     161           34 :     case E_V4DImode:
     162           34 :       if (!register_operand (operands[0], E_V4DImode)
     163           34 :           || GET_MODE (x1) != E_V4DImode)
     164              :         return -1;
     165              :       return 1;
     166              : 
     167              :     default:
     168              :       return -1;
     169              :     }
     170              : }
     171              : 
     172              : int
     173       834020 : pattern35 (rtx x1)
     174              : {
     175       834020 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
     176       834020 :   rtx x2, x3, x4, x5;
     177       834020 :   int res ATTRIBUTE_UNUSED;
     178       834020 :   x2 = XEXP (x1, 0);
     179       834020 :   operands[0] = x2;
     180       834020 :   x3 = XEXP (x1, 1);
     181       834020 :   x4 = XEXP (x3, 0);
     182       834020 :   switch (GET_CODE (x4))
     183              :     {
     184       233740 :     case REG:
     185       233740 :     case SUBREG:
     186       233740 :     case MEM:
     187       233740 :       operands[1] = x4;
     188       233740 :       switch (GET_MODE (operands[0]))
     189              :         {
     190         5499 :         case E_V16HImode:
     191         5499 :           if (!register_operand (operands[0], E_V16HImode)
     192         5468 :               || GET_MODE (x3) != E_V16HImode
     193        10967 :               || !nonimmediate_operand (operands[1], E_V16QImode))
     194          487 :             return -1;
     195              :           return 0;
     196              : 
     197         1842 :         case E_V32HImode:
     198         1842 :           if (!register_operand (operands[0], E_V32HImode)
     199         1828 :               || GET_MODE (x3) != E_V32HImode
     200         3670 :               || !nonimmediate_operand (operands[1], E_V32QImode))
     201           14 :             return -1;
     202              :           return 1;
     203              : 
     204         1340 :         case E_V8HImode:
     205         1340 :           if (!register_operand (operands[0], E_V8HImode)
     206         1338 :               || GET_MODE (x3) != E_V8HImode
     207         2678 :               || !memory_operand (operands[1], E_V8QImode))
     208          355 :             return -1;
     209              :           return 2;
     210              : 
     211         1462 :         case E_V16SImode:
     212         1462 :           if (!register_operand (operands[0], E_V16SImode)
     213         1462 :               || GET_MODE (x3) != E_V16SImode)
     214              :             return -1;
     215         1388 :           switch (GET_MODE (operands[1]))
     216              :             {
     217          157 :             case E_V16QImode:
     218          157 :               if (!nonimmediate_operand (operands[1], E_V16QImode))
     219              :                 return -1;
     220              :               return 3;
     221              : 
     222         1231 :             case E_V16HImode:
     223         1231 :               if (!nonimmediate_operand (operands[1], E_V16HImode))
     224              :                 return -1;
     225              :               return 4;
     226              : 
     227              :             default:
     228              :               return -1;
     229              :             }
     230              : 
     231         4568 :         case E_V8SImode:
     232         4568 :           if (!register_operand (operands[0], E_V8SImode)
     233         4568 :               || GET_MODE (x3) != E_V8SImode)
     234              :             return -1;
     235         4544 :           switch (GET_MODE (operands[1]))
     236              :             {
     237           23 :             case E_V8QImode:
     238           23 :               if (!memory_operand (operands[1], E_V8QImode))
     239              :                 return -1;
     240              :               return 5;
     241              : 
     242         4521 :             case E_V8HImode:
     243         4521 :               if (!nonimmediate_operand (operands[1], E_V8HImode))
     244              :                 return -1;
     245              :               return 6;
     246              : 
     247              :             default:
     248              :               return -1;
     249              :             }
     250              : 
     251          216 :         case E_V4SImode:
     252          216 :           if (!register_operand (operands[0], E_V4SImode)
     253          216 :               || GET_MODE (x3) != E_V4SImode)
     254              :             return -1;
     255          212 :           switch (GET_MODE (operands[1]))
     256              :             {
     257           73 :             case E_V4QImode:
     258           73 :               if (!memory_operand (operands[1], E_V4QImode))
     259              :                 return -1;
     260              :               return 7;
     261              : 
     262          133 :             case E_V4HImode:
     263          133 :               if (!memory_operand (operands[1], E_V4HImode))
     264              :                 return -1;
     265              :               return 8;
     266              : 
     267              :             default:
     268              :               return -1;
     269              :             }
     270              : 
     271         1629 :         case E_V8DImode:
     272         1629 :           if (!register_operand (operands[0], E_V8DImode)
     273         1629 :               || GET_MODE (x3) != E_V8DImode)
     274              :             return -1;
     275         1318 :           switch (GET_MODE (operands[1]))
     276              :             {
     277           14 :             case E_V8QImode:
     278           14 :               if (!memory_operand (operands[1], E_V8QImode))
     279              :                 return -1;
     280              :               return 9;
     281              : 
     282          146 :             case E_V8HImode:
     283          146 :               if (!nonimmediate_operand (operands[1], E_V8HImode))
     284              :                 return -1;
     285              :               return 10;
     286              : 
     287         1158 :             case E_V8SImode:
     288         1158 :               if (!nonimmediate_operand (operands[1], E_V8SImode))
     289              :                 return -1;
     290              :               return 11;
     291              : 
     292              :             default:
     293              :               return -1;
     294              :             }
     295              : 
     296         4271 :         case E_V4DImode:
     297         4271 :           if (!register_operand (operands[0], E_V4DImode)
     298         4271 :               || GET_MODE (x3) != E_V4DImode)
     299              :             return -1;
     300         3690 :           switch (GET_MODE (operands[1]))
     301              :             {
     302           18 :             case E_V4QImode:
     303           18 :               if (!memory_operand (operands[1], E_V4QImode))
     304              :                 return -1;
     305              :               return 12;
     306              : 
     307           38 :             case E_V4HImode:
     308           38 :               if (!memory_operand (operands[1], E_V4HImode))
     309              :                 return -1;
     310              :               return 13;
     311              : 
     312         3634 :             case E_V4SImode:
     313         3634 :               if (!nonimmediate_operand (operands[1], E_V4SImode))
     314              :                 return -1;
     315              :               return 14;
     316              : 
     317              :             default:
     318              :               return -1;
     319              :             }
     320              : 
     321           64 :         case E_V2DImode:
     322           64 :           if (!register_operand (operands[0], E_V2DImode)
     323           64 :               || GET_MODE (x3) != E_V2DImode)
     324              :             return -1;
     325           58 :           switch (GET_MODE (operands[1]))
     326              :             {
     327           17 :             case E_V2QImode:
     328           17 :               if (!memory_operand (operands[1], E_V2QImode))
     329              :                 return -1;
     330              :               return 15;
     331              : 
     332           14 :             case E_V2HImode:
     333           14 :               if (!memory_operand (operands[1], E_V2HImode))
     334              :                 return -1;
     335              :               return 16;
     336              : 
     337           27 :             case E_V2SImode:
     338           27 :               if (!memory_operand (operands[1], E_V2SImode))
     339              :                 return -1;
     340              :               return 17;
     341              : 
     342              :             default:
     343              :               return -1;
     344              :             }
     345              : 
     346              :         default:
     347              :           return -1;
     348              :         }
     349              : 
     350        79666 :     case VEC_SELECT:
     351        79666 :       x5 = XEXP (x4, 1);
     352        79666 :       if (GET_CODE (x5) != PARALLEL)
     353              :         return -1;
     354              :       return 18;
     355              : 
     356              :     default:
     357              :       return -1;
     358              :     }
     359              : }
     360              : 
     361              : int
     362         1480 : pattern81 (rtx x1, int *pnum_clobbers, machine_mode i1)
     363              : {
     364         1480 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
     365         1480 :   int res ATTRIBUTE_UNUSED;
     366         1480 :   if (pnum_clobbers == NULL
     367         1480 :       || !nonimmediate_operand (operands[0], i1)
     368         1480 :       || GET_MODE (x1) != i1
     369         1480 :       || !nonimmediate_operand (operands[1], i1)
     370         2956 :       || !nonimmediate_or_x86_64_const_vector_operand (operands[2], i1))
     371           41 :     return -1;
     372              :   return 0;
     373              : }
     374              : 
     375              : int
     376     26329802 : pattern88 (rtx x1, int *pnum_clobbers)
     377              : {
     378     26329802 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
     379     26329802 :   rtx x2, x3, x4;
     380     26329802 :   int res ATTRIBUTE_UNUSED;
     381     26329802 :   x2 = XEXP (x1, 1);
     382     26329802 :   x3 = XEXP (x2, 1);
     383     26329802 :   operands[2] = x3;
     384     26329802 :   x4 = XEXP (x1, 0);
     385     26329802 :   switch (GET_CODE (x4))
     386              :     {
     387     26329035 :     case REG:
     388     26329035 :     case SUBREG:
     389     26329035 :     case MEM:
     390     26329035 :       operands[0] = x4;
     391     26329035 :       return 0;
     392              : 
     393          638 :     case STRICT_LOW_PART:
     394          638 :       res = pattern78 (x1, pnum_clobbers);
     395          638 :       if (res >= 0)
     396          406 :         return res + 1; /* [1, 2] */
     397              :       return -1;
     398              : 
     399              :     default:
     400              :       return -1;
     401              :     }
     402              : }
     403              : 
     404              : int
     405           49 : pattern95 (rtx x1, machine_mode i1)
     406              : {
     407           49 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
     408           49 :   rtx x2;
     409           49 :   int res ATTRIBUTE_UNUSED;
     410           49 :   if (!nonimmediate_operand (operands[0], i1)
     411           49 :       || GET_MODE (x1) != i1)
     412              :     return -1;
     413           49 :   x2 = XEXP (x1, 0);
     414           49 :   if (GET_MODE (x2) != i1
     415           49 :       || !general_operand (operands[1], i1))
     416            0 :     return -1;
     417              :   return 0;
     418              : }
     419              : 
     420              : int
     421        21763 : pattern98 (rtx x1)
     422              : {
     423        21763 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
     424        21763 :   rtx x2, x3, x4, x5, x6, x7, x8;
     425        21763 :   int res ATTRIBUTE_UNUSED;
     426        21763 :   x2 = XEXP (x1, 1);
     427        21763 :   x3 = XEXP (x2, 0);
     428        21763 :   x4 = XEXP (x3, 1);
     429        21763 :   if (GET_CODE (x4) != PARALLEL)
     430              :     return -1;
     431        21763 :   x5 = XEXP (x2, 1);
     432        21763 :   if (GET_CODE (x5) != VEC_SELECT)
     433              :     return -1;
     434         3949 :   x6 = XEXP (x5, 1);
     435         3949 :   if (GET_CODE (x6) != PARALLEL)
     436              :     return -1;
     437         3949 :   x7 = XEXP (x1, 0);
     438         3949 :   operands[0] = x7;
     439         3949 :   x8 = XEXP (x3, 0);
     440         3949 :   switch (GET_CODE (x8))
     441              :     {
     442              :     case REG:
     443              :     case SUBREG:
     444              :       return 0;
     445              : 
     446         1051 :     case VEC_CONCAT:
     447         1051 :       return 1;
     448              : 
     449              :     default:
     450              :       return -1;
     451              :     }
     452              : }
     453              : 
     454              : int
     455          691 : pattern106 ()
     456              : {
     457          691 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
     458          691 :   int res ATTRIBUTE_UNUSED;
     459          691 :   switch (GET_MODE (operands[1]))
     460              :     {
     461          240 :     case E_V8HImode:
     462          240 :       if (!register_operand (operands[1], E_V8HImode))
     463              :         return -1;
     464              :       return 0;
     465              : 
     466          229 :     case E_V8SImode:
     467          229 :       if (!register_operand (operands[1], E_V8SImode))
     468              :         return -1;
     469              :       return 1;
     470              : 
     471          222 :     case E_V8DImode:
     472          222 :       if (!register_operand (operands[1], E_V8DImode))
     473              :         return -1;
     474              :       return 2;
     475              : 
     476              :     default:
     477              :       return -1;
     478              :     }
     479              : }
     480              : 
     481              : int
     482         1961 : pattern113 (rtx x1, int *pnum_clobbers)
     483              : {
     484         1961 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
     485         1961 :   rtx x2, x3, x4;
     486         1961 :   int res ATTRIBUTE_UNUSED;
     487         1961 :   if (pnum_clobbers == NULL)
     488              :     return -1;
     489         1961 :   x2 = XEXP (x1, 0);
     490         1961 :   if (GET_MODE (x2) != E_SImode
     491         1854 :       || !register_operand (operands[0], E_DImode)
     492         3815 :       || GET_MODE (x1) != E_DImode)
     493          107 :     return -1;
     494         1854 :   x3 = XEXP (x2, 0);
     495         1854 :   operands[1] = x3;
     496         1854 :   if (!register_operand (operands[1], E_SImode))
     497              :     return -1;
     498         1776 :   x4 = XEXP (x2, 1);
     499         1776 :   operands[2] = x4;
     500         1776 :   if (!nonimmediate_operand (operands[2], E_SImode))
     501              :     return -1;
     502              :   return 0;
     503              : }
     504              : 
     505              : int
     506       444013 : pattern120 (rtx x1, rtx_code i1)
     507              : {
     508       444013 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
     509       444013 :   rtx x2, x3, x4, x5;
     510       444013 :   int res ATTRIBUTE_UNUSED;
     511       444013 :   x2 = XEXP (x1, 0);
     512       444013 :   if (GET_MODE (x2) != E_DImode)
     513              :     return -1;
     514       189976 :   x3 = XEXP (x1, 1);
     515       189976 :   if (GET_CODE (x3) != i1
     516        27735 :       || GET_MODE (x3) != E_DImode
     517        27735 :       || !register_operand (operands[0], E_DImode)
     518       217598 :       || GET_MODE (x1) != E_DImode)
     519       162354 :     return -1;
     520        27622 :   x4 = XEXP (x2, 0);
     521        27622 :   operands[1] = x4;
     522        27622 :   if (!register_operand (operands[1], E_SImode))
     523              :     return -1;
     524        17778 :   x5 = XEXP (x3, 0);
     525        17778 :   operands[2] = x5;
     526        17778 :   if (!nonimmediate_operand (operands[2], E_SImode))
     527              :     return -1;
     528              :   return 0;
     529              : }
     530              : 
     531              : int
     532          766 : pattern128 (rtx x1, machine_mode i1)
     533              : {
     534          766 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
     535          766 :   int res ATTRIBUTE_UNUSED;
     536          766 :   if (!register_operand (operands[0], i1)
     537          766 :       || GET_MODE (x1) != i1)
     538              :     return -1;
     539          718 :   switch (GET_MODE (operands[1]))
     540              :     {
     541           44 :     case E_V8HFmode:
     542           44 :       if (!register_operand (operands[1], E_V8HFmode))
     543              :         return -1;
     544              :       return 0;
     545              : 
     546          379 :     case E_V4SFmode:
     547          379 :       if (!nonimmediate_operand (operands[1], E_V4SFmode))
     548              :         return -1;
     549              :       return 1;
     550              : 
     551          295 :     case E_V2DFmode:
     552          295 :       if (!nonimmediate_operand (operands[1], E_V2DFmode))
     553              :         return -1;
     554              :       return 2;
     555              : 
     556              :     default:
     557              :       return -1;
     558              :     }
     559              : }
     560              : 
     561              : int
     562         6610 : pattern136 (rtx x1, machine_mode i1, machine_mode i2)
     563              : {
     564         6610 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
     565         6610 :   rtx x2;
     566         6610 :   int res ATTRIBUTE_UNUSED;
     567         6610 :   if (!register_operand (operands[0], i1)
     568         6610 :       || GET_MODE (x1) != i1)
     569              :     return -1;
     570         6342 :   x2 = XEXP (x1, 0);
     571         6342 :   if (GET_MODE (x2) != i1
     572         6342 :       || !register_operand (operands[1], i1)
     573         6178 :       || !nonimmediate_operand (operands[2], i1)
     574         6178 :       || !nonimm_or_0_operand (operands[3], i1)
     575        12402 :       || !register_operand (operands[4], i2))
     576          442 :     return -1;
     577              :   return 0;
     578              : }
     579              : 
     580              : int
     581         5520 : pattern147 (rtx x1)
     582              : {
     583         5520 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
     584         5520 :   rtx x2, x3, x4, x5, x6;
     585         5520 :   int res ATTRIBUTE_UNUSED;
     586         5520 :   x2 = XEXP (x1, 0);
     587         5520 :   x3 = XEXP (x2, 0);
     588         5520 :   operands[1] = x3;
     589         5520 :   x4 = XEXP (x2, 1);
     590         5520 :   operands[2] = x4;
     591         5520 :   x5 = XEXP (x1, 1);
     592         5520 :   operands[3] = x5;
     593         5520 :   x6 = XEXP (x1, 2);
     594         5520 :   operands[4] = x6;
     595         5520 :   switch (GET_MODE (operands[0]))
     596              :     {
     597         1072 :     case E_V64QImode:
     598         1072 :       return pattern133 (x1, 
     599              : E_V64QImode, 
     600         1072 : E_DImode); /* [-1, 0] */
     601              : 
     602          976 :     case E_V32QImode:
     603          976 :       if (pattern133 (x1, 
     604              : E_V32QImode, 
     605              : E_SImode) != 0)
     606              :         return -1;
     607              :       return 1;
     608              : 
     609          716 :     case E_V16QImode:
     610          716 :       if (pattern133 (x1, 
     611              : E_V16QImode, 
     612              : E_HImode) != 0)
     613              :         return -1;
     614              :       return 2;
     615              : 
     616         1069 :     case E_V32HImode:
     617         1069 :       if (pattern133 (x1, 
     618              : E_V32HImode, 
     619              : E_SImode) != 0)
     620              :         return -1;
     621              :       return 3;
     622              : 
     623          974 :     case E_V16HImode:
     624          974 :       if (pattern133 (x1, 
     625              : E_V16HImode, 
     626              : E_HImode) != 0)
     627              :         return -1;
     628              :       return 4;
     629              : 
     630          713 :     case E_V8HImode:
     631          713 :       if (pattern133 (x1, 
     632              : E_V8HImode, 
     633              : E_QImode) != 0)
     634              :         return -1;
     635              :       return 5;
     636              : 
     637              :     default:
     638              :       return -1;
     639              :     }
     640              : }
     641              : 
     642              : int
     643         3710 : pattern155 (rtx x1, machine_mode i1, machine_mode i2, machine_mode i3)
     644              : {
     645         3710 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
     646         3710 :   rtx x2;
     647         3710 :   int res ATTRIBUTE_UNUSED;
     648         3710 :   if (!register_operand (operands[0], i1)
     649         3710 :       || GET_MODE (x1) != i1)
     650              :     return -1;
     651         3595 :   x2 = XEXP (x1, 0);
     652         3595 :   if (GET_MODE (x2) != i1
     653         3595 :       || !nonimmediate_operand (operands[1], i2)
     654         3593 :       || !nonimm_or_0_operand (operands[2], i1)
     655         7140 :       || !register_operand (operands[3], i3))
     656          167 :     return -1;
     657              :   return 0;
     658              : }
     659              : 
     660              : int
     661        95192 : pattern158 (rtx x1, machine_mode i1)
     662              : {
     663        95192 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
     664        95192 :   int res ATTRIBUTE_UNUSED;
     665        95192 :   if (!register_operand (operands[0], i1)
     666        93518 :       || GET_MODE (x1) != i1
     667        93518 :       || !register_operand (operands[1], i1)
     668       165834 :       || !vector_operand (operands[2], i1))
     669        27690 :     return -1;
     670              :   return 0;
     671              : }
     672              : 
     673              : int
     674          618 : pattern161 (rtx x1)
     675              : {
     676          618 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
     677          618 :   rtx x2, x3, x4, x5;
     678          618 :   int res ATTRIBUTE_UNUSED;
     679          618 :   x2 = XEXP (x1, 0);
     680          618 :   operands[0] = x2;
     681          618 :   x3 = XEXP (x1, 1);
     682          618 :   x4 = XVECEXP (x3, 0, 0);
     683          618 :   operands[1] = x4;
     684          618 :   x5 = XVECEXP (x3, 0, 1);
     685          618 :   operands[2] = x5;
     686          618 :   switch (GET_MODE (operands[0]))
     687              :     {
     688          152 :     case E_V32HFmode:
     689          152 :       return pattern160 (x3, 
     690          152 : E_V32HFmode); /* [-1, 0] */
     691              : 
     692          222 :     case E_V16HFmode:
     693          222 :       if (pattern160 (x3, 
     694              : E_V16HFmode) != 0)
     695              :         return -1;
     696              :       return 1;
     697              : 
     698          244 :     case E_V8HFmode:
     699          244 :       if (pattern160 (x3, 
     700              : E_V8HFmode) != 0)
     701              :         return -1;
     702              :       return 2;
     703              : 
     704              :     default:
     705              :       return -1;
     706              :     }
     707              : }
     708              : 
     709              : int
     710          536 : pattern167 (rtx x1)
     711              : {
     712          536 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
     713          536 :   rtx x2, x3, x4, x5;
     714          536 :   int res ATTRIBUTE_UNUSED;
     715          536 :   x2 = XEXP (x1, 0);
     716          536 :   operands[0] = x2;
     717          536 :   x3 = XEXP (x1, 1);
     718          536 :   x4 = XVECEXP (x3, 0, 0);
     719          536 :   operands[1] = x4;
     720          536 :   x5 = XVECEXP (x3, 0, 1);
     721          536 :   operands[2] = x5;
     722          536 :   switch (GET_MODE (operands[0]))
     723              :     {
     724          170 :     case E_V16SImode:
     725          170 :       return pattern158 (x3, 
     726          170 : E_V16SImode); /* [-1, 0] */
     727              : 
     728          184 :     case E_V8SImode:
     729          184 :       if (pattern158 (x3, 
     730              : E_V8SImode) != 0)
     731              :         return -1;
     732              :       return 1;
     733              : 
     734          182 :     case E_V4SImode:
     735          182 :       if (pattern158 (x3, 
     736              : E_V4SImode) != 0)
     737              :         return -1;
     738              :       return 2;
     739              : 
     740              :     default:
     741              :       return -1;
     742              :     }
     743              : }
     744              : 
     745              : int
     746           18 : pattern175 (rtx x1)
     747              : {
     748           18 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
     749           18 :   rtx x2, x3, x4, x5, x6;
     750           18 :   int res ATTRIBUTE_UNUSED;
     751           18 :   x2 = XEXP (x1, 0);
     752           18 :   operands[0] = x2;
     753           18 :   x3 = XEXP (x1, 1);
     754           18 :   x4 = XVECEXP (x3, 0, 0);
     755           18 :   operands[1] = x4;
     756           18 :   x5 = XVECEXP (x3, 0, 1);
     757           18 :   operands[2] = x5;
     758           18 :   x6 = XVECEXP (x3, 0, 2);
     759           18 :   operands[3] = x6;
     760           18 :   switch (GET_MODE (operands[0]))
     761              :     {
     762            6 :     case E_V16SFmode:
     763            6 :       return pattern174 (x3, 
     764            6 : E_V16SFmode); /* [-1, 0] */
     765              : 
     766            6 :     case E_V8SFmode:
     767            6 :       if (pattern174 (x3, 
     768              : E_V8SFmode) != 0)
     769              :         return -1;
     770              :       return 1;
     771              : 
     772            6 :     case E_V4SFmode:
     773            6 :       if (pattern174 (x3, 
     774              : E_V4SFmode) != 0)
     775              :         return -1;
     776              :       return 2;
     777              : 
     778              :     default:
     779              :       return -1;
     780              :     }
     781              : }
     782              : 
     783              : int
     784          280 : pattern185 (rtx x1)
     785              : {
     786          280 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
     787          280 :   rtx x2, x3, x4, x5, x6;
     788          280 :   int res ATTRIBUTE_UNUSED;
     789          280 :   x2 = XEXP (x1, 0);
     790          280 :   operands[0] = x2;
     791          280 :   x3 = XEXP (x1, 1);
     792          280 :   x4 = XVECEXP (x3, 0, 0);
     793          280 :   operands[1] = x4;
     794          280 :   x5 = XVECEXP (x3, 0, 1);
     795          280 :   operands[2] = x5;
     796          280 :   x6 = XVECEXP (x3, 0, 2);
     797          280 :   operands[3] = x6;
     798          280 :   switch (GET_MODE (operands[0]))
     799              :     {
     800          140 :     case E_V32HImode:
     801          140 :       return pattern178 (x3, 
     802          140 : E_V32HImode); /* [-1, 0] */
     803              : 
     804          140 :     case E_V16HImode:
     805          140 :       if (pattern178 (x3, 
     806              : E_V16HImode) != 0)
     807              :         return -1;
     808              :       return 1;
     809              : 
     810              :     default:
     811              :       return -1;
     812              :     }
     813              : }
     814              : 
     815              : int
     816      7077388 : pattern191 (rtx x1)
     817              : {
     818      7077388 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
     819      7077388 :   rtx x2, x3;
     820      7077388 :   int res ATTRIBUTE_UNUSED;
     821      7077388 :   x2 = XEXP (x1, 0);
     822      7077388 :   operands[1] = x2;
     823      7077388 :   x3 = XEXP (x1, 1);
     824      7077388 :   operands[2] = x3;
     825      7077388 :   switch (GET_CODE (operands[2]))
     826              :     {
     827      2809833 :     case REG:
     828      2809833 :     case SUBREG:
     829      2809833 :     case MEM:
     830      2809833 :     case VEC_DUPLICATE:
     831      2809833 :       switch (GET_MODE (operands[0]))
     832              :         {
     833          797 :         case E_V32HFmode:
     834          797 :           return pattern189 (x1, 
     835          797 : E_V32HFmode); /* [-1, 0] */
     836              : 
     837          886 :         case E_V16HFmode:
     838          886 :           if (pattern189 (x1, 
     839              : E_V16HFmode) != 0)
     840              :             return -1;
     841              :           return 1;
     842              : 
     843         1860 :         case E_V8HFmode:
     844         1860 :           if (pattern189 (x1, 
     845              : E_V8HFmode) != 0)
     846              :             return -1;
     847              :           return 2;
     848              : 
     849          664 :         case E_V16SFmode:
     850          664 :           if (pattern189 (x1, 
     851              : E_V16SFmode) != 0)
     852              :             return -1;
     853              :           return 3;
     854              : 
     855        37078 :         case E_V8SFmode:
     856        37078 :           if (pattern189 (x1, 
     857              : E_V8SFmode) != 0)
     858              :             return -1;
     859              :           return 4;
     860              : 
     861       290286 :         case E_V4SFmode:
     862       290286 :           if (pattern189 (x1, 
     863              : E_V4SFmode) != 0)
     864              :             return -1;
     865              :           return 5;
     866              : 
     867         1364 :         case E_V8DFmode:
     868         1364 :           if (pattern189 (x1, 
     869              : E_V8DFmode) != 0)
     870              :             return -1;
     871              :           return 6;
     872              : 
     873        56880 :         case E_V4DFmode:
     874        56880 :           if (pattern189 (x1, 
     875              : E_V4DFmode) != 0)
     876              :             return -1;
     877              :           return 7;
     878              : 
     879       216569 :         case E_V2DFmode:
     880       216569 :           if (pattern189 (x1, 
     881              : E_V2DFmode) != 0)
     882              :             return -1;
     883              :           return 8;
     884              : 
     885          893 :         case E_V64QImode:
     886          893 :           if (pattern189 (x1, 
     887              : E_V64QImode) != 0)
     888              :             return -1;
     889              :           return 9;
     890              : 
     891         3000 :         case E_V32QImode:
     892         3000 :           if (pattern189 (x1, 
     893              : E_V32QImode) != 0)
     894              :             return -1;
     895              :           return 10;
     896              : 
     897        59158 :         case E_V16QImode:
     898        59158 :           if (pattern189 (x1, 
     899              : E_V16QImode) != 0)
     900              :             return -1;
     901              :           return 11;
     902              : 
     903         1040 :         case E_V32HImode:
     904         1040 :           if (pattern189 (x1, 
     905              : E_V32HImode) != 0)
     906              :             return -1;
     907              :           return 12;
     908              : 
     909         9256 :         case E_V16HImode:
     910         9256 :           if (pattern189 (x1, 
     911              : E_V16HImode) != 0)
     912              :             return -1;
     913              :           return 13;
     914              : 
     915       113659 :         case E_V8HImode:
     916       113659 :           if (pattern189 (x1, 
     917              : E_V8HImode) != 0)
     918              :             return -1;
     919              :           return 14;
     920              : 
     921        11917 :         case E_V16SImode:
     922        11917 :           if (pattern189 (x1, 
     923              : E_V16SImode) != 0)
     924              :             return -1;
     925              :           return 15;
     926              : 
     927        26804 :         case E_V8SImode:
     928        26804 :           if (pattern189 (x1, 
     929              : E_V8SImode) != 0)
     930              :             return -1;
     931              :           return 16;
     932              : 
     933       767690 :         case E_V4SImode:
     934       767690 :           if (pattern189 (x1, 
     935              : E_V4SImode) != 0)
     936              :             return -1;
     937              :           return 17;
     938              : 
     939         5614 :         case E_V8DImode:
     940         5614 :           if (pattern189 (x1, 
     941              : E_V8DImode) != 0)
     942              :             return -1;
     943              :           return 18;
     944              : 
     945        11570 :         case E_V4DImode:
     946        11570 :           if (pattern189 (x1, 
     947              : E_V4DImode) != 0)
     948              :             return -1;
     949              :           return 19;
     950              : 
     951       221820 :         case E_V2DImode:
     952       221820 :           if (pattern189 (x1, 
     953              : E_V2DImode) != 0)
     954              :             return -1;
     955              :           return 20;
     956              : 
     957          206 :         case E_V32BFmode:
     958          206 :           if (pattern12 (x1, 
     959              : E_V32BFmode) != 0)
     960              :             return -1;
     961              :           return 21;
     962              : 
     963          206 :         case E_V16BFmode:
     964          206 :           if (pattern12 (x1, 
     965              : E_V16BFmode) != 0)
     966              :             return -1;
     967              :           return 22;
     968              : 
     969          230 :         case E_V8BFmode:
     970          230 :           if (pattern12 (x1, 
     971              : E_V8BFmode) != 0)
     972              :             return -1;
     973              :           return 23;
     974              : 
     975              :         default:
     976              :           return -1;
     977              :         }
     978              : 
     979      3625274 :     case CONST_INT:
     980      3625274 :     case CONST_DOUBLE:
     981      3625274 :     case CONST_VECTOR:
     982      3625274 :       switch (GET_MODE (operands[0]))
     983              :         {
     984           25 :         case E_V64QImode:
     985           25 :           if (pattern190 (x1, 
     986              : E_V64QImode) != 0)
     987              :             return -1;
     988              :           return 24;
     989              : 
     990          195 :         case E_V32QImode:
     991          195 :           if (pattern190 (x1, 
     992              : E_V32QImode) != 0)
     993              :             return -1;
     994              :           return 25;
     995              : 
     996         5121 :         case E_V16QImode:
     997         5121 :           if (pattern190 (x1, 
     998              : E_V16QImode) != 0)
     999              :             return -1;
    1000              :           return 26;
    1001              : 
    1002           28 :         case E_V32HImode:
    1003           28 :           if (pattern190 (x1, 
    1004              : E_V32HImode) != 0)
    1005              :             return -1;
    1006              :           return 27;
    1007              : 
    1008          295 :         case E_V16HImode:
    1009          295 :           if (pattern190 (x1, 
    1010              : E_V16HImode) != 0)
    1011              :             return -1;
    1012              :           return 28;
    1013              : 
    1014         2271 :         case E_V8HImode:
    1015         2271 :           if (pattern190 (x1, 
    1016              : E_V8HImode) != 0)
    1017              :             return -1;
    1018              :           return 29;
    1019              : 
    1020          738 :         case E_V16SImode:
    1021          738 :           if (pattern190 (x1, 
    1022              : E_V16SImode) != 0)
    1023              :             return -1;
    1024              :           return 30;
    1025              : 
    1026         1338 :         case E_V8SImode:
    1027         1338 :           if (pattern190 (x1, 
    1028              : E_V8SImode) != 0)
    1029              :             return -1;
    1030              :           return 31;
    1031              : 
    1032        45942 :         case E_V4SImode:
    1033        45942 :           if (pattern190 (x1, 
    1034              : E_V4SImode) != 0)
    1035              :             return -1;
    1036              :           return 32;
    1037              : 
    1038           48 :         case E_V8DImode:
    1039           48 :           if (pattern190 (x1, 
    1040              : E_V8DImode) != 0)
    1041              :             return -1;
    1042              :           return 33;
    1043              : 
    1044          352 :         case E_V4DImode:
    1045          352 :           if (pattern190 (x1, 
    1046              : E_V4DImode) != 0)
    1047              :             return -1;
    1048              :           return 34;
    1049              : 
    1050         8791 :         case E_V2DImode:
    1051         8791 :           if (pattern190 (x1, 
    1052              : E_V2DImode) != 0)
    1053              :             return -1;
    1054              :           return 35;
    1055              : 
    1056              :         default:
    1057              :           return -1;
    1058              :         }
    1059              : 
    1060              :     default:
    1061              :       return -1;
    1062              :     }
    1063              : }
    1064              : 
    1065              : int
    1066       944687 : pattern225 (rtx x1)
    1067              : {
    1068       944687 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1069       944687 :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
    1070       944687 :   rtx x10, x11;
    1071       944687 :   int res ATTRIBUTE_UNUSED;
    1072       944687 :   x2 = XVECEXP (x1, 0, 1);
    1073       944687 :   if (GET_CODE (x2) != SET)
    1074              :     return -1;
    1075       944308 :   x3 = XEXP (x2, 1);
    1076       944308 :   if (GET_CODE (x3) != MOD)
    1077              :     return -1;
    1078       920519 :   x4 = XVECEXP (x1, 0, 0);
    1079       920519 :   x5 = XEXP (x4, 0);
    1080       920519 :   operands[0] = x5;
    1081       920519 :   x6 = XEXP (x4, 1);
    1082       920519 :   x7 = XEXP (x6, 0);
    1083       920519 :   operands[2] = x7;
    1084       920519 :   x8 = XEXP (x6, 1);
    1085       920519 :   operands[3] = x8;
    1086       920519 :   x9 = XEXP (x2, 0);
    1087       920519 :   operands[1] = x9;
    1088       920519 :   x10 = XEXP (x3, 0);
    1089       920519 :   if (!rtx_equal_p (x10, operands[2]))
    1090              :     return -1;
    1091       888201 :   x11 = XEXP (x3, 1);
    1092       888201 :   if (!rtx_equal_p (x11, operands[3]))
    1093              :     return -1;
    1094       860413 :   switch (GET_CODE (operands[2]))
    1095              :     {
    1096              :     case REG:
    1097              :     case SUBREG:
    1098              :       return 0;
    1099              : 
    1100        32875 :     case CONST_INT:
    1101        32875 :       return 1;
    1102              : 
    1103              :     default:
    1104              :       return -1;
    1105              :     }
    1106              : }
    1107              : 
    1108              : int
    1109         1221 : pattern235 (rtx x1)
    1110              : {
    1111         1221 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1112         1221 :   rtx x2, x3, x4, x5, x6, x7, x8;
    1113         1221 :   int res ATTRIBUTE_UNUSED;
    1114         1221 :   x2 = XVECEXP (x1, 0, 1);
    1115         1221 :   if (GET_CODE (x2) != UNSPEC
    1116          739 :       || XVECLEN (x2, 0) != 1
    1117          739 :       || XINT (x2, 1) != 39)
    1118              :     return -1;
    1119          739 :   x3 = XVECEXP (x1, 0, 2);
    1120          739 :   if (GET_CODE (x3) != CLOBBER)
    1121              :     return -1;
    1122          739 :   x4 = XEXP (x3, 0);
    1123          739 :   if (GET_CODE (x4) != REG
    1124          739 :       || REGNO (x4) != 17
    1125         1478 :       || GET_MODE (x4) != E_CCmode)
    1126              :     return -1;
    1127          739 :   x5 = XVECEXP (x1, 0, 0);
    1128          739 :   x6 = XEXP (x5, 0);
    1129          739 :   operands[0] = x6;
    1130          739 :   x7 = XEXP (x5, 1);
    1131          739 :   x8 = XEXP (x7, 0);
    1132          739 :   operands[1] = x8;
    1133          739 :   return pattern234 (x1); /* [-1, 1] */
    1134              : }
    1135              : 
    1136              : int
    1137      3004515 : pattern248 (rtx x1)
    1138              : {
    1139      3004515 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1140      3004515 :   rtx x2, x3;
    1141      3004515 :   int res ATTRIBUTE_UNUSED;
    1142      3004515 :   if (GET_CODE (x1) != VEC_SELECT)
    1143              :     return -1;
    1144        32056 :   x2 = XEXP (x1, 0);
    1145        32056 :   if (GET_CODE (x2) != SUBREG
    1146        32056 :       || maybe_ne (SUBREG_BYTE (x2), 0))
    1147              :     return -1;
    1148         5142 :   x3 = XEXP (x1, 1);
    1149         5142 :   if (GET_CODE (x3) != PARALLEL)
    1150            0 :     return -1;
    1151              :   return 0;
    1152              : }
    1153              : 
    1154              : int
    1155       347068 : pattern252 (rtx x1)
    1156              : {
    1157       347068 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1158       347068 :   rtx x2, x3, x4, x5, x6, x7, x8;
    1159       347068 :   int res ATTRIBUTE_UNUSED;
    1160       347068 :   x2 = XVECEXP (x1, 0, 1);
    1161       347068 :   if (GET_CODE (x2) != CLOBBER)
    1162              :     return -1;
    1163       345940 :   x3 = XEXP (x2, 0);
    1164       345940 :   if (GET_CODE (x3) != REG
    1165       345940 :       || REGNO (x3) != 17
    1166       691880 :       || GET_MODE (x3) != E_CCmode)
    1167              :     return -1;
    1168       345940 :   x4 = XVECEXP (x1, 0, 0);
    1169       345940 :   x5 = XEXP (x4, 0);
    1170       345940 :   operands[0] = x5;
    1171       345940 :   x6 = XEXP (x4, 1);
    1172       345940 :   x7 = XEXP (x6, 0);
    1173       345940 :   operands[1] = x7;
    1174       345940 :   x8 = XEXP (x6, 1);
    1175       345940 :   operands[2] = x8;
    1176       345940 :   if (!nonmemory_operand (operands[2], E_QImode))
    1177              :     return -1;
    1178       345940 :   return pattern251 (x6); /* [-1, 1] */
    1179              : }
    1180              : 
    1181              : int
    1182        10730 : pattern263 (rtx x1, int *pnum_clobbers, machine_mode i1, machine_mode i2)
    1183              : {
    1184        10730 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1185        10730 :   int res ATTRIBUTE_UNUSED;
    1186        10730 :   if (pnum_clobbers == NULL
    1187        10730 :       || !nonimmediate_operand (operands[0], i2)
    1188        10730 :       || GET_MODE (x1) != i2
    1189        21460 :       || !register_operand (operands[1], i1))
    1190         5161 :     return -1;
    1191              :   return 0;
    1192              : }
    1193              : 
    1194              : int
    1195          743 : pattern269 (rtx x1)
    1196              : {
    1197          743 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1198          743 :   rtx x2, x3, x4;
    1199          743 :   int res ATTRIBUTE_UNUSED;
    1200          743 :   x2 = XEXP (x1, 1);
    1201          743 :   x3 = XEXP (x2, 0);
    1202          743 :   x4 = XEXP (x3, 1);
    1203          743 :   operands[3] = x4;
    1204          743 :   if (!const_int_operand (operands[3], E_VOIDmode))
    1205              :     return -1;
    1206          742 :   return pattern0 (x1); /* [-1, 1] */
    1207              : }
    1208              : 
    1209              : int
    1210            0 : pattern278 (rtx x1, machine_mode i1, machine_mode i2, int i3)
    1211              : {
    1212            0 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1213            0 :   rtx x2, x3, x4, x5, x6;
    1214            0 :   int res ATTRIBUTE_UNUSED;
    1215            0 :   x2 = XEXP (x1, 1);
    1216            0 :   x3 = XVECEXP (x2, 0, 0);
    1217            0 :   if (x3 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
    1218              :     return -1;
    1219            0 :   x4 = XVECEXP (x2, 0, 1);
    1220            0 :   if (x4 != const_int_rtx[MAX_SAVED_CONST_INT + i3]
    1221            0 :       || !register_operand (operands[0], i2)
    1222            0 :       || GET_MODE (x1) != i2)
    1223            0 :     return -1;
    1224            0 :   x5 = XEXP (x1, 0);
    1225            0 :   x6 = XEXP (x5, 0);
    1226            0 :   operands[1] = x6;
    1227            0 :   if (!nonimmediate_operand (operands[1], i1))
    1228              :     return -1;
    1229              :   return 0;
    1230              : }
    1231              : 
    1232              : int
    1233         1077 : pattern286 (rtx x1, machine_mode i1)
    1234              : {
    1235         1077 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1236         1077 :   rtx x2;
    1237         1077 :   int res ATTRIBUTE_UNUSED;
    1238         1077 :   if (!register_operand (operands[0], i1)
    1239         1077 :       || GET_MODE (x1) != i1)
    1240              :     return -1;
    1241         1030 :   x2 = XEXP (x1, 0);
    1242         1030 :   if (GET_MODE (x2) != i1
    1243         1030 :       || !register_operand (operands[3], i1))
    1244          109 :     return -1;
    1245              :   return 0;
    1246              : }
    1247              : 
    1248              : int
    1249          582 : pattern290 (rtx x1, machine_mode i1, machine_mode i2)
    1250              : {
    1251          582 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1252          582 :   rtx x2, x3, x4, x5, x6;
    1253          582 :   int res ATTRIBUTE_UNUSED;
    1254          582 :   if (GET_MODE (x1) != i1)
    1255              :     return -1;
    1256          582 :   x2 = XEXP (x1, 0);
    1257          582 :   if (GET_MODE (x2) != i1)
    1258              :     return -1;
    1259          582 :   x3 = XEXP (x1, 1);
    1260          582 :   if (GET_MODE (x3) != i1)
    1261              :     return -1;
    1262          582 :   x4 = XEXP (x3, 0);
    1263          582 :   if (GET_MODE (x4) != i2)
    1264              :     return -1;
    1265          582 :   x5 = XEXP (x4, 0);
    1266          582 :   if (GET_MODE (x5) != i2)
    1267              :     return -1;
    1268          582 :   x6 = XEXP (x5, 0);
    1269          582 :   if (!register_operand (x6, i1))
    1270              :     return -1;
    1271              :   return 0;
    1272              : }
    1273              : 
    1274              : int
    1275           17 : pattern299 (rtx x1)
    1276              : {
    1277           17 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1278           17 :   rtx x2;
    1279           17 :   int res ATTRIBUTE_UNUSED;
    1280           17 :   if (!memory_operand (operands[0], E_DImode)
    1281           17 :       || GET_MODE (x1) != E_DImode)
    1282              :     return -1;
    1283            9 :   x2 = XEXP (x1, 0);
    1284            9 :   switch (GET_MODE (x2))
    1285              :     {
    1286            6 :     case E_V8QImode:
    1287            6 :       return pattern106 (); /* [-1, 2] */
    1288              : 
    1289            3 :     case E_V4HImode:
    1290            3 :       switch (GET_MODE (operands[1]))
    1291              :         {
    1292            0 :         case E_V4SImode:
    1293            0 :           if (!register_operand (operands[1], E_V4SImode))
    1294              :             return -1;
    1295              :           return 3;
    1296              : 
    1297            3 :         case E_V4DImode:
    1298            3 :           if (!register_operand (operands[1], E_V4DImode))
    1299              :             return -1;
    1300              :           return 4;
    1301              : 
    1302              :         default:
    1303              :           return -1;
    1304              :         }
    1305              : 
    1306            0 :     case E_V2SImode:
    1307            0 :       if (!register_operand (operands[1], E_V2DImode))
    1308              :         return -1;
    1309              :       return 5;
    1310              : 
    1311              :     default:
    1312              :       return -1;
    1313              :     }
    1314              : }
    1315              : 
    1316              : int
    1317        21045 : pattern312 (rtx x1, int i1, machine_mode i2, machine_mode i3)
    1318              : {
    1319        21045 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1320        21045 :   rtx x2, x3, x4, x5;
    1321        21045 :   int res ATTRIBUTE_UNUSED;
    1322        21045 :   if (GET_MODE (x1) != i3)
    1323              :     return -1;
    1324          270 :   x2 = XEXP (x1, 0);
    1325          270 :   if (GET_CODE (x2) != VEC_SELECT
    1326          235 :       || GET_MODE (x2) != i2)
    1327              :     return -1;
    1328          235 :   x3 = XEXP (x2, 1);
    1329          235 :   if (GET_CODE (x3) != PARALLEL
    1330          235 :       || XVECLEN (x3, 0) != 2)
    1331              :     return -1;
    1332          235 :   x4 = XVECEXP (x3, 0, 0);
    1333          235 :   if (x4 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
    1334              :     return -1;
    1335          235 :   x5 = XVECEXP (x3, 0, 1);
    1336          235 :   if (x5 != const_int_rtx[MAX_SAVED_CONST_INT + i1])
    1337            8 :     return -1;
    1338              :   return 0;
    1339              : }
    1340              : 
    1341              : int
    1342         1510 : pattern319 (rtx x1, rtx_code i1)
    1343              : {
    1344         1510 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1345         1510 :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
    1346         1510 :   rtx x10, x11, x12, x13, x14, x15, x16, x17;
    1347         1510 :   rtx x18, x19, x20, x21, x22, x23, x24, x25;
    1348         1510 :   rtx x26, x27, x28;
    1349         1510 :   int res ATTRIBUTE_UNUSED;
    1350         1510 :   x2 = XEXP (x1, 0);
    1351         1510 :   x3 = XEXP (x2, 0);
    1352         1510 :   x4 = XEXP (x3, 0);
    1353         1510 :   if (GET_CODE (x4) != VEC_SELECT)
    1354              :     return -1;
    1355         1510 :   x5 = XEXP (x4, 1);
    1356         1510 :   if (GET_CODE (x5) != PARALLEL)
    1357              :     return -1;
    1358         1510 :   x6 = XEXP (x2, 1);
    1359         1510 :   if (GET_CODE (x6) != i1)
    1360              :     return -1;
    1361         1422 :   x7 = XEXP (x6, 0);
    1362         1422 :   if (GET_CODE (x7) != VEC_SELECT)
    1363              :     return -1;
    1364         1422 :   x8 = XEXP (x7, 1);
    1365         1422 :   if (GET_CODE (x8) != PARALLEL)
    1366              :     return -1;
    1367         1422 :   x9 = XEXP (x4, 0);
    1368         1422 :   operands[1] = x9;
    1369         1422 :   x10 = XEXP (x7, 0);
    1370         1422 :   operands[2] = x10;
    1371         1422 :   x11 = XEXP (x1, 1);
    1372         1422 :   operands[3] = x11;
    1373         1422 :   x12 = XEXP (x1, 2);
    1374         1422 :   operands[4] = x12;
    1375         1422 :   if (!register_operand (operands[4], E_QImode))
    1376              :     return -1;
    1377         1318 :   switch (XVECLEN (x5, 0))
    1378              :     {
    1379          492 :     case 8:
    1380          492 :       x13 = XVECEXP (x5, 0, 0);
    1381          492 :       if (x13 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
    1382              :         return -1;
    1383          492 :       x14 = XVECEXP (x5, 0, 1);
    1384          492 :       if (x14 != const_int_rtx[MAX_SAVED_CONST_INT + 2])
    1385              :         return -1;
    1386          492 :       x15 = XVECEXP (x5, 0, 2);
    1387          492 :       if (x15 != const_int_rtx[MAX_SAVED_CONST_INT + 4])
    1388              :         return -1;
    1389          492 :       x16 = XVECEXP (x5, 0, 3);
    1390          492 :       if (x16 != const_int_rtx[MAX_SAVED_CONST_INT + 6])
    1391              :         return -1;
    1392          492 :       x17 = XVECEXP (x5, 0, 4);
    1393          492 :       if (x17 != const_int_rtx[MAX_SAVED_CONST_INT + 8])
    1394              :         return -1;
    1395          492 :       x18 = XVECEXP (x5, 0, 5);
    1396          492 :       if (x18 != const_int_rtx[MAX_SAVED_CONST_INT + 10])
    1397              :         return -1;
    1398          492 :       x19 = XVECEXP (x5, 0, 6);
    1399          492 :       if (x19 != const_int_rtx[MAX_SAVED_CONST_INT + 12])
    1400              :         return -1;
    1401          492 :       x20 = XVECEXP (x5, 0, 7);
    1402          492 :       if (x20 != const_int_rtx[MAX_SAVED_CONST_INT + 14]
    1403          492 :           || XVECLEN (x8, 0) != 8)
    1404              :         return -1;
    1405          492 :       x21 = XVECEXP (x8, 0, 0);
    1406          492 :       if (x21 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
    1407              :         return -1;
    1408          492 :       x22 = XVECEXP (x8, 0, 1);
    1409          492 :       if (x22 != const_int_rtx[MAX_SAVED_CONST_INT + 2])
    1410              :         return -1;
    1411          492 :       x23 = XVECEXP (x8, 0, 2);
    1412          492 :       if (x23 != const_int_rtx[MAX_SAVED_CONST_INT + 4])
    1413              :         return -1;
    1414          492 :       x24 = XVECEXP (x8, 0, 3);
    1415          492 :       if (x24 != const_int_rtx[MAX_SAVED_CONST_INT + 6])
    1416              :         return -1;
    1417          492 :       x25 = XVECEXP (x8, 0, 4);
    1418          492 :       if (x25 != const_int_rtx[MAX_SAVED_CONST_INT + 8])
    1419              :         return -1;
    1420          492 :       x26 = XVECEXP (x8, 0, 5);
    1421          492 :       if (x26 != const_int_rtx[MAX_SAVED_CONST_INT + 10])
    1422              :         return -1;
    1423          492 :       x27 = XVECEXP (x8, 0, 6);
    1424          492 :       if (x27 != const_int_rtx[MAX_SAVED_CONST_INT + 12])
    1425              :         return -1;
    1426          492 :       x28 = XVECEXP (x8, 0, 7);
    1427          492 :       if (x28 != const_int_rtx[MAX_SAVED_CONST_INT + 14]
    1428          492 :           || pattern318 (x1, 
    1429              : E_V8DImode, 
    1430              : E_V16SImode, 
    1431              : E_V8SImode) != 0)
    1432           68 :         return -1;
    1433              :       return 0;
    1434              : 
    1435          450 :     case 4:
    1436          450 :       x13 = XVECEXP (x5, 0, 0);
    1437          450 :       if (x13 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
    1438              :         return -1;
    1439          450 :       x14 = XVECEXP (x5, 0, 1);
    1440          450 :       if (x14 != const_int_rtx[MAX_SAVED_CONST_INT + 2])
    1441              :         return -1;
    1442          450 :       x15 = XVECEXP (x5, 0, 2);
    1443          450 :       if (x15 != const_int_rtx[MAX_SAVED_CONST_INT + 4])
    1444              :         return -1;
    1445          450 :       x16 = XVECEXP (x5, 0, 3);
    1446          450 :       if (x16 != const_int_rtx[MAX_SAVED_CONST_INT + 6]
    1447          450 :           || XVECLEN (x8, 0) != 4)
    1448              :         return -1;
    1449          450 :       x21 = XVECEXP (x8, 0, 0);
    1450          450 :       if (x21 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
    1451              :         return -1;
    1452          450 :       x22 = XVECEXP (x8, 0, 1);
    1453          450 :       if (x22 != const_int_rtx[MAX_SAVED_CONST_INT + 2])
    1454              :         return -1;
    1455          450 :       x23 = XVECEXP (x8, 0, 2);
    1456          450 :       if (x23 != const_int_rtx[MAX_SAVED_CONST_INT + 4])
    1457              :         return -1;
    1458          450 :       x24 = XVECEXP (x8, 0, 3);
    1459          450 :       if (x24 != const_int_rtx[MAX_SAVED_CONST_INT + 6]
    1460          450 :           || pattern318 (x1, 
    1461              : E_V4DImode, 
    1462              : E_V8SImode, 
    1463              : E_V4SImode) != 0)
    1464           68 :         return -1;
    1465              :       return 1;
    1466              : 
    1467          376 :     case 2:
    1468          376 :       x13 = XVECEXP (x5, 0, 0);
    1469          376 :       if (x13 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
    1470              :         return -1;
    1471          376 :       x14 = XVECEXP (x5, 0, 1);
    1472          376 :       if (x14 != const_int_rtx[MAX_SAVED_CONST_INT + 2]
    1473          376 :           || XVECLEN (x8, 0) != 2)
    1474              :         return -1;
    1475          376 :       x21 = XVECEXP (x8, 0, 0);
    1476          376 :       if (x21 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
    1477              :         return -1;
    1478          376 :       x22 = XVECEXP (x8, 0, 1);
    1479          376 :       if (x22 != const_int_rtx[MAX_SAVED_CONST_INT + 2]
    1480          376 :           || !register_operand (operands[0], E_V2DImode)
    1481          364 :           || GET_MODE (x1) != E_V2DImode
    1482          364 :           || GET_MODE (x2) != E_V2DImode
    1483          364 :           || GET_MODE (x3) != E_V2DImode
    1484          364 :           || GET_MODE (x4) != E_V2SImode
    1485          364 :           || !vector_operand (operands[1], E_V4SImode)
    1486          364 :           || GET_MODE (x6) != E_V2DImode
    1487          364 :           || GET_MODE (x7) != E_V2SImode
    1488          364 :           || !vector_operand (operands[2], E_V4SImode)
    1489          740 :           || !nonimm_or_0_operand (operands[3], E_V2DImode))
    1490           14 :         return -1;
    1491              :       return 2;
    1492              : 
    1493              :     default:
    1494              :       return -1;
    1495              :     }
    1496              : }
    1497              : 
    1498              : int
    1499         6350 : pattern355 (rtx x1)
    1500              : {
    1501         6350 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1502         6350 :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
    1503         6350 :   int res ATTRIBUTE_UNUSED;
    1504         6350 :   x2 = XVECEXP (x1, 0, 1);
    1505         6350 :   if (GET_CODE (x2) != CLOBBER)
    1506              :     return -1;
    1507         5746 :   x3 = XEXP (x2, 0);
    1508         5746 :   if (GET_CODE (x3) != REG
    1509         5746 :       || REGNO (x3) != 17
    1510        11492 :       || GET_MODE (x3) != E_CCmode)
    1511              :     return -1;
    1512         5746 :   x4 = XVECEXP (x1, 0, 0);
    1513         5746 :   x5 = XEXP (x4, 0);
    1514         5746 :   operands[0] = x5;
    1515         5746 :   x6 = XEXP (x4, 1);
    1516         5746 :   x7 = XEXP (x6, 0);
    1517         5746 :   x8 = XEXP (x7, 0);
    1518         5746 :   operands[1] = x8;
    1519         5746 :   x9 = XEXP (x7, 1);
    1520         5746 :   operands[2] = x9;
    1521         5746 :   return pattern354 (x6); /* [-1, 5] */
    1522              : }
    1523              : 
    1524              : int
    1525         8894 : pattern362 (rtx x1)
    1526              : {
    1527         8894 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1528         8894 :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
    1529         8894 :   rtx x10;
    1530         8894 :   int res ATTRIBUTE_UNUSED;
    1531         8894 :   x2 = XVECEXP (x1, 0, 0);
    1532         8894 :   x3 = XEXP (x2, 1);
    1533         8894 :   x4 = XEXP (x3, 0);
    1534         8894 :   operands[2] = x4;
    1535         8894 :   x5 = XEXP (x4, 0);
    1536         8894 :   if (GET_CODE (x5) != REG
    1537         8894 :       || REGNO (x5) != 17)
    1538              :     return -1;
    1539         3944 :   x6 = XEXP (x4, 1);
    1540         3944 :   if (x6 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
    1541              :     return -1;
    1542         3944 :   x7 = XVECEXP (x1, 0, 1);
    1543         3944 :   if (GET_CODE (x7) != CLOBBER)
    1544              :     return -1;
    1545         3808 :   x8 = XEXP (x7, 0);
    1546         3808 :   if (GET_CODE (x8) != REG
    1547         3808 :       || REGNO (x8) != 17
    1548         7616 :       || GET_MODE (x8) != E_CCmode)
    1549              :     return -1;
    1550         3808 :   x9 = XEXP (x2, 0);
    1551         3808 :   operands[0] = x9;
    1552         3808 :   x10 = XEXP (x3, 1);
    1553         3808 :   operands[1] = x10;
    1554         3808 :   switch (GET_MODE (operands[0]))
    1555              :     {
    1556              :     case E_QImode:
    1557              :       return 0;
    1558              : 
    1559              :     case E_HImode:
    1560              :       return 1;
    1561              : 
    1562              :     case E_SImode:
    1563              :       return 2;
    1564              : 
    1565              :     case E_DImode:
    1566              :       return 3;
    1567              : 
    1568              :     default:
    1569              :       return -1;
    1570              :     }
    1571              : }
    1572              : 
    1573              : int
    1574         4384 : pattern369 (rtx x1, rtx_code i1)
    1575              : {
    1576         4384 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1577         4384 :   rtx x2, x3, x4, x5, x6, x7, x8;
    1578         4384 :   int res ATTRIBUTE_UNUSED;
    1579         4384 :   x2 = XVECEXP (x1, 0, 0);
    1580         4384 :   x3 = XEXP (x2, 1);
    1581         4384 :   x4 = XEXP (x3, 0);
    1582         4384 :   x5 = XEXP (x4, 0);
    1583         4384 :   if (XVECLEN (x5, 0) != 2
    1584         4384 :       || XINT (x5, 1) != 110)
    1585              :     return -1;
    1586         4384 :   x6 = XEXP (x2, 0);
    1587         4384 :   if (GET_CODE (x6) != REG
    1588         4384 :       || REGNO (x6) != 17
    1589         8768 :       || GET_MODE (x6) != E_CCNOmode)
    1590              :     return -1;
    1591         3968 :   x7 = XVECEXP (x1, 0, 1);
    1592         3968 :   if (GET_CODE (x7) != SET)
    1593              :     return -1;
    1594         3968 :   x8 = XEXP (x7, 1);
    1595         3968 :   if (GET_CODE (x8) != i1)
    1596              :     return -1;
    1597         3968 :   return pattern368 (x1, 
    1598         3968 : E_CCNOmode); /* [-1, 3] */
    1599              : }
    1600              : 
    1601              : int
    1602         1090 : pattern375 (rtx x1)
    1603              : {
    1604         1090 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1605         1090 :   rtx x2, x3, x4, x5, x6;
    1606         1090 :   int res ATTRIBUTE_UNUSED;
    1607         1090 :   x2 = XEXP (x1, 0);
    1608         1090 :   x3 = XEXP (x2, 1);
    1609         1090 :   switch (GET_CODE (x3))
    1610              :     {
    1611              :     case REG:
    1612              :     case SUBREG:
    1613              :       return 0;
    1614              : 
    1615            3 :     case AND:
    1616            3 :       if (GET_MODE (x3) != E_QImode)
    1617              :         return -1;
    1618            3 :       x4 = XEXP (x3, 0);
    1619            3 :       operands[1] = x4;
    1620            3 :       if (!register_operand (operands[1], E_QImode))
    1621              :         return -1;
    1622            3 :       x5 = XEXP (x3, 1);
    1623            3 :       operands[2] = x5;
    1624            3 :       if (!const_int_operand (operands[2], E_QImode))
    1625              :         return -1;
    1626            3 :       x6 = XEXP (x1, 1);
    1627            3 :       operands[3] = x6;
    1628            3 :       switch (GET_MODE (operands[0]))
    1629              :         {
    1630            3 :         case E_SImode:
    1631            3 :           if (pattern374 (x1, 
    1632              : E_SImode) != 0)
    1633              :             return -1;
    1634              :           return 1;
    1635              : 
    1636            0 :         case E_DImode:
    1637            0 :           if (pattern374 (x1, 
    1638              : E_DImode) != 0)
    1639              :             return -1;
    1640              :           return 2;
    1641              : 
    1642              :         default:
    1643              :           return -1;
    1644              :         }
    1645              : 
    1646              :     default:
    1647              :       return -1;
    1648              :     }
    1649              : }
    1650              : 
    1651              : int
    1652           90 : pattern388 (rtx x1)
    1653              : {
    1654           90 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1655           90 :   rtx x2, x3, x4, x5, x6;
    1656           90 :   int res ATTRIBUTE_UNUSED;
    1657           90 :   x2 = XVECEXP (x1, 0, 1);
    1658           90 :   if (GET_CODE (x2) != SET)
    1659              :     return -1;
    1660           90 :   x3 = XEXP (x2, 1);
    1661           90 :   if (GET_CODE (x3) != PLUS
    1662           90 :       || GET_MODE (x3) != E_SImode)
    1663              :     return -1;
    1664           90 :   x4 = XEXP (x3, 0);
    1665           90 :   if (GET_CODE (x4) != REG
    1666           90 :       || REGNO (x4) != 7
    1667          180 :       || GET_MODE (x4) != E_SImode)
    1668              :     return -1;
    1669           90 :   x5 = XEXP (x2, 0);
    1670           90 :   if (GET_CODE (x5) != REG
    1671           90 :       || REGNO (x5) != 7
    1672          180 :       || GET_MODE (x5) != E_SImode)
    1673              :     return -1;
    1674           90 :   x6 = XVECEXP (x1, 0, 2);
    1675           90 :   return pattern387 (x6, 
    1676           90 : 38); /* [-1, 0] */
    1677              : }
    1678              : 
    1679              : int
    1680           48 : pattern398 (rtx x1)
    1681              : {
    1682           48 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1683           48 :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
    1684           48 :   rtx x10, x11, x12, x13, x14, x15, x16, x17;
    1685           48 :   int res ATTRIBUTE_UNUSED;
    1686           48 :   x2 = XVECEXP (x1, 0, 0);
    1687           48 :   x3 = XEXP (x2, 1);
    1688           48 :   if (GET_MODE (x3) != E_SImode)
    1689              :     return -1;
    1690           48 :   x4 = XEXP (x3, 0);
    1691           48 :   if (GET_CODE (x4) != UNSPEC
    1692           48 :       || XVECLEN (x4, 0) != 3
    1693           48 :       || XINT (x4, 1) != 22
    1694           48 :       || GET_MODE (x4) != E_SImode)
    1695              :     return -1;
    1696           48 :   x5 = XVECEXP (x4, 0, 2);
    1697           48 :   if (GET_CODE (x5) != REG
    1698           48 :       || REGNO (x5) != 7
    1699           96 :       || GET_MODE (x5) != E_SImode)
    1700              :     return -1;
    1701           48 :   x6 = XEXP (x3, 1);
    1702           48 :   if (GET_CODE (x6) != CONST
    1703           48 :       || GET_MODE (x6) != E_SImode)
    1704              :     return -1;
    1705           48 :   x7 = XEXP (x6, 0);
    1706           48 :   if (GET_CODE (x7) != UNSPEC
    1707           48 :       || XVECLEN (x7, 0) != 1
    1708           48 :       || XINT (x7, 1) != 6
    1709           48 :       || GET_MODE (x7) != E_SImode)
    1710              :     return -1;
    1711           48 :   x8 = XVECEXP (x1, 0, 1);
    1712           48 :   if (GET_CODE (x8) != CLOBBER)
    1713              :     return -1;
    1714           48 :   x9 = XVECEXP (x1, 0, 2);
    1715           48 :   if (GET_CODE (x9) != CLOBBER)
    1716              :     return -1;
    1717           48 :   x10 = XVECEXP (x1, 0, 3);
    1718           48 :   x11 = XEXP (x10, 0);
    1719           48 :   if (GET_CODE (x11) != REG
    1720           48 :       || REGNO (x11) != 17
    1721           96 :       || GET_MODE (x11) != E_CCmode)
    1722              :     return -1;
    1723           48 :   x12 = XEXP (x2, 0);
    1724           48 :   operands[0] = x12;
    1725           48 :   if (!register_operand (operands[0], E_SImode))
    1726              :     return -1;
    1727           48 :   x13 = XVECEXP (x4, 0, 0);
    1728           48 :   operands[1] = x13;
    1729           48 :   if (!register_operand (operands[1], E_SImode))
    1730              :     return -1;
    1731           48 :   x14 = XVECEXP (x4, 0, 1);
    1732           48 :   operands[2] = x14;
    1733           48 :   if (!constant_call_address_operand (operands[2], E_VOIDmode))
    1734              :     return -1;
    1735           48 :   x15 = XVECEXP (x7, 0, 0);
    1736           48 :   operands[3] = x15;
    1737           48 :   if (!tls_symbolic_operand (operands[3], E_VOIDmode))
    1738              :     return -1;
    1739           48 :   x16 = XEXP (x8, 0);
    1740           48 :   operands[4] = x16;
    1741           48 :   if (!scratch_operand (operands[4], E_SImode))
    1742              :     return -1;
    1743           48 :   x17 = XEXP (x9, 0);
    1744           48 :   operands[5] = x17;
    1745           48 :   if (!scratch_operand (operands[5], E_SImode))
    1746              :     return -1;
    1747              :   return 0;
    1748              : }
    1749              : 
    1750              : int
    1751     23068645 : pattern420 (rtx x1, machine_mode i1)
    1752              : {
    1753     23068645 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1754     23068645 :   rtx x2, x3, x4, x5, x6, x7;
    1755     23068645 :   int res ATTRIBUTE_UNUSED;
    1756     23068645 :   if (!memory_operand (operands[3], i1))
    1757              :     return -1;
    1758      4754937 :   operands[0] = x1;
    1759      4754937 :   if (!general_reg_operand (operands[0], i1))
    1760              :     return -1;
    1761      3210617 :   x2 = PATTERN (peep2_next_insn (1));
    1762      3210617 :   if (GET_CODE (x2) != SET)
    1763              :     return -1;
    1764      2899668 :   x3 = XEXP (x2, 1);
    1765      2899668 :   if (x3 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
    1766              :     return -1;
    1767       129307 :   x4 = XEXP (x2, 0);
    1768       129307 :   operands[1] = x4;
    1769       129307 :   if (!memory_operand (operands[1], i1))
    1770              :     return -1;
    1771        56451 :   x5 = PATTERN (peep2_next_insn (2));
    1772        56451 :   if (GET_CODE (x5) != SET)
    1773              :     return -1;
    1774        53902 :   x6 = XEXP (x5, 1);
    1775        53902 :   if (x6 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
    1776              :     return -1;
    1777        19807 :   x7 = XEXP (x5, 0);
    1778        19807 :   operands[2] = x7;
    1779        19807 :   if (!memory_operand (operands[2], i1))
    1780              :     return -1;
    1781              :   return 0;
    1782              : }
    1783              : 
    1784              : int
    1785       909316 : pattern431 (rtx x1, machine_mode i1)
    1786              : {
    1787       909316 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1788       909316 :   int res ATTRIBUTE_UNUSED;
    1789       909316 :   if (!register_operand (operands[0], i1)
    1790       909316 :       || GET_MODE (x1) != i1)
    1791              :     return -1;
    1792       874955 :   switch (GET_MODE (operands[1]))
    1793              :     {
    1794        10947 :     case E_HImode:
    1795        10947 :       if (!nonimmediate_operand (operands[1], E_HImode))
    1796              :         return -1;
    1797              :       return 0;
    1798              : 
    1799       526016 :     case E_SImode:
    1800       526016 :       if (!nonimmediate_operand (operands[1], E_SImode))
    1801              :         return -1;
    1802              :       return 1;
    1803              : 
    1804       332981 :     case E_DImode:
    1805       332981 :       if (!nonimmediate_operand (operands[1], E_DImode))
    1806              :         return -1;
    1807              :       return 2;
    1808              : 
    1809              :     default:
    1810              :       return -1;
    1811              :     }
    1812              : }
    1813              : 
    1814              : int
    1815     13113341 : pattern441 (rtx x1)
    1816              : {
    1817     13113341 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1818     13113341 :   int res ATTRIBUTE_UNUSED;
    1819     13113341 :   switch (GET_MODE (operands[0]))
    1820              :     {
    1821      5528334 :     case E_DImode:
    1822      5528334 :       if (!nonimmediate_operand (operands[0], E_DImode)
    1823      5432017 :           || GET_MODE (x1) != E_DImode
    1824     10960351 :           || !nonimmediate_operand (operands[1], E_DImode))
    1825       439049 :         return -1;
    1826              :       return 0;
    1827              : 
    1828      3366441 :     case E_SImode:
    1829      3366441 :       if (!nonimmediate_operand (operands[0], E_SImode)
    1830      2062353 :           || GET_MODE (x1) != E_SImode
    1831      2062353 :           || !nonimmediate_operand (operands[1], E_SImode)
    1832      4975930 :           || !x86_64_general_operand (operands[2], E_SImode))
    1833      1835612 :         return -1;
    1834              :       return 1;
    1835              : 
    1836              :     default:
    1837              :       return -1;
    1838              :     }
    1839              : }
    1840              : 
    1841              : int
    1842         9479 : pattern452 (rtx x1, int *pnum_clobbers)
    1843              : {
    1844         9479 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1845         9479 :   rtx x2, x3, x4;
    1846         9479 :   int res ATTRIBUTE_UNUSED;
    1847         9479 :   if (pnum_clobbers == NULL)
    1848              :     return -1;
    1849         9479 :   x2 = XEXP (x1, 1);
    1850         9479 :   x3 = XEXP (x2, 1);
    1851         9479 :   if (x3 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
    1852              :     return -1;
    1853         7834 :   x4 = XEXP (x2, 0);
    1854         7834 :   operands[2] = x4;
    1855         7834 :   if (!int_nonimmediate_operand (operands[2], E_VOIDmode))
    1856              :     return -1;
    1857         3968 :   switch (GET_MODE (operands[0]))
    1858              :     {
    1859          210 :     case E_SImode:
    1860          210 :       return pattern451 (x1, 
    1861          210 : E_SImode); /* [-1, 0] */
    1862              : 
    1863         3613 :     case E_DImode:
    1864         3613 :       if (pattern451 (x1, 
    1865              : E_DImode) != 0)
    1866              :         return -1;
    1867              :       return 1;
    1868              : 
    1869              :     default:
    1870              :       return -1;
    1871              :     }
    1872              : }
    1873              : 
    1874              : int
    1875         4989 : pattern461 (rtx x1, machine_mode i1)
    1876              : {
    1877         4989 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1878         4989 :   rtx x2;
    1879         4989 :   int res ATTRIBUTE_UNUSED;
    1880         4989 :   if (!register_operand (operands[0], i1)
    1881         4989 :       || GET_MODE (x1) != i1)
    1882              :     return -1;
    1883         4494 :   x2 = XEXP (x1, 0);
    1884         4494 :   if (GET_MODE (x2) != i1
    1885         4494 :       || !register_operand (operands[1], i1)
    1886         8812 :       || !nonimmediate_operand (operands[2], i1))
    1887          527 :     return -1;
    1888              :   return 0;
    1889              : }
    1890              : 
    1891              : int
    1892         1523 : pattern465 (rtx x1)
    1893              : {
    1894         1523 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1895         1523 :   rtx x2, x3, x4, x5, x6, x7;
    1896         1523 :   int res ATTRIBUTE_UNUSED;
    1897         1523 :   x2 = XEXP (x1, 0);
    1898         1523 :   x3 = XVECEXP (x2, 0, 0);
    1899         1523 :   operands[1] = x3;
    1900         1523 :   x4 = XVECEXP (x2, 0, 1);
    1901         1523 :   operands[2] = x4;
    1902         1523 :   x5 = XEXP (x1, 2);
    1903         1523 :   switch (GET_CODE (x5))
    1904              :     {
    1905         1436 :     case UNSPEC:
    1906         1436 :       if (XVECLEN (x5, 0) != 1
    1907         1436 :           || XINT (x5, 1) != 224)
    1908              :         return -1;
    1909         1436 :       x6 = XEXP (x1, 1);
    1910         1436 :       operands[3] = x6;
    1911         1436 :       x7 = XVECEXP (x5, 0, 0);
    1912         1436 :       operands[4] = x7;
    1913         1436 :       switch (GET_MODE (operands[0]))
    1914              :         {
    1915          296 :         case E_V32HFmode:
    1916          296 :           if (!register_operand (operands[0], E_V32HFmode)
    1917          250 :               || GET_MODE (x1) != E_V32HFmode
    1918          250 :               || GET_MODE (x2) != E_V32HFmode
    1919          250 :               || !vector_operand (operands[1], E_V32HFmode)
    1920          250 :               || !vector_operand (operands[2], E_V32HFmode)
    1921          250 :               || !nonimm_or_0_operand (operands[3], E_V32HFmode)
    1922          246 :               || GET_MODE (x5) != E_SImode
    1923          542 :               || !register_operand (operands[4], E_HImode))
    1924          114 :             return -1;
    1925              :           return 0;
    1926              : 
    1927          573 :         case E_V16HFmode:
    1928          573 :           if (pattern464 (x1, 
    1929              : E_HImode, 
    1930              : E_V16HFmode) != 0)
    1931              :             return -1;
    1932              :           return 1;
    1933              : 
    1934          567 :         case E_V8HFmode:
    1935          567 :           if (pattern464 (x1, 
    1936              : E_QImode, 
    1937              : E_V8HFmode) != 0)
    1938              :             return -1;
    1939              :           return 2;
    1940              : 
    1941              :         default:
    1942              :           return -1;
    1943              :         }
    1944              : 
    1945           87 :     case CONST_INT:
    1946           87 :       if (XWINT (x5, 0) != 3L
    1947           87 :           || !register_operand (operands[0], E_V8HFmode)
    1948           67 :           || GET_MODE (x1) != E_V8HFmode
    1949           67 :           || GET_MODE (x2) != E_V8HFmode
    1950           67 :           || !nonimmediate_operand (operands[1], E_V8HFmode)
    1951          154 :           || !vector_operand (operands[2], E_V8HFmode))
    1952           20 :         return -1;
    1953           67 :       x6 = XEXP (x1, 1);
    1954           67 :       if (!rtx_equal_p (x6, operands[1]))
    1955              :         return -1;
    1956              :       return 3;
    1957              : 
    1958              :     default:
    1959              :       return -1;
    1960              :     }
    1961              : }
    1962              : 
    1963              : int
    1964         3880 : pattern489 (rtx x1, machine_mode i1, machine_mode i2)
    1965              : {
    1966         3880 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1967         3880 :   rtx x2;
    1968         3880 :   int res ATTRIBUTE_UNUSED;
    1969         3880 :   if (!register_operand (operands[0], i1)
    1970         3880 :       || GET_MODE (x1) != i1)
    1971              :     return -1;
    1972         3664 :   x2 = XEXP (x1, 0);
    1973         3664 :   if (GET_MODE (x2) != i1
    1974         3664 :       || !register_operand (operands[1], i1)
    1975         3604 :       || !register_operand (operands[2], i1)
    1976         3604 :       || !nonimmediate_operand (operands[3], i1)
    1977         3604 :       || !const0_operand (operands[5], i1)
    1978         7268 :       || !register_operand (operands[4], i2))
    1979          276 :     return -1;
    1980              :   return 0;
    1981              : }
    1982              : 
    1983              : int
    1984            0 : pattern495 (rtx x1)
    1985              : {
    1986            0 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1987            0 :   rtx x2, x3, x4, x5;
    1988            0 :   int res ATTRIBUTE_UNUSED;
    1989            0 :   x2 = XVECEXP (x1, 0, 0);
    1990            0 :   x3 = XEXP (x2, 0);
    1991            0 :   operands[1] = x3;
    1992            0 :   x4 = XEXP (x2, 1);
    1993            0 :   operands[2] = x4;
    1994            0 :   x5 = XVECEXP (x1, 0, 1);
    1995            0 :   operands[3] = x5;
    1996            0 :   if (!const48_operand (operands[3], E_SImode))
    1997              :     return -1;
    1998            0 :   switch (GET_MODE (operands[0]))
    1999              :     {
    2000            0 :     case E_V32HFmode:
    2001            0 :       return pattern493 (x1, 
    2002            0 : E_V32HFmode); /* [-1, 0] */
    2003              : 
    2004            0 :     case E_V16SFmode:
    2005            0 :       if (pattern493 (x1, 
    2006              : E_V16SFmode) != 0)
    2007              :         return -1;
    2008              :       return 1;
    2009              : 
    2010            0 :     case E_V8DFmode:
    2011            0 :       if (pattern493 (x1, 
    2012              : E_V8DFmode) != 0)
    2013              :         return -1;
    2014              :       return 2;
    2015              : 
    2016              :     default:
    2017              :       return -1;
    2018              :     }
    2019              : }
    2020              : 
    2021              : int
    2022          850 : pattern500 ()
    2023              : {
    2024          850 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2025          850 :   int res ATTRIBUTE_UNUSED;
    2026          850 :   if (!const0_operand (operands[4], E_V4HFmode))
    2027              :     return -1;
    2028          850 :   switch (GET_MODE (operands[1]))
    2029              :     {
    2030          410 :     case E_V4SImode:
    2031          410 :       if (!vector_operand (operands[1], E_V4SImode))
    2032              :         return -1;
    2033              :       return 0;
    2034              : 
    2035          440 :     case E_V4DImode:
    2036          440 :       if (!vector_operand (operands[1], E_V4DImode))
    2037              :         return -1;
    2038              :       return 1;
    2039              : 
    2040              :     default:
    2041              :       return -1;
    2042              :     }
    2043              : }
    2044              : 
    2045              : int
    2046          183 : pattern504 (rtx x1, machine_mode i1)
    2047              : {
    2048          183 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2049          183 :   rtx x2, x3;
    2050          183 :   int res ATTRIBUTE_UNUSED;
    2051          183 :   if (!register_operand (operands[0], E_V4SFmode)
    2052          183 :       || GET_MODE (x1) != E_V4SFmode)
    2053              :     return -1;
    2054          177 :   x2 = XEXP (x1, 0);
    2055          177 :   if (GET_MODE (x2) != E_V2SFmode)
    2056              :     return -1;
    2057          177 :   x3 = XEXP (x2, 0);
    2058          177 :   if (GET_MODE (x3) != E_V2SFmode
    2059          177 :       || !nonimmediate_operand (operands[1], i1)
    2060          176 :       || !const0_operand (operands[3], E_V2SFmode)
    2061          353 :       || !const0_operand (operands[4], E_V2SFmode))
    2062            1 :     return -1;
    2063              :   return 0;
    2064              : }
    2065              : 
    2066              : int
    2067         1228 : pattern508 (rtx x1, machine_mode i1, machine_mode i2)
    2068              : {
    2069         1228 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2070         1228 :   rtx x2, x3, x4;
    2071         1228 :   int res ATTRIBUTE_UNUSED;
    2072         1228 :   if (!register_operand (operands[0], i1)
    2073         1228 :       || GET_MODE (x1) != i1)
    2074              :     return -1;
    2075         1222 :   x2 = XEXP (x1, 0);
    2076         1222 :   if (GET_MODE (x2) != i2)
    2077              :     return -1;
    2078         1222 :   x3 = XEXP (x2, 0);
    2079         1222 :   if (GET_MODE (x3) != i2)
    2080              :     return -1;
    2081         1222 :   x4 = XEXP (x2, 1);
    2082         1222 :   if (GET_MODE (x4) != i2
    2083         1222 :       || !nonimm_or_0_operand (operands[2], i1))
    2084           31 :     return -1;
    2085              :   return 0;
    2086              : }
    2087              : 
    2088              : int
    2089          540 : pattern511 (rtx x1, machine_mode i1, machine_mode i2)
    2090              : {
    2091          540 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2092          540 :   rtx x2, x3, x4;
    2093          540 :   int res ATTRIBUTE_UNUSED;
    2094          540 :   if (!register_operand (operands[0], i2)
    2095          540 :       || GET_MODE (x1) != i2)
    2096              :     return -1;
    2097          540 :   x2 = XEXP (x1, 0);
    2098          540 :   if (GET_MODE (x2) != i1)
    2099              :     return -1;
    2100          540 :   x3 = XEXP (x2, 0);
    2101          540 :   if (GET_MODE (x3) != i1)
    2102              :     return -1;
    2103          540 :   x4 = XEXP (x2, 1);
    2104          540 :   if (GET_MODE (x4) != i1)
    2105            0 :     return -1;
    2106              :   return 0;
    2107              : }
    2108              : 
    2109              : int
    2110          137 : pattern517 (rtx x1)
    2111              : {
    2112          137 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2113          137 :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
    2114          137 :   rtx x10, x11;
    2115          137 :   int res ATTRIBUTE_UNUSED;
    2116          137 :   x2 = XEXP (x1, 1);
    2117          137 :   if (GET_CODE (x2) != CONST_VECTOR
    2118          137 :       || XVECLEN (x2, 0) != 8
    2119          137 :       || GET_MODE (x2) != E_V8QImode)
    2120              :     return -1;
    2121          137 :   x3 = XVECEXP (x2, 0, 0);
    2122          137 :   if (x3 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
    2123              :     return -1;
    2124          137 :   x4 = XVECEXP (x2, 0, 1);
    2125          137 :   if (x4 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
    2126              :     return -1;
    2127          137 :   x5 = XVECEXP (x2, 0, 2);
    2128          137 :   if (x5 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
    2129              :     return -1;
    2130          137 :   x6 = XVECEXP (x2, 0, 3);
    2131          137 :   if (x6 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
    2132              :     return -1;
    2133          137 :   x7 = XVECEXP (x2, 0, 4);
    2134          137 :   if (x7 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
    2135              :     return -1;
    2136          137 :   x8 = XVECEXP (x2, 0, 5);
    2137          137 :   if (x8 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
    2138              :     return -1;
    2139          137 :   x9 = XVECEXP (x2, 0, 6);
    2140          137 :   if (x9 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
    2141              :     return -1;
    2142          137 :   x10 = XVECEXP (x2, 0, 7);
    2143          137 :   if (x10 != const_int_rtx[MAX_SAVED_CONST_INT + 0]
    2144          137 :       || !register_operand (operands[0], E_V16QImode)
    2145          266 :       || GET_MODE (x1) != E_V16QImode)
    2146            8 :     return -1;
    2147          129 :   x11 = XEXP (x1, 0);
    2148          129 :   if (GET_MODE (x11) != E_V8QImode)
    2149              :     return -1;
    2150              :   return 0;
    2151              : }
    2152              : 
    2153              : int
    2154         1205 : pattern530 (rtx x1, machine_mode i1)
    2155              : {
    2156         1205 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2157         1205 :   int res ATTRIBUTE_UNUSED;
    2158         1205 :   if (!register_operand (operands[0], i1)
    2159         1061 :       || GET_MODE (x1) != i1
    2160         1061 :       || !ieee_maxmin_comparison_operator (operands[1], i1)
    2161         1061 :       || !nonimmediate_operand (operands[2], i1)
    2162         1029 :       || !const0_operand (operands[3], i1)
    2163         1401 :       || !nonimmediate_operand (operands[4], i1))
    2164         1009 :     return -1;
    2165              :   return 0;
    2166              : }
    2167              : 
    2168              : int
    2169        74836 : pattern535 (rtx x1)
    2170              : {
    2171        74836 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2172        74836 :   rtx x2, x3, x4;
    2173        74836 :   int res ATTRIBUTE_UNUSED;
    2174        74836 :   x2 = XEXP (x1, 1);
    2175        74836 :   x3 = XEXP (x2, 0);
    2176        74836 :   operands[3] = x3;
    2177        74836 :   x4 = XEXP (x2, 1);
    2178        74836 :   operands[4] = x4;
    2179        74836 :   switch (GET_MODE (operands[0]))
    2180              :     {
    2181            0 :     case E_V64QImode:
    2182            0 :       return pattern534 (x1, 
    2183            0 : E_V64QImode); /* [-1, 0] */
    2184              : 
    2185            0 :     case E_V32QImode:
    2186            0 :       if (pattern534 (x1, 
    2187              : E_V32QImode) != 0)
    2188              :         return -1;
    2189              :       return 1;
    2190              : 
    2191          832 :     case E_V16QImode:
    2192          832 :       if (pattern534 (x1, 
    2193              : E_V16QImode) != 0)
    2194              :         return -1;
    2195              :       return 2;
    2196              : 
    2197            0 :     case E_V32HImode:
    2198            0 :       if (pattern534 (x1, 
    2199              : E_V32HImode) != 0)
    2200              :         return -1;
    2201              :       return 3;
    2202              : 
    2203            0 :     case E_V16HImode:
    2204            0 :       if (pattern534 (x1, 
    2205              : E_V16HImode) != 0)
    2206              :         return -1;
    2207              :       return 4;
    2208              : 
    2209          642 :     case E_V8HImode:
    2210          642 :       if (pattern534 (x1, 
    2211              : E_V8HImode) != 0)
    2212              :         return -1;
    2213              :       return 5;
    2214              : 
    2215            0 :     case E_V16SImode:
    2216            0 :       if (pattern534 (x1, 
    2217              : E_V16SImode) != 0)
    2218              :         return -1;
    2219              :       return 6;
    2220              : 
    2221            4 :     case E_V8SImode:
    2222            4 :       if (pattern534 (x1, 
    2223              : E_V8SImode) != 0)
    2224              :         return -1;
    2225              :       return 7;
    2226              : 
    2227         4090 :     case E_V4SImode:
    2228         4090 :       if (pattern534 (x1, 
    2229              : E_V4SImode) != 0)
    2230              :         return -1;
    2231              :       return 8;
    2232              : 
    2233            0 :     case E_V8DImode:
    2234            0 :       if (pattern534 (x1, 
    2235              : E_V8DImode) != 0)
    2236              :         return -1;
    2237              :       return 9;
    2238              : 
    2239            0 :     case E_V4DImode:
    2240            0 :       if (pattern534 (x1, 
    2241              : E_V4DImode) != 0)
    2242              :         return -1;
    2243              :       return 10;
    2244              : 
    2245          404 :     case E_V2DImode:
    2246          404 :       if (pattern534 (x1, 
    2247              : E_V2DImode) != 0)
    2248              :         return -1;
    2249              :       return 11;
    2250              : 
    2251              :     default:
    2252              :       return -1;
    2253              :     }
    2254              : }
    2255              : 
    2256              : int
    2257        18610 : pattern545 (rtx x1)
    2258              : {
    2259        18610 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2260        18610 :   int res ATTRIBUTE_UNUSED;
    2261        18610 :   switch (GET_MODE (operands[0]))
    2262              :     {
    2263        18207 :     case E_V8HImode:
    2264        18207 :       if (!register_operand (operands[0], E_V8HImode)
    2265        18207 :           || GET_MODE (x1) != E_V8HImode)
    2266              :         return -1;
    2267              :       return 0;
    2268              : 
    2269          239 :     case E_V8SImode:
    2270          239 :       if (!register_operand (operands[0], E_V8SImode)
    2271          239 :           || GET_MODE (x1) != E_V8SImode)
    2272              :         return -1;
    2273              :       return 1;
    2274              : 
    2275          164 :     case E_V8DImode:
    2276          164 :       if (!register_operand (operands[0], E_V8DImode)
    2277          164 :           || GET_MODE (x1) != E_V8DImode)
    2278              :         return -1;
    2279              :       return 2;
    2280              : 
    2281              :     default:
    2282              :       return -1;
    2283              :     }
    2284              : }
    2285              : 
    2286              : int
    2287           15 : pattern548 (rtx x1)
    2288              : {
    2289           15 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2290           15 :   rtx x2, x3, x4, x5, x6;
    2291           15 :   int res ATTRIBUTE_UNUSED;
    2292           15 :   x2 = XVECEXP (x1, 0, 0);
    2293           15 :   x3 = XEXP (x2, 1);
    2294           15 :   if (GET_MODE (x3) != E_DImode)
    2295              :     return -1;
    2296           15 :   x4 = XVECEXP (x1, 0, 1);
    2297           15 :   if (GET_CODE (x4) != SET)
    2298              :     return -1;
    2299           15 :   x5 = XEXP (x4, 1);
    2300           15 :   if (GET_CODE (x5) != UNSPEC
    2301           15 :       || XVECLEN (x5, 0) != 1
    2302           15 :       || XINT (x5, 1) != 108
    2303           15 :       || GET_MODE (x5) != E_DImode)
    2304              :     return -1;
    2305           15 :   x6 = XVECEXP (x5, 0, 0);
    2306           15 :   if (x6 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
    2307            0 :     return -1;
    2308              :   return 0;
    2309              : }
    2310              : 
    2311              : int
    2312          540 : pattern555 (rtx x1)
    2313              : {
    2314          540 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2315          540 :   rtx x2, x3, x4, x5, x6, x7;
    2316          540 :   int res ATTRIBUTE_UNUSED;
    2317          540 :   x2 = XVECEXP (x1, 0, 1);
    2318          540 :   if (GET_CODE (x2) != CLOBBER)
    2319              :     return -1;
    2320          540 :   x3 = XEXP (x2, 0);
    2321          540 :   if (GET_CODE (x3) != REG
    2322          540 :       || REGNO (x3) != 17
    2323         1080 :       || GET_MODE (x3) != E_CCmode)
    2324              :     return -1;
    2325          540 :   x4 = XVECEXP (x1, 0, 0);
    2326          540 :   x5 = XEXP (x4, 0);
    2327          540 :   operands[0] = x5;
    2328          540 :   x6 = XEXP (x4, 1);
    2329          540 :   x7 = XVECEXP (x6, 0, 0);
    2330          540 :   operands[1] = x7;
    2331          540 :   if (!register_operand (operands[1], E_XFmode))
    2332              :     return -1;
    2333          372 :   return pattern554 (x6); /* [-1, 2] */
    2334              : }
    2335              : 
    2336              : int
    2337          785 : pattern558 (rtx x1, int i1, int i2)
    2338              : {
    2339          785 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2340          785 :   rtx x2, x3, x4, x5, x6;
    2341          785 :   int res ATTRIBUTE_UNUSED;
    2342          785 :   x2 = XVECEXP (x1, 0, 1);
    2343          785 :   if (GET_CODE (x2) != SET)
    2344              :     return -1;
    2345          701 :   x3 = XEXP (x2, 1);
    2346          701 :   if (GET_CODE (x3) != UNSPEC
    2347          627 :       || XVECLEN (x3, 0) != i2
    2348          627 :       || XINT (x3, 1) != i1
    2349          607 :       || GET_MODE (x3) != E_CCmode)
    2350              :     return -1;
    2351          607 :   x4 = XEXP (x2, 0);
    2352          607 :   if (GET_CODE (x4) != REG
    2353          607 :       || REGNO (x4) != 17
    2354         1214 :       || GET_MODE (x4) != E_CCmode)
    2355              :     return -1;
    2356          607 :   x5 = XVECEXP (x1, 0, 0);
    2357          607 :   x6 = XEXP (x5, 0);
    2358          607 :   operands[0] = x6;
    2359          607 :   return 0;
    2360              : }
    2361              : 
    2362              : int
    2363       425289 : pattern564 (rtx x1)
    2364              : {
    2365       425289 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2366       425289 :   rtx x2, x3, x4, x5, x6, x7, x8;
    2367       425289 :   int res ATTRIBUTE_UNUSED;
    2368       425289 :   if (!bt_comparison_operator (operands[1], E_QImode))
    2369              :     return -1;
    2370       133122 :   x2 = XVECEXP (x1, 0, 0);
    2371       133122 :   x3 = XEXP (x2, 1);
    2372       133122 :   x4 = XEXP (x3, 1);
    2373       133122 :   if (x4 != const_int_rtx[MAX_SAVED_CONST_INT + -1])
    2374              :     return -1;
    2375         5019 :   x5 = XVECEXP (x1, 0, 1);
    2376         5019 :   if (GET_CODE (x5) != CLOBBER)
    2377              :     return -1;
    2378          559 :   x6 = XEXP (x5, 0);
    2379          559 :   if (GET_CODE (x6) != REG
    2380          559 :       || REGNO (x6) != 17
    2381         1076 :       || GET_MODE (x6) != E_CCmode)
    2382              :     return -1;
    2383          151 :   x7 = XEXP (x2, 0);
    2384          151 :   operands[0] = x7;
    2385          151 :   if (!nonimmediate_operand (operands[0], E_QImode))
    2386              :     return -1;
    2387          151 :   x8 = XEXP (x3, 0);
    2388          151 :   operands[2] = x8;
    2389          151 :   switch (GET_MODE (operands[2]))
    2390              :     {
    2391           32 :     case E_QImode:
    2392           32 :       if (!register_operand (operands[2], E_QImode))
    2393              :         return -1;
    2394              :       return 0;
    2395              : 
    2396           43 :     case E_HImode:
    2397           43 :       if (!register_operand (operands[2], E_HImode))
    2398              :         return -1;
    2399              :       return 1;
    2400              : 
    2401           32 :     case E_SImode:
    2402           32 :       if (!register_operand (operands[2], E_SImode))
    2403              :         return -1;
    2404              :       return 2;
    2405              : 
    2406           44 :     case E_DImode:
    2407           44 :       if (!register_operand (operands[2], E_DImode))
    2408              :         return -1;
    2409              :       return 3;
    2410              : 
    2411              :     default:
    2412              :       return -1;
    2413              :     }
    2414              : }
    2415              : 
    2416              : int
    2417          214 : pattern581 ()
    2418              : {
    2419          214 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2420          214 :   int res ATTRIBUTE_UNUSED;
    2421          214 :   if (!register_operand (operands[1], E_SImode)
    2422          214 :       || !register_operand (operands[2], E_SImode))
    2423           30 :     return -1;
    2424          184 :   switch (GET_MODE (operands[0]))
    2425              :     {
    2426            0 :     case E_SImode:
    2427            0 :       if (!register_operand (operands[0], E_SImode))
    2428              :         return -1;
    2429              :       return 0;
    2430              : 
    2431          184 :     case E_DImode:
    2432          184 :       if (!register_operand (operands[0], E_DImode))
    2433              :         return -1;
    2434              :       return 1;
    2435              : 
    2436              :     default:
    2437              :       return -1;
    2438              :     }
    2439              : }
    2440              : 
    2441              : int
    2442          928 : pattern589 (rtx x1, machine_mode i1)
    2443              : {
    2444          928 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2445          928 :   rtx x2, x3, x4, x5, x6;
    2446          928 :   int res ATTRIBUTE_UNUSED;
    2447          928 :   if (!extract_high_operator (operands[3], i1))
    2448              :     return -1;
    2449          928 :   x2 = XEXP (x1, 0);
    2450          928 :   if (GET_MODE (x2) != i1)
    2451              :     return -1;
    2452          928 :   x3 = XEXP (x1, 1);
    2453          928 :   if (GET_MODE (x3) != i1)
    2454              :     return -1;
    2455          928 :   x4 = XEXP (x3, 0);
    2456          928 :   x5 = XEXP (x4, 0);
    2457          928 :   x6 = XEXP (x5, 0);
    2458          928 :   if (GET_MODE (x6) != i1)
    2459            0 :     return -1;
    2460              :   return 0;
    2461              : }
    2462              : 
    2463              : int
    2464       187892 : pattern593 (rtx x1, rtx_code i1)
    2465              : {
    2466       187892 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2467       187892 :   rtx x2, x3, x4, x5;
    2468       187892 :   int res ATTRIBUTE_UNUSED;
    2469       187892 :   x2 = XVECEXP (x1, 0, 1);
    2470       187892 :   if (GET_CODE (x2) != SET)
    2471              :     return -1;
    2472       187892 :   x3 = XEXP (x2, 1);
    2473       187892 :   if (GET_CODE (x3) != i1)
    2474              :     return -1;
    2475       187892 :   x4 = XVECEXP (x1, 0, 2);
    2476       187892 :   x5 = XEXP (x4, 0);
    2477       187892 :   if (GET_CODE (x5) != REG
    2478       187892 :       || REGNO (x5) != 17
    2479       375784 :       || GET_MODE (x5) != E_CCmode)
    2480            0 :     return -1;
    2481              :   return 0;
    2482              : }
    2483              : 
    2484              : int
    2485       159908 : pattern597 (rtx x1, rtx_code i1)
    2486              : {
    2487       159908 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2488       159908 :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
    2489       159908 :   int res ATTRIBUTE_UNUSED;
    2490       159908 :   x2 = XVECEXP (x1, 0, 1);
    2491       159908 :   if (GET_CODE (x2) != SET)
    2492              :     return -1;
    2493       159908 :   x3 = XEXP (x2, 1);
    2494       159908 :   if (GET_CODE (x3) != i1)
    2495              :     return -1;
    2496       159908 :   x4 = XVECEXP (x1, 0, 2);
    2497       159908 :   if (GET_CODE (x4) != UNSPEC
    2498           42 :       || XVECLEN (x4, 0) != 1
    2499           42 :       || XINT (x4, 1) != 33)
    2500              :     return -1;
    2501           42 :   x5 = XVECEXP (x4, 0, 0);
    2502           42 :   if (x5 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
    2503              :     return -1;
    2504           42 :   x6 = XVECEXP (x1, 0, 3);
    2505           42 :   x7 = XEXP (x6, 0);
    2506           42 :   if (GET_CODE (x7) != REG
    2507           42 :       || REGNO (x7) != 17
    2508           84 :       || GET_MODE (x7) != E_CCmode)
    2509              :     return -1;
    2510           42 :   x8 = XVECEXP (x1, 0, 0);
    2511           42 :   x9 = XEXP (x8, 0);
    2512           42 :   operands[0] = x9;
    2513           42 :   return pattern596 (x1); /* [-1, 1] */
    2514              : }
    2515              : 
    2516              : int
    2517           70 : pattern607 (rtx x1)
    2518              : {
    2519           70 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2520           70 :   rtx x2, x3, x4, x5;
    2521           70 :   int res ATTRIBUTE_UNUSED;
    2522           70 :   x2 = XEXP (x1, 0);
    2523           70 :   x3 = XEXP (x2, 0);
    2524           70 :   if (GET_CODE (x3) != NOT)
    2525              :     return -1;
    2526            8 :   x4 = XEXP (x3, 0);
    2527            8 :   operands[1] = x4;
    2528            8 :   x5 = XEXP (x1, 1);
    2529            8 :   operands[2] = x5;
    2530            8 :   switch (GET_MODE (operands[0]))
    2531              :     {
    2532            2 :     case E_V16SImode:
    2533            2 :       return pattern606 (x1, 
    2534              : E_V16SImode, 
    2535            2 : E_SImode); /* [-1, 0] */
    2536              : 
    2537            2 :     case E_V8DImode:
    2538            2 :       if (pattern606 (x1, 
    2539              : E_V8DImode, 
    2540              : E_DImode) != 0)
    2541              :         return -1;
    2542              :       return 1;
    2543              : 
    2544            2 :     case E_V64QImode:
    2545            2 :       if (pattern606 (x1, 
    2546              : E_V64QImode, 
    2547              : E_QImode) != 0)
    2548              :         return -1;
    2549              :       return 2;
    2550              : 
    2551            0 :     case E_V32QImode:
    2552            0 :       if (pattern606 (x1, 
    2553              : E_V32QImode, 
    2554              : E_QImode) != 0)
    2555              :         return -1;
    2556              :       return 3;
    2557              : 
    2558            0 :     case E_V16QImode:
    2559            0 :       if (pattern606 (x1, 
    2560              : E_V16QImode, 
    2561              : E_QImode) != 0)
    2562              :         return -1;
    2563              :       return 4;
    2564              : 
    2565            2 :     case E_V32HImode:
    2566            2 :       if (pattern606 (x1, 
    2567              : E_V32HImode, 
    2568              : E_HImode) != 0)
    2569              :         return -1;
    2570              :       return 5;
    2571              : 
    2572            0 :     case E_V16HImode:
    2573            0 :       if (pattern606 (x1, 
    2574              : E_V16HImode, 
    2575              : E_HImode) != 0)
    2576              :         return -1;
    2577              :       return 6;
    2578              : 
    2579            0 :     case E_V8HImode:
    2580            0 :       if (pattern606 (x1, 
    2581              : E_V8HImode, 
    2582              : E_HImode) != 0)
    2583              :         return -1;
    2584              :       return 7;
    2585              : 
    2586            0 :     case E_V8SImode:
    2587            0 :       if (pattern606 (x1, 
    2588              : E_V8SImode, 
    2589              : E_SImode) != 0)
    2590              :         return -1;
    2591              :       return 8;
    2592              : 
    2593            0 :     case E_V4SImode:
    2594            0 :       if (pattern606 (x1, 
    2595              : E_V4SImode, 
    2596              : E_SImode) != 0)
    2597              :         return -1;
    2598              :       return 9;
    2599              : 
    2600            0 :     case E_V4DImode:
    2601            0 :       if (pattern606 (x1, 
    2602              : E_V4DImode, 
    2603              : E_DImode) != 0)
    2604              :         return -1;
    2605              :       return 10;
    2606              : 
    2607            0 :     case E_V2DImode:
    2608            0 :       if (pattern606 (x1, 
    2609              : E_V2DImode, 
    2610              : E_DImode) != 0)
    2611              :         return -1;
    2612              :       return 11;
    2613              : 
    2614              :     default:
    2615              :       return -1;
    2616              :     }
    2617              : }
    2618              : 
    2619              : int
    2620        30948 : pattern623 (rtx x1, machine_mode i1)
    2621              : {
    2622        30948 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2623        30948 :   rtx x2;
    2624        30948 :   int res ATTRIBUTE_UNUSED;
    2625        30948 :   if (!register_operand (operands[0], i1)
    2626        30948 :       || GET_MODE (x1) != i1)
    2627              :     return -1;
    2628        30752 :   x2 = XEXP (x1, 0);
    2629        30752 :   if (GET_MODE (x2) != i1
    2630        30752 :       || !register_operand (operands[1], i1)
    2631        55037 :       || !register_operand (operands[2], i1))
    2632        19274 :     return -1;
    2633              :   return 0;
    2634              : }
    2635              : 
    2636              : int
    2637        23443 : pattern628 (rtx x1)
    2638              : {
    2639        23443 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2640        23443 :   rtx x2;
    2641        23443 :   int res ATTRIBUTE_UNUSED;
    2642        23443 :   x2 = XEXP (x1, 1);
    2643        23443 :   operands[2] = x2;
    2644        23443 :   if (!const_1_to_63_operand (operands[2], E_QImode)
    2645        23414 :       || !register_operand (operands[0], E_TImode)
    2646           27 :       || GET_MODE (x1) != E_TImode
    2647        23470 :       || !register_operand (operands[1], E_TImode))
    2648        23435 :     return -1;
    2649              :   return 0;
    2650              : }
    2651              : 
    2652              : int
    2653          795 : pattern634 (rtx x1)
    2654              : {
    2655          795 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2656          795 :   rtx x2, x3, x4, x5;
    2657          795 :   int res ATTRIBUTE_UNUSED;
    2658          795 :   x2 = XEXP (x1, 0);
    2659          795 :   x3 = XEXP (x2, 0);
    2660          795 :   x4 = XEXP (x3, 1);
    2661          795 :   operands[2] = x4;
    2662          795 :   if (!register_operand (operands[2], E_QImode))
    2663              :     return -1;
    2664          700 :   x5 = XEXP (x1, 1);
    2665          700 :   operands[1] = x5;
    2666          700 :   switch (GET_MODE (operands[0]))
    2667              :     {
    2668          363 :     case E_SImode:
    2669          363 :       return pattern633 (x1, 
    2670          363 : E_SImode); /* [-1, 0] */
    2671              : 
    2672          313 :     case E_DImode:
    2673          313 :       if (pattern633 (x1, 
    2674              : E_DImode) != 0)
    2675              :         return -1;
    2676              :       return 1;
    2677              : 
    2678              :     default:
    2679              :       return -1;
    2680              :     }
    2681              : }
    2682              : 
    2683              : int
    2684         2032 : pattern645 (rtx x1)
    2685              : {
    2686         2032 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2687         2032 :   rtx x2, x3, x4;
    2688         2032 :   int res ATTRIBUTE_UNUSED;
    2689         2032 :   x2 = XEXP (x1, 0);
    2690         2032 :   x3 = XVECEXP (x2, 0, 0);
    2691         2032 :   operands[1] = x3;
    2692         2032 :   x4 = XEXP (x1, 2);
    2693         2032 :   operands[3] = x4;
    2694         2032 :   switch (GET_MODE (operands[0]))
    2695              :     {
    2696          968 :     case E_V16QImode:
    2697          968 :       return pattern644 (x1, 
    2698              : E_V16QImode, 
    2699              : E_HImode, 
    2700          968 : E_V16HFmode); /* [-1, 0] */
    2701              : 
    2702         1004 :     case E_V32QImode:
    2703         1004 :       if (pattern644 (x1, 
    2704              : E_V32QImode, 
    2705              : E_SImode, 
    2706              : E_V32HFmode) != 0)
    2707              :         return -1;
    2708              :       return 1;
    2709              : 
    2710              :     default:
    2711              :       return -1;
    2712              :     }
    2713              : }
    2714              : 
    2715              : int
    2716        15028 : pattern651 (rtx x1)
    2717              : {
    2718        15028 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2719        15028 :   rtx x2, x3;
    2720        15028 :   int res ATTRIBUTE_UNUSED;
    2721        15028 :   x2 = XEXP (x1, 1);
    2722        15028 :   switch (GET_CODE (x2))
    2723              :     {
    2724         4559 :     case CONST_INT:
    2725         4559 :     case CONST_DOUBLE:
    2726         4559 :     case CONST_VECTOR:
    2727         4559 :       operands[4] = x2;
    2728         4559 :       x3 = XEXP (x1, 2);
    2729         4559 :       switch (GET_CODE (x3))
    2730              :         {
    2731         3697 :         case REG:
    2732         3697 :         case SUBREG:
    2733         3697 :           operands[5] = x3;
    2734         3697 :           switch (GET_MODE (operands[0]))
    2735              :             {
    2736              :             case E_V32HFmode:
    2737              :               return 0;
    2738              : 
    2739          438 :             case E_V16HFmode:
    2740          438 :               return 1;
    2741              : 
    2742          318 :             case E_V8HFmode:
    2743          318 :               return 2;
    2744              : 
    2745          289 :             case E_V16SFmode:
    2746          289 :               return 3;
    2747              : 
    2748          424 :             case E_V8SFmode:
    2749          424 :               return 4;
    2750              : 
    2751          346 :             case E_V4SFmode:
    2752          346 :               return 5;
    2753              : 
    2754          165 :             case E_V8DFmode:
    2755          165 :               return 6;
    2756              : 
    2757          444 :             case E_V4DFmode:
    2758          444 :               return 7;
    2759              : 
    2760          343 :             case E_V2DFmode:
    2761          343 :               return 8;
    2762              : 
    2763          279 :             case E_V32BFmode:
    2764          279 :               return 9;
    2765              : 
    2766          279 :             case E_V16BFmode:
    2767          279 :               return 10;
    2768              : 
    2769          279 :             case E_V8BFmode:
    2770          279 :               return 11;
    2771              : 
    2772              :             default:
    2773              :               return -1;
    2774              :             }
    2775              : 
    2776          670 :         case CONST_INT:
    2777          670 :           if (XWINT (x3, 0) != 1L)
    2778              :             return -1;
    2779          526 :           switch (GET_MODE (operands[0]))
    2780              :             {
    2781              :             case E_V4SFmode:
    2782              :               return 12;
    2783              : 
    2784          263 :             case E_V2DFmode:
    2785          263 :               return 13;
    2786              : 
    2787              :             default:
    2788              :               return -1;
    2789              :             }
    2790              : 
    2791              :         default:
    2792              :           return -1;
    2793              :         }
    2794              : 
    2795        10344 :     case REG:
    2796        10344 :     case SUBREG:
    2797        10344 :     case MEM:
    2798        10344 :       res = pattern650 (x1);
    2799        10344 :       if (res >= 0)
    2800         9471 :         return res + 14; /* [14, 28] */
    2801              :       return -1;
    2802              : 
    2803              :     default:
    2804              :       return -1;
    2805              :     }
    2806              : }
    2807              : 
    2808              : int
    2809          323 : pattern668 (rtx x1, machine_mode i1, machine_mode i2)
    2810              : {
    2811          323 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2812          323 :   rtx x2;
    2813          323 :   int res ATTRIBUTE_UNUSED;
    2814          323 :   if (!register_operand (operands[0], i2)
    2815          303 :       || GET_MODE (x1) != i2
    2816          303 :       || !register_operand (operands[1], i2)
    2817          596 :       || !vector_operand (operands[2], i2))
    2818           58 :     return -1;
    2819          265 :   x2 = XVECEXP (x1, 0, 2);
    2820          265 :   if (GET_MODE (x2) != i2
    2821          265 :       || !register_operand (operands[3], i1)
    2822          521 :       || !const0_operand (operands[4], i1))
    2823            9 :     return -1;
    2824              :   return 0;
    2825              : }
    2826              : 
    2827              : int
    2828          291 : pattern674 (rtx x1, machine_mode i1)
    2829              : {
    2830          291 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2831          291 :   rtx x2;
    2832          291 :   int res ATTRIBUTE_UNUSED;
    2833          291 :   if (!register_operand (operands[0], i1)
    2834          271 :       || GET_MODE (x1) != i1
    2835          271 :       || !vector_operand (operands[1], i1)
    2836          562 :       || !register_operand (operands[2], i1))
    2837           90 :     return -1;
    2838          201 :   x2 = XVECEXP (x1, 0, 2);
    2839          201 :   if (GET_MODE (x2) != i1
    2840          201 :       || !register_operand (operands[3], i1)
    2841          402 :       || !vector_all_ones_operand (operands[4], i1))
    2842          201 :     return -1;
    2843              :   return 0;
    2844              : }
    2845              : 
    2846              : int
    2847          997 : pattern678 (rtx x1, machine_mode i1)
    2848              : {
    2849          997 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2850          997 :   int res ATTRIBUTE_UNUSED;
    2851          997 :   if (!register_operand (operands[0], i1)
    2852          898 :       || GET_MODE (x1) != i1
    2853          898 :       || !vector_operand (operands[1], i1)
    2854          866 :       || !vector_operand (operands[2], i1)
    2855         1832 :       || !vector_operand (operands[3], i1))
    2856          177 :     return -1;
    2857              :   return 0;
    2858              : }
    2859              : 
    2860              : int
    2861          131 : pattern681 (rtx x1)
    2862              : {
    2863          131 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2864          131 :   rtx x2, x3, x4, x5;
    2865          131 :   int res ATTRIBUTE_UNUSED;
    2866          131 :   x2 = XEXP (x1, 0);
    2867          131 :   if (GET_MODE (x2) != E_V2SImode)
    2868              :     return -1;
    2869          131 :   x3 = XEXP (x1, 1);
    2870          131 :   if (GET_CODE (x3) != CONST_VECTOR
    2871          131 :       || XVECLEN (x3, 0) != 2
    2872          131 :       || GET_MODE (x3) != E_V2SImode)
    2873              :     return -1;
    2874          131 :   x4 = XVECEXP (x3, 0, 0);
    2875          131 :   if (x4 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
    2876              :     return -1;
    2877          131 :   x5 = XVECEXP (x3, 0, 1);
    2878          131 :   if (x5 != const_int_rtx[MAX_SAVED_CONST_INT + 0]
    2879          131 :       || !register_operand (operands[0], E_V4SImode)
    2880          131 :       || GET_MODE (x1) != E_V4SImode
    2881          262 :       || !nonimmediate_operand (operands[1], E_V2DFmode))
    2882           22 :     return -1;
    2883              :   return 0;
    2884              : }
    2885              : 
    2886              : int
    2887           25 : pattern689 (rtx x1, machine_mode i1, machine_mode i2)
    2888              : {
    2889           25 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2890           25 :   rtx x2, x3, x4, x5, x6, x7, x8;
    2891           25 :   int res ATTRIBUTE_UNUSED;
    2892           25 :   x2 = XEXP (x1, 0);
    2893           25 :   x3 = XEXP (x2, 1);
    2894           25 :   x4 = XVECEXP (x3, 0, 0);
    2895           25 :   if (x4 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
    2896              :     return -1;
    2897           25 :   x5 = XVECEXP (x3, 0, 1);
    2898           25 :   if (x5 != const_int_rtx[MAX_SAVED_CONST_INT + 1])
    2899              :     return -1;
    2900           25 :   x6 = XVECEXP (x3, 0, 2);
    2901           25 :   if (x6 != const_int_rtx[MAX_SAVED_CONST_INT + 2])
    2902              :     return -1;
    2903           25 :   x7 = XVECEXP (x3, 0, 3);
    2904           25 :   if (x7 != const_int_rtx[MAX_SAVED_CONST_INT + 3]
    2905           25 :       || GET_MODE (x2) != i2)
    2906              :     return -1;
    2907           25 :   x8 = XEXP (x2, 0);
    2908           25 :   if (GET_MODE (x8) != i1)
    2909              :     return -1;
    2910           25 :   return pattern28 (x1); /* [-1, 1] */
    2911              : }
    2912              : 
    2913              : int
    2914       315397 : pattern697 (rtx x1, rtx_code i1)
    2915              : {
    2916       315397 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2917       315397 :   rtx x2, x3, x4, x5, x6, x7;
    2918       315397 :   int res ATTRIBUTE_UNUSED;
    2919       315397 :   x2 = XVECEXP (x1, 0, 0);
    2920       315397 :   x3 = XEXP (x2, 0);
    2921       315397 :   if (GET_CODE (x3) != REG
    2922       315397 :       || REGNO (x3) != 17
    2923       630754 :       || GET_MODE (x3) != E_CCOmode)
    2924              :     return -1;
    2925       315357 :   x4 = XVECEXP (x1, 0, 1);
    2926       315357 :   if (GET_CODE (x4) != SET)
    2927              :     return -1;
    2928       315357 :   x5 = XEXP (x4, 1);
    2929       315357 :   if (GET_CODE (x5) != i1)
    2930              :     return -1;
    2931       302367 :   x6 = XEXP (x2, 1);
    2932       302367 :   if (GET_MODE (x6) != E_CCOmode)
    2933              :     return -1;
    2934       302367 :   x7 = XEXP (x4, 0);
    2935       302367 :   operands[0] = x7;
    2936       302367 :   return 0;
    2937              : }
    2938              : 
    2939              : int
    2940        10523 : pattern704 (rtx x1)
    2941              : {
    2942        10523 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2943        10523 :   rtx x2, x3, x4, x5, x6, x7;
    2944        10523 :   int res ATTRIBUTE_UNUSED;
    2945        10523 :   x2 = XVECEXP (x1, 0, 0);
    2946        10523 :   x3 = XEXP (x2, 1);
    2947        10523 :   x4 = XEXP (x3, 1);
    2948        10523 :   x5 = XEXP (x4, 1);
    2949        10523 :   if (x5 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
    2950              :     return -1;
    2951        10409 :   x6 = XVECEXP (x1, 0, 1);
    2952        10409 :   if (GET_CODE (x6) != CLOBBER)
    2953              :     return -1;
    2954        10082 :   x7 = XEXP (x6, 0);
    2955        10082 :   if (GET_CODE (x7) != REG
    2956        10082 :       || REGNO (x7) != 17
    2957        20164 :       || GET_MODE (x7) != E_CCmode)
    2958              :     return -1;
    2959        10082 :   return pattern703 (x2); /* [-1, 3] */
    2960              : }
    2961              : 
    2962              : int
    2963          753 : pattern709 (rtx x1)
    2964              : {
    2965          753 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2966          753 :   int res ATTRIBUTE_UNUSED;
    2967          753 :   if (!register_operand (operands[0], E_V2SFmode)
    2968          725 :       || GET_MODE (x1) != E_V2SFmode
    2969          725 :       || !register_operand (operands[1], E_V2SFmode)
    2970         1314 :       || !nonimmediate_operand (operands[2], E_V2SFmode))
    2971          285 :     return -1;
    2972              :   return 0;
    2973              : }
    2974              : 
    2975              : int
    2976          280 : pattern717 (rtx x1, int i1)
    2977              : {
    2978          280 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2979          280 :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
    2980          280 :   rtx x10;
    2981          280 :   int res ATTRIBUTE_UNUSED;
    2982          280 :   x2 = XVECEXP (x1, 0, 0);
    2983          280 :   x3 = XEXP (x2, 1);
    2984          280 :   if (GET_MODE (x3) != E_V2DImode)
    2985              :     return -1;
    2986          280 :   x4 = XVECEXP (x1, 0, 1);
    2987          280 :   if (GET_CODE (x4) != SET)
    2988              :     return -1;
    2989          280 :   x5 = XEXP (x4, 1);
    2990          280 :   if (GET_CODE (x5) != UNSPEC_VOLATILE
    2991          280 :       || XVECLEN (x5, 0) != 2
    2992          280 :       || XINT (x5, 1) != i1
    2993          280 :       || GET_MODE (x5) != E_CCZmode)
    2994              :     return -1;
    2995          280 :   x6 = XEXP (x4, 0);
    2996          280 :   if (GET_CODE (x6) != REG
    2997          280 :       || REGNO (x6) != 17
    2998          280 :       || GET_MODE (x6) != E_CCZmode
    2999          560 :       || !register_operand (operands[0], E_V2DImode))
    3000            0 :     return -1;
    3001          280 :   x7 = XVECEXP (x3, 0, 0);
    3002          280 :   operands[1] = x7;
    3003          280 :   if (!register_operand (operands[1], E_V2DImode))
    3004              :     return -1;
    3005          264 :   x8 = XVECEXP (x3, 0, 1);
    3006          264 :   operands[2] = x8;
    3007          264 :   if (!memory_operand (operands[2], E_BLKmode))
    3008              :     return -1;
    3009          264 :   x9 = XVECEXP (x5, 0, 0);
    3010          264 :   if (!rtx_equal_p (x9, operands[1]))
    3011              :     return -1;
    3012          264 :   x10 = XVECEXP (x5, 0, 1);
    3013          264 :   if (!rtx_equal_p (x10, operands[2]))
    3014              :     return -1;
    3015              :   return 0;
    3016              : }
    3017              : 
    3018              : int
    3019        32483 : pattern728 (rtx x1, machine_mode i1, machine_mode i2)
    3020              : {
    3021        32483 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3022        32483 :   rtx x2, x3, x4, x5, x6;
    3023        32483 :   int res ATTRIBUTE_UNUSED;
    3024        32483 :   x2 = XVECEXP (x1, 0, 0);
    3025        32483 :   x3 = XEXP (x2, 1);
    3026        32483 :   x4 = XEXP (x3, 0);
    3027        32483 :   x5 = XEXP (x4, 0);
    3028        32483 :   if (GET_MODE (x5) != i2
    3029        32483 :       || !nonimmediate_operand (operands[1], i1))
    3030         2858 :     return -1;
    3031        29625 :   x6 = XEXP (x4, 1);
    3032        29625 :   if (GET_MODE (x6) != i2
    3033        29625 :       || !nonimmediate_operand (operands[2], i1)
    3034        58214 :       || pattern727 (x1, 
    3035              : i1, 
    3036              : i2) != 0)
    3037         1036 :     return -1;
    3038              :   return 0;
    3039              : }
    3040              : 
    3041              : int
    3042       212196 : pattern737 (rtx x1, machine_mode i1)
    3043              : {
    3044       212196 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3045       212196 :   rtx x2, x3, x4, x5, x6, x7, x8;
    3046       212196 :   int res ATTRIBUTE_UNUSED;
    3047       212196 :   if (GET_CODE (x1) != SET)
    3048              :     return -1;
    3049       167223 :   x2 = XEXP (x1, 1);
    3050       167223 :   operands[5] = x2;
    3051       167223 :   if (!register_operand (operands[5], i1))
    3052              :     return -1;
    3053        56273 :   x3 = XEXP (x1, 0);
    3054        56273 :   if (!rtx_equal_p (x3, operands[1]))
    3055              :     return -1;
    3056        16280 :   x4 = PATTERN (peep2_next_insn (3));
    3057        16280 :   if (GET_CODE (x4) != SET)
    3058              :     return -1;
    3059        15766 :   x5 = XEXP (x4, 1);
    3060        15766 :   if (GET_CODE (x5) != COMPARE)
    3061              :     return -1;
    3062         2330 :   x6 = XEXP (x5, 1);
    3063         2330 :   if (x6 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
    3064              :     return -1;
    3065          653 :   x7 = XEXP (x4, 0);
    3066          653 :   if (GET_CODE (x7) != REG
    3067          653 :       || REGNO (x7) != 17)
    3068              :     return -1;
    3069          653 :   x8 = XEXP (x5, 0);
    3070          653 :   if (!rtx_equal_p (x8, operands[5]))
    3071              :     return -1;
    3072              :   return 0;
    3073              : }
    3074              : 
    3075              : int
    3076        59245 : pattern747 (rtx x1, machine_mode i1)
    3077              : {
    3078        59245 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3079        59245 :   rtx x2;
    3080        59245 :   int res ATTRIBUTE_UNUSED;
    3081        59245 :   if (!register_operand (operands[0], i1)
    3082        59245 :       || GET_MODE (x1) != i1)
    3083              :     return -1;
    3084        57186 :   x2 = XEXP (x1, 0);
    3085        57186 :   if (GET_MODE (x2) != i1
    3086        57186 :       || !register_operand (operands[1], i1)
    3087       113417 :       || !nonimmediate_operand (operands[2], i1))
    3088         6829 :     return -1;
    3089              :   return 0;
    3090              : }
    3091              : 
    3092              : int
    3093        12331 : pattern752 (machine_mode i1)
    3094              : {
    3095        12331 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3096        12331 :   int res ATTRIBUTE_UNUSED;
    3097        12331 :   if (!register_operand (operands[0], i1)
    3098        12331 :       || !sse_comparison_operator (operands[3], i1)
    3099        11673 :       || !register_operand (operands[1], i1)
    3100        22720 :       || !nonimmediate_operand (operands[2], i1))
    3101         2805 :     return -1;
    3102              :   return 0;
    3103              : }
    3104              : 
    3105              : int
    3106       156340 : pattern755 (rtx x1, machine_mode i1)
    3107              : {
    3108       156340 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3109       156340 :   int res ATTRIBUTE_UNUSED;
    3110       156340 :   if (!register_operand (operands[0], i1)
    3111       155789 :       || !binary_fp_operator (operands[3], i1)
    3112       155789 :       || GET_MODE (x1) != i1
    3113       312129 :       || !register_operand (operands[2], i1))
    3114        17042 :     return -1;
    3115       139298 :   switch (GET_MODE (operands[1]))
    3116              :     {
    3117           88 :     case E_HImode:
    3118           88 :       if (!nonimmediate_operand (operands[1], E_HImode))
    3119              :         return -1;
    3120              :       return 0;
    3121              : 
    3122        81940 :     case E_SImode:
    3123        81940 :       if (!nonimmediate_operand (operands[1], E_SImode))
    3124              :         return -1;
    3125              :       return 1;
    3126              : 
    3127              :     default:
    3128              :       return -1;
    3129              :     }
    3130              : }
    3131              : 
    3132              : int
    3133        24292 : pattern767 (rtx x1, machine_mode i1, machine_mode i2)
    3134              : {
    3135        24292 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3136        24292 :   rtx x2, x3;
    3137        24292 :   int res ATTRIBUTE_UNUSED;
    3138        24292 :   if (!nonimmediate_operand (operands[0], i2)
    3139        24234 :       || GET_MODE (x1) != i2
    3140        48526 :       || !nonimmediate_operand (operands[1], i2))
    3141         1311 :     return -1;
    3142        22981 :   x2 = XEXP (x1, 1);
    3143        22981 :   x3 = XEXP (x2, 0);
    3144        22981 :   operands[2] = x3;
    3145        22981 :   if (!nonimmediate_operand (operands[2], i1))
    3146              :     return -1;
    3147              :   return 0;
    3148              : }
    3149              : 
    3150              : int
    3151         1352 : pattern774 (rtx x1, machine_mode i1)
    3152              : {
    3153         1352 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3154         1352 :   int res ATTRIBUTE_UNUSED;
    3155         1352 :   if (!register_operand (operands[0], i1)
    3156         1352 :       || GET_MODE (x1) != i1)
    3157              :     return -1;
    3158         1339 :   switch (GET_MODE (operands[1]))
    3159              :     {
    3160            0 :     case E_HFmode:
    3161            0 :       if (!nonimmediate_operand (operands[1], E_HFmode))
    3162              :         return -1;
    3163              :       return 0;
    3164              : 
    3165          156 :     case E_SFmode:
    3166          156 :       if (!nonimmediate_operand (operands[1], E_SFmode))
    3167              :         return -1;
    3168              :       return 1;
    3169              : 
    3170         1183 :     case E_DFmode:
    3171         1183 :       if (!nonimmediate_operand (operands[1], E_DFmode))
    3172              :         return -1;
    3173              :       return 2;
    3174              : 
    3175              :     default:
    3176              :       return -1;
    3177              :     }
    3178              : }
    3179              : 
    3180              : int
    3181         3922 : pattern783 (rtx x1, machine_mode i1)
    3182              : {
    3183         3922 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3184         3922 :   rtx x2, x3, x4;
    3185         3922 :   int res ATTRIBUTE_UNUSED;
    3186         3922 :   if (!register_operand (operands[0], i1)
    3187         3922 :       || GET_MODE (x1) != i1)
    3188              :     return -1;
    3189         3860 :   x2 = XVECEXP (x1, 0, 0);
    3190         3860 :   if (GET_MODE (x2) != i1)
    3191              :     return -1;
    3192         3860 :   x3 = XEXP (x2, 0);
    3193         3860 :   if (GET_MODE (x3) != i1)
    3194              :     return -1;
    3195         3860 :   x4 = XEXP (x3, 0);
    3196         3860 :   if (GET_MODE (x4) != i1
    3197         3860 :       || !register_operand (operands[1], i1)
    3198         3838 :       || !nonimmediate_operand (operands[2], i1)
    3199         7666 :       || !nonimm_or_0_operand (operands[3], i1))
    3200          102 :     return -1;
    3201              :   return 0;
    3202              : }
    3203              : 
    3204              : int
    3205        21707 : pattern789 (rtx x1, machine_mode i1)
    3206              : {
    3207        21707 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3208        21707 :   int res ATTRIBUTE_UNUSED;
    3209        21707 :   if (!register_operand (operands[0], i1)
    3210        21657 :       || GET_MODE (x1) != i1
    3211        21657 :       || !nonimmediate_operand (operands[1], i1)
    3212        42438 :       || !register_operand (operands[2], i1))
    3213         3187 :     return -1;
    3214              :   return 0;
    3215              : }
    3216              : 
    3217              : int
    3218         4209 : pattern796 (rtx x1)
    3219              : {
    3220         4209 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3221         4209 :   rtx x2;
    3222         4209 :   int res ATTRIBUTE_UNUSED;
    3223         4209 :   x2 = XVECEXP (x1, 0, 1);
    3224         4209 :   if (!rtx_equal_p (x2, operands[0]))
    3225              :     return -1;
    3226         3120 :   switch (GET_MODE (operands[0]))
    3227              :     {
    3228          146 :     case E_V64QImode:
    3229          146 :       return pattern795 (x1, 
    3230              : E_V64QImode, 
    3231          146 : E_DImode); /* [-1, 0] */
    3232              : 
    3233           62 :     case E_V32QImode:
    3234           62 :       if (pattern795 (x1, 
    3235              : E_V32QImode, 
    3236              : E_SImode) != 0)
    3237              :         return -1;
    3238              :       return 1;
    3239              : 
    3240          102 :     case E_V16QImode:
    3241          102 :       if (pattern795 (x1, 
    3242              : E_V16QImode, 
    3243              : E_HImode) != 0)
    3244              :         return -1;
    3245              :       return 2;
    3246              : 
    3247          225 :     case E_V32HImode:
    3248          225 :       if (pattern795 (x1, 
    3249              : E_V32HImode, 
    3250              : E_SImode) != 0)
    3251              :         return -1;
    3252              :       return 3;
    3253              : 
    3254           98 :     case E_V16HImode:
    3255           98 :       if (pattern795 (x1, 
    3256              : E_V16HImode, 
    3257              : E_HImode) != 0)
    3258              :         return -1;
    3259              :       return 4;
    3260              : 
    3261           98 :     case E_V8HImode:
    3262           98 :       if (pattern795 (x1, 
    3263              : E_V8HImode, 
    3264              : E_QImode) != 0)
    3265              :         return -1;
    3266              :       return 5;
    3267              : 
    3268          183 :     case E_V16SImode:
    3269          183 :       if (pattern795 (x1, 
    3270              : E_V16SImode, 
    3271              : E_HImode) != 0)
    3272              :         return -1;
    3273              :       return 6;
    3274              : 
    3275          144 :     case E_V8SImode:
    3276          144 :       if (pattern795 (x1, 
    3277              : E_V8SImode, 
    3278              : E_QImode) != 0)
    3279              :         return -1;
    3280              :       return 7;
    3281              : 
    3282          139 :     case E_V4SImode:
    3283          139 :       if (pattern795 (x1, 
    3284              : E_V4SImode, 
    3285              : E_QImode) != 0)
    3286              :         return -1;
    3287              :       return 8;
    3288              : 
    3289          547 :     case E_V8DImode:
    3290          547 :       if (pattern795 (x1, 
    3291              : E_V8DImode, 
    3292              : E_QImode) != 0)
    3293              :         return -1;
    3294              :       return 9;
    3295              : 
    3296          125 :     case E_V4DImode:
    3297          125 :       if (pattern795 (x1, 
    3298              : E_V4DImode, 
    3299              : E_QImode) != 0)
    3300              :         return -1;
    3301              :       return 10;
    3302              : 
    3303          140 :     case E_V2DImode:
    3304          140 :       if (pattern795 (x1, 
    3305              : E_V2DImode, 
    3306              : E_QImode) != 0)
    3307              :         return -1;
    3308              :       return 11;
    3309              : 
    3310           81 :     case E_V32HFmode:
    3311           81 :       if (pattern795 (x1, 
    3312              : E_V32HFmode, 
    3313              : E_SImode) != 0)
    3314              :         return -1;
    3315              :       return 12;
    3316              : 
    3317          129 :     case E_V16HFmode:
    3318          129 :       if (pattern795 (x1, 
    3319              : E_V16HFmode, 
    3320              : E_HImode) != 0)
    3321              :         return -1;
    3322              :       return 13;
    3323              : 
    3324           81 :     case E_V8HFmode:
    3325           81 :       if (pattern795 (x1, 
    3326              : E_V8HFmode, 
    3327              : E_QImode) != 0)
    3328              :         return -1;
    3329              :       return 14;
    3330              : 
    3331            0 :     case E_V32BFmode:
    3332            0 :       if (pattern795 (x1, 
    3333              : E_V32BFmode, 
    3334              : E_SImode) != 0)
    3335              :         return -1;
    3336              :       return 15;
    3337              : 
    3338            0 :     case E_V16BFmode:
    3339            0 :       if (pattern795 (x1, 
    3340              : E_V16BFmode, 
    3341              : E_HImode) != 0)
    3342              :         return -1;
    3343              :       return 16;
    3344              : 
    3345            0 :     case E_V8BFmode:
    3346            0 :       if (pattern795 (x1, 
    3347              : E_V8BFmode, 
    3348              : E_QImode) != 0)
    3349              :         return -1;
    3350              :       return 17;
    3351              : 
    3352          110 :     case E_V16SFmode:
    3353          110 :       if (pattern795 (x1, 
    3354              : E_V16SFmode, 
    3355              : E_HImode) != 0)
    3356              :         return -1;
    3357              :       return 18;
    3358              : 
    3359          146 :     case E_V8SFmode:
    3360          146 :       if (pattern795 (x1, 
    3361              : E_V8SFmode, 
    3362              : E_QImode) != 0)
    3363              :         return -1;
    3364              :       return 19;
    3365              : 
    3366          122 :     case E_V4SFmode:
    3367          122 :       if (pattern795 (x1, 
    3368              : E_V4SFmode, 
    3369              : E_QImode) != 0)
    3370              :         return -1;
    3371              :       return 20;
    3372              : 
    3373          161 :     case E_V8DFmode:
    3374          161 :       if (pattern795 (x1, 
    3375              : E_V8DFmode, 
    3376              : E_QImode) != 0)
    3377              :         return -1;
    3378              :       return 21;
    3379              : 
    3380          158 :     case E_V4DFmode:
    3381          158 :       if (pattern795 (x1, 
    3382              : E_V4DFmode, 
    3383              : E_QImode) != 0)
    3384              :         return -1;
    3385              :       return 22;
    3386              : 
    3387          123 :     case E_V2DFmode:
    3388          123 :       if (pattern795 (x1, 
    3389              : E_V2DFmode, 
    3390              : E_QImode) != 0)
    3391              :         return -1;
    3392              :       return 23;
    3393              : 
    3394              :     default:
    3395              :       return -1;
    3396              :     }
    3397              : }
    3398              : 
    3399              : int
    3400            4 : pattern839 (rtx x1)
    3401              : {
    3402            4 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3403            4 :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
    3404            4 :   rtx x10, x11;
    3405            4 :   int res ATTRIBUTE_UNUSED;
    3406            4 :   x2 = XVECEXP (x1, 0, 1);
    3407            4 :   if (GET_CODE (x2) != CLOBBER)
    3408              :     return -1;
    3409            0 :   x3 = XVECEXP (x1, 0, 2);
    3410            0 :   if (GET_CODE (x3) != CLOBBER)
    3411              :     return -1;
    3412            0 :   x4 = XEXP (x3, 0);
    3413            0 :   if (GET_CODE (x4) != REG
    3414            0 :       || REGNO (x4) != 17
    3415            0 :       || GET_MODE (x4) != E_CCmode)
    3416              :     return -1;
    3417            0 :   x5 = XVECEXP (x1, 0, 0);
    3418            0 :   x6 = XEXP (x5, 0);
    3419            0 :   operands[0] = x6;
    3420            0 :   x7 = XEXP (x5, 1);
    3421            0 :   x8 = XEXP (x7, 0);
    3422            0 :   x9 = XEXP (x8, 0);
    3423            0 :   operands[1] = x9;
    3424            0 :   if (!register_operand (operands[1], E_SImode))
    3425              :     return -1;
    3426            0 :   x10 = XEXP (x8, 1);
    3427            0 :   operands[2] = x10;
    3428            0 :   if (!nonimmediate_operand (operands[2], E_SImode))
    3429              :     return -1;
    3430            0 :   x11 = XEXP (x2, 0);
    3431            0 :   operands[3] = x11;
    3432            0 :   if (!scratch_operand (operands[3], E_SImode))
    3433              :     return -1;
    3434              :   return 0;
    3435              : }
    3436              : 
    3437              : int
    3438         1552 : pattern850 (rtx x1, int i1, int i2, int i3, int i4)
    3439              : {
    3440         1552 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3441         1552 :   rtx x2, x3, x4, x5;
    3442         1552 :   int res ATTRIBUTE_UNUSED;
    3443         1552 :   x2 = XVECEXP (x1, 0, 8);
    3444         1552 :   if (x2 != const_int_rtx[MAX_SAVED_CONST_INT + i4])
    3445              :     return -1;
    3446         1527 :   x3 = XVECEXP (x1, 0, 9);
    3447         1527 :   if (x3 != const_int_rtx[MAX_SAVED_CONST_INT + i3])
    3448              :     return -1;
    3449         1527 :   x4 = XVECEXP (x1, 0, 10);
    3450         1527 :   if (x4 != const_int_rtx[MAX_SAVED_CONST_INT + i2])
    3451              :     return -1;
    3452         1527 :   x5 = XVECEXP (x1, 0, 11);
    3453         1527 :   if (x5 != const_int_rtx[MAX_SAVED_CONST_INT + i1])
    3454            0 :     return -1;
    3455              :   return 0;
    3456              : }
    3457              : 
    3458              : int
    3459     14202914 : pattern856 ()
    3460              : {
    3461     14202914 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3462     14202914 :   int res ATTRIBUTE_UNUSED;
    3463     14202914 :   switch (GET_MODE (operands[0]))
    3464              :     {
    3465      6606240 :     case E_DImode:
    3466      6606240 :       if (!nonimmediate_operand (operands[0], E_DImode)
    3467      6606240 :           || !general_operand (operands[1], E_DImode))
    3468       477903 :         return -1;
    3469              :       return 0;
    3470              : 
    3471       393095 :     case E_TImode:
    3472       393095 :       if (!nonimmediate_operand (operands[0], E_TImode)
    3473       393095 :           || !general_operand (operands[1], E_TImode))
    3474         2070 :         return -1;
    3475              :       return 1;
    3476              : 
    3477              :     default:
    3478              :       return -1;
    3479              :     }
    3480              : }
    3481              : 
    3482              : int
    3483        28951 : pattern860 (rtx x1)
    3484              : {
    3485        28951 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3486        28951 :   rtx x2, x3, x4, x5, x6, x7;
    3487        28951 :   int res ATTRIBUTE_UNUSED;
    3488        28951 :   x2 = XVECEXP (x1, 0, 2);
    3489        28951 :   if (maybe_ne (SUBREG_BYTE (x2), 0))
    3490              :     return -1;
    3491        28951 :   x3 = XEXP (x2, 0);
    3492        28951 :   if (GET_CODE (x3) != EQ)
    3493              :     return -1;
    3494         3083 :   x4 = XEXP (x3, 0);
    3495         3083 :   if (GET_CODE (x4) != EQ)
    3496              :     return -1;
    3497          424 :   x5 = XEXP (x4, 0);
    3498          424 :   operands[3] = x5;
    3499          424 :   x6 = XEXP (x4, 1);
    3500          424 :   operands[4] = x6;
    3501          424 :   x7 = XEXP (x3, 1);
    3502          424 :   operands[5] = x7;
    3503          424 :   switch (GET_MODE (operands[0]))
    3504              :     {
    3505           75 :     case E_V8QImode:
    3506           75 :       if (!register_operand (operands[0], E_V8QImode)
    3507           75 :           || GET_MODE (x1) != E_V8QImode
    3508           75 :           || !register_operand (operands[1], E_V8QImode)
    3509           42 :           || !register_operand (operands[2], E_V8QImode)
    3510           96 :           || GET_MODE (x2) != E_V8QImode)
    3511           54 :         return -1;
    3512           21 :       switch (GET_MODE (x3))
    3513              :         {
    3514           21 :         case E_V4HImode:
    3515           21 :           return pattern859 (x4, 
    3516           21 : E_V4HImode); /* [-1, 0] */
    3517              : 
    3518            0 :         case E_V2SImode:
    3519            0 :           if (pattern859 (x4, 
    3520              : E_V2SImode) != 0)
    3521              :             return -1;
    3522              :           return 1;
    3523              : 
    3524              :         default:
    3525              :           return -1;
    3526              :         }
    3527              : 
    3528          315 :     case E_V4QImode:
    3529          315 :       if (!register_operand (operands[0], E_V4QImode)
    3530          315 :           || GET_MODE (x1) != E_V4QImode
    3531          315 :           || !register_operand (operands[1], E_V4QImode)
    3532          174 :           || !register_operand (operands[2], E_V4QImode)
    3533           93 :           || GET_MODE (x2) != E_V4QImode
    3534           93 :           || GET_MODE (x3) != E_V2HImode
    3535          408 :           || pattern859 (x4, 
    3536              : E_V2HImode) != 0)
    3537          270 :         return -1;
    3538              :       return 2;
    3539              : 
    3540              :     default:
    3541              :       return -1;
    3542              :     }
    3543              : }
    3544              : 
    3545              : int
    3546         1034 : pattern878 (rtx x1, machine_mode i1)
    3547              : {
    3548         1034 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3549         1034 :   rtx x2;
    3550         1034 :   int res ATTRIBUTE_UNUSED;
    3551         1034 :   if (!register_operand (operands[0], i1)
    3552         1018 :       || GET_MODE (x1) != i1
    3553         1018 :       || !bcst_vector_operand (operands[1], i1)
    3554         2048 :       || !bcst_vector_operand (operands[2], i1))
    3555           55 :     return -1;
    3556          979 :   x2 = XEXP (x1, 2);
    3557          979 :   if (GET_MODE (x2) != i1
    3558          979 :       || !bcst_vector_operand (operands[3], i1))
    3559           55 :     return -1;
    3560              :   return 0;
    3561              : }
    3562              : 
    3563              : int
    3564         1392 : pattern887 (rtx x1, machine_mode i1)
    3565              : {
    3566         1392 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3567         1392 :   rtx x2, x3;
    3568         1392 :   int res ATTRIBUTE_UNUSED;
    3569         1392 :   if (!register_operand (operands[0], i1)
    3570         1392 :       || GET_MODE (x1) != i1)
    3571              :     return -1;
    3572         1328 :   x2 = XVECEXP (x1, 0, 0);
    3573         1328 :   if (GET_MODE (x2) != i1)
    3574              :     return -1;
    3575         1328 :   x3 = XVECEXP (x2, 0, 0);
    3576         1328 :   switch (GET_MODE (x3))
    3577              :     {
    3578          488 :     case E_HFmode:
    3579          488 :       if (!register_operand (operands[1], E_V8HFmode))
    3580              :         return -1;
    3581              :       return 0;
    3582              : 
    3583          420 :     case E_SFmode:
    3584          420 :       if (!register_operand (operands[1], E_V4SFmode))
    3585              :         return -1;
    3586              :       return 1;
    3587              : 
    3588          420 :     case E_DFmode:
    3589          420 :       if (!register_operand (operands[1], E_V2DFmode))
    3590              :         return -1;
    3591              :       return 2;
    3592              : 
    3593              :     default:
    3594              :       return -1;
    3595              :     }
    3596              : }
    3597              : 
    3598              : int
    3599           11 : pattern897 (rtx x1, machine_mode i1, machine_mode i2)
    3600              : {
    3601           11 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3602           11 :   rtx x2, x3;
    3603           11 :   int res ATTRIBUTE_UNUSED;
    3604           11 :   if (!register_operand (operands[0], i1)
    3605           11 :       || GET_MODE (x1) != i1)
    3606              :     return -1;
    3607           11 :   x2 = XEXP (x1, 0);
    3608           11 :   if (GET_MODE (x2) != i1)
    3609              :     return -1;
    3610           11 :   x3 = XEXP (x2, 0);
    3611           11 :   if (GET_MODE (x3) != i2
    3612           11 :       || !nonimmediate_operand (operands[1], i2)
    3613           21 :       || !register_operand (operands[2], i1))
    3614            2 :     return -1;
    3615              :   return 0;
    3616              : }
    3617              : 
    3618              : int
    3619          901 : pattern907 (rtx x1, machine_mode i1)
    3620              : {
    3621          901 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3622          901 :   rtx x2;
    3623          901 :   int res ATTRIBUTE_UNUSED;
    3624          901 :   if (!register_operand (operands[0], i1)
    3625          901 :       || GET_MODE (x1) != i1)
    3626              :     return -1;
    3627          863 :   x2 = XEXP (x1, 0);
    3628          863 :   if (GET_MODE (x2) != i1
    3629          863 :       || !nonimm_or_0_operand (operands[2], i1)
    3630         1712 :       || !register_operand (operands[3], E_QImode))
    3631           58 :     return -1;
    3632          805 :   switch (GET_MODE (operands[1]))
    3633              :     {
    3634          378 :     case E_V4SImode:
    3635          378 :       if (!nonimmediate_operand (operands[1], E_V4SImode))
    3636              :         return -1;
    3637              :       return 0;
    3638              : 
    3639          427 :     case E_V4DImode:
    3640          427 :       if (!nonimmediate_operand (operands[1], E_V4DImode))
    3641              :         return -1;
    3642              :       return 1;
    3643              : 
    3644              :     default:
    3645              :       return -1;
    3646              :     }
    3647              : }
    3648              : 
    3649              : int
    3650         3955 : pattern918 (rtx x1, machine_mode i1, machine_mode i2)
    3651              : {
    3652         3955 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3653         3955 :   int res ATTRIBUTE_UNUSED;
    3654         3955 :   if (!register_operand (operands[0], i2)
    3655         3764 :       || GET_MODE (x1) != i2
    3656         3764 :       || !register_operand (operands[1], i2)
    3657         3712 :       || !nonimm_or_0_operand (operands[2], i2)
    3658         7625 :       || !register_operand (operands[3], i1))
    3659          654 :     return -1;
    3660              :   return 0;
    3661              : }
    3662              : 
    3663              : int
    3664          225 : pattern922 (rtx x1, machine_mode i1, machine_mode i2)
    3665              : {
    3666          225 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3667          225 :   int res ATTRIBUTE_UNUSED;
    3668          225 :   if (!register_operand (operands[0], i2)
    3669          213 :       || GET_MODE (x1) != i2
    3670          213 :       || !register_operand (operands[1], i2)
    3671          210 :       || !register_operand (operands[2], i1)
    3672          435 :       || !nonimmediate_operand (operands[3], i1))
    3673           15 :     return -1;
    3674              :   return 0;
    3675              : }
    3676              : 
    3677              : int
    3678          241 : pattern927 (rtx x1, machine_mode i1)
    3679              : {
    3680          241 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3681          241 :   int res ATTRIBUTE_UNUSED;
    3682          241 :   if (!register_operand (operands[0], i1)
    3683          232 :       || GET_MODE (x1) != i1
    3684          232 :       || !nonimmediate_operand (operands[1], i1)
    3685          223 :       || !nonimmediate_operand (operands[2], i1)
    3686          464 :       || !nonimmediate_operand (operands[3], i1))
    3687           18 :     return -1;
    3688              :   return 0;
    3689              : }
    3690              : 
    3691              : int
    3692          232 : pattern930 (rtx x1, machine_mode i1)
    3693              : {
    3694          232 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3695          232 :   rtx x2, x3;
    3696          232 :   int res ATTRIBUTE_UNUSED;
    3697          232 :   if (!register_operand (operands[0], i1)
    3698          232 :       || GET_MODE (x1) != i1)
    3699              :     return -1;
    3700          223 :   x2 = XEXP (x1, 0);
    3701          223 :   if (GET_MODE (x2) != i1
    3702          223 :       || !nonimmediate_operand (operands[1], i1)
    3703          443 :       || !nonimmediate_operand (operands[2], i1))
    3704            3 :     return -1;
    3705          220 :   x3 = XEXP (x1, 2);
    3706          220 :   if (GET_MODE (x3) != i1
    3707          220 :       || !nonimmediate_operand (operands[3], i1))
    3708            0 :     return -1;
    3709              :   return 0;
    3710              : }
    3711              : 
    3712              : int
    3713        51253 : pattern936 (rtx x1, machine_mode i1)
    3714              : {
    3715        51253 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3716        51253 :   rtx x2;
    3717        51253 :   int res ATTRIBUTE_UNUSED;
    3718        51253 :   if (!register_operand (operands[0], i1)
    3719        51253 :       || GET_MODE (x1) != i1)
    3720              :     return -1;
    3721        50619 :   x2 = XEXP (x1, 0);
    3722        50619 :   if (GET_MODE (x2) != i1
    3723        50619 :       || !bcst_vector_operand (operands[1], i1)
    3724       100825 :       || !bcst_vector_operand (operands[2], i1))
    3725         1599 :     return -1;
    3726              :   return 0;
    3727              : }
    3728              : 
    3729              : int
    3730      2583037 : pattern940 (rtx x1)
    3731              : {
    3732      2583037 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3733      2583037 :   rtx x2, x3, x4, x5, x6, x7;
    3734      2583037 :   int res ATTRIBUTE_UNUSED;
    3735      2583037 :   x2 = XEXP (x1, 1);
    3736      2583037 :   x3 = XEXP (x2, 0);
    3737      2583037 :   switch (GET_CODE (x3))
    3738              :     {
    3739      2275291 :     case REG:
    3740      2275291 :     case SUBREG:
    3741      2275291 :     case MEM:
    3742      2275291 :       return pattern938 (x1); /* [-1, 7] */
    3743              : 
    3744        36066 :     case ASHIFT:
    3745        36066 :       x4 = XEXP (x1, 0);
    3746        36066 :       operands[0] = x4;
    3747        36066 :       x5 = XEXP (x3, 0);
    3748        36066 :       operands[1] = x5;
    3749        36066 :       x6 = XEXP (x3, 1);
    3750        36066 :       operands[2] = x6;
    3751        36066 :       if (!const_int_operand (operands[2], E_QImode))
    3752              :         return -1;
    3753        35661 :       x7 = XEXP (x2, 1);
    3754        35661 :       operands[3] = x7;
    3755        35661 :       if (!const_int_operand (operands[3], E_QImode))
    3756              :         return -1;
    3757        35661 :       switch (GET_MODE (operands[0]))
    3758              :         {
    3759        11821 :         case E_DImode:
    3760        11821 :           if (pattern939 (x2, 
    3761              : E_DImode) != 0)
    3762              :             return -1;
    3763              :           return 8;
    3764              : 
    3765        14744 :         case E_TImode:
    3766        14744 :           if (pattern939 (x2, 
    3767              : E_TImode) != 0)
    3768              :             return -1;
    3769              :           return 9;
    3770              : 
    3771              :         default:
    3772              :           return -1;
    3773              :         }
    3774              : 
    3775              :     default:
    3776              :       return -1;
    3777              :     }
    3778              : }
    3779              : 
    3780              : int
    3781        21182 : pattern957 (rtx x1, machine_mode i1, machine_mode i2)
    3782              : {
    3783        21182 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3784        21182 :   rtx x2, x3;
    3785        21182 :   int res ATTRIBUTE_UNUSED;
    3786        21182 :   if (!nonimmediate_operand (operands[0], i2)
    3787        21182 :       || GET_MODE (x1) != i2)
    3788              :     return -1;
    3789        21182 :   x2 = XEXP (x1, 0);
    3790        21182 :   if (GET_MODE (x2) != i2
    3791        21182 :       || !register_operand (operands[1], i2))
    3792           11 :     return -1;
    3793        21171 :   x3 = XEXP (x1, 1);
    3794        21171 :   if (GET_MODE (x3) != i2
    3795        21171 :       || !nonimmediate_operand (operands[3], i1))
    3796        13496 :     return -1;
    3797              :   return 0;
    3798              : }
    3799              : 
    3800              : int
    3801      5917514 : pattern965 (rtx x1, machine_mode i1, machine_mode i2)
    3802              : {
    3803      5917514 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3804      5917514 :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
    3805      5917514 :   rtx x10, x11, x12, x13, x14, x15, x16, x17;
    3806      5917514 :   rtx x18, x19, x20, x21, x22, x23, x24, x25;
    3807      5917514 :   rtx x26, x27, x28, x29, x30, x31, x32, x33;
    3808      5917514 :   rtx x34, x35, x36, x37, x38;
    3809      5917514 :   int res ATTRIBUTE_UNUSED;
    3810      5917514 :   x2 = XEXP (x1, 0);
    3811      5917514 :   operands[6] = x2;
    3812      5917514 :   x3 = XEXP (x1, 1);
    3813      5917514 :   operands[7] = x3;
    3814      5917514 :   if (!memory_operand (operands[7], i1))
    3815              :     return -1;
    3816      1547503 :   x4 = PATTERN (peep2_next_insn (1));
    3817      1547503 :   x5 = XEXP (x4, 1);
    3818      1547503 :   operands[9] = x5;
    3819      1547503 :   if (!memory_operand (operands[9], i1))
    3820              :     return -1;
    3821       917488 :   x6 = PATTERN (peep2_next_insn (2));
    3822       917488 :   if (GET_CODE (x6) != PARALLEL
    3823        79031 :       || XVECLEN (x6, 0) != 2)
    3824              :     return -1;
    3825        77443 :   x7 = XVECEXP (x6, 0, 0);
    3826        77443 :   if (GET_CODE (x7) != SET)
    3827              :     return -1;
    3828        77425 :   x8 = XEXP (x7, 1);
    3829        77425 :   if (GET_CODE (x8) != COMPARE
    3830         6340 :       || GET_MODE (x8) != E_CCCmode)
    3831              :     return -1;
    3832         2102 :   x9 = XEXP (x8, 0);
    3833         2102 :   if (GET_CODE (x9) != ZERO_EXTEND
    3834           41 :       || GET_MODE (x9) != i2)
    3835              :     return -1;
    3836           41 :   x10 = XEXP (x8, 1);
    3837           41 :   if (GET_CODE (x10) != PLUS
    3838           41 :       || GET_MODE (x10) != i2)
    3839              :     return -1;
    3840           41 :   x11 = XEXP (x10, 0);
    3841           41 :   if (!ix86_carry_flag_operator (x11, i2))
    3842              :     return -1;
    3843           41 :   operands[4] = x11;
    3844           41 :   x12 = XEXP (x11, 1);
    3845           41 :   if (x12 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
    3846              :     return -1;
    3847           41 :   x13 = XEXP (x10, 1);
    3848           41 :   if (GET_CODE (x13) != ZERO_EXTEND
    3849           41 :       || GET_MODE (x13) != i2)
    3850              :     return -1;
    3851           41 :   x14 = XEXP (x7, 0);
    3852           41 :   if (GET_CODE (x14) != REG
    3853           41 :       || REGNO (x14) != 17
    3854           82 :       || GET_MODE (x14) != E_CCCmode)
    3855              :     return -1;
    3856           41 :   x15 = XVECEXP (x6, 0, 1);
    3857           41 :   if (GET_CODE (x15) != SET)
    3858              :     return -1;
    3859            6 :   x16 = XEXP (x15, 1);
    3860            6 :   if (GET_CODE (x16) != MINUS
    3861            6 :       || GET_MODE (x16) != i1)
    3862              :     return -1;
    3863            6 :   x17 = XEXP (x16, 0);
    3864            6 :   if (GET_CODE (x17) != MINUS
    3865            6 :       || GET_MODE (x17) != i1)
    3866              :     return -1;
    3867            6 :   x18 = XEXP (x17, 1);
    3868            6 :   if (!ix86_carry_flag_operator (x18, i1))
    3869              :     return -1;
    3870            6 :   operands[5] = x18;
    3871            6 :   x19 = XEXP (x18, 1);
    3872            6 :   if (x19 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
    3873              :     return -1;
    3874            6 :   x20 = XEXP (x9, 0);
    3875            6 :   operands[0] = x20;
    3876            6 :   if (!general_reg_operand (operands[0], i1))
    3877              :     return -1;
    3878            6 :   x21 = XEXP (x11, 0);
    3879            6 :   operands[3] = x21;
    3880            6 :   if (!flags_reg_operand (operands[3], E_VOIDmode))
    3881              :     return -1;
    3882            6 :   x22 = XEXP (x13, 0);
    3883            6 :   operands[2] = x22;
    3884            6 :   if (!general_reg_operand (operands[2], i1))
    3885              :     return -1;
    3886            6 :   x23 = XEXP (x17, 0);
    3887            6 :   if (!rtx_equal_p (x23, operands[0]))
    3888              :     return -1;
    3889            6 :   x24 = XEXP (x18, 0);
    3890            6 :   if (!rtx_equal_p (x24, operands[3]))
    3891              :     return -1;
    3892            6 :   x25 = XEXP (x16, 1);
    3893            6 :   if (!rtx_equal_p (x25, operands[2]))
    3894              :     return -1;
    3895            6 :   x26 = XEXP (x15, 0);
    3896            6 :   if (!rtx_equal_p (x26, operands[0]))
    3897              :     return -1;
    3898            6 :   x27 = PATTERN (peep2_next_insn (3));
    3899            6 :   if (GET_CODE (x27) != SET)
    3900              :     return -1;
    3901            6 :   x28 = XEXP (x27, 1);
    3902            6 :   switch (GET_CODE (x28))
    3903              :     {
    3904            0 :     case REG:
    3905            0 :       if (!rtx_equal_p (x28, operands[0]))
    3906              :         return -1;
    3907            0 :       x29 = XEXP (x27, 0);
    3908            0 :       operands[1] = x29;
    3909            0 :       if (!memory_operand (operands[1], i1))
    3910              :         return -1;
    3911              :       return 0;
    3912              : 
    3913            6 :     case LTU:
    3914            6 :       if (peep2_current_count < 5
    3915            6 :           || peep2_current_count < 6
    3916            6 :           || GET_MODE (x28) != E_QImode)
    3917              :         return -1;
    3918            6 :       x30 = XEXP (x28, 0);
    3919            6 :       if (GET_CODE (x30) != REG
    3920            6 :           || REGNO (x30) != 17
    3921           12 :           || GET_MODE (x30) != E_CCCmode)
    3922              :         return -1;
    3923            6 :       x31 = XEXP (x28, 1);
    3924            6 :       if (x31 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
    3925              :         return -1;
    3926            6 :       x29 = XEXP (x27, 0);
    3927            6 :       operands[10] = x29;
    3928            6 :       if (!general_reg_operand (operands[10], E_QImode))
    3929              :         return -1;
    3930            6 :       x32 = PATTERN (peep2_next_insn (4));
    3931            6 :       if (GET_CODE (x32) != SET)
    3932              :         return -1;
    3933            0 :       x33 = XEXP (x32, 1);
    3934            0 :       if (GET_CODE (x33) != ZERO_EXTEND
    3935            0 :           || GET_MODE (x33) != i1)
    3936              :         return -1;
    3937            0 :       x34 = XEXP (x32, 0);
    3938            0 :       operands[11] = x34;
    3939            0 :       if (!general_reg_operand (operands[11], i1))
    3940              :         return -1;
    3941            0 :       x35 = XEXP (x33, 0);
    3942            0 :       if (!rtx_equal_p (x35, operands[10]))
    3943              :         return -1;
    3944            0 :       x36 = PATTERN (peep2_next_insn (5));
    3945            0 :       if (GET_CODE (x36) != SET)
    3946              :         return -1;
    3947            0 :       x37 = XEXP (x36, 0);
    3948            0 :       operands[1] = x37;
    3949            0 :       if (!memory_operand (operands[1], i1))
    3950              :         return -1;
    3951            0 :       x38 = XEXP (x36, 1);
    3952            0 :       if (!rtx_equal_p (x38, operands[0]))
    3953              :         return -1;
    3954              :       return 1;
    3955              : 
    3956              :     default:
    3957              :       return -1;
    3958              :     }
    3959              : }
    3960              : 
    3961              : int
    3962          875 : pattern999 (rtx x1, machine_mode i1)
    3963              : {
    3964          875 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3965          875 :   rtx x2;
    3966          875 :   int res ATTRIBUTE_UNUSED;
    3967          875 :   if (!register_operand (operands[0], i1)
    3968          875 :       || GET_MODE (x1) != i1)
    3969              :     return -1;
    3970          789 :   x2 = XEXP (x1, 0);
    3971          789 :   if (GET_MODE (x2) != i1
    3972          789 :       || !nonimm_or_0_operand (operands[2], i1)
    3973         1539 :       || !register_operand (operands[3], E_QImode))
    3974          105 :     return -1;
    3975          684 :   switch (GET_MODE (operands[1]))
    3976              :     {
    3977          291 :     case E_V8HFmode:
    3978          291 :       if (!vector_operand (operands[1], E_V8HFmode))
    3979              :         return -1;
    3980              :       return 0;
    3981              : 
    3982          274 :     case E_V8SFmode:
    3983          274 :       if (!nonimmediate_operand (operands[1], E_V8SFmode))
    3984              :         return -1;
    3985              :       return 1;
    3986              : 
    3987          119 :     case E_V8DFmode:
    3988          119 :       if (!vector_operand (operands[1], E_V8DFmode))
    3989              :         return -1;
    3990              :       return 2;
    3991              : 
    3992              :     default:
    3993              :       return -1;
    3994              :     }
    3995              : }
    3996              : 
    3997              : int
    3998          582 : pattern1007 (rtx x1, machine_mode i1, machine_mode i2)
    3999              : {
    4000          582 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4001          582 :   rtx x2;
    4002          582 :   int res ATTRIBUTE_UNUSED;
    4003          582 :   if (!register_operand (operands[0], i2)
    4004          582 :       || GET_MODE (x1) != i2)
    4005              :     return -1;
    4006          582 :   x2 = XEXP (x1, 0);
    4007          582 :   if (GET_MODE (x2) != i2
    4008          582 :       || !nonimmediate_operand (operands[1], i2)
    4009          582 :       || !reg_or_0_operand (operands[2], i2)
    4010         1164 :       || !register_operand (operands[3], i1))
    4011           12 :     return -1;
    4012              :   return 0;
    4013              : }
    4014              : 
    4015              : int
    4016         1302 : pattern1015 (rtx x1, machine_mode i1, machine_mode i2)
    4017              : {
    4018         1302 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4019         1302 :   rtx x2;
    4020         1302 :   int res ATTRIBUTE_UNUSED;
    4021         1302 :   if (!register_operand (operands[0], i1)
    4022         1302 :       || GET_MODE (x1) != i1)
    4023              :     return -1;
    4024          910 :   x2 = XEXP (x1, 0);
    4025          910 :   if (GET_MODE (x2) != i1
    4026          910 :       || !nonimmediate_operand (operands[2], i2)
    4027         1820 :       || !const0_operand (operands[1], i1))
    4028           40 :     return -1;
    4029              :   return 0;
    4030              : }
    4031              : 
    4032              : int
    4033         1961 : pattern1023 (rtx x1, machine_mode i1, machine_mode i2)
    4034              : {
    4035         1961 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4036         1961 :   rtx x2, x3;
    4037         1961 :   int res ATTRIBUTE_UNUSED;
    4038         1961 :   if (!register_operand (operands[0], i1)
    4039         1961 :       || GET_MODE (x1) != i1)
    4040              :     return -1;
    4041         1867 :   x2 = XEXP (x1, 0);
    4042         1867 :   if (GET_MODE (x2) != i1)
    4043              :     return -1;
    4044         1867 :   x3 = XEXP (x2, 0);
    4045         1867 :   if (GET_MODE (x3) != i1
    4046         1867 :       || !register_operand (operands[1], i1)
    4047         1857 :       || !nonimmediate_operand (operands[2], i1)
    4048         1760 :       || !nonimm_or_0_operand (operands[3], i1)
    4049         3576 :       || !register_operand (operands[4], i2))
    4050          289 :     return -1;
    4051              :   return 0;
    4052              : }
    4053              : 
    4054              : int
    4055          420 : pattern1030 (rtx x1)
    4056              : {
    4057          420 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4058          420 :   rtx x2;
    4059          420 :   int res ATTRIBUTE_UNUSED;
    4060          420 :   if (!register_operand (operands[0], E_V16SImode)
    4061          420 :       || GET_MODE (x1) != E_V16SImode)
    4062              :     return -1;
    4063          408 :   x2 = XVECEXP (x1, 0, 0);
    4064          408 :   if (GET_MODE (x2) != E_V16SImode)
    4065              :     return -1;
    4066          408 :   switch (GET_MODE (operands[1]))
    4067              :     {
    4068          213 :     case E_V16HFmode:
    4069          213 :       if (!register_operand (operands[1], E_V16HFmode))
    4070              :         return -1;
    4071              :       return 0;
    4072              : 
    4073          195 :     case E_V16SFmode:
    4074          195 :       if (!register_operand (operands[1], E_V16SFmode))
    4075              :         return -1;
    4076              :       return 1;
    4077              : 
    4078              :     default:
    4079              :       return -1;
    4080              :     }
    4081              : }
    4082              : 
    4083              : int
    4084         7022 : pattern1041 (rtx x1, machine_mode i1, machine_mode i2)
    4085              : {
    4086         7022 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4087         7022 :   int res ATTRIBUTE_UNUSED;
    4088         7022 :   if (!register_operand (operands[0], i2)
    4089         6854 :       || GET_MODE (x1) != i2
    4090         6854 :       || !nonimmediate_operand (operands[1], i2)
    4091         6829 :       || !nonimm_or_0_operand (operands[2], i2)
    4092        13747 :       || !register_operand (operands[3], i1))
    4093          297 :     return -1;
    4094              :   return 0;
    4095              : }
    4096              : 
    4097              : int
    4098          156 : pattern1049 (rtx x1)
    4099              : {
    4100          156 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4101          156 :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
    4102          156 :   rtx x10, x11;
    4103          156 :   int res ATTRIBUTE_UNUSED;
    4104          156 :   x2 = XEXP (x1, 1);
    4105          156 :   x3 = XEXP (x2, 0);
    4106          156 :   x4 = XEXP (x3, 0);
    4107          156 :   if (GET_CODE (x4) != SUBREG
    4108          156 :       || maybe_ne (SUBREG_BYTE (x4), 0)
    4109          312 :       || GET_MODE (x4) != E_QImode)
    4110              :     return -1;
    4111          156 :   x5 = XEXP (x4, 0);
    4112          156 :   switch (GET_CODE (x5))
    4113              :     {
    4114          156 :     case ASHIFTRT:
    4115          156 :     case LSHIFTRT:
    4116          156 :     case SIGN_EXTRACT:
    4117          156 :     case ZERO_EXTRACT:
    4118          156 :       operands[3] = x5;
    4119          156 :       x6 = XEXP (x1, 0);
    4120          156 :       if (GET_CODE (x6) != ZERO_EXTRACT)
    4121              :         return -1;
    4122          156 :       x7 = XEXP (x6, 1);
    4123          156 :       if (x7 != const_int_rtx[MAX_SAVED_CONST_INT + 8])
    4124              :         return -1;
    4125          156 :       x8 = XEXP (x6, 2);
    4126          156 :       if (x8 != const_int_rtx[MAX_SAVED_CONST_INT + 8])
    4127              :         return -1;
    4128          156 :       x9 = XEXP (x6, 0);
    4129          156 :       operands[0] = x9;
    4130          156 :       if (!int248_register_operand (operands[0], E_VOIDmode))
    4131              :         return -1;
    4132          156 :       x10 = XEXP (x5, 0);
    4133          156 :       operands[1] = x10;
    4134          156 :       if (!int248_register_operand (operands[1], E_VOIDmode))
    4135              :         return -1;
    4136          156 :       x11 = XEXP (x3, 1);
    4137          156 :       operands[2] = x11;
    4138          156 :       if (!nonmemory_operand (operands[2], E_QImode))
    4139              :         return -1;
    4140          155 :       return pattern1048 (x1); /* [-1, 2] */
    4141              : 
    4142              :     default:
    4143              :       return -1;
    4144              :     }
    4145              : }
    4146              : 
    4147              : int
    4148          535 : pattern1058 (rtx x1)
    4149              : {
    4150          535 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4151          535 :   rtx x2, x3, x4, x5;
    4152          535 :   int res ATTRIBUTE_UNUSED;
    4153          535 :   x2 = XEXP (x1, 1);
    4154          535 :   x3 = XEXP (x2, 0);
    4155          535 :   x4 = XEXP (x3, 0);
    4156          535 :   x5 = XEXP (x4, 0);
    4157          535 :   operands[1] = x5;
    4158          535 :   if (!int248_register_operand (operands[1], E_VOIDmode))
    4159              :     return -1;
    4160          375 :   return pattern1057 (x1); /* [-1, 5] */
    4161              : }
    4162              : 
    4163              : int
    4164          833 : pattern1062 (rtx x1, machine_mode i1)
    4165              : {
    4166          833 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4167          833 :   rtx x2, x3;
    4168          833 :   int res ATTRIBUTE_UNUSED;
    4169          833 :   if (!register_operand (operands[0], i1)
    4170          833 :       || GET_MODE (x1) != i1)
    4171              :     return -1;
    4172          832 :   x2 = XEXP (x1, 0);
    4173          832 :   if (GET_MODE (x2) != i1)
    4174              :     return -1;
    4175          832 :   x3 = XEXP (x2, 0);
    4176          832 :   if (GET_MODE (x3) != i1
    4177          832 :       || !nonimmediate_operand (operands[1], i1)
    4178          832 :       || !nonimmediate_operand (operands[2], i1)
    4179         1616 :       || !nonimmediate_operand (operands[3], i1))
    4180           48 :     return -1;
    4181              :   return 0;
    4182              : }
    4183              : 
    4184              : int
    4185            0 : pattern1065 (rtx x1, machine_mode i1, machine_mode i2)
    4186              : {
    4187            0 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4188            0 :   rtx x2;
    4189            0 :   int res ATTRIBUTE_UNUSED;
    4190            0 :   if (!register_operand (operands[0], i2)
    4191            0 :       || GET_MODE (x1) != i2)
    4192              :     return -1;
    4193            0 :   x2 = XEXP (x1, 0);
    4194            0 :   if (GET_MODE (x2) != i2
    4195            0 :       || !register_operand (operands[1], i2)
    4196            0 :       || !vector_operand (operands[2], i1))
    4197            0 :     return -1;
    4198              :   return 0;
    4199              : }
    4200              : 
    4201              : int
    4202         7449 : pattern1069 (rtx x1)
    4203              : {
    4204         7449 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4205         7449 :   rtx x2, x3, x4, x5, x6, x7;
    4206         7449 :   int res ATTRIBUTE_UNUSED;
    4207         7449 :   x2 = XEXP (x1, 1);
    4208         7449 :   x3 = XEXP (x2, 0);
    4209         7449 :   x4 = XEXP (x3, 0);
    4210         7449 :   if (GET_CODE (x4) != ASHIFT)
    4211              :     return -1;
    4212         2237 :   x5 = XEXP (x4, 0);
    4213         2237 :   if (GET_CODE (x5) != ZERO_EXTEND)
    4214              :     return -1;
    4215         1703 :   x6 = XEXP (x3, 1);
    4216         1703 :   if (GET_CODE (x6) != ZERO_EXTEND)
    4217              :     return -1;
    4218         1703 :   x7 = XEXP (x1, 0);
    4219         1703 :   operands[0] = x7;
    4220         1703 :   return pattern360 (x2); /* [-1, 3] */
    4221              : }
    4222              : 
    4223              : int
    4224         4974 : pattern1075 (rtx x1, machine_mode i1, machine_mode i2)
    4225              : {
    4226         4974 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4227         4974 :   rtx x2;
    4228         4974 :   int res ATTRIBUTE_UNUSED;
    4229         4974 :   if (!sse_reg_operand (operands[0], i1)
    4230         4974 :       || GET_MODE (x1) != i1)
    4231              :     return -1;
    4232         4033 :   x2 = XEXP (x1, 0);
    4233         4033 :   if (GET_MODE (x2) != i1
    4234         4033 :       || !sse_reg_operand (operands[2], i2)
    4235         4092 :       || !sse_reg_operand (operands[1], i1))
    4236         3974 :     return -1;
    4237              :   return 0;
    4238              : }
    4239              : 
    4240              : int
    4241          212 : pattern1081 (rtx x1, machine_mode i1)
    4242              : {
    4243          212 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4244          212 :   rtx x2, x3, x4;
    4245          212 :   int res ATTRIBUTE_UNUSED;
    4246          212 :   if (!register_operand (operands[1], i1))
    4247              :     return -1;
    4248          196 :   x2 = XVECEXP (x1, 0, 1);
    4249          196 :   operands[2] = x2;
    4250          196 :   if (!register_operand (operands[2], i1))
    4251              :     return -1;
    4252          185 :   x3 = XVECEXP (x1, 0, 2);
    4253          185 :   x4 = XEXP (x3, 0);
    4254          185 :   if (!rtx_equal_p (x4, operands[0]))
    4255              :     return -1;
    4256          185 :   switch (GET_MODE (operands[0]))
    4257              :     {
    4258            0 :     case E_SImode:
    4259            0 :       if (!register_operand (operands[0], E_SImode))
    4260              :         return -1;
    4261              :       return 0;
    4262              : 
    4263          185 :     case E_DImode:
    4264          185 :       if (!register_operand (operands[0], E_DImode))
    4265              :         return -1;
    4266              :       return 1;
    4267              : 
    4268              :     default:
    4269              :       return -1;
    4270              :     }
    4271              : }
    4272              : 
    4273              : int
    4274        34652 : pattern1089 (rtx x1)
    4275              : {
    4276        34652 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4277        34652 :   rtx x2;
    4278        34652 :   int res ATTRIBUTE_UNUSED;
    4279        34652 :   x2 = XEXP (x1, 1);
    4280        34652 :   operands[4] = x2;
    4281        34652 :   switch (GET_MODE (operands[0]))
    4282              :     {
    4283         9359 :     case E_HImode:
    4284         9359 :       return pattern1088 (x1, 
    4285         9359 : E_HImode); /* [-1, 0] */
    4286              : 
    4287        17974 :     case E_QImode:
    4288        17974 :       if (pattern1088 (x1, 
    4289              : E_QImode) != 0)
    4290              :         return -1;
    4291              :       return 1;
    4292              : 
    4293              :     default:
    4294              :       return -1;
    4295              :     }
    4296              : }
    4297              : 
    4298              : int
    4299         6658 : pattern1096 (rtx x1, machine_mode i1)
    4300              : {
    4301         6658 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4302         6658 :   int res ATTRIBUTE_UNUSED;
    4303         6658 :   if (!nonimmediate_operand (operands[0], i1)
    4304         6658 :       || GET_MODE (x1) != i1
    4305         6658 :       || !ix86_carry_flag_operator (operands[2], i1)
    4306        13316 :       || !nonimmediate_operand (operands[1], i1))
    4307         1353 :     return -1;
    4308              :   return 0;
    4309              : }
    4310              : 
    4311              : int
    4312          146 : pattern1103 (rtx x1, machine_mode i1)
    4313              : {
    4314          146 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4315          146 :   rtx x2;
    4316          146 :   int res ATTRIBUTE_UNUSED;
    4317          146 :   if (!register_operand (operands[0], i1)
    4318          146 :       || GET_MODE (x1) != i1)
    4319              :     return -1;
    4320          146 :   x2 = XEXP (x1, 0);
    4321          146 :   return pattern1102 (x2); /* [-1, 11] */
    4322              : }
    4323              : 
    4324              : int
    4325           62 : pattern1109 (rtx x1)
    4326              : {
    4327           62 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4328           62 :   rtx x2, x3, x4;
    4329           62 :   int res ATTRIBUTE_UNUSED;
    4330           62 :   x2 = XEXP (x1, 0);
    4331           62 :   x3 = XEXP (x2, 0);
    4332           62 :   operands[1] = x3;
    4333           62 :   x4 = XEXP (x2, 1);
    4334           62 :   operands[2] = x4;
    4335           62 :   if (!const_int_operand (operands[2], E_QImode))
    4336              :     return -1;
    4337           62 :   switch (GET_MODE (x1))
    4338              :     {
    4339           14 :     case E_V8SFmode:
    4340           14 :       if (GET_MODE (x2) != E_V8SImode
    4341           14 :           || !register_operand (operands[1], E_V8SImode))
    4342            0 :         return -1;
    4343              :       return 0;
    4344              : 
    4345           16 :     case E_V4SFmode:
    4346           16 :       if (GET_MODE (x2) != E_V4SImode
    4347           16 :           || !register_operand (operands[1], E_V4SImode))
    4348            0 :         return -1;
    4349              :       return 1;
    4350              : 
    4351            0 :     case E_V4DFmode:
    4352            0 :       if (GET_MODE (x2) != E_V4DImode
    4353            0 :           || !register_operand (operands[1], E_V4DImode))
    4354            0 :         return -1;
    4355              :       return 2;
    4356              : 
    4357           14 :     case E_V2DFmode:
    4358           14 :       if (GET_MODE (x2) != E_V2DImode
    4359           14 :           || !register_operand (operands[1], E_V2DImode))
    4360            0 :         return -1;
    4361              :       return 3;
    4362              : 
    4363              :     default:
    4364              :       return -1;
    4365              :     }
    4366              : }
    4367              : 
    4368              : int
    4369         1349 : pattern1118 (rtx x1, machine_mode i1, machine_mode i2, machine_mode i3)
    4370              : {
    4371         1349 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4372         1349 :   rtx x2;
    4373         1349 :   int res ATTRIBUTE_UNUSED;
    4374         1349 :   if (!register_operand (operands[0], i2)
    4375         1349 :       || GET_MODE (x1) != i2)
    4376              :     return -1;
    4377         1293 :   x2 = XEXP (x1, 0);
    4378         1293 :   if (GET_MODE (x2) != i2
    4379         1293 :       || !register_operand (operands[1], i3)
    4380         1293 :       || !vector_operand (operands[2], i3)
    4381         1293 :       || !nonimm_or_0_operand (operands[3], i2)
    4382         2540 :       || !register_operand (operands[4], i1))
    4383          106 :     return -1;
    4384              :   return 0;
    4385              : }
    4386              : 
    4387              : int
    4388         3141 : pattern1122 (rtx x1, machine_mode i1, machine_mode i2)
    4389              : {
    4390         3141 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4391         3141 :   rtx x2;
    4392         3141 :   int res ATTRIBUTE_UNUSED;
    4393         3141 :   if (!register_operand (operands[0], i1)
    4394         3141 :       || GET_MODE (x1) != i1)
    4395              :     return -1;
    4396         2955 :   x2 = XEXP (x1, 0);
    4397         2955 :   if (GET_MODE (x2) != i1
    4398         2955 :       || !register_operand (operands[1], i1)
    4399         2918 :       || !nonimmediate_operand (operands[2], i1)
    4400         2918 :       || !nonimm_or_0_operand (operands[3], i1)
    4401         5825 :       || !register_operand (operands[4], i2))
    4402          163 :     return -1;
    4403              :   return 0;
    4404              : }
    4405              : 
    4406              : int
    4407           36 : pattern1129 (rtx x1, machine_mode i1, machine_mode i2)
    4408              : {
    4409           36 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4410           36 :   rtx x2, x3;
    4411           36 :   int res ATTRIBUTE_UNUSED;
    4412           36 :   if (!register_operand (operands[0], i1)
    4413           36 :       || GET_MODE (x1) != i1)
    4414              :     return -1;
    4415           36 :   x2 = XEXP (x1, 0);
    4416           36 :   if (GET_MODE (x2) != i1)
    4417              :     return -1;
    4418           36 :   x3 = XEXP (x2, 0);
    4419           36 :   if (GET_MODE (x3) != i2
    4420           36 :       || !nonimmediate_operand (operands[1], i2)
    4421           68 :       || !register_operand (operands[2], i1))
    4422            8 :     return -1;
    4423              :   return 0;
    4424              : }
    4425              : 
    4426              : int
    4427         1093 : pattern1138 (rtx x1, machine_mode i1, machine_mode i2, machine_mode i3, machine_mode i4)
    4428              : {
    4429         1093 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4430         1093 :   int res ATTRIBUTE_UNUSED;
    4431         1093 :   if (GET_MODE (x1) != i4
    4432         1093 :       || !register_operand (operands[1], i3)
    4433         1093 :       || !nonimm_or_0_operand (operands[3], i2)
    4434         2167 :       || !register_operand (operands[4], i1))
    4435           71 :     return -1;
    4436              :   return 0;
    4437              : }
    4438              : 
    4439              : int
    4440         1696 : pattern1144 (rtx x1)
    4441              : {
    4442         1696 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4443         1696 :   rtx x2, x3, x4, x5, x6, x7, x8;
    4444         1696 :   int res ATTRIBUTE_UNUSED;
    4445         1696 :   x2 = XVECEXP (x1, 0, 0);
    4446         1696 :   x3 = XEXP (x2, 0);
    4447         1696 :   x4 = XVECEXP (x3, 0, 2);
    4448         1696 :   operands[3] = x4;
    4449         1696 :   x5 = XVECEXP (x1, 0, 1);
    4450         1696 :   if (!const_4_or_8_to_11_operand (x5, E_SImode))
    4451              :     return -1;
    4452         1696 :   x6 = XEXP (x2, 1);
    4453         1696 :   switch (GET_CODE (x6))
    4454              :     {
    4455          448 :     case CONST_INT:
    4456          448 :     case CONST_DOUBLE:
    4457          448 :     case CONST_VECTOR:
    4458          448 :       operands[4] = x6;
    4459          448 :       if (!const0_operand (operands[4], E_V32HFmode))
    4460              :         return -1;
    4461          448 :       x7 = XEXP (x2, 2);
    4462          448 :       if (GET_CODE (x7) != UNSPEC
    4463          448 :           || XVECLEN (x7, 0) != 1
    4464          448 :           || XINT (x7, 1) != 224
    4465          448 :           || GET_MODE (x7) != E_SImode
    4466          448 :           || !register_operand (operands[0], E_V32HFmode)
    4467          428 :           || GET_MODE (x1) != E_V32HFmode
    4468          428 :           || GET_MODE (x2) != E_V32HFmode
    4469          428 :           || GET_MODE (x3) != E_V32HFmode
    4470          428 :           || !register_operand (operands[1], E_V32HFmode)
    4471          428 :           || !register_operand (operands[2], E_V32HFmode)
    4472          866 :           || !register_operand (operands[3], E_V32HFmode))
    4473           38 :         return -1;
    4474          410 :       x8 = XVECEXP (x7, 0, 0);
    4475          410 :       operands[5] = x8;
    4476          410 :       if (!register_operand (operands[5], E_HImode))
    4477              :         return -1;
    4478          384 :       operands[6] = x5;
    4479          384 :       return 0;
    4480              : 
    4481         1232 :     case REG:
    4482         1232 :     case SUBREG:
    4483         1232 :       x7 = XEXP (x2, 2);
    4484         1232 :       switch (GET_CODE (x7))
    4485              :         {
    4486          864 :         case UNSPEC:
    4487          864 :           if (XVECLEN (x7, 0) != 1
    4488          864 :               || XINT (x7, 1) != 224
    4489          864 :               || GET_MODE (x7) != E_SImode
    4490          864 :               || !register_operand (operands[0], E_V32HFmode)
    4491          846 :               || GET_MODE (x1) != E_V32HFmode
    4492          846 :               || GET_MODE (x2) != E_V32HFmode
    4493          846 :               || GET_MODE (x3) != E_V32HFmode
    4494          846 :               || !register_operand (operands[1], E_V32HFmode)
    4495          846 :               || !register_operand (operands[2], E_V32HFmode)
    4496         1690 :               || !register_operand (operands[3], E_V32HFmode))
    4497           54 :             return -1;
    4498          810 :           x8 = XVECEXP (x7, 0, 0);
    4499          810 :           operands[4] = x8;
    4500          810 :           if (!register_operand (operands[4], E_HImode))
    4501              :             return -1;
    4502          762 :           operands[5] = x5;
    4503          762 :           if (!rtx_equal_p (x6, operands[1]))
    4504              :             return -1;
    4505              :           return 1;
    4506              : 
    4507          368 :         case CONST_INT:
    4508          368 :           if (XWINT (x7, 0) != 3L
    4509          368 :               || !register_operand (operands[0], E_V8HFmode)
    4510          352 :               || GET_MODE (x1) != E_V8HFmode
    4511          352 :               || GET_MODE (x2) != E_V8HFmode
    4512          352 :               || GET_MODE (x3) != E_V8HFmode
    4513          352 :               || !register_operand (operands[1], E_V8HFmode)
    4514          348 :               || !register_operand (operands[2], E_V8HFmode)
    4515          716 :               || !register_operand (operands[3], E_V8HFmode))
    4516           28 :             return -1;
    4517          340 :           operands[4] = x5;
    4518          340 :           if (!rtx_equal_p (x6, operands[2]))
    4519              :             return -1;
    4520              :           return 2;
    4521              : 
    4522              :         default:
    4523              :           return -1;
    4524              :         }
    4525              : 
    4526              :     default:
    4527              :       return -1;
    4528              :     }
    4529              : }
    4530              : 
    4531              : int
    4532     18670811 : pattern1188 (rtx x1)
    4533              : {
    4534     18670811 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4535     18670811 :   rtx x2, x3, x4;
    4536     18670811 :   int res ATTRIBUTE_UNUSED;
    4537     18670811 :   x2 = XEXP (x1, 1);
    4538     18670811 :   x3 = XEXP (x2, 1);
    4539     18670811 :   operands[2] = x3;
    4540     18670811 :   x4 = XEXP (x1, 0);
    4541     18670811 :   switch (GET_CODE (x4))
    4542              :     {
    4543     18669454 :     case REG:
    4544     18669454 :     case SUBREG:
    4545     18669454 :     case MEM:
    4546     18669454 :       operands[0] = x4;
    4547     18669454 :       return 0;
    4548              : 
    4549         1357 :     case STRICT_LOW_PART:
    4550         1357 :       res = pattern561 (x1);
    4551         1357 :       if (res >= 0)
    4552         1252 :         return res + 1; /* [1, 2] */
    4553              :       return -1;
    4554              : 
    4555              :     default:
    4556              :       return -1;
    4557              :     }
    4558              : }
    4559              : 
    4560              : int
    4561          683 : pattern1197 (rtx x1, machine_mode i1, machine_mode i2)
    4562              : {
    4563          683 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4564          683 :   int res ATTRIBUTE_UNUSED;
    4565          683 :   if (!register_operand (operands[0], i2)
    4566          677 :       || GET_MODE (x1) != i2
    4567          677 :       || !const0_operand (operands[2], i2)
    4568            8 :       || !vector_all_ones_operand (operands[3], i2)
    4569          683 :       || !register_operand (operands[1], i1))
    4570          683 :     return -1;
    4571              :   return 0;
    4572              : }
    4573              : 
    4574              : int
    4575            4 : pattern1202 (rtx x1, machine_mode i1)
    4576              : {
    4577            4 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4578            4 :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
    4579            4 :   rtx x10, x11, x12;
    4580            4 :   int res ATTRIBUTE_UNUSED;
    4581            4 :   x2 = XVECEXP (x1, 0, 0);
    4582            4 :   x3 = XEXP (x2, 1);
    4583            4 :   x4 = XEXP (x3, 0);
    4584            4 :   operands[2] = x4;
    4585            4 :   if (!memory_operand (operands[2], i1))
    4586              :     return -1;
    4587            4 :   x5 = XVECEXP (x1, 0, 1);
    4588            4 :   x6 = XEXP (x5, 1);
    4589            4 :   if (GET_CODE (x6) != MINUS)
    4590              :     return -1;
    4591            4 :   x7 = XEXP (x2, 0);
    4592            4 :   if (GET_MODE (x7) != E_CCmode
    4593            4 :       || GET_MODE (x3) != E_CCmode)
    4594              :     return -1;
    4595            4 :   x8 = XEXP (x3, 1);
    4596            4 :   if (!rtx_equal_p (x8, operands[0]))
    4597              :     return -1;
    4598            4 :   x9 = XEXP (x6, 0);
    4599            4 :   if (!rtx_equal_p (x9, operands[2]))
    4600              :     return -1;
    4601            4 :   x10 = XEXP (x6, 1);
    4602            4 :   if (!rtx_equal_p (x10, operands[0]))
    4603              :     return -1;
    4604            4 :   x11 = PATTERN (peep2_next_insn (2));
    4605            4 :   x12 = XEXP (x11, 0);
    4606            4 :   if (!rtx_equal_p (x12, operands[2]))
    4607              :     return -1;
    4608              :   return 0;
    4609              : }
    4610              : 
    4611              : int
    4612      1132874 : pattern1211 (rtx x1)
    4613              : {
    4614      1132874 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4615      1132874 :   int res ATTRIBUTE_UNUSED;
    4616      1132874 :   if (!register_operand (operands[0], E_QImode)
    4617      1130032 :       || GET_MODE (x1) != E_QImode
    4618      1130032 :       || !ix86_comparison_operator (operands[1], E_VOIDmode)
    4619      1130032 :       || !register_operand (operands[2], E_QImode)
    4620      2250844 :       || !register_operand (operands[3], E_QImode))
    4621       524539 :     return -1;
    4622              :   return 0;
    4623              : }
    4624              : 
    4625              : int
    4626          161 : pattern1216 (rtx x1, machine_mode i1)
    4627              : {
    4628          161 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4629          161 :   rtx x2, x3;
    4630          161 :   int res ATTRIBUTE_UNUSED;
    4631          161 :   if (!nonimmediate_operand (operands[0], i1)
    4632          161 :       || GET_MODE (x1) != i1)
    4633              :     return -1;
    4634          161 :   x2 = XEXP (x1, 0);
    4635          161 :   if (GET_MODE (x2) != i1)
    4636              :     return -1;
    4637          161 :   x3 = XEXP (x2, 0);
    4638          161 :   if (GET_MODE (x3) != i1
    4639          161 :       || !nonimmediate_operand (operands[1], i1)
    4640          273 :       || !x86_64_general_operand (operands[2], i1))
    4641           49 :     return -1;
    4642              :   return 0;
    4643              : }
    4644              : 
    4645              : int
    4646         1933 : pattern1223 (rtx x1, machine_mode i1, machine_mode i2)
    4647              : {
    4648         1933 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4649         1933 :   rtx x2;
    4650         1933 :   int res ATTRIBUTE_UNUSED;
    4651         1933 :   if (!register_operand (operands[0], i1)
    4652         1933 :       || GET_MODE (x1) != i1)
    4653              :     return -1;
    4654         1799 :   x2 = XEXP (x1, 0);
    4655         1799 :   if (GET_MODE (x2) != i1
    4656         1799 :       || !vector_operand (operands[1], i1)
    4657         1799 :       || !nonimm_or_0_operand (operands[3], i1)
    4658         3568 :       || !register_operand (operands[4], i2))
    4659          139 :     return -1;
    4660              :   return 0;
    4661              : }
    4662              : 
    4663              : int
    4664          652 : pattern1231 (rtx x1, machine_mode i1)
    4665              : {
    4666          652 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4667          652 :   rtx x2;
    4668          652 :   int res ATTRIBUTE_UNUSED;
    4669          652 :   if (!register_operand (operands[0], i1)
    4670          652 :       || GET_MODE (x1) != i1)
    4671              :     return -1;
    4672          626 :   x2 = XVECEXP (x1, 0, 0);
    4673          626 :   if (GET_MODE (x2) != i1
    4674          626 :       || !nonimmediate_operand (operands[1], i1))
    4675            2 :     return -1;
    4676              :   return 0;
    4677              : }
    4678              : 
    4679              : int
    4680           42 : pattern1236 (rtx x1)
    4681              : {
    4682           42 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4683           42 :   rtx x2, x3, x4, x5, x6, x7;
    4684           42 :   int res ATTRIBUTE_UNUSED;
    4685           42 :   x2 = XVECEXP (x1, 0, 2);
    4686           42 :   x3 = XEXP (x2, 0);
    4687           42 :   x4 = XEXP (x3, 0);
    4688           42 :   if (maybe_ne (SUBREG_BYTE (x4), 0))
    4689              :     return -1;
    4690           42 :   x5 = XEXP (x4, 0);
    4691           42 :   if (GET_CODE (x5) != NOT)
    4692              :     return -1;
    4693           18 :   x6 = XEXP (x5, 0);
    4694           18 :   operands[3] = x6;
    4695           18 :   x7 = XEXP (x3, 1);
    4696           18 :   operands[4] = x7;
    4697           18 :   switch (GET_MODE (operands[0]))
    4698              :     {
    4699           18 :     case E_V16QImode:
    4700           18 :       if (!register_operand (operands[0], E_V16QImode)
    4701           18 :           || GET_MODE (x1) != E_V16QImode
    4702           18 :           || !register_operand (operands[1], E_V16QImode)
    4703           18 :           || !vector_operand (operands[2], E_V16QImode)
    4704           18 :           || GET_MODE (x2) != E_V16QImode
    4705           18 :           || GET_MODE (x5) != E_V16QImode
    4706           36 :           || !register_operand (operands[3], E_V16QImode))
    4707            0 :         return -1;
    4708           18 :       switch (GET_MODE (x3))
    4709              :         {
    4710           18 :         case E_V4SImode:
    4711           18 :           if (GET_MODE (x4) != E_V4SImode
    4712           18 :               || !const0_operand (operands[4], E_V4SImode))
    4713            0 :             return -1;
    4714              :           return 0;
    4715              : 
    4716            0 :         case E_V2DImode:
    4717            0 :           if (GET_MODE (x4) != E_V2DImode
    4718            0 :               || !const0_operand (operands[4], E_V2DImode))
    4719            0 :             return -1;
    4720              :           return 1;
    4721              : 
    4722              :         default:
    4723              :           return -1;
    4724              :         }
    4725              : 
    4726            0 :     case E_V32QImode:
    4727            0 :       if (!register_operand (operands[0], E_V32QImode)
    4728            0 :           || GET_MODE (x1) != E_V32QImode
    4729            0 :           || !register_operand (operands[1], E_V32QImode)
    4730            0 :           || !vector_operand (operands[2], E_V32QImode)
    4731            0 :           || GET_MODE (x2) != E_V32QImode
    4732            0 :           || GET_MODE (x5) != E_V32QImode
    4733            0 :           || !register_operand (operands[3], E_V32QImode))
    4734            0 :         return -1;
    4735            0 :       switch (GET_MODE (x3))
    4736              :         {
    4737            0 :         case E_V8SImode:
    4738            0 :           if (GET_MODE (x4) != E_V8SImode
    4739            0 :               || !const0_operand (operands[4], E_V8SImode))
    4740            0 :             return -1;
    4741              :           return 2;
    4742              : 
    4743            0 :         case E_V4DImode:
    4744            0 :           if (GET_MODE (x4) != E_V4DImode
    4745            0 :               || !const0_operand (operands[4], E_V4DImode))
    4746            0 :             return -1;
    4747              :           return 3;
    4748              : 
    4749              :         default:
    4750              :           return -1;
    4751              :         }
    4752              : 
    4753              :     default:
    4754              :       return -1;
    4755              :     }
    4756              : }
    4757              : 
    4758              : int
    4759           58 : pattern1257 (rtx x1)
    4760              : {
    4761           58 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4762           58 :   rtx x2, x3, x4, x5;
    4763           58 :   int res ATTRIBUTE_UNUSED;
    4764           58 :   x2 = XEXP (x1, 0);
    4765           58 :   x3 = XEXP (x2, 0);
    4766           58 :   x4 = XEXP (x3, 0);
    4767           58 :   operands[1] = x4;
    4768           58 :   x5 = XEXP (x3, 1);
    4769           58 :   operands[2] = x5;
    4770           58 :   if (!register_operand (operands[2], E_QImode))
    4771              :     return -1;
    4772           50 :   return pattern1256 (x1); /* [-1, 1] */
    4773              : }
    4774              : 
    4775              : int
    4776        12568 : pattern1262 (rtx x1)
    4777              : {
    4778        12568 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4779        12568 :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
    4780        12568 :   int res ATTRIBUTE_UNUSED;
    4781        12568 :   x2 = XVECEXP (x1, 0, 1);
    4782        12568 :   if (GET_CODE (x2) != CLOBBER)
    4783              :     return -1;
    4784        12568 :   x3 = XVECEXP (x1, 0, 2);
    4785        12568 :   if (GET_CODE (x3) != CLOBBER)
    4786              :     return -1;
    4787        12568 :   x4 = XVECEXP (x1, 0, 3);
    4788        12568 :   x5 = XEXP (x4, 0);
    4789        12568 :   if (GET_CODE (x5) != REG
    4790        12568 :       || REGNO (x5) != 17
    4791        12568 :       || GET_MODE (x5) != E_CCmode
    4792        25136 :       || !register_operand (operands[0], E_SImode))
    4793            0 :     return -1;
    4794        12568 :   x6 = XVECEXP (x1, 0, 0);
    4795        12568 :   x7 = XEXP (x6, 1);
    4796        12568 :   x8 = XVECEXP (x7, 0, 0);
    4797        12568 :   operands[1] = x8;
    4798        12568 :   if (!register_operand (operands[1], E_SImode))
    4799              :     return -1;
    4800        12083 :   x9 = XVECEXP (x7, 0, 1);
    4801        12083 :   operands[2] = x9;
    4802        12083 :   return 0;
    4803              : }
    4804              : 
    4805              : int
    4806            2 : pattern1273 (rtx x1)
    4807              : {
    4808            2 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4809            2 :   rtx x2, x3, x4, x5, x6, x7;
    4810            2 :   int res ATTRIBUTE_UNUSED;
    4811            2 :   x2 = XEXP (x1, 2);
    4812            2 :   switch (GET_CODE (x2))
    4813              :     {
    4814            0 :     case REG:
    4815            0 :     case SUBREG:
    4816            0 :       operands[1] = x2;
    4817            0 :       x3 = XEXP (x1, 0);
    4818            0 :       operands[0] = x3;
    4819            0 :       x4 = XEXP (x1, 1);
    4820            0 :       operands[3] = x4;
    4821            0 :       switch (GET_MODE (x1))
    4822              :         {
    4823            0 :         case E_V32QImode:
    4824            0 :           if (!vector_all_ones_operand (operands[0], E_V32QImode)
    4825            0 :               || !const0_operand (operands[3], E_V32QImode)
    4826            0 :               || !register_operand (operands[1], E_SImode))
    4827            0 :             return -1;
    4828              :           return 0;
    4829              : 
    4830            0 :         case E_V16QImode:
    4831            0 :           if (!vector_all_ones_operand (operands[0], E_V16QImode)
    4832            0 :               || !const0_operand (operands[3], E_V16QImode)
    4833            0 :               || !register_operand (operands[1], E_HImode))
    4834            0 :             return -1;
    4835              :           return 1;
    4836              : 
    4837              :         default:
    4838              :           return -1;
    4839              :         }
    4840              : 
    4841            2 :     case UNSPEC:
    4842            2 :       if (XVECLEN (x2, 0) != 3
    4843            2 :           || XINT (x2, 1) != 60)
    4844              :         return -1;
    4845            2 :       x5 = XVECEXP (x2, 0, 2);
    4846            2 :       if (x5 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
    4847              :         return -1;
    4848            2 :       x3 = XEXP (x1, 0);
    4849            2 :       operands[3] = x3;
    4850            2 :       x4 = XEXP (x1, 1);
    4851            2 :       operands[4] = x4;
    4852            2 :       x6 = XVECEXP (x2, 0, 0);
    4853            2 :       operands[0] = x6;
    4854            2 :       x7 = XVECEXP (x2, 0, 1);
    4855            2 :       operands[1] = x7;
    4856            2 :       switch (GET_MODE (x1))
    4857              :         {
    4858            0 :         case E_V32QImode:
    4859            0 :           if (pattern1272 (x2, 
    4860              : E_V32QImode, 
    4861              : E_SImode) != 0)
    4862              :             return -1;
    4863              :           return 2;
    4864              : 
    4865            2 :         case E_V16QImode:
    4866            2 :           if (pattern1272 (x2, 
    4867              : E_V16QImode, 
    4868              : E_HImode) != 0)
    4869              :             return -1;
    4870              :           return 3;
    4871              : 
    4872              :         default:
    4873              :           return -1;
    4874              :         }
    4875              : 
    4876              :     default:
    4877              :       return -1;
    4878              :     }
    4879              : }
    4880              : 
    4881              : int
    4882          787 : pattern1299 (rtx x1, machine_mode i1, machine_mode i2)
    4883              : {
    4884          787 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4885          787 :   rtx x2;
    4886          787 :   int res ATTRIBUTE_UNUSED;
    4887          787 :   if (!register_operand (operands[0], i2)
    4888          787 :       || GET_MODE (x1) != i2)
    4889              :     return -1;
    4890          763 :   x2 = XEXP (x1, 0);
    4891          763 :   if (GET_MODE (x2) != i2
    4892          763 :       || !nonimmediate_operand (operands[1], i2)
    4893          736 :       || !nonimmediate_operand (operands[2], i2)
    4894          736 :       || !nonimmediate_operand (operands[3], i2)
    4895         1490 :       || !register_operand (operands[4], i1))
    4896           36 :     return -1;
    4897              :   return 0;
    4898              : }
    4899              : 
    4900              : int
    4901          460 : pattern1309 (rtx x1, int i1, int i2, int i3, int i4)
    4902              : {
    4903          460 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4904          460 :   rtx x2, x3, x4, x5;
    4905          460 :   int res ATTRIBUTE_UNUSED;
    4906          460 :   x2 = XVECEXP (x1, 0, 8);
    4907          460 :   if (x2 != const_int_rtx[MAX_SAVED_CONST_INT + i4])
    4908              :     return -1;
    4909          460 :   x3 = XVECEXP (x1, 0, 9);
    4910          460 :   if (x3 != const_int_rtx[MAX_SAVED_CONST_INT + i3])
    4911              :     return -1;
    4912          460 :   x4 = XVECEXP (x1, 0, 10);
    4913          460 :   if (x4 != const_int_rtx[MAX_SAVED_CONST_INT + i2])
    4914              :     return -1;
    4915          460 :   x5 = XVECEXP (x1, 0, 11);
    4916          460 :   if (x5 != const_int_rtx[MAX_SAVED_CONST_INT + i1])
    4917            0 :     return -1;
    4918              :   return 0;
    4919              : }
    4920              : 
    4921              : int
    4922          900 : pattern1317 (rtx x1)
    4923              : {
    4924          900 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4925          900 :   rtx x2, x3;
    4926          900 :   int res ATTRIBUTE_UNUSED;
    4927          900 :   if (!register_operand (operands[0], E_V8HFmode)
    4928          900 :       || GET_MODE (x1) != E_V8HFmode)
    4929              :     return -1;
    4930          870 :   x2 = XVECEXP (x1, 0, 0);
    4931          870 :   if (GET_MODE (x2) != E_V8HFmode)
    4932              :     return -1;
    4933          870 :   x3 = XEXP (x2, 0);
    4934          870 :   if (GET_MODE (x3) != E_V8HFmode
    4935          870 :       || !nonimm_or_0_operand (operands[2], E_V8HFmode)
    4936         1738 :       || !register_operand (operands[3], E_QImode))
    4937           24 :     return -1;
    4938          846 :   switch (GET_MODE (operands[1]))
    4939              :     {
    4940            0 :     case E_V8HImode:
    4941            0 :       if (!register_operand (operands[1], E_V8HImode))
    4942              :         return -1;
    4943              :       return 0;
    4944              : 
    4945            0 :     case E_V8SImode:
    4946            0 :       if (!register_operand (operands[1], E_V8SImode))
    4947              :         return -1;
    4948              :       return 1;
    4949              : 
    4950          846 :     case E_V8DImode:
    4951          846 :       if (!register_operand (operands[1], E_V8DImode))
    4952              :         return -1;
    4953              :       return 2;
    4954              : 
    4955              :     default:
    4956              :       return -1;
    4957              :     }
    4958              : }
    4959              : 
    4960              : int
    4961         9757 : pattern1329 (rtx x1)
    4962              : {
    4963         9757 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4964         9757 :   rtx x2, x3;
    4965         9757 :   int res ATTRIBUTE_UNUSED;
    4966         9757 :   if (GET_CODE (x1) != PLUS)
    4967              :     return -1;
    4968         9757 :   x2 = XEXP (x1, 0);
    4969         9757 :   if (GET_CODE (x2) != PLUS)
    4970              :     return -1;
    4971         9757 :   x3 = XEXP (x2, 0);
    4972         9757 :   switch (GET_CODE (x3))
    4973              :     {
    4974         9757 :     case LTU:
    4975         9757 :     case UNLT:
    4976         9757 :       if (!rtx_equal_p (x3, operands[4]))
    4977              :         return -1;
    4978              :       return 0;
    4979              : 
    4980              :     default:
    4981              :       return -1;
    4982              :     }
    4983              : }
    4984              : 
    4985              : int
    4986        25362 : pattern1332 (rtx x1)
    4987              : {
    4988        25362 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4989        25362 :   rtx x2, x3, x4, x5, x6, x7, x8;
    4990        25362 :   int res ATTRIBUTE_UNUSED;
    4991        25362 :   x2 = XVECEXP (x1, 0, 1);
    4992        25362 :   x3 = XEXP (x2, 1);
    4993        25362 :   x4 = XEXP (x3, 0);
    4994        25362 :   if (!rtx_equal_p (x4, operands[1]))
    4995              :     return -1;
    4996        25362 :   x5 = XEXP (x3, 1);
    4997        25362 :   if (!rtx_equal_p (x5, operands[2]))
    4998              :     return -1;
    4999        25358 :   x6 = XVECEXP (x1, 0, 0);
    5000        25358 :   x7 = XEXP (x6, 1);
    5001        25358 :   x8 = XEXP (x7, 0);
    5002        25358 :   switch (GET_MODE (x8))
    5003              :     {
    5004          456 :     case E_QImode:
    5005          456 :       return pattern1331 (x3, 
    5006          456 : E_QImode); /* [-1, 0] */
    5007              : 
    5008          133 :     case E_HImode:
    5009          133 :       if (pattern1331 (x3, 
    5010              : E_HImode) != 0)
    5011              :         return -1;
    5012              :       return 1;
    5013              : 
    5014         3463 :     case E_SImode:
    5015         3463 :       if (pattern1331 (x3, 
    5016              : E_SImode) != 0)
    5017              :         return -1;
    5018              :       return 2;
    5019              : 
    5020        21027 :     case E_DImode:
    5021        21027 :       if (!nonimmediate_operand (operands[1], E_DImode)
    5022        19156 :           || !const_1_to_63_operand (operands[2], E_QImode)
    5023        18120 :           || !nonimmediate_operand (operands[0], E_DImode)
    5024        39147 :           || GET_MODE (x3) != E_DImode)
    5025         2907 :         return -1;
    5026              :       return 3;
    5027              : 
    5028              :     default:
    5029              :       return -1;
    5030              :     }
    5031              : }
    5032              : 
    5033              : int
    5034      2175146 : pattern1350 (rtx x1, machine_mode i1)
    5035              : {
    5036      2175146 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5037      2175146 :   int res ATTRIBUTE_UNUSED;
    5038      2175146 :   if (!mask_reg_operand (operands[0], i1)
    5039           48 :       || GET_MODE (x1) != i1
    5040           48 :       || !mask_reg_operand (operands[1], i1)
    5041      2175194 :       || !const_int_operand (operands[2], E_VOIDmode))
    5042      2175098 :     return -1;
    5043              :   return 0;
    5044              : }
    5045              : 
    5046              : int
    5047        10324 : pattern1356 (rtx x1, machine_mode i1)
    5048              : {
    5049        10324 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5050        10324 :   rtx x2, x3, x4;
    5051        10324 :   int res ATTRIBUTE_UNUSED;
    5052        10324 :   x2 = XEXP (x1, 0);
    5053        10324 :   operands[2] = x2;
    5054        10324 :   if (!general_reg_operand (operands[2], i1))
    5055              :     return -1;
    5056         6116 :   x3 = XEXP (x1, 1);
    5057         6116 :   operands[3] = x3;
    5058         6116 :   if (!general_gr_operand (operands[3], i1))
    5059              :     return -1;
    5060         2030 :   x4 = PATTERN (peep2_next_insn (3));
    5061         2030 :   return pattern966 (x4, 
    5062         2030 : i1); /* [-1, 0] */
    5063              : }
    5064              : 
    5065              : int
    5066      1267069 : pattern1364 (rtx x1, machine_mode i1)
    5067              : {
    5068      1267069 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5069      1267069 :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
    5070      1267069 :   rtx x10, x11, x12, x13, x14, x15, x16;
    5071      1267069 :   int res ATTRIBUTE_UNUSED;
    5072      1267069 :   if (!general_reg_operand (operands[0], i1))
    5073              :     return -1;
    5074      1267069 :   switch (GET_CODE (x1))
    5075              :     {
    5076       884411 :     case SET:
    5077       884411 :       x2 = XEXP (x1, 1);
    5078       884411 :       switch (GET_CODE (x2))
    5079              :         {
    5080       301094 :         case CONST_INT:
    5081       301094 :           if (XWINT (x2, 0) != 0L)
    5082              :             return -1;
    5083       173753 :           x3 = XEXP (x1, 0);
    5084       173753 :           if (GET_CODE (x3) != ZERO_EXTRACT)
    5085              :             return -1;
    5086            3 :           x4 = XEXP (x3, 1);
    5087            3 :           if (x4 != const_int_rtx[MAX_SAVED_CONST_INT + 8])
    5088              :             return -1;
    5089            3 :           x5 = XEXP (x3, 2);
    5090            3 :           if (x5 != const_int_rtx[MAX_SAVED_CONST_INT + 8])
    5091              :             return -1;
    5092            3 :           x6 = XEXP (x3, 0);
    5093            3 :           operands[1] = x6;
    5094            3 :           if (!int248_register_operand (operands[1], E_VOIDmode))
    5095              :             return -1;
    5096            3 :           switch (GET_MODE (x3))
    5097              :             {
    5098              :             case E_HImode:
    5099              :               return 0;
    5100              : 
    5101              :             case E_SImode:
    5102              :               return 1;
    5103              : 
    5104              :             case E_DImode:
    5105              :               return 2;
    5106              : 
    5107              :             default:
    5108              :               return -1;
    5109              :             }
    5110              : 
    5111       132159 :         case REG:
    5112       132159 :         case SUBREG:
    5113       132159 :         case MEM:
    5114       132159 :           operands[2] = x2;
    5115       132159 :           x3 = XEXP (x1, 0);
    5116       132159 :           if (GET_CODE (x3) != STRICT_LOW_PART)
    5117              :             return -1;
    5118          343 :           x6 = XEXP (x3, 0);
    5119          343 :           operands[1] = x6;
    5120          343 :           res = pattern1363 ();
    5121          343 :           if (res >= 0)
    5122          343 :             return res + 3; /* [3, 4] */
    5123              :           return -1;
    5124              : 
    5125              :         default:
    5126              :           return -1;
    5127              :         }
    5128              : 
    5129        64834 :     case PARALLEL:
    5130        64834 :       if (XVECLEN (x1, 0) != 2)
    5131              :         return -1;
    5132        22608 :       x7 = XVECEXP (x1, 0, 0);
    5133        22608 :       if (GET_CODE (x7) != SET)
    5134              :         return -1;
    5135        21066 :       x8 = XEXP (x7, 1);
    5136        21066 :       switch (GET_CODE (x8))
    5137              :         {
    5138          989 :         case PLUS:
    5139          989 :           if (GET_MODE (x8) != i1
    5140          989 :               || pattern1353 (x1) != 0)
    5141          973 :             return -1;
    5142              :           return 5;
    5143              : 
    5144          319 :         case IOR:
    5145          319 :           if (GET_MODE (x8) != i1
    5146          319 :               || pattern1353 (x1) != 0)
    5147          185 :             return -1;
    5148              :           return 6;
    5149              : 
    5150           75 :         case XOR:
    5151           75 :           if (GET_MODE (x8) != i1
    5152           75 :               || pattern1353 (x1) != 0)
    5153           73 :             return -1;
    5154              :           return 7;
    5155              : 
    5156          706 :         case UNSPEC:
    5157          706 :           if (peep2_current_count < 3
    5158          706 :               || peep2_current_count < 4
    5159          700 :               || XVECLEN (x8, 0) != 2
    5160          668 :               || XINT (x8, 1) != 41
    5161          668 :               || GET_MODE (x8) != E_CCCmode)
    5162              :             return -1;
    5163          664 :           x9 = XVECEXP (x8, 0, 1);
    5164          664 :           if (x9 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
    5165              :             return -1;
    5166          664 :           x10 = XEXP (x7, 0);
    5167          664 :           if (GET_CODE (x10) != REG
    5168          664 :               || REGNO (x10) != 17
    5169         1328 :               || GET_MODE (x10) != E_CCCmode)
    5170              :             return -1;
    5171          664 :           x11 = XVECEXP (x1, 0, 1);
    5172          664 :           if (GET_CODE (x11) != SET)
    5173              :             return -1;
    5174          657 :           x12 = XEXP (x11, 1);
    5175          657 :           if (GET_CODE (x12) != NEG
    5176          657 :               || GET_MODE (x12) != i1)
    5177              :             return -1;
    5178          657 :           x13 = XVECEXP (x8, 0, 0);
    5179          657 :           operands[1] = x13;
    5180          657 :           if (!general_reg_operand (operands[1], i1))
    5181              :             return -1;
    5182          657 :           x14 = XEXP (x12, 0);
    5183          657 :           if (!rtx_equal_p (x14, operands[1]))
    5184              :             return -1;
    5185          657 :           x15 = XEXP (x11, 0);
    5186          657 :           if (!rtx_equal_p (x15, operands[1]))
    5187              :             return -1;
    5188          657 :           x16 = PATTERN (peep2_next_insn (2));
    5189          657 :           if (pattern1208 (x16, 
    5190              : i1) != 0)
    5191              :             return -1;
    5192              :           return 8;
    5193              : 
    5194              :         default:
    5195              :           return -1;
    5196              :         }
    5197              : 
    5198              :     default:
    5199              :       return -1;
    5200              :     }
    5201              : }
    5202              : 
    5203              : int
    5204         3624 : pattern1418 (rtx x1)
    5205              : {
    5206         3624 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5207         3624 :   rtx x2, x3, x4, x5;
    5208         3624 :   int res ATTRIBUTE_UNUSED;
    5209         3624 :   x2 = XVECEXP (x1, 0, 0);
    5210         3624 :   x3 = XEXP (x2, 2);
    5211         3624 :   switch (GET_CODE (x3))
    5212              :     {
    5213         2471 :     case REG:
    5214         2471 :     case SUBREG:
    5215         2471 :       operands[4] = x3;
    5216         2471 :       x4 = XVECEXP (x1, 0, 1);
    5217         2471 :       operands[5] = x4;
    5218         2471 :       switch (GET_MODE (operands[0]))
    5219              :         {
    5220              :         case E_V32HFmode:
    5221              :           return 0;
    5222              : 
    5223          788 :         case E_V16SFmode:
    5224          788 :           return 1;
    5225              : 
    5226          789 :         case E_V8DFmode:
    5227          789 :           return 2;
    5228              : 
    5229            0 :         case E_V16HFmode:
    5230            0 :           return 3;
    5231              : 
    5232            0 :         case E_V8HFmode:
    5233            0 :           return 4;
    5234              : 
    5235            0 :         case E_V8SFmode:
    5236            0 :           return 5;
    5237              : 
    5238            0 :         case E_V4SFmode:
    5239            0 :           return 6;
    5240              : 
    5241            0 :         case E_V4DFmode:
    5242            0 :           return 7;
    5243              : 
    5244            0 :         case E_V2DFmode:
    5245            0 :           return 8;
    5246              : 
    5247              :         default:
    5248              :           return -1;
    5249              :         }
    5250              : 
    5251         1149 :     case CONST_INT:
    5252         1149 :       if (XWINT (x3, 0) != 1L)
    5253              :         return -1;
    5254         1131 :       x4 = XVECEXP (x1, 0, 1);
    5255         1131 :       operands[4] = x4;
    5256         1131 :       x5 = XEXP (x2, 1);
    5257         1131 :       if (!rtx_equal_p (x5, operands[1]))
    5258              :         return -1;
    5259         1110 :       switch (GET_MODE (operands[0]))
    5260              :         {
    5261              :         case E_V8HFmode:
    5262              :           return 9;
    5263              : 
    5264              :         case E_V4SFmode:
    5265              :           return 10;
    5266              : 
    5267              :         case E_V2DFmode:
    5268              :           return 11;
    5269              : 
    5270              :         default:
    5271              :           return -1;
    5272              :         }
    5273              : 
    5274              :     default:
    5275              :       return -1;
    5276              :     }
    5277              : }
    5278              : 
    5279              : int
    5280           34 : pattern1441 (rtx x1, machine_mode i1)
    5281              : {
    5282           34 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5283           34 :   rtx x2;
    5284           34 :   int res ATTRIBUTE_UNUSED;
    5285           34 :   if (!register_operand (operands[0], i1)
    5286           34 :       || GET_MODE (x1) != i1)
    5287              :     return -1;
    5288           34 :   x2 = XEXP (x1, 0);
    5289           34 :   if (GET_MODE (x2) != i1
    5290           34 :       || !nonimmediate_operand (operands[1], i1))
    5291            0 :     return -1;
    5292              :   return 0;
    5293              : }
    5294              : 
    5295              : int
    5296        85380 : pattern1448 (rtx x1, machine_mode i1)
    5297              : {
    5298        85380 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5299        85380 :   rtx x2;
    5300        85380 :   int res ATTRIBUTE_UNUSED;
    5301        85380 :   if (!memory_operand (operands[0], i1)
    5302        85380 :       || GET_MODE (x1) != i1)
    5303              :     return -1;
    5304        83373 :   x2 = XVECEXP (x1, 0, 0);
    5305        83373 :   if (GET_MODE (x2) != i1
    5306        83373 :       || !nonmemory_operand (operands[1], i1))
    5307         1345 :     return -1;
    5308              :   return 0;
    5309              : }
    5310              : 
    5311              : int
    5312         4145 : pattern1455 (rtx x1, machine_mode i1)
    5313              : {
    5314         4145 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5315         4145 :   rtx x2, x3;
    5316         4145 :   int res ATTRIBUTE_UNUSED;
    5317         4145 :   if (!register_operand (operands[0], i1)
    5318         4145 :       || !addsub_vm_operator (operands[6], i1))
    5319            0 :     return -1;
    5320         4145 :   x2 = XEXP (x1, 0);
    5321         4145 :   if (GET_MODE (x2) != i1
    5322         4145 :       || !register_operand (operands[1], i1)
    5323         8290 :       || !vector_operand (operands[2], i1))
    5324            0 :     return -1;
    5325         4145 :   x3 = XEXP (x1, 1);
    5326         4145 :   if (GET_MODE (x3) != i1
    5327         4145 :       || !vector_operand (operands[3], i1)
    5328         8290 :       || !vector_operand (operands[4], i1))
    5329            0 :     return -1;
    5330              :   return 0;
    5331              : }
    5332              : 
    5333              : int
    5334          978 : pattern1463 (rtx x1, machine_mode i1, machine_mode i2)
    5335              : {
    5336          978 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5337          978 :   rtx x2;
    5338          978 :   int res ATTRIBUTE_UNUSED;
    5339          978 :   if (!register_operand (operands[0], i2)
    5340          978 :       || GET_MODE (x1) != i2)
    5341              :     return -1;
    5342          972 :   x2 = XVECEXP (x1, 0, 0);
    5343          972 :   if (GET_MODE (x2) != i2
    5344          972 :       || !register_operand (operands[1], i1)
    5345         1942 :       || !nonimmediate_operand (operands[2], i1))
    5346            2 :     return -1;
    5347              :   return 0;
    5348              : }
    5349              : 
    5350              : int
    5351          128 : pattern1469 (rtx x1, machine_mode i1, machine_mode i2)
    5352              : {
    5353          128 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5354          128 :   rtx x2, x3, x4;
    5355          128 :   int res ATTRIBUTE_UNUSED;
    5356          128 :   if (!register_operand (operands[0], i1)
    5357          128 :       || GET_MODE (x1) != i1)
    5358              :     return -1;
    5359          116 :   x2 = XEXP (x1, 0);
    5360          116 :   if (GET_MODE (x2) != i1)
    5361              :     return -1;
    5362          116 :   x3 = XEXP (x2, 0);
    5363          116 :   if (GET_MODE (x3) != i1)
    5364              :     return -1;
    5365          116 :   x4 = XEXP (x3, 0);
    5366          116 :   if (GET_MODE (x4) != i2
    5367          116 :       || !nonimm_or_0_operand (operands[3], i1)
    5368          232 :       || !register_operand (operands[2], i1))
    5369            0 :     return -1;
    5370              :   return 0;
    5371              : }
    5372              : 
    5373              : int
    5374            0 : pattern1480 (rtx x1, machine_mode i1, machine_mode i2)
    5375              : {
    5376            0 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5377            0 :   rtx x2;
    5378            0 :   int res ATTRIBUTE_UNUSED;
    5379            0 :   if (!register_operand (operands[0], i1)
    5380            0 :       || GET_MODE (x1) != i1
    5381            0 :       || !vector_all_ones_operand (operands[1], i1))
    5382            0 :     return -1;
    5383            0 :   x2 = XEXP (x1, 2);
    5384            0 :   return pattern1479 (x2, 
    5385              : i1, 
    5386            0 : i2); /* [-1, 0] */
    5387              : }
    5388              : 
    5389              : int
    5390         1188 : pattern1485 (rtx x1, machine_mode i1, machine_mode i2)
    5391              : {
    5392         1188 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5393         1188 :   rtx x2, x3;
    5394         1188 :   int res ATTRIBUTE_UNUSED;
    5395         1188 :   if (!register_operand (operands[0], i1)
    5396         1188 :       || GET_MODE (x1) != i1)
    5397              :     return -1;
    5398         1155 :   x2 = XVECEXP (x1, 0, 0);
    5399         1155 :   if (GET_MODE (x2) != i1)
    5400              :     return -1;
    5401         1155 :   x3 = XEXP (x2, 0);
    5402         1155 :   if (GET_MODE (x3) != i1
    5403         1155 :       || !register_operand (operands[1], i1)
    5404         1147 :       || !nonimm_or_0_operand (operands[2], i1)
    5405         2302 :       || !register_operand (operands[3], i2))
    5406           23 :     return -1;
    5407              :   return 0;
    5408              : }
    5409              : 
    5410              : int
    5411        87131 : pattern1492 (rtx x1, machine_mode i1, machine_mode i2)
    5412              : {
    5413        87131 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5414        87131 :   rtx x2;
    5415        87131 :   int res ATTRIBUTE_UNUSED;
    5416        87131 :   if (!nonimmediate_operand (operands[0], i1)
    5417        87131 :       || GET_MODE (x1) != i1)
    5418              :     return -1;
    5419        87131 :   x2 = XEXP (x1, 0);
    5420        87131 :   if (GET_MODE (x2) != i2
    5421        87131 :       || !nonimmediate_operand (operands[1], i1)
    5422       174242 :       || !nonimmediate_operand (operands[2], i1))
    5423          183 :     return -1;
    5424              :   return 0;
    5425              : }
    5426              : 
    5427              : int
    5428        46560 : pattern1499 (rtx x1, machine_mode i1)
    5429              : {
    5430        46560 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5431        46560 :   int res ATTRIBUTE_UNUSED;
    5432        46560 :   if (!nonimmediate_operand (operands[1], i1)
    5433        46558 :       || !x86_64_general_operand (operands[2], i1)
    5434        46306 :       || !nonimmediate_operand (operands[0], i1)
    5435        92866 :       || GET_MODE (x1) != i1)
    5436          254 :     return -1;
    5437              :   return 0;
    5438              : }
    5439              : 
    5440              : int
    5441       141850 : pattern1505 (rtx x1, machine_mode i1)
    5442              : {
    5443       141850 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5444       141850 :   int res ATTRIBUTE_UNUSED;
    5445       141850 :   if (!register_operand (operands[0], i1)
    5446       141850 :       || GET_MODE (x1) != i1
    5447       141850 :       || !memory_operand (operands[1], i1)
    5448       282795 :       || !register_operand (operands[2], i1))
    5449          905 :     return -1;
    5450              :   return 0;
    5451              : }
    5452              : 
    5453              : int
    5454          180 : pattern1509 (rtx x1, rtx_code i1)
    5455              : {
    5456          180 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5457          180 :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
    5458          180 :   rtx x10;
    5459          180 :   int res ATTRIBUTE_UNUSED;
    5460          180 :   x2 = XVECEXP (x1, 0, 1);
    5461          180 :   x3 = XEXP (x2, 1);
    5462          180 :   if (GET_CODE (x3) != i1)
    5463              :     return -1;
    5464          180 :   x4 = XVECEXP (x1, 0, 0);
    5465          180 :   x5 = XEXP (x4, 0);
    5466          180 :   operands[0] = x5;
    5467          180 :   x6 = XEXP (x4, 1);
    5468          180 :   x7 = XEXP (x6, 0);
    5469          180 :   x8 = XEXP (x7, 0);
    5470          180 :   operands[2] = x8;
    5471          180 :   if (!register_operand (operands[2], E_SImode))
    5472              :     return -1;
    5473          180 :   x9 = XEXP (x7, 1);
    5474          180 :   operands[3] = x9;
    5475          180 :   if (!nonimmediate_operand (operands[3], E_SImode))
    5476              :     return -1;
    5477          180 :   x10 = XEXP (x2, 0);
    5478          180 :   operands[1] = x10;
    5479          180 :   return pattern1508 (x1); /* [-1, 1] */
    5480              : }
    5481              : 
    5482              : int
    5483          118 : pattern1521 (rtx x1, machine_mode i1, machine_mode i2)
    5484              : {
    5485          118 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5486          118 :   rtx x2, x3;
    5487          118 :   int res ATTRIBUTE_UNUSED;
    5488          118 :   if (!register_operand (operands[0], i1)
    5489          118 :       || GET_MODE (x1) != i1)
    5490              :     return -1;
    5491          118 :   x2 = XEXP (x1, 0);
    5492          118 :   if (GET_MODE (x2) != i1
    5493          118 :       || !register_operand (operands[1], i2))
    5494            2 :     return -1;
    5495          116 :   x3 = XEXP (x1, 1);
    5496          116 :   if (GET_MODE (x3) != i1)
    5497              :     return -1;
    5498              :   return 0;
    5499              : }
    5500              : 
    5501              : int
    5502         5490 : pattern1527 (rtx x1)
    5503              : {
    5504         5490 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5505         5490 :   rtx x2, x3, x4, x5, x6, x7;
    5506         5490 :   int res ATTRIBUTE_UNUSED;
    5507         5490 :   x2 = XVECEXP (x1, 0, 0);
    5508         5490 :   x3 = XEXP (x2, 0);
    5509         5490 :   x4 = XEXP (x3, 1);
    5510         5490 :   switch (GET_CODE (x4))
    5511              :     {
    5512         3824 :     case REG:
    5513         3824 :     case SUBREG:
    5514         3824 :     case MEM:
    5515         3824 :       x5 = XEXP (x3, 2);
    5516         3824 :       operands[4] = x5;
    5517         3824 :       x6 = XVECEXP (x1, 0, 1);
    5518         3824 :       operands[5] = x6;
    5519         3824 :       switch (GET_MODE (operands[0]))
    5520              :         {
    5521              :         case E_V8HFmode:
    5522              :           return 0;
    5523              : 
    5524              :         case E_V4SFmode:
    5525              :           return 1;
    5526              : 
    5527              :         case E_V2DFmode:
    5528              :           return 2;
    5529              : 
    5530              :         default:
    5531              :           return -1;
    5532              :         }
    5533              : 
    5534         1666 :     case CONST_INT:
    5535         1666 :     case CONST_DOUBLE:
    5536         1666 :     case CONST_VECTOR:
    5537         1666 :       operands[4] = x4;
    5538         1666 :       x5 = XEXP (x3, 2);
    5539         1666 :       operands[5] = x5;
    5540         1666 :       x6 = XVECEXP (x1, 0, 1);
    5541         1666 :       operands[6] = x6;
    5542         1666 :       x7 = XEXP (x2, 1);
    5543         1666 :       if (!rtx_equal_p (x7, operands[1]))
    5544              :         return -1;
    5545         1666 :       switch (GET_MODE (operands[0]))
    5546              :         {
    5547              :         case E_V8HFmode:
    5548              :           return 3;
    5549              : 
    5550              :         case E_V4SFmode:
    5551              :           return 4;
    5552              : 
    5553              :         case E_V2DFmode:
    5554              :           return 5;
    5555              : 
    5556              :         default:
    5557              :           return -1;
    5558              :         }
    5559              : 
    5560              :     default:
    5561              :       return -1;
    5562              :     }
    5563              : }
    5564              : 
    5565              : int
    5566        21628 : pattern1547 (rtx x1)
    5567              : {
    5568        21628 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5569        21628 :   int res ATTRIBUTE_UNUSED;
    5570        21628 :   switch (GET_MODE (operands[0]))
    5571              :     {
    5572         6739 :     case E_V8SFmode:
    5573         6739 :       if (!nonimmediate_operand (operands[0], E_V8SFmode)
    5574         6739 :           || GET_MODE (x1) != E_V8SFmode
    5575        13478 :           || !nonimmediate_operand (operands[1], E_V16SFmode))
    5576            0 :         return -1;
    5577              :       return 0;
    5578              : 
    5579         6213 :     case E_V8SImode:
    5580         6213 :       if (!nonimmediate_operand (operands[0], E_V8SImode)
    5581         6213 :           || GET_MODE (x1) != E_V8SImode
    5582        12426 :           || !nonimmediate_operand (operands[1], E_V16SImode))
    5583            0 :         return -1;
    5584              :       return 1;
    5585              : 
    5586         7203 :     case E_V8HImode:
    5587         7203 :       if (!nonimmediate_operand (operands[0], E_V8HImode)
    5588         7203 :           || GET_MODE (x1) != E_V8HImode
    5589        14406 :           || !nonimmediate_operand (operands[1], E_V16HImode))
    5590           79 :         return -1;
    5591              :       return 2;
    5592              : 
    5593          517 :     case E_V8HFmode:
    5594          517 :       if (!nonimmediate_operand (operands[0], E_V8HFmode)
    5595          517 :           || GET_MODE (x1) != E_V8HFmode
    5596         1034 :           || !nonimmediate_operand (operands[1], E_V16HFmode))
    5597            3 :         return -1;
    5598              :       return 3;
    5599              : 
    5600          711 :     case E_V8BFmode:
    5601          711 :       if (!nonimmediate_operand (operands[0], E_V8BFmode)
    5602          711 :           || GET_MODE (x1) != E_V8BFmode
    5603         1422 :           || !nonimmediate_operand (operands[1], E_V16BFmode))
    5604           34 :         return -1;
    5605              :       return 4;
    5606              : 
    5607              :     default:
    5608              :       return -1;
    5609              :     }
    5610              : }
    5611              : 
    5612              : int
    5613         2799 : pattern1565 (rtx x1, machine_mode i1, machine_mode i2)
    5614              : {
    5615         2799 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5616         2799 :   rtx x2, x3;
    5617         2799 :   int res ATTRIBUTE_UNUSED;
    5618         2799 :   if (!register_operand (operands[0], i1)
    5619         2799 :       || GET_MODE (x1) != i1)
    5620              :     return -1;
    5621         2739 :   x2 = XVECEXP (x1, 0, 0);
    5622         2739 :   if (GET_MODE (x2) != i1)
    5623              :     return -1;
    5624         2739 :   x3 = XEXP (x2, 0);
    5625         2739 :   if (GET_MODE (x3) != i1
    5626         2739 :       || !nonimmediate_operand (operands[1], i1)
    5627         2737 :       || !nonimm_or_0_operand (operands[3], i1)
    5628         5474 :       || !register_operand (operands[4], i2))
    5629           43 :     return -1;
    5630              :   return 0;
    5631              : }
    5632              : 
    5633              : int
    5634           92 : pattern1573 (rtx x1)
    5635              : {
    5636           92 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5637           92 :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
    5638           92 :   rtx x10;
    5639           92 :   int res ATTRIBUTE_UNUSED;
    5640           92 :   x2 = XVECEXP (x1, 0, 1);
    5641           92 :   x3 = XEXP (x2, 1);
    5642           92 :   x4 = XEXP (x3, 1);
    5643           92 :   if (!rtx_equal_p (x4, operands[2]))
    5644              :     return -1;
    5645           92 :   x5 = XVECEXP (x1, 0, 0);
    5646           92 :   x6 = XEXP (x5, 1);
    5647           92 :   x7 = XEXP (x6, 0);
    5648           92 :   x8 = XEXP (x7, 1);
    5649           92 :   x9 = XEXP (x8, 0);
    5650           92 :   operands[3] = x9;
    5651           92 :   if (!flags_reg_operand (operands[3], E_VOIDmode))
    5652              :     return -1;
    5653           84 :   x10 = XEXP (x3, 0);
    5654           84 :   if (!rtx_equal_p (x10, operands[1]))
    5655              :     return -1;
    5656           84 :   switch (GET_MODE (x7))
    5657              :     {
    5658              :     case E_QImode:
    5659              :       return 0;
    5660              : 
    5661              :     case E_HImode:
    5662              :       return 1;
    5663              : 
    5664              :     case E_SImode:
    5665              :       return 2;
    5666              : 
    5667              :     case E_DImode:
    5668              :       return 3;
    5669              : 
    5670              :     default:
    5671              :       return -1;
    5672              :     }
    5673              : }
    5674              : 
    5675              : int
    5676            4 : pattern1587 (rtx x1)
    5677              : {
    5678            4 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5679            4 :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
    5680            4 :   rtx x10, x11, x12;
    5681            4 :   int res ATTRIBUTE_UNUSED;
    5682            4 :   x2 = XVECEXP (x1, 0, 0);
    5683            4 :   x3 = XEXP (x2, 1);
    5684            4 :   x4 = XEXP (x3, 0);
    5685            4 :   x5 = XEXP (x4, 0);
    5686            4 :   x6 = XEXP (x5, 0);
    5687            4 :   operands[1] = x6;
    5688            4 :   x7 = XEXP (x4, 1);
    5689            4 :   if (!rtx_equal_p (x7, operands[1]))
    5690              :     return -1;
    5691            4 :   x8 = XVECEXP (x1, 0, 1);
    5692            4 :   x9 = XEXP (x8, 1);
    5693            4 :   x10 = XEXP (x9, 0);
    5694            4 :   x11 = XEXP (x10, 0);
    5695            4 :   if (!rtx_equal_p (x11, operands[1]))
    5696              :     return -1;
    5697            4 :   x12 = XEXP (x9, 1);
    5698            4 :   if (!rtx_equal_p (x12, operands[1]))
    5699              :     return -1;
    5700            4 :   switch (GET_MODE (x4))
    5701              :     {
    5702            4 :     case E_SImode:
    5703            4 :       return pattern1586 (x1, 
    5704            4 : E_SImode); /* [-1, 0] */
    5705              : 
    5706            0 :     case E_DImode:
    5707            0 :       if (pattern1586 (x1, 
    5708              : E_DImode) != 0)
    5709              :         return -1;
    5710              :       return 1;
    5711              : 
    5712              :     default:
    5713              :       return -1;
    5714              :     }
    5715              : }
    5716              : 
    5717              : int
    5718            0 : pattern1601 (rtx x1, machine_mode i1, machine_mode i2)
    5719              : {
    5720            0 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5721            0 :   rtx x2, x3, x4;
    5722            0 :   int res ATTRIBUTE_UNUSED;
    5723            0 :   if (!register_operand (operands[0], i1)
    5724            0 :       || GET_MODE (x1) != i1)
    5725              :     return -1;
    5726            0 :   x2 = XVECEXP (x1, 0, 0);
    5727            0 :   if (GET_MODE (x2) != i1)
    5728              :     return -1;
    5729            0 :   x3 = XEXP (x2, 0);
    5730            0 :   if (GET_MODE (x3) != i1)
    5731              :     return -1;
    5732            0 :   x4 = XEXP (x3, 0);
    5733            0 :   if (GET_MODE (x4) != i2
    5734            0 :       || !register_operand (operands[2], i2)
    5735            0 :       || !register_operand (operands[1], i1))
    5736            0 :     return -1;
    5737              :   return 0;
    5738              : }
    5739              : 
    5740              : int
    5741          507 : pattern1610 (rtx x1, machine_mode i1, machine_mode i2)
    5742              : {
    5743          507 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5744          507 :   rtx x2, x3, x4;
    5745          507 :   int res ATTRIBUTE_UNUSED;
    5746          507 :   if (!register_operand (operands[0], i2)
    5747          507 :       || GET_MODE (x1) != i2)
    5748              :     return -1;
    5749          493 :   x2 = XVECEXP (x1, 0, 0);
    5750          493 :   if (GET_MODE (x2) != i2)
    5751              :     return -1;
    5752          493 :   x3 = XEXP (x2, 0);
    5753          493 :   if (GET_MODE (x3) != i2
    5754          493 :       || !register_operand (operands[1], i2))
    5755            5 :     return -1;
    5756          488 :   x4 = XEXP (x3, 2);
    5757          488 :   return pattern1609 (x4, 
    5758              : i1, 
    5759          488 : i2); /* [-1, 0] */
    5760              : }
    5761              : 
    5762              : int
    5763            0 : pattern1618 (rtx x1, machine_mode i1, machine_mode i2)
    5764              : {
    5765            0 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5766            0 :   rtx x2, x3, x4, x5, x6;
    5767            0 :   int res ATTRIBUTE_UNUSED;
    5768            0 :   if (!register_operand (operands[0], i1)
    5769            0 :       || GET_MODE (x1) != i1)
    5770              :     return -1;
    5771            0 :   x2 = XVECEXP (x1, 0, 0);
    5772            0 :   if (GET_MODE (x2) != i1)
    5773              :     return -1;
    5774            0 :   x3 = XEXP (x2, 0);
    5775            0 :   if (GET_MODE (x3) != i1)
    5776              :     return -1;
    5777            0 :   x4 = XEXP (x3, 0);
    5778            0 :   if (GET_MODE (x4) != i1
    5779            0 :       || !register_operand (operands[1], i1)
    5780            0 :       || !register_operand (operands[2], i1))
    5781            0 :     return -1;
    5782            0 :   x5 = XEXP (x3, 2);
    5783            0 :   if (GET_MODE (x5) != i1
    5784            0 :       || !nonimmediate_operand (operands[3], i1)
    5785            0 :       || !register_operand (operands[4], i2))
    5786            0 :     return -1;
    5787            0 :   x6 = XEXP (x2, 1);
    5788            0 :   if (!rtx_equal_p (x6, operands[3]))
    5789              :     return -1;
    5790              :   return 0;
    5791              : }
    5792              : 
    5793              : int
    5794           29 : pattern1630 (machine_mode i1)
    5795              : {
    5796           29 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5797           29 :   int res ATTRIBUTE_UNUSED;
    5798           29 :   if (!vsib_address_operand (operands[3], i1))
    5799              :     return -1;
    5800           21 :   switch (GET_MODE (operands[2]))
    5801              :     {
    5802            5 :     case E_V8SImode:
    5803            5 :       if (!register_operand (operands[2], E_V8SImode))
    5804              :         return -1;
    5805              :       return 0;
    5806              : 
    5807           16 :     case E_V4DImode:
    5808           16 :       if (!register_operand (operands[2], E_V4DImode))
    5809              :         return -1;
    5810              :       return 1;
    5811              : 
    5812              :     default:
    5813              :       return -1;
    5814              :     }
    5815              : }
    5816              : 
    5817              : int
    5818          184 : pattern1638 (rtx x1, int i1, int i2, int i3, int i4)
    5819              : {
    5820          184 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5821          184 :   rtx x2, x3, x4, x5;
    5822          184 :   int res ATTRIBUTE_UNUSED;
    5823          184 :   if (XVECLEN (x1, 0) != 4)
    5824              :     return -1;
    5825          184 :   x2 = XVECEXP (x1, 0, 0);
    5826          184 :   if (x2 != const_int_rtx[MAX_SAVED_CONST_INT + i4])
    5827              :     return -1;
    5828          184 :   x3 = XVECEXP (x1, 0, 1);
    5829          184 :   if (x3 != const_int_rtx[MAX_SAVED_CONST_INT + i3])
    5830              :     return -1;
    5831          184 :   x4 = XVECEXP (x1, 0, 2);
    5832          184 :   if (x4 != const_int_rtx[MAX_SAVED_CONST_INT + i2])
    5833              :     return -1;
    5834          184 :   x5 = XVECEXP (x1, 0, 3);
    5835          184 :   if (x5 != const_int_rtx[MAX_SAVED_CONST_INT + i1])
    5836            0 :     return -1;
    5837              :   return 0;
    5838              : }
    5839              : 
    5840              : int
    5841         1874 : pattern1649 (rtx x1)
    5842              : {
    5843         1874 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5844         1874 :   rtx x2, x3, x4, x5;
    5845         1874 :   int res ATTRIBUTE_UNUSED;
    5846         1874 :   x2 = XEXP (x1, 0);
    5847         1874 :   if (GET_CODE (x2) != STRICT_LOW_PART)
    5848              :     return -1;
    5849          125 :   x3 = XEXP (x2, 0);
    5850          125 :   operands[0] = x3;
    5851          125 :   if (!register_operand (operands[0], E_QImode))
    5852              :     return -1;
    5853          125 :   x4 = XEXP (x1, 1);
    5854          125 :   x5 = XEXP (x4, 1);
    5855          125 :   operands[1] = x5;
    5856          125 :   if (!nonimmediate_operand (operands[1], E_QImode))
    5857              :     return -1;
    5858           80 :   return pattern1533 (); /* [-1, 2] */
    5859              : }
    5860              : 
    5861              : int
    5862           29 : pattern1659 (rtx x1, machine_mode i1, machine_mode i2)
    5863              : {
    5864           29 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5865           29 :   rtx x2, x3;
    5866           29 :   int res ATTRIBUTE_UNUSED;
    5867           29 :   if (!register_operand (operands[0], i1)
    5868           29 :       || GET_MODE (x1) != i1)
    5869              :     return -1;
    5870           23 :   x2 = XEXP (x1, 0);
    5871           23 :   if (GET_MODE (x2) != i1)
    5872              :     return -1;
    5873           23 :   x3 = XEXP (x2, 0);
    5874           23 :   if (GET_MODE (x3) != i1
    5875           23 :       || !register_operand (operands[1], i1)
    5876           23 :       || !register_operand (operands[2], i1)
    5877           23 :       || !nonimmediate_operand (operands[3], i2)
    5878           46 :       || !const0_operand (operands[5], i1))
    5879            0 :     return -1;
    5880              :   return 0;
    5881              : }
    5882              : 
    5883              : int
    5884          725 : pattern1668 (rtx x1, machine_mode i1, machine_mode i2)
    5885              : {
    5886          725 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5887          725 :   rtx x2, x3;
    5888          725 :   int res ATTRIBUTE_UNUSED;
    5889          725 :   if (!register_operand (operands[0], i2)
    5890          725 :       || GET_MODE (x1) != i2)
    5891              :     return -1;
    5892          705 :   x2 = XVECEXP (x1, 0, 0);
    5893          705 :   if (GET_MODE (x2) != i2)
    5894              :     return -1;
    5895          705 :   x3 = XEXP (x2, 0);
    5896          705 :   if (GET_MODE (x3) != i2
    5897          705 :       || !register_operand (operands[1], i2)
    5898          700 :       || !register_operand (operands[2], i2)
    5899          696 :       || !register_operand (operands[3], i2)
    5900          696 :       || !const0_operand (operands[4], i2)
    5901         1401 :       || !register_operand (operands[5], i1))
    5902           19 :     return -1;
    5903              :   return 0;
    5904              : }
    5905              : 
    5906              : int
    5907          118 : pattern1678 (machine_mode i1)
    5908              : {
    5909          118 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5910          118 :   int res ATTRIBUTE_UNUSED;
    5911          118 :   if (!vsib_address_operand (operands[4], i1))
    5912              :     return -1;
    5913          118 :   switch (GET_MODE (operands[3]))
    5914              :     {
    5915           82 :     case E_V4SImode:
    5916           82 :       if (!register_operand (operands[3], E_V4SImode))
    5917              :         return -1;
    5918              :       return 0;
    5919              : 
    5920           36 :     case E_V4DImode:
    5921           36 :       if (!register_operand (operands[3], E_V4DImode))
    5922              :         return -1;
    5923              :       return 1;
    5924              : 
    5925              :     default:
    5926              :       return -1;
    5927              :     }
    5928              : }
    5929              : 
    5930              : int
    5931           19 : pattern1686 (rtx x1, machine_mode i1)
    5932              : {
    5933           19 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5934           19 :   rtx x2, x3, x4;
    5935           19 :   int res ATTRIBUTE_UNUSED;
    5936           19 :   x2 = XVECEXP (x1, 0, 0);
    5937           19 :   x3 = XEXP (x2, 0);
    5938           19 :   if (GET_MODE (x3) != i1)
    5939              :     return -1;
    5940           19 :   x4 = XEXP (x2, 1);
    5941           19 :   if (GET_MODE (x4) != i1)
    5942              :     return -1;
    5943           19 :   switch (GET_MODE (operands[2]))
    5944              :     {
    5945           17 :     case E_SImode:
    5946           17 :       return pattern1685 (x1, 
    5947           17 : E_SImode); /* [-1, 0] */
    5948              : 
    5949            2 :     case E_DImode:
    5950            2 :       if (pattern1685 (x1, 
    5951              : E_DImode) != 0)
    5952              :         return -1;
    5953              :       return 1;
    5954              : 
    5955              :     default:
    5956              :       return -1;
    5957              :     }
    5958              : }
    5959              : 
    5960              : int
    5961         1356 : pattern1697 (rtx x1, machine_mode i1)
    5962              : {
    5963         1356 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5964         1356 :   rtx x2, x3, x4, x5;
    5965         1356 :   int res ATTRIBUTE_UNUSED;
    5966         1356 :   if (!register_operand (operands[0], i1)
    5967         1356 :       || GET_MODE (x1) != i1)
    5968              :     return -1;
    5969         1316 :   x2 = XVECEXP (x1, 0, 0);
    5970         1316 :   if (GET_MODE (x2) != i1)
    5971              :     return -1;
    5972         1316 :   x3 = XEXP (x2, 0);
    5973         1316 :   if (GET_MODE (x3) != i1)
    5974              :     return -1;
    5975         1316 :   x4 = XEXP (x3, 0);
    5976         1316 :   if (GET_MODE (x4) != i1
    5977         1316 :       || !register_operand (operands[2], i1))
    5978           15 :     return -1;
    5979         1301 :   x5 = XEXP (x4, 2);
    5980         1301 :   if (GET_MODE (x5) != i1)
    5981              :     return -1;
    5982              :   return 0;
    5983              : }
    5984              : 
    5985              : int
    5986          544 : pattern1706 (rtx x1)
    5987              : {
    5988          544 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5989          544 :   rtx x2, x3, x4, x5, x6, x7, x8;
    5990          544 :   int res ATTRIBUTE_UNUSED;
    5991          544 :   if (!register_operand (operands[0], E_DImode))
    5992              :     return -1;
    5993          544 :   x2 = XEXP (x1, 0);
    5994          544 :   x3 = XEXP (x2, 0);
    5995          544 :   operands[1] = x3;
    5996          544 :   if (!nonimmediate_operand (operands[1], E_DImode))
    5997              :     return -1;
    5998          544 :   x4 = XEXP (x1, 1);
    5999          544 :   if (GET_MODE (x4) != E_DImode)
    6000              :     return -1;
    6001          544 :   x5 = XEXP (x4, 0);
    6002          544 :   if (GET_MODE (x5) != E_TImode)
    6003              :     return -1;
    6004          544 :   x6 = XEXP (x5, 0);
    6005          544 :   if (GET_MODE (x6) != E_TImode)
    6006              :     return -1;
    6007          544 :   x7 = XEXP (x6, 0);
    6008          544 :   operands[2] = x7;
    6009          544 :   if (!register_operand (operands[2], E_DImode))
    6010              :     return -1;
    6011          544 :   x8 = XEXP (x5, 1);
    6012          544 :   operands[4] = x8;
    6013          544 :   if (!const_0_to_255_operand (operands[4], E_QImode))
    6014              :     return -1;
    6015              :   return 0;
    6016              : }
    6017              : 
    6018              : int
    6019           36 : pattern1718 (rtx x1, machine_mode i1)
    6020              : {
    6021           36 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    6022           36 :   rtx x2, x3, x4, x5, x6, x7, x8;
    6023           36 :   int res ATTRIBUTE_UNUSED;
    6024           36 :   x2 = XEXP (x1, 0);
    6025           36 :   x3 = XEXP (x2, 0);
    6026           36 :   x4 = XEXP (x3, 0);
    6027           36 :   x5 = XEXP (x4, 0);
    6028           36 :   operands[1] = x5;
    6029           36 :   x6 = XEXP (x3, 2);
    6030           36 :   if (GET_MODE (x6) != i1
    6031           36 :       || !nonimmediate_operand (operands[3], i1))
    6032            0 :     return -1;
    6033           36 :   x7 = XEXP (x2, 1);
    6034           36 :   if (!rtx_equal_p (x7, operands[1]))
    6035              :     return -1;
    6036           12 :   x8 = XEXP (x1, 1);
    6037           12 :   if (!rtx_equal_p (x8, operands[1]))
    6038              :     return -1;
    6039              :   return 0;
    6040              : }
    6041              : 
    6042              : int
    6043          152 : pattern1726 (machine_mode i1)
    6044              : {
    6045          152 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    6046          152 :   int res ATTRIBUTE_UNUSED;
    6047          152 :   if (!vsib_address_operand (operands[2], i1))
    6048              :     return -1;
    6049          130 :   switch (GET_MODE (operands[3]))
    6050              :     {
    6051           86 :     case E_V4SImode:
    6052           86 :       if (!register_operand (operands[3], E_V4SImode))
    6053              :         return -1;
    6054              :       return 0;
    6055              : 
    6056           44 :     case E_V4DImode:
    6057           44 :       if (!register_operand (operands[3], E_V4DImode))
    6058              :         return -1;
    6059              :       return 1;
    6060              : 
    6061              :     default:
    6062              :       return -1;
    6063              :     }
    6064              : }
    6065              : 
    6066              : int
    6067          872 : pattern1733 (rtx x1, machine_mode i1)
    6068              : {
    6069          872 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    6070          872 :   rtx x2, x3, x4;
    6071          872 :   int res ATTRIBUTE_UNUSED;
    6072          872 :   if (!vsib_mem_operator (operands[5], i1)
    6073          872 :       || !register_operand (operands[6], E_QImode))
    6074           80 :     return -1;
    6075          792 :   x2 = XEXP (x1, 1);
    6076          792 :   if (GET_MODE (x2) != i1
    6077          792 :       || !scratch_operand (operands[1], E_QImode))
    6078            0 :     return -1;
    6079          792 :   x3 = XEXP (x1, 0);
    6080          792 :   x4 = XEXP (x3, 0);
    6081          792 :   switch (GET_MODE (x4))
    6082              :     {
    6083              :     case E_SImode:
    6084              :       return 0;
    6085              : 
    6086          792 :     case E_DImode:
    6087          792 :       return 1;
    6088              : 
    6089              :     default:
    6090              :       return -1;
    6091              :     }
    6092              : }
    6093              : 
    6094              : int
    6095          177 : pattern1743 (rtx x1, machine_mode i1, machine_mode i2)
    6096              : {
    6097          177 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    6098          177 :   rtx x2, x3;
    6099          177 :   int res ATTRIBUTE_UNUSED;
    6100          177 :   if (!register_operand (operands[0], i2)
    6101          177 :       || GET_MODE (x1) != i2
    6102          177 :       || !register_operand (operands[6], E_QImode)
    6103          124 :       || !vsib_mem_operator (operands[5], i1)
    6104          301 :       || !scratch_operand (operands[1], E_QImode))
    6105           53 :     return -1;
    6106          124 :   x2 = XVECEXP (x1, 0, 2);
    6107          124 :   x3 = XEXP (x2, 0);
    6108          124 :   switch (GET_MODE (x3))
    6109              :     {
    6110            0 :     case E_SImode:
    6111            0 :       return pattern1742 (
    6112            0 : E_SImode); /* [-1, 1] */
    6113              : 
    6114          124 :     case E_DImode:
    6115          124 :       res = pattern1742 (
    6116              : E_DImode);
    6117          124 :       if (res >= 0)
    6118          116 :         return res + 2; /* [2, 3] */
    6119              :       return -1;
    6120              : 
    6121              :     default:
    6122              :       return -1;
    6123              :     }
    6124              : }
    6125              : 
    6126              : int
    6127         1363 : pattern1757 (rtx x1, machine_mode i1)
    6128              : {
    6129         1363 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    6130         1363 :   rtx x2, x3, x4;
    6131         1363 :   int res ATTRIBUTE_UNUSED;
    6132         1363 :   if (!register_operand (operands[0], i1)
    6133         1363 :       || GET_MODE (x1) != i1)
    6134              :     return -1;
    6135         1349 :   x2 = XVECEXP (x1, 0, 0);
    6136         1349 :   if (GET_MODE (x2) != i1)
    6137              :     return -1;
    6138         1349 :   x3 = XEXP (x2, 0);
    6139         1349 :   if (GET_MODE (x3) != i1)
    6140              :     return -1;
    6141         1349 :   x4 = XEXP (x3, 0);
    6142         1349 :   if (GET_MODE (x4) != i1
    6143         1349 :       || !nonimmediate_operand (operands[1], i1)
    6144         1349 :       || !register_operand (operands[2], i1)
    6145         1349 :       || !register_operand (operands[3], i1)
    6146         2698 :       || !const0_operand (operands[4], i1))
    6147            0 :     return -1;
    6148              :   return 0;
    6149              : }
    6150              : 
    6151              : int
    6152          429 : pattern1764 (rtx x1, machine_mode i1, machine_mode i2)
    6153              : {
    6154          429 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    6155          429 :   rtx x2, x3;
    6156          429 :   int res ATTRIBUTE_UNUSED;
    6157          429 :   if (!register_operand (operands[0], i1)
    6158          405 :       || GET_MODE (x1) != i1
    6159          405 :       || !register_operand (operands[2], i1)
    6160          404 :       || !vsib_mem_operator (operands[7], i2)
    6161          833 :       || !register_operand (operands[5], i1))
    6162          153 :     return -1;
    6163          276 :   x2 = XVECEXP (x1, 0, 1);
    6164          276 :   x3 = XEXP (x2, 0);
    6165          276 :   switch (GET_MODE (x3))
    6166              :     {
    6167            0 :     case E_SImode:
    6168            0 :       return pattern1763 (
    6169            0 : E_SImode); /* [-1, 1] */
    6170              : 
    6171          276 :     case E_DImode:
    6172          276 :       res = pattern1763 (
    6173              : E_DImode);
    6174          276 :       if (res >= 0)
    6175          139 :         return res + 2; /* [2, 3] */
    6176              :       return -1;
    6177              : 
    6178              :     default:
    6179              :       return -1;
    6180              :     }
    6181              : }
    6182              : 
    6183              : int
    6184            8 : pattern1774 (rtx x1, machine_mode i1)
    6185              : {
    6186            8 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    6187            8 :   int res ATTRIBUTE_UNUSED;
    6188            8 :   if (GET_MODE (x1) != i1
    6189            8 :       || !ix86_carry_flag_operator (operands[3], i1)
    6190            8 :       || !nonimmediate_operand (operands[1], i1)
    6191           16 :       || !x86_64_general_operand (operands[2], i1))
    6192            0 :     return -1;
    6193              :   return 0;
    6194              : }
    6195              : 
    6196              : int
    6197          755 : pattern1781 (rtx x1, machine_mode i1, machine_mode i2)
    6198              : {
    6199          755 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    6200          755 :   rtx x2, x3;
    6201          755 :   int res ATTRIBUTE_UNUSED;
    6202          755 :   if (!register_operand (operands[0], i1)
    6203          755 :       || GET_MODE (x1) != i1)
    6204              :     return -1;
    6205          688 :   x2 = XEXP (x1, 0);
    6206          688 :   if (GET_MODE (x2) != i1)
    6207              :     return -1;
    6208          688 :   x3 = XEXP (x2, 0);
    6209          688 :   if (GET_MODE (x3) != i2
    6210          688 :       || !register_operand (operands[1], i1)
    6211          688 :       || !nonimmediate_operand (operands[2], i1)
    6212          671 :       || !const_0_to_7_operand (operands[3], E_VOIDmode)
    6213          671 :       || !const_0_to_7_operand (operands[4], E_VOIDmode)
    6214          643 :       || !const_0_to_7_operand (operands[5], E_VOIDmode)
    6215          643 :       || !const_0_to_7_operand (operands[6], E_VOIDmode)
    6216          643 :       || !const_8_to_15_operand (operands[7], E_VOIDmode)
    6217          643 :       || !const_8_to_15_operand (operands[8], E_VOIDmode)
    6218          643 :       || !const_8_to_15_operand (operands[9], E_VOIDmode)
    6219          643 :       || !const_8_to_15_operand (operands[10], E_VOIDmode)
    6220         1331 :       || !nonimm_or_0_operand (operands[11], i1))
    6221           52 :     return -1;
    6222              :   return 0;
    6223              : }
    6224              : 
    6225              : int
    6226          599 : pattern1797 (rtx x1)
    6227              : {
    6228          599 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    6229          599 :   int res ATTRIBUTE_UNUSED;
    6230          599 :   switch (GET_MODE (operands[0]))
    6231              :     {
    6232          286 :     case E_SImode:
    6233          286 :       if (!register_operand (operands[0], E_SImode)
    6234          286 :           || GET_MODE (x1) != E_SImode)
    6235              :         return -1;
    6236              :       return 0;
    6237              : 
    6238          313 :     case E_V16QImode:
    6239          313 :       if (!register_operand (operands[0], E_V16QImode)
    6240          313 :           || GET_MODE (x1) != E_V16QImode)
    6241              :         return -1;
    6242              :       return 1;
    6243              : 
    6244              :     default:
    6245              :       return -1;
    6246              :     }
    6247              : }
    6248              : 
    6249              : int
    6250         5404 : pattern1805 (rtx x1)
    6251              : {
    6252         5404 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    6253         5404 :   int res ATTRIBUTE_UNUSED;
    6254         5404 :   switch (GET_MODE (operands[0]))
    6255              :     {
    6256          683 :     case E_V16HImode:
    6257          683 :       if (!nonimmediate_operand (operands[0], E_V16HImode)
    6258          683 :           || GET_MODE (x1) != E_V16HImode
    6259         1366 :           || !nonimmediate_operand (operands[1], E_V32HImode))
    6260            0 :         return -1;
    6261              :       return 0;
    6262              : 
    6263          315 :     case E_V16HFmode:
    6264          315 :       if (!nonimmediate_operand (operands[0], E_V16HFmode)
    6265          315 :           || GET_MODE (x1) != E_V16HFmode
    6266          630 :           || !nonimmediate_operand (operands[1], E_V32HFmode))
    6267            3 :         return -1;
    6268              :       return 1;
    6269              : 
    6270           27 :     case E_V16BFmode:
    6271           27 :       if (!nonimmediate_operand (operands[0], E_V16BFmode)
    6272           27 :           || GET_MODE (x1) != E_V16BFmode
    6273           54 :           || !nonimmediate_operand (operands[1], E_V32BFmode))
    6274            0 :         return -1;
    6275              :       return 2;
    6276              : 
    6277         4379 :     case E_V16QImode:
    6278         4379 :       if (!nonimmediate_operand (operands[0], E_V16QImode)
    6279         4379 :           || GET_MODE (x1) != E_V16QImode
    6280         8758 :           || !nonimmediate_operand (operands[1], E_V32QImode))
    6281         1199 :         return -1;
    6282              :       return 3;
    6283              : 
    6284              :     default:
    6285              :       return -1;
    6286              :     }
    6287              : }
    6288              : 
    6289              : int
    6290            0 : pattern1822 (rtx x1, machine_mode i1)
    6291              : {
    6292            0 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    6293            0 :   rtx x2, x3, x4, x5, x6, x7;
    6294            0 :   int res ATTRIBUTE_UNUSED;
    6295            0 :   x2 = XVECEXP (x1, 0, 0);
    6296            0 :   x3 = XEXP (x2, 1);
    6297            0 :   x4 = XEXP (x3, 0);
    6298            0 :   x5 = XEXP (x4, 0);
    6299            0 :   if (GET_MODE (x5) != i1
    6300            0 :       || !ix86_carry_flag_operator (operands[4], i1)
    6301            0 :       || !nonimmediate_operand (operands[1], i1))
    6302            0 :     return -1;
    6303            0 :   x6 = XVECEXP (x1, 0, 1);
    6304            0 :   x7 = XEXP (x6, 1);
    6305            0 :   return pattern1821 (x7, 
    6306            0 : i1); /* [-1, 0] */
    6307              : }
    6308              : 
    6309              : int
    6310        14947 : pattern1829 (rtx x1, machine_mode i1, machine_mode i2)
    6311              : {
    6312        14947 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    6313        14947 :   rtx x2, x3, x4, x5, x6;
    6314        14947 :   int res ATTRIBUTE_UNUSED;
    6315        14947 :   x2 = XVECEXP (x1, 0, 0);
    6316        14947 :   x3 = XEXP (x2, 1);
    6317        14947 :   x4 = XEXP (x3, 0);
    6318        14947 :   x5 = XEXP (x4, 0);
    6319        14947 :   if (GET_MODE (x5) != i2
    6320        14947 :       || !nonimmediate_operand (operands[1], i1))
    6321          136 :     return -1;
    6322        14811 :   x6 = XEXP (x4, 1);
    6323        14811 :   if (GET_MODE (x6) != i2
    6324        14811 :       || !nonimmediate_operand (operands[2], i1)
    6325        29586 :       || pattern1827 (x1, 
    6326              : i1, 
    6327              : i2) != 0)
    6328           36 :     return -1;
    6329              :   return 0;
    6330              : }
    6331              : 
    6332              : int
    6333          749 : pattern1839 (rtx x1, machine_mode i1)
    6334              : {
    6335          749 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    6336          749 :   rtx x2, x3, x4, x5, x6, x7;
    6337          749 :   int res ATTRIBUTE_UNUSED;
    6338          749 :   x2 = XEXP (x1, 0);
    6339          749 :   x3 = XEXP (x2, 0);
    6340          749 :   x4 = XEXP (x3, 0);
    6341          749 :   x5 = XEXP (x4, 0);
    6342          749 :   operands[1] = x5;
    6343          749 :   if (!nonimmediate_operand (operands[1], i1)
    6344          749 :       || !register_operand (operands[3], i1))
    6345           10 :     return -1;
    6346          739 :   x6 = XEXP (x2, 1);
    6347          739 :   if (!rtx_equal_p (x6, operands[1]))
    6348              :     return -1;
    6349          326 :   x7 = XEXP (x1, 1);
    6350          326 :   if (!rtx_equal_p (x7, operands[1]))
    6351              :     return -1;
    6352              :   return 0;
    6353              : }
    6354              : 
    6355              : int
    6356           96 : pattern1846 (rtx x1, rtx_code i1)
    6357              : {
    6358           96 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    6359           96 :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
    6360           96 :   rtx x10, x11, x12, x13, x14, x15, x16, x17;
    6361           96 :   rtx x18, x19, x20, x21, x22, x23, x24, x25;
    6362           96 :   rtx x26, x27, x28, x29, x30, x31, x32, x33;
    6363           96 :   rtx x34, x35, x36, x37, x38, x39, x40, x41;
    6364           96 :   rtx x42, x43, x44, x45, x46, x47, x48, x49;
    6365           96 :   rtx x50, x51, x52, x53, x54, x55;
    6366           96 :   int res ATTRIBUTE_UNUSED;
    6367           96 :   x2 = XEXP (x1, 0);
    6368           96 :   x3 = XEXP (x2, 0);
    6369           96 :   x4 = XEXP (x3, 0);
    6370           96 :   x5 = XEXP (x4, 0);
    6371           96 :   if (GET_CODE (x5) != VEC_SELECT
    6372           96 :       || GET_MODE (x5) != E_V2QImode)
    6373              :     return -1;
    6374           96 :   x6 = XEXP (x5, 1);
    6375           96 :   if (GET_CODE (x6) != PARALLEL
    6376           96 :       || XVECLEN (x6, 0) != 2)
    6377              :     return -1;
    6378           96 :   x7 = XVECEXP (x6, 0, 0);
    6379           96 :   if (x7 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
    6380              :     return -1;
    6381           96 :   x8 = XVECEXP (x6, 0, 1);
    6382           96 :   if (x8 != const_int_rtx[MAX_SAVED_CONST_INT + 8])
    6383              :     return -1;
    6384           96 :   x9 = XEXP (x3, 1);
    6385           96 :   if (GET_CODE (x9) != i1)
    6386              :     return -1;
    6387           96 :   x10 = XEXP (x9, 0);
    6388           96 :   if (GET_CODE (x10) != VEC_SELECT
    6389           96 :       || GET_MODE (x10) != E_V2QImode)
    6390              :     return -1;
    6391           96 :   x11 = XEXP (x10, 1);
    6392           96 :   if (GET_CODE (x11) != PARALLEL
    6393           96 :       || XVECLEN (x11, 0) != 2)
    6394              :     return -1;
    6395           96 :   x12 = XVECEXP (x11, 0, 0);
    6396           96 :   if (x12 != const_int_rtx[MAX_SAVED_CONST_INT + 1])
    6397              :     return -1;
    6398           96 :   x13 = XVECEXP (x11, 0, 1);
    6399           96 :   if (x13 != const_int_rtx[MAX_SAVED_CONST_INT + 9])
    6400              :     return -1;
    6401           96 :   x14 = XEXP (x2, 1);
    6402           96 :   x15 = XEXP (x14, 0);
    6403           96 :   if (GET_CODE (x15) != i1)
    6404              :     return -1;
    6405           96 :   x16 = XEXP (x15, 0);
    6406           96 :   if (GET_CODE (x16) != VEC_SELECT
    6407           96 :       || GET_MODE (x16) != E_V2QImode)
    6408              :     return -1;
    6409           96 :   x17 = XEXP (x16, 1);
    6410           96 :   if (GET_CODE (x17) != PARALLEL
    6411           96 :       || XVECLEN (x17, 0) != 2)
    6412              :     return -1;
    6413           96 :   x18 = XVECEXP (x17, 0, 0);
    6414           96 :   if (x18 != const_int_rtx[MAX_SAVED_CONST_INT + 2])
    6415              :     return -1;
    6416           96 :   x19 = XVECEXP (x17, 0, 1);
    6417           96 :   if (x19 != const_int_rtx[MAX_SAVED_CONST_INT + 10])
    6418              :     return -1;
    6419           96 :   x20 = XEXP (x14, 1);
    6420           96 :   if (GET_CODE (x20) != i1)
    6421              :     return -1;
    6422           96 :   x21 = XEXP (x20, 0);
    6423           96 :   if (GET_CODE (x21) != VEC_SELECT
    6424           96 :       || GET_MODE (x21) != E_V2QImode)
    6425              :     return -1;
    6426           96 :   x22 = XEXP (x21, 1);
    6427           96 :   if (GET_CODE (x22) != PARALLEL
    6428           96 :       || XVECLEN (x22, 0) != 2)
    6429              :     return -1;
    6430           96 :   x23 = XVECEXP (x22, 0, 0);
    6431           96 :   if (x23 != const_int_rtx[MAX_SAVED_CONST_INT + 3])
    6432              :     return -1;
    6433           96 :   x24 = XVECEXP (x22, 0, 1);
    6434           96 :   if (x24 != const_int_rtx[MAX_SAVED_CONST_INT + 11])
    6435              :     return -1;
    6436           96 :   x25 = XEXP (x1, 1);
    6437           96 :   x26 = XEXP (x25, 0);
    6438           96 :   x27 = XEXP (x26, 0);
    6439           96 :   if (GET_CODE (x27) != i1)
    6440              :     return -1;
    6441           96 :   x28 = XEXP (x27, 0);
    6442           96 :   if (GET_CODE (x28) != VEC_SELECT
    6443           96 :       || GET_MODE (x28) != E_V2QImode)
    6444              :     return -1;
    6445           96 :   x29 = XEXP (x28, 1);
    6446           96 :   if (GET_CODE (x29) != PARALLEL
    6447           96 :       || XVECLEN (x29, 0) != 2)
    6448              :     return -1;
    6449           96 :   x30 = XVECEXP (x29, 0, 0);
    6450           96 :   if (x30 != const_int_rtx[MAX_SAVED_CONST_INT + 4])
    6451              :     return -1;
    6452           96 :   x31 = XVECEXP (x29, 0, 1);
    6453           96 :   if (x31 != const_int_rtx[MAX_SAVED_CONST_INT + 12])
    6454              :     return -1;
    6455           96 :   x32 = XEXP (x26, 1);
    6456           96 :   if (GET_CODE (x32) != i1)
    6457              :     return -1;
    6458           96 :   x33 = XEXP (x32, 0);
    6459           96 :   if (GET_CODE (x33) != VEC_SELECT
    6460           96 :       || GET_MODE (x33) != E_V2QImode)
    6461              :     return -1;
    6462           96 :   x34 = XEXP (x33, 1);
    6463           96 :   if (GET_CODE (x34) != PARALLEL
    6464           96 :       || XVECLEN (x34, 0) != 2)
    6465              :     return -1;
    6466           96 :   x35 = XVECEXP (x34, 0, 0);
    6467           96 :   if (x35 != const_int_rtx[MAX_SAVED_CONST_INT + 5])
    6468              :     return -1;
    6469           96 :   x36 = XVECEXP (x34, 0, 1);
    6470           96 :   if (x36 != const_int_rtx[MAX_SAVED_CONST_INT + 13])
    6471              :     return -1;
    6472           96 :   x37 = XEXP (x25, 1);
    6473           96 :   x38 = XEXP (x37, 0);
    6474           96 :   if (GET_CODE (x38) != i1)
    6475              :     return -1;
    6476           96 :   x39 = XEXP (x38, 0);
    6477           96 :   if (GET_CODE (x39) != VEC_SELECT
    6478           96 :       || GET_MODE (x39) != E_V2QImode)
    6479              :     return -1;
    6480           96 :   x40 = XEXP (x39, 1);
    6481           96 :   if (GET_CODE (x40) != PARALLEL
    6482           96 :       || XVECLEN (x40, 0) != 2)
    6483              :     return -1;
    6484           96 :   x41 = XVECEXP (x40, 0, 0);
    6485           96 :   if (x41 != const_int_rtx[MAX_SAVED_CONST_INT + 6])
    6486              :     return -1;
    6487           96 :   x42 = XVECEXP (x40, 0, 1);
    6488           96 :   if (x42 != const_int_rtx[MAX_SAVED_CONST_INT + 14])
    6489              :     return -1;
    6490           96 :   x43 = XEXP (x37, 1);
    6491           96 :   if (GET_CODE (x43) != i1)
    6492              :     return -1;
    6493           96 :   x44 = XEXP (x43, 0);
    6494           96 :   if (GET_CODE (x44) != VEC_SELECT
    6495           96 :       || GET_MODE (x44) != E_V2QImode)
    6496              :     return -1;
    6497           96 :   x45 = XEXP (x44, 1);
    6498           96 :   if (GET_CODE (x45) != PARALLEL
    6499           96 :       || XVECLEN (x45, 0) != 2)
    6500              :     return -1;
    6501           96 :   x46 = XVECEXP (x45, 0, 0);
    6502           96 :   if (x46 != const_int_rtx[MAX_SAVED_CONST_INT + 7])
    6503              :     return -1;
    6504           96 :   x47 = XVECEXP (x45, 0, 1);
    6505           96 :   if (x47 != const_int_rtx[MAX_SAVED_CONST_INT + 15])
    6506              :     return -1;
    6507           96 :   x48 = XEXP (x5, 0);
    6508           96 :   operands[1] = x48;
    6509           96 :   if (!nonimmediate_operand (operands[1], E_V16QImode))
    6510              :     return -1;
    6511           96 :   x49 = XEXP (x10, 0);
    6512           96 :   if (!rtx_equal_p (x49, operands[1]))
    6513              :     return -1;
    6514           96 :   x50 = XEXP (x16, 0);
    6515           96 :   if (!rtx_equal_p (x50, operands[1]))
    6516              :     return -1;
    6517           96 :   x51 = XEXP (x21, 0);
    6518           96 :   if (!rtx_equal_p (x51, operands[1]))
    6519              :     return -1;
    6520           96 :   x52 = XEXP (x28, 0);
    6521           96 :   if (!rtx_equal_p (x52, operands[1]))
    6522              :     return -1;
    6523           96 :   x53 = XEXP (x33, 0);
    6524           96 :   if (!rtx_equal_p (x53, operands[1]))
    6525              :     return -1;
    6526           96 :   x54 = XEXP (x39, 0);
    6527           96 :   if (!rtx_equal_p (x54, operands[1]))
    6528              :     return -1;
    6529           96 :   x55 = XEXP (x44, 0);
    6530           96 :   if (!rtx_equal_p (x55, operands[1]))
    6531              :     return -1;
    6532              :   return 0;
    6533              : }
    6534              : 
    6535              : int
    6536         1056 : pattern1902 (rtx x1, machine_mode i1, machine_mode i2)
    6537              : {
    6538         1056 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    6539         1056 :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
    6540         1056 :   int res ATTRIBUTE_UNUSED;
    6541         1056 :   x2 = XVECEXP (x1, 0, 0);
    6542         1056 :   x3 = XEXP (x2, 1);
    6543         1056 :   x4 = XEXP (x3, 1);
    6544         1056 :   if (GET_MODE (x4) != i2)
    6545              :     return -1;
    6546         1056 :   x5 = XEXP (x4, 0);
    6547         1056 :   if (GET_MODE (x5) != i1)
    6548              :     return -1;
    6549         1056 :   x6 = XEXP (x5, 0);
    6550         1056 :   if (GET_MODE (x6) != i1
    6551         1056 :       || !ix86_carry_flag_operator (operands[5], i1)
    6552         2112 :       || !nonimmediate_operand (operands[0], i1))
    6553            0 :     return -1;
    6554         1056 :   x7 = XVECEXP (x1, 0, 1);
    6555         1056 :   x8 = XEXP (x7, 1);
    6556         1056 :   if (GET_MODE (x8) != i1)
    6557              :     return -1;
    6558         1056 :   x9 = XEXP (x8, 0);
    6559         1056 :   if (GET_MODE (x9) != i1)
    6560              :     return -1;
    6561              :   return 0;
    6562              : }
    6563              : 
    6564              : int
    6565          718 : pattern1911 (rtx x1, int i1, int i2, int i3, int i4)
    6566              : {
    6567          718 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    6568          718 :   rtx x2, x3, x4, x5;
    6569          718 :   int res ATTRIBUTE_UNUSED;
    6570          718 :   x2 = XVECEXP (x1, 0, 28);
    6571          718 :   if (x2 != const_int_rtx[MAX_SAVED_CONST_INT + i4])
    6572              :     return -1;
    6573          718 :   x3 = XVECEXP (x1, 0, 29);
    6574          718 :   if (x3 != const_int_rtx[MAX_SAVED_CONST_INT + i3])
    6575              :     return -1;
    6576          718 :   x4 = XVECEXP (x1, 0, 30);
    6577          718 :   if (x4 != const_int_rtx[MAX_SAVED_CONST_INT + i2])
    6578              :     return -1;
    6579          718 :   x5 = XVECEXP (x1, 0, 31);
    6580          718 :   if (x5 != const_int_rtx[MAX_SAVED_CONST_INT + i1])
    6581            0 :     return -1;
    6582              :   return 0;
    6583              : }
    6584              : 
    6585              : int
    6586          236 : pattern1918 (rtx x1, machine_mode i1, machine_mode i2, machine_mode i3)
    6587              : {
    6588          236 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    6589          236 :   rtx x2, x3, x4;
    6590          236 :   int res ATTRIBUTE_UNUSED;
    6591          236 :   if (!register_operand (operands[0], i3)
    6592          236 :       || GET_MODE (x1) != i3)
    6593              :     return -1;
    6594          232 :   x2 = XEXP (x1, 0);
    6595          232 :   if (GET_MODE (x2) != i3)
    6596              :     return -1;
    6597          232 :   x3 = XEXP (x2, 0);
    6598          232 :   if (GET_MODE (x3) != i3)
    6599              :     return -1;
    6600          232 :   x4 = XEXP (x3, 0);
    6601          232 :   if (GET_MODE (x4) != i2
    6602          232 :       || !register_operand (operands[1], i1))
    6603           10 :     return -1;
    6604              :   return 0;
    6605              : }
    6606              : 
    6607              :  int
    6608       193924 : recog_2 (rtx x1 ATTRIBUTE_UNUSED,
    6609              :         rtx_insn *insn ATTRIBUTE_UNUSED,
    6610              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
    6611              : {
    6612       193924 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    6613       193924 :   rtx x2, x3, x4, x5, x6, x7, x8;
    6614       193924 :   int res ATTRIBUTE_UNUSED;
    6615       193924 :   x2 = XEXP (x1, 1);
    6616       193924 :   x3 = XEXP (x2, 1);
    6617       193924 :   switch (GET_CODE (x3))
    6618              :     {
    6619       139015 :     case LABEL_REF:
    6620       139015 :       x4 = XEXP (x2, 2);
    6621       139015 :       if (GET_CODE (x4) != PC)
    6622              :         return -1;
    6623       139015 :       x5 = XEXP (x1, 0);
    6624       139015 :       if (GET_CODE (x5) != PC)
    6625              :         return -1;
    6626       139015 :       x6 = XEXP (x2, 0);
    6627       139015 :       operands[0] = x6;
    6628       139015 :       if (!nonmemory_operand (operands[2], E_QImode))
    6629              :         return -1;
    6630       138573 :       x7 = XEXP (x3, 0);
    6631       138573 :       operands[3] = x7;
    6632       138573 :       x8 = XEXP (x6, 0);
    6633       138573 :       switch (GET_MODE (x8))
    6634              :         {
    6635        70957 :         case E_SImode:
    6636        70957 :           if (!nonimmediate_operand (operands[1], E_SImode)
    6637        75120 :               || !
    6638              : #line 20152 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    6639              : ((TARGET_USE_BT || optimize_function_for_size_p (cfun))
    6640              :    && (CONST_INT_P (operands[2])
    6641              :        ? (INTVAL (operands[2]) < GET_MODE_BITSIZE (SImode)
    6642              :           && INTVAL (operands[2])
    6643              :                >= (optimize_function_for_size_p (cfun) ? 8 : 32))
    6644              :        : !memory_operand (operands[1], SImode))
    6645              :    && ix86_pre_reload_split ()))
    6646              :             return -1;
    6647              :           *pnum_clobbers = 1;
    6648              :           return 1452; /* *jcc_btsi */
    6649              : 
    6650              :         case E_DImode:
    6651              :           if (!nonimmediate_operand (operands[1], E_DImode)
    6652              :               || !(
    6653              : #line 20152 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    6654              : ((TARGET_USE_BT || optimize_function_for_size_p (cfun))
    6655              :    && (CONST_INT_P (operands[2])
    6656              :        ? (INTVAL (operands[2]) < GET_MODE_BITSIZE (DImode)
    6657              :           && INTVAL (operands[2])
    6658              :                >= (optimize_function_for_size_p (cfun) ? 8 : 32))
    6659              :        : !memory_operand (operands[1], DImode))
    6660              :    && ix86_pre_reload_split ()) && 
    6661              : #line 1198 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    6662              : (TARGET_64BIT)))
    6663              :             return -1;
    6664              :           *pnum_clobbers = 1;
    6665              :           return 1453; /* *jcc_btdi */
    6666              : 
    6667              :         default:
    6668              :           return -1;
    6669              :         }
    6670              : 
    6671              :     case REG:
    6672              :     case SUBREG:
    6673              :     case MEM:
    6674              :       operands[3] = x3;
    6675              :       if (!nonimmediate_operand (operands[3], E_HImode))
    6676              :         return -1;
    6677              :       x5 = XEXP (x1, 0);
    6678              :       operands[0] = x5;
    6679              :       if (!register_operand (operands[0], E_HImode)
    6680              :           || GET_MODE (x2) != E_HImode)
    6681              :         return -1;
    6682              :       x6 = XEXP (x2, 0);
    6683              :       operands[5] = x6;
    6684              :       if (!register_operand (operands[2], E_QImode))
    6685              :         return -1;
    6686              :       x4 = XEXP (x2, 2);
    6687              :       operands[4] = x4;
    6688              :       x8 = XEXP (x6, 0);
    6689              :       switch (pattern1595 (x8, 
    6690              : E_HImode))
    6691              :         {
    6692              :         case 0:
    6693              :           if (!
    6694              : #line 20295 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    6695              : (TARGET_USE_BT && TARGET_CMOVE
    6696              :    && ix86_pre_reload_split ()))
    6697              :             return -1;
    6698              :           *pnum_clobbers = 1;
    6699              :           return 1458; /* *cmov_bthi */
    6700              : 
    6701              :         case 1:
    6702              :           if (!(
    6703              : #line 20295 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    6704              : (TARGET_USE_BT && TARGET_CMOVE
    6705              :    && ix86_pre_reload_split ()) && 
    6706              : #line 1198 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    6707              : (TARGET_64BIT)))
    6708              :             return -1;
    6709              :           *pnum_clobbers = 1;
    6710              :           return 1459; /* *cmov_bthi */
    6711              : 
    6712              :         default:
    6713              :           return -1;
    6714              :         }
    6715              : 
    6716              :     default:
    6717              :       return -1;
    6718              :     }
    6719              : }
    6720              : 
    6721              :  int
    6722              : recog_11 (rtx x1 ATTRIBUTE_UNUSED,
    6723              :         rtx_insn *insn ATTRIBUTE_UNUSED,
    6724              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
    6725              : {
    6726              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    6727              :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
    6728              :   rtx x10, x11;
    6729              :   int res ATTRIBUTE_UNUSED;
    6730              :   x2 = XEXP (x1, 1);
    6731              :   if (GET_MODE (x2) != E_CCFPmode)
    6732              :     return -1;
    6733              :   x3 = XVECEXP (x2, 0, 0);
    6734              :   if (GET_CODE (x3) != VEC_SELECT)
    6735              :     return -1;
    6736              :   x4 = XEXP (x3, 1);
    6737              :   if (GET_CODE (x4) != PARALLEL
    6738              :       || XVECLEN (x4, 0) != 1)
    6739              :     return -1;
    6740              :   x5 = XVECEXP (x4, 0, 0);
    6741              :   if (x5 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
    6742              :     return -1;
    6743              :   x6 = XVECEXP (x2, 0, 1);
    6744              :   if (GET_CODE (x6) != VEC_SELECT)
    6745              :     return -1;
    6746              :   x7 = XEXP (x6, 1);
    6747              :   if (GET_CODE (x7) != PARALLEL
    6748              :       || XVECLEN (x7, 0) != 1)
    6749              :     return -1;
    6750              :   x8 = XVECEXP (x7, 0, 0);
    6751              :   if (x8 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
    6752              :     return -1;
    6753              :   x9 = XEXP (x1, 0);
    6754              :   if (GET_CODE (x9) != REG
    6755              :       || REGNO (x9) != 17
    6756              :       || GET_MODE (x9) != E_CCFPmode)
    6757              :     return -1;
    6758              :   x10 = XEXP (x3, 0);
    6759              :   operands[0] = x10;
    6760              :   x11 = XEXP (x6, 0);
    6761              :   operands[1] = x11;
    6762              :   switch (GET_MODE (x3))
    6763              :     {
    6764              :     case E_HFmode:
    6765              :       if (!register_operand (operands[0], E_V8HFmode)
    6766              :           || GET_MODE (x6) != E_HFmode
    6767              :           || !nonimmediate_operand (operands[1], E_V8HFmode)
    6768              :           || !(
    6769              : #line 5258 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    6770              : (TARGET_AVX10_2) && 
    6771              : #line 1386 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    6772              : (TARGET_AVX512FP16)))
    6773              :         return -1;
    6774              :       return 3746; /* avx10_2_comxhf */
    6775              : 
    6776              :     case E_SFmode:
    6777              :       if (!register_operand (operands[0], E_V4SFmode)
    6778              :           || GET_MODE (x6) != E_SFmode
    6779              :           || !nonimmediate_operand (operands[1], E_V4SFmode)
    6780              :           || !
    6781              : #line 5258 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    6782              : (TARGET_AVX10_2))
    6783              :         return -1;
    6784              :       return 3750; /* avx10_2_comxsf */
    6785              : 
    6786              :     case E_DFmode:
    6787              :       if (!register_operand (operands[0], E_V2DFmode)
    6788              :           || GET_MODE (x6) != E_DFmode
    6789              :           || !nonimmediate_operand (operands[1], E_V2DFmode)
    6790              :           || !
    6791              : #line 5258 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    6792              : (TARGET_AVX10_2))
    6793              :         return -1;
    6794              :       return 3754; /* avx10_2_comxdf */
    6795              : 
    6796              :     default:
    6797              :       return -1;
    6798              :     }
    6799              : }
    6800              : 
    6801              :  int
    6802              : recog_14 (rtx x1 ATTRIBUTE_UNUSED,
    6803              :         rtx_insn *insn ATTRIBUTE_UNUSED,
    6804              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
    6805              : {
    6806              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    6807              :   rtx x2, x3, x4, x5, x6, x7;
    6808              :   int res ATTRIBUTE_UNUSED;
    6809              :   x2 = XEXP (x1, 1);
    6810              :   switch (XINT (x2, 1))
    6811              :     {
    6812              :     case 25:
    6813              :       return recog_8 (x1, insn, pnum_clobbers);
    6814              : 
    6815              :     case 26:
    6816              :       if (pattern58 (x1, 
    6817              : E_HImode) != 0
    6818              :           || !
    6819              : #line 2031 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    6820              : (TARGET_SAHF))
    6821              :         return -1;
    6822              :       return 51; /* x86_sahf_1 */
    6823              : 
    6824              :     case 27:
    6825              :       return recog_7 (x1, insn, pnum_clobbers);
    6826              : 
    6827              :     case 45:
    6828              :       if (GET_MODE (x2) != E_CCFPmode)
    6829              :         return -1;
    6830              :       x3 = XVECEXP (x2, 0, 0);
    6831              :       if (GET_CODE (x3) != COMPARE
    6832              :           || GET_MODE (x3) != E_CCFPmode)
    6833              :         return -1;
    6834              :       x4 = XEXP (x1, 0);
    6835              :       if (GET_CODE (x4) != REG
    6836              :           || REGNO (x4) != 17
    6837              :           || GET_MODE (x4) != E_CCFPmode)
    6838              :         return -1;
    6839              :       x5 = XEXP (x3, 0);
    6840              :       operands[0] = x5;
    6841              :       x6 = XEXP (x3, 1);
    6842              :       operands[1] = x6;
    6843              :       switch (GET_MODE (operands[0]))
    6844              :         {
    6845              :         case E_SFmode:
    6846              :           if (!register_operand (operands[0], E_SFmode)
    6847              :               || !nonimmediate_operand (operands[1], E_SFmode)
    6848              :               || !
    6849              : #line 2083 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    6850              : (TARGET_AVX10_2))
    6851              :             return -1;
    6852              :           return 54; /* *cmpxsf */
    6853              : 
    6854              :         case E_DFmode:
    6855              :           if (!register_operand (operands[0], E_DFmode)
    6856              :               || !nonimmediate_operand (operands[1], E_DFmode)
    6857              :               || !
    6858              : #line 2083 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    6859              : (TARGET_AVX10_2))
    6860              :             return -1;
    6861              :           return 56; /* *cmpxdf */
    6862              : 
    6863              :         case E_HFmode:
    6864              :           if (!register_operand (operands[0], E_HFmode)
    6865              :               || !nonimmediate_operand (operands[1], E_HFmode)
    6866              :               || !
    6867              : #line 2096 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    6868              : (TARGET_AVX10_2))
    6869              :             return -1;
    6870              :           return 58; /* *cmpxhf */
    6871              : 
    6872              :         default:
    6873              :           return -1;
    6874              :         }
    6875              : 
    6876              :     case 42:
    6877              :       if (pattern60 (x1, 
    6878              : E_CCCmode) != 0)
    6879              :         return -1;
    6880              :       return 67; /* x86_stc */
    6881              : 
    6882              :     case 43:
    6883              :       x4 = XEXP (x1, 0);
    6884              :       operands[0] = x4;
    6885              :       x3 = XVECEXP (x2, 0, 0);
    6886              :       operands[1] = x3;
    6887              :       if (!flags_reg_operand (operands[1], E_VOIDmode))
    6888              :         return -1;
    6889              :       switch (GET_MODE (operands[0]))
    6890              :         {
    6891              :         case E_SImode:
    6892              :           if (!push_operand (operands[0], E_SImode)
    6893              :               || GET_MODE (x2) != E_SImode
    6894              :               || !(
    6895              : #line 2362 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    6896              : (GET_MODE_CLASS (GET_MODE (operands[1])) == MODE_CC) && 
    6897              : #line 1434 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    6898              : (word_mode == SImode)))
    6899              :             return -1;
    6900              :           return 84; /* pushflsi2 */
    6901              : 
    6902              :         case E_DImode:
    6903              :           if (!push_operand (operands[0], E_DImode)
    6904              :               || GET_MODE (x2) != E_DImode
    6905              :               || !(
    6906              : #line 2362 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    6907              : (GET_MODE_CLASS (GET_MODE (operands[1])) == MODE_CC) && 
    6908              : #line 1434 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    6909              : (word_mode == DImode)))
    6910              :             return -1;
    6911              :           return 85; /* pushfldi2 */
    6912              : 
    6913              :         default:
    6914              :           return -1;
    6915              :         }
    6916              : 
    6917              :     case 44:
    6918              :       if (GET_MODE (x2) != E_CCmode)
    6919              :         return -1;
    6920              :       x4 = XEXP (x1, 0);
    6921              :       operands[0] = x4;
    6922              :       if (!flags_reg_operand (operands[0], E_CCmode))
    6923              :         return -1;
    6924              :       x3 = XVECEXP (x2, 0, 0);
    6925              :       operands[1] = x3;
    6926              :       switch (GET_MODE (operands[1]))
    6927              :         {
    6928              :         case E_SImode:
    6929              :           if (!pop_operand (operands[1], E_SImode)
    6930              :               || !
    6931              : #line 1434 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    6932              : (word_mode == SImode))
    6933              :             return -1;
    6934              :           return 86; /* popflsi1 */
    6935              : 
    6936              :         case E_DImode:
    6937              :           if (!pop_operand (operands[1], E_DImode)
    6938              :               || !
    6939              : #line 1434 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    6940              : (word_mode == DImode))
    6941              :             return -1;
    6942              :           return 87; /* popfldi1 */
    6943              : 
    6944              :         default:
    6945              :           return -1;
    6946              :         }
    6947              : 
    6948              :     case 61:
    6949              :       if (GET_MODE (x2) != E_SFmode)
    6950              :         return -1;
    6951              :       x4 = XEXP (x1, 0);
    6952              :       operands[0] = x4;
    6953              :       if (!register_operand (operands[0], E_SFmode))
    6954              :         return -1;
    6955              :       x3 = XVECEXP (x2, 0, 0);
    6956              :       operands[1] = x3;
    6957              :       if (!register_operand (operands[1], E_BFmode)
    6958              :           || !
    6959              : #line 5582 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    6960              : (TARGET_SSE2))
    6961              :         return -1;
    6962              :       return 207; /* extendbfsf2_1 */
    6963              : 
    6964              :     case 29:
    6965              :       if (GET_MODE (x2) != E_HImode)
    6966              :         return -1;
    6967              :       x3 = XVECEXP (x2, 0, 0);
    6968              :       if (x3 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
    6969              :         return -1;
    6970              :       x4 = XEXP (x1, 0);
    6971              :       operands[0] = x4;
    6972              :       if (!memory_operand (operands[0], E_HImode)
    6973              :           || !
    6974              : #line 6156 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    6975              : (TARGET_80387))
    6976              :         return -1;
    6977              :       return 242; /* x86_fnstcw_1 */
    6978              : 
    6979              :     case 98:
    6980              :       if (GET_MODE (x2) != E_HImode)
    6981              :         return -1;
    6982              :       x4 = XEXP (x1, 0);
    6983              :       operands[0] = x4;
    6984              :       if (!register_operand (operands[0], E_HImode))
    6985              :         return -1;
    6986              :       x3 = XVECEXP (x2, 0, 0);
    6987              :       operands[1] = x3;
    6988              :       if (!nonimmediate_operand (operands[1], E_HImode))
    6989              :         return -1;
    6990              :       if ((
    6991              : #line 22744 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    6992              : (TARGET_APX_NF) && 
    6993              : #line 22653 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    6994              : (TARGET_BMI)))
    6995              :         return 1594; /* tzcnt_hi_nf */
    6996              :       if (pnum_clobbers == NULL
    6997              :           || !(
    6998              : #line 22744 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    6999              : (true) && 
    7000              : #line 22653 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7001              : (TARGET_BMI)))
    7002              :         return -1;
    7003              :       *pnum_clobbers = 1;
    7004              :       return 1595; /* tzcnt_hi */
    7005              : 
    7006              :     case 97:
    7007              :       if (GET_MODE (x2) != E_HImode)
    7008              :         return -1;
    7009              :       x4 = XEXP (x1, 0);
    7010              :       operands[0] = x4;
    7011              :       if (!register_operand (operands[0], E_HImode))
    7012              :         return -1;
    7013              :       x3 = XVECEXP (x2, 0, 0);
    7014              :       operands[1] = x3;
    7015              :       if (!nonimmediate_operand (operands[1], E_HImode))
    7016              :         return -1;
    7017              :       if ((
    7018              : #line 22744 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7019              : (TARGET_APX_NF) && 
    7020              : #line 22654 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7021              : (TARGET_LZCNT)))
    7022              :         return 1596; /* lzcnt_hi_nf */
    7023              :       if (pnum_clobbers == NULL
    7024              :           || !(
    7025              : #line 22744 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7026              : (true) && 
    7027              : #line 22654 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7028              : (TARGET_LZCNT)))
    7029              :         return -1;
    7030              :       *pnum_clobbers = 1;
    7031              :       return 1597; /* lzcnt_hi */
    7032              : 
    7033              :     case 28:
    7034              :       if (pattern58 (x1, 
    7035              : E_QImode) != 0)
    7036              :         return -1;
    7037              :       return 1680; /* parityqi2_cmp */
    7038              : 
    7039              :     case 55:
    7040              :       switch (pattern61 (x1))
    7041              :         {
    7042              :         case 0:
    7043              :           if (!
    7044              : #line 24507 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7045              : (TARGET_SSE && TARGET_SSE_MATH))
    7046              :             return -1;
    7047              :           return 1712; /* *rcpsf2_sse */
    7048              : 
    7049              :         case 1:
    7050              :           if (!
    7051              : #line 24533 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7052              : (TARGET_AVX512FP16))
    7053              :             return -1;
    7054              :           return 1713; /* rcphf2 */
    7055              : 
    7056              :         default:
    7057              :           return -1;
    7058              :         }
    7059              : 
    7060              :     case 32:
    7061              :       x4 = XEXP (x1, 0);
    7062              :       operands[0] = x4;
    7063              :       x3 = XVECEXP (x2, 0, 0);
    7064              :       operands[1] = x3;
    7065              :       if (!register_operand (operands[1], E_XFmode))
    7066              :         return -1;
    7067              :       switch (GET_MODE (operands[0]))
    7068              :         {
    7069              :         case E_SFmode:
    7070              :           if (!nonimmediate_operand (operands[0], E_SFmode)
    7071              :               || GET_MODE (x2) != E_SFmode
    7072              :               || !
    7073              : #line 24750 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7074              : (TARGET_USE_FANCY_MATH_387))
    7075              :             return -1;
    7076              :           return 1738; /* truncxfsf2_i387_noop_unspec */
    7077              : 
    7078              :         case E_DFmode:
    7079              :           if (!nonimmediate_operand (operands[0], E_DFmode)
    7080              :               || GET_MODE (x2) != E_DFmode
    7081              :               || !
    7082              : #line 24750 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7083              : (TARGET_USE_FANCY_MATH_387))
    7084              :             return -1;
    7085              :           return 1739; /* truncxfdf2_i387_noop_unspec */
    7086              : 
    7087              :         default:
    7088              :           return -1;
    7089              :         }
    7090              : 
    7091              :     case 56:
    7092              :       switch (pattern61 (x1))
    7093              :         {
    7094              :         case 0:
    7095              :           if (!
    7096              : #line 24771 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7097              : (TARGET_SSE))
    7098              :             return -1;
    7099              :           return 1741; /* *rsqrtsf2_sse */
    7100              : 
    7101              :         case 1:
    7102              :           if (!
    7103              : #line 24807 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7104              : (TARGET_AVX512FP16))
    7105              :             return -1;
    7106              :           return 1742; /* rsqrthf2 */
    7107              : 
    7108              :         default:
    7109              :           return -1;
    7110              :         }
    7111              : 
    7112              :     case 65:
    7113              :       if (GET_MODE (x2) != E_XFmode)
    7114              :         return -1;
    7115              :       x4 = XEXP (x1, 0);
    7116              :       operands[0] = x4;
    7117              :       if (!register_operand (operands[0], E_XFmode))
    7118              :         return -1;
    7119              :       x3 = XVECEXP (x2, 0, 0);
    7120              :       operands[1] = x3;
    7121              :       if (!register_operand (operands[1], E_XFmode)
    7122              :           || !
    7123              : #line 25076 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7124              : (TARGET_USE_FANCY_MATH_387
    7125              :    && flag_unsafe_math_optimizations))
    7126              :         return -1;
    7127              :       return 1749; /* sinxf2 */
    7128              : 
    7129              :     case 66:
    7130              :       if (GET_MODE (x2) != E_XFmode)
    7131              :         return -1;
    7132              :       x4 = XEXP (x1, 0);
    7133              :       operands[0] = x4;
    7134              :       if (!register_operand (operands[0], E_XFmode))
    7135              :         return -1;
    7136              :       x3 = XVECEXP (x2, 0, 0);
    7137              :       operands[1] = x3;
    7138              :       if (!register_operand (operands[1], E_XFmode)
    7139              :           || !
    7140              : #line 25076 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7141              : (TARGET_USE_FANCY_MATH_387
    7142              :    && flag_unsafe_math_optimizations))
    7143              :         return -1;
    7144              :       return 1750; /* cosxf2 */
    7145              : 
    7146              :     case 72:
    7147              :       if (GET_MODE (x2) != E_XFmode)
    7148              :         return -1;
    7149              :       x4 = XEXP (x1, 0);
    7150              :       operands[0] = x4;
    7151              :       if (!register_operand (operands[0], E_XFmode))
    7152              :         return -1;
    7153              :       x3 = XVECEXP (x2, 0, 0);
    7154              :       operands[1] = x3;
    7155              :       if (!register_operand (operands[1], E_XFmode)
    7156              :           || !
    7157              : #line 25709 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7158              : (TARGET_USE_FANCY_MATH_387
    7159              :    && flag_unsafe_math_optimizations))
    7160              :         return -1;
    7161              :       return 1757; /* *f2xm1xf2_i387 */
    7162              : 
    7163              :     case 70:
    7164              :       if (GET_MODE (x2) != E_XFmode)
    7165              :         return -1;
    7166              :       x4 = XEXP (x1, 0);
    7167              :       operands[0] = x4;
    7168              :       if (!register_operand (operands[0], E_XFmode))
    7169              :         return -1;
    7170              :       x3 = XVECEXP (x2, 0, 0);
    7171              :       operands[1] = x3;
    7172              :       if (!register_operand (operands[1], E_XFmode)
    7173              :           || !
    7174              : #line 26045 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7175              : (TARGET_USE_FANCY_MATH_387))
    7176              :         return -1;
    7177              :       return 1764; /* rintxf2 */
    7178              : 
    7179              :     case 71:
    7180              :       if (GET_MODE (x2) != E_HImode)
    7181              :         return -1;
    7182              :       x4 = XEXP (x1, 0);
    7183              :       operands[0] = x4;
    7184              :       if (!nonimmediate_operand (operands[0], E_HImode))
    7185              :         return -1;
    7186              :       x3 = XVECEXP (x2, 0, 0);
    7187              :       operands[1] = x3;
    7188              :       if (!register_operand (operands[1], E_XFmode)
    7189              :           || !
    7190              : #line 26187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7191              : (TARGET_USE_FANCY_MATH_387))
    7192              :         return -1;
    7193              :       return 1766; /* lrintxfhi2 */
    7194              : 
    7195              :     case 75:
    7196              :       if (pattern62 (x1, pnum_clobbers, 
    7197              : E_XFmode) != 0
    7198              :           || !
    7199              : #line 26277 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7200              : (TARGET_USE_FANCY_MATH_387
    7201              :    && (flag_fp_int_builtin_inexact || !flag_trapping_math)
    7202              :    && ix86_pre_reload_split ()))
    7203              :         return -1;
    7204              :       *pnum_clobbers = 1;
    7205              :       return 1768; /* frndintxf2_roundeven */
    7206              : 
    7207              :     case 76:
    7208              :       if (pattern62 (x1, pnum_clobbers, 
    7209              : E_XFmode) != 0
    7210              :           || !
    7211              : #line 26277 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7212              : (TARGET_USE_FANCY_MATH_387
    7213              :    && (flag_fp_int_builtin_inexact || !flag_trapping_math)
    7214              :    && ix86_pre_reload_split ()))
    7215              :         return -1;
    7216              :       *pnum_clobbers = 1;
    7217              :       return 1769; /* frndintxf2_floor */
    7218              : 
    7219              :     case 77:
    7220              :       if (pattern62 (x1, pnum_clobbers, 
    7221              : E_XFmode) != 0
    7222              :           || !
    7223              : #line 26277 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7224              : (TARGET_USE_FANCY_MATH_387
    7225              :    && (flag_fp_int_builtin_inexact || !flag_trapping_math)
    7226              :    && ix86_pre_reload_split ()))
    7227              :         return -1;
    7228              :       *pnum_clobbers = 1;
    7229              :       return 1770; /* frndintxf2_ceil */
    7230              : 
    7231              :     case 78:
    7232              :       if (pattern62 (x1, pnum_clobbers, 
    7233              : E_XFmode) != 0
    7234              :           || !
    7235              : #line 26277 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7236              : (TARGET_USE_FANCY_MATH_387
    7237              :    && (flag_fp_int_builtin_inexact || !flag_trapping_math)
    7238              :    && ix86_pre_reload_split ()))
    7239              :         return -1;
    7240              :       *pnum_clobbers = 1;
    7241              :       return 1771; /* frndintxf2_trunc */
    7242              : 
    7243              :     case 79:
    7244              :       if (pattern63 (x1, pnum_clobbers) != 0
    7245              :           || !
    7246              : #line 26394 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7247              : (TARGET_USE_FANCY_MATH_387
    7248              :    && flag_unsafe_math_optimizations
    7249              :    && ix86_pre_reload_split ()))
    7250              :         return -1;
    7251              :       *pnum_clobbers = 1;
    7252              :       return 1776; /* *fisthi2_floor_1 */
    7253              : 
    7254              :     case 80:
    7255              :       if (pattern63 (x1, pnum_clobbers) != 0
    7256              :           || !
    7257              : #line 26394 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7258              : (TARGET_USE_FANCY_MATH_387
    7259              :    && flag_unsafe_math_optimizations
    7260              :    && ix86_pre_reload_split ()))
    7261              :         return -1;
    7262              :       *pnum_clobbers = 1;
    7263              :       return 1777; /* *fisthi2_ceil_1 */
    7264              : 
    7265              :     case 74:
    7266              :       if (GET_MODE (x2) != E_HImode)
    7267              :         return -1;
    7268              :       x4 = XEXP (x1, 0);
    7269              :       operands[0] = x4;
    7270              :       if (!register_operand (operands[0], E_HImode))
    7271              :         return -1;
    7272              :       x3 = XVECEXP (x2, 0, 0);
    7273              :       operands[1] = x3;
    7274              :       switch (GET_MODE (operands[1]))
    7275              :         {
    7276              :         case E_SFmode:
    7277              :           if (!register_operand (operands[1], E_SFmode)
    7278              :               || !
    7279              : #line 26496 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7280              : (TARGET_USE_FANCY_MATH_387))
    7281              :             return -1;
    7282              :           return 1788; /* fxamsf2_i387 */
    7283              : 
    7284              :         case E_DFmode:
    7285              :           if (!register_operand (operands[1], E_DFmode)
    7286              :               || !
    7287              : #line 26496 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7288              : (TARGET_USE_FANCY_MATH_387))
    7289              :             return -1;
    7290              :           return 1789; /* fxamdf2_i387 */
    7291              : 
    7292              :         case E_XFmode:
    7293              :           if (!register_operand (operands[1], E_XFmode)
    7294              :               || !
    7295              : #line 26496 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7296              : (TARGET_USE_FANCY_MATH_387))
    7297              :             return -1;
    7298              :           return 1790; /* fxamxf2_i387 */
    7299              : 
    7300              :         default:
    7301              :           return -1;
    7302              :         }
    7303              : 
    7304              :     case 19:
    7305              :       if (pnum_clobbers == NULL
    7306              :           || GET_MODE (x2) != E_QImode)
    7307              :         return -1;
    7308              :       x4 = XEXP (x1, 0);
    7309              :       operands[0] = x4;
    7310              :       if (!memory_operand (operands[0], E_QImode))
    7311              :         return -1;
    7312              :       x3 = XVECEXP (x2, 0, 0);
    7313              :       operands[1] = x3;
    7314              :       if (!const0_operand (operands[1], E_QImode))
    7315              :         return -1;
    7316              :       *pnum_clobbers = 1;
    7317              :       return 1913; /* probe_stack_1 */
    7318              : 
    7319              :     case 113:
    7320              :       if (GET_MODE (x2) != E_V2SFmode)
    7321              :         return -1;
    7322              :       x4 = XEXP (x1, 0);
    7323              :       operands[0] = x4;
    7324              :       if (!register_operand (operands[0], E_V2SFmode))
    7325              :         return -1;
    7326              :       x3 = XVECEXP (x2, 0, 0);
    7327              :       operands[1] = x3;
    7328              :       if (!nonimmediate_operand (operands[1], E_V2SFmode)
    7329              :           || !
    7330              : #line 924 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    7331              : (TARGET_3DNOW))
    7332              :         return -1;
    7333              :       return 2113; /* mmx_rcpv2sf2 */
    7334              : 
    7335              :     case 116:
    7336              :       if (GET_MODE (x2) != E_V2SFmode)
    7337              :         return -1;
    7338              :       x4 = XEXP (x1, 0);
    7339              :       operands[0] = x4;
    7340              :       if (!register_operand (operands[0], E_V2SFmode))
    7341              :         return -1;
    7342              :       x3 = XVECEXP (x2, 0, 0);
    7343              :       operands[1] = x3;
    7344              :       if (!nonimmediate_operand (operands[1], E_V2SFmode)
    7345              :           || !
    7346              : #line 972 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    7347              : (TARGET_3DNOW))
    7348              :         return -1;
    7349              :       return 2116; /* mmx_rsqrtv2sf2 */
    7350              : 
    7351              :     case 173:
    7352              :       if (GET_MODE (x2) != E_V2SImode)
    7353              :         return -1;
    7354              :       x4 = XEXP (x1, 0);
    7355              :       operands[0] = x4;
    7356              :       if (!register_operand (operands[0], E_V2SImode))
    7357              :         return -1;
    7358              :       x3 = XVECEXP (x2, 0, 0);
    7359              :       operands[1] = x3;
    7360              :       switch (GET_MODE (operands[1]))
    7361              :         {
    7362              :         case E_V4SFmode:
    7363              :           if (!nonimmediate_operand (operands[1], E_V4SFmode)
    7364              :               || !
    7365              : #line 8841 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7366              : ((TARGET_MMX || TARGET_MMX_WITH_SSE) && TARGET_SSE))
    7367              :             return -1;
    7368              :           return 4833; /* unspec_sse_cvttps2pi */
    7369              : 
    7370              :         case E_V2DFmode:
    7371              :           if (!vector_operand (operands[1], E_V2DFmode)
    7372              :               || !
    7373              : #line 9306 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7374              : (TARGET_SSE2))
    7375              :             return -1;
    7376              :           return 4943; /* unspec_sse2_cvttpd2pi */
    7377              : 
    7378              :         default:
    7379              :           return -1;
    7380              :         }
    7381              : 
    7382              :     case 47:
    7383              :       if (GET_MODE (x2) != E_V2SImode)
    7384              :         return -1;
    7385              :       x4 = XEXP (x1, 0);
    7386              :       operands[0] = x4;
    7387              :       if (!register_operand (operands[0], E_V2SImode))
    7388              :         return -1;
    7389              :       x3 = XVECEXP (x2, 0, 0);
    7390              :       operands[1] = x3;
    7391              :       if (!vector_operand (operands[1], E_V2DFmode)
    7392              :           || !
    7393              : #line 9288 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7394              : (TARGET_SSE2))
    7395              :         return -1;
    7396              :       return 4942; /* sse2_cvtpd2pi */
    7397              : 
    7398              :     case 174:
    7399              :       if (GET_MODE (x2) != E_V2SImode)
    7400              :         return -1;
    7401              :       x4 = XEXP (x1, 0);
    7402              :       operands[0] = x4;
    7403              :       if (!register_operand (operands[0], E_V2SImode))
    7404              :         return -1;
    7405              :       x3 = XVECEXP (x2, 0, 0);
    7406              :       operands[1] = x3;
    7407              :       if (!nonimmediate_operand (operands[1], E_V2DFmode)
    7408              :           || !
    7409              : #line 9347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7410              : (TARGET_MMX_WITH_SSE && TARGET_AVX512VL))
    7411              :         return -1;
    7412              :       return 4945; /* unspec_fixuns_truncv2dfv2si2 */
    7413              : 
    7414              :     case 192:
    7415              :       x4 = XEXP (x1, 0);
    7416              :       operands[0] = x4;
    7417              :       x3 = XVECEXP (x2, 0, 0);
    7418              :       operands[1] = x3;
    7419              :       switch (GET_MODE (operands[0]))
    7420              :         {
    7421              :         case E_HImode:
    7422              :           if (!register_operand (operands[0], E_HImode)
    7423              :               || GET_MODE (x2) != E_HImode)
    7424              :             return -1;
    7425              :           switch (GET_MODE (operands[1]))
    7426              :             {
    7427              :             case E_V16QImode:
    7428              :               if (!register_operand (operands[1], E_V16QImode)
    7429              :                   || !(
    7430              : #line 10648 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7431              : (TARGET_AVX512BW) && 
    7432              : #line 328 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7433              : (TARGET_AVX512VL)))
    7434              :                 return -1;
    7435              :               return 5216; /* avx512vl_cvtb2maskv16qi */
    7436              : 
    7437              :             case E_V16HImode:
    7438              :               if (!register_operand (operands[1], E_V16HImode)
    7439              :                   || !(
    7440              : #line 10648 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7441              : (TARGET_AVX512BW) && 
    7442              : #line 329 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7443              : (TARGET_AVX512VL)))
    7444              :                 return -1;
    7445              :               return 5219; /* avx512vl_cvtw2maskv16hi */
    7446              : 
    7447              :             case E_V16SImode:
    7448              :               if (!register_operand (operands[1], E_V16SImode)
    7449              :                   || !
    7450              : #line 10658 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7451              : (TARGET_AVX512DQ))
    7452              :                 return -1;
    7453              :               return 5221; /* avx512f_cvtd2maskv16si */
    7454              : 
    7455              :             default:
    7456              :               return -1;
    7457              :             }
    7458              : 
    7459              :         case E_QImode:
    7460              :           if (!register_operand (operands[0], E_QImode)
    7461              :               || GET_MODE (x2) != E_QImode)
    7462              :             return -1;
    7463              :           switch (GET_MODE (operands[1]))
    7464              :             {
    7465              :             case E_V8HImode:
    7466              :               if (!register_operand (operands[1], E_V8HImode)
    7467              :                   || !(
    7468              : #line 10648 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7469              : (TARGET_AVX512BW) && 
    7470              : #line 329 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7471              : (TARGET_AVX512VL)))
    7472              :                 return -1;
    7473              :               return 5220; /* avx512vl_cvtw2maskv8hi */
    7474              : 
    7475              :             case E_V8SImode:
    7476              :               if (!register_operand (operands[1], E_V8SImode)
    7477              :                   || !(
    7478              : #line 10658 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7479              : (TARGET_AVX512DQ) && 
    7480              : #line 496 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7481              : (TARGET_AVX512VL)))
    7482              :                 return -1;
    7483              :               return 5222; /* avx512vl_cvtd2maskv8si */
    7484              : 
    7485              :             case E_V4SImode:
    7486              :               if (!register_operand (operands[1], E_V4SImode)
    7487              :                   || !(
    7488              : #line 10658 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7489              : (TARGET_AVX512DQ) && 
    7490              : #line 496 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7491              : (TARGET_AVX512VL)))
    7492              :                 return -1;
    7493              :               return 5223; /* avx512vl_cvtd2maskv4si */
    7494              : 
    7495              :             case E_V8DImode:
    7496              :               if (!register_operand (operands[1], E_V8DImode)
    7497              :                   || !
    7498              : #line 10658 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7499              : (TARGET_AVX512DQ))
    7500              :                 return -1;
    7501              :               return 5224; /* avx512f_cvtq2maskv8di */
    7502              : 
    7503              :             case E_V4DImode:
    7504              :               if (!register_operand (operands[1], E_V4DImode)
    7505              :                   || !(
    7506              : #line 10658 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7507              : (TARGET_AVX512DQ) && 
    7508              : #line 497 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7509              : (TARGET_AVX512VL)))
    7510              :                 return -1;
    7511              :               return 5225; /* avx512vl_cvtq2maskv4di */
    7512              : 
    7513              :             case E_V2DImode:
    7514              :               if (!register_operand (operands[1], E_V2DImode)
    7515              :                   || !(
    7516              : #line 10658 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7517              : (TARGET_AVX512DQ) && 
    7518              : #line 497 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7519              : (TARGET_AVX512VL)))
    7520              :                 return -1;
    7521              :               return 5226; /* avx512vl_cvtq2maskv2di */
    7522              : 
    7523              :             default:
    7524              :               return -1;
    7525              :             }
    7526              : 
    7527              :         default:
    7528              :           return -1;
    7529              :         }
    7530              : 
    7531              :     case 118:
    7532              :       x4 = XEXP (x1, 0);
    7533              :       operands[0] = x4;
    7534              :       x3 = XVECEXP (x2, 0, 0);
    7535              :       switch (GET_CODE (x3))
    7536              :         {
    7537              :         case REG:
    7538              :         case SUBREG:
    7539              :           operands[1] = x3;
    7540              :           switch (GET_MODE (operands[0]))
    7541              :             {
    7542              :             case E_SFmode:
    7543              :               if (!memory_operand (operands[0], E_SFmode)
    7544              :                   || GET_MODE (x2) != E_SFmode
    7545              :                   || !register_operand (operands[1], E_SFmode)
    7546              :                   || !
    7547              : #line 23950 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7548              : (TARGET_SSE4A))
    7549              :                 return -1;
    7550              :               return 8746; /* sse4a_movntsf */
    7551              : 
    7552              :             case E_DFmode:
    7553              :               if (!memory_operand (operands[0], E_DFmode)
    7554              :                   || GET_MODE (x2) != E_DFmode
    7555              :                   || !register_operand (operands[1], E_DFmode)
    7556              :                   || !
    7557              : #line 23950 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7558              : (TARGET_SSE4A))
    7559              :                 return -1;
    7560              :               return 8747; /* sse4a_movntdf */
    7561              : 
    7562              :             default:
    7563              :               return -1;
    7564              :             }
    7565              : 
    7566              :         case VEC_SELECT:
    7567              :           x6 = XEXP (x3, 1);
    7568              :           if (GET_CODE (x6) != PARALLEL
    7569              :               || XVECLEN (x6, 0) != 1)
    7570              :             return -1;
    7571              :           x7 = XVECEXP (x6, 0, 0);
    7572              :           if (x7 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
    7573              :             return -1;
    7574              :           x5 = XEXP (x3, 0);
    7575              :           operands[1] = x5;
    7576              :           switch (GET_MODE (operands[0]))
    7577              :             {
    7578              :             case E_SFmode:
    7579              :               if (pattern1080 (x2, 
    7580              : E_V4SFmode, 
    7581              : E_SFmode) != 0
    7582              :                   || !
    7583              : #line 23963 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7584              : (TARGET_SSE4A))
    7585              :                 return -1;
    7586              :               return 8748; /* sse4a_vmmovntv4sf */
    7587              : 
    7588              :             case E_DFmode:
    7589              :               if (pattern1080 (x2, 
    7590              : E_V2DFmode, 
    7591              : E_DFmode) != 0
    7592              :                   || !(
    7593              : #line 23963 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7594              : (TARGET_SSE4A) && 
    7595              : #line 473 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7596              : (TARGET_SSE2)))
    7597              :                 return -1;
    7598              :               return 8749; /* sse4a_vmmovntv2df */
    7599              : 
    7600              :             default:
    7601              :               return -1;
    7602              :             }
    7603              : 
    7604              :         default:
    7605              :           return -1;
    7606              :         }
    7607              : 
    7608              :     case 137:
    7609              :       x4 = XEXP (x1, 0);
    7610              :       operands[0] = x4;
    7611              :       x3 = XVECEXP (x2, 0, 0);
    7612              :       operands[1] = x3;
    7613              :       switch (GET_MODE (operands[0]))
    7614              :         {
    7615              :         case E_SFmode:
    7616              :           if (!register_operand (operands[0], E_SFmode)
    7617              :               || GET_MODE (x2) != E_SFmode
    7618              :               || !nonimmediate_operand (operands[1], E_SFmode)
    7619              :               || !
    7620              : #line 27921 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7621              : (TARGET_XOP))
    7622              :             return -1;
    7623              :           return 9138; /* xop_frczsf2 */
    7624              : 
    7625              :         case E_DFmode:
    7626              :           if (!register_operand (operands[0], E_DFmode)
    7627              :               || GET_MODE (x2) != E_DFmode
    7628              :               || !nonimmediate_operand (operands[1], E_DFmode)
    7629              :               || !
    7630              : #line 27921 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7631              : (TARGET_XOP))
    7632              :             return -1;
    7633              :           return 9139; /* xop_frczdf2 */
    7634              : 
    7635              :         default:
    7636              :           return -1;
    7637              :         }
    7638              : 
    7639              :     case 287:
    7640              :       if (GET_MODE (x2) != E_DFmode)
    7641              :         return -1;
    7642              :       x4 = XEXP (x1, 0);
    7643              :       operands[0] = x4;
    7644              :       if (!register_operand (operands[0], E_DFmode))
    7645              :         return -1;
    7646              :       x3 = XVECEXP (x2, 0, 0);
    7647              :       operands[1] = x3;
    7648              :       if (!memory_operand (operands[1], E_DImode)
    7649              :           || !
    7650              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md"
    7651              : (TARGET_80387))
    7652              :         return -1;
    7653              :       return 11100; /* loaddi_via_fpu */
    7654              : 
    7655              :     case 289:
    7656              :       if (GET_MODE (x2) != E_DFmode)
    7657              :         return -1;
    7658              :       x4 = XEXP (x1, 0);
    7659              :       operands[0] = x4;
    7660              :       if (!register_operand (operands[0], E_DFmode))
    7661              :         return -1;
    7662              :       x3 = XVECEXP (x2, 0, 0);
    7663              :       operands[1] = x3;
    7664              :       if (!memory_operand (operands[1], E_DImode)
    7665              :           || !
    7666              : #line 369 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md"
    7667              : (TARGET_SSE))
    7668              :         return -1;
    7669              :       return 11102; /* loaddi_via_sse */
    7670              : 
    7671              :     default:
    7672              :       return -1;
    7673              :     }
    7674              : }
    7675              : 
    7676              :  int
    7677              : recog_33 (rtx x1 ATTRIBUTE_UNUSED,
    7678              :         rtx_insn *insn ATTRIBUTE_UNUSED,
    7679              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
    7680              : {
    7681              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    7682              :   rtx x2, x3, x4;
    7683              :   int res ATTRIBUTE_UNUSED;
    7684              :   x2 = XEXP (x1, 0);
    7685              :   operands[0] = x2;
    7686              :   x3 = XEXP (x1, 1);
    7687              :   x4 = XEXP (x3, 0);
    7688              :   operands[1] = x4;
    7689              :   switch (GET_MODE (operands[0]))
    7690              :     {
    7691              :     case E_SFmode:
    7692              :       if (GET_MODE (x3) != E_SFmode)
    7693              :         return -1;
    7694              :       if (nonimm_ssenomem_operand (operands[0], E_SFmode)
    7695              :           && register_ssemem_operand (operands[1], E_DFmode)
    7696              :           && 
    7697              : #line 5641 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7698              : (TARGET_80387 || (TARGET_SSE2 && TARGET_SSE_MATH)))
    7699              :         return 210; /* truncdfsf2 */
    7700              :       if (!nonimmediate_operand (operands[0], E_SFmode)
    7701              :           || !register_operand (operands[1], E_XFmode)
    7702              :           || !
    7703              : #line 5769 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7704              : (TARGET_80387))
    7705              :         return -1;
    7706              :       return 211; /* truncxfsf2 */
    7707              : 
    7708              :     case E_DFmode:
    7709              :       if (!nonimmediate_operand (operands[0], E_DFmode)
    7710              :           || GET_MODE (x3) != E_DFmode
    7711              :           || !register_operand (operands[1], E_XFmode)
    7712              :           || !
    7713              : #line 5769 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7714              : (TARGET_80387))
    7715              :         return -1;
    7716              :       return 212; /* truncxfdf2 */
    7717              : 
    7718              :     case E_HFmode:
    7719              :       if (!register_operand (operands[0], E_HFmode))
    7720              :         return -1;
    7721              :       switch (pattern430 (x3, 
    7722              : E_HFmode))
    7723              :         {
    7724              :         case 0:
    7725              :           if (!
    7726              : #line 5810 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7727              : (TARGET_AVX512FP16))
    7728              :             return -1;
    7729              :           return 213; /* *truncsfhf2 */
    7730              : 
    7731              :         case 1:
    7732              :           if (!
    7733              : #line 5810 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7734              : (TARGET_AVX512FP16))
    7735              :             return -1;
    7736              :           return 214; /* *truncdfhf2 */
    7737              : 
    7738              :         default:
    7739              :           return -1;
    7740              :         }
    7741              : 
    7742              :     case E_BFmode:
    7743              :       if (!register_operand (operands[0], E_BFmode)
    7744              :           || GET_MODE (x3) != E_BFmode
    7745              :           || !register_operand (operands[1], E_SFmode)
    7746              :           || !
    7747              : #line 5826 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7748              : (TARGET_SSE2 && !HONOR_NANS (BFmode) && !flag_rounding_math
    7749              :    && (flag_unsafe_math_optimizations
    7750              :        || TARGET_AVXNECONVERT
    7751              :        || (TARGET_AVX512BF16 && TARGET_AVX512VL))))
    7752              :         return -1;
    7753              :       return 215; /* truncsfbf2 */
    7754              : 
    7755              :     case E_V2SFmode:
    7756              :       if (!register_operand (operands[0], E_V2SFmode)
    7757              :           || GET_MODE (x3) != E_V2SFmode
    7758              :           || !vector_operand (operands[1], E_V2DFmode)
    7759              :           || !
    7760              : #line 10540 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7761              : (TARGET_MMX_WITH_SSE))
    7762              :         return -1;
    7763              :       return 5204; /* truncv2dfv2sf2 */
    7764              : 
    7765              :     default:
    7766              :       return -1;
    7767              :     }
    7768              : }
    7769              : 
    7770              :  int
    7771              : recog_37 (rtx x1 ATTRIBUTE_UNUSED,
    7772              :         rtx_insn *insn ATTRIBUTE_UNUSED,
    7773              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
    7774              : {
    7775              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    7776              :   rtx x2, x3, x4;
    7777              :   int res ATTRIBUTE_UNUSED;
    7778              :   x2 = XEXP (x1, 0);
    7779              :   operands[0] = x2;
    7780              :   x3 = XEXP (x1, 1);
    7781              :   x4 = XEXP (x3, 0);
    7782              :   operands[1] = x4;
    7783              :   switch (GET_MODE (operands[0]))
    7784              :     {
    7785              :     case E_HFmode:
    7786              :       switch (pattern266 (x3, 
    7787              : E_HFmode))
    7788              :         {
    7789              :         case 0:
    7790              :           if (!
    7791              : #line 6250 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7792              : (TARGET_AVX512FP16))
    7793              :             return -1;
    7794              :           return 253; /* floatunssihf2 */
    7795              : 
    7796              :         case 1:
    7797              :           if (!(
    7798              : #line 6250 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7799              : (TARGET_AVX512FP16) && 
    7800              : #line 1198 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7801              : (TARGET_64BIT)))
    7802              :             return -1;
    7803              :           return 255; /* floatunsdihf2 */
    7804              : 
    7805              :         default:
    7806              :           return -1;
    7807              :         }
    7808              : 
    7809              :     case E_SFmode:
    7810              :       switch (pattern266 (x3, 
    7811              : E_SFmode))
    7812              :         {
    7813              :         case 0:
    7814              :           if (!
    7815              : #line 6395 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7816              : (TARGET_AVX512F && TARGET_SSE_MATH))
    7817              :             return -1;
    7818              :           return 261; /* *floatunssisf2_avx512 */
    7819              : 
    7820              :         case 1:
    7821              :           if (!(
    7822              : #line 6395 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7823              : (TARGET_AVX512F && TARGET_SSE_MATH) && 
    7824              : #line 1198 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7825              : (TARGET_64BIT)))
    7826              :             return -1;
    7827              :           return 262; /* *floatunsdisf2_avx512 */
    7828              : 
    7829              :         default:
    7830              :           return -1;
    7831              :         }
    7832              : 
    7833              :     case E_DFmode:
    7834              :       switch (pattern266 (x3, 
    7835              : E_DFmode))
    7836              :         {
    7837              :         case 0:
    7838              :           if (!
    7839              : #line 6395 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7840              : (TARGET_AVX512F && TARGET_SSE_MATH))
    7841              :             return -1;
    7842              :           return 263; /* *floatunssidf2_avx512 */
    7843              : 
    7844              :         case 1:
    7845              :           if (!(
    7846              : #line 6395 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7847              : (TARGET_AVX512F && TARGET_SSE_MATH) && 
    7848              : #line 1198 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7849              : (TARGET_64BIT)))
    7850              :             return -1;
    7851              :           return 264; /* *floatunsdidf2_avx512 */
    7852              : 
    7853              :         default:
    7854              :           return -1;
    7855              :         }
    7856              : 
    7857              :     default:
    7858              :       return -1;
    7859              :     }
    7860              : }
    7861              : 
    7862              :  int
    7863              : recog_41 (rtx x1 ATTRIBUTE_UNUSED,
    7864              :         rtx_insn *insn ATTRIBUTE_UNUSED,
    7865              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
    7866              : {
    7867              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    7868              :   rtx x2, x3, x4, x5;
    7869              :   int res ATTRIBUTE_UNUSED;
    7870              :   x2 = XEXP (x1, 1);
    7871              :   x3 = XEXP (x2, 1);
    7872              :   if (GET_CODE (x3) != CONST_INT
    7873              :       || !register_operand (operands[0], E_QImode)
    7874              :       || GET_MODE (x2) != E_QImode)
    7875              :     return -1;
    7876              :   x4 = XEXP (x2, 0);
    7877              :   x5 = XVECEXP (x4, 0, 2);
    7878              :   operands[3] = x5;
    7879              :   if (!const_0_to_7_operand (operands[3], E_SImode))
    7880              :     return -1;
    7881              :   switch (XWINT (x3, 0))
    7882              :     {
    7883              :     case 15L:
    7884              :       switch (GET_MODE (operands[1]))
    7885              :         {
    7886              :         case E_V4SImode:
    7887              :           if (!nonimmediate_operand (operands[1], E_V4SImode)
    7888              :               || !nonimmediate_operand (operands[2], E_V4SImode)
    7889              :               || !(
    7890              : #line 4795 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7891              : (TARGET_AVX512F) && 
    7892              : #line 525 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7893              : (TARGET_AVX512VL)))
    7894              :             return -1;
    7895              :           return 3465; /* *avx512vl_ucmpv4si3_and15 */
    7896              : 
    7897              :         case E_V4DImode:
    7898              :           if (!nonimmediate_operand (operands[1], E_V4DImode)
    7899              :               || !nonimmediate_operand (operands[2], E_V4DImode)
    7900              :               || !(
    7901              : #line 4795 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7902              : (TARGET_AVX512F) && 
    7903              : #line 525 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7904              : (TARGET_AVX512VL)))
    7905              :             return -1;
    7906              :           return 3466; /* *avx512vl_ucmpv4di3_and15 */
    7907              : 
    7908              :         default:
    7909              :           return -1;
    7910              :         }
    7911              : 
    7912              :     case 3L:
    7913              :       if (!nonimmediate_operand (operands[1], E_V2DImode)
    7914              :           || !nonimmediate_operand (operands[2], E_V2DImode)
    7915              :           || !
    7916              : #line 4844 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7917              : (TARGET_AVX512F))
    7918              :         return -1;
    7919              :       return 3473; /* *avx512vl_ucmpv2di3_and3 */
    7920              : 
    7921              :     default:
    7922              :       return -1;
    7923              :     }
    7924              : }
    7925              : 
    7926              :  int
    7927              : recog_43 (rtx x1 ATTRIBUTE_UNUSED,
    7928              :         rtx_insn *insn ATTRIBUTE_UNUSED,
    7929              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
    7930              : {
    7931              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    7932              :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
    7933              :   rtx x10, x11, x12, x13;
    7934              :   int res ATTRIBUTE_UNUSED;
    7935              :   x2 = XEXP (x1, 1);
    7936              :   x3 = XEXP (x2, 0);
    7937              :   switch (GET_CODE (x3))
    7938              :     {
    7939              :     case XOR:
    7940              :       if (pnum_clobbers == NULL)
    7941              :         return -1;
    7942              :       x4 = XEXP (x1, 0);
    7943              :       operands[0] = x4;
    7944              :       x5 = XEXP (x3, 0);
    7945              :       operands[1] = x5;
    7946              :       x6 = XEXP (x3, 1);
    7947              :       operands[2] = x6;
    7948              :       switch (GET_MODE (operands[0]))
    7949              :         {
    7950              :         case E_HImode:
    7951              :           if (pattern751 (x2, 
    7952              : E_HImode) != 0
    7953              :               || !
    7954              : #line 14425 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7955              : (ix86_binary_operator_ok (XOR, HImode, operands, TARGET_APX_NDD)))
    7956              :             return -1;
    7957              :           *pnum_clobbers = 1;
    7958              :           return 863; /* *notxorhi_1 */
    7959              : 
    7960              :         case E_QImode:
    7961              :           if (pattern751 (x2, 
    7962              : E_QImode) != 0
    7963              :               || !
    7964              : #line 14656 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7965              : (ix86_binary_operator_ok (XOR, QImode, operands, TARGET_APX_NDD)))
    7966              :             return -1;
    7967              :           *pnum_clobbers = 1;
    7968              :           return 899; /* *notxorqi_1 */
    7969              : 
    7970              :         default:
    7971              :           return -1;
    7972              :         }
    7973              : 
    7974              :     case REG:
    7975              :     case SUBREG:
    7976              :     case MEM:
    7977              :       switch (pattern42 (x1))
    7978              :         {
    7979              :         case 0:
    7980              :           switch (GET_MODE (operands[0]))
    7981              :             {
    7982              :             case E_TImode:
    7983              :               if (!nonimmediate_operand (operands[0], E_TImode)
    7984              :                   || GET_MODE (x2) != E_TImode
    7985              :                   || !nonimmediate_operand (operands[1], E_TImode)
    7986              :                   || !(
    7987              : #line 15911 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7988              : (ix86_unary_operator_ok (NOT, TImode, operands, TARGET_APX_NDD)) && 
    7989              : #line 1267 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7990              : (TARGET_64BIT)))
    7991              :                 return -1;
    7992              :               return 1063; /* *one_cmplti2_doubleword */
    7993              : 
    7994              :             case E_HImode:
    7995              :               if (!nonimmediate_operand (operands[0], E_HImode)
    7996              :                   || GET_MODE (x2) != E_HImode
    7997              :                   || !nonimmediate_operand (operands[1], E_HImode)
    7998              :                   || !
    7999              : #line 15928 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    8000              : (ix86_unary_operator_ok (NOT, HImode, operands, TARGET_APX_NDD)))
    8001              :                 return -1;
    8002              :               return 1064; /* *one_cmplhi2_1 */
    8003              : 
    8004              :             case E_QImode:
    8005              :               if (!nonimmediate_operand (operands[0], E_QImode)
    8006              :                   || GET_MODE (x2) != E_QImode
    8007              :                   || !nonimmediate_operand (operands[1], E_QImode)
    8008              :                   || !
    8009              : #line 15990 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    8010              : (ix86_unary_operator_ok (NOT, QImode, operands, TARGET_APX_NDD)))
    8011              :                 return -1;
    8012              :               return 1073; /* *one_cmplqi2_1 */
    8013              : 
    8014              :             case E_V4QImode:
    8015              :               if (!register_operand (operands[0], E_V4QImode)
    8016              :                   || GET_MODE (x2) != E_V4QImode
    8017              :                   || !register_operand (operands[1], E_V4QImode))
    8018              :                 return -1;
    8019              :               return 2319; /* one_cmplv4qi2 */
    8020              : 
    8021              :             case E_V2QImode:
    8022              :               if (!register_operand (operands[0], E_V2QImode)
    8023              :                   || GET_MODE (x2) != E_V2QImode
    8024              :                   || !register_operand (operands[1], E_V2QImode))
    8025              :                 return -1;
    8026              :               return 2320; /* one_cmplv2qi2 */
    8027              : 
    8028              :             case E_V2HImode:
    8029              :               if (!register_operand (operands[0], E_V2HImode)
    8030              :                   || GET_MODE (x2) != E_V2HImode
    8031              :                   || !register_operand (operands[1], E_V2HImode))
    8032              :                 return -1;
    8033              :               return 2321; /* one_cmplv2hi2 */
    8034              : 
    8035              :             default:
    8036              :               return -1;
    8037              :             }
    8038              : 
    8039              :         case 1:
    8040              :           if (!
    8041              : #line 16021 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    8042              : (!TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun)))
    8043              :             return -1;
    8044              :           return 1074; /* *one_cmplqi_1_slp */
    8045              : 
    8046              :         case 2:
    8047              :           if (!
    8048              : #line 16021 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    8049              : (!TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun)))
    8050              :             return -1;
    8051              :           return 1075; /* *one_cmplhi_1_slp */
    8052              : 
    8053              :         default:
    8054              :           return -1;
    8055              :         }
    8056              : 
    8057              :     case ASHIFTRT:
    8058              :     case LSHIFTRT:
    8059              :     case SIGN_EXTRACT:
    8060              :     case ZERO_EXTRACT:
    8061              :       operands[2] = x3;
    8062              :       switch (pattern90 (x1))
    8063              :         {
    8064              :         case 0:
    8065              :           return 1081; /* *one_cmplqi_exthi_1 */
    8066              : 
    8067              :         case 1:
    8068              :           return 1082; /* *one_cmplqi_extsi_1 */
    8069              : 
    8070              :         case 2:
    8071              :           if (
    8072              : #line 1195 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    8073              : (TARGET_64BIT))
    8074              :             return 1083; /* *one_cmplqi_extdi_1 */
    8075              :           break;
    8076              : 
    8077              :         default:
    8078              :           break;
    8079              :         }
    8080              :       if (pnum_clobbers == NULL
    8081              :           || GET_CODE (x3) != ZERO_EXTRACT
    8082              :           || GET_MODE (x3) != E_DImode)
    8083              :         return -1;
    8084              :       x6 = XEXP (x3, 1);
    8085              :       if (x6 != const_int_rtx[MAX_SAVED_CONST_INT + 1])
    8086              :         return -1;
    8087              :       x4 = XEXP (x1, 0);
    8088              :       if (GET_CODE (x4) != ZERO_EXTRACT
    8089              :           || GET_MODE (x4) != E_DImode)
    8090              :         return -1;
    8091              :       x7 = XEXP (x4, 1);
    8092              :       if (x7 != const_int_rtx[MAX_SAVED_CONST_INT + 1])
    8093              :         return -1;
    8094              :       x8 = XEXP (x4, 0);
    8095              :       operands[0] = x8;
    8096              :       if (!nonimmediate_operand (operands[0], E_DImode))
    8097              :         return -1;
    8098              :       x9 = XEXP (x4, 2);
    8099              :       operands[1] = x9;
    8100              :       if (!const_0_to_63_operand (operands[1], E_QImode)
    8101              :           || GET_MODE (x2) != E_DImode)
    8102              :         return -1;
    8103              :       x5 = XEXP (x3, 0);
    8104              :       if (!rtx_equal_p (x5, operands[0]))
    8105              :         return -1;
    8106              :       x10 = XEXP (x3, 2);
    8107              :       if (!rtx_equal_p (x10, operands[1])
    8108              :           || !
    8109              : #line 20002 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    8110              : (TARGET_64BIT && (TARGET_USE_BT || reload_completed)))
    8111              :         return -1;
    8112              :       *pnum_clobbers = 1;
    8113              :       return 1447; /* *btcq_imm */
    8114              : 
    8115              :     case UNSPEC:
    8116              :       if (XVECLEN (x3, 0) != 3)
    8117              :         return -1;
    8118              :       x4 = XEXP (x1, 0);
    8119              :       operands[0] = x4;
    8120              :       x11 = XVECEXP (x3, 0, 0);
    8121              :       operands[1] = x11;
    8122              :       x12 = XVECEXP (x3, 0, 1);
    8123              :       operands[2] = x12;
    8124              :       x13 = XVECEXP (x3, 0, 2);
    8125              :       operands[3] = x13;
    8126              :       switch (XINT (x3, 1))
    8127              :         {
    8128              :         case 60:
    8129              :           switch (GET_MODE (operands[0]))
    8130              :             {
    8131              :             case E_HImode:
    8132              :               switch (pattern977 (x2))
    8133              :                 {
    8134              :                 case 0:
    8135              :                   if (!
    8136              : #line 4755 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8137              : (TARGET_AVX512F && GET_MODE_NUNITS (V16SImode) >= 8
    8138              :    && ix86_pre_reload_split ()))
    8139              :                     return -1;
    8140              :                   return 3446; /* *avx512f_cmpv16si3 */
    8141              : 
    8142              :                 case 1:
    8143              :                   if (!(
    8144              : #line 4755 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8145              : (TARGET_AVX512F && GET_MODE_NUNITS (V16HFmode) >= 8
    8146              :    && ix86_pre_reload_split ()) && 
    8147              : #line 321 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8148              : (TARGET_AVX512FP16 && TARGET_AVX512VL)))
    8149              :                     return -1;
    8150              :                   return 3453; /* *avx512vl_cmpv16hf3 */
    8151              : 
    8152              :                 case 2:
    8153              :                   if (!
    8154              : #line 4755 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8155              : (TARGET_AVX512F && GET_MODE_NUNITS (V16SFmode) >= 8
    8156              :    && ix86_pre_reload_split ()))
    8157              :                     return -1;
    8158              :                   return 3455; /* *avx512f_cmpv16sf3 */
    8159              : 
    8160              :                 case 3:
    8161              :                   if (!(
    8162              : #line 4950 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8163              : (TARGET_AVX512BW && ix86_pre_reload_split ()) && 
    8164              : #line 328 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8165              : (TARGET_AVX512VL)))
    8166              :                     return -1;
    8167              :                   return 3538; /* *avx512vl_cmpv16qi3 */
    8168              : 
    8169              :                 case 4:
    8170              :                   if (!(
    8171              : #line 4950 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8172              : (TARGET_AVX512BW && ix86_pre_reload_split ()) && 
    8173              : #line 329 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8174              : (TARGET_AVX512VL)))
    8175              :                     return -1;
    8176              :                   return 3544; /* *avx512vl_cmpv16hi3 */
    8177              : 
    8178              :                 default:
    8179              :                   return -1;
    8180              :                 }
    8181              : 
    8182              :             case E_QImode:
    8183              :               switch (pattern978 (x2))
    8184              :                 {
    8185              :                 case 0:
    8186              :                   if (!(
    8187              : #line 4755 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8188              : (TARGET_AVX512F && GET_MODE_NUNITS (V8SImode) >= 8
    8189              :    && ix86_pre_reload_split ()) && 
    8190              : #line 318 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8191              : (TARGET_AVX512VL)))
    8192              :                     return -1;
    8193              :                   return 3447; /* *avx512vl_cmpv8si3 */
    8194              : 
    8195              :                 case 1:
    8196              :                   if (!(
    8197              : #line 4755 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8198              : (TARGET_AVX512F && GET_MODE_NUNITS (V4SImode) >= 8
    8199              :    && ix86_pre_reload_split ()) && 
    8200              : #line 318 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8201              : (TARGET_AVX512VL)))
    8202              :                     return -1;
    8203              :                   return 3448; /* *avx512vl_cmpv4si3 */
    8204              : 
    8205              :                 case 2:
    8206              :                   if (!
    8207              : #line 4755 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8208              : (TARGET_AVX512F && GET_MODE_NUNITS (V8DImode) >= 8
    8209              :    && ix86_pre_reload_split ()))
    8210              :                     return -1;
    8211              :                   return 3449; /* *avx512f_cmpv8di3 */
    8212              : 
    8213              :                 case 3:
    8214              :                   if (!(
    8215              : #line 4755 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8216              : (TARGET_AVX512F && GET_MODE_NUNITS (V4DImode) >= 8
    8217              :    && ix86_pre_reload_split ()) && 
    8218              : #line 319 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8219              : (TARGET_AVX512VL)))
    8220              :                     return -1;
    8221              :                   return 3450; /* *avx512vl_cmpv4di3 */
    8222              : 
    8223              :                 case 4:
    8224              :                   if (!(
    8225              : #line 4755 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8226              : (TARGET_AVX512F && GET_MODE_NUNITS (V2DImode) >= 8
    8227              :    && ix86_pre_reload_split ()) && 
    8228              : #line 319 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8229              : (TARGET_AVX512VL)))
    8230              :                     return -1;
    8231              :                   return 3451; /* *avx512vl_cmpv2di3 */
    8232              : 
    8233              :                 case 5:
    8234              :                   if (!(
    8235              : #line 4755 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8236              : (TARGET_AVX512F && GET_MODE_NUNITS (V8HFmode) >= 8
    8237              :    && ix86_pre_reload_split ()) && 
    8238              : #line 322 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8239              : (TARGET_AVX512FP16 && TARGET_AVX512VL)))
    8240              :                     return -1;
    8241              :                   return 3454; /* *avx512fp16_cmpv8hf3 */
    8242              : 
    8243              :                 case 6:
    8244              :                   if (!(
    8245              : #line 4755 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8246              : (TARGET_AVX512F && GET_MODE_NUNITS (V8SFmode) >= 8
    8247              :    && ix86_pre_reload_split ()) && 
    8248              : #line 323 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8249              : (TARGET_AVX512VL)))
    8250              :                     return -1;
    8251              :                   return 3456; /* *avx512vl_cmpv8sf3 */
    8252              : 
    8253              :                 case 7:
    8254              :                   if (!(
    8255              : #line 4755 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8256              : (TARGET_AVX512F && GET_MODE_NUNITS (V4SFmode) >= 8
    8257              :    && ix86_pre_reload_split ()) && 
    8258              : #line 323 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8259              : (TARGET_AVX512VL)))
    8260              :                     return -1;
    8261              :                   return 3457; /* *avx512vl_cmpv4sf3 */
    8262              : 
    8263              :                 case 8:
    8264              :                   if (!
    8265              : #line 4755 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8266              : (TARGET_AVX512F && GET_MODE_NUNITS (V8DFmode) >= 8
    8267              :    && ix86_pre_reload_split ()))
    8268              :                     return -1;
    8269              :                   return 3458; /* *avx512f_cmpv8df3 */
    8270              : 
    8271              :                 case 9:
    8272              :                   if (!(
    8273              : #line 4755 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8274              : (TARGET_AVX512F && GET_MODE_NUNITS (V4DFmode) >= 8
    8275              :    && ix86_pre_reload_split ()) && 
    8276              : #line 324 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8277              : (TARGET_AVX512VL)))
    8278              :                     return -1;
    8279              :                   return 3459; /* *avx512vl_cmpv4df3 */
    8280              : 
    8281              :                 case 10:
    8282              :                   if (!(
    8283              : #line 4755 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8284              : (TARGET_AVX512F && GET_MODE_NUNITS (V2DFmode) >= 8
    8285              :    && ix86_pre_reload_split ()) && 
    8286              : #line 324 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8287              : (TARGET_AVX512VL)))
    8288              :                     return -1;
    8289              :                   return 3460; /* *avx512vl_cmpv2df3 */
    8290              : 
    8291              :                 case 11:
    8292              :                   if (!(
    8293              : #line 4950 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8294              : (TARGET_AVX512BW && ix86_pre_reload_split ()) && 
    8295              : #line 329 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8296              : (TARGET_AVX512VL)))
    8297              :                     return -1;
    8298              :                   return 3546; /* *avx512vl_cmpv8hi3 */
    8299              : 
    8300              :                 default:
    8301              :                   return -1;
    8302              :                 }
    8303              : 
    8304              :             default:
    8305              :               return -1;
    8306              :             }
    8307              : 
    8308              :         case 158:
    8309              :           if (!const_0_to_7_operand (operands[3], E_SImode))
    8310              :             return -1;
    8311              :           switch (GET_MODE (operands[0]))
    8312              :             {
    8313              :             case E_HImode:
    8314              :               switch (pattern1091 (x2))
    8315              :                 {
    8316              :                 case 0:
    8317              :                   if (!(
    8318              : #line 4950 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8319              : (TARGET_AVX512BW && ix86_pre_reload_split ()) && 
    8320              : #line 328 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8321              : (TARGET_AVX512VL)))
    8322              :                     return -1;
    8323              :                   return 3539; /* *avx512vl_cmpv16qi3 */
    8324              : 
    8325              :                 case 1:
    8326              :                   if (!(
    8327              : #line 4950 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8328              : (TARGET_AVX512BW && ix86_pre_reload_split ()) && 
    8329              : #line 329 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8330              : (TARGET_AVX512VL)))
    8331              :                     return -1;
    8332              :                   return 3545; /* *avx512vl_cmpv16hi3 */
    8333              : 
    8334              :                 case 2:
    8335              :                   if (!
    8336              : #line 5165 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8337              : (TARGET_AVX512F && ix86_pre_reload_split ()
    8338              :    && GET_MODE_NUNITS (V16SImode) >= 8))
    8339              :                     return -1;
    8340              :                   return 3716; /* *avx512f_ucmpv16si3 */
    8341              : 
    8342              :                 default:
    8343              :                   return -1;
    8344              :                 }
    8345              : 
    8346              :             case E_QImode:
    8347              :               switch (pattern1092 (x2))
    8348              :                 {
    8349              :                 case 0:
    8350              :                   if (!(
    8351              : #line 4950 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8352              : (TARGET_AVX512BW && ix86_pre_reload_split ()) && 
    8353              : #line 329 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8354              : (TARGET_AVX512VL)))
    8355              :                     return -1;
    8356              :                   return 3547; /* *avx512vl_cmpv8hi3 */
    8357              : 
    8358              :                 case 1:
    8359              :                   if (!(
    8360              : #line 5165 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8361              : (TARGET_AVX512F && ix86_pre_reload_split ()
    8362              :    && GET_MODE_NUNITS (V8SImode) >= 8) && 
    8363              : #line 496 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8364              : (TARGET_AVX512VL)))
    8365              :                     return -1;
    8366              :                   return 3717; /* *avx512vl_ucmpv8si3 */
    8367              : 
    8368              :                 case 2:
    8369              :                   if (!(
    8370              : #line 5165 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8371              : (TARGET_AVX512F && ix86_pre_reload_split ()
    8372              :    && GET_MODE_NUNITS (V4SImode) >= 8) && 
    8373              : #line 496 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8374              : (TARGET_AVX512VL)))
    8375              :                     return -1;
    8376              :                   return 3718; /* *avx512vl_ucmpv4si3 */
    8377              : 
    8378              :                 case 3:
    8379              :                   if (!
    8380              : #line 5165 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8381              : (TARGET_AVX512F && ix86_pre_reload_split ()
    8382              :    && GET_MODE_NUNITS (V8DImode) >= 8))
    8383              :                     return -1;
    8384              :                   return 3719; /* *avx512f_ucmpv8di3 */
    8385              : 
    8386              :                 case 4:
    8387              :                   if (!(
    8388              : #line 5165 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8389              : (TARGET_AVX512F && ix86_pre_reload_split ()
    8390              :    && GET_MODE_NUNITS (V4DImode) >= 8) && 
    8391              : #line 497 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8392              : (TARGET_AVX512VL)))
    8393              :                     return -1;
    8394              :                   return 3720; /* *avx512vl_ucmpv4di3 */
    8395              : 
    8396              :                 case 5:
    8397              :                   if (!(
    8398              : #line 5165 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8399              : (TARGET_AVX512F && ix86_pre_reload_split ()
    8400              :    && GET_MODE_NUNITS (V2DImode) >= 8) && 
    8401              : #line 497 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8402              : (TARGET_AVX512VL)))
    8403              :                     return -1;
    8404              :                   return 3721; /* *avx512vl_ucmpv2di3 */
    8405              : 
    8406              :                 default:
    8407              :                   return -1;
    8408              :                 }
    8409              : 
    8410              :             default:
    8411              :               return -1;
    8412              :             }
    8413              : 
    8414              :         default:
    8415              :           return -1;
    8416              :         }
    8417              : 
    8418              :     default:
    8419              :       return -1;
    8420              :     }
    8421              : }
    8422              : 
    8423              :  int
    8424              : recog_63 (rtx x1 ATTRIBUTE_UNUSED,
    8425              :         rtx_insn *insn ATTRIBUTE_UNUSED,
    8426              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
    8427              : {
    8428              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    8429              :   rtx x2, x3, x4, x5, x6;
    8430              :   int res ATTRIBUTE_UNUSED;
    8431              :   x2 = XEXP (x1, 1);
    8432              :   switch (XVECLEN (x2, 0))
    8433              :     {
    8434              :     case 1:
    8435              :       switch (XINT (x2, 1))
    8436              :         {
    8437              :         case 20:
    8438              :           if (GET_MODE (x2) != E_BLKmode)
    8439              :             return -1;
    8440              :           x3 = XVECEXP (x2, 0, 0);
    8441              :           if (x3 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
    8442              :             return -1;
    8443              :           x4 = XEXP (x1, 0);
    8444              :           operands[0] = x4;
    8445              :           if (!memory_operand (operands[0], E_BLKmode)
    8446              :               || !
    8447              : #line 30549 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    8448              : (TARGET_FXSR))
    8449              :             return -1;
    8450              :           return 1952; /* fxsave */
    8451              : 
    8452              :         case 22:
    8453              :           if (GET_MODE (x2) != E_BLKmode)
    8454              :             return -1;
    8455              :           x3 = XVECEXP (x2, 0, 0);
    8456              :           if (x3 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
    8457              :             return -1;
    8458              :           x4 = XEXP (x1, 0);
    8459              :           operands[0] = x4;
    8460              :           if (!memory_operand (operands[0], E_BLKmode)
    8461              :               || !
    8462              : #line 30559 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    8463              : (TARGET_64BIT && TARGET_FXSR))
    8464              :             return -1;
    8465              :           return 1953; /* fxsave64 */
    8466              : 
    8467              :         case 24:
    8468              :           if (GET_MODE (x2) != E_BLKmode)
    8469              :             return -1;
    8470              :           x4 = XEXP (x1, 0);
    8471              :           operands[0] = x4;
    8472              :           if (!memory_operand (operands[0], E_BLKmode))
    8473              :             return -1;
    8474              :           x3 = XVECEXP (x2, 0, 0);
    8475              :           operands[1] = x3;
    8476              :           if (!register_operand (operands[1], E_DImode)
    8477              :               || !
    8478              : #line 30629 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    8479              : (!TARGET_64BIT && TARGET_XSAVE))
    8480              :             return -1;
    8481              :           return 1956; /* xsave */
    8482              : 
    8483              :         case 28:
    8484              :           if (GET_MODE (x2) != E_BLKmode)
    8485              :             return -1;
    8486              :           x4 = XEXP (x1, 0);
    8487              :           operands[0] = x4;
    8488              :           if (!memory_operand (operands[0], E_BLKmode))
    8489              :             return -1;
    8490              :           x3 = XVECEXP (x2, 0, 0);
    8491              :           operands[1] = x3;
    8492              :           if (!register_operand (operands[1], E_DImode)
    8493              :               || !(
    8494              : #line 30629 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    8495              : (!TARGET_64BIT && TARGET_XSAVE) && 
    8496              : #line 30590 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    8497              : (TARGET_XSAVEOPT)))
    8498              :             return -1;
    8499              :           return 1957; /* xsaveopt */
    8500              : 
    8501              :         case 34:
    8502              :           if (GET_MODE (x2) != E_BLKmode)
    8503              :             return -1;
    8504              :           x4 = XEXP (x1, 0);
    8505              :           operands[0] = x4;
    8506              :           if (!memory_operand (operands[0], E_BLKmode))
    8507              :             return -1;
    8508              :           x3 = XVECEXP (x2, 0, 0);
    8509              :           operands[1] = x3;
    8510              :           if (!register_operand (operands[1], E_DImode)
    8511              :               || !(
    8512              : #line 30629 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    8513              : (!TARGET_64BIT && TARGET_XSAVE) && 
    8514              : #line 30591 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    8515              : (TARGET_XSAVEC)))
    8516              :             return -1;
    8517              :           return 1958; /* xsavec */
    8518              : 
    8519              :         case 30:
    8520              :           if (GET_MODE (x2) != E_BLKmode)
    8521              :             return -1;
    8522              :           x4 = XEXP (x1, 0);
    8523              :           operands[0] = x4;
    8524              :           if (!memory_operand (operands[0], E_BLKmode))
    8525              :             return -1;
    8526              :           x3 = XVECEXP (x2, 0, 0);
    8527              :           operands[1] = x3;
    8528              :           if (!register_operand (operands[1], E_DImode)
    8529              :               || !(
    8530              : #line 30629 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    8531              : (!TARGET_64BIT && TARGET_XSAVE) && 
    8532              : #line 30592 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    8533              : (TARGET_XSAVES)))
    8534              :             return -1;
    8535              :           return 1959; /* xsaves */
    8536              : 
    8537              :         case 40:
    8538              :           if (pnum_clobbers == NULL
    8539              :               || GET_MODE (x2) != E_BLKmode)
    8540              :             return -1;
    8541              :           x3 = XVECEXP (x2, 0, 0);
    8542              :           if (x3 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
    8543              :             return -1;
    8544              :           x4 = XEXP (x1, 0);
    8545              :           operands[0] = x4;
    8546              :           if (!memory_operand (operands[0], E_BLKmode)
    8547              :               || !
    8548              : #line 30760 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    8549              : (TARGET_80387))
    8550              :             return -1;
    8551              :           *pnum_clobbers = 8;
    8552              :           return 1978; /* fnstenv */
    8553              : 
    8554              :         case 42:
    8555              :           if (GET_MODE (x2) != E_HImode)
    8556              :             return -1;
    8557              :           x3 = XVECEXP (x2, 0, 0);
    8558              :           if (x3 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
    8559              :             return -1;
    8560              :           x4 = XEXP (x1, 0);
    8561              :           operands[0] = x4;
    8562              :           if (!nonimmediate_operand (operands[0], E_HImode)
    8563              :               || !
    8564              : #line 30788 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    8565              : (TARGET_80387))
    8566              :             return -1;
    8567              :           return 1980; /* fnstsw */
    8568              : 
    8569              :         case 49:
    8570              :           if (pattern60 (x1, 
    8571              : E_CCZmode) != 0
    8572              :               || !
    8573              : #line 31074 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    8574              : (TARGET_RTM))
    8575              :             return -1;
    8576              :           return 2023; /* xtest_1 */
    8577              : 
    8578              :         case 74:
    8579              :           if (pattern60 (x1, 
    8580              : E_CCCmode) != 0
    8581              :               || !
    8582              : #line 31259 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    8583              : (TARGET_UINTR && TARGET_64BIT))
    8584              :             return -1;
    8585              :           return 2049; /* testui */
    8586              : 
    8587              :         case 88:
    8588              :           if (GET_MODE (x2) != E_BLKmode)
    8589              :             return -1;
    8590              :           x3 = XVECEXP (x2, 0, 0);
    8591              :           if (x3 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
    8592              :             return -1;
    8593              :           x4 = XEXP (x1, 0);
    8594              :           operands[0] = x4;
    8595              :           if (!memory_operand (operands[0], E_BLKmode)
    8596              :               || !
    8597              : #line 31487 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    8598              : (TARGET_AMX_TILE))
    8599              :             return -1;
    8600              :           return 2065; /* sttilecfg */
    8601              : 
    8602              :         case 89:
    8603              :           x4 = XEXP (x1, 0);
    8604              :           operands[0] = x4;
    8605              :           x3 = XVECEXP (x2, 0, 0);
    8606              :           operands[1] = x3;
    8607              :           switch (GET_MODE (operands[0]))
    8608              :             {
    8609              :             case E_QImode:
    8610              :               if (!register_operand (operands[0], E_QImode)
    8611              :                   || GET_MODE (x2) != E_QImode
    8612              :                   || !memory_operand (operands[1], E_QImode)
    8613              :                   || !
    8614              : #line 31498 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    8615              : (TARGET_MOVRS && TARGET_64BIT))
    8616              :                 return -1;
    8617              :               return 2066; /* movrsqi */
    8618              : 
    8619              :             case E_HImode:
    8620              :               if (!register_operand (operands[0], E_HImode)
    8621              :                   || GET_MODE (x2) != E_HImode
    8622              :                   || !memory_operand (operands[1], E_HImode)
    8623              :                   || !
    8624              : #line 31498 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    8625              : (TARGET_MOVRS && TARGET_64BIT))
    8626              :                 return -1;
    8627              :               return 2067; /* movrshi */
    8628              : 
    8629              :             default:
    8630              :               return -1;
    8631              :             }
    8632              : 
    8633              :         default:
    8634              :           return -1;
    8635              :         }
    8636              : 
    8637              :     case 2:
    8638              :       switch (XINT (x2, 1))
    8639              :         {
    8640              :         case 24:
    8641              :           if (pattern99 (x1) != 0
    8642              :               || !
    8643              : #line 30642 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    8644              : (TARGET_64BIT && TARGET_XSAVE))
    8645              :             return -1;
    8646              :           return 1960; /* xsave_rex64 */
    8647              : 
    8648              :         case 28:
    8649              :           if (pattern99 (x1) != 0
    8650              :               || !(
    8651              : #line 30642 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    8652              : (TARGET_64BIT && TARGET_XSAVE) && 
    8653              : #line 30590 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    8654              : (TARGET_XSAVEOPT)))
    8655              :             return -1;
    8656              :           return 1961; /* xsaveopt_rex64 */
    8657              : 
    8658              :         case 34:
    8659              :           if (pattern99 (x1) != 0
    8660              :               || !(
    8661              : #line 30642 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    8662              : (TARGET_64BIT && TARGET_XSAVE) && 
    8663              : #line 30591 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    8664              : (TARGET_XSAVEC)))
    8665              :             return -1;
    8666              :           return 1962; /* xsavec_rex64 */
    8667              : 
    8668              :         case 30:
    8669              :           if (pattern99 (x1) != 0
    8670              :               || !(
    8671              : #line 30642 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    8672              : (TARGET_64BIT && TARGET_XSAVE) && 
    8673              : #line 30592 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    8674              : (TARGET_XSAVES)))
    8675              :             return -1;
    8676              :           return 1963; /* xsaves_rex64 */
    8677              : 
    8678              :         case 26:
    8679              :           if (pattern99 (x1) != 0
    8680              :               || !
    8681              : #line 30656 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    8682              : (TARGET_64BIT && TARGET_XSAVE))
    8683              :             return -1;
    8684              :           return 1964; /* xsave64 */
    8685              : 
    8686              :         case 29:
    8687              :           if (pattern99 (x1) != 0
    8688              :               || !(
    8689              : #line 30656 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    8690              : (TARGET_64BIT && TARGET_XSAVE) && 
    8691              : #line 30596 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    8692              : (TARGET_XSAVEOPT)))
    8693              :             return -1;
    8694              :           return 1965; /* xsaveopt64 */
    8695              : 
    8696              :         case 35:
    8697              :           if (pattern99 (x1) != 0
    8698              :               || !(
    8699              : #line 30656 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    8700              : (TARGET_64BIT && TARGET_XSAVE) && 
    8701              : #line 30597 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    8702              : (TARGET_XSAVEC)))
    8703              :             return -1;
    8704              :           return 1966; /* xsavec64 */
    8705              : 
    8706              :         case 32:
    8707              :           if (pattern99 (x1) != 0
    8708              :               || !(
    8709              : #line 30656 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    8710              : (TARGET_64BIT && TARGET_XSAVE) && 
    8711              : #line 30598 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    8712              : (TARGET_XSAVES)))
    8713              :             return -1;
    8714              :           return 1967; /* xsaves64 */
    8715              : 
    8716              :         case 79:
    8717              :           switch (pattern100 (x1))
    8718              :             {
    8719              :             case 0:
    8720              :               if (!(
    8721              : #line 31241 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    8722              : (TARGET_ENQCMD) && 
    8723              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    8724              : (Pmode == SImode)))
    8725              :                 return -1;
    8726              :               return 2043; /* enqcmd_si */
    8727              : 
    8728              :             case 1:
    8729              :               if (!(
    8730              : #line 31241 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    8731              : (TARGET_ENQCMD) && 
    8732              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    8733              : (Pmode == DImode)))
    8734              :                 return -1;
    8735              :               return 2045; /* enqcmd_di */
    8736              : 
    8737              :             default:
    8738              :               return -1;
    8739              :             }
    8740              : 
    8741              :         case 80:
    8742              :           switch (pattern100 (x1))
    8743              :             {
    8744              :             case 0:
    8745              :               if (!(
    8746              : #line 31241 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    8747              : (TARGET_ENQCMD) && 
    8748              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    8749              : (Pmode == SImode)))
    8750              :                 return -1;
    8751              :               return 2044; /* enqcmds_si */
    8752              : 
    8753              :             case 1:
    8754              :               if (!(
    8755              : #line 31241 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    8756              : (TARGET_ENQCMD) && 
    8757              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    8758              : (Pmode == DImode)))
    8759              :                 return -1;
    8760              :               return 2046; /* enqcmds_di */
    8761              : 
    8762              :             default:
    8763              :               return -1;
    8764              :             }
    8765              : 
    8766              :         case 69:
    8767              :           if (pattern101 (x1) != 0
    8768              :               || !
    8769              : #line 31280 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    8770              : (!TARGET_64BIT && TARGET_WAITPKG))
    8771              :             return -1;
    8772              :           return 2051; /* umwait */
    8773              : 
    8774              :         case 71:
    8775              :           if (pattern101 (x1) != 0
    8776              :               || !
    8777              : #line 31307 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    8778              : (!TARGET_64BIT && TARGET_WAITPKG))
    8779              :             return -1;
    8780              :           return 2055; /* tpause */
    8781              : 
    8782              :         case 111:
    8783              :           if (pnum_clobbers == NULL)
    8784              :             return -1;
    8785              :           x4 = XEXP (x1, 0);
    8786              :           operands[0] = x4;
    8787              :           x5 = XVECEXP (x2, 0, 1);
    8788              :           operands[2] = x5;
    8789              :           if (!const_int_operand (operands[2], E_SImode))
    8790              :             return -1;
    8791              :           x3 = XVECEXP (x2, 0, 0);
    8792              :           switch (GET_CODE (x3))
    8793              :             {
    8794              :             case PLUS:
    8795              :               switch (pattern872 (x2))
    8796              :                 {
    8797              :                 case 0:
    8798              :                   *pnum_clobbers = 1;
    8799              :                   return 11130; /* atomic_addqi */
    8800              : 
    8801              :                 case 1:
    8802              :                   *pnum_clobbers = 1;
    8803              :                   return 11131; /* atomic_addhi */
    8804              : 
    8805              :                 default:
    8806              :                   return -1;
    8807              :                 }
    8808              : 
    8809              :             case MINUS:
    8810              :               switch (pattern872 (x2))
    8811              :                 {
    8812              :                 case 0:
    8813              :                   *pnum_clobbers = 1;
    8814              :                   return 11134; /* atomic_subqi */
    8815              : 
    8816              :                 case 1:
    8817              :                   *pnum_clobbers = 1;
    8818              :                   return 11135; /* atomic_subhi */
    8819              : 
    8820              :                 default:
    8821              :                   return -1;
    8822              :                 }
    8823              : 
    8824              :             case AND:
    8825              :               switch (pattern872 (x2))
    8826              :                 {
    8827              :                 case 0:
    8828              :                   *pnum_clobbers = 1;
    8829              :                   return 11138; /* atomic_andqi */
    8830              : 
    8831              :                 case 1:
    8832              :                   *pnum_clobbers = 1;
    8833              :                   return 11141; /* atomic_andhi */
    8834              : 
    8835              :                 default:
    8836              :                   return -1;
    8837              :                 }
    8838              : 
    8839              :             case IOR:
    8840              :               switch (pattern872 (x2))
    8841              :                 {
    8842              :                 case 0:
    8843              :                   *pnum_clobbers = 1;
    8844              :                   return 11139; /* atomic_orqi */
    8845              : 
    8846              :                 case 1:
    8847              :                   *pnum_clobbers = 1;
    8848              :                   return 11142; /* atomic_orhi */
    8849              : 
    8850              :                 default:
    8851              :                   return -1;
    8852              :                 }
    8853              : 
    8854              :             case XOR:
    8855              :               switch (pattern872 (x2))
    8856              :                 {
    8857              :                 case 0:
    8858              :                   *pnum_clobbers = 1;
    8859              :                   return 11140; /* atomic_xorqi */
    8860              : 
    8861              :                 case 1:
    8862              :                   *pnum_clobbers = 1;
    8863              :                   return 11143; /* atomic_xorhi */
    8864              : 
    8865              :                 default:
    8866              :                   return -1;
    8867              :                 }
    8868              : 
    8869              :             default:
    8870              :               return -1;
    8871              :             }
    8872              : 
    8873              :         default:
    8874              :           return -1;
    8875              :         }
    8876              : 
    8877              :     case 3:
    8878              :       if (pattern46 (x1, 
    8879              : E_CCCmode) != 0)
    8880              :         return -1;
    8881              :       x3 = XVECEXP (x2, 0, 0);
    8882              :       operands[0] = x3;
    8883              :       x5 = XVECEXP (x2, 0, 1);
    8884              :       operands[1] = x5;
    8885              :       x6 = XVECEXP (x2, 0, 2);
    8886              :       operands[2] = x6;
    8887              :       switch (XINT (x2, 1))
    8888              :         {
    8889              :         case 15:
    8890              :           if (!nonimmediate_operand (operands[1], E_SImode)
    8891              :               || !const_int_operand (operands[2], E_SImode))
    8892              :             return -1;
    8893              :           switch (GET_MODE (operands[0]))
    8894              :             {
    8895              :             case E_SImode:
    8896              :               if (!register_operand (operands[0], E_SImode)
    8897              :                   || !
    8898              : #line 30845 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    8899              : (TARGET_LWP))
    8900              :                 return -1;
    8901              :               return 1988; /* lwp_lwpinssi */
    8902              : 
    8903              :             case E_DImode:
    8904              :               if (!register_operand (operands[0], E_DImode)
    8905              :                   || !(
    8906              : #line 30845 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    8907              : (TARGET_LWP) && 
    8908              : #line 1198 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    8909              : (TARGET_64BIT)))
    8910              :                 return -1;
    8911              :               return 1989; /* lwp_lwpinsdi */
    8912              : 
    8913              :             default:
    8914              :               return -1;
    8915              :             }
    8916              : 
    8917              :         case 69:
    8918              :           if (!register_operand (operands[0], E_SImode)
    8919              :               || !register_operand (operands[1], E_SImode)
    8920              :               || !register_operand (operands[2], E_SImode)
    8921              :               || !
    8922              : #line 31290 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    8923              : (TARGET_64BIT && TARGET_WAITPKG))
    8924              :             return -1;
    8925              :           return 2052; /* umwait_rex64 */
    8926              : 
    8927              :         case 71:
    8928              :           if (!register_operand (operands[0], E_SImode)
    8929              :               || !register_operand (operands[1], E_SImode)
    8930              :               || !register_operand (operands[2], E_SImode)
    8931              :               || !
    8932              : #line 31317 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    8933              : (TARGET_64BIT && TARGET_WAITPKG))
    8934              :             return -1;
    8935              :           return 2056; /* tpause_rex64 */
    8936              : 
    8937              :         default:
    8938              :           return -1;
    8939              :         }
    8940              : 
    8941              :     default:
    8942              :       return -1;
    8943              :     }
    8944              : }
    8945              : 
    8946              :  int
    8947              : recog_76 (rtx x1 ATTRIBUTE_UNUSED,
    8948              :         rtx_insn *insn ATTRIBUTE_UNUSED,
    8949              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
    8950              : {
    8951              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    8952              :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
    8953              :   rtx x10;
    8954              :   int res ATTRIBUTE_UNUSED;
    8955              :   x2 = XEXP (x1, 1);
    8956              :   x3 = XEXP (x2, 0);
    8957              :   x4 = XEXP (x3, 0);
    8958              :   switch (GET_CODE (x4))
    8959              :     {
    8960              :     case REG:
    8961              :     case SUBREG:
    8962              :     case MEM:
    8963              :       switch (pattern115 (x2, pnum_clobbers))
    8964              :         {
    8965              :         case 0:
    8966              :           if (
    8967              : #line 13412 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    8968              : (TARGET_APX_NDD && TARGET_APX_NF
    8969              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
    8970              :             return 738; /* *andqi_1_zextsi_nf */
    8971              :           if (pnum_clobbers == NULL
    8972              :               || !
    8973              : #line 13412 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    8974              : (TARGET_APX_NDD && true
    8975              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
    8976              :             return -1;
    8977              :           *pnum_clobbers = 1;
    8978              :           return 739; /* *andqi_1_zextsi */
    8979              : 
    8980              :         case 1:
    8981              :           if (
    8982              : #line 13431 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    8983              : (TARGET_APX_NDD && TARGET_APX_NF
    8984              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
    8985              :             return 742; /* *andhi_1_zextsi_nf */
    8986              :           if (pnum_clobbers == NULL
    8987              :               || !
    8988              : #line 13431 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    8989              : (TARGET_APX_NDD && true
    8990              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
    8991              :             return -1;
    8992              :           *pnum_clobbers = 1;
    8993              :           return 743; /* *andhi_1_zextsi */
    8994              : 
    8995              :         case 2:
    8996              :           if (
    8997              : #line 13412 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    8998              : (TARGET_APX_NDD && TARGET_APX_NF
    8999              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
    9000              :             return 740; /* *andqi_1_zextdi_nf */
    9001              :           if (pnum_clobbers == NULL
    9002              :               || !
    9003              : #line 13412 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9004              : (TARGET_APX_NDD && true
    9005              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
    9006              :             return -1;
    9007              :           *pnum_clobbers = 1;
    9008              :           return 741; /* *andqi_1_zextdi */
    9009              : 
    9010              :         case 3:
    9011              :           if (
    9012              : #line 13431 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9013              : (TARGET_APX_NDD && TARGET_APX_NF
    9014              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
    9015              :             return 744; /* *andhi_1_zextdi_nf */
    9016              :           if (pnum_clobbers == NULL
    9017              :               || !
    9018              : #line 13431 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9019              : (TARGET_APX_NDD && true
    9020              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
    9021              :             return -1;
    9022              :           *pnum_clobbers = 1;
    9023              :           return 745; /* *andhi_1_zextdi */
    9024              : 
    9025              :         case 4:
    9026              :           if (!
    9027              : #line 13452 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9028              : (TARGET_64BIT
    9029              :    && ix86_binary_operator_ok (AND, SImode, operands, TARGET_APX_NDD)))
    9030              :             return -1;
    9031              :           *pnum_clobbers = 1;
    9032              :           return 746; /* *andsi_1_zext */
    9033              : 
    9034              :         default:
    9035              :           return -1;
    9036              :         }
    9037              : 
    9038              :     case PLUS:
    9039              :       if (pnum_clobbers == NULL
    9040              :           || pattern443 (x4) != 0)
    9041              :         return -1;
    9042              :       x5 = XEXP (x4, 1);
    9043              :       if (x5 != const_int_rtx[MAX_SAVED_CONST_INT + -1]
    9044              :           || !register_operand (operands[0], E_DImode)
    9045              :           || GET_MODE (x2) != E_DImode
    9046              :           || GET_MODE (x3) != E_SImode)
    9047              :         return -1;
    9048              :       x6 = XEXP (x4, 0);
    9049              :       x7 = XEXP (x6, 1);
    9050              :       operands[2] = x7;
    9051              :       if (!register_operand (operands[2], E_QImode))
    9052              :         return -1;
    9053              :       x8 = XEXP (x3, 1);
    9054              :       operands[1] = x8;
    9055              :       if (!nonimmediate_operand (operands[1], E_SImode)
    9056              :           || !
    9057              : #line 23126 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9058              : (TARGET_64BIT && TARGET_BMI2))
    9059              :         return -1;
    9060              :       *pnum_clobbers = 1;
    9061              :       return 1630; /* *bmi2_bzhi_zero_extendsidi_4 */
    9062              : 
    9063              :     case UNSPEC:
    9064              :       if (XVECLEN (x4, 0) != 2)
    9065              :         return -1;
    9066              :       x9 = XVECEXP (x4, 0, 0);
    9067              :       operands[1] = x9;
    9068              :       x10 = XVECEXP (x4, 0, 1);
    9069              :       operands[2] = x10;
    9070              :       x8 = XEXP (x3, 1);
    9071              :       operands[3] = x8;
    9072              :       switch (XINT (x4, 1))
    9073              :         {
    9074              :         case 159:
    9075              :           switch (GET_MODE (operands[0]))
    9076              :             {
    9077              :             case E_DImode:
    9078              :               switch (pattern1099 (x2, 
    9079              : E_DImode))
    9080              :                 {
    9081              :                 case 0:
    9082              :                   if (!(
    9083              : #line 19558 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    9084              : (TARGET_AVX512BW
    9085              :    && (8
    9086              :        > GET_MODE_SIZE (DImode))) && 
    9087              : #line 19511 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    9088              : (TARGET_AVX512BW)))
    9089              :                     return -1;
    9090              :                   return 8268; /* *avx512bw_testmv64qi3_zext_mask */
    9091              : 
    9092              :                 case 1:
    9093              :                   if (!(
    9094              : #line 19558 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    9095              : (TARGET_AVX512BW
    9096              :    && (8
    9097              :        > GET_MODE_SIZE (SImode))) && ((
    9098              : #line 19511 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    9099              : (TARGET_AVX512BW) && 
    9100              : #line 501 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    9101              : (TARGET_AVX512VL && TARGET_AVX512BW)) && 
    9102              : #line 501 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    9103              : (TARGET_AVX512VL && TARGET_AVX512BW))))
    9104              :                     return -1;
    9105              :                   return 8271; /* *avx512vl_testmv32qi3_zext_mask */
    9106              : 
    9107              :                 case 2:
    9108              :                   if (!(
    9109              : #line 19558 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    9110              : (TARGET_AVX512BW
    9111              :    && (8
    9112              :        > GET_MODE_SIZE (SImode))) && 
    9113              : #line 19511 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    9114              : (TARGET_AVX512BW)))
    9115              :                     return -1;
    9116              :                   return 8277; /* *avx512bw_testmv32hi3_zext_mask */
    9117              : 
    9118              :                 case 3:
    9119              :                   if (!(
    9120              : #line 19558 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    9121              : (TARGET_AVX512BW
    9122              :    && (8
    9123              :        > GET_MODE_SIZE (HImode))) && ((
    9124              : #line 19511 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    9125              : (TARGET_AVX512BW) && 
    9126              : #line 502 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    9127              : (TARGET_AVX512VL && TARGET_AVX512BW)) && 
    9128              : #line 502 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    9129              : (TARGET_AVX512VL && TARGET_AVX512BW))))
    9130              :                     return -1;
    9131              :                   return 8274; /* *avx512vl_testmv16qi3_zext_mask */
    9132              : 
    9133              :                 case 4:
    9134              :                   if (!(
    9135              : #line 19558 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    9136              : (TARGET_AVX512BW
    9137              :    && (8
    9138              :        > GET_MODE_SIZE (HImode))) && ((
    9139              : #line 19511 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    9140              : (TARGET_AVX512BW) && 
    9141              : #line 504 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    9142              : (TARGET_AVX512VL && TARGET_AVX512BW)) && 
    9143              : #line 504 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    9144              : (TARGET_AVX512VL && TARGET_AVX512BW))))
    9145              :                     return -1;
    9146              :                   return 8280; /* *avx512vl_testmv16hi3_zext_mask */
    9147              : 
    9148              :                 case 5:
    9149              :                   if (!(
    9150              : #line 19558 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    9151              : (TARGET_AVX512BW
    9152              :    && (8
    9153              :        > GET_MODE_SIZE (HImode))) && 
    9154              : #line 19511 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    9155              : (TARGET_AVX512BW)))
    9156              :                     return -1;
    9157              :                   return 8286; /* *avx512f_testmv16si3_zext_mask */
    9158              : 
    9159              :                 case 6:
    9160              :                   if (!(
    9161              : #line 19558 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    9162              : (TARGET_AVX512BW
    9163              :    && (8
    9164              :        > GET_MODE_SIZE (QImode))) && ((
    9165              : #line 19511 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    9166              : (TARGET_AVX512BW) && 
    9167              : #line 505 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    9168              : (TARGET_AVX512VL && TARGET_AVX512BW)) && 
    9169              : #line 505 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    9170              : (TARGET_AVX512VL && TARGET_AVX512BW))))
    9171              :                     return -1;
    9172              :                   return 8283; /* *avx512vl_testmv8hi3_zext_mask */
    9173              : 
    9174              :                 case 7:
    9175              :                   if (!(
    9176              : #line 19558 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    9177              : (TARGET_AVX512BW
    9178              :    && (8
    9179              :        > GET_MODE_SIZE (QImode))) && ((
    9180              : #line 19511 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    9181              : (TARGET_AVX512BW) && 
    9182              : #line 506 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    9183              : (TARGET_AVX512VL)) && 
    9184              : #line 506 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    9185              : (TARGET_AVX512VL))))
    9186              :                     return -1;
    9187              :                   return 8289; /* *avx512vl_testmv8si3_zext_mask */
    9188              : 
    9189              :                 case 8:
    9190              :                   if (!(
    9191              : #line 19558 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    9192              : (TARGET_AVX512BW
    9193              :    && (8
    9194              :        > GET_MODE_SIZE (QImode))) && ((
    9195              : #line 19511 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    9196              : (TARGET_AVX512BW) && 
    9197              : #line 506 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    9198              : (TARGET_AVX512VL)) && 
    9199              : #line 506 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    9200              : (TARGET_AVX512VL))))
    9201              :                     return -1;
    9202              :                   return 8292; /* *avx512vl_testmv4si3_zext_mask */
    9203              : 
    9204              :                 case 9:
    9205              :                   if (!(
    9206              : #line 19558 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    9207              : (TARGET_AVX512BW
    9208              :    && (8
    9209              :        > GET_MODE_SIZE (QImode))) && 
    9210              : #line 19511 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    9211              : (TARGET_AVX512BW)))
    9212              :                     return -1;
    9213              :                   return 8295; /* *avx512f_testmv8di3_zext_mask */
    9214              : 
    9215              :                 case 10:
    9216              :                   if (!(
    9217              : #line 19558 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    9218              : (TARGET_AVX512BW
    9219              :    && (8
    9220              :        > GET_MODE_SIZE (QImode))) && ((
    9221              : #line 19511 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    9222              : (TARGET_AVX512BW) && 
    9223              : #line 507 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    9224              : (TARGET_AVX512VL)) && 
    9225              : #line 507 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    9226              : (TARGET_AVX512VL))))
    9227              :                     return -1;
    9228              :                   return 8298; /* *avx512vl_testmv4di3_zext_mask */
    9229              : 
    9230              :                 case 11:
    9231              :                   if (!(
    9232              : #line 19558 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    9233              : (TARGET_AVX512BW
    9234              :    && (8
    9235              :        > GET_MODE_SIZE (QImode))) && ((
    9236              : #line 19511 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    9237              : (TARGET_AVX512BW) && 
    9238              : #line 507 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    9239              : (TARGET_AVX512VL)) && 
    9240              : #line 507 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    9241              : (TARGET_AVX512VL))))
    9242              :                     return -1;
    9243              :                   return 8301; /* *avx512vl_testmv2di3_zext_mask */
    9244              : 
    9245              :                 default:
    9246              :                   return -1;
    9247              :                 }
    9248              : 
    9249              :             case E_SImode:
    9250              :               switch (pattern1099 (x2, 
    9251              : E_SImode))
    9252              :                 {
    9253              :                 case 0:
    9254              :                   if (!(
    9255              : #line 19558 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    9256              : (TARGET_AVX512BW
    9257              :    && (4
    9258              :        > GET_MODE_SIZE (DImode))) && 
    9259              : #line 19511 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    9260              : (TARGET_AVX512BW)))
    9261              :                     return -1;
    9262              :                   return 8269; /* *avx512bw_testmv64qi3_zext_mask */
    9263              : 
    9264              :                 case 1:
    9265              :                   if (!(
    9266              : #line 19558 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    9267              : (TARGET_AVX512BW
    9268              :    && (4
    9269              :        > GET_MODE_SIZE (SImode))) && ((
    9270              : #line 19511 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    9271              : (TARGET_AVX512BW) && 
    9272              : #line 501 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    9273              : (TARGET_AVX512VL && TARGET_AVX512BW)) && 
    9274              : #line 501 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    9275              : (TARGET_AVX512VL && TARGET_AVX512BW))))
    9276              :                     return -1;
    9277              :                   return 8272; /* *avx512vl_testmv32qi3_zext_mask */
    9278              : 
    9279              :                 case 2:
    9280              :                   if (!(
    9281              : #line 19558 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    9282              : (TARGET_AVX512BW
    9283              :    && (4
    9284              :        > GET_MODE_SIZE (SImode))) && 
    9285              : #line 19511 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    9286              : (TARGET_AVX512BW)))
    9287              :                     return -1;
    9288              :                   return 8278; /* *avx512bw_testmv32hi3_zext_mask */
    9289              : 
    9290              :                 case 3:
    9291              :                   if (!(
    9292              : #line 19558 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    9293              : (TARGET_AVX512BW
    9294              :    && (4
    9295              :        > GET_MODE_SIZE (HImode))) && ((
    9296              : #line 19511 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    9297              : (TARGET_AVX512BW) && 
    9298              : #line 502 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    9299              : (TARGET_AVX512VL && TARGET_AVX512BW)) && 
    9300              : #line 502 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    9301              : (TARGET_AVX512VL && TARGET_AVX512BW))))
    9302              :                     return -1;
    9303              :                   return 8275; /* *avx512vl_testmv16qi3_zext_mask */
    9304              : 
    9305              :                 case 4:
    9306              :                   if (!(
    9307              : #line 19558 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    9308              : (TARGET_AVX512BW
    9309              :    && (4
    9310              :        > GET_MODE_SIZE (HImode))) && ((
    9311              : #line 19511 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    9312              : (TARGET_AVX512BW) && 
    9313              : #line 504 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    9314              : (TARGET_AVX512VL && TARGET_AVX512BW)) && 
    9315              : #line 504 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    9316              : (TARGET_AVX512VL && TARGET_AVX512BW))))
    9317              :                     return -1;
    9318              :                   return 8281; /* *avx512vl_testmv16hi3_zext_mask */
    9319              : 
    9320              :                 case 5:
    9321              :                   if (!(
    9322              : #line 19558 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    9323              : (TARGET_AVX512BW
    9324              :    && (4
    9325              :        > GET_MODE_SIZE (HImode))) && 
    9326              : #line 19511 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    9327              : (TARGET_AVX512BW)))
    9328              :                     return -1;
    9329              :                   return 8287; /* *avx512f_testmv16si3_zext_mask */
    9330              : 
    9331              :                 case 6:
    9332              :                   if (!(
    9333              : #line 19558 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    9334              : (TARGET_AVX512BW
    9335              :    && (4
    9336              :        > GET_MODE_SIZE (QImode))) && ((
    9337              : #line 19511 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    9338              : (TARGET_AVX512BW) && 
    9339              : #line 505 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    9340              : (TARGET_AVX512VL && TARGET_AVX512BW)) && 
    9341              : #line 505 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    9342              : (TARGET_AVX512VL && TARGET_AVX512BW))))
    9343              :                     return -1;
    9344              :                   return 8284; /* *avx512vl_testmv8hi3_zext_mask */
    9345              : 
    9346              :                 case 7:
    9347              :                   if (!(
    9348              : #line 19558 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    9349              : (TARGET_AVX512BW
    9350              :    && (4
    9351              :        > GET_MODE_SIZE (QImode))) && ((
    9352              : #line 19511 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    9353              : (TARGET_AVX512BW) && 
    9354              : #line 506 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    9355              : (TARGET_AVX512VL)) && 
    9356              : #line 506 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    9357              : (TARGET_AVX512VL))))
    9358              :                     return -1;
    9359              :                   return 8290; /* *avx512vl_testmv8si3_zext_mask */
    9360              : 
    9361              :                 case 8:
    9362              :                   if (!(
    9363              : #line 19558 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    9364              : (TARGET_AVX512BW
    9365              :    && (4
    9366              :        > GET_MODE_SIZE (QImode))) && ((
    9367              : #line 19511 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    9368              : (TARGET_AVX512BW) && 
    9369              : #line 506 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    9370              : (TARGET_AVX512VL)) && 
    9371              : #line 506 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    9372              : (TARGET_AVX512VL))))
    9373              :                     return -1;
    9374              :                   return 8293; /* *avx512vl_testmv4si3_zext_mask */
    9375              : 
    9376              :                 case 9:
    9377              :                   if (!(
    9378              : #line 19558 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    9379              : (TARGET_AVX512BW
    9380              :    && (4
    9381              :        > GET_MODE_SIZE (QImode))) && 
    9382              : #line 19511 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    9383              : (TARGET_AVX512BW)))
    9384              :                     return -1;
    9385              :                   return 8296; /* *avx512f_testmv8di3_zext_mask */
    9386              : 
    9387              :                 case 10:
    9388              :                   if (!(
    9389              : #line 19558 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    9390              : (TARGET_AVX512BW
    9391              :    && (4
    9392              :        > GET_MODE_SIZE (QImode))) && ((
    9393              : #line 19511 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    9394              : (TARGET_AVX512BW) && 
    9395              : #line 507 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    9396              : (TARGET_AVX512VL)) && 
    9397              : #line 507 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    9398              : (TARGET_AVX512VL))))
    9399              :                     return -1;
    9400              :                   return 8299; /* *avx512vl_testmv4di3_zext_mask */
    9401              : 
    9402              :                 case 11:
    9403              :                   if (!(
    9404              : #line 19558 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    9405              : (TARGET_AVX512BW
    9406              :    && (4
    9407              :        > GET_MODE_SIZE (QImode))) && ((
    9408              : #line 19511 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    9409              : (TARGET_AVX512BW) && 
    9410              : #line 507 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    9411              : (TARGET_AVX512VL)) && 
    9412              : #line 507 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    9413              : (TARGET_AVX512VL))))
    9414              :                     return -1;
    9415              :                   return 8302; /* *avx512vl_testmv2di3_zext_mask */
    9416              : 
    9417              :                 default:
    9418              :                   return -1;
    9419              :                 }
    9420              : 
    9421              :             default:
    9422              :               return -1;
    9423              :             }
    9424              : 
    9425              :         case 160:
    9426              :           switch (GET_MODE (operands[0]))
    9427              :             {
    9428              :             case E_DImode:
    9429              :               switch (pattern1099 (x2, 
    9430              : E_DImode))
    9431              :                 {
    9432              :                 case 0:
    9433              :                   if (!(
    9434              : #line 19588 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    9435              : (TARGET_AVX512BW
    9436              :    && (8
    9437              :        > GET_MODE_SIZE (DImode))) && 
    9438              : #line 19511 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    9439              : (TARGET_AVX512BW)))
    9440              :                     return -1;
    9441              :                   return 8340; /* *avx512bw_testnmv64qi3_zext_mask */
    9442              : 
    9443              :                 case 1:
    9444              :                   if (!(
    9445              : #line 19588 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    9446              : (TARGET_AVX512BW
    9447              :    && (8
    9448              :        > GET_MODE_SIZE (SImode))) && ((
    9449              : #line 19511 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    9450              : (TARGET_AVX512BW) && 
    9451              : #line 501 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    9452              : (TARGET_AVX512VL && TARGET_AVX512BW)) && 
    9453              : #line 501 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    9454              : (TARGET_AVX512VL && TARGET_AVX512BW))))
    9455              :                     return -1;
    9456              :                   return 8343; /* *avx512vl_testnmv32qi3_zext_mask */
    9457              : 
    9458              :                 case 2:
    9459              :                   if (!(
    9460              : #line 19588 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    9461              : (TARGET_AVX512BW
    9462              :    && (8
    9463              :        > GET_MODE_SIZE (SImode))) && 
    9464              : #line 19511 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    9465              : (TARGET_AVX512BW)))
    9466              :                     return -1;
    9467              :                   return 8349; /* *avx512bw_testnmv32hi3_zext_mask */
    9468              : 
    9469              :                 case 3:
    9470              :                   if (!(
    9471              : #line 19588 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    9472              : (TARGET_AVX512BW
    9473              :    && (8
    9474              :        > GET_MODE_SIZE (HImode))) && ((
    9475              : #line 19511 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    9476              : (TARGET_AVX512BW) && 
    9477              : #line 502 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    9478              : (TARGET_AVX512VL && TARGET_AVX512BW)) && 
    9479              : #line 502 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    9480              : (TARGET_AVX512VL && TARGET_AVX512BW))))
    9481              :                     return -1;
    9482              :                   return 8346; /* *avx512vl_testnmv16qi3_zext_mask */
    9483              : 
    9484              :                 case 4:
    9485              :                   if (!(
    9486              : #line 19588 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    9487              : (TARGET_AVX512BW
    9488              :    && (8
    9489              :        > GET_MODE_SIZE (HImode))) && ((
    9490              : #line 19511 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    9491              : (TARGET_AVX512BW) && 
    9492              : #line 504 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    9493              : (TARGET_AVX512VL && TARGET_AVX512BW)) && 
    9494              : #line 504 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    9495              : (TARGET_AVX512VL && TARGET_AVX512BW))))
    9496              :                     return -1;
    9497              :                   return 8352; /* *avx512vl_testnmv16hi3_zext_mask */
    9498              : 
    9499              :                 case 5:
    9500              :                   if (!(
    9501              : #line 19588 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    9502              : (TARGET_AVX512BW
    9503              :    && (8
    9504              :        > GET_MODE_SIZE (HImode))) && 
    9505              : #line 19511 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    9506              : (TARGET_AVX512BW)))
    9507              :                     return -1;
    9508              :                   return 8358; /* *avx512f_testnmv16si3_zext_mask */
    9509              : 
    9510              :                 case 6:
    9511              :                   if (!(
    9512              : #line 19588 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    9513              : (TARGET_AVX512BW
    9514              :    && (8
    9515              :        > GET_MODE_SIZE (QImode))) && ((
    9516              : #line 19511 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    9517              : (TARGET_AVX512BW) && 
    9518              : #line 505 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    9519              : (TARGET_AVX512VL && TARGET_AVX512BW)) && 
    9520              : #line 505 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    9521              : (TARGET_AVX512VL && TARGET_AVX512BW))))
    9522              :                     return -1;
    9523              :                   return 8355; /* *avx512vl_testnmv8hi3_zext_mask */
    9524              : 
    9525              :                 case 7:
    9526              :                   if (!(
    9527              : #line 19588 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    9528              : (TARGET_AVX512BW
    9529              :    && (8
    9530              :        > GET_MODE_SIZE (QImode))) && ((
    9531              : #line 19511 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    9532              : (TARGET_AVX512BW) && 
    9533              : #line 506 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    9534              : (TARGET_AVX512VL)) && 
    9535              : #line 506 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    9536              : (TARGET_AVX512VL))))
    9537              :                     return -1;
    9538              :                   return 8361; /* *avx512vl_testnmv8si3_zext_mask */
    9539              : 
    9540              :                 case 8:
    9541              :                   if (!(
    9542              : #line 19588 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    9543              : (TARGET_AVX512BW
    9544              :    && (8
    9545              :        > GET_MODE_SIZE (QImode))) && ((
    9546              : #line 19511 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    9547              : (TARGET_AVX512BW) && 
    9548              : #line 506 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    9549              : (TARGET_AVX512VL)) && 
    9550              : #line 506 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    9551              : (TARGET_AVX512VL))))
    9552              :                     return -1;
    9553              :                   return 8364; /* *avx512vl_testnmv4si3_zext_mask */
    9554              : 
    9555              :                 case 9:
    9556              :                   if (!(
    9557              : #line 19588 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    9558              : (TARGET_AVX512BW
    9559              :    && (8
    9560              :        > GET_MODE_SIZE (QImode))) && 
    9561              : #line 19511 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    9562              : (TARGET_AVX512BW)))
    9563              :                     return -1;
    9564              :                   return 8367; /* *avx512f_testnmv8di3_zext_mask */
    9565              : 
    9566              :                 case 10:
    9567              :                   if (!(
    9568              : #line 19588 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    9569              : (TARGET_AVX512BW
    9570              :    && (8
    9571              :        > GET_MODE_SIZE (QImode))) && ((
    9572              : #line 19511 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    9573              : (TARGET_AVX512BW) && 
    9574              : #line 507 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    9575              : (TARGET_AVX512VL)) && 
    9576              : #line 507 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    9577              : (TARGET_AVX512VL))))
    9578              :                     return -1;
    9579              :                   return 8370; /* *avx512vl_testnmv4di3_zext_mask */
    9580              : 
    9581              :                 case 11:
    9582              :                   if (!(
    9583              : #line 19588 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    9584              : (TARGET_AVX512BW
    9585              :    && (8
    9586              :        > GET_MODE_SIZE (QImode))) && ((
    9587              : #line 19511 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    9588              : (TARGET_AVX512BW) && 
    9589              : #line 507 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    9590              : (TARGET_AVX512VL)) && 
    9591              : #line 507 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    9592              : (TARGET_AVX512VL))))
    9593              :                     return -1;
    9594              :                   return 8373; /* *avx512vl_testnmv2di3_zext_mask */
    9595              : 
    9596              :                 default:
    9597              :                   return -1;
    9598              :                 }
    9599              : 
    9600              :             case E_SImode:
    9601              :               switch (pattern1099 (x2, 
    9602              : E_SImode))
    9603              :                 {
    9604              :                 case 0:
    9605              :                   if (!(
    9606              : #line 19588 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    9607              : (TARGET_AVX512BW
    9608              :    && (4
    9609              :        > GET_MODE_SIZE (DImode))) && 
    9610              : #line 19511 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    9611              : (TARGET_AVX512BW)))
    9612              :                     return -1;
    9613              :                   return 8341; /* *avx512bw_testnmv64qi3_zext_mask */
    9614              : 
    9615              :                 case 1:
    9616              :                   if (!(
    9617              : #line 19588 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    9618              : (TARGET_AVX512BW
    9619              :    && (4
    9620              :        > GET_MODE_SIZE (SImode))) && ((
    9621              : #line 19511 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    9622              : (TARGET_AVX512BW) && 
    9623              : #line 501 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    9624              : (TARGET_AVX512VL && TARGET_AVX512BW)) && 
    9625              : #line 501 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    9626              : (TARGET_AVX512VL && TARGET_AVX512BW))))
    9627              :                     return -1;
    9628              :                   return 8344; /* *avx512vl_testnmv32qi3_zext_mask */
    9629              : 
    9630              :                 case 2:
    9631              :                   if (!(
    9632              : #line 19588 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    9633              : (TARGET_AVX512BW
    9634              :    && (4
    9635              :        > GET_MODE_SIZE (SImode))) && 
    9636              : #line 19511 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    9637              : (TARGET_AVX512BW)))
    9638              :                     return -1;
    9639              :                   return 8350; /* *avx512bw_testnmv32hi3_zext_mask */
    9640              : 
    9641              :                 case 3:
    9642              :                   if (!(
    9643              : #line 19588 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    9644              : (TARGET_AVX512BW
    9645              :    && (4
    9646              :        > GET_MODE_SIZE (HImode))) && ((
    9647              : #line 19511 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    9648              : (TARGET_AVX512BW) && 
    9649              : #line 502 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    9650              : (TARGET_AVX512VL && TARGET_AVX512BW)) && 
    9651              : #line 502 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    9652              : (TARGET_AVX512VL && TARGET_AVX512BW))))
    9653              :                     return -1;
    9654              :                   return 8347; /* *avx512vl_testnmv16qi3_zext_mask */
    9655              : 
    9656              :                 case 4:
    9657              :                   if (!(
    9658              : #line 19588 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    9659              : (TARGET_AVX512BW
    9660              :    && (4
    9661              :        > GET_MODE_SIZE (HImode))) && ((
    9662              : #line 19511 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    9663              : (TARGET_AVX512BW) && 
    9664              : #line 504 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    9665              : (TARGET_AVX512VL && TARGET_AVX512BW)) && 
    9666              : #line 504 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    9667              : (TARGET_AVX512VL && TARGET_AVX512BW))))
    9668              :                     return -1;
    9669              :                   return 8353; /* *avx512vl_testnmv16hi3_zext_mask */
    9670              : 
    9671              :                 case 5:
    9672              :                   if (!(
    9673              : #line 19588 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    9674              : (TARGET_AVX512BW
    9675              :    && (4
    9676              :        > GET_MODE_SIZE (HImode))) && 
    9677              : #line 19511 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    9678              : (TARGET_AVX512BW)))
    9679              :                     return -1;
    9680              :                   return 8359; /* *avx512f_testnmv16si3_zext_mask */
    9681              : 
    9682              :                 case 6:
    9683              :                   if (!(
    9684              : #line 19588 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    9685              : (TARGET_AVX512BW
    9686              :    && (4
    9687              :        > GET_MODE_SIZE (QImode))) && ((
    9688              : #line 19511 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    9689              : (TARGET_AVX512BW) && 
    9690              : #line 505 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    9691              : (TARGET_AVX512VL && TARGET_AVX512BW)) && 
    9692              : #line 505 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    9693              : (TARGET_AVX512VL && TARGET_AVX512BW))))
    9694              :                     return -1;
    9695              :                   return 8356; /* *avx512vl_testnmv8hi3_zext_mask */
    9696              : 
    9697              :                 case 7:
    9698              :                   if (!(
    9699              : #line 19588 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    9700              : (TARGET_AVX512BW
    9701              :    && (4
    9702              :        > GET_MODE_SIZE (QImode))) && ((
    9703              : #line 19511 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    9704              : (TARGET_AVX512BW) && 
    9705              : #line 506 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    9706              : (TARGET_AVX512VL)) && 
    9707              : #line 506 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    9708              : (TARGET_AVX512VL))))
    9709              :                     return -1;
    9710              :                   return 8362; /* *avx512vl_testnmv8si3_zext_mask */
    9711              : 
    9712              :                 case 8:
    9713              :                   if (!(
    9714              : #line 19588 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    9715              : (TARGET_AVX512BW
    9716              :    && (4
    9717              :        > GET_MODE_SIZE (QImode))) && ((
    9718              : #line 19511 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    9719              : (TARGET_AVX512BW) && 
    9720              : #line 506 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    9721              : (TARGET_AVX512VL)) && 
    9722              : #line 506 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    9723              : (TARGET_AVX512VL))))
    9724              :                     return -1;
    9725              :                   return 8365; /* *avx512vl_testnmv4si3_zext_mask */
    9726              : 
    9727              :                 case 9:
    9728              :                   if (!(
    9729              : #line 19588 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    9730              : (TARGET_AVX512BW
    9731              :    && (4
    9732              :        > GET_MODE_SIZE (QImode))) && 
    9733              : #line 19511 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    9734              : (TARGET_AVX512BW)))
    9735              :                     return -1;
    9736              :                   return 8368; /* *avx512f_testnmv8di3_zext_mask */
    9737              : 
    9738              :                 case 10:
    9739              :                   if (!(
    9740              : #line 19588 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    9741              : (TARGET_AVX512BW
    9742              :    && (4
    9743              :        > GET_MODE_SIZE (QImode))) && ((
    9744              : #line 19511 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    9745              : (TARGET_AVX512BW) && 
    9746              : #line 507 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    9747              : (TARGET_AVX512VL)) && 
    9748              : #line 507 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    9749              : (TARGET_AVX512VL))))
    9750              :                     return -1;
    9751              :                   return 8371; /* *avx512vl_testnmv4di3_zext_mask */
    9752              : 
    9753              :                 case 11:
    9754              :                   if (!(
    9755              : #line 19588 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    9756              : (TARGET_AVX512BW
    9757              :    && (4
    9758              :        > GET_MODE_SIZE (QImode))) && ((
    9759              : #line 19511 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    9760              : (TARGET_AVX512BW) && 
    9761              : #line 507 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    9762              : (TARGET_AVX512VL)) && 
    9763              : #line 507 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    9764              : (TARGET_AVX512VL))))
    9765              :                     return -1;
    9766              :                   return 8374; /* *avx512vl_testnmv2di3_zext_mask */
    9767              : 
    9768              :                 default:
    9769              :                   return -1;
    9770              :                 }
    9771              : 
    9772              :             default:
    9773              :               return -1;
    9774              :             }
    9775              : 
    9776              :         default:
    9777              :           return -1;
    9778              :         }
    9779              : 
    9780              :     default:
    9781              :       return -1;
    9782              :     }
    9783              : }
    9784              : 
    9785              :  int
    9786              : recog_98 (rtx x1 ATTRIBUTE_UNUSED,
    9787              :         rtx_insn *insn ATTRIBUTE_UNUSED,
    9788              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
    9789              : {
    9790              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    9791              :   rtx x2, x3, x4;
    9792              :   int res ATTRIBUTE_UNUSED;
    9793              :   if (pnum_clobbers == NULL)
    9794              :     return -1;
    9795              :   x2 = XEXP (x1, 0);
    9796              :   operands[0] = x2;
    9797              :   x3 = XEXP (x1, 1);
    9798              :   x4 = XEXP (x3, 0);
    9799              :   operands[1] = x4;
    9800              :   switch (GET_MODE (operands[0]))
    9801              :     {
    9802              :     case E_DImode:
    9803              :       if (!register_operand (operands[0], E_DImode)
    9804              :           || GET_MODE (x3) != E_DImode
    9805              :           || !general_operand (operands[1], E_DImode))
    9806              :         return -1;
    9807              :       if ((
    9808              : #line 15535 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9809              : (TARGET_CMOVE
    9810              :    && ix86_pre_reload_split ()) && 
    9811              : #line 1266 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9812              : (!TARGET_64BIT)))
    9813              :         {
    9814              :           *pnum_clobbers = 1;
    9815              :           return 1027; /* *absdi2_doubleword */
    9816              :         }
    9817              :       if (!(
    9818              : #line 15622 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9819              : (TARGET_CMOVE
    9820              :    && (DImode != QImode || !TARGET_PARTIAL_REG_STALL)
    9821              :    && ix86_pre_reload_split ()) && 
    9822              : #line 1192 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9823              : (TARGET_64BIT)))
    9824              :         return -1;
    9825              :       *pnum_clobbers = 1;
    9826              :       return 1034; /* *absdi2_1 */
    9827              : 
    9828              :     case E_SImode:
    9829              :       if (!register_operand (operands[0], E_SImode)
    9830              :           || GET_MODE (x3) != E_SImode
    9831              :           || !general_operand (operands[1], E_SImode)
    9832              :           || !
    9833              : #line 15622 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9834              : (TARGET_CMOVE
    9835              :    && (SImode != QImode || !TARGET_PARTIAL_REG_STALL)
    9836              :    && ix86_pre_reload_split ()))
    9837              :         return -1;
    9838              :       *pnum_clobbers = 1;
    9839              :       return 1033; /* *abssi2_1 */
    9840              : 
    9841              :     default:
    9842              :       return -1;
    9843              :     }
    9844              : }
    9845              : 
    9846              :  int
    9847              : recog_101 (rtx x1 ATTRIBUTE_UNUSED,
    9848              :         rtx_insn *insn ATTRIBUTE_UNUSED,
    9849              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
    9850              : {
    9851              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    9852              :   rtx x2, x3;
    9853              :   int res ATTRIBUTE_UNUSED;
    9854              :   if (register_operand (operands[2], E_SImode))
    9855              :     {
    9856              :       x2 = XEXP (x1, 0);
    9857              :       operands[0] = x2;
    9858              :       if (register_operand (operands[0], E_SImode))
    9859              :         {
    9860              :           x3 = XEXP (x1, 1);
    9861              :           if (GET_MODE (x3) == E_SImode
    9862              :               && nonimmediate_operand (operands[1], E_SImode)
    9863              :               && 
    9864              : #line 18280 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9865              : (TARGET_BMI2))
    9866              :             return 1203; /* *bmi2_lshrsi3_1 */
    9867              :         }
    9868              :     }
    9869              :   x2 = XEXP (x1, 0);
    9870              :   operands[0] = x2;
    9871              :   switch (GET_MODE (operands[0]))
    9872              :     {
    9873              :     case E_DImode:
    9874              :       if (!register_operand (operands[0], E_DImode))
    9875              :         return -1;
    9876              :       x3 = XEXP (x1, 1);
    9877              :       if (GET_MODE (x3) != E_DImode)
    9878              :         return -1;
    9879              :       if (pnum_clobbers != NULL
    9880              :           && register_operand (operands[1], E_DImode)
    9881              :           && nonmemory_operand (operands[2], E_QImode)
    9882              :           && 
    9883              : #line 1226 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9884              : (!TARGET_64BIT))
    9885              :         {
    9886              :           *pnum_clobbers = 1;
    9887              :           return 1162; /* lshrdi3_doubleword */
    9888              :         }
    9889              :       if (!nonimmediate_operand (operands[1], E_DImode)
    9890              :           || !register_operand (operands[2], E_DImode)
    9891              :           || !(
    9892              : #line 18280 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9893              : (TARGET_BMI2) && 
    9894              : #line 1198 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9895              : (TARGET_64BIT)))
    9896              :         return -1;
    9897              :       return 1205; /* *bmi2_lshrdi3_1 */
    9898              : 
    9899              :     case E_SImode:
    9900              :       x3 = XEXP (x1, 1);
    9901              :       if (pattern637 (x3, 
    9902              : E_SImode) != 0)
    9903              :         return -1;
    9904              :       if (
    9905              : #line 18353 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9906              : (ix86_binary_operator_ok (LSHIFTRT, SImode, operands, TARGET_APX_NDD)
    9907              :    && TARGET_APX_NF))
    9908              :         return 1212; /* *lshrsi3_1_nf */
    9909              :       if (pnum_clobbers == NULL
    9910              :           || !
    9911              : #line 18353 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9912              : (ix86_binary_operator_ok (LSHIFTRT, SImode, operands, TARGET_APX_NDD)
    9913              :    && true))
    9914              :         return -1;
    9915              :       *pnum_clobbers = 1;
    9916              :       return 1213; /* *lshrsi3_1 */
    9917              : 
    9918              :     default:
    9919              :       return -1;
    9920              :     }
    9921              : }
    9922              : 
    9923              :  int
    9924              : recog_106 (rtx x1 ATTRIBUTE_UNUSED,
    9925              :         rtx_insn *insn ATTRIBUTE_UNUSED,
    9926              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
    9927              : {
    9928              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    9929              :   rtx x2, x3;
    9930              :   int res ATTRIBUTE_UNUSED;
    9931              :   switch (pattern18 (x1, pnum_clobbers))
    9932              :     {
    9933              :     case 0:
    9934              :       if (!
    9935              : #line 19131 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9936              : (ix86_binary_operator_ok (ROTATE, SImode, operands)
    9937              :    && (INTVAL (operands[3]) & (GET_MODE_BITSIZE (SImode)-1))
    9938              :       == GET_MODE_BITSIZE (SImode)-1
    9939              :    && ix86_pre_reload_split ()))
    9940              :         return -1;
    9941              :       *pnum_clobbers = 1;
    9942              :       return 1328; /* *rotlsi3_mask_1 */
    9943              : 
    9944              :     case 1:
    9945              :       if (!(
    9946              : #line 19131 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9947              : (ix86_binary_operator_ok (ROTATE, DImode, operands)
    9948              :    && (INTVAL (operands[3]) & (GET_MODE_BITSIZE (DImode)-1))
    9949              :       == GET_MODE_BITSIZE (DImode)-1
    9950              :    && ix86_pre_reload_split ()) && 
    9951              : #line 1192 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9952              : (TARGET_64BIT)))
    9953              :         return -1;
    9954              :       *pnum_clobbers = 1;
    9955              :       return 1330; /* *rotldi3_mask_1 */
    9956              : 
    9957              :     case 2:
    9958              :       if (!
    9959              : #line 19212 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9960              : (ix86_binary_operator_ok (ROTATE, SImode, operands)
    9961              :    && (INTVAL (operands[3]) & (4 * BITS_PER_UNIT - 1)) == 0
    9962              :    && ix86_pre_reload_split ()))
    9963              :         return -1;
    9964              :       *pnum_clobbers = 1;
    9965              :       return 1344; /* *rotlsi3_add_1 */
    9966              : 
    9967              :     case 3:
    9968              :       if (!(
    9969              : #line 19212 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9970              : (ix86_binary_operator_ok (ROTATE, DImode, operands)
    9971              :    && (INTVAL (operands[3]) & (8 * BITS_PER_UNIT - 1)) == 0
    9972              :    && ix86_pre_reload_split ()) && 
    9973              : #line 1192 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9974              : (TARGET_64BIT)))
    9975              :         return -1;
    9976              :       *pnum_clobbers = 1;
    9977              :       return 1346; /* *rotldi3_add_1 */
    9978              : 
    9979              :     case 4:
    9980              :       if (!
    9981              : #line 19281 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9982              : (ix86_binary_operator_ok (ROTATE, SImode, operands)
    9983              :    && (INTVAL (operands[3]) & (4 * BITS_PER_UNIT - 1)) == 0
    9984              :    && ix86_pre_reload_split ()))
    9985              :         return -1;
    9986              :       *pnum_clobbers = 1;
    9987              :       return 1360; /* *rotlsi3_sub_1 */
    9988              : 
    9989              :     case 5:
    9990              :       if (!(
    9991              : #line 19281 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9992              : (ix86_binary_operator_ok (ROTATE, DImode, operands)
    9993              :    && (INTVAL (operands[3]) & (8 * BITS_PER_UNIT - 1)) == 0
    9994              :    && ix86_pre_reload_split ()) && 
    9995              : #line 1192 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9996              : (TARGET_64BIT)))
    9997              :         return -1;
    9998              :       *pnum_clobbers = 1;
    9999              :       return 1362; /* *rotldi3_sub_1 */
   10000              : 
   10001              :     case 6:
   10002              :       x2 = XEXP (x1, 1);
   10003              :       x3 = XEXP (x2, 1);
   10004              :       switch (GET_CODE (x3))
   10005              :         {
   10006              :         case SUBREG:
   10007              :           switch (pattern456 (x2, pnum_clobbers))
   10008              :             {
   10009              :             case 0:
   10010              :               if (
   10011              : #line 19083 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10012              : (ix86_binary_operator_ok (ROTATE, SImode, operands)
   10013              :    && (INTVAL (operands[3]) & (GET_MODE_BITSIZE (SImode)-1))
   10014              :       == GET_MODE_BITSIZE (SImode)-1
   10015              :    && ix86_pre_reload_split ()))
   10016              :                 {
   10017              :                   *pnum_clobbers = 1;
   10018              :                   return 1320; /* *rotlsi3_mask */
   10019              :                 }
   10020              :               break;
   10021              : 
   10022              :             case 1:
   10023              :               if ((
   10024              : #line 19083 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10025              : (ix86_binary_operator_ok (ROTATE, DImode, operands)
   10026              :    && (INTVAL (operands[3]) & (GET_MODE_BITSIZE (DImode)-1))
   10027              :       == GET_MODE_BITSIZE (DImode)-1
   10028              :    && ix86_pre_reload_split ()) && 
   10029              : #line 1192 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10030              : (TARGET_64BIT)))
   10031              :                 {
   10032              :                   *pnum_clobbers = 1;
   10033              :                   return 1322; /* *rotldi3_mask */
   10034              :                 }
   10035              :               break;
   10036              : 
   10037              :             case 2:
   10038              :               if (
   10039              : #line 19176 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10040              : (ix86_binary_operator_ok (ROTATE, SImode, operands)
   10041              :    && (INTVAL (operands[3]) & (4 * BITS_PER_UNIT - 1)) == 0
   10042              :    && ix86_pre_reload_split ()))
   10043              :                 {
   10044              :                   *pnum_clobbers = 1;
   10045              :                   return 1336; /* *rotlsi3_add */
   10046              :                 }
   10047              :               break;
   10048              : 
   10049              :             case 3:
   10050              :               if ((
   10051              : #line 19176 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10052              : (ix86_binary_operator_ok (ROTATE, DImode, operands)
   10053              :    && (INTVAL (operands[3]) & (8 * BITS_PER_UNIT - 1)) == 0
   10054              :    && ix86_pre_reload_split ()) && 
   10055              : #line 1192 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10056              : (TARGET_64BIT)))
   10057              :                 {
   10058              :                   *pnum_clobbers = 1;
   10059              :                   return 1338; /* *rotldi3_add */
   10060              :                 }
   10061              :               break;
   10062              : 
   10063              :             case 4:
   10064              :               if (
   10065              : #line 19245 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10066              : (ix86_binary_operator_ok (ROTATE, SImode, operands)
   10067              :    && (INTVAL (operands[3]) & (4 * BITS_PER_UNIT - 1)) == 0
   10068              :    && ix86_pre_reload_split ()))
   10069              :                 {
   10070              :                   *pnum_clobbers = 1;
   10071              :                   return 1352; /* *rotlsi3_sub */
   10072              :                 }
   10073              :               break;
   10074              : 
   10075              :             case 5:
   10076              :               if ((
   10077              : #line 19245 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10078              : (ix86_binary_operator_ok (ROTATE, DImode, operands)
   10079              :    && (INTVAL (operands[3]) & (8 * BITS_PER_UNIT - 1)) == 0
   10080              :    && ix86_pre_reload_split ()) && 
   10081              : #line 1192 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10082              : (TARGET_64BIT)))
   10083              :                 {
   10084              :                   *pnum_clobbers = 1;
   10085              :                   return 1354; /* *rotldi3_sub */
   10086              :                 }
   10087              :               break;
   10088              : 
   10089              :             default:
   10090              :               break;
   10091              :             }
   10092              :           break;
   10093              : 
   10094              :         case CONST_INT:
   10095              :           if (pnum_clobbers != NULL)
   10096              :             {
   10097              :               operands[2] = x3;
   10098              :               if (const_1_to_31_operand (operands[2], E_QImode)
   10099              :                   && register_operand (operands[0], E_DImode)
   10100              :                   && GET_MODE (x2) == E_DImode
   10101              :                   && register_operand (operands[1], E_DImode)
   10102              :                   && 
   10103              : #line 1266 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10104              : (!TARGET_64BIT))
   10105              :                 {
   10106              :                   *pnum_clobbers = 2;
   10107              :                   return 1364; /* ix86_rotldi3_doubleword */
   10108              :                 }
   10109              :             }
   10110              :           if (XWINT (x3, 0) == 32L
   10111              :               && register_operand (operands[0], E_DImode)
   10112              :               && GET_MODE (x2) == E_DImode
   10113              :               && register_operand (operands[1], E_DImode)
   10114              :               && 
   10115              : #line 19386 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10116              : (!TARGET_64BIT))
   10117              :             return 1368; /* rotl32di2_doubleword */
   10118              :           break;
   10119              : 
   10120              :         default:
   10121              :           break;
   10122              :         }
   10123              :       operands[2] = x3;
   10124              :       if (!nonmemory_operand (operands[2], E_QImode))
   10125              :         return -1;
   10126              :       switch (pattern14 (x2))
   10127              :         {
   10128              :         case 0:
   10129              :           if (
   10130              : #line 19437 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10131              : (ix86_binary_operator_ok (ROTATE, SImode, operands, TARGET_APX_NDD)
   10132              :    && TARGET_APX_NF))
   10133              :             return 1374; /* *rotlsi3_1_nf */
   10134              :           if (pnum_clobbers == NULL
   10135              :               || !
   10136              : #line 19437 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10137              : (ix86_binary_operator_ok (ROTATE, SImode, operands, TARGET_APX_NDD)
   10138              :    && true))
   10139              :             return -1;
   10140              :           *pnum_clobbers = 1;
   10141              :           return 1375; /* *rotlsi3_1 */
   10142              : 
   10143              :         case 1:
   10144              :           if ((
   10145              : #line 19437 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10146              : (ix86_binary_operator_ok (ROTATE, DImode, operands, TARGET_APX_NDD)
   10147              :    && TARGET_APX_NF) && 
   10148              : #line 1198 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10149              : (TARGET_64BIT)))
   10150              :             return 1378; /* *rotldi3_1_nf */
   10151              :           if (pnum_clobbers == NULL
   10152              :               || !(
   10153              : #line 19437 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10154              : (ix86_binary_operator_ok (ROTATE, DImode, operands, TARGET_APX_NDD)
   10155              :    && true) && 
   10156              : #line 1198 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10157              : (TARGET_64BIT)))
   10158              :             return -1;
   10159              :           *pnum_clobbers = 1;
   10160              :           return 1379; /* *rotldi3_1 */
   10161              : 
   10162              :         default:
   10163              :           return -1;
   10164              :         }
   10165              : 
   10166              :     default:
   10167              :       return -1;
   10168              :     }
   10169              : }
   10170              : 
   10171              :  int
   10172              : recog_114 (rtx x1 ATTRIBUTE_UNUSED,
   10173              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   10174              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   10175              : {
   10176              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   10177              :   rtx x2, x3, x4, x5, x6, x7;
   10178              :   int res ATTRIBUTE_UNUSED;
   10179              :   x2 = XEXP (x1, 1);
   10180              :   switch (XVECLEN (x2, 0))
   10181              :     {
   10182              :     case 2:
   10183              :       return recog_113 (x1, insn, pnum_clobbers);
   10184              : 
   10185              :     case 1:
   10186              :       return recog_112 (x1, insn, pnum_clobbers);
   10187              : 
   10188              :     case 4:
   10189              :       if (pnum_clobbers == NULL)
   10190              :         return -1;
   10191              :       x3 = XVECEXP (x2, 0, 3);
   10192              :       if (GET_CODE (x3) != REG
   10193              :           || REGNO (x3) != 7
   10194              :           || GET_MODE (x3) != E_SImode)
   10195              :         return -1;
   10196              :       x4 = XEXP (x1, 0);
   10197              :       operands[0] = x4;
   10198              :       if (!register_operand (operands[0], E_SImode)
   10199              :           || GET_MODE (x2) != E_SImode)
   10200              :         return -1;
   10201              :       x5 = XVECEXP (x2, 0, 0);
   10202              :       operands[1] = x5;
   10203              :       x6 = XVECEXP (x2, 0, 1);
   10204              :       operands[2] = x6;
   10205              :       x7 = XVECEXP (x2, 0, 2);
   10206              :       operands[3] = x7;
   10207              :       switch (XINT (x2, 1))
   10208              :         {
   10209              :         case 21:
   10210              :           if (!register_operand (operands[1], E_SImode)
   10211              :               || !tls_symbolic_operand (operands[2], E_VOIDmode)
   10212              :               || !constant_call_address_operand (operands[3], E_VOIDmode)
   10213              :               || !
   10214              : #line 23972 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10215              : (!TARGET_64BIT && TARGET_GNU_TLS))
   10216              :             return -1;
   10217              :           *pnum_clobbers = 3;
   10218              :           return 1681; /* *tls_global_dynamic_32_gnu */
   10219              : 
   10220              :         case 23:
   10221              :           if (!tls_symbolic_operand (operands[1], E_VOIDmode)
   10222              :               || !register_operand (operands[2], E_SImode)
   10223              :               || !register_operand (operands[3], E_SImode)
   10224              :               || !
   10225              : #line 24335 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10226              : (!TARGET_64BIT && TARGET_GNU2_TLS))
   10227              :             return -1;
   10228              :           *pnum_clobbers = 1;
   10229              :           return 1697; /* *tls_dynamic_gnu2_call_32 */
   10230              : 
   10231              :         default:
   10232              :           return -1;
   10233              :         }
   10234              : 
   10235              :     case 3:
   10236              :       x4 = XEXP (x1, 0);
   10237              :       operands[0] = x4;
   10238              :       switch (XINT (x2, 1))
   10239              :         {
   10240              :         case 22:
   10241              :           if (pnum_clobbers == NULL
   10242              :               || GET_MODE (x2) != E_SImode)
   10243              :             return -1;
   10244              :           x7 = XVECEXP (x2, 0, 2);
   10245              :           if (GET_CODE (x7) != REG
   10246              :               || REGNO (x7) != 7
   10247              :               || GET_MODE (x7) != E_SImode
   10248              :               || !register_operand (operands[0], E_SImode))
   10249              :             return -1;
   10250              :           x5 = XVECEXP (x2, 0, 0);
   10251              :           operands[1] = x5;
   10252              :           if (!register_operand (operands[1], E_SImode))
   10253              :             return -1;
   10254              :           x6 = XVECEXP (x2, 0, 1);
   10255              :           operands[2] = x6;
   10256              :           if (!constant_call_address_operand (operands[2], E_VOIDmode)
   10257              :               || !
   10258              : #line 24100 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10259              : (!TARGET_64BIT && TARGET_GNU_TLS))
   10260              :             return -1;
   10261              :           *pnum_clobbers = 3;
   10262              :           return 1685; /* *tls_local_dynamic_base_32_gnu */
   10263              : 
   10264              :         case 23:
   10265              :           if (pnum_clobbers == NULL)
   10266              :             return -1;
   10267              :           x7 = XVECEXP (x2, 0, 2);
   10268              :           if (GET_CODE (x7) != REG
   10269              :               || REGNO (x7) != 7)
   10270              :             return -1;
   10271              :           x5 = XVECEXP (x2, 0, 0);
   10272              :           operands[1] = x5;
   10273              :           if (!tls_symbolic_operand (operands[1], E_VOIDmode))
   10274              :             return -1;
   10275              :           x6 = XVECEXP (x2, 0, 1);
   10276              :           operands[2] = x6;
   10277              :           switch (GET_MODE (operands[0]))
   10278              :             {
   10279              :             case E_SImode:
   10280              :               if (pattern1221 (x2, 
   10281              : E_SImode) != 0
   10282              :                   || !(
   10283              : #line 24398 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10284              : (TARGET_64BIT && TARGET_GNU2_TLS) && 
   10285              : #line 1439 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10286              : (ptr_mode == SImode)))
   10287              :                 return -1;
   10288              :               *pnum_clobbers = 1;
   10289              :               return 1701; /* *tls_dynamic_gnu2_call_64_si */
   10290              : 
   10291              :             case E_DImode:
   10292              :               if (pattern1221 (x2, 
   10293              : E_DImode) != 0
   10294              :                   || !(
   10295              : #line 24398 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10296              : (TARGET_64BIT && TARGET_GNU2_TLS) && 
   10297              : #line 1439 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10298              : (ptr_mode == DImode)))
   10299              :                 return -1;
   10300              :               *pnum_clobbers = 1;
   10301              :               return 1702; /* *tls_dynamic_gnu2_call_64_di */
   10302              : 
   10303              :             default:
   10304              :               return -1;
   10305              :             }
   10306              : 
   10307              :         case 60:
   10308              :           switch (pattern307 (x2))
   10309              :             {
   10310              :             case 0:
   10311              :               x7 = XVECEXP (x2, 0, 2);
   10312              :               operands[3] = x7;
   10313              :               x6 = XVECEXP (x2, 0, 1);
   10314              :               operands[2] = x6;
   10315              :               switch (pattern24 (x2))
   10316              :                 {
   10317              :                 case 0:
   10318              :                   switch (GET_MODE (operands[1]))
   10319              :                     {
   10320              :                     case E_V32HFmode:
   10321              :                       if (register_operand (operands[1], E_V32HFmode)
   10322              :                           && nonimmediate_operand (operands[2], E_V32HFmode)
   10323              :                           && const_0_to_31_operand (operands[3], E_SImode)
   10324              :                           && (
   10325              : #line 4681 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10326              : (TARGET_AVX512F && 1) && 
   10327              : #line 514 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10328              : (TARGET_AVX512FP16)))
   10329              :                         return 3332; /* avx512bw_cmpv32hf3 */
   10330              :                       break;
   10331              : 
   10332              :                     case E_V32QImode:
   10333              :                       if (const_0_to_7_operand (operands[3], E_SImode))
   10334              :                         {
   10335              :                           if (register_operand (operands[1], E_V32QImode)
   10336              :                               && nonimmediate_operand (operands[2], E_V32QImode)
   10337              :                               && (
   10338              : #line 4876 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10339              : (TARGET_AVX512F) && 
   10340              : #line 501 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10341              : (TARGET_AVX512VL && TARGET_AVX512BW)))
   10342              :                             return 3478; /* avx512vl_cmpv32qi3 */
   10343              :                           if (general_operand (operands[1], E_V32QImode)
   10344              :                               && general_operand (operands[2], E_V32QImode)
   10345              :                               && (
   10346              : #line 4968 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10347              : (TARGET_AVX512F && ix86_pre_reload_split ()
   10348              :    && rtx_equal_p (operands[1], operands[2])
   10349              :    && (!MEM_P (operands[1]) || !MEM_VOLATILE_P (operands[1]))) && 
   10350              : #line 501 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10351              : (TARGET_AVX512VL && TARGET_AVX512BW)))
   10352              :                             return 3550; /* *avx512vl_cmpv32qi3_dup_op */
   10353              :                         }
   10354              :                       break;
   10355              : 
   10356              :                     case E_V32HImode:
   10357              :                       if (const_0_to_7_operand (operands[3], E_SImode))
   10358              :                         {
   10359              :                           if (register_operand (operands[1], E_V32HImode)
   10360              :                               && nonimmediate_operand (operands[2], E_V32HImode)
   10361              :                               && (
   10362              : #line 4876 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10363              : (TARGET_AVX512F) && 
   10364              : #line 503 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10365              : (TARGET_AVX512BW)))
   10366              :                             return 3482; /* avx512bw_cmpv32hi3 */
   10367              :                           if (general_operand (operands[1], E_V32HImode)
   10368              :                               && general_operand (operands[2], E_V32HImode)
   10369              :                               && (
   10370              : #line 4968 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10371              : (TARGET_AVX512F && ix86_pre_reload_split ()
   10372              :    && rtx_equal_p (operands[1], operands[2])
   10373              :    && (!MEM_P (operands[1]) || !MEM_VOLATILE_P (operands[1]))) && 
   10374              : #line 503 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10375              : (TARGET_AVX512BW)))
   10376              :                             return 3554; /* *avx512bw_cmpv32hi3_dup_op */
   10377              :                         }
   10378              :                       break;
   10379              : 
   10380              :                     case E_V32BFmode:
   10381              :                       if (register_operand (operands[1], E_V32BFmode)
   10382              :                           && nonimmediate_operand (operands[2], E_V32BFmode)
   10383              :                           && const_0_to_31_operand (operands[3], E_VOIDmode)
   10384              :                           && 
   10385              : #line 33532 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10386              : (TARGET_AVX10_2))
   10387              :                         return 10828; /* avx10_2_cmpbf16_v32bf */
   10388              :                       break;
   10389              : 
   10390              :                     default:
   10391              :                       break;
   10392              :                     }
   10393              :                   break;
   10394              : 
   10395              :                 case 1:
   10396              :                   if (const_0_to_7_operand (operands[3], E_SImode))
   10397              :                     {
   10398              :                       if (register_operand (operands[1], E_V64QImode)
   10399              :                           && nonimmediate_operand (operands[2], E_V64QImode)
   10400              :                           && (
   10401              : #line 4876 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10402              : (TARGET_AVX512F) && 
   10403              : #line 500 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10404              : (TARGET_AVX512BW)))
   10405              :                         return 3476; /* avx512bw_cmpv64qi3 */
   10406              :                       if (general_operand (operands[1], E_V64QImode)
   10407              :                           && general_operand (operands[2], E_V64QImode)
   10408              :                           && (
   10409              : #line 4968 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10410              : (TARGET_AVX512F && ix86_pre_reload_split ()
   10411              :    && rtx_equal_p (operands[1], operands[2])
   10412              :    && (!MEM_P (operands[1]) || !MEM_VOLATILE_P (operands[1]))) && 
   10413              : #line 500 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10414              : (TARGET_AVX512BW)))
   10415              :                         return 3548; /* *avx512bw_cmpv64qi3_dup_op */
   10416              :                     }
   10417              :                   break;
   10418              : 
   10419              :                 default:
   10420              :                   break;
   10421              :                 }
   10422              :               if (XWINT (x7, 0) != 0L)
   10423              :                 return -1;
   10424              :               operands[2] = x6;
   10425              :               switch (pattern997 (x2))
   10426              :                 {
   10427              :                 case 0:
   10428              :                   if (!
   10429              : #line 4996 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10430              : (TARGET_AVX512BW && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
   10431              :                     return -1;
   10432              :                   return 3572; /* *avx512bw_eqv64qi3_1 */
   10433              : 
   10434              :                 case 1:
   10435              :                   if (!(
   10436              : #line 4996 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10437              : (TARGET_AVX512BW && !(MEM_P (operands[1]) && MEM_P (operands[2]))) && 
   10438              : #line 328 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10439              : (TARGET_AVX512VL)))
   10440              :                     return -1;
   10441              :                   return 3580; /* *avx512vl_eqv32qi3_1 */
   10442              : 
   10443              :                 case 2:
   10444              :                   if (!
   10445              : #line 4996 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10446              : (TARGET_AVX512BW && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
   10447              :                     return -1;
   10448              :                   return 3584; /* *avx512bw_eqv32hi3_1 */
   10449              : 
   10450              :                 default:
   10451              :                   return -1;
   10452              :                 }
   10453              : 
   10454              :             case 1:
   10455              :               if (!
   10456              : #line 5193 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10457              : (TARGET_AVX512BW && ix86_pre_reload_split ()
   10458              :   && ix86_binary_operator_ok (US_MINUS, V64QImode, operands)
   10459              :   && (INTVAL (operands[4]) & 3) == 0))
   10460              :                 return -1;
   10461              :               return 3722; /* *avx512bw_ucmpv64qi3_1 */
   10462              : 
   10463              :             case 2:
   10464              :               if (!(
   10465              : #line 5193 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10466              : (TARGET_AVX512BW && ix86_pre_reload_split ()
   10467              :   && ix86_binary_operator_ok (US_MINUS, V32QImode, operands)
   10468              :   && (INTVAL (operands[4]) & 3) == 0) && 
   10469              : #line 328 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10470              : (TARGET_AVX512VL)))
   10471              :                 return -1;
   10472              :               return 3726; /* *avx512vl_ucmpv32qi3_1 */
   10473              : 
   10474              :             case 3:
   10475              :               if (!
   10476              : #line 5193 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10477              : (TARGET_AVX512BW && ix86_pre_reload_split ()
   10478              :   && ix86_binary_operator_ok (US_MINUS, V32HImode, operands)
   10479              :   && (INTVAL (operands[4]) & 3) == 0))
   10480              :                 return -1;
   10481              :               return 3728; /* *avx512bw_ucmpv32hi3_1 */
   10482              : 
   10483              :             default:
   10484              :               return -1;
   10485              :             }
   10486              : 
   10487              :         case 158:
   10488              :           switch (pattern307 (x2))
   10489              :             {
   10490              :             case 0:
   10491              :               x7 = XVECEXP (x2, 0, 2);
   10492              :               operands[3] = x7;
   10493              :               if (const_0_to_7_operand (operands[3], E_SImode))
   10494              :                 {
   10495              :                   x6 = XVECEXP (x2, 0, 1);
   10496              :                   operands[2] = x6;
   10497              :                   switch (GET_MODE (operands[0]))
   10498              :                     {
   10499              :                     case E_DImode:
   10500              :                       if (pattern598 (x2) == 0
   10501              :                           && (
   10502              : #line 4968 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10503              : (TARGET_AVX512F && ix86_pre_reload_split ()
   10504              :    && rtx_equal_p (operands[1], operands[2])
   10505              :    && (!MEM_P (operands[1]) || !MEM_VOLATILE_P (operands[1]))) && 
   10506              : #line 500 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10507              : (TARGET_AVX512BW)))
   10508              :                         return 3549; /* *avx512bw_cmpv64qi3_dup_op */
   10509              :                       break;
   10510              : 
   10511              :                     case E_SImode:
   10512              :                       switch (pattern599 (x2))
   10513              :                         {
   10514              :                         case 0:
   10515              :                           if ((
   10516              : #line 4968 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10517              : (TARGET_AVX512F && ix86_pre_reload_split ()
   10518              :    && rtx_equal_p (operands[1], operands[2])
   10519              :    && (!MEM_P (operands[1]) || !MEM_VOLATILE_P (operands[1]))) && 
   10520              : #line 501 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10521              : (TARGET_AVX512VL && TARGET_AVX512BW)))
   10522              :                             return 3551; /* *avx512vl_cmpv32qi3_dup_op */
   10523              :                           break;
   10524              : 
   10525              :                         case 1:
   10526              :                           if ((
   10527              : #line 4968 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10528              : (TARGET_AVX512F && ix86_pre_reload_split ()
   10529              :    && rtx_equal_p (operands[1], operands[2])
   10530              :    && (!MEM_P (operands[1]) || !MEM_VOLATILE_P (operands[1]))) && 
   10531              : #line 503 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10532              : (TARGET_AVX512BW)))
   10533              :                             return 3555; /* *avx512bw_cmpv32hi3_dup_op */
   10534              :                           break;
   10535              : 
   10536              :                         default:
   10537              :                           break;
   10538              :                         }
   10539              :                       break;
   10540              : 
   10541              :                     default:
   10542              :                       break;
   10543              :                     }
   10544              :                 }
   10545              :               x6 = XVECEXP (x2, 0, 1);
   10546              :               operands[2] = x6;
   10547              :               if (XWINT (x7, 0) == 0L)
   10548              :                 {
   10549              :                   switch (pattern997 (x2))
   10550              :                     {
   10551              :                     case 0:
   10552              :                       if (
   10553              : #line 4996 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10554              : (TARGET_AVX512BW && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
   10555              :                         return 3574; /* *avx512bw_eqv64qi3_1 */
   10556              :                       break;
   10557              : 
   10558              :                     case 1:
   10559              :                       if ((
   10560              : #line 4996 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10561              : (TARGET_AVX512BW && !(MEM_P (operands[1]) && MEM_P (operands[2]))) && 
   10562              : #line 328 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10563              : (TARGET_AVX512VL)))
   10564              :                         return 3582; /* *avx512vl_eqv32qi3_1 */
   10565              :                       break;
   10566              : 
   10567              :                     case 2:
   10568              :                       if (
   10569              : #line 4996 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10570              : (TARGET_AVX512BW && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
   10571              :                         return 3586; /* *avx512bw_eqv32hi3_1 */
   10572              :                       break;
   10573              : 
   10574              :                     default:
   10575              :                       break;
   10576              :                     }
   10577              :                 }
   10578              :               operands[3] = x7;
   10579              :               if (!const_0_to_7_operand (operands[3], E_SImode))
   10580              :                 return -1;
   10581              :               switch (pattern303 (x2))
   10582              :                 {
   10583              :                 case 0:
   10584              :                   if (!(
   10585              : #line 5089 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10586              : (TARGET_AVX512F) && 
   10587              : #line 500 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10588              : (TARGET_AVX512BW)))
   10589              :                     return -1;
   10590              :                   return 3656; /* avx512bw_ucmpv64qi3 */
   10591              : 
   10592              :                 case 1:
   10593              :                   if (!(
   10594              : #line 5089 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10595              : (TARGET_AVX512F) && 
   10596              : #line 501 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10597              : (TARGET_AVX512VL && TARGET_AVX512BW)))
   10598              :                     return -1;
   10599              :                   return 3658; /* avx512vl_ucmpv32qi3 */
   10600              : 
   10601              :                 case 2:
   10602              :                   if (!(
   10603              : #line 5089 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10604              : (TARGET_AVX512F) && 
   10605              : #line 503 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10606              : (TARGET_AVX512BW)))
   10607              :                     return -1;
   10608              :                   return 3662; /* avx512bw_ucmpv32hi3 */
   10609              : 
   10610              :                 default:
   10611              :                   return -1;
   10612              :                 }
   10613              : 
   10614              :             case 1:
   10615              :               if (!
   10616              : #line 5193 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10617              : (TARGET_AVX512BW && ix86_pre_reload_split ()
   10618              :   && ix86_binary_operator_ok (US_MINUS, V64QImode, operands)
   10619              :   && (INTVAL (operands[4]) & 1) == 0))
   10620              :                 return -1;
   10621              :               return 3723; /* *avx512bw_ucmpv64qi3_1 */
   10622              : 
   10623              :             case 2:
   10624              :               if (!(
   10625              : #line 5193 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10626              : (TARGET_AVX512BW && ix86_pre_reload_split ()
   10627              :   && ix86_binary_operator_ok (US_MINUS, V32QImode, operands)
   10628              :   && (INTVAL (operands[4]) & 1) == 0) && 
   10629              : #line 328 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10630              : (TARGET_AVX512VL)))
   10631              :                 return -1;
   10632              :               return 3727; /* *avx512vl_ucmpv32qi3_1 */
   10633              : 
   10634              :             case 3:
   10635              :               if (!
   10636              : #line 5193 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10637              : (TARGET_AVX512BW && ix86_pre_reload_split ()
   10638              :   && ix86_binary_operator_ok (US_MINUS, V32HImode, operands)
   10639              :   && (INTVAL (operands[4]) & 1) == 0))
   10640              :                 return -1;
   10641              :               return 3729; /* *avx512bw_ucmpv32hi3_1 */
   10642              : 
   10643              :             default:
   10644              :               return -1;
   10645              :             }
   10646              : 
   10647              :         case 122:
   10648              :           if (pattern308 (x2) != 0
   10649              :               || !
   10650              : #line 23805 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10651              : ((TARGET_MMX || TARGET_MMX_WITH_SSE) && TARGET_SSSE3))
   10652              :             return -1;
   10653              :           return 8721; /* ssse3_palignrdi */
   10654              : 
   10655              :         default:
   10656              :           return -1;
   10657              :         }
   10658              : 
   10659              :     default:
   10660              :       return -1;
   10661              :     }
   10662              : }
   10663              : 
   10664              :  int
   10665              : recog_132 (rtx x1 ATTRIBUTE_UNUSED,
   10666              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   10667              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   10668              : {
   10669              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   10670              :   rtx x2, x3, x4, x5, x6, x7;
   10671              :   int res ATTRIBUTE_UNUSED;
   10672              :   x2 = XEXP (x1, 1);
   10673              :   x3 = XEXP (x2, 0);
   10674              :   x4 = XVECEXP (x3, 0, 0);
   10675              :   operands[1] = x4;
   10676              :   x5 = XVECEXP (x3, 0, 1);
   10677              :   operands[2] = x5;
   10678              :   x6 = XEXP (x2, 1);
   10679              :   operands[3] = x6;
   10680              :   x7 = XEXP (x2, 2);
   10681              :   operands[4] = x7;
   10682              :   switch (GET_MODE (operands[0]))
   10683              :     {
   10684              :     case E_V8SImode:
   10685              :       if (pattern1119 (x2, 
   10686              : E_QImode, 
   10687              : E_V8SImode) != 0
   10688              :           || !(
   10689              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10690              : (TARGET_AVX512F) && 
   10691              : #line 28251 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10692              : (TARGET_AVX2 && (32 == 64 || TARGET_AVX512VL))))
   10693              :         return -1;
   10694              :       return 9200; /* avx2_permvarv8si_mask */
   10695              : 
   10696              :     case E_V8SFmode:
   10697              :       if (pattern1120 (x2, 
   10698              : E_QImode, 
   10699              : E_V8SFmode, 
   10700              : E_V8SImode) != 0
   10701              :           || !(
   10702              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10703              : (TARGET_AVX512F) && 
   10704              : #line 28251 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10705              : (TARGET_AVX2 && (32 == 64 || TARGET_AVX512VL))))
   10706              :         return -1;
   10707              :       return 9202; /* avx2_permvarv8sf_mask */
   10708              : 
   10709              :     case E_V16SImode:
   10710              :       if (pattern1119 (x2, 
   10711              : E_HImode, 
   10712              : E_V16SImode) != 0
   10713              :           || !(
   10714              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10715              : (TARGET_AVX512F) && (
   10716              : #line 28251 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10717              : (TARGET_AVX2 && (64 == 64 || TARGET_AVX512VL)) && 
   10718              : #line 978 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10719              : (TARGET_AVX512F))))
   10720              :         return -1;
   10721              :       return 9204; /* avx512f_permvarv16si_mask */
   10722              : 
   10723              :     case E_V16SFmode:
   10724              :       if (pattern1120 (x2, 
   10725              : E_HImode, 
   10726              : E_V16SFmode, 
   10727              : E_V16SImode) != 0
   10728              :           || !(
   10729              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10730              : (TARGET_AVX512F) && (
   10731              : #line 28251 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10732              : (TARGET_AVX2 && (64 == 64 || TARGET_AVX512VL)) && 
   10733              : #line 978 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10734              : (TARGET_AVX512F))))
   10735              :         return -1;
   10736              :       return 9206; /* avx512f_permvarv16sf_mask */
   10737              : 
   10738              :     case E_V8DImode:
   10739              :       if (pattern1119 (x2, 
   10740              : E_QImode, 
   10741              : E_V8DImode) != 0
   10742              :           || !(
   10743              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10744              : (TARGET_AVX512F) && (
   10745              : #line 28251 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10746              : (TARGET_AVX2 && (64 == 64 || TARGET_AVX512VL)) && 
   10747              : #line 979 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10748              : (TARGET_AVX512F))))
   10749              :         return -1;
   10750              :       return 9208; /* avx512f_permvarv8di_mask */
   10751              : 
   10752              :     case E_V8DFmode:
   10753              :       if (pattern1120 (x2, 
   10754              : E_QImode, 
   10755              : E_V8DFmode, 
   10756              : E_V8DImode) != 0
   10757              :           || !(
   10758              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10759              : (TARGET_AVX512F) && (
   10760              : #line 28251 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10761              : (TARGET_AVX2 && (64 == 64 || TARGET_AVX512VL)) && 
   10762              : #line 979 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10763              : (TARGET_AVX512F))))
   10764              :         return -1;
   10765              :       return 9210; /* avx512f_permvarv8df_mask */
   10766              : 
   10767              :     case E_V4DImode:
   10768              :       if (pattern1119 (x2, 
   10769              : E_QImode, 
   10770              : E_V4DImode) != 0
   10771              :           || !(
   10772              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10773              : (TARGET_AVX512F) && (
   10774              : #line 28251 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10775              : (TARGET_AVX2 && (32 == 64 || TARGET_AVX512VL)) && 
   10776              : #line 980 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10777              : (TARGET_AVX512VL))))
   10778              :         return -1;
   10779              :       return 9212; /* avx2_permvarv4di_mask */
   10780              : 
   10781              :     case E_V4DFmode:
   10782              :       if (pattern1120 (x2, 
   10783              : E_QImode, 
   10784              : E_V4DFmode, 
   10785              : E_V4DImode) != 0
   10786              :           || !(
   10787              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10788              : (TARGET_AVX512F) && (
   10789              : #line 28251 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10790              : (TARGET_AVX2 && (32 == 64 || TARGET_AVX512VL)) && 
   10791              : #line 980 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10792              : (TARGET_AVX512VL))))
   10793              :         return -1;
   10794              :       return 9214; /* avx2_permvarv4df_mask */
   10795              : 
   10796              :     case E_V64QImode:
   10797              :       if (pattern1119 (x2, 
   10798              : E_DImode, 
   10799              : E_V64QImode) != 0
   10800              :           || !(
   10801              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10802              : (TARGET_AVX512F) && 
   10803              : #line 28271 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10804              : (TARGET_AVX512VBMI && (64 == 64 || TARGET_AVX512VL))))
   10805              :         return -1;
   10806              :       return 9216; /* avx512bw_permvarv64qi_mask */
   10807              : 
   10808              :     case E_V16QImode:
   10809              :       if (pattern1119 (x2, 
   10810              : E_HImode, 
   10811              : E_V16QImode) != 0
   10812              :           || !(
   10813              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10814              : (TARGET_AVX512F) && (
   10815              : #line 28271 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10816              : (TARGET_AVX512VBMI && (16 == 64 || TARGET_AVX512VL)) && 
   10817              : #line 338 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10818              : (TARGET_AVX512VL))))
   10819              :         return -1;
   10820              :       return 9218; /* avx512vl_permvarv16qi_mask */
   10821              : 
   10822              :     case E_V32QImode:
   10823              :       if (pattern1119 (x2, 
   10824              : E_SImode, 
   10825              : E_V32QImode) != 0
   10826              :           || !(
   10827              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10828              : (TARGET_AVX512F) && (
   10829              : #line 28271 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10830              : (TARGET_AVX512VBMI && (32 == 64 || TARGET_AVX512VL)) && 
   10831              : #line 338 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10832              : (TARGET_AVX512VL))))
   10833              :         return -1;
   10834              :       return 9220; /* avx512vl_permvarv32qi_mask */
   10835              : 
   10836              :     case E_V8HImode:
   10837              :       if (pattern1119 (x2, 
   10838              : E_QImode, 
   10839              : E_V8HImode) != 0
   10840              :           || !(
   10841              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10842              : (TARGET_AVX512F) && (
   10843              : #line 28284 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10844              : (TARGET_AVX512BW && (16 == 64 || TARGET_AVX512VL)) && 
   10845              : #line 678 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10846              : (TARGET_AVX512VL))))
   10847              :         return -1;
   10848              :       return 9222; /* avx512vl_permvarv8hi_mask */
   10849              : 
   10850              :     case E_V16HImode:
   10851              :       if (pattern1119 (x2, 
   10852              : E_HImode, 
   10853              : E_V16HImode) != 0
   10854              :           || !(
   10855              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10856              : (TARGET_AVX512F) && (
   10857              : #line 28284 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10858              : (TARGET_AVX512BW && (32 == 64 || TARGET_AVX512VL)) && 
   10859              : #line 678 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10860              : (TARGET_AVX512VL))))
   10861              :         return -1;
   10862              :       return 9224; /* avx512vl_permvarv16hi_mask */
   10863              : 
   10864              :     case E_V32HImode:
   10865              :       if (pattern1119 (x2, 
   10866              : E_SImode, 
   10867              : E_V32HImode) != 0
   10868              :           || !(
   10869              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10870              : (TARGET_AVX512F) && 
   10871              : #line 28284 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10872              : (TARGET_AVX512BW && (64 == 64 || TARGET_AVX512VL))))
   10873              :         return -1;
   10874              :       return 9226; /* avx512bw_permvarv32hi_mask */
   10875              : 
   10876              :     case E_V8HFmode:
   10877              :       if (pattern1120 (x2, 
   10878              : E_QImode, 
   10879              : E_V8HFmode, 
   10880              : E_V8HImode) != 0
   10881              :           || !(
   10882              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10883              : (TARGET_AVX512F) && (
   10884              : #line 28284 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10885              : (TARGET_AVX512BW && (16 == 64 || TARGET_AVX512VL)) && 
   10886              : #line 679 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10887              : (TARGET_AVX512VL))))
   10888              :         return -1;
   10889              :       return 9228; /* avx512fp16_permvarv8hf_mask */
   10890              : 
   10891              :     case E_V16HFmode:
   10892              :       if (pattern1120 (x2, 
   10893              : E_HImode, 
   10894              : E_V16HFmode, 
   10895              : E_V16HImode) != 0
   10896              :           || !(
   10897              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10898              : (TARGET_AVX512F) && (
   10899              : #line 28284 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10900              : (TARGET_AVX512BW && (32 == 64 || TARGET_AVX512VL)) && 
   10901              : #line 679 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10902              : (TARGET_AVX512VL))))
   10903              :         return -1;
   10904              :       return 9230; /* avx512vl_permvarv16hf_mask */
   10905              : 
   10906              :     case E_V32HFmode:
   10907              :       if (pattern1120 (x2, 
   10908              : E_SImode, 
   10909              : E_V32HFmode, 
   10910              : E_V32HImode) != 0
   10911              :           || !(
   10912              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10913              : (TARGET_AVX512F) && 
   10914              : #line 28284 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10915              : (TARGET_AVX512BW && (64 == 64 || TARGET_AVX512VL))))
   10916              :         return -1;
   10917              :       return 9232; /* avx512bw_permvarv32hf_mask */
   10918              : 
   10919              :     case E_V8BFmode:
   10920              :       if (pattern1120 (x2, 
   10921              : E_QImode, 
   10922              : E_V8BFmode, 
   10923              : E_V8HImode) != 0
   10924              :           || !(
   10925              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10926              : (TARGET_AVX512F) && (
   10927              : #line 28284 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10928              : (TARGET_AVX512BW && (16 == 64 || TARGET_AVX512VL)) && 
   10929              : #line 680 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10930              : (TARGET_AVX512VL))))
   10931              :         return -1;
   10932              :       return 9234; /* avx512vl_permvarv8bf_mask */
   10933              : 
   10934              :     case E_V16BFmode:
   10935              :       if (pattern1120 (x2, 
   10936              : E_HImode, 
   10937              : E_V16BFmode, 
   10938              : E_V16HImode) != 0
   10939              :           || !(
   10940              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10941              : (TARGET_AVX512F) && (
   10942              : #line 28284 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10943              : (TARGET_AVX512BW && (32 == 64 || TARGET_AVX512VL)) && 
   10944              : #line 680 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10945              : (TARGET_AVX512VL))))
   10946              :         return -1;
   10947              :       return 9236; /* avx512vl_permvarv16bf_mask */
   10948              : 
   10949              :     case E_V32BFmode:
   10950              :       if (pattern1120 (x2, 
   10951              : E_SImode, 
   10952              : E_V32BFmode, 
   10953              : E_V32HImode) != 0
   10954              :           || !(
   10955              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10956              : (TARGET_AVX512F) && 
   10957              : #line 28284 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10958              : (TARGET_AVX512BW && (64 == 64 || TARGET_AVX512VL))))
   10959              :         return -1;
   10960              :       return 9238; /* avx512bw_permvarv32bf_mask */
   10961              : 
   10962              :     default:
   10963              :       return -1;
   10964              :     }
   10965              : }
   10966              : 
   10967              :  int
   10968              : recog_144 (rtx x1 ATTRIBUTE_UNUSED,
   10969              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   10970              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   10971              : {
   10972              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   10973              :   rtx x2, x3, x4, x5, x6, x7, x8;
   10974              :   int res ATTRIBUTE_UNUSED;
   10975              :   x2 = XEXP (x1, 1);
   10976              :   x3 = XEXP (x2, 0);
   10977              :   x4 = XVECEXP (x3, 0, 0);
   10978              :   operands[1] = x4;
   10979              :   x5 = XVECEXP (x3, 0, 1);
   10980              :   operands[2] = x5;
   10981              :   x6 = XVECEXP (x3, 0, 2);
   10982              :   operands[3] = x6;
   10983              :   if (!const_0_to_255_operand (operands[3], E_SImode))
   10984              :     return -1;
   10985              :   x7 = XEXP (x2, 1);
   10986              :   operands[4] = x7;
   10987              :   x8 = XEXP (x2, 2);
   10988              :   operands[5] = x8;
   10989              :   switch (GET_MODE (operands[0]))
   10990              :     {
   10991              :     case E_V16SImode:
   10992              :       if (pattern482 (x2, 
   10993              : E_V16SImode, 
   10994              : E_HImode) != 0
   10995              :           || !
   10996              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10997              : (TARGET_AVX512F))
   10998              :         return -1;
   10999              :       return 7111; /* avx512f_alignv16si_mask */
   11000              : 
   11001              :     case E_V8SImode:
   11002              :       if (pattern482 (x2, 
   11003              : E_V8SImode, 
   11004              : E_QImode) != 0
   11005              :           || !(
   11006              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   11007              : (TARGET_AVX512F) && (
   11008              : #line 14457 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11009              : (TARGET_AVX512F) && 
   11010              : #line 496 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11011              : (TARGET_AVX512VL))))
   11012              :         return -1;
   11013              :       return 7113; /* avx512vl_alignv8si_mask */
   11014              : 
   11015              :     case E_V4SImode:
   11016              :       if (pattern482 (x2, 
   11017              : E_V4SImode, 
   11018              : E_QImode) != 0
   11019              :           || !(
   11020              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   11021              : (TARGET_AVX512F) && (
   11022              : #line 14457 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11023              : (TARGET_AVX512F) && 
   11024              : #line 496 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11025              : (TARGET_AVX512VL))))
   11026              :         return -1;
   11027              :       return 7115; /* avx512vl_alignv4si_mask */
   11028              : 
   11029              :     case E_V8DImode:
   11030              :       if (pattern482 (x2, 
   11031              : E_V8DImode, 
   11032              : E_QImode) != 0
   11033              :           || !
   11034              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   11035              : (TARGET_AVX512F))
   11036              :         return -1;
   11037              :       return 7117; /* avx512f_alignv8di_mask */
   11038              : 
   11039              :     case E_V4DImode:
   11040              :       if (pattern482 (x2, 
   11041              : E_V4DImode, 
   11042              : E_QImode) != 0
   11043              :           || !(
   11044              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   11045              : (TARGET_AVX512F) && (
   11046              : #line 14457 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11047              : (TARGET_AVX512F) && 
   11048              : #line 497 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11049              : (TARGET_AVX512VL))))
   11050              :         return -1;
   11051              :       return 7119; /* avx512vl_alignv4di_mask */
   11052              : 
   11053              :     case E_V2DImode:
   11054              :       if (pattern482 (x2, 
   11055              : E_V2DImode, 
   11056              : E_QImode) != 0
   11057              :           || !(
   11058              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   11059              : (TARGET_AVX512F) && (
   11060              : #line 14457 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11061              : (TARGET_AVX512F) && 
   11062              : #line 497 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11063              : (TARGET_AVX512VL))))
   11064              :         return -1;
   11065              :       return 7121; /* avx512vl_alignv2di_mask */
   11066              : 
   11067              :     default:
   11068              :       return -1;
   11069              :     }
   11070              : }
   11071              : 
   11072              :  int
   11073              : recog_151 (rtx x1 ATTRIBUTE_UNUSED,
   11074              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   11075              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   11076              : {
   11077              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   11078              :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
   11079              :   rtx x10, x11, x12;
   11080              :   int res ATTRIBUTE_UNUSED;
   11081              :   x2 = XEXP (x1, 1);
   11082              :   x3 = XEXP (x2, 0);
   11083              :   x4 = XEXP (x3, 0);
   11084              :   switch (XVECLEN (x4, 0))
   11085              :     {
   11086              :     case 1:
   11087              :       x5 = XEXP (x2, 2);
   11088              :       if (x5 != const_int_rtx[MAX_SAVED_CONST_INT + 1])
   11089              :         return -1;
   11090              :       x6 = XVECEXP (x4, 0, 0);
   11091              :       operands[1] = x6;
   11092              :       x7 = XEXP (x3, 1);
   11093              :       operands[3] = x7;
   11094              :       x8 = XEXP (x3, 2);
   11095              :       operands[4] = x8;
   11096              :       if (!register_operand (operands[4], E_QImode))
   11097              :         return -1;
   11098              :       x9 = XEXP (x2, 1);
   11099              :       operands[2] = x9;
   11100              :       switch (XINT (x4, 1))
   11101              :         {
   11102              :         case 55:
   11103              :           if (pattern1292 (x2) != 0
   11104              :               || !(
   11105              : #line 355 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   11106              : (TARGET_AVX512F) && 
   11107              : #line 3022 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11108              : (TARGET_AVX512FP16)))
   11109              :             return -1;
   11110              :           return 2955; /* avx512fp16_vmrcpv8hf2_mask */
   11111              : 
   11112              :         case 162:
   11113              :           switch (GET_MODE (operands[0]))
   11114              :             {
   11115              :             case E_V4SFmode:
   11116              :               if (pattern1381 (x2, 
   11117              : E_V4SFmode) != 0
   11118              :                   || !
   11119              : #line 3080 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11120              : (TARGET_AVX512F))
   11121              :                 return -1;
   11122              :               return 2971; /* srcp14v4sf_mask */
   11123              : 
   11124              :             case E_V2DFmode:
   11125              :               if (pattern1381 (x2, 
   11126              : E_V2DFmode) != 0
   11127              :                   || !(
   11128              : #line 3080 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11129              : (TARGET_AVX512F) && 
   11130              : #line 473 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11131              : (TARGET_SSE2)))
   11132              :                 return -1;
   11133              :               return 2972; /* srcp14v2df_mask */
   11134              : 
   11135              :             default:
   11136              :               return -1;
   11137              :             }
   11138              : 
   11139              :         case 163:
   11140              :           switch (GET_MODE (operands[0]))
   11141              :             {
   11142              :             case E_V4SFmode:
   11143              :               if (pattern1381 (x2, 
   11144              : E_V4SFmode) != 0
   11145              :                   || !
   11146              : #line 3240 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11147              : (TARGET_AVX512F))
   11148              :                 return -1;
   11149              :               return 3043; /* rsqrt14_v4sf_mask */
   11150              : 
   11151              :             case E_V2DFmode:
   11152              :               if (pattern1381 (x2, 
   11153              : E_V2DFmode) != 0
   11154              :                   || !(
   11155              : #line 3240 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11156              : (TARGET_AVX512F) && 
   11157              : #line 473 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11158              : (TARGET_SSE2)))
   11159              :                 return -1;
   11160              :               return 3044; /* rsqrt14_v2df_mask */
   11161              : 
   11162              :             default:
   11163              :               return -1;
   11164              :             }
   11165              : 
   11166              :         case 56:
   11167              :           if (pattern1292 (x2) != 0
   11168              :               || !(
   11169              : #line 355 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   11170              : (TARGET_AVX512F) && 
   11171              : #line 3289 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11172              : (TARGET_AVX512FP16)))
   11173              :             return -1;
   11174              :           return 3048; /* avx512fp16_vmrsqrtv8hf2_mask */
   11175              : 
   11176              :         default:
   11177              :           return -1;
   11178              :         }
   11179              : 
   11180              :     case 2:
   11181              :       x5 = XEXP (x2, 2);
   11182              :       if (GET_CODE (x5) != CONST_INT)
   11183              :         return -1;
   11184              :       switch (XINT (x4, 1))
   11185              :         {
   11186              :         case 64:
   11187              :           switch (pattern776 (x2))
   11188              :             {
   11189              :             case 0:
   11190              :               if (!(
   11191              : #line 355 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   11192              : (TARGET_AVX512F) && (
   11193              : #line 3588 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11194              : (TARGET_SSE) && 
   11195              : #line 477 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11196              : (TARGET_AVX512FP16))))
   11197              :                 return -1;
   11198              :               return 3199; /* avx512fp16_ieee_vmmaxv8hf3_mask */
   11199              : 
   11200              :             case 1:
   11201              :               if (!(
   11202              : #line 355 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   11203              : (TARGET_AVX512F) && 
   11204              : #line 3588 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11205              : (TARGET_SSE)))
   11206              :                 return -1;
   11207              :               return 3207; /* sse_ieee_vmmaxv4sf3_mask */
   11208              : 
   11209              :             case 2:
   11210              :               if (!(
   11211              : #line 355 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   11212              : (TARGET_AVX512F) && (
   11213              : #line 3588 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11214              : (TARGET_SSE) && 
   11215              : #line 478 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11216              : (TARGET_SSE2))))
   11217              :                 return -1;
   11218              :               return 3215; /* sse2_ieee_vmmaxv2df3_mask */
   11219              : 
   11220              :             default:
   11221              :               return -1;
   11222              :             }
   11223              : 
   11224              :         case 63:
   11225              :           switch (pattern776 (x2))
   11226              :             {
   11227              :             case 0:
   11228              :               if (!(
   11229              : #line 355 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   11230              : (TARGET_AVX512F) && (
   11231              : #line 3588 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11232              : (TARGET_SSE) && 
   11233              : #line 477 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11234              : (TARGET_AVX512FP16))))
   11235              :                 return -1;
   11236              :               return 3203; /* avx512fp16_ieee_vmminv8hf3_mask */
   11237              : 
   11238              :             case 1:
   11239              :               if (!(
   11240              : #line 355 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   11241              : (TARGET_AVX512F) && 
   11242              : #line 3588 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11243              : (TARGET_SSE)))
   11244              :                 return -1;
   11245              :               return 3211; /* sse_ieee_vmminv4sf3_mask */
   11246              : 
   11247              :             case 2:
   11248              :               if (!(
   11249              : #line 355 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   11250              : (TARGET_AVX512F) && (
   11251              : #line 3588 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11252              : (TARGET_SSE) && 
   11253              : #line 478 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11254              : (TARGET_SSE2))))
   11255              :                 return -1;
   11256              :               return 3219; /* sse2_ieee_vmminv2df3_mask */
   11257              : 
   11258              :             default:
   11259              :               return -1;
   11260              :             }
   11261              : 
   11262              :         case 222:
   11263              :           if (pattern777 (x2) != 0
   11264              :               || !(
   11265              : #line 389 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   11266              : (TARGET_AVX512F) && 
   11267              : #line 7926 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11268              : (TARGET_AVX512FP16)))
   11269              :             return -1;
   11270              :           return 4446; /* avx512fp16_fmulcsh_v8hf_mask */
   11271              : 
   11272              :         case 223:
   11273              :           if (pattern777 (x2) != 0
   11274              :               || !(
   11275              : #line 389 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   11276              : (TARGET_AVX512F) && 
   11277              : #line 7926 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11278              : (TARGET_AVX512FP16)))
   11279              :             return -1;
   11280              :           return 4450; /* avx512fp16_fcmulcsh_v8hf_mask */
   11281              : 
   11282              :         case 59:
   11283              :           switch (pattern776 (x2))
   11284              :             {
   11285              :             case 0:
   11286              :               if (!(
   11287              : #line 355 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   11288              : (TARGET_AVX512F) && (
   11289              : #line 14013 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11290              : (TARGET_AVX512F) && 
   11291              : #line 477 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11292              : (TARGET_AVX512FP16))))
   11293              :                 return -1;
   11294              :               return 5438; /* avx512f_vmscalefv8hf_mask */
   11295              : 
   11296              :             case 1:
   11297              :               if (!
   11298              : #line 355 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   11299              : (TARGET_AVX512F))
   11300              :                 return -1;
   11301              :               return 5442; /* avx512f_vmscalefv4sf_mask */
   11302              : 
   11303              :             case 2:
   11304              :               if (!(
   11305              : #line 355 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   11306              : (TARGET_AVX512F) && (
   11307              : #line 14013 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11308              : (TARGET_AVX512F) && 
   11309              : #line 478 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11310              : (TARGET_SSE2))))
   11311              :                 return -1;
   11312              :               return 5446; /* avx512f_vmscalefv2df_mask */
   11313              : 
   11314              :             default:
   11315              :               return -1;
   11316              :             }
   11317              : 
   11318              :         case 166:
   11319              :           switch (pattern776 (x2))
   11320              :             {
   11321              :             case 0:
   11322              :               if (!(
   11323              : #line 355 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   11324              : (TARGET_AVX512F) && (
   11325              : #line 14446 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11326              : (TARGET_AVX512F) && 
   11327              : #line 477 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11328              : (TARGET_AVX512FP16))))
   11329              :                 return -1;
   11330              :               return 7099; /* avx512f_sgetexpv8hf_mask */
   11331              : 
   11332              :             case 1:
   11333              :               if (!
   11334              : #line 355 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   11335              : (TARGET_AVX512F))
   11336              :                 return -1;
   11337              :               return 7103; /* avx512f_sgetexpv4sf_mask */
   11338              : 
   11339              :             case 2:
   11340              :               if (!(
   11341              : #line 355 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   11342              : (TARGET_AVX512F) && (
   11343              : #line 14446 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11344              : (TARGET_AVX512F) && 
   11345              : #line 478 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11346              : (TARGET_SSE2))))
   11347              :                 return -1;
   11348              :               return 7107; /* avx512f_sgetexpv2df_mask */
   11349              : 
   11350              :             default:
   11351              :               return -1;
   11352              :             }
   11353              : 
   11354              :         case 95:
   11355              :           if (XWINT (x5, 0) != 1L)
   11356              :             return -1;
   11357              :           x6 = XVECEXP (x4, 0, 0);
   11358              :           operands[2] = x6;
   11359              :           x10 = XVECEXP (x4, 0, 1);
   11360              :           operands[3] = x10;
   11361              :           if (!const_0_to_255_operand (operands[3], E_SImode))
   11362              :             return -1;
   11363              :           x7 = XEXP (x3, 1);
   11364              :           operands[4] = x7;
   11365              :           x8 = XEXP (x3, 2);
   11366              :           operands[5] = x8;
   11367              :           if (!register_operand (operands[5], E_QImode))
   11368              :             return -1;
   11369              :           x9 = XEXP (x2, 1);
   11370              :           operands[1] = x9;
   11371              :           switch (GET_MODE (operands[0]))
   11372              :             {
   11373              :             case E_V8HFmode:
   11374              :               if (pattern1553 (x2, 
   11375              : E_V8HFmode) != 0
   11376              :                   || !(
   11377              : #line 355 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   11378              : (TARGET_AVX512F) && (
   11379              : #line 14641 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11380              : (TARGET_AVX512F) && 
   11381              : #line 477 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11382              : (TARGET_AVX512FP16))))
   11383              :                 return -1;
   11384              :               return 7215; /* avx512f_rndscalev8hf_mask */
   11385              : 
   11386              :             case E_V4SFmode:
   11387              :               if (pattern1553 (x2, 
   11388              : E_V4SFmode) != 0
   11389              :                   || !
   11390              : #line 355 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   11391              : (TARGET_AVX512F))
   11392              :                 return -1;
   11393              :               return 7219; /* avx512f_rndscalev4sf_mask */
   11394              : 
   11395              :             case E_V2DFmode:
   11396              :               if (pattern1553 (x2, 
   11397              : E_V2DFmode) != 0
   11398              :                   || !(
   11399              : #line 355 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   11400              : (TARGET_AVX512F) && (
   11401              : #line 14641 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11402              : (TARGET_AVX512F) && 
   11403              : #line 478 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11404              : (TARGET_SSE2))))
   11405              :                 return -1;
   11406              :               return 7223; /* avx512f_rndscalev2df_mask */
   11407              : 
   11408              :             default:
   11409              :               return -1;
   11410              :             }
   11411              : 
   11412              :         default:
   11413              :           return -1;
   11414              :         }
   11415              : 
   11416              :     case 3:
   11417              :       x5 = XEXP (x2, 2);
   11418              :       if (GET_CODE (x5) != CONST_INT)
   11419              :         return -1;
   11420              :       x6 = XVECEXP (x4, 0, 0);
   11421              :       operands[1] = x6;
   11422              :       x10 = XVECEXP (x4, 0, 1);
   11423              :       operands[2] = x10;
   11424              :       x11 = XVECEXP (x4, 0, 2);
   11425              :       operands[3] = x11;
   11426              :       switch (XINT (x4, 1))
   11427              :         {
   11428              :         case 193:
   11429              :           switch (pattern1126 (x2))
   11430              :             {
   11431              :             case 0:
   11432              :               if (!(
   11433              : #line 355 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   11434              : (TARGET_AVX512F) && (
   11435              : #line 4310 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11436              : (TARGET_AVX512DQ || (VALID_AVX512FP16_REG_MODE (V8HFmode))) && 
   11437              : #line 477 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11438              : (TARGET_AVX512FP16))))
   11439              :                 return -1;
   11440              :               return 3273; /* reducesv8hf_mask */
   11441              : 
   11442              :             case 1:
   11443              :               if (!(
   11444              : #line 355 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   11445              : (TARGET_AVX512F) && 
   11446              : #line 4310 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11447              : (TARGET_AVX512DQ || (VALID_AVX512FP16_REG_MODE (V4SFmode)))))
   11448              :                 return -1;
   11449              :               return 3277; /* reducesv4sf_mask */
   11450              : 
   11451              :             case 2:
   11452              :               if (!(
   11453              : #line 355 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   11454              : (TARGET_AVX512F) && (
   11455              : #line 4310 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11456              : (TARGET_AVX512DQ || (VALID_AVX512FP16_REG_MODE (V2DFmode))) && 
   11457              : #line 478 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11458              : (TARGET_SSE2))))
   11459              :                 return -1;
   11460              :               return 3281; /* reducesv2df_mask */
   11461              : 
   11462              :             default:
   11463              :               return -1;
   11464              :             }
   11465              : 
   11466              :         case 218:
   11467              :           switch (pattern1127 (x2))
   11468              :             {
   11469              :             case 0:
   11470              :               if (!(
   11471              : #line 371 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   11472              : (TARGET_AVX512F) && 
   11473              : #line 7891 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11474              : (TARGET_AVX512FP16)))
   11475              :                 return -1;
   11476              :               return 4433; /* avx512fp16_fma_fmaddcsh_v8hf_maskz */
   11477              : 
   11478              :             case 1:
   11479              :               if (!
   11480              : #line 7911 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11481              : (TARGET_AVX512FP16))
   11482              :                 return -1;
   11483              :               return 4440; /* avx512fp16_fmaddcsh_v8hf_mask */
   11484              : 
   11485              :             default:
   11486              :               return -1;
   11487              :             }
   11488              : 
   11489              :         case 220:
   11490              :           switch (pattern1127 (x2))
   11491              :             {
   11492              :             case 0:
   11493              :               if (!(
   11494              : #line 371 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   11495              : (TARGET_AVX512F) && 
   11496              : #line 7891 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11497              : (TARGET_AVX512FP16)))
   11498              :                 return -1;
   11499              :               return 4437; /* avx512fp16_fma_fcmaddcsh_v8hf_maskz */
   11500              : 
   11501              :             case 1:
   11502              :               if (!
   11503              : #line 7911 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11504              : (TARGET_AVX512FP16))
   11505              :                 return -1;
   11506              :               return 4442; /* avx512fp16_fcmaddcsh_v8hf_mask */
   11507              : 
   11508              :             default:
   11509              :               return -1;
   11510              :             }
   11511              : 
   11512              :         case 195:
   11513              :           if (XWINT (x5, 0) != 1L
   11514              :               || !const_0_to_15_operand (operands[3], E_SImode))
   11515              :             return -1;
   11516              :           x7 = XEXP (x3, 1);
   11517              :           operands[4] = x7;
   11518              :           x8 = XEXP (x3, 2);
   11519              :           operands[5] = x8;
   11520              :           if (!register_operand (operands[5], E_QImode))
   11521              :             return -1;
   11522              :           x9 = XEXP (x2, 1);
   11523              :           if (!rtx_equal_p (x9, operands[1]))
   11524              :             return -1;
   11525              :           switch (GET_MODE (operands[0]))
   11526              :             {
   11527              :             case E_V4SFmode:
   11528              :               if (pattern1124 (x2, 
   11529              : E_V4SFmode) != 0
   11530              :                   || !(
   11531              : #line 355 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   11532              : (TARGET_AVX512F) && 
   11533              : #line 30888 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11534              : (TARGET_AVX512DQ)))
   11535              :                 return -1;
   11536              :               return 10079; /* avx512dq_rangesv4sf_mask */
   11537              : 
   11538              :             case E_V2DFmode:
   11539              :               if (pattern1124 (x2, 
   11540              : E_V2DFmode) != 0
   11541              :                   || !(
   11542              : #line 355 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   11543              : (TARGET_AVX512F) && (
   11544              : #line 30888 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11545              : (TARGET_AVX512DQ) && 
   11546              : #line 473 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11547              : (TARGET_SSE2))))
   11548              :                 return -1;
   11549              :               return 10083; /* avx512dq_rangesv2df_mask */
   11550              : 
   11551              :             default:
   11552              :               return -1;
   11553              :             }
   11554              : 
   11555              :         case 167:
   11556              :           if (XWINT (x5, 0) != 1L
   11557              :               || !const_0_to_15_operand (operands[3], E_SImode))
   11558              :             return -1;
   11559              :           switch (pattern1125 (x2))
   11560              :             {
   11561              :             case 0:
   11562              :               if (!(
   11563              : #line 355 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   11564              : (TARGET_AVX512F) && (
   11565              : #line 30956 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11566              : (TARGET_AVX512F) && 
   11567              : #line 477 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11568              : (TARGET_AVX512FP16))))
   11569              :                 return -1;
   11570              :               return 10147; /* avx512f_vgetmantv8hf_mask */
   11571              : 
   11572              :             case 1:
   11573              :               if (!
   11574              : #line 355 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   11575              : (TARGET_AVX512F))
   11576              :                 return -1;
   11577              :               return 10151; /* avx512f_vgetmantv4sf_mask */
   11578              : 
   11579              :             case 2:
   11580              :               if (!(
   11581              : #line 355 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   11582              : (TARGET_AVX512F) && (
   11583              : #line 30956 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11584              : (TARGET_AVX512F) && 
   11585              : #line 478 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11586              : (TARGET_SSE2))))
   11587              :                 return -1;
   11588              :               return 10155; /* avx512f_vgetmantv2df_mask */
   11589              : 
   11590              :             default:
   11591              :               return -1;
   11592              :             }
   11593              : 
   11594              :         case 279:
   11595              :           switch (pattern1126 (x2))
   11596              :             {
   11597              :             case 0:
   11598              :               if (!(
   11599              : #line 355 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   11600              : (TARGET_AVX512F) && (
   11601              : #line 33741 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11602              : (TARGET_AVX10_2) && 
   11603              : #line 477 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11604              : (TARGET_AVX512FP16))))
   11605              :                 return -1;
   11606              :               return 11045; /* avx10_2_minmaxsv8hf_mask */
   11607              : 
   11608              :             case 1:
   11609              :               if (!(
   11610              : #line 355 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   11611              : (TARGET_AVX512F) && 
   11612              : #line 33741 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11613              : (TARGET_AVX10_2)))
   11614              :                 return -1;
   11615              :               return 11049; /* avx10_2_minmaxsv4sf_mask */
   11616              : 
   11617              :             case 2:
   11618              :               if (!(
   11619              : #line 355 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   11620              : (TARGET_AVX512F) && (
   11621              : #line 33741 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11622              : (TARGET_AVX10_2) && 
   11623              : #line 478 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11624              : (TARGET_SSE2))))
   11625              :                 return -1;
   11626              :               return 11053; /* avx10_2_minmaxsv2df_mask */
   11627              : 
   11628              :             default:
   11629              :               return -1;
   11630              :             }
   11631              : 
   11632              :         default:
   11633              :           return -1;
   11634              :         }
   11635              : 
   11636              :     case 4:
   11637              :       if (XINT (x4, 1) != 164)
   11638              :         return -1;
   11639              :       x6 = XVECEXP (x4, 0, 0);
   11640              :       operands[1] = x6;
   11641              :       x10 = XVECEXP (x4, 0, 1);
   11642              :       operands[2] = x10;
   11643              :       x11 = XVECEXP (x4, 0, 2);
   11644              :       operands[3] = x11;
   11645              :       x12 = XVECEXP (x4, 0, 3);
   11646              :       operands[4] = x12;
   11647              :       if (!const_0_to_255_operand (operands[4], E_SImode))
   11648              :         return -1;
   11649              :       x7 = XEXP (x3, 1);
   11650              :       switch (GET_CODE (x7))
   11651              :         {
   11652              :         case CONST_INT:
   11653              :         case CONST_DOUBLE:
   11654              :         case CONST_VECTOR:
   11655              :           operands[5] = x7;
   11656              :           x5 = XEXP (x2, 2);
   11657              :           if (x5 != const_int_rtx[MAX_SAVED_CONST_INT + 1])
   11658              :             return -1;
   11659              :           x8 = XEXP (x3, 2);
   11660              :           operands[6] = x8;
   11661              :           if (!register_operand (operands[6], E_QImode))
   11662              :             return -1;
   11663              :           x9 = XEXP (x2, 1);
   11664              :           if (!rtx_equal_p (x9, operands[2]))
   11665              :             return -1;
   11666              :           switch (GET_MODE (operands[0]))
   11667              :             {
   11668              :             case E_V4SFmode:
   11669              :               if (pattern1659 (x2, 
   11670              : E_V4SFmode, 
   11671              : E_V4SImode) != 0
   11672              :                   || !
   11673              : #line 154 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   11674              : (TARGET_AVX512F))
   11675              :                 return -1;
   11676              :               return 7168; /* avx512f_sfixupimmv4sf_maskz_1 */
   11677              : 
   11678              :             case E_V2DFmode:
   11679              :               if (pattern1659 (x2, 
   11680              : E_V2DFmode, 
   11681              : E_V2DImode) != 0
   11682              :                   || !(
   11683              : #line 154 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   11684              : (TARGET_AVX512F) && (
   11685              : #line 14596 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11686              : (TARGET_AVX512F) && 
   11687              : #line 473 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11688              : (TARGET_SSE2))))
   11689              :                 return -1;
   11690              :               return 7172; /* avx512f_sfixupimmv2df_maskz_1 */
   11691              : 
   11692              :             default:
   11693              :               return -1;
   11694              :             }
   11695              : 
   11696              :         case REG:
   11697              :         case SUBREG:
   11698              :           if (!rtx_equal_p (x7, operands[2]))
   11699              :             return -1;
   11700              :           x8 = XEXP (x3, 2);
   11701              :           if (x8 != const_int_rtx[MAX_SAVED_CONST_INT + 1])
   11702              :             return -1;
   11703              :           x5 = XEXP (x2, 2);
   11704              :           operands[5] = x5;
   11705              :           if (!register_operand (operands[5], E_QImode))
   11706              :             return -1;
   11707              :           x9 = XEXP (x2, 1);
   11708              :           if (!rtx_equal_p (x9, operands[1]))
   11709              :             return -1;
   11710              :           switch (GET_MODE (operands[0]))
   11711              :             {
   11712              :             case E_V4SFmode:
   11713              :               if (pattern1660 (x2, 
   11714              : E_V4SImode, 
   11715              : E_V4SFmode) != 0
   11716              :                   || !
   11717              : #line 14615 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11718              : (TARGET_AVX512F))
   11719              :                 return -1;
   11720              :               return 7174; /* avx512f_sfixupimmv4sf_mask */
   11721              : 
   11722              :             case E_V2DFmode:
   11723              :               if (pattern1660 (x2, 
   11724              : E_V2DImode, 
   11725              : E_V2DFmode) != 0
   11726              :                   || !(
   11727              : #line 14615 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11728              : (TARGET_AVX512F) && 
   11729              : #line 473 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11730              : (TARGET_SSE2)))
   11731              :                 return -1;
   11732              :               return 7176; /* avx512f_sfixupimmv2df_mask */
   11733              : 
   11734              :             default:
   11735              :               return -1;
   11736              :             }
   11737              : 
   11738              :         default:
   11739              :           return -1;
   11740              :         }
   11741              : 
   11742              :     default:
   11743              :       return -1;
   11744              :     }
   11745              : }
   11746              : 
   11747              :  int
   11748              : recog_164 (rtx x1 ATTRIBUTE_UNUSED,
   11749              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   11750              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   11751              : {
   11752              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   11753              :   rtx x2, x3, x4, x5, x6;
   11754              :   int res ATTRIBUTE_UNUSED;
   11755              :   x2 = XEXP (x1, 1);
   11756              :   x3 = XEXP (x2, 0);
   11757              :   x4 = XEXP (x3, 0);
   11758              :   x5 = XEXP (x4, 0);
   11759              :   operands[1] = x5;
   11760              :   switch (pattern652 (x2))
   11761              :     {
   11762              :     case 0:
   11763              :       if (pattern1395 (x2, 
   11764              : E_V32HFmode, 
   11765              : E_SImode) != 0
   11766              :           || !(
   11767              : #line 6555 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11768              : (TARGET_AVX512F && (64 == 64 || TARGET_AVX512VL) && 1) && 
   11769              : #line 6333 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11770              : (TARGET_AVX512FP16)))
   11771              :         return -1;
   11772              :       return 4009; /* fma_fnmadd_v32hf_maskz_1 */
   11773              : 
   11774              :     case 1:
   11775              :       if (pattern1395 (x2, 
   11776              : E_V16HFmode, 
   11777              : E_HImode) != 0
   11778              :           || !(
   11779              : #line 6555 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11780              : (TARGET_AVX512F && (32 == 64 || TARGET_AVX512VL) && 1) && 
   11781              : #line 6334 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11782              : (TARGET_AVX512FP16 && TARGET_AVX512VL)))
   11783              :         return -1;
   11784              :       return 4013; /* fma_fnmadd_v16hf_maskz_1 */
   11785              : 
   11786              :     case 2:
   11787              :       if (pattern1395 (x2, 
   11788              : E_V8HFmode, 
   11789              : E_QImode) != 0
   11790              :           || !(
   11791              : #line 6555 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11792              : (TARGET_AVX512F && (16 == 64 || TARGET_AVX512VL) && 1) && 
   11793              : #line 6335 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11794              : (TARGET_AVX512FP16 && TARGET_AVX512VL)))
   11795              :         return -1;
   11796              :       return 4015; /* fma_fnmadd_v8hf_maskz_1 */
   11797              : 
   11798              :     case 3:
   11799              :       if (pattern1395 (x2, 
   11800              : E_V16SFmode, 
   11801              : E_HImode) != 0
   11802              :           || !
   11803              : #line 6555 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11804              : (TARGET_AVX512F && (64 == 64 || TARGET_AVX512VL) && 1))
   11805              :         return -1;
   11806              :       return 4019; /* fma_fnmadd_v16sf_maskz_1 */
   11807              : 
   11808              :     case 4:
   11809              :       if (pattern1395 (x2, 
   11810              : E_V8SFmode, 
   11811              : E_QImode) != 0
   11812              :           || !(
   11813              : #line 6555 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11814              : (TARGET_AVX512F && (32 == 64 || TARGET_AVX512VL) && 1) && 
   11815              : #line 6337 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11816              : (TARGET_AVX512VL)))
   11817              :         return -1;
   11818              :       return 4023; /* fma_fnmadd_v8sf_maskz_1 */
   11819              : 
   11820              :     case 5:
   11821              :       if (pattern1395 (x2, 
   11822              : E_V4SFmode, 
   11823              : E_QImode) != 0
   11824              :           || !(
   11825              : #line 6555 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11826              : (TARGET_AVX512F && (16 == 64 || TARGET_AVX512VL) && 1) && 
   11827              : #line 6337 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11828              : (TARGET_AVX512VL)))
   11829              :         return -1;
   11830              :       return 4025; /* fma_fnmadd_v4sf_maskz_1 */
   11831              : 
   11832              :     case 6:
   11833              :       if (pattern1395 (x2, 
   11834              : E_V8DFmode, 
   11835              : E_QImode) != 0
   11836              :           || !
   11837              : #line 6555 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11838              : (TARGET_AVX512F && (64 == 64 || TARGET_AVX512VL) && 1))
   11839              :         return -1;
   11840              :       return 4028; /* fma_fnmadd_v8df_maskz_1 */
   11841              : 
   11842              :     case 7:
   11843              :       if (pattern1395 (x2, 
   11844              : E_V4DFmode, 
   11845              : E_QImode) != 0
   11846              :           || !(
   11847              : #line 6555 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11848              : (TARGET_AVX512F && (32 == 64 || TARGET_AVX512VL) && 1) && 
   11849              : #line 6338 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11850              : (TARGET_AVX512VL)))
   11851              :         return -1;
   11852              :       return 4032; /* fma_fnmadd_v4df_maskz_1 */
   11853              : 
   11854              :     case 8:
   11855              :       if (pattern1395 (x2, 
   11856              : E_V2DFmode, 
   11857              : E_QImode) != 0
   11858              :           || !(
   11859              : #line 6555 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11860              : (TARGET_AVX512F && (16 == 64 || TARGET_AVX512VL) && 1) && 
   11861              : #line 6338 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11862              : (TARGET_AVX512VL)))
   11863              :         return -1;
   11864              :       return 4034; /* fma_fnmadd_v2df_maskz_1 */
   11865              : 
   11866              :     case 9:
   11867              :       if (pattern1396 (x2, 
   11868              : E_SImode, 
   11869              : E_V32BFmode) != 0
   11870              :           || !
   11871              : #line 33284 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11872              : (TARGET_AVX10_2))
   11873              :         return -1;
   11874              :       return 10745; /* avx10_2_fnmaddbf16_v32bf_maskz_1 */
   11875              : 
   11876              :     case 10:
   11877              :       if (pattern1396 (x2, 
   11878              : E_HImode, 
   11879              : E_V16BFmode) != 0
   11880              :           || !
   11881              : #line 33284 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11882              : (TARGET_AVX10_2))
   11883              :         return -1;
   11884              :       return 10747; /* avx10_2_fnmaddbf16_v16bf_maskz_1 */
   11885              : 
   11886              :     case 11:
   11887              :       if (pattern1396 (x2, 
   11888              : E_QImode, 
   11889              : E_V8BFmode) != 0
   11890              :           || !
   11891              : #line 33284 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11892              : (TARGET_AVX10_2))
   11893              :         return -1;
   11894              :       return 10749; /* avx10_2_fnmaddbf16_v8bf_maskz_1 */
   11895              : 
   11896              :     case 12:
   11897              :       if (pattern1397 (x2, 
   11898              : E_V4SFmode) != 0
   11899              :           || !
   11900              : #line 7391 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11901              : (TARGET_FMA4))
   11902              :         return -1;
   11903              :       return 4364; /* *fma4i_vmfnmadd_v4sf */
   11904              : 
   11905              :     case 13:
   11906              :       if (pattern1397 (x2, 
   11907              : E_V2DFmode) != 0
   11908              :           || !(
   11909              : #line 7391 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11910              : (TARGET_FMA4) && 
   11911              : #line 473 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11912              : (TARGET_SSE2)))
   11913              :         return -1;
   11914              :       return 4365; /* *fma4i_vmfnmadd_v2df */
   11915              : 
   11916              :     case 14:
   11917              :       if (pattern1303 (x2, 
   11918              : E_V32HFmode, 
   11919              : E_SImode) != 0)
   11920              :         return -1;
   11921              :       if (nonimmediate_operand (operands[1], E_V32HFmode)
   11922              :           && vector_operand (operands[3], E_V32HFmode))
   11923              :         {
   11924              :           x6 = XEXP (x2, 1);
   11925              :           if (rtx_equal_p (x6, operands[1])
   11926              :               && (
   11927              : #line 6598 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11928              : (TARGET_AVX512F && 1) && 
   11929              : #line 514 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11930              : (TARGET_AVX512FP16)))
   11931              :             return 4035; /* avx512bw_fnmadd_v32hf_mask */
   11932              :         }
   11933              :       if (!vector_operand (operands[1], E_V32HFmode)
   11934              :           || !nonimmediate_operand (operands[3], E_V32HFmode))
   11935              :         return -1;
   11936              :       x6 = XEXP (x2, 1);
   11937              :       if (!rtx_equal_p (x6, operands[3])
   11938              :           || !(
   11939              : #line 6616 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11940              : (TARGET_AVX512F && 1) && 
   11941              : #line 514 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11942              : (TARGET_AVX512FP16)))
   11943              :         return -1;
   11944              :       return 4047; /* avx512bw_fnmadd_v32hf_mask3 */
   11945              : 
   11946              :     case 15:
   11947              :       if (pattern1303 (x2, 
   11948              : E_V16HFmode, 
   11949              : E_HImode) != 0)
   11950              :         return -1;
   11951              :       if (nonimmediate_operand (operands[1], E_V16HFmode)
   11952              :           && vector_operand (operands[3], E_V16HFmode))
   11953              :         {
   11954              :           x6 = XEXP (x2, 1);
   11955              :           if (rtx_equal_p (x6, operands[1])
   11956              :               && (
   11957              : #line 6598 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11958              : (TARGET_AVX512F && 1) && 
   11959              : #line 515 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11960              : (TARGET_AVX512FP16 && TARGET_AVX512VL)))
   11961              :             return 4037; /* avx512vl_fnmadd_v16hf_mask */
   11962              :         }
   11963              :       if (!vector_operand (operands[1], E_V16HFmode)
   11964              :           || !nonimmediate_operand (operands[3], E_V16HFmode))
   11965              :         return -1;
   11966              :       x6 = XEXP (x2, 1);
   11967              :       if (!rtx_equal_p (x6, operands[3])
   11968              :           || !(
   11969              : #line 6616 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11970              : (TARGET_AVX512F && 1) && 
   11971              : #line 515 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11972              : (TARGET_AVX512FP16 && TARGET_AVX512VL)))
   11973              :         return -1;
   11974              :       return 4049; /* avx512vl_fnmadd_v16hf_mask3 */
   11975              : 
   11976              :     case 16:
   11977              :       if (pattern1303 (x2, 
   11978              : E_V8HFmode, 
   11979              : E_QImode) != 0)
   11980              :         return -1;
   11981              :       if (nonimmediate_operand (operands[1], E_V8HFmode)
   11982              :           && vector_operand (operands[3], E_V8HFmode))
   11983              :         {
   11984              :           x6 = XEXP (x2, 1);
   11985              :           if (rtx_equal_p (x6, operands[1])
   11986              :               && (
   11987              : #line 6598 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11988              : (TARGET_AVX512F && 1) && 
   11989              : #line 516 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11990              : (TARGET_AVX512FP16 && TARGET_AVX512VL)))
   11991              :             return 4038; /* avx512fp16_fnmadd_v8hf_mask */
   11992              :         }
   11993              :       if (!vector_operand (operands[1], E_V8HFmode)
   11994              :           || !nonimmediate_operand (operands[3], E_V8HFmode))
   11995              :         return -1;
   11996              :       x6 = XEXP (x2, 1);
   11997              :       if (!rtx_equal_p (x6, operands[3])
   11998              :           || !(
   11999              : #line 6616 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12000              : (TARGET_AVX512F && 1) && 
   12001              : #line 516 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12002              : (TARGET_AVX512FP16 && TARGET_AVX512VL)))
   12003              :         return -1;
   12004              :       return 4050; /* avx512fp16_fnmadd_v8hf_mask3 */
   12005              : 
   12006              :     case 17:
   12007              :       if (pattern1303 (x2, 
   12008              : E_V16SFmode, 
   12009              : E_HImode) != 0)
   12010              :         return -1;
   12011              :       if (nonimmediate_operand (operands[1], E_V16SFmode)
   12012              :           && vector_operand (operands[3], E_V16SFmode))
   12013              :         {
   12014              :           x6 = XEXP (x2, 1);
   12015              :           if (rtx_equal_p (x6, operands[1])
   12016              :               && 
   12017              : #line 6598 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12018              : (TARGET_AVX512F && 1))
   12019              :             return 4039; /* avx512f_fnmadd_v16sf_mask */
   12020              :         }
   12021              :       if (!vector_operand (operands[1], E_V16SFmode)
   12022              :           || !nonimmediate_operand (operands[3], E_V16SFmode))
   12023              :         return -1;
   12024              :       x6 = XEXP (x2, 1);
   12025              :       if (!rtx_equal_p (x6, operands[3])
   12026              :           || !
   12027              : #line 6616 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12028              : (TARGET_AVX512F && 1))
   12029              :         return -1;
   12030              :       return 4051; /* avx512f_fnmadd_v16sf_mask3 */
   12031              : 
   12032              :     case 18:
   12033              :       if (pattern1303 (x2, 
   12034              : E_V8SFmode, 
   12035              : E_QImode) != 0)
   12036              :         return -1;
   12037              :       if (nonimmediate_operand (operands[1], E_V8SFmode)
   12038              :           && vector_operand (operands[3], E_V8SFmode))
   12039              :         {
   12040              :           x6 = XEXP (x2, 1);
   12041              :           if (rtx_equal_p (x6, operands[1])
   12042              :               && (
   12043              : #line 6598 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12044              : (TARGET_AVX512F && 1) && 
   12045              : #line 517 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12046              : (TARGET_AVX512VL)))
   12047              :             return 4041; /* avx512vl_fnmadd_v8sf_mask */
   12048              :         }
   12049              :       if (!vector_operand (operands[1], E_V8SFmode)
   12050              :           || !nonimmediate_operand (operands[3], E_V8SFmode))
   12051              :         return -1;
   12052              :       x6 = XEXP (x2, 1);
   12053              :       if (!rtx_equal_p (x6, operands[3])
   12054              :           || !(
   12055              : #line 6616 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12056              : (TARGET_AVX512F && 1) && 
   12057              : #line 517 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12058              : (TARGET_AVX512VL)))
   12059              :         return -1;
   12060              :       return 4053; /* avx512vl_fnmadd_v8sf_mask3 */
   12061              : 
   12062              :     case 19:
   12063              :       if (pattern1303 (x2, 
   12064              : E_V4SFmode, 
   12065              : E_QImode) != 0)
   12066              :         return -1;
   12067              :       if (nonimmediate_operand (operands[1], E_V4SFmode)
   12068              :           && vector_operand (operands[3], E_V4SFmode))
   12069              :         {
   12070              :           x6 = XEXP (x2, 1);
   12071              :           if (rtx_equal_p (x6, operands[1])
   12072              :               && (
   12073              : #line 6598 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12074              : (TARGET_AVX512F && 1) && 
   12075              : #line 517 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12076              : (TARGET_AVX512VL)))
   12077              :             return 4042; /* avx512vl_fnmadd_v4sf_mask */
   12078              :         }
   12079              :       if (!vector_operand (operands[1], E_V4SFmode)
   12080              :           || !nonimmediate_operand (operands[3], E_V4SFmode))
   12081              :         return -1;
   12082              :       x6 = XEXP (x2, 1);
   12083              :       if (!rtx_equal_p (x6, operands[3])
   12084              :           || !(
   12085              : #line 6616 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12086              : (TARGET_AVX512F && 1) && 
   12087              : #line 517 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12088              : (TARGET_AVX512VL)))
   12089              :         return -1;
   12090              :       return 4054; /* avx512vl_fnmadd_v4sf_mask3 */
   12091              : 
   12092              :     case 20:
   12093              :       if (pattern1303 (x2, 
   12094              : E_V8DFmode, 
   12095              : E_QImode) != 0)
   12096              :         return -1;
   12097              :       if (nonimmediate_operand (operands[1], E_V8DFmode)
   12098              :           && vector_operand (operands[3], E_V8DFmode))
   12099              :         {
   12100              :           x6 = XEXP (x2, 1);
   12101              :           if (rtx_equal_p (x6, operands[1])
   12102              :               && 
   12103              : #line 6598 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12104              : (TARGET_AVX512F && 1))
   12105              :             return 4043; /* avx512f_fnmadd_v8df_mask */
   12106              :         }
   12107              :       if (!vector_operand (operands[1], E_V8DFmode)
   12108              :           || !nonimmediate_operand (operands[3], E_V8DFmode))
   12109              :         return -1;
   12110              :       x6 = XEXP (x2, 1);
   12111              :       if (!rtx_equal_p (x6, operands[3])
   12112              :           || !
   12113              : #line 6616 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12114              : (TARGET_AVX512F && 1))
   12115              :         return -1;
   12116              :       return 4055; /* avx512f_fnmadd_v8df_mask3 */
   12117              : 
   12118              :     case 21:
   12119              :       if (pattern1303 (x2, 
   12120              : E_V4DFmode, 
   12121              : E_QImode) != 0)
   12122              :         return -1;
   12123              :       if (nonimmediate_operand (operands[1], E_V4DFmode)
   12124              :           && vector_operand (operands[3], E_V4DFmode))
   12125              :         {
   12126              :           x6 = XEXP (x2, 1);
   12127              :           if (rtx_equal_p (x6, operands[1])
   12128              :               && (
   12129              : #line 6598 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12130              : (TARGET_AVX512F && 1) && 
   12131              : #line 518 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12132              : (TARGET_AVX512VL)))
   12133              :             return 4045; /* avx512vl_fnmadd_v4df_mask */
   12134              :         }
   12135              :       if (!vector_operand (operands[1], E_V4DFmode)
   12136              :           || !nonimmediate_operand (operands[3], E_V4DFmode))
   12137              :         return -1;
   12138              :       x6 = XEXP (x2, 1);
   12139              :       if (!rtx_equal_p (x6, operands[3])
   12140              :           || !(
   12141              : #line 6616 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12142              : (TARGET_AVX512F && 1) && 
   12143              : #line 518 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12144              : (TARGET_AVX512VL)))
   12145              :         return -1;
   12146              :       return 4057; /* avx512vl_fnmadd_v4df_mask3 */
   12147              : 
   12148              :     case 22:
   12149              :       if (pattern1303 (x2, 
   12150              : E_V2DFmode, 
   12151              : E_QImode) != 0)
   12152              :         return -1;
   12153              :       if (nonimmediate_operand (operands[1], E_V2DFmode)
   12154              :           && vector_operand (operands[3], E_V2DFmode))
   12155              :         {
   12156              :           x6 = XEXP (x2, 1);
   12157              :           if (rtx_equal_p (x6, operands[1])
   12158              :               && (
   12159              : #line 6598 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12160              : (TARGET_AVX512F && 1) && 
   12161              : #line 518 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12162              : (TARGET_AVX512VL)))
   12163              :             return 4046; /* avx512vl_fnmadd_v2df_mask */
   12164              :         }
   12165              :       if (!vector_operand (operands[1], E_V2DFmode)
   12166              :           || !nonimmediate_operand (operands[3], E_V2DFmode))
   12167              :         return -1;
   12168              :       x6 = XEXP (x2, 1);
   12169              :       if (!rtx_equal_p (x6, operands[3])
   12170              :           || !(
   12171              : #line 6616 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12172              : (TARGET_AVX512F && 1) && 
   12173              : #line 518 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12174              : (TARGET_AVX512VL)))
   12175              :         return -1;
   12176              :       return 4058; /* avx512vl_fnmadd_v2df_mask3 */
   12177              : 
   12178              :     case 23:
   12179              :       if (pattern1304 (x2, 
   12180              : E_SImode, 
   12181              : E_V32BFmode) != 0)
   12182              :         return -1;
   12183              :       x6 = XEXP (x2, 1);
   12184              :       if (rtx_equal_p (x6, operands[1])
   12185              :           && 
   12186              : #line 33303 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12187              : (TARGET_AVX10_2))
   12188              :         return 10750; /* avx10_2_fnmaddbf16_v32bf_mask */
   12189              :       if (!rtx_equal_p (x6, operands[3])
   12190              :           || !
   12191              : #line 33321 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12192              : (TARGET_AVX10_2))
   12193              :         return -1;
   12194              :       return 10753; /* avx10_2_fnmaddbf16_v32bf_mask3 */
   12195              : 
   12196              :     case 24:
   12197              :       if (pattern1304 (x2, 
   12198              : E_HImode, 
   12199              : E_V16BFmode) != 0)
   12200              :         return -1;
   12201              :       x6 = XEXP (x2, 1);
   12202              :       if (rtx_equal_p (x6, operands[1])
   12203              :           && 
   12204              : #line 33303 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12205              : (TARGET_AVX10_2))
   12206              :         return 10751; /* avx10_2_fnmaddbf16_v16bf_mask */
   12207              :       if (!rtx_equal_p (x6, operands[3])
   12208              :           || !
   12209              : #line 33321 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12210              : (TARGET_AVX10_2))
   12211              :         return -1;
   12212              :       return 10754; /* avx10_2_fnmaddbf16_v16bf_mask3 */
   12213              : 
   12214              :     case 25:
   12215              :       if (pattern1304 (x2, 
   12216              : E_QImode, 
   12217              : E_V8BFmode) != 0)
   12218              :         return -1;
   12219              :       x6 = XEXP (x2, 1);
   12220              :       if (rtx_equal_p (x6, operands[1])
   12221              :           && 
   12222              : #line 33303 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12223              : (TARGET_AVX10_2))
   12224              :         return 10752; /* avx10_2_fnmaddbf16_v8bf_mask */
   12225              :       if (!rtx_equal_p (x6, operands[3])
   12226              :           || !
   12227              : #line 33321 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12228              : (TARGET_AVX10_2))
   12229              :         return -1;
   12230              :       return 10755; /* avx10_2_fnmaddbf16_v8bf_mask3 */
   12231              : 
   12232              :     case 26:
   12233              :       if (pattern1398 (x2, 
   12234              : E_V8HFmode) != 0
   12235              :           || !(
   12236              : #line 7036 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12237              : (TARGET_FMA || TARGET_AVX512F) && 
   12238              : #line 477 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12239              : (TARGET_AVX512FP16)))
   12240              :         return -1;
   12241              :       return 4276; /* *fmai_fnmadd_v8hf */
   12242              : 
   12243              :     case 27:
   12244              :       if (pattern1398 (x2, 
   12245              : E_V4SFmode) != 0
   12246              :           || !
   12247              : #line 7036 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12248              : (TARGET_FMA || TARGET_AVX512F))
   12249              :         return -1;
   12250              :       return 4278; /* *fmai_fnmadd_v4sf */
   12251              : 
   12252              :     case 28:
   12253              :       if (pattern1398 (x2, 
   12254              : E_V2DFmode) != 0
   12255              :           || !(
   12256              : #line 7036 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12257              : (TARGET_FMA || TARGET_AVX512F) && 
   12258              : #line 478 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12259              : (TARGET_SSE2)))
   12260              :         return -1;
   12261              :       return 4280; /* *fmai_fnmadd_v2df */
   12262              : 
   12263              :     case 29:
   12264              :       return recog_163 (x1, insn, pnum_clobbers);
   12265              : 
   12266              :     default:
   12267              :       return -1;
   12268              :     }
   12269              : }
   12270              : 
   12271              :  int
   12272              : recog_168 (rtx x1 ATTRIBUTE_UNUSED,
   12273              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   12274              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   12275              : {
   12276              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   12277              :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
   12278              :   rtx x10;
   12279              :   int res ATTRIBUTE_UNUSED;
   12280              :   x2 = XEXP (x1, 1);
   12281              :   x3 = XEXP (x2, 0);
   12282              :   x4 = XEXP (x3, 0);
   12283              :   x5 = XEXP (x4, 1);
   12284              :   operands[2] = x5;
   12285              :   x6 = XEXP (x2, 1);
   12286              :   operands[3] = x6;
   12287              :   x7 = XEXP (x2, 2);
   12288              :   operands[4] = x7;
   12289              :   if (!register_operand (operands[4], E_QImode))
   12290              :     return -1;
   12291              :   x8 = XEXP (x3, 1);
   12292              :   x9 = XVECEXP (x8, 0, 0);
   12293              :   switch (XWINT (x9, 0))
   12294              :     {
   12295              :     case 1L:
   12296              :       x10 = XVECEXP (x8, 0, 1);
   12297              :       if (XWINT (x10, 0) != 3L)
   12298              :         return -1;
   12299              :       switch (GET_MODE (operands[0]))
   12300              :         {
   12301              :         case E_V2DFmode:
   12302              :           if (pattern1598 (x2, 
   12303              : E_V2DFmode, 
   12304              : E_V4DFmode) != 0
   12305              :               || !
   12306              : #line 13781 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12307              : (TARGET_AVX512VL))
   12308              :             return -1;
   12309              :           return 5424; /* avx512vl_unpckhpd128_mask */
   12310              : 
   12311              :         case E_V2DImode:
   12312              :           if (pattern1599 (x2, 
   12313              : E_V2DImode, 
   12314              : E_V4DImode) != 0
   12315              :               || !(
   12316              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12317              : (TARGET_AVX512F) && 
   12318              : #line 14897 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12319              : (TARGET_SSE2 && TARGET_AVX512VL)))
   12320              :             return -1;
   12321              :           return 7244; /* vec_interleave_highv2di_mask */
   12322              : 
   12323              :         default:
   12324              :           return -1;
   12325              :         }
   12326              : 
   12327              :     case 0L:
   12328              :       x10 = XVECEXP (x8, 0, 1);
   12329              :       if (XWINT (x10, 0) != 2L)
   12330              :         return -1;
   12331              :       switch (GET_MODE (operands[0]))
   12332              :         {
   12333              :         case E_V2DFmode:
   12334              :           if (pattern1598 (x2, 
   12335              : E_V2DFmode, 
   12336              : E_V4DFmode) != 0
   12337              :               || !
   12338              : #line 13928 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12339              : (TARGET_AVX512VL))
   12340              :             return -1;
   12341              :           return 5434; /* avx512vl_unpcklpd128_mask */
   12342              : 
   12343              :         case E_V2DImode:
   12344              :           if (pattern1599 (x2, 
   12345              : E_V2DImode, 
   12346              : E_V4DImode) != 0
   12347              :               || !(
   12348              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12349              : (TARGET_AVX512F) && 
   12350              : #line 14947 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12351              : (TARGET_SSE2 && TARGET_AVX512VL)))
   12352              :             return -1;
   12353              :           return 7250; /* vec_interleave_lowv2di_mask */
   12354              : 
   12355              :         default:
   12356              :           return -1;
   12357              :         }
   12358              : 
   12359              :     default:
   12360              :       return -1;
   12361              :     }
   12362              : }
   12363              : 
   12364              :  int
   12365              : recog_171 (rtx x1 ATTRIBUTE_UNUSED,
   12366              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   12367              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   12368              : {
   12369              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   12370              :   rtx x2, x3, x4, x5, x6, x7, x8;
   12371              :   int res ATTRIBUTE_UNUSED;
   12372              :   x2 = XEXP (x1, 1);
   12373              :   x3 = XEXP (x2, 0);
   12374              :   x4 = XEXP (x3, 1);
   12375              :   x5 = XVECEXP (x4, 0, 0);
   12376              :   if (GET_CODE (x5) != CONST_INT)
   12377              :     return -1;
   12378              :   operands[2] = x5;
   12379              :   if (const_0_to_7_operand (operands[2], E_VOIDmode))
   12380              :     {
   12381              :       x6 = XVECEXP (x4, 0, 1);
   12382              :       operands[3] = x6;
   12383              :       if (const_0_to_7_operand (operands[3], E_VOIDmode))
   12384              :         {
   12385              :           x7 = XEXP (x2, 1);
   12386              :           operands[4] = x7;
   12387              :           x8 = XEXP (x2, 2);
   12388              :           operands[5] = x8;
   12389              :           if (register_operand (operands[5], E_QImode))
   12390              :             {
   12391              :               switch (GET_MODE (operands[0]))
   12392              :                 {
   12393              :                 case E_V2DFmode:
   12394              :                   if (pattern1558 (x2, 
   12395              : E_V2DFmode, 
   12396              : E_V8DFmode) == 0
   12397              :                       && 
   12398              : #line 12833 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12399              : (TARGET_AVX512DQ
   12400              :    && INTVAL (operands[2]) % 2 == 0
   12401              :    && INTVAL (operands[2]) == INTVAL (operands[3]) - 1
   12402              :    && (!MEM_P (operands[0]) || rtx_equal_p (operands[0], operands[4]))))
   12403              :                     return 5356; /* avx512dq_vextractf64x2_1_mask */
   12404              :                   break;
   12405              : 
   12406              :                 case E_V2DImode:
   12407              :                   if (pattern1558 (x2, 
   12408              : E_V2DImode, 
   12409              : E_V8DImode) == 0
   12410              :                       && 
   12411              : #line 12833 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12412              : (TARGET_AVX512DQ
   12413              :    && INTVAL (operands[2]) % 2 == 0
   12414              :    && INTVAL (operands[2]) == INTVAL (operands[3]) - 1
   12415              :    && (!MEM_P (operands[0]) || rtx_equal_p (operands[0], operands[4]))))
   12416              :                     return 5357; /* avx512dq_vextracti64x2_1_mask */
   12417              :                   break;
   12418              : 
   12419              :                 default:
   12420              :                   break;
   12421              :                 }
   12422              :             }
   12423              :         }
   12424              :     }
   12425              :   x6 = XVECEXP (x4, 0, 1);
   12426              :   if (GET_CODE (x6) != CONST_INT)
   12427              :     return -1;
   12428              :   x7 = XEXP (x2, 1);
   12429              :   operands[2] = x7;
   12430              :   x8 = XEXP (x2, 2);
   12431              :   operands[3] = x8;
   12432              :   if (!register_operand (operands[3], E_QImode))
   12433              :     return -1;
   12434              :   switch (XWINT (x5, 0))
   12435              :     {
   12436              :     case 0L:
   12437              :       if (XWINT (x6, 0) != 1L)
   12438              :         return -1;
   12439              :       switch (GET_MODE (operands[0]))
   12440              :         {
   12441              :         case E_V2DImode:
   12442              :           if (!nonimmediate_operand (operands[0], E_V2DImode)
   12443              :               || pattern1559 (x2, 
   12444              : E_V2DImode, 
   12445              : E_V4DImode) != 0
   12446              :               || !
   12447              : #line 13261 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12448              : (TARGET_AVX512DQ
   12449              :    && TARGET_AVX512VL
   12450              :    && (!MEM_P (operands[0]) || rtx_equal_p (operands[0], operands[2]))))
   12451              :             return -1;
   12452              :           return 5380; /* vec_extract_lo_v4di_mask */
   12453              : 
   12454              :         case E_V2DFmode:
   12455              :           if (!nonimmediate_operand (operands[0], E_V2DFmode)
   12456              :               || pattern1559 (x2, 
   12457              : E_V2DFmode, 
   12458              : E_V4DFmode) != 0
   12459              :               || !
   12460              : #line 13261 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12461              : (TARGET_AVX512DQ
   12462              :    && TARGET_AVX512VL
   12463              :    && (!MEM_P (operands[0]) || rtx_equal_p (operands[0], operands[2]))))
   12464              :             return -1;
   12465              :           return 5381; /* vec_extract_lo_v4df_mask */
   12466              : 
   12467              :         default:
   12468              :           return -1;
   12469              :         }
   12470              : 
   12471              :     case 2L:
   12472              :       if (XWINT (x6, 0) != 3L)
   12473              :         return -1;
   12474              :       switch (GET_MODE (operands[0]))
   12475              :         {
   12476              :         case E_V2DImode:
   12477              :           if (!nonimmediate_operand (operands[0], E_V2DImode)
   12478              :               || pattern1559 (x2, 
   12479              : E_V2DImode, 
   12480              : E_V4DImode) != 0
   12481              :               || !
   12482              : #line 13298 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12483              : (TARGET_AVX512DQ
   12484              :    && TARGET_AVX512VL
   12485              :    && (!MEM_P (operands[0]) || rtx_equal_p (operands[0], operands[2]))))
   12486              :             return -1;
   12487              :           return 5384; /* vec_extract_hi_v4di_mask */
   12488              : 
   12489              :         case E_V2DFmode:
   12490              :           if (!nonimmediate_operand (operands[0], E_V2DFmode)
   12491              :               || pattern1559 (x2, 
   12492              : E_V2DFmode, 
   12493              : E_V4DFmode) != 0
   12494              :               || !
   12495              : #line 13298 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12496              : (TARGET_AVX512DQ
   12497              :    && TARGET_AVX512VL
   12498              :    && (!MEM_P (operands[0]) || rtx_equal_p (operands[0], operands[2]))))
   12499              :             return -1;
   12500              :           return 5385; /* vec_extract_hi_v4df_mask */
   12501              : 
   12502              :         default:
   12503              :           return -1;
   12504              :         }
   12505              : 
   12506              :     default:
   12507              :       return -1;
   12508              :     }
   12509              : }
   12510              : 
   12511              :  int
   12512              : recog_176 (rtx x1 ATTRIBUTE_UNUSED,
   12513              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   12514              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   12515              : {
   12516              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   12517              :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
   12518              :   rtx x10;
   12519              :   int res ATTRIBUTE_UNUSED;
   12520              :   x2 = XEXP (x1, 1);
   12521              :   x3 = XEXP (x2, 0);
   12522              :   x4 = XEXP (x3, 1);
   12523              :   x5 = XVECEXP (x4, 0, 4);
   12524              :   if (GET_CODE (x5) != CONST_INT)
   12525              :     return -1;
   12526              :   operands[6] = x5;
   12527              :   res = recog_175 (x1, insn, pnum_clobbers);
   12528              :   if (res >= 0)
   12529              :     return res;
   12530              :   if (XWINT (x5, 0) != 4L)
   12531              :     return -1;
   12532              :   x6 = XVECEXP (x4, 0, 5);
   12533              :   if (x6 != const_int_rtx[MAX_SAVED_CONST_INT + 5])
   12534              :     return -1;
   12535              :   x7 = XVECEXP (x4, 0, 6);
   12536              :   if (x7 != const_int_rtx[MAX_SAVED_CONST_INT + 6])
   12537              :     return -1;
   12538              :   x8 = XVECEXP (x4, 0, 7);
   12539              :   if (x8 != const_int_rtx[MAX_SAVED_CONST_INT + 7]
   12540              :       || pattern1308 (x2, 
   12541              : E_V8HImode) != 0
   12542              :       || pattern1025 (x4) != 0)
   12543              :     return -1;
   12544              :   x9 = XEXP (x2, 1);
   12545              :   operands[6] = x9;
   12546              :   if (!nonimm_or_0_operand (operands[6], E_V8HImode))
   12547              :     return -1;
   12548              :   x10 = XEXP (x2, 2);
   12549              :   operands[7] = x10;
   12550              :   if (!register_operand (operands[7], E_QImode)
   12551              :       || !(
   12552              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12553              : (TARGET_AVX512F) && 
   12554              : #line 21328 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12555              : (TARGET_SSE2 && TARGET_AVX512BW && TARGET_AVX512VL)))
   12556              :     return -1;
   12557              :   return 8523; /* sse2_pshuflw_1_mask */
   12558              : }
   12559              : 
   12560              :  int
   12561              : recog_180 (rtx x1 ATTRIBUTE_UNUSED,
   12562              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   12563              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   12564              : {
   12565              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   12566              :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
   12567              :   rtx x10, x11, x12, x13, x14;
   12568              :   int res ATTRIBUTE_UNUSED;
   12569              :   x2 = XEXP (x1, 1);
   12570              :   x3 = XEXP (x2, 0);
   12571              :   x4 = XEXP (x3, 1);
   12572              :   x5 = XVECEXP (x4, 0, 0);
   12573              :   if (GET_CODE (x5) != CONST_INT)
   12574              :     return -1;
   12575              :   operands[2] = x5;
   12576              :   res = recog_179 (x1, insn, pnum_clobbers);
   12577              :   if (res >= 0)
   12578              :     return res;
   12579              :   if (XWINT (x5, 0) != 0L)
   12580              :     return -1;
   12581              :   x6 = XVECEXP (x4, 0, 1);
   12582              :   if (x6 != const_int_rtx[MAX_SAVED_CONST_INT + 1])
   12583              :     return -1;
   12584              :   x7 = XVECEXP (x4, 0, 2);
   12585              :   if (x7 != const_int_rtx[MAX_SAVED_CONST_INT + 2])
   12586              :     return -1;
   12587              :   x8 = XVECEXP (x4, 0, 3);
   12588              :   if (x8 != const_int_rtx[MAX_SAVED_CONST_INT + 3]
   12589              :       || pattern1309 (x4, 
   12590              : 11, 
   12591              : 10, 
   12592              : 9, 
   12593              : 8) != 0
   12594              :       || pattern764 (x2, 
   12595              : E_V16HImode) != 0
   12596              :       || pattern1560 (x4) != 0)
   12597              :     return -1;
   12598              :   x9 = XVECEXP (x4, 0, 12);
   12599              :   operands[6] = x9;
   12600              :   if (!const_12_to_15_operand (operands[6], E_VOIDmode))
   12601              :     return -1;
   12602              :   x10 = XVECEXP (x4, 0, 13);
   12603              :   operands[7] = x10;
   12604              :   if (!const_12_to_15_operand (operands[7], E_VOIDmode))
   12605              :     return -1;
   12606              :   x11 = XVECEXP (x4, 0, 14);
   12607              :   operands[8] = x11;
   12608              :   if (!const_12_to_15_operand (operands[8], E_VOIDmode))
   12609              :     return -1;
   12610              :   x12 = XVECEXP (x4, 0, 15);
   12611              :   operands[9] = x12;
   12612              :   if (!const_12_to_15_operand (operands[9], E_VOIDmode))
   12613              :     return -1;
   12614              :   x13 = XEXP (x2, 1);
   12615              :   operands[10] = x13;
   12616              :   if (!nonimm_or_0_operand (operands[10], E_V16HImode))
   12617              :     return -1;
   12618              :   x14 = XEXP (x2, 2);
   12619              :   operands[11] = x14;
   12620              :   if (!register_operand (operands[11], E_HImode)
   12621              :       || !(
   12622              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12623              : (TARGET_AVX512F) && 
   12624              : #line 21419 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12625              : (TARGET_AVX2
   12626              :    && TARGET_AVX512BW && TARGET_AVX512VL
   12627              :    && INTVAL (operands[2]) + 8 == INTVAL (operands[6])
   12628              :    && INTVAL (operands[3]) + 8 == INTVAL (operands[7])
   12629              :    && INTVAL (operands[4]) + 8 == INTVAL (operands[8])
   12630              :    && INTVAL (operands[5]) + 8 == INTVAL (operands[9]))))
   12631              :     return -1;
   12632              :   return 8527; /* avx2_pshufhw_1_mask */
   12633              : }
   12634              : 
   12635              :  int
   12636              : recog_187 (rtx x1 ATTRIBUTE_UNUSED,
   12637              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   12638              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   12639              : {
   12640              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   12641              :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
   12642              :   rtx x10, x11, x12, x13, x14, x15, x16, x17;
   12643              :   rtx x18, x19, x20, x21, x22;
   12644              :   int res ATTRIBUTE_UNUSED;
   12645              :   x2 = XEXP (x1, 1);
   12646              :   x3 = XEXP (x2, 0);
   12647              :   x4 = XEXP (x3, 0);
   12648              :   switch (GET_CODE (x4))
   12649              :     {
   12650              :     case SS_TRUNCATE:
   12651              :       x5 = XEXP (x3, 1);
   12652              :       if (GET_CODE (x5) != SS_TRUNCATE)
   12653              :         return -1;
   12654              :       x6 = XEXP (x4, 0);
   12655              :       operands[1] = x6;
   12656              :       x7 = XEXP (x5, 0);
   12657              :       operands[2] = x7;
   12658              :       x8 = XEXP (x2, 1);
   12659              :       operands[3] = x8;
   12660              :       x9 = XEXP (x2, 2);
   12661              :       operands[4] = x9;
   12662              :       switch (GET_MODE (operands[0]))
   12663              :         {
   12664              :         case E_V16QImode:
   12665              :           if (pattern1137 (x2, 
   12666              : E_HImode, 
   12667              : E_V16QImode, 
   12668              : E_V8HImode, 
   12669              : E_V8QImode) != 0
   12670              :               || !(
   12671              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12672              : (TARGET_AVX512F) && 
   12673              : #line 19679 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12674              : (TARGET_SSE2 && TARGET_AVX512VL && TARGET_AVX512BW)))
   12675              :             return -1;
   12676              :           return 8377; /* sse2_packsswb_mask */
   12677              : 
   12678              :         case E_V8HImode:
   12679              :           if (pattern1137 (x2, 
   12680              : E_QImode, 
   12681              : E_V8HImode, 
   12682              : E_V4SImode, 
   12683              : E_V4HImode) != 0
   12684              :               || !(
   12685              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12686              : (TARGET_AVX512F) && 
   12687              : #line 19773 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12688              : (TARGET_SSE2 && TARGET_AVX512VL && TARGET_AVX512BW)))
   12689              :             return -1;
   12690              :           return 8383; /* sse2_packssdw_mask */
   12691              : 
   12692              :         default:
   12693              :           return -1;
   12694              :         }
   12695              : 
   12696              :     case REG:
   12697              :     case SUBREG:
   12698              :     case MEM:
   12699              :       operands[2] = x4;
   12700              :       x5 = XEXP (x3, 1);
   12701              :       if (GET_CODE (x5) != VEC_SELECT)
   12702              :         return -1;
   12703              :       x10 = XEXP (x5, 1);
   12704              :       if (GET_CODE (x10) != PARALLEL)
   12705              :         return -1;
   12706              :       x7 = XEXP (x5, 0);
   12707              :       operands[1] = x7;
   12708              :       x8 = XEXP (x2, 1);
   12709              :       operands[3] = x8;
   12710              :       x9 = XEXP (x2, 2);
   12711              :       operands[4] = x9;
   12712              :       switch (XVECLEN (x10, 0))
   12713              :         {
   12714              :         case 8:
   12715              :           x11 = XVECEXP (x10, 0, 0);
   12716              :           if (x11 != const_int_rtx[MAX_SAVED_CONST_INT + 8])
   12717              :             return -1;
   12718              :           x12 = XVECEXP (x10, 0, 1);
   12719              :           if (x12 != const_int_rtx[MAX_SAVED_CONST_INT + 9])
   12720              :             return -1;
   12721              :           x13 = XVECEXP (x10, 0, 2);
   12722              :           if (x13 != const_int_rtx[MAX_SAVED_CONST_INT + 10]
   12723              :               || pattern1423 (x10, 
   12724              : 15, 
   12725              : 14, 
   12726              : 13, 
   12727              : 12, 
   12728              : 11) != 0
   12729              :               || !register_operand (operands[4], E_HImode))
   12730              :             return -1;
   12731              :           switch (GET_MODE (operands[0]))
   12732              :             {
   12733              :             case E_V16SFmode:
   12734              :               if (pattern1526 (x2, 
   12735              : E_V16SFmode, 
   12736              : E_V8SFmode) != 0
   12737              :                   || !(
   12738              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12739              : (TARGET_AVX512F) && 
   12740              : #line 20565 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12741              : (TARGET_AVX512DQ)))
   12742              :                 return -1;
   12743              :               return 8473; /* vec_set_lo_v16sf_mask */
   12744              : 
   12745              :             case E_V16SImode:
   12746              :               if (pattern1526 (x2, 
   12747              : E_V16SImode, 
   12748              : E_V8SImode) != 0
   12749              :                   || !(
   12750              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12751              : (TARGET_AVX512F) && 
   12752              : #line 20565 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12753              : (TARGET_AVX512DQ)))
   12754              :                 return -1;
   12755              :               return 8475; /* vec_set_lo_v16si_mask */
   12756              : 
   12757              :             default:
   12758              :               return -1;
   12759              :             }
   12760              : 
   12761              :         case 4:
   12762              :           if (pattern1229 (x10, 
   12763              : 7, 
   12764              : 6, 
   12765              : 5, 
   12766              : 4) != 0
   12767              :               || !register_operand (operands[4], E_QImode))
   12768              :             return -1;
   12769              :           switch (GET_MODE (operands[0]))
   12770              :             {
   12771              :             case E_V8DFmode:
   12772              :               if (pattern1526 (x2, 
   12773              : E_V8DFmode, 
   12774              : E_V4DFmode) != 0
   12775              :                   || !
   12776              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12777              : (TARGET_AVX512F))
   12778              :                 return -1;
   12779              :               return 8481; /* vec_set_lo_v8df_mask */
   12780              : 
   12781              :             case E_V8DImode:
   12782              :               if (pattern1526 (x2, 
   12783              : E_V8DImode, 
   12784              : E_V4DImode) != 0
   12785              :                   || !
   12786              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12787              : (TARGET_AVX512F))
   12788              :                 return -1;
   12789              :               return 8483; /* vec_set_lo_v8di_mask */
   12790              : 
   12791              :             case E_V8SImode:
   12792              :               if (pattern1526 (x2, 
   12793              : E_V8SImode, 
   12794              : E_V4SImode) != 0
   12795              :                   || !(
   12796              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12797              : (TARGET_AVX512F) && 
   12798              : #line 29449 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12799              : (TARGET_AVX)))
   12800              :                 return -1;
   12801              :               return 9575; /* vec_set_lo_v8si_mask */
   12802              : 
   12803              :             case E_V8SFmode:
   12804              :               if (pattern1526 (x2, 
   12805              : E_V8SFmode, 
   12806              : E_V4SFmode) != 0
   12807              :                   || !(
   12808              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12809              : (TARGET_AVX512F) && 
   12810              : #line 29449 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12811              : (TARGET_AVX)))
   12812              :                 return -1;
   12813              :               return 9577; /* vec_set_lo_v8sf_mask */
   12814              : 
   12815              :             default:
   12816              :               return -1;
   12817              :             }
   12818              : 
   12819              :         case 2:
   12820              :           x11 = XVECEXP (x10, 0, 0);
   12821              :           if (x11 != const_int_rtx[MAX_SAVED_CONST_INT + 2])
   12822              :             return -1;
   12823              :           x12 = XVECEXP (x10, 0, 1);
   12824              :           if (x12 != const_int_rtx[MAX_SAVED_CONST_INT + 3]
   12825              :               || !register_operand (operands[4], E_QImode))
   12826              :             return -1;
   12827              :           switch (GET_MODE (operands[0]))
   12828              :             {
   12829              :             case E_V4DImode:
   12830              :               if (pattern1526 (x2, 
   12831              : E_V4DImode, 
   12832              : E_V2DImode) != 0
   12833              :                   || !(
   12834              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12835              : (TARGET_AVX512F) && 
   12836              : #line 29398 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12837              : (TARGET_AVX && TARGET_AVX512DQ)))
   12838              :                 return -1;
   12839              :               return 9567; /* vec_set_lo_v4di_mask */
   12840              : 
   12841              :             case E_V4DFmode:
   12842              :               if (pattern1526 (x2, 
   12843              : E_V4DFmode, 
   12844              : E_V2DFmode) != 0
   12845              :                   || !(
   12846              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12847              : (TARGET_AVX512F) && 
   12848              : #line 29398 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12849              : (TARGET_AVX && TARGET_AVX512DQ)))
   12850              :                 return -1;
   12851              :               return 9569; /* vec_set_lo_v4df_mask */
   12852              : 
   12853              :             default:
   12854              :               return -1;
   12855              :             }
   12856              : 
   12857              :         default:
   12858              :           return -1;
   12859              :         }
   12860              : 
   12861              :     case VEC_SELECT:
   12862              :       x14 = XEXP (x4, 1);
   12863              :       if (GET_CODE (x14) != PARALLEL)
   12864              :         return -1;
   12865              :       x6 = XEXP (x4, 0);
   12866              :       operands[1] = x6;
   12867              :       x5 = XEXP (x3, 1);
   12868              :       operands[2] = x5;
   12869              :       x8 = XEXP (x2, 1);
   12870              :       operands[3] = x8;
   12871              :       x9 = XEXP (x2, 2);
   12872              :       operands[4] = x9;
   12873              :       switch (XVECLEN (x14, 0))
   12874              :         {
   12875              :         case 8:
   12876              :           if (pattern653 (x14) != 0)
   12877              :             return -1;
   12878              :           x15 = XVECEXP (x14, 0, 4);
   12879              :           if (x15 != const_int_rtx[MAX_SAVED_CONST_INT + 4])
   12880              :             return -1;
   12881              :           x16 = XVECEXP (x14, 0, 5);
   12882              :           if (x16 != const_int_rtx[MAX_SAVED_CONST_INT + 5])
   12883              :             return -1;
   12884              :           x17 = XVECEXP (x14, 0, 6);
   12885              :           if (x17 != const_int_rtx[MAX_SAVED_CONST_INT + 6])
   12886              :             return -1;
   12887              :           x18 = XVECEXP (x14, 0, 7);
   12888              :           if (x18 != const_int_rtx[MAX_SAVED_CONST_INT + 7]
   12889              :               || !register_operand (operands[4], E_HImode))
   12890              :             return -1;
   12891              :           switch (GET_MODE (operands[0]))
   12892              :             {
   12893              :             case E_V16SFmode:
   12894              :               if (pattern1482 (x2, 
   12895              : E_V16SFmode, 
   12896              : E_V8SFmode) != 0
   12897              :                   || !(
   12898              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12899              : (TARGET_AVX512F) && 
   12900              : #line 20583 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12901              : (TARGET_AVX512DQ)))
   12902              :                 return -1;
   12903              :               return 8477; /* vec_set_hi_v16sf_mask */
   12904              : 
   12905              :             case E_V16SImode:
   12906              :               if (pattern1482 (x2, 
   12907              : E_V16SImode, 
   12908              : E_V8SImode) != 0
   12909              :                   || !(
   12910              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12911              : (TARGET_AVX512F) && 
   12912              : #line 20583 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12913              : (TARGET_AVX512DQ)))
   12914              :                 return -1;
   12915              :               return 8479; /* vec_set_hi_v16si_mask */
   12916              : 
   12917              :             default:
   12918              :               return -1;
   12919              :             }
   12920              : 
   12921              :         case 4:
   12922              :           if (pattern653 (x14) != 0
   12923              :               || !register_operand (operands[4], E_QImode))
   12924              :             return -1;
   12925              :           switch (GET_MODE (operands[0]))
   12926              :             {
   12927              :             case E_V8DFmode:
   12928              :               if (pattern1482 (x2, 
   12929              : E_V8DFmode, 
   12930              : E_V4DFmode) != 0
   12931              :                   || !
   12932              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12933              : (TARGET_AVX512F))
   12934              :                 return -1;
   12935              :               return 8485; /* vec_set_hi_v8df_mask */
   12936              : 
   12937              :             case E_V8DImode:
   12938              :               if (pattern1482 (x2, 
   12939              : E_V8DImode, 
   12940              : E_V4DImode) != 0
   12941              :                   || !
   12942              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12943              : (TARGET_AVX512F))
   12944              :                 return -1;
   12945              :               return 8487; /* vec_set_hi_v8di_mask */
   12946              : 
   12947              :             case E_V8SImode:
   12948              :               if (pattern1482 (x2, 
   12949              : E_V8SImode, 
   12950              : E_V4SImode) != 0
   12951              :                   || !(
   12952              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12953              : (TARGET_AVX512F) && 
   12954              : #line 29473 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12955              : (TARGET_AVX)))
   12956              :                 return -1;
   12957              :               return 9579; /* vec_set_hi_v8si_mask */
   12958              : 
   12959              :             case E_V8SFmode:
   12960              :               if (pattern1482 (x2, 
   12961              : E_V8SFmode, 
   12962              : E_V4SFmode) != 0
   12963              :                   || !(
   12964              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12965              : (TARGET_AVX512F) && 
   12966              : #line 29473 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12967              : (TARGET_AVX)))
   12968              :                 return -1;
   12969              :               return 9581; /* vec_set_hi_v8sf_mask */
   12970              : 
   12971              :             default:
   12972              :               return -1;
   12973              :             }
   12974              : 
   12975              :         case 2:
   12976              :           x19 = XVECEXP (x14, 0, 0);
   12977              :           if (x19 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
   12978              :             return -1;
   12979              :           x20 = XVECEXP (x14, 0, 1);
   12980              :           if (x20 != const_int_rtx[MAX_SAVED_CONST_INT + 1]
   12981              :               || !register_operand (operands[4], E_QImode))
   12982              :             return -1;
   12983              :           switch (GET_MODE (operands[0]))
   12984              :             {
   12985              :             case E_V4DImode:
   12986              :               if (pattern1482 (x2, 
   12987              : E_V4DImode, 
   12988              : E_V2DImode) != 0
   12989              :                   || !(
   12990              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12991              : (TARGET_AVX512F) && 
   12992              : #line 29423 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12993              : (TARGET_AVX && TARGET_AVX512DQ)))
   12994              :                 return -1;
   12995              :               return 9571; /* vec_set_hi_v4di_mask */
   12996              : 
   12997              :             case E_V4DFmode:
   12998              :               if (pattern1482 (x2, 
   12999              : E_V4DFmode, 
   13000              : E_V2DFmode) != 0
   13001              :                   || !(
   13002              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13003              : (TARGET_AVX512F) && 
   13004              : #line 29423 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13005              : (TARGET_AVX && TARGET_AVX512DQ)))
   13006              :                 return -1;
   13007              :               return 9573; /* vec_set_hi_v4df_mask */
   13008              : 
   13009              :             default:
   13010              :               return -1;
   13011              :             }
   13012              : 
   13013              :         default:
   13014              :           return -1;
   13015              :         }
   13016              : 
   13017              :     case UNSPEC:
   13018              :       if (XVECLEN (x4, 0) != 2
   13019              :           || XINT (x4, 1) != 151
   13020              :           || GET_MODE (x4) != E_V4HImode
   13021              :           || !register_operand (operands[0], E_V8HImode)
   13022              :           || GET_MODE (x2) != E_V8HImode
   13023              :           || GET_MODE (x3) != E_V8HImode)
   13024              :         return -1;
   13025              :       x21 = XVECEXP (x4, 0, 0);
   13026              :       operands[1] = x21;
   13027              :       if (!register_operand (operands[1], E_V4SFmode))
   13028              :         return -1;
   13029              :       x22 = XVECEXP (x4, 0, 1);
   13030              :       operands[2] = x22;
   13031              :       if (!const_0_to_255_operand (operands[2], E_SImode))
   13032              :         return -1;
   13033              :       x5 = XEXP (x3, 1);
   13034              :       operands[3] = x5;
   13035              :       if (!const0_operand (operands[3], E_V4HImode))
   13036              :         return -1;
   13037              :       x8 = XEXP (x2, 1);
   13038              :       operands[4] = x8;
   13039              :       if (!nonimm_or_0_operand (operands[4], E_V8HImode))
   13040              :         return -1;
   13041              :       x9 = XEXP (x2, 2);
   13042              :       operands[5] = x9;
   13043              :       if (!register_operand (operands[5], E_QImode)
   13044              :           || !(
   13045              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13046              : (TARGET_AVX512F) && 
   13047              : #line 30192 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13048              : ((TARGET_F16C || TARGET_AVX512VL) && TARGET_AVX512VL)))
   13049              :         return -1;
   13050              :       return 9762; /* *vcvtps2ph_mask */
   13051              : 
   13052              :     case FLOAT_TRUNCATE:
   13053              :       x5 = XEXP (x3, 1);
   13054              :       if (GET_CODE (x5) != FLOAT_TRUNCATE)
   13055              :         return -1;
   13056              :       x6 = XEXP (x4, 0);
   13057              :       operands[2] = x6;
   13058              :       x7 = XEXP (x5, 0);
   13059              :       operands[1] = x7;
   13060              :       x8 = XEXP (x2, 1);
   13061              :       operands[3] = x8;
   13062              :       x9 = XEXP (x2, 2);
   13063              :       operands[4] = x9;
   13064              :       switch (GET_MODE (operands[0]))
   13065              :         {
   13066              :         case E_V32BFmode:
   13067              :           if (pattern1139 (x2, 
   13068              : E_SImode, 
   13069              : E_V32BFmode, 
   13070              : E_V16SFmode, 
   13071              : E_V16BFmode) != 0
   13072              :               || !(
   13073              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13074              : (TARGET_AVX512F) && 
   13075              : #line 32088 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13076              : (TARGET_AVX512BF16)))
   13077              :             return -1;
   13078              :           return 10443; /* avx512f_cvtne2ps2bf16_v32bf_mask */
   13079              : 
   13080              :         case E_V16BFmode:
   13081              :           if (pattern1139 (x2, 
   13082              : E_HImode, 
   13083              : E_V16BFmode, 
   13084              : E_V8SFmode, 
   13085              : E_V8BFmode) != 0
   13086              :               || !(
   13087              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13088              : (TARGET_AVX512F) && (
   13089              : #line 32088 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13090              : (TARGET_AVX512BF16) && 
   13091              : #line 32054 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13092              : (TARGET_AVX512VL))))
   13093              :             return -1;
   13094              :           return 10445; /* avx512f_cvtne2ps2bf16_v16bf_mask */
   13095              : 
   13096              :         case E_V8BFmode:
   13097              :           if (pattern1139 (x2, 
   13098              : E_QImode, 
   13099              : E_V8BFmode, 
   13100              : E_V4SFmode, 
   13101              : E_V4BFmode) != 0
   13102              :               || !(
   13103              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13104              : (TARGET_AVX512F) && (
   13105              : #line 32088 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13106              : (TARGET_AVX512BF16) && 
   13107              : #line 32054 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13108              : (TARGET_AVX512VL))))
   13109              :             return -1;
   13110              :           return 10447; /* avx512f_cvtne2ps2bf16_v8bf_mask */
   13111              : 
   13112              :         case E_V32HFmode:
   13113              :           if (pattern1140 (x2, 
   13114              : E_SImode, 
   13115              : E_V32HFmode, 
   13116              : E_V16SFmode, 
   13117              : E_V16HFmode) != 0
   13118              :               || !(
   13119              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13120              : (TARGET_AVX512F) && 
   13121              : #line 32789 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13122              : (TARGET_AVX10_2 && 1)))
   13123              :             return -1;
   13124              :           return 10543; /* avx10_2_cvt2ps2phx_v32hf_mask */
   13125              : 
   13126              :         case E_V16HFmode:
   13127              :           if (pattern1140 (x2, 
   13128              : E_HImode, 
   13129              : E_V16HFmode, 
   13130              : E_V8SFmode, 
   13131              : E_V8HFmode) != 0
   13132              :               || !(
   13133              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13134              : (TARGET_AVX512F) && (
   13135              : #line 32789 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13136              : (TARGET_AVX10_2 && 1) && 
   13137              : #line 545 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13138              : (TARGET_AVX512VL))))
   13139              :             return -1;
   13140              :           return 10546; /* avx10_2_cvt2ps2phx_v16hf_mask */
   13141              : 
   13142              :         case E_V8HFmode:
   13143              :           if (pattern1140 (x2, 
   13144              : E_QImode, 
   13145              : E_V8HFmode, 
   13146              : E_V4SFmode, 
   13147              : E_V4HFmode) != 0
   13148              :               || !(
   13149              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13150              : (TARGET_AVX512F) && (
   13151              : #line 32789 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13152              : (TARGET_AVX10_2 && 1) && 
   13153              : #line 545 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13154              : (TARGET_AVX512VL))))
   13155              :             return -1;
   13156              :           return 10548; /* avx10_2_cvt2ps2phx_v8hf_mask */
   13157              : 
   13158              :         default:
   13159              :           return -1;
   13160              :         }
   13161              : 
   13162              :     default:
   13163              :       return -1;
   13164              :     }
   13165              : }
   13166              : 
   13167              :  int
   13168              : recog_193 (rtx x1 ATTRIBUTE_UNUSED,
   13169              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   13170              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   13171              : {
   13172              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   13173              :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
   13174              :   rtx x10;
   13175              :   int res ATTRIBUTE_UNUSED;
   13176              :   x2 = XEXP (x1, 1);
   13177              :   x3 = XEXP (x2, 0);
   13178              :   x4 = XEXP (x3, 0);
   13179              :   switch (GET_CODE (x4))
   13180              :     {
   13181              :     case REG:
   13182              :     case SUBREG:
   13183              :     case MEM:
   13184              :       operands[1] = x4;
   13185              :       x5 = XEXP (x2, 1);
   13186              :       operands[2] = x5;
   13187              :       x6 = XEXP (x2, 2);
   13188              :       operands[3] = x6;
   13189              :       switch (GET_MODE (operands[0]))
   13190              :         {
   13191              :         case E_V8DFmode:
   13192              :           if (pattern142 (x2, 
   13193              : E_V8DFmode, 
   13194              : E_QImode) != 0)
   13195              :             return -1;
   13196              :           switch (GET_MODE (operands[1]))
   13197              :             {
   13198              :             case E_V8HFmode:
   13199              :               if (!vector_operand (operands[1], E_V8HFmode)
   13200              :                   || !(
   13201              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13202              : (TARGET_AVX512F) && 
   13203              : #line 8422 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13204              : (TARGET_AVX512FP16)))
   13205              :                 return -1;
   13206              :               return 4764; /* avx512fp16_float_extend_phv8df2_mask */
   13207              : 
   13208              :             case E_V8SFmode:
   13209              :               if (!vector_operand (operands[1], E_V8SFmode)
   13210              :                   || !(
   13211              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13212              : (TARGET_AVX512F) && (
   13213              : #line 10609 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13214              : (TARGET_AVX && (64 == 64 || TARGET_AVX512VL) && 1) && 
   13215              : #line 466 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13216              : (TARGET_AVX512F))))
   13217              :                 return -1;
   13218              :               return 5209; /* avx512f_cvtps2pd512_mask */
   13219              : 
   13220              :             default:
   13221              :               return -1;
   13222              :             }
   13223              : 
   13224              :         case E_V16SFmode:
   13225              :           if (pattern141 (x2, 
   13226              : E_V16SFmode, 
   13227              : E_HImode, 
   13228              : E_V16HFmode) != 0
   13229              :               || !(
   13230              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13231              : (TARGET_AVX512F) && 
   13232              : #line 8422 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13233              : (TARGET_AVX512FP16)))
   13234              :             return -1;
   13235              :           return 4768; /* avx512fp16_float_extend_phv16sf2_mask */
   13236              : 
   13237              :         case E_V8SFmode:
   13238              :           if (pattern141 (x2, 
   13239              : E_V8SFmode, 
   13240              : E_QImode, 
   13241              : E_V8HFmode) != 0
   13242              :               || !(
   13243              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13244              : (TARGET_AVX512F) && (
   13245              : #line 8422 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13246              : (TARGET_AVX512FP16) && 
   13247              : #line 982 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13248              : (TARGET_AVX512VL))))
   13249              :             return -1;
   13250              :           return 4772; /* avx512fp16_float_extend_phv8sf2_mask */
   13251              : 
   13252              :         case E_V4DFmode:
   13253              :           if (pattern142 (x2, 
   13254              : E_V4DFmode, 
   13255              : E_QImode) != 0)
   13256              :             return -1;
   13257              :           switch (GET_MODE (operands[1]))
   13258              :             {
   13259              :             case E_V4HFmode:
   13260              :               if (!memory_operand (operands[1], E_V4HFmode)
   13261              :                   || !(
   13262              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13263              : (TARGET_AVX512F) && 
   13264              : #line 8461 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13265              : (TARGET_AVX512FP16 && TARGET_AVX512VL)))
   13266              :                 return -1;
   13267              :               return 4779; /* *avx512fp16_float_extend_phv4df2_load_mask */
   13268              : 
   13269              :             case E_V4SFmode:
   13270              :               if (!vector_operand (operands[1], E_V4SFmode)
   13271              :                   || !(
   13272              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13273              : (TARGET_AVX512F) && 
   13274              : #line 10609 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13275              : (TARGET_AVX && (32 == 64 || TARGET_AVX512VL) && 1)))
   13276              :                 return -1;
   13277              :               return 5212; /* avx_cvtps2pd256_mask */
   13278              : 
   13279              :             default:
   13280              :               return -1;
   13281              :             }
   13282              : 
   13283              :         case E_V4SFmode:
   13284              :           if (pattern156 (x2, 
   13285              : E_V4SFmode, 
   13286              : E_V4HFmode) != 0
   13287              :               || !(
   13288              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13289              : (TARGET_AVX512F) && 
   13290              : #line 8461 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13291              : (TARGET_AVX512FP16 && TARGET_AVX512VL)))
   13292              :             return -1;
   13293              :           return 4781; /* *avx512fp16_float_extend_phv4sf2_load_mask */
   13294              : 
   13295              :         case E_V2DFmode:
   13296              :           if (pattern142 (x2, 
   13297              : E_V2DFmode, 
   13298              : E_QImode) != 0)
   13299              :             return -1;
   13300              :           switch (GET_MODE (operands[1]))
   13301              :             {
   13302              :             case E_V2HFmode:
   13303              :               if (!memory_operand (operands[1], E_V2HFmode)
   13304              :                   || !(
   13305              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13306              : (TARGET_AVX512F) && 
   13307              : #line 8500 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13308              : (TARGET_AVX512FP16 && TARGET_AVX512VL)))
   13309              :                 return -1;
   13310              :               return 4785; /* *avx512fp16_float_extend_phv2df2_load_mask */
   13311              : 
   13312              :             case E_V2SFmode:
   13313              :               if (!memory_operand (operands[1], E_V2SFmode)
   13314              :                   || !(
   13315              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13316              : (TARGET_AVX512F) && 
   13317              : #line 10791 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13318              : (TARGET_SSE2 && TARGET_AVX512VL)))
   13319              :                 return -1;
   13320              :               return 5260; /* sse2_cvtps2pd_mask_1 */
   13321              : 
   13322              :             default:
   13323              :               return -1;
   13324              :             }
   13325              : 
   13326              :         default:
   13327              :           return -1;
   13328              :         }
   13329              : 
   13330              :     case VEC_SELECT:
   13331              :       x7 = XEXP (x4, 1);
   13332              :       if (GET_CODE (x7) != PARALLEL)
   13333              :         return -1;
   13334              :       switch (XVECLEN (x7, 0))
   13335              :         {
   13336              :         case 4:
   13337              :           if (pattern653 (x7) != 0
   13338              :               || GET_MODE (x4) != E_V4HFmode)
   13339              :             return -1;
   13340              :           x8 = XEXP (x4, 0);
   13341              :           operands[1] = x8;
   13342              :           if (!register_operand (operands[1], E_V8HFmode))
   13343              :             return -1;
   13344              :           x5 = XEXP (x2, 1);
   13345              :           operands[2] = x5;
   13346              :           x6 = XEXP (x2, 2);
   13347              :           operands[3] = x6;
   13348              :           if (!register_operand (operands[3], E_QImode))
   13349              :             return -1;
   13350              :           switch (GET_MODE (operands[0]))
   13351              :             {
   13352              :             case E_V4DFmode:
   13353              :               if (pattern143 (x2, 
   13354              : E_V4DFmode) != 0
   13355              :                   || !(
   13356              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13357              : (TARGET_AVX512F) && 
   13358              : #line 8451 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13359              : (TARGET_AVX512FP16 && TARGET_AVX512VL)))
   13360              :                 return -1;
   13361              :               return 4775; /* avx512fp16_float_extend_phv4df2_mask */
   13362              : 
   13363              :             case E_V4SFmode:
   13364              :               if (pattern143 (x2, 
   13365              : E_V4SFmode) != 0
   13366              :                   || !(
   13367              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13368              : (TARGET_AVX512F) && 
   13369              : #line 8451 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13370              : (TARGET_AVX512FP16 && TARGET_AVX512VL)))
   13371              :                 return -1;
   13372              :               return 4777; /* avx512fp16_float_extend_phv4sf2_mask */
   13373              : 
   13374              :             default:
   13375              :               return -1;
   13376              :             }
   13377              : 
   13378              :         case 2:
   13379              :           x9 = XVECEXP (x7, 0, 0);
   13380              :           if (x9 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
   13381              :             return -1;
   13382              :           x10 = XVECEXP (x7, 0, 1);
   13383              :           if (x10 != const_int_rtx[MAX_SAVED_CONST_INT + 1]
   13384              :               || !register_operand (operands[0], E_V2DFmode)
   13385              :               || GET_MODE (x2) != E_V2DFmode
   13386              :               || GET_MODE (x3) != E_V2DFmode)
   13387              :             return -1;
   13388              :           x6 = XEXP (x2, 2);
   13389              :           switch (GET_CODE (x6))
   13390              :             {
   13391              :             case REG:
   13392              :             case SUBREG:
   13393              :               operands[3] = x6;
   13394              :               if (!register_operand (operands[3], E_QImode))
   13395              :                 return -1;
   13396              :               x8 = XEXP (x4, 0);
   13397              :               operands[1] = x8;
   13398              :               x5 = XEXP (x2, 1);
   13399              :               operands[2] = x5;
   13400              :               if (!nonimm_or_0_operand (operands[2], E_V2DFmode))
   13401              :                 return -1;
   13402              :               switch (GET_MODE (x4))
   13403              :                 {
   13404              :                 case E_V2HFmode:
   13405              :                   if (!register_operand (operands[1], E_V8HFmode)
   13406              :                       || !(
   13407              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13408              : (TARGET_AVX512F) && 
   13409              : #line 8490 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13410              : (TARGET_AVX512FP16 && TARGET_AVX512VL)))
   13411              :                     return -1;
   13412              :                   return 4783; /* avx512fp16_float_extend_phv2df2_mask */
   13413              : 
   13414              :                 case E_V2SFmode:
   13415              :                   if (!register_operand (operands[1], E_V4SFmode)
   13416              :                       || !(
   13417              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13418              : (TARGET_AVX512F) && 
   13419              : #line 10777 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13420              : (TARGET_SSE2 && TARGET_AVX512VL)))
   13421              :                     return -1;
   13422              :                   return 5258; /* sse2_cvtps2pd_mask */
   13423              : 
   13424              :                 default:
   13425              :                   return -1;
   13426              :                 }
   13427              : 
   13428              :             case CONST_INT:
   13429              :               if (XWINT (x6, 0) != 1L
   13430              :                   || GET_MODE (x4) != E_V2SFmode)
   13431              :                 return -1;
   13432              :               x8 = XEXP (x4, 0);
   13433              :               operands[2] = x8;
   13434              :               if (!nonimmediate_operand (operands[2], E_V4SFmode))
   13435              :                 return -1;
   13436              :               x5 = XEXP (x2, 1);
   13437              :               operands[1] = x5;
   13438              :               if (!register_operand (operands[1], E_V2DFmode)
   13439              :                   || !
   13440              : #line 10436 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13441              : (TARGET_SSE2))
   13442              :                 return -1;
   13443              :               return 5192; /* sse2_cvtss2sd */
   13444              : 
   13445              :             default:
   13446              :               return -1;
   13447              :             }
   13448              : 
   13449              :         default:
   13450              :           return -1;
   13451              :         }
   13452              : 
   13453              :     default:
   13454              :       return -1;
   13455              :     }
   13456              : }
   13457              : 
   13458              :  int
   13459              : recog_200 (rtx x1 ATTRIBUTE_UNUSED,
   13460              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   13461              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   13462              : {
   13463              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   13464              :   rtx x2;
   13465              :   int res ATTRIBUTE_UNUSED;
   13466              :   x2 = XEXP (x1, 1);
   13467              :   switch (pattern139 (x2))
   13468              :     {
   13469              :     case 0:
   13470              :       if (!(
   13471              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13472              : (TARGET_AVX512F) && (
   13473              : #line 3358 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13474              : (TARGET_SSE
   13475              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))
   13476              :    && (64 == 64 || TARGET_AVX512VL)
   13477              :    && 1) && 
   13478              : #line 393 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13479              : (TARGET_AVX512FP16))))
   13480              :         return -1;
   13481              :       return 3053; /* *smaxv32hf3_mask */
   13482              : 
   13483              :     case 1:
   13484              :       if (!(
   13485              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13486              : (TARGET_AVX512F) && (
   13487              : #line 3358 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13488              : (TARGET_SSE
   13489              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))
   13490              :    && (32 == 64 || TARGET_AVX512VL)
   13491              :    && 1) && 
   13492              : #line 394 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13493              : (TARGET_AVX512FP16 && TARGET_AVX512VL))))
   13494              :         return -1;
   13495              :       return 3060; /* *smaxv16hf3_mask */
   13496              : 
   13497              :     case 2:
   13498              :       if (!(
   13499              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13500              : (TARGET_AVX512F) && (
   13501              : #line 3358 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13502              : (TARGET_SSE
   13503              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))
   13504              :    && (16 == 64 || TARGET_AVX512VL)
   13505              :    && 1) && 
   13506              : #line 395 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13507              : (TARGET_AVX512FP16 && TARGET_AVX512VL))))
   13508              :         return -1;
   13509              :       return 3064; /* *smaxv8hf3_mask */
   13510              : 
   13511              :     case 3:
   13512              :       if (!(
   13513              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13514              : (TARGET_AVX512F) && (
   13515              : #line 3358 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13516              : (TARGET_SSE
   13517              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))
   13518              :    && (64 == 64 || TARGET_AVX512VL)
   13519              :    && 1) && 
   13520              : #line 396 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13521              : (TARGET_AVX512F))))
   13522              :         return -1;
   13523              :       return 3069; /* *smaxv16sf3_mask */
   13524              : 
   13525              :     case 4:
   13526              :       if (!(
   13527              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13528              : (TARGET_AVX512F) && (
   13529              : #line 3358 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13530              : (TARGET_SSE
   13531              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))
   13532              :    && (32 == 64 || TARGET_AVX512VL)
   13533              :    && 1) && 
   13534              : #line 396 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13535              : (TARGET_AVX))))
   13536              :         return -1;
   13537              :       return 3076; /* *smaxv8sf3_mask */
   13538              : 
   13539              :     case 5:
   13540              :       if (!(
   13541              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13542              : (TARGET_AVX512F) && 
   13543              : #line 3358 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13544              : (TARGET_SSE
   13545              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))
   13546              :    && (16 == 64 || TARGET_AVX512VL)
   13547              :    && 1)))
   13548              :         return -1;
   13549              :       return 3080; /* *smaxv4sf3_mask */
   13550              : 
   13551              :     case 6:
   13552              :       if (!(
   13553              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13554              : (TARGET_AVX512F) && (
   13555              : #line 3358 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13556              : (TARGET_SSE
   13557              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))
   13558              :    && (64 == 64 || TARGET_AVX512VL)
   13559              :    && 1) && 
   13560              : #line 397 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13561              : (TARGET_AVX512F))))
   13562              :         return -1;
   13563              :       return 3085; /* *smaxv8df3_mask */
   13564              : 
   13565              :     case 7:
   13566              :       if (!(
   13567              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13568              : (TARGET_AVX512F) && (
   13569              : #line 3358 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13570              : (TARGET_SSE
   13571              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))
   13572              :    && (32 == 64 || TARGET_AVX512VL)
   13573              :    && 1) && 
   13574              : #line 397 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13575              : (TARGET_AVX))))
   13576              :         return -1;
   13577              :       return 3092; /* *smaxv4df3_mask */
   13578              : 
   13579              :     case 8:
   13580              :       if (!(
   13581              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13582              : (TARGET_AVX512F) && (
   13583              : #line 3358 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13584              : (TARGET_SSE
   13585              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))
   13586              :    && (16 == 64 || TARGET_AVX512VL)
   13587              :    && 1) && 
   13588              : #line 398 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13589              : (TARGET_SSE2))))
   13590              :         return -1;
   13591              :       return 3096; /* *smaxv2df3_mask */
   13592              : 
   13593              :     case 9:
   13594              :       if (!(
   13595              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13596              : (TARGET_AVX512F) && 
   13597              : #line 18151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13598              : (TARGET_AVX512F && !(MEM_P (operands[1]) && MEM_P (operands[2])))))
   13599              :         return -1;
   13600              :       return 7838; /* *avx512f_smaxv16si3_mask */
   13601              : 
   13602              :     case 10:
   13603              :       if (!(
   13604              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13605              : (TARGET_AVX512F) && (
   13606              : #line 18151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13607              : (TARGET_AVX512F && !(MEM_P (operands[1]) && MEM_P (operands[2]))) && 
   13608              : #line 496 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13609              : (TARGET_AVX512VL))))
   13610              :         return -1;
   13611              :       return 7846; /* *avx512f_smaxv8si3_mask */
   13612              : 
   13613              :     case 11:
   13614              :       if (nonimmediate_operand (operands[1], E_V4SImode)
   13615              :           && nonimmediate_operand (operands[2], E_V4SImode)
   13616              :           && (
   13617              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13618              : (TARGET_AVX512F) && (
   13619              : #line 18151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13620              : (TARGET_AVX512F && !(MEM_P (operands[1]) && MEM_P (operands[2]))) && 
   13621              : #line 496 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13622              : (TARGET_AVX512VL))))
   13623              :         return 7854; /* *avx512f_smaxv4si3_mask */
   13624              :       if (!vector_operand (operands[1], E_V4SImode)
   13625              :           || !vector_operand (operands[2], E_V4SImode)
   13626              :           || !(
   13627              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13628              : (TARGET_AVX512F) && 
   13629              : #line 18256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13630              : (TARGET_SSE4_1
   13631              :    && (16 == 64 || TARGET_AVX512VL)
   13632              :    && !(MEM_P (operands[1]) && MEM_P (operands[2])))))
   13633              :         return -1;
   13634              :       return 7938; /* *sse4_1_smaxv4si3_mask */
   13635              : 
   13636              :     case 12:
   13637              :       if (!(
   13638              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13639              : (TARGET_AVX512F) && 
   13640              : #line 18151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13641              : (TARGET_AVX512F && !(MEM_P (operands[1]) && MEM_P (operands[2])))))
   13642              :         return -1;
   13643              :       return 7862; /* *avx512f_smaxv8di3_mask */
   13644              : 
   13645              :     case 13:
   13646              :       if (!(
   13647              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13648              : (TARGET_AVX512F) && (
   13649              : #line 18151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13650              : (TARGET_AVX512F && !(MEM_P (operands[1]) && MEM_P (operands[2]))) && 
   13651              : #line 497 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13652              : (TARGET_AVX512VL))))
   13653              :         return -1;
   13654              :       return 7870; /* *avx512f_smaxv4di3_mask */
   13655              : 
   13656              :     case 14:
   13657              :       if (!(
   13658              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13659              : (TARGET_AVX512F) && (
   13660              : #line 18151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13661              : (TARGET_AVX512F && !(MEM_P (operands[1]) && MEM_P (operands[2]))) && 
   13662              : #line 497 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13663              : (TARGET_AVX512VL))))
   13664              :         return -1;
   13665              :       return 7878; /* *avx512f_smaxv2di3_mask */
   13666              : 
   13667              :     case 15:
   13668              :       if (!(
   13669              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13670              : (TARGET_AVX512F) && 
   13671              : #line 18163 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13672              : (TARGET_AVX512BW && !(MEM_P (operands[1]) && MEM_P (operands[2])))))
   13673              :         return -1;
   13674              :       return 7886; /* *avx512bw_smaxv64qi3_mask */
   13675              : 
   13676              :     case 16:
   13677              :       if (nonimmediate_operand (operands[1], E_V16QImode)
   13678              :           && nonimmediate_operand (operands[2], E_V16QImode)
   13679              :           && (
   13680              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13681              : (TARGET_AVX512F) && (
   13682              : #line 18163 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13683              : (TARGET_AVX512BW && !(MEM_P (operands[1]) && MEM_P (operands[2]))) && 
   13684              : #line 328 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13685              : (TARGET_AVX512VL))))
   13686              :         return 7894; /* *avx512bw_smaxv16qi3_mask */
   13687              :       if (!vector_operand (operands[1], E_V16QImode)
   13688              :           || !vector_operand (operands[2], E_V16QImode)
   13689              :           || !(
   13690              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13691              : (TARGET_AVX512F) && 
   13692              : #line 18256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13693              : (TARGET_SSE4_1
   13694              :    && (16 == 64 || TARGET_AVX512VL)
   13695              :    && !(MEM_P (operands[1]) && MEM_P (operands[2])))))
   13696              :         return -1;
   13697              :       return 7934; /* *sse4_1_smaxv16qi3_mask */
   13698              : 
   13699              :     case 17:
   13700              :       if (!(
   13701              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13702              : (TARGET_AVX512F) && (
   13703              : #line 18163 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13704              : (TARGET_AVX512BW && !(MEM_P (operands[1]) && MEM_P (operands[2]))) && 
   13705              : #line 328 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13706              : (TARGET_AVX512VL))))
   13707              :         return -1;
   13708              :       return 7902; /* *avx512bw_smaxv32qi3_mask */
   13709              : 
   13710              :     case 18:
   13711              :       if (!(
   13712              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13713              : (TARGET_AVX512F) && 
   13714              : #line 18163 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13715              : (TARGET_AVX512BW && !(MEM_P (operands[1]) && MEM_P (operands[2])))))
   13716              :         return -1;
   13717              :       return 7910; /* *avx512bw_smaxv32hi3_mask */
   13718              : 
   13719              :     case 19:
   13720              :       if (!(
   13721              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13722              : (TARGET_AVX512F) && (
   13723              : #line 18163 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13724              : (TARGET_AVX512BW && !(MEM_P (operands[1]) && MEM_P (operands[2]))) && 
   13725              : #line 329 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13726              : (TARGET_AVX512VL))))
   13727              :         return -1;
   13728              :       return 7918; /* *avx512bw_smaxv16hi3_mask */
   13729              : 
   13730              :     case 20:
   13731              :       if (!(
   13732              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13733              : (TARGET_AVX512F) && (
   13734              : #line 18163 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13735              : (TARGET_AVX512BW && !(MEM_P (operands[1]) && MEM_P (operands[2]))) && 
   13736              : #line 329 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13737              : (TARGET_AVX512VL))))
   13738              :         return -1;
   13739              :       return 7926; /* *avx512bw_smaxv8hi3_mask */
   13740              : 
   13741              :     case 21:
   13742              :       if (!(
   13743              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13744              : (TARGET_AVX512F) && 
   13745              : #line 33186 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13746              : (TARGET_AVX10_2)))
   13747              :         return -1;
   13748              :       return 10697; /* avx10_2_smaxbf16_v32bf_mask */
   13749              : 
   13750              :     case 22:
   13751              :       if (!(
   13752              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13753              : (TARGET_AVX512F) && 
   13754              : #line 33186 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13755              : (TARGET_AVX10_2)))
   13756              :         return -1;
   13757              :       return 10701; /* avx10_2_smaxbf16_v16bf_mask */
   13758              : 
   13759              :     case 23:
   13760              :       if (!(
   13761              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13762              : (TARGET_AVX512F) && 
   13763              : #line 33186 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13764              : (TARGET_AVX10_2)))
   13765              :         return -1;
   13766              :       return 10705; /* avx10_2_smaxbf16_v8bf_mask */
   13767              : 
   13768              :     case 24:
   13769              :       if (!(
   13770              : #line 3568 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13771              : (TARGET_SSE) && 
   13772              : #line 477 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13773              : (TARGET_AVX512FP16)))
   13774              :         return -1;
   13775              :       return 3174; /* *avx512fp16_vmsmaxv8hf3 */
   13776              : 
   13777              :     case 25:
   13778              :       if (!
   13779              : #line 3568 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13780              : (TARGET_SSE))
   13781              :         return -1;
   13782              :       return 3182; /* *sse_vmsmaxv4sf3 */
   13783              : 
   13784              :     case 26:
   13785              :       if (!(
   13786              : #line 3568 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13787              : (TARGET_SSE) && 
   13788              : #line 478 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13789              : (TARGET_SSE2)))
   13790              :         return -1;
   13791              :       return 3190; /* *sse2_vmsmaxv2df3 */
   13792              : 
   13793              :     default:
   13794              :       return -1;
   13795              :     }
   13796              : }
   13797              : 
   13798              :  int
   13799              : recog_212 (rtx x1 ATTRIBUTE_UNUSED,
   13800              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   13801              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   13802              : {
   13803              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   13804              :   rtx x2, x3;
   13805              :   int res ATTRIBUTE_UNUSED;
   13806              :   x2 = XEXP (x1, 1);
   13807              :   x3 = XVECEXP (x2, 0, 0);
   13808              :   operands[1] = x3;
   13809              :   switch (GET_MODE (operands[0]))
   13810              :     {
   13811              :     case E_V64QImode:
   13812              :       if (!register_operand (operands[0], E_V64QImode)
   13813              :           || GET_MODE (x2) != E_V64QImode
   13814              :           || !memory_operand (operands[1], E_V64QImode)
   13815              :           || !(
   13816              : #line 33751 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13817              : (TARGET_AVX10_2 && TARGET_MOVRS) && 
   13818              : #line 500 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13819              : (TARGET_AVX512BW)))
   13820              :         return -1;
   13821              :       return 11056; /* avx10_2_vmovrsbv64qi */
   13822              : 
   13823              :     case E_V32QImode:
   13824              :       if (!register_operand (operands[0], E_V32QImode)
   13825              :           || GET_MODE (x2) != E_V32QImode
   13826              :           || !memory_operand (operands[1], E_V32QImode)
   13827              :           || !(
   13828              : #line 33751 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13829              : (TARGET_AVX10_2 && TARGET_MOVRS) && 
   13830              : #line 501 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13831              : (TARGET_AVX512VL && TARGET_AVX512BW)))
   13832              :         return -1;
   13833              :       return 11058; /* avx10_2_vmovrsbv32qi */
   13834              : 
   13835              :     case E_V16QImode:
   13836              :       if (!register_operand (operands[0], E_V16QImode)
   13837              :           || GET_MODE (x2) != E_V16QImode
   13838              :           || !memory_operand (operands[1], E_V16QImode)
   13839              :           || !(
   13840              : #line 33751 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13841              : (TARGET_AVX10_2 && TARGET_MOVRS) && 
   13842              : #line 502 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13843              : (TARGET_AVX512VL && TARGET_AVX512BW)))
   13844              :         return -1;
   13845              :       return 11060; /* avx10_2_vmovrsbv16qi */
   13846              : 
   13847              :     case E_V32HImode:
   13848              :       if (!register_operand (operands[0], E_V32HImode)
   13849              :           || GET_MODE (x2) != E_V32HImode
   13850              :           || !memory_operand (operands[1], E_V32HImode)
   13851              :           || !(
   13852              : #line 33751 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13853              : (TARGET_AVX10_2 && TARGET_MOVRS) && 
   13854              : #line 503 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13855              : (TARGET_AVX512BW)))
   13856              :         return -1;
   13857              :       return 11062; /* avx10_2_vmovrswv32hi */
   13858              : 
   13859              :     case E_V16HImode:
   13860              :       if (!register_operand (operands[0], E_V16HImode)
   13861              :           || GET_MODE (x2) != E_V16HImode
   13862              :           || !memory_operand (operands[1], E_V16HImode)
   13863              :           || !(
   13864              : #line 33751 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13865              : (TARGET_AVX10_2 && TARGET_MOVRS) && 
   13866              : #line 504 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13867              : (TARGET_AVX512VL && TARGET_AVX512BW)))
   13868              :         return -1;
   13869              :       return 11064; /* avx10_2_vmovrswv16hi */
   13870              : 
   13871              :     case E_V8HImode:
   13872              :       if (!register_operand (operands[0], E_V8HImode)
   13873              :           || GET_MODE (x2) != E_V8HImode
   13874              :           || !memory_operand (operands[1], E_V8HImode)
   13875              :           || !(
   13876              : #line 33751 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13877              : (TARGET_AVX10_2 && TARGET_MOVRS) && 
   13878              : #line 505 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13879              : (TARGET_AVX512VL && TARGET_AVX512BW)))
   13880              :         return -1;
   13881              :       return 11066; /* avx10_2_vmovrswv8hi */
   13882              : 
   13883              :     case E_V16SImode:
   13884              :       if (!register_operand (operands[0], E_V16SImode)
   13885              :           || GET_MODE (x2) != E_V16SImode
   13886              :           || !memory_operand (operands[1], E_V16SImode)
   13887              :           || !
   13888              : #line 33751 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13889              : (TARGET_AVX10_2 && TARGET_MOVRS))
   13890              :         return -1;
   13891              :       return 11068; /* avx10_2_vmovrsdv16si */
   13892              : 
   13893              :     case E_V8SImode:
   13894              :       if (!register_operand (operands[0], E_V8SImode)
   13895              :           || GET_MODE (x2) != E_V8SImode
   13896              :           || !memory_operand (operands[1], E_V8SImode)
   13897              :           || !(
   13898              : #line 33751 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13899              : (TARGET_AVX10_2 && TARGET_MOVRS) && 
   13900              : #line 506 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13901              : (TARGET_AVX512VL)))
   13902              :         return -1;
   13903              :       return 11070; /* avx10_2_vmovrsdv8si */
   13904              : 
   13905              :     case E_V4SImode:
   13906              :       if (!register_operand (operands[0], E_V4SImode)
   13907              :           || GET_MODE (x2) != E_V4SImode
   13908              :           || !memory_operand (operands[1], E_V4SImode)
   13909              :           || !(
   13910              : #line 33751 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13911              : (TARGET_AVX10_2 && TARGET_MOVRS) && 
   13912              : #line 506 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13913              : (TARGET_AVX512VL)))
   13914              :         return -1;
   13915              :       return 11072; /* avx10_2_vmovrsdv4si */
   13916              : 
   13917              :     case E_V8DImode:
   13918              :       if (!register_operand (operands[0], E_V8DImode)
   13919              :           || GET_MODE (x2) != E_V8DImode
   13920              :           || !memory_operand (operands[1], E_V8DImode)
   13921              :           || !
   13922              : #line 33751 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13923              : (TARGET_AVX10_2 && TARGET_MOVRS))
   13924              :         return -1;
   13925              :       return 11074; /* avx10_2_vmovrsqv8di */
   13926              : 
   13927              :     case E_V4DImode:
   13928              :       if (!register_operand (operands[0], E_V4DImode)
   13929              :           || GET_MODE (x2) != E_V4DImode
   13930              :           || !memory_operand (operands[1], E_V4DImode)
   13931              :           || !(
   13932              : #line 33751 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13933              : (TARGET_AVX10_2 && TARGET_MOVRS) && 
   13934              : #line 507 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13935              : (TARGET_AVX512VL)))
   13936              :         return -1;
   13937              :       return 11076; /* avx10_2_vmovrsqv4di */
   13938              : 
   13939              :     case E_V2DImode:
   13940              :       if (!register_operand (operands[0], E_V2DImode)
   13941              :           || GET_MODE (x2) != E_V2DImode
   13942              :           || !memory_operand (operands[1], E_V2DImode)
   13943              :           || !(
   13944              : #line 33751 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13945              : (TARGET_AVX10_2 && TARGET_MOVRS) && 
   13946              : #line 507 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13947              : (TARGET_AVX512VL)))
   13948              :         return -1;
   13949              :       return 11078; /* avx10_2_vmovrsqv2di */
   13950              : 
   13951              :     default:
   13952              :       return -1;
   13953              :     }
   13954              : }
   13955              : 
   13956              :  int
   13957              : recog_222 (rtx x1 ATTRIBUTE_UNUSED,
   13958              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   13959              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   13960              : {
   13961              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   13962              :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
   13963              :   rtx x10, x11, x12, x13, x14;
   13964              :   int res ATTRIBUTE_UNUSED;
   13965              :   x2 = XEXP (x1, 1);
   13966              :   x3 = XVECEXP (x2, 0, 0);
   13967              :   x4 = XEXP (x3, 2);
   13968              :   if (x4 != const_int_rtx[MAX_SAVED_CONST_INT + 1])
   13969              :     return -1;
   13970              :   x5 = XEXP (x3, 0);
   13971              :   x6 = XEXP (x5, 2);
   13972              :   if (!register_operand (x6, E_QImode))
   13973              :     return -1;
   13974              :   x7 = XVECEXP (x2, 0, 1);
   13975              :   if (!const_4_or_8_to_11_operand (x7, E_SImode))
   13976              :     return -1;
   13977              :   x8 = XEXP (x5, 0);
   13978              :   x9 = XEXP (x8, 0);
   13979              :   switch (GET_CODE (x9))
   13980              :     {
   13981              :     case REG:
   13982              :     case SUBREG:
   13983              :     case MEM:
   13984              :       operands[1] = x9;
   13985              :       x10 = XEXP (x8, 1);
   13986              :       operands[2] = x10;
   13987              :       x11 = XEXP (x8, 2);
   13988              :       switch (GET_CODE (x11))
   13989              :         {
   13990              :         case REG:
   13991              :         case SUBREG:
   13992              :         case MEM:
   13993              :           operands[3] = x11;
   13994              :           switch (pattern1527 (x2))
   13995              :             {
   13996              :             case 0:
   13997              :               if (pattern1696 (x2, 
   13998              : E_V8HFmode) != 0)
   13999              :                 return -1;
   14000              :               if (nonimmediate_operand (operands[1], E_V8HFmode)
   14001              :                   && register_operand (operands[3], E_V8HFmode))
   14002              :                 {
   14003              :                   x12 = XEXP (x5, 1);
   14004              :                   if (rtx_equal_p (x12, operands[1]))
   14005              :                     {
   14006              :                       x13 = XEXP (x3, 1);
   14007              :                       if (rtx_equal_p (x13, operands[1])
   14008              :                           && (
   14009              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14010              : (TARGET_AVX512F) && (
   14011              : #line 7075 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14012              : (TARGET_AVX512F) && 
   14013              : #line 477 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14014              : (TARGET_AVX512FP16))))
   14015              :                         return 4289; /* avx512f_vmfmadd_v8hf_mask_round */
   14016              :                     }
   14017              :                 }
   14018              :               if (!register_operand (operands[1], E_V8HFmode)
   14019              :                   || !nonimmediate_operand (operands[3], E_V8HFmode))
   14020              :                 return -1;
   14021              :               x12 = XEXP (x5, 1);
   14022              :               if (!rtx_equal_p (x12, operands[3]))
   14023              :                 return -1;
   14024              :               x13 = XEXP (x3, 1);
   14025              :               if (!rtx_equal_p (x13, operands[3])
   14026              :                   || !(
   14027              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14028              : (TARGET_AVX512F) && (
   14029              : #line 7095 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14030              : (TARGET_AVX512F) && 
   14031              : #line 477 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14032              : (TARGET_AVX512FP16))))
   14033              :                 return -1;
   14034              :               return 4295; /* avx512f_vmfmadd_v8hf_mask3_round */
   14035              : 
   14036              :             case 1:
   14037              :               if (pattern1696 (x2, 
   14038              : E_V4SFmode) != 0)
   14039              :                 return -1;
   14040              :               if (nonimmediate_operand (operands[1], E_V4SFmode)
   14041              :                   && register_operand (operands[3], E_V4SFmode))
   14042              :                 {
   14043              :                   x12 = XEXP (x5, 1);
   14044              :                   if (rtx_equal_p (x12, operands[1]))
   14045              :                     {
   14046              :                       x13 = XEXP (x3, 1);
   14047              :                       if (rtx_equal_p (x13, operands[1])
   14048              :                           && 
   14049              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14050              : (TARGET_AVX512F))
   14051              :                         return 4291; /* avx512f_vmfmadd_v4sf_mask_round */
   14052              :                     }
   14053              :                 }
   14054              :               if (!register_operand (operands[1], E_V4SFmode)
   14055              :                   || !nonimmediate_operand (operands[3], E_V4SFmode))
   14056              :                 return -1;
   14057              :               x12 = XEXP (x5, 1);
   14058              :               if (!rtx_equal_p (x12, operands[3]))
   14059              :                 return -1;
   14060              :               x13 = XEXP (x3, 1);
   14061              :               if (!rtx_equal_p (x13, operands[3])
   14062              :                   || !
   14063              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14064              : (TARGET_AVX512F))
   14065              :                 return -1;
   14066              :               return 4297; /* avx512f_vmfmadd_v4sf_mask3_round */
   14067              : 
   14068              :             case 2:
   14069              :               if (pattern1696 (x2, 
   14070              : E_V2DFmode) != 0)
   14071              :                 return -1;
   14072              :               if (nonimmediate_operand (operands[1], E_V2DFmode)
   14073              :                   && register_operand (operands[3], E_V2DFmode))
   14074              :                 {
   14075              :                   x12 = XEXP (x5, 1);
   14076              :                   if (rtx_equal_p (x12, operands[1]))
   14077              :                     {
   14078              :                       x13 = XEXP (x3, 1);
   14079              :                       if (rtx_equal_p (x13, operands[1])
   14080              :                           && (
   14081              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14082              : (TARGET_AVX512F) && (
   14083              : #line 7075 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14084              : (TARGET_AVX512F) && 
   14085              : #line 478 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14086              : (TARGET_SSE2))))
   14087              :                         return 4293; /* avx512f_vmfmadd_v2df_mask_round */
   14088              :                     }
   14089              :                 }
   14090              :               if (!register_operand (operands[1], E_V2DFmode)
   14091              :                   || !nonimmediate_operand (operands[3], E_V2DFmode))
   14092              :                 return -1;
   14093              :               x12 = XEXP (x5, 1);
   14094              :               if (!rtx_equal_p (x12, operands[3]))
   14095              :                 return -1;
   14096              :               x13 = XEXP (x3, 1);
   14097              :               if (!rtx_equal_p (x13, operands[3])
   14098              :                   || !(
   14099              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14100              : (TARGET_AVX512F) && (
   14101              : #line 7095 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14102              : (TARGET_AVX512F) && 
   14103              : #line 478 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14104              : (TARGET_SSE2))))
   14105              :                 return -1;
   14106              :               return 4299; /* avx512f_vmfmadd_v2df_mask3_round */
   14107              : 
   14108              :             case 3:
   14109              :               if (pattern1757 (x2, 
   14110              : E_V8HFmode) != 0
   14111              :                   || !(
   14112              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14113              : (TARGET_AVX512F) && (
   14114              : #line 7127 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14115              : (TARGET_AVX512F) && 
   14116              : #line 477 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14117              : (TARGET_AVX512FP16))))
   14118              :                 return -1;
   14119              :               return 4301; /* avx512f_vmfmadd_v8hf_maskz_1_round */
   14120              : 
   14121              :             case 4:
   14122              :               if (pattern1757 (x2, 
   14123              : E_V4SFmode) != 0
   14124              :                   || !
   14125              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14126              : (TARGET_AVX512F))
   14127              :                 return -1;
   14128              :               return 4303; /* avx512f_vmfmadd_v4sf_maskz_1_round */
   14129              : 
   14130              :             case 5:
   14131              :               if (pattern1757 (x2, 
   14132              : E_V2DFmode) != 0
   14133              :                   || !(
   14134              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14135              : (TARGET_AVX512F) && (
   14136              : #line 7127 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14137              : (TARGET_AVX512F) && 
   14138              : #line 478 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14139              : (TARGET_SSE2))))
   14140              :                 return -1;
   14141              :               return 4305; /* avx512f_vmfmadd_v2df_maskz_1_round */
   14142              : 
   14143              :             default:
   14144              :               return -1;
   14145              :             }
   14146              : 
   14147              :         case NEG:
   14148              :           x14 = XEXP (x11, 0);
   14149              :           operands[3] = x14;
   14150              :           switch (pattern1527 (x2))
   14151              :             {
   14152              :             case 0:
   14153              :               if (pattern1697 (x2, 
   14154              : E_V8HFmode) != 0)
   14155              :                 return -1;
   14156              :               if (nonimmediate_operand (operands[1], E_V8HFmode)
   14157              :                   && register_operand (operands[3], E_V8HFmode))
   14158              :                 {
   14159              :                   x12 = XEXP (x5, 1);
   14160              :                   if (rtx_equal_p (x12, operands[1]))
   14161              :                     {
   14162              :                       x13 = XEXP (x3, 1);
   14163              :                       if (rtx_equal_p (x13, operands[1])
   14164              :                           && (
   14165              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14166              : (TARGET_AVX512F) && (
   14167              : #line 7148 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14168              : (TARGET_AVX512F) && 
   14169              : #line 477 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14170              : (TARGET_AVX512FP16))))
   14171              :                         return 4307; /* *avx512f_vmfmsub_v8hf_mask_round */
   14172              :                     }
   14173              :                 }
   14174              :               if (!register_operand (operands[1], E_V8HFmode)
   14175              :                   || !nonimmediate_operand (operands[3], E_V8HFmode))
   14176              :                 return -1;
   14177              :               x12 = XEXP (x5, 1);
   14178              :               if (!rtx_equal_p (x12, operands[3]))
   14179              :                 return -1;
   14180              :               x13 = XEXP (x3, 1);
   14181              :               if (!rtx_equal_p (x13, operands[3])
   14182              :                   || !(
   14183              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14184              : (TARGET_AVX512F) && (
   14185              : #line 7169 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14186              : (TARGET_AVX512F) && 
   14187              : #line 477 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14188              : (TARGET_AVX512FP16))))
   14189              :                 return -1;
   14190              :               return 4313; /* avx512f_vmfmsub_v8hf_mask3_round */
   14191              : 
   14192              :             case 1:
   14193              :               if (pattern1697 (x2, 
   14194              : E_V4SFmode) != 0)
   14195              :                 return -1;
   14196              :               if (nonimmediate_operand (operands[1], E_V4SFmode)
   14197              :                   && register_operand (operands[3], E_V4SFmode))
   14198              :                 {
   14199              :                   x12 = XEXP (x5, 1);
   14200              :                   if (rtx_equal_p (x12, operands[1]))
   14201              :                     {
   14202              :                       x13 = XEXP (x3, 1);
   14203              :                       if (rtx_equal_p (x13, operands[1])
   14204              :                           && 
   14205              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14206              : (TARGET_AVX512F))
   14207              :                         return 4309; /* *avx512f_vmfmsub_v4sf_mask_round */
   14208              :                     }
   14209              :                 }
   14210              :               if (!register_operand (operands[1], E_V4SFmode)
   14211              :                   || !nonimmediate_operand (operands[3], E_V4SFmode))
   14212              :                 return -1;
   14213              :               x12 = XEXP (x5, 1);
   14214              :               if (!rtx_equal_p (x12, operands[3]))
   14215              :                 return -1;
   14216              :               x13 = XEXP (x3, 1);
   14217              :               if (!rtx_equal_p (x13, operands[3])
   14218              :                   || !
   14219              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14220              : (TARGET_AVX512F))
   14221              :                 return -1;
   14222              :               return 4315; /* avx512f_vmfmsub_v4sf_mask3_round */
   14223              : 
   14224              :             case 2:
   14225              :               if (pattern1697 (x2, 
   14226              : E_V2DFmode) != 0)
   14227              :                 return -1;
   14228              :               if (nonimmediate_operand (operands[1], E_V2DFmode)
   14229              :                   && register_operand (operands[3], E_V2DFmode))
   14230              :                 {
   14231              :                   x12 = XEXP (x5, 1);
   14232              :                   if (rtx_equal_p (x12, operands[1]))
   14233              :                     {
   14234              :                       x13 = XEXP (x3, 1);
   14235              :                       if (rtx_equal_p (x13, operands[1])
   14236              :                           && (
   14237              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14238              : (TARGET_AVX512F) && (
   14239              : #line 7148 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14240              : (TARGET_AVX512F) && 
   14241              : #line 478 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14242              : (TARGET_SSE2))))
   14243              :                         return 4311; /* *avx512f_vmfmsub_v2df_mask_round */
   14244              :                     }
   14245              :                 }
   14246              :               if (!register_operand (operands[1], E_V2DFmode)
   14247              :                   || !nonimmediate_operand (operands[3], E_V2DFmode))
   14248              :                 return -1;
   14249              :               x12 = XEXP (x5, 1);
   14250              :               if (!rtx_equal_p (x12, operands[3]))
   14251              :                 return -1;
   14252              :               x13 = XEXP (x3, 1);
   14253              :               if (!rtx_equal_p (x13, operands[3])
   14254              :                   || !(
   14255              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14256              : (TARGET_AVX512F) && (
   14257              : #line 7169 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14258              : (TARGET_AVX512F) && 
   14259              : #line 478 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14260              : (TARGET_SSE2))))
   14261              :                 return -1;
   14262              :               return 4317; /* avx512f_vmfmsub_v2df_mask3_round */
   14263              : 
   14264              :             case 3:
   14265              :               if (pattern1758 (x2, 
   14266              : E_V8HFmode) != 0
   14267              :                   || !(
   14268              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14269              : (TARGET_AVX512F) && (
   14270              : #line 7188 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14271              : (TARGET_AVX512F) && 
   14272              : #line 477 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14273              : (TARGET_AVX512FP16))))
   14274              :                 return -1;
   14275              :               return 4319; /* *avx512f_vmfmsub_v8hf_maskz_1_round */
   14276              : 
   14277              :             case 4:
   14278              :               if (pattern1758 (x2, 
   14279              : E_V4SFmode) != 0
   14280              :                   || !
   14281              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14282              : (TARGET_AVX512F))
   14283              :                 return -1;
   14284              :               return 4321; /* *avx512f_vmfmsub_v4sf_maskz_1_round */
   14285              : 
   14286              :             case 5:
   14287              :               if (pattern1758 (x2, 
   14288              : E_V2DFmode) != 0
   14289              :                   || !(
   14290              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14291              : (TARGET_AVX512F) && (
   14292              : #line 7188 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14293              : (TARGET_AVX512F) && 
   14294              : #line 478 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14295              : (TARGET_SSE2))))
   14296              :                 return -1;
   14297              :               return 4323; /* *avx512f_vmfmsub_v2df_maskz_1_round */
   14298              : 
   14299              :             default:
   14300              :               return -1;
   14301              :             }
   14302              : 
   14303              :         default:
   14304              :           return -1;
   14305              :         }
   14306              : 
   14307              :     case NEG:
   14308              :       x11 = XEXP (x8, 2);
   14309              :       switch (GET_CODE (x11))
   14310              :         {
   14311              :         case REG:
   14312              :         case SUBREG:
   14313              :         case MEM:
   14314              :           operands[3] = x11;
   14315              :           switch (pattern1410 (x2))
   14316              :             {
   14317              :             case 0:
   14318              :               x10 = XEXP (x8, 1);
   14319              :               operands[2] = x10;
   14320              :               if (pattern1839 (x3, 
   14321              : E_V8HFmode) == 0
   14322              :                   && (
   14323              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14324              : (TARGET_AVX512F) && (
   14325              : #line 7209 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14326              : (TARGET_AVX512F) && 
   14327              : #line 477 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14328              : (TARGET_AVX512FP16))))
   14329              :                 return 4325; /* avx512f_vmfnmadd_v8hf_mask_round */
   14330              :               operands[1] = x10;
   14331              :               if (pattern1840 (x3, 
   14332              : E_V8HFmode) != 0
   14333              :                   || !(
   14334              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14335              : (TARGET_AVX512F) && (
   14336              : #line 7230 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14337              : (TARGET_AVX512F) && 
   14338              : #line 477 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14339              : (TARGET_AVX512FP16))))
   14340              :                 return -1;
   14341              :               return 4331; /* avx512f_vmfnmadd_v8hf_mask3_round */
   14342              : 
   14343              :             case 1:
   14344              :               x10 = XEXP (x8, 1);
   14345              :               operands[2] = x10;
   14346              :               if (pattern1839 (x3, 
   14347              : E_V4SFmode) == 0
   14348              :                   && 
   14349              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14350              : (TARGET_AVX512F))
   14351              :                 return 4327; /* avx512f_vmfnmadd_v4sf_mask_round */
   14352              :               operands[1] = x10;
   14353              :               if (pattern1840 (x3, 
   14354              : E_V4SFmode) != 0
   14355              :                   || !
   14356              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14357              : (TARGET_AVX512F))
   14358              :                 return -1;
   14359              :               return 4333; /* avx512f_vmfnmadd_v4sf_mask3_round */
   14360              : 
   14361              :             case 2:
   14362              :               x10 = XEXP (x8, 1);
   14363              :               operands[2] = x10;
   14364              :               if (pattern1839 (x3, 
   14365              : E_V2DFmode) == 0
   14366              :                   && (
   14367              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14368              : (TARGET_AVX512F) && (
   14369              : #line 7209 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14370              : (TARGET_AVX512F) && 
   14371              : #line 478 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14372              : (TARGET_SSE2))))
   14373              :                 return 4329; /* avx512f_vmfnmadd_v2df_mask_round */
   14374              :               operands[1] = x10;
   14375              :               if (pattern1840 (x3, 
   14376              : E_V2DFmode) != 0
   14377              :                   || !(
   14378              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14379              : (TARGET_AVX512F) && (
   14380              : #line 7230 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14381              : (TARGET_AVX512F) && 
   14382              : #line 478 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14383              : (TARGET_SSE2))))
   14384              :                 return -1;
   14385              :               return 4335; /* avx512f_vmfnmadd_v2df_mask3_round */
   14386              : 
   14387              :             case 3:
   14388              :               if (pattern1759 (x2, 
   14389              : E_V8HFmode) != 0
   14390              :                   || !(
   14391              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14392              : (TARGET_AVX512F) && (
   14393              : #line 7263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14394              : (TARGET_AVX512F) && 
   14395              : #line 477 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14396              : (TARGET_AVX512FP16))))
   14397              :                 return -1;
   14398              :               return 4337; /* avx512f_vmfnmadd_v8hf_maskz_1_round */
   14399              : 
   14400              :             case 4:
   14401              :               if (pattern1759 (x2, 
   14402              : E_V4SFmode) != 0
   14403              :                   || !
   14404              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14405              : (TARGET_AVX512F))
   14406              :                 return -1;
   14407              :               return 4339; /* avx512f_vmfnmadd_v4sf_maskz_1_round */
   14408              : 
   14409              :             case 5:
   14410              :               if (pattern1759 (x2, 
   14411              : E_V2DFmode) != 0
   14412              :                   || !(
   14413              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14414              : (TARGET_AVX512F) && (
   14415              : #line 7263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14416              : (TARGET_AVX512F) && 
   14417              : #line 478 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14418              : (TARGET_SSE2))))
   14419              :                 return -1;
   14420              :               return 4341; /* avx512f_vmfnmadd_v2df_maskz_1_round */
   14421              : 
   14422              :             default:
   14423              :               return -1;
   14424              :             }
   14425              : 
   14426              :         case NEG:
   14427              :           x14 = XEXP (x11, 0);
   14428              :           operands[3] = x14;
   14429              :           switch (pattern1410 (x2))
   14430              :             {
   14431              :             case 0:
   14432              :               x10 = XEXP (x8, 1);
   14433              :               operands[2] = x10;
   14434              :               if (pattern1841 (x3, 
   14435              : E_V8HFmode) == 0
   14436              :                   && (
   14437              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14438              : (TARGET_AVX512F) && (
   14439              : #line 7285 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14440              : (TARGET_AVX512F) && 
   14441              : #line 477 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14442              : (TARGET_AVX512FP16))))
   14443              :                 return 4343; /* *avx512f_vmfnmsub_v8hf_mask_round */
   14444              :               operands[1] = x10;
   14445              :               if (pattern1842 (x3, 
   14446              : E_V8HFmode) != 0
   14447              :                   || !(
   14448              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14449              : (TARGET_AVX512F) && (
   14450              : #line 7307 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14451              : (TARGET_AVX512F) && 
   14452              : #line 477 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14453              : (TARGET_AVX512FP16))))
   14454              :                 return -1;
   14455              :               return 4349; /* *avx512f_vmfnmsub_v8hf_mask3_round */
   14456              : 
   14457              :             case 1:
   14458              :               x10 = XEXP (x8, 1);
   14459              :               operands[2] = x10;
   14460              :               if (pattern1841 (x3, 
   14461              : E_V4SFmode) == 0
   14462              :                   && 
   14463              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14464              : (TARGET_AVX512F))
   14465              :                 return 4345; /* *avx512f_vmfnmsub_v4sf_mask_round */
   14466              :               operands[1] = x10;
   14467              :               if (pattern1842 (x3, 
   14468              : E_V4SFmode) != 0
   14469              :                   || !
   14470              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14471              : (TARGET_AVX512F))
   14472              :                 return -1;
   14473              :               return 4351; /* *avx512f_vmfnmsub_v4sf_mask3_round */
   14474              : 
   14475              :             case 2:
   14476              :               x10 = XEXP (x8, 1);
   14477              :               operands[2] = x10;
   14478              :               if (pattern1841 (x3, 
   14479              : E_V2DFmode) == 0
   14480              :                   && (
   14481              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14482              : (TARGET_AVX512F) && (
   14483              : #line 7285 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14484              : (TARGET_AVX512F) && 
   14485              : #line 478 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14486              : (TARGET_SSE2))))
   14487              :                 return 4347; /* *avx512f_vmfnmsub_v2df_mask_round */
   14488              :               operands[1] = x10;
   14489              :               if (pattern1842 (x3, 
   14490              : E_V2DFmode) != 0
   14491              :                   || !(
   14492              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14493              : (TARGET_AVX512F) && (
   14494              : #line 7307 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14495              : (TARGET_AVX512F) && 
   14496              : #line 478 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14497              : (TARGET_SSE2))))
   14498              :                 return -1;
   14499              :               return 4353; /* *avx512f_vmfnmsub_v2df_mask3_round */
   14500              : 
   14501              :             case 3:
   14502              :               if (pattern1760 (x2, 
   14503              : E_V8HFmode) != 0
   14504              :                   || !(
   14505              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14506              : (TARGET_AVX512F) && (
   14507              : #line 7327 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14508              : (TARGET_AVX512F) && 
   14509              : #line 477 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14510              : (TARGET_AVX512FP16))))
   14511              :                 return -1;
   14512              :               return 4355; /* *avx512f_vmfnmsub_v8hf_maskz_1_round */
   14513              : 
   14514              :             case 4:
   14515              :               if (pattern1760 (x2, 
   14516              : E_V4SFmode) != 0
   14517              :                   || !
   14518              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14519              : (TARGET_AVX512F))
   14520              :                 return -1;
   14521              :               return 4357; /* *avx512f_vmfnmsub_v4sf_maskz_1_round */
   14522              : 
   14523              :             case 5:
   14524              :               if (pattern1760 (x2, 
   14525              : E_V2DFmode) != 0
   14526              :                   || !(
   14527              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14528              : (TARGET_AVX512F) && (
   14529              : #line 7327 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14530              : (TARGET_AVX512F) && 
   14531              : #line 478 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14532              : (TARGET_SSE2))))
   14533              :                 return -1;
   14534              :               return 4359; /* *avx512f_vmfnmsub_v2df_maskz_1_round */
   14535              : 
   14536              :             default:
   14537              :               return -1;
   14538              :             }
   14539              : 
   14540              :         default:
   14541              :           return -1;
   14542              :         }
   14543              : 
   14544              :     default:
   14545              :       return -1;
   14546              :     }
   14547              : }
   14548              : 
   14549              :  int
   14550              : recog_233 (rtx x1 ATTRIBUTE_UNUSED,
   14551              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   14552              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   14553              : {
   14554              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   14555              :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
   14556              :   int res ATTRIBUTE_UNUSED;
   14557              :   x2 = XEXP (x1, 1);
   14558              :   x3 = XVECEXP (x2, 0, 0);
   14559              :   switch (XVECLEN (x3, 0))
   14560              :     {
   14561              :     case 2:
   14562              :       x4 = XVECEXP (x3, 0, 0);
   14563              :       operands[1] = x4;
   14564              :       x5 = XVECEXP (x3, 0, 1);
   14565              :       operands[2] = x5;
   14566              :       x6 = XVECEXP (x2, 0, 1);
   14567              :       operands[3] = x6;
   14568              :       switch (XINT (x3, 1))
   14569              :         {
   14570              :         case 64:
   14571              :           switch (pattern1146 (x2))
   14572              :             {
   14573              :             case 0:
   14574              :               if (!(
   14575              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14576              : (TARGET_AVX512F) && (
   14577              : #line 3493 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14578              : (TARGET_SSE
   14579              :    && 1
   14580              :    && (V32HFmode == V16SFmode
   14581              :                                                                               || V32HFmode == V8DFmode
   14582              :                                                                               || V32HFmode == V8DImode
   14583              :                                                                               || V32HFmode == V16SImode
   14584              :                                                                               || V32HFmode == V32HFmode)) && 
   14585              : #line 393 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14586              : (TARGET_AVX512FP16))))
   14587              :                 return -1;
   14588              :               return 3121; /* ieee_maxv32hf3_round */
   14589              : 
   14590              :             case 1:
   14591              :               if (!(
   14592              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14593              : (TARGET_AVX512F) && (
   14594              : #line 3493 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14595              : (TARGET_SSE
   14596              :    && 1
   14597              :    && (V16SFmode == V16SFmode
   14598              :                                                                               || V16SFmode == V8DFmode
   14599              :                                                                               || V16SFmode == V8DImode
   14600              :                                                                               || V16SFmode == V16SImode
   14601              :                                                                               || V16SFmode == V32HFmode)) && 
   14602              : #line 396 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14603              : (TARGET_AVX512F))))
   14604              :                 return -1;
   14605              :               return 3137; /* ieee_maxv16sf3_round */
   14606              : 
   14607              :             case 2:
   14608              :               if (!(
   14609              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14610              : (TARGET_AVX512F) && (
   14611              : #line 3493 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14612              : (TARGET_SSE
   14613              :    && 1
   14614              :    && (V8DFmode == V16SFmode
   14615              :                                                                               || V8DFmode == V8DFmode
   14616              :                                                                               || V8DFmode == V8DImode
   14617              :                                                                               || V8DFmode == V16SImode
   14618              :                                                                               || V8DFmode == V32HFmode)) && 
   14619              : #line 397 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14620              : (TARGET_AVX512F))))
   14621              :                 return -1;
   14622              :               return 3153; /* ieee_maxv8df3_round */
   14623              : 
   14624              :             default:
   14625              :               return -1;
   14626              :             }
   14627              : 
   14628              :         case 63:
   14629              :           switch (pattern1146 (x2))
   14630              :             {
   14631              :             case 0:
   14632              :               if (!(
   14633              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14634              : (TARGET_AVX512F) && (
   14635              : #line 3493 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14636              : (TARGET_SSE
   14637              :    && 1
   14638              :    && (V32HFmode == V16SFmode
   14639              :                                                                               || V32HFmode == V8DFmode
   14640              :                                                                               || V32HFmode == V8DImode
   14641              :                                                                               || V32HFmode == V16SImode
   14642              :                                                                               || V32HFmode == V32HFmode)) && 
   14643              : #line 393 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14644              : (TARGET_AVX512FP16))))
   14645              :                 return -1;
   14646              :               return 3125; /* ieee_minv32hf3_round */
   14647              : 
   14648              :             case 1:
   14649              :               if (!(
   14650              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14651              : (TARGET_AVX512F) && (
   14652              : #line 3493 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14653              : (TARGET_SSE
   14654              :    && 1
   14655              :    && (V16SFmode == V16SFmode
   14656              :                                                                               || V16SFmode == V8DFmode
   14657              :                                                                               || V16SFmode == V8DImode
   14658              :                                                                               || V16SFmode == V16SImode
   14659              :                                                                               || V16SFmode == V32HFmode)) && 
   14660              : #line 396 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14661              : (TARGET_AVX512F))))
   14662              :                 return -1;
   14663              :               return 3141; /* ieee_minv16sf3_round */
   14664              : 
   14665              :             case 2:
   14666              :               if (!(
   14667              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14668              : (TARGET_AVX512F) && (
   14669              : #line 3493 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14670              : (TARGET_SSE
   14671              :    && 1
   14672              :    && (V8DFmode == V16SFmode
   14673              :                                                                               || V8DFmode == V8DFmode
   14674              :                                                                               || V8DFmode == V8DImode
   14675              :                                                                               || V8DFmode == V16SImode
   14676              :                                                                               || V8DFmode == V32HFmode)) && 
   14677              : #line 397 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14678              : (TARGET_AVX512F))))
   14679              :                 return -1;
   14680              :               return 3157; /* ieee_minv8df3_round */
   14681              : 
   14682              :             default:
   14683              :               return -1;
   14684              :             }
   14685              : 
   14686              :         case 193:
   14687              :           if (!const_0_to_255_operand (operands[2], E_SImode)
   14688              :               || !const48_operand (operands[3], E_SImode))
   14689              :             return -1;
   14690              :           switch (GET_MODE (operands[0]))
   14691              :             {
   14692              :             case E_V32HFmode:
   14693              :               if (pattern1234 (x2, 
   14694              : E_V32HFmode) != 0
   14695              :                   || !(
   14696              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14697              : (TARGET_AVX512F) && (
   14698              : #line 4293 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14699              : (TARGET_AVX512DQ || (VALID_AVX512FP16_REG_MODE (V32HFmode))) && 
   14700              : #line 514 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14701              : (TARGET_AVX512FP16))))
   14702              :                 return -1;
   14703              :               return 3237; /* *reducepv32hf_round */
   14704              : 
   14705              :             case E_V16HFmode:
   14706              :               if (pattern1234 (x2, 
   14707              : E_V16HFmode) != 0
   14708              :                   || !(
   14709              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14710              : (TARGET_AVX512F) && (
   14711              : #line 4293 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14712              : (TARGET_AVX512DQ || (VALID_AVX512FP16_REG_MODE (V16HFmode))) && 
   14713              : #line 515 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14714              : (TARGET_AVX512FP16 && TARGET_AVX512VL))))
   14715              :                 return -1;
   14716              :               return 3241; /* *reducepv16hf_round */
   14717              : 
   14718              :             case E_V8HFmode:
   14719              :               if (pattern1234 (x2, 
   14720              : E_V8HFmode) != 0
   14721              :                   || !(
   14722              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14723              : (TARGET_AVX512F) && (
   14724              : #line 4293 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14725              : (TARGET_AVX512DQ || (VALID_AVX512FP16_REG_MODE (V8HFmode))) && 
   14726              : #line 516 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14727              : (TARGET_AVX512FP16 && TARGET_AVX512VL))))
   14728              :                 return -1;
   14729              :               return 3245; /* *reducepv8hf_round */
   14730              : 
   14731              :             case E_V16SFmode:
   14732              :               if (pattern1234 (x2, 
   14733              : E_V16SFmode) != 0
   14734              :                   || !(
   14735              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14736              : (TARGET_AVX512F) && 
   14737              : #line 4293 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14738              : (TARGET_AVX512DQ || (VALID_AVX512FP16_REG_MODE (V16SFmode)))))
   14739              :                 return -1;
   14740              :               return 3249; /* *reducepv16sf_round */
   14741              : 
   14742              :             case E_V8SFmode:
   14743              :               if (pattern1234 (x2, 
   14744              : E_V8SFmode) != 0
   14745              :                   || !(
   14746              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14747              : (TARGET_AVX512F) && (
   14748              : #line 4293 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14749              : (TARGET_AVX512DQ || (VALID_AVX512FP16_REG_MODE (V8SFmode))) && 
   14750              : #line 517 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14751              : (TARGET_AVX512VL))))
   14752              :                 return -1;
   14753              :               return 3253; /* *reducepv8sf_round */
   14754              : 
   14755              :             case E_V4SFmode:
   14756              :               if (pattern1234 (x2, 
   14757              : E_V4SFmode) != 0
   14758              :                   || !(
   14759              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14760              : (TARGET_AVX512F) && (
   14761              : #line 4293 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14762              : (TARGET_AVX512DQ || (VALID_AVX512FP16_REG_MODE (V4SFmode))) && 
   14763              : #line 517 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14764              : (TARGET_AVX512VL))))
   14765              :                 return -1;
   14766              :               return 3257; /* *reducepv4sf_round */
   14767              : 
   14768              :             case E_V8DFmode:
   14769              :               if (pattern1234 (x2, 
   14770              : E_V8DFmode) != 0
   14771              :                   || !(
   14772              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14773              : (TARGET_AVX512F) && 
   14774              : #line 4293 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14775              : (TARGET_AVX512DQ || (VALID_AVX512FP16_REG_MODE (V8DFmode)))))
   14776              :                 return -1;
   14777              :               return 3261; /* *reducepv8df_round */
   14778              : 
   14779              :             case E_V4DFmode:
   14780              :               if (pattern1234 (x2, 
   14781              : E_V4DFmode) != 0
   14782              :                   || !(
   14783              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14784              : (TARGET_AVX512F) && (
   14785              : #line 4293 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14786              : (TARGET_AVX512DQ || (VALID_AVX512FP16_REG_MODE (V4DFmode))) && 
   14787              : #line 518 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14788              : (TARGET_AVX512VL))))
   14789              :                 return -1;
   14790              :               return 3265; /* *reducepv4df_round */
   14791              : 
   14792              :             case E_V2DFmode:
   14793              :               if (pattern1234 (x2, 
   14794              : E_V2DFmode) != 0
   14795              :                   || !(
   14796              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14797              : (TARGET_AVX512F) && (
   14798              : #line 4293 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14799              : (TARGET_AVX512DQ || (VALID_AVX512FP16_REG_MODE (V2DFmode))) && 
   14800              : #line 518 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14801              : (TARGET_AVX512VL))))
   14802              :                 return -1;
   14803              :               return 3269; /* *reducepv2df_round */
   14804              : 
   14805              :             default:
   14806              :               return -1;
   14807              :             }
   14808              : 
   14809              :         case 222:
   14810              :           if (pattern1147 (x2) != 0
   14811              :               || !(
   14812              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14813              : (TARGET_AVX512F) && 
   14814              : #line 7722 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14815              : (TARGET_AVX512FP16 && (V32HFmode == V16SFmode
   14816              :                                                               || V32HFmode == V8DFmode
   14817              :                                                               || V32HFmode == V8DImode
   14818              :                                                               || V32HFmode == V16SImode
   14819              :                                                               || V32HFmode == V32HFmode))))
   14820              :             return -1;
   14821              :           return 4418; /* avx512bw_fmulc_v32hf_round */
   14822              : 
   14823              :         case 223:
   14824              :           if (pattern1147 (x2) != 0
   14825              :               || !(
   14826              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14827              : (TARGET_AVX512F) && 
   14828              : #line 7722 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14829              : (TARGET_AVX512FP16 && (V32HFmode == V16SFmode
   14830              :                                                               || V32HFmode == V8DFmode
   14831              :                                                               || V32HFmode == V8DImode
   14832              :                                                               || V32HFmode == V16SImode
   14833              :                                                               || V32HFmode == V32HFmode))))
   14834              :             return -1;
   14835              :           return 4422; /* avx512bw_fcmulc_v32hf_round */
   14836              : 
   14837              :         case 59:
   14838              :           if (!const_4_or_8_to_11_operand (operands[3], E_SImode))
   14839              :             return -1;
   14840              :           switch (GET_MODE (operands[0]))
   14841              :             {
   14842              :             case E_V32HFmode:
   14843              :               if (pattern1321 (x2, 
   14844              : E_V32HFmode) != 0
   14845              :                   || !(
   14846              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14847              : (TARGET_AVX512F) && (
   14848              : #line 14024 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14849              : (TARGET_AVX512F) && 
   14850              : #line 514 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14851              : (TARGET_AVX512FP16))))
   14852              :                 return -1;
   14853              :               return 5449; /* avx512bw_scalefv32hf_round */
   14854              : 
   14855              :             case E_V16HFmode:
   14856              :               if (pattern1321 (x2, 
   14857              : E_V16HFmode) != 0
   14858              :                   || !(
   14859              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14860              : (TARGET_AVX512F) && (
   14861              : #line 14024 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14862              : (TARGET_AVX512F) && 
   14863              : #line 515 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14864              : (TARGET_AVX512FP16 && TARGET_AVX512VL))))
   14865              :                 return -1;
   14866              :               return 5453; /* avx512vl_scalefv16hf_round */
   14867              : 
   14868              :             case E_V8HFmode:
   14869              :               if (pattern1321 (x2, 
   14870              : E_V8HFmode) != 0
   14871              :                   || !(
   14872              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14873              : (TARGET_AVX512F) && (
   14874              : #line 14024 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14875              : (TARGET_AVX512F) && 
   14876              : #line 516 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14877              : (TARGET_AVX512FP16 && TARGET_AVX512VL))))
   14878              :                 return -1;
   14879              :               return 5457; /* avx512fp16_scalefv8hf_round */
   14880              : 
   14881              :             case E_V16SFmode:
   14882              :               if (pattern1321 (x2, 
   14883              : E_V16SFmode) != 0
   14884              :                   || !
   14885              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14886              : (TARGET_AVX512F))
   14887              :                 return -1;
   14888              :               return 5461; /* avx512f_scalefv16sf_round */
   14889              : 
   14890              :             case E_V8SFmode:
   14891              :               if (pattern1321 (x2, 
   14892              : E_V8SFmode) != 0
   14893              :                   || !(
   14894              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14895              : (TARGET_AVX512F) && (
   14896              : #line 14024 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14897              : (TARGET_AVX512F) && 
   14898              : #line 517 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14899              : (TARGET_AVX512VL))))
   14900              :                 return -1;
   14901              :               return 5465; /* avx512vl_scalefv8sf_round */
   14902              : 
   14903              :             case E_V4SFmode:
   14904              :               if (pattern1321 (x2, 
   14905              : E_V4SFmode) != 0
   14906              :                   || !(
   14907              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14908              : (TARGET_AVX512F) && (
   14909              : #line 14024 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14910              : (TARGET_AVX512F) && 
   14911              : #line 517 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14912              : (TARGET_AVX512VL))))
   14913              :                 return -1;
   14914              :               return 5469; /* avx512vl_scalefv4sf_round */
   14915              : 
   14916              :             case E_V8DFmode:
   14917              :               if (pattern1321 (x2, 
   14918              : E_V8DFmode) != 0
   14919              :                   || !
   14920              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14921              : (TARGET_AVX512F))
   14922              :                 return -1;
   14923              :               return 5473; /* avx512f_scalefv8df_round */
   14924              : 
   14925              :             case E_V4DFmode:
   14926              :               if (pattern1321 (x2, 
   14927              : E_V4DFmode) != 0
   14928              :                   || !(
   14929              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14930              : (TARGET_AVX512F) && (
   14931              : #line 14024 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14932              : (TARGET_AVX512F) && 
   14933              : #line 518 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14934              : (TARGET_AVX512VL))))
   14935              :                 return -1;
   14936              :               return 5477; /* avx512vl_scalefv4df_round */
   14937              : 
   14938              :             case E_V2DFmode:
   14939              :               if (pattern1321 (x2, 
   14940              : E_V2DFmode) != 0
   14941              :                   || !(
   14942              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14943              : (TARGET_AVX512F) && (
   14944              : #line 14024 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14945              : (TARGET_AVX512F) && 
   14946              : #line 518 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14947              : (TARGET_AVX512VL))))
   14948              :                 return -1;
   14949              :               return 5481; /* avx512vl_scalefv2df_round */
   14950              : 
   14951              :             default:
   14952              :               return -1;
   14953              :             }
   14954              : 
   14955              :         case 95:
   14956              :           if (!const_0_to_255_operand (operands[2], E_SImode))
   14957              :             return -1;
   14958              :           switch (pattern1232 (x2))
   14959              :             {
   14960              :             case 0:
   14961              :               if (!(
   14962              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14963              : (TARGET_AVX512F) && (
   14964              : #line 14626 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14965              : (TARGET_AVX512F) && 
   14966              : #line 514 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14967              : (TARGET_AVX512FP16))))
   14968              :                 return -1;
   14969              :               return 7179; /* avx512bw_rndscalev32hf_round */
   14970              : 
   14971              :             case 1:
   14972              :               if (!(
   14973              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14974              : (TARGET_AVX512F) && (
   14975              : #line 14626 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14976              : (TARGET_AVX512F) && 
   14977              : #line 515 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14978              : (TARGET_AVX512FP16 && TARGET_AVX512VL))))
   14979              :                 return -1;
   14980              :               return 7183; /* avx512vl_rndscalev16hf_round */
   14981              : 
   14982              :             case 2:
   14983              :               if (!(
   14984              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14985              : (TARGET_AVX512F) && (
   14986              : #line 14626 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14987              : (TARGET_AVX512F) && 
   14988              : #line 516 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14989              : (TARGET_AVX512FP16 && TARGET_AVX512VL))))
   14990              :                 return -1;
   14991              :               return 7187; /* avx512fp16_rndscalev8hf_round */
   14992              : 
   14993              :             case 3:
   14994              :               if (!
   14995              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14996              : (TARGET_AVX512F))
   14997              :                 return -1;
   14998              :               return 7191; /* avx512f_rndscalev16sf_round */
   14999              : 
   15000              :             case 4:
   15001              :               if (!(
   15002              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15003              : (TARGET_AVX512F) && (
   15004              : #line 14626 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15005              : (TARGET_AVX512F) && 
   15006              : #line 517 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15007              : (TARGET_AVX512VL))))
   15008              :                 return -1;
   15009              :               return 7195; /* avx512vl_rndscalev8sf_round */
   15010              : 
   15011              :             case 5:
   15012              :               if (!(
   15013              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15014              : (TARGET_AVX512F) && (
   15015              : #line 14626 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15016              : (TARGET_AVX512F) && 
   15017              : #line 517 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15018              : (TARGET_AVX512VL))))
   15019              :                 return -1;
   15020              :               return 7199; /* avx512vl_rndscalev4sf_round */
   15021              : 
   15022              :             case 6:
   15023              :               if (!
   15024              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15025              : (TARGET_AVX512F))
   15026              :                 return -1;
   15027              :               return 7203; /* avx512f_rndscalev8df_round */
   15028              : 
   15029              :             case 7:
   15030              :               if (!(
   15031              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15032              : (TARGET_AVX512F) && (
   15033              : #line 14626 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15034              : (TARGET_AVX512F) && 
   15035              : #line 518 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15036              : (TARGET_AVX512VL))))
   15037              :                 return -1;
   15038              :               return 7207; /* avx512vl_rndscalev4df_round */
   15039              : 
   15040              :             case 8:
   15041              :               if (!(
   15042              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15043              : (TARGET_AVX512F) && (
   15044              : #line 14626 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15045              : (TARGET_AVX512F) && 
   15046              : #line 518 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15047              : (TARGET_AVX512VL))))
   15048              :                 return -1;
   15049              :               return 7211; /* avx512vl_rndscalev2df_round */
   15050              : 
   15051              :             default:
   15052              :               return -1;
   15053              :             }
   15054              : 
   15055              :         case 151:
   15056              :           if (GET_MODE (x3) != E_V16HImode
   15057              :               || !register_operand (operands[0], E_V16HImode)
   15058              :               || GET_MODE (x2) != E_V16HImode
   15059              :               || !register_operand (operands[1], E_V16SFmode)
   15060              :               || !const_0_to_255_operand (operands[2], E_SImode)
   15061              :               || !const48_operand (operands[3], E_SImode)
   15062              :               || !
   15063              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15064              : (TARGET_AVX512F))
   15065              :             return -1;
   15066              :           return 9769; /* *avx512f_vcvtps2ph512_round */
   15067              : 
   15068              :         case 167:
   15069              :           if (!const_0_to_15_operand (operands[2], E_SImode))
   15070              :             return -1;
   15071              :           switch (pattern1232 (x2))
   15072              :             {
   15073              :             case 0:
   15074              :               if (!(
   15075              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15076              : (TARGET_AVX512F) && (
   15077              : #line 30935 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15078              : (TARGET_AVX512F) && 
   15079              : #line 514 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15080              : (TARGET_AVX512FP16))))
   15081              :                 return -1;
   15082              :               return 10111; /* avx512bw_getmantv32hf_round */
   15083              : 
   15084              :             case 1:
   15085              :               if (!(
   15086              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15087              : (TARGET_AVX512F) && (
   15088              : #line 30935 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15089              : (TARGET_AVX512F) && 
   15090              : #line 515 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15091              : (TARGET_AVX512FP16 && TARGET_AVX512VL))))
   15092              :                 return -1;
   15093              :               return 10115; /* avx512vl_getmantv16hf_round */
   15094              : 
   15095              :             case 2:
   15096              :               if (!(
   15097              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15098              : (TARGET_AVX512F) && (
   15099              : #line 30935 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15100              : (TARGET_AVX512F) && 
   15101              : #line 516 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15102              : (TARGET_AVX512FP16 && TARGET_AVX512VL))))
   15103              :                 return -1;
   15104              :               return 10119; /* avx512fp16_getmantv8hf_round */
   15105              : 
   15106              :             case 3:
   15107              :               if (!
   15108              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15109              : (TARGET_AVX512F))
   15110              :                 return -1;
   15111              :               return 10123; /* avx512f_getmantv16sf_round */
   15112              : 
   15113              :             case 4:
   15114              :               if (!(
   15115              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15116              : (TARGET_AVX512F) && (
   15117              : #line 30935 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15118              : (TARGET_AVX512F) && 
   15119              : #line 517 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15120              : (TARGET_AVX512VL))))
   15121              :                 return -1;
   15122              :               return 10127; /* avx512vl_getmantv8sf_round */
   15123              : 
   15124              :             case 5:
   15125              :               if (!(
   15126              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15127              : (TARGET_AVX512F) && (
   15128              : #line 30935 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15129              : (TARGET_AVX512F) && 
   15130              : #line 517 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15131              : (TARGET_AVX512VL))))
   15132              :                 return -1;
   15133              :               return 10131; /* avx512vl_getmantv4sf_round */
   15134              : 
   15135              :             case 6:
   15136              :               if (!
   15137              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15138              : (TARGET_AVX512F))
   15139              :                 return -1;
   15140              :               return 10135; /* avx512f_getmantv8df_round */
   15141              : 
   15142              :             case 7:
   15143              :               if (!(
   15144              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15145              : (TARGET_AVX512F) && (
   15146              : #line 30935 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15147              : (TARGET_AVX512F) && 
   15148              : #line 518 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15149              : (TARGET_AVX512VL))))
   15150              :                 return -1;
   15151              :               return 10139; /* avx512vl_getmantv4df_round */
   15152              : 
   15153              :             case 8:
   15154              :               if (!(
   15155              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15156              : (TARGET_AVX512F) && (
   15157              : #line 30935 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15158              : (TARGET_AVX512F) && 
   15159              : #line 518 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15160              : (TARGET_AVX512VL))))
   15161              :                 return -1;
   15162              :               return 10143; /* avx512vl_getmantv2df_round */
   15163              : 
   15164              :             default:
   15165              :               return -1;
   15166              :             }
   15167              : 
   15168              :         default:
   15169              :           return -1;
   15170              :         }
   15171              : 
   15172              :     case 3:
   15173              :       x4 = XVECEXP (x3, 0, 0);
   15174              :       operands[1] = x4;
   15175              :       x5 = XVECEXP (x3, 0, 1);
   15176              :       operands[2] = x5;
   15177              :       x6 = XVECEXP (x2, 0, 1);
   15178              :       operands[4] = x6;
   15179              :       switch (XINT (x3, 1))
   15180              :         {
   15181              :         case 134:
   15182              :           if (!const_4_or_8_to_11_operand (operands[4], E_SImode))
   15183              :             return -1;
   15184              :           x7 = XVECEXP (x3, 0, 2);
   15185              :           switch (GET_CODE (x7))
   15186              :             {
   15187              :             case REG:
   15188              :             case SUBREG:
   15189              :               operands[3] = x7;
   15190              :               switch (GET_MODE (operands[0]))
   15191              :                 {
   15192              :                 case E_V32HFmode:
   15193              :                   if (pattern1487 (x2, 
   15194              : E_V32HFmode) != 0
   15195              :                       || !(
   15196              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15197              : (TARGET_AVX512F) && (
   15198              : #line 6825 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15199              : (TARGET_AVX512F && 1 && (V32HFmode == V16SFmode
   15200              :                                                               || V32HFmode == V8DFmode
   15201              :                                                               || V32HFmode == V8DImode
   15202              :                                                               || V32HFmode == V16SImode
   15203              :                                                               || V32HFmode == V32HFmode)) && 
   15204              : #line 514 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15205              : (TARGET_AVX512FP16))))
   15206              :                     return -1;
   15207              :                   return 4142; /* *fma_fmaddsub_v32hf_round */
   15208              : 
   15209              :                 case E_V16SFmode:
   15210              :                   if (pattern1487 (x2, 
   15211              : E_V16SFmode) != 0
   15212              :                       || !(
   15213              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15214              : (TARGET_AVX512F) && 
   15215              : #line 6825 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15216              : (TARGET_AVX512F && 1 && (V16SFmode == V16SFmode
   15217              :                                                               || V16SFmode == V8DFmode
   15218              :                                                               || V16SFmode == V8DImode
   15219              :                                                               || V16SFmode == V16SImode
   15220              :                                                               || V16SFmode == V32HFmode))))
   15221              :                     return -1;
   15222              :                   return 4150; /* *fma_fmaddsub_v16sf_round */
   15223              : 
   15224              :                 case E_V8DFmode:
   15225              :                   if (pattern1487 (x2, 
   15226              : E_V8DFmode) != 0
   15227              :                       || !(
   15228              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15229              : (TARGET_AVX512F) && 
   15230              : #line 6825 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15231              : (TARGET_AVX512F && 1 && (V8DFmode == V16SFmode
   15232              :                                                               || V8DFmode == V8DFmode
   15233              :                                                               || V8DFmode == V8DImode
   15234              :                                                               || V8DFmode == V16SImode
   15235              :                                                               || V8DFmode == V32HFmode))))
   15236              :                     return -1;
   15237              :                   return 4158; /* *fma_fmaddsub_v8df_round */
   15238              : 
   15239              :                 default:
   15240              :                   return -1;
   15241              :                 }
   15242              : 
   15243              :             case NEG:
   15244              :               x8 = XEXP (x7, 0);
   15245              :               operands[3] = x8;
   15246              :               switch (GET_MODE (operands[0]))
   15247              :                 {
   15248              :                 case E_V32HFmode:
   15249              :                   if (pattern1488 (x2, 
   15250              : E_V32HFmode) != 0
   15251              :                       || !(
   15252              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15253              : (TARGET_AVX512F) && (
   15254              : #line 6895 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15255              : (TARGET_AVX512F && 1 && (V32HFmode == V16SFmode
   15256              :                                                               || V32HFmode == V8DFmode
   15257              :                                                               || V32HFmode == V8DImode
   15258              :                                                               || V32HFmode == V16SImode
   15259              :                                                               || V32HFmode == V32HFmode)) && 
   15260              : #line 514 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15261              : (TARGET_AVX512FP16))))
   15262              :                     return -1;
   15263              :                   return 4206; /* *fma_fmsubadd_v32hf_round */
   15264              : 
   15265              :                 case E_V16SFmode:
   15266              :                   if (pattern1488 (x2, 
   15267              : E_V16SFmode) != 0
   15268              :                       || !(
   15269              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15270              : (TARGET_AVX512F) && 
   15271              : #line 6895 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15272              : (TARGET_AVX512F && 1 && (V16SFmode == V16SFmode
   15273              :                                                               || V16SFmode == V8DFmode
   15274              :                                                               || V16SFmode == V8DImode
   15275              :                                                               || V16SFmode == V16SImode
   15276              :                                                               || V16SFmode == V32HFmode))))
   15277              :                     return -1;
   15278              :                   return 4214; /* *fma_fmsubadd_v16sf_round */
   15279              : 
   15280              :                 case E_V8DFmode:
   15281              :                   if (pattern1488 (x2, 
   15282              : E_V8DFmode) != 0
   15283              :                       || !(
   15284              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15285              : (TARGET_AVX512F) && 
   15286              : #line 6895 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15287              : (TARGET_AVX512F && 1 && (V8DFmode == V16SFmode
   15288              :                                                               || V8DFmode == V8DFmode
   15289              :                                                               || V8DFmode == V8DImode
   15290              :                                                               || V8DFmode == V16SImode
   15291              :                                                               || V8DFmode == V32HFmode))))
   15292              :                     return -1;
   15293              :                   return 4222; /* *fma_fmsubadd_v8df_round */
   15294              : 
   15295              :                 default:
   15296              :                   return -1;
   15297              :                 }
   15298              : 
   15299              :             default:
   15300              :               return -1;
   15301              :             }
   15302              : 
   15303              :         case 218:
   15304              :           if (pattern1148 (x2) != 0
   15305              :               || !(
   15306              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15307              : (TARGET_AVX512F) && 
   15308              : #line 7564 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15309              : (TARGET_AVX512FP16 && 1 && (V32HFmode == V16SFmode
   15310              :                                                               || V32HFmode == V8DFmode
   15311              :                                                               || V32HFmode == V8DImode
   15312              :                                                               || V32HFmode == V16SImode
   15313              :                                                               || V32HFmode == V32HFmode))))
   15314              :             return -1;
   15315              :           return 4369; /* fma_fmaddc_v32hf_round */
   15316              : 
   15317              :         case 220:
   15318              :           if (pattern1148 (x2) != 0
   15319              :               || !(
   15320              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15321              : (TARGET_AVX512F) && 
   15322              : #line 7564 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15323              : (TARGET_AVX512FP16 && 1 && (V32HFmode == V16SFmode
   15324              :                                                               || V32HFmode == V8DFmode
   15325              :                                                               || V32HFmode == V8DImode
   15326              :                                                               || V32HFmode == V16SImode
   15327              :                                                               || V32HFmode == V32HFmode))))
   15328              :             return -1;
   15329              :           return 4373; /* fma_fcmaddc_v32hf_round */
   15330              : 
   15331              :         case 195:
   15332              :           x7 = XVECEXP (x3, 0, 2);
   15333              :           operands[3] = x7;
   15334              :           if (!const_0_to_15_operand (operands[3], E_SImode)
   15335              :               || !const48_operand (operands[4], E_SImode))
   15336              :             return -1;
   15337              :           switch (GET_MODE (operands[0]))
   15338              :             {
   15339              :             case E_V16SFmode:
   15340              :               if (pattern1145 (x2, 
   15341              : E_V16SFmode) != 0
   15342              :                   || !(
   15343              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15344              : (TARGET_AVX512F) && 
   15345              : #line 30865 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15346              : (TARGET_AVX512DQ && (V16SFmode == V16SFmode
   15347              :                                                                               || V16SFmode == V8DFmode
   15348              :                                                                               || V16SFmode == V8DImode
   15349              :                                                                               || V16SFmode == V16SImode
   15350              :                                                                               || V16SFmode == V32HFmode))))
   15351              :                 return -1;
   15352              :               return 10063; /* avx512dq_rangepv16sf_round */
   15353              : 
   15354              :             case E_V8DFmode:
   15355              :               if (pattern1145 (x2, 
   15356              : E_V8DFmode) != 0
   15357              :                   || !(
   15358              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15359              : (TARGET_AVX512F) && 
   15360              : #line 30865 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15361              : (TARGET_AVX512DQ && (V8DFmode == V16SFmode
   15362              :                                                                               || V8DFmode == V8DFmode
   15363              :                                                                               || V8DFmode == V8DImode
   15364              :                                                                               || V8DFmode == V16SImode
   15365              :                                                                               || V8DFmode == V32HFmode))))
   15366              :                 return -1;
   15367              :               return 10071; /* avx512dq_rangepv8df_round */
   15368              : 
   15369              :             default:
   15370              :               return -1;
   15371              :             }
   15372              : 
   15373              :         case 279:
   15374              :           x7 = XVECEXP (x3, 0, 2);
   15375              :           operands[3] = x7;
   15376              :           if (!const_0_to_255_operand (operands[3], E_SImode)
   15377              :               || !const48_operand (operands[4], E_SImode))
   15378              :             return -1;
   15379              :           switch (GET_MODE (operands[0]))
   15380              :             {
   15381              :             case E_V32HFmode:
   15382              :               if (pattern1145 (x2, 
   15383              : E_V32HFmode) != 0
   15384              :                   || !(
   15385              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15386              : (TARGET_AVX512F) && (
   15387              : #line 33726 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15388              : (TARGET_AVX10_2) && 
   15389              : #line 514 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15390              : (TARGET_AVX512FP16))))
   15391              :                 return -1;
   15392              :               return 11009; /* avx10_2_minmaxpv32hf_round */
   15393              : 
   15394              :             case E_V16HFmode:
   15395              :               if (pattern1145 (x2, 
   15396              : E_V16HFmode) != 0
   15397              :                   || !(
   15398              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15399              : (TARGET_AVX512F) && (
   15400              : #line 33726 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15401              : (TARGET_AVX10_2) && 
   15402              : #line 515 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15403              : (TARGET_AVX512FP16 && TARGET_AVX512VL))))
   15404              :                 return -1;
   15405              :               return 11013; /* avx10_2_minmaxpv16hf_round */
   15406              : 
   15407              :             case E_V8HFmode:
   15408              :               if (pattern1145 (x2, 
   15409              : E_V8HFmode) != 0
   15410              :                   || !(
   15411              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15412              : (TARGET_AVX512F) && (
   15413              : #line 33726 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15414              : (TARGET_AVX10_2) && 
   15415              : #line 516 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15416              : (TARGET_AVX512FP16 && TARGET_AVX512VL))))
   15417              :                 return -1;
   15418              :               return 11017; /* avx10_2_minmaxpv8hf_round */
   15419              : 
   15420              :             case E_V16SFmode:
   15421              :               if (pattern1145 (x2, 
   15422              : E_V16SFmode) != 0
   15423              :                   || !(
   15424              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15425              : (TARGET_AVX512F) && 
   15426              : #line 33726 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15427              : (TARGET_AVX10_2)))
   15428              :                 return -1;
   15429              :               return 11021; /* avx10_2_minmaxpv16sf_round */
   15430              : 
   15431              :             case E_V8SFmode:
   15432              :               if (pattern1145 (x2, 
   15433              : E_V8SFmode) != 0
   15434              :                   || !(
   15435              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15436              : (TARGET_AVX512F) && (
   15437              : #line 33726 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15438              : (TARGET_AVX10_2) && 
   15439              : #line 517 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15440              : (TARGET_AVX512VL))))
   15441              :                 return -1;
   15442              :               return 11025; /* avx10_2_minmaxpv8sf_round */
   15443              : 
   15444              :             case E_V4SFmode:
   15445              :               if (pattern1145 (x2, 
   15446              : E_V4SFmode) != 0
   15447              :                   || !(
   15448              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15449              : (TARGET_AVX512F) && (
   15450              : #line 33726 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15451              : (TARGET_AVX10_2) && 
   15452              : #line 517 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15453              : (TARGET_AVX512VL))))
   15454              :                 return -1;
   15455              :               return 11029; /* avx10_2_minmaxpv4sf_round */
   15456              : 
   15457              :             case E_V8DFmode:
   15458              :               if (pattern1145 (x2, 
   15459              : E_V8DFmode) != 0
   15460              :                   || !(
   15461              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15462              : (TARGET_AVX512F) && 
   15463              : #line 33726 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15464              : (TARGET_AVX10_2)))
   15465              :                 return -1;
   15466              :               return 11033; /* avx10_2_minmaxpv8df_round */
   15467              : 
   15468              :             case E_V4DFmode:
   15469              :               if (pattern1145 (x2, 
   15470              : E_V4DFmode) != 0
   15471              :                   || !(
   15472              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15473              : (TARGET_AVX512F) && (
   15474              : #line 33726 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15475              : (TARGET_AVX10_2) && 
   15476              : #line 518 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15477              : (TARGET_AVX512VL))))
   15478              :                 return -1;
   15479              :               return 11037; /* avx10_2_minmaxpv4df_round */
   15480              : 
   15481              :             case E_V2DFmode:
   15482              :               if (pattern1145 (x2, 
   15483              : E_V2DFmode) != 0
   15484              :                   || !(
   15485              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15486              : (TARGET_AVX512F) && (
   15487              : #line 33726 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15488              : (TARGET_AVX10_2) && 
   15489              : #line 518 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15490              : (TARGET_AVX512VL))))
   15491              :                 return -1;
   15492              :               return 11041; /* avx10_2_minmaxpv2df_round */
   15493              : 
   15494              :             default:
   15495              :               return -1;
   15496              :             }
   15497              : 
   15498              :         default:
   15499              :           return -1;
   15500              :         }
   15501              : 
   15502              :     case 1:
   15503              :       return recog_231 (x1, insn, pnum_clobbers);
   15504              : 
   15505              :     case 4:
   15506              :       if (XINT (x3, 1) != 164)
   15507              :         return -1;
   15508              :       x4 = XVECEXP (x3, 0, 0);
   15509              :       operands[1] = x4;
   15510              :       x5 = XVECEXP (x3, 0, 1);
   15511              :       operands[2] = x5;
   15512              :       x7 = XVECEXP (x3, 0, 2);
   15513              :       operands[3] = x7;
   15514              :       x9 = XVECEXP (x3, 0, 3);
   15515              :       operands[4] = x9;
   15516              :       if (!const_0_to_255_operand (operands[4], E_SImode))
   15517              :         return -1;
   15518              :       x6 = XVECEXP (x2, 0, 1);
   15519              :       operands[5] = x6;
   15520              :       if (!const48_operand (operands[5], E_SImode))
   15521              :         return -1;
   15522              :       switch (GET_MODE (operands[0]))
   15523              :         {
   15524              :         case E_V16SFmode:
   15525              :           if (pattern1528 (x2, 
   15526              : E_V16SImode, 
   15527              : E_V16SFmode) != 0
   15528              :               || !
   15529              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15530              : (TARGET_AVX512F))
   15531              :             return -1;
   15532              :           return 7131; /* avx512f_fixupimmv16sf_round */
   15533              : 
   15534              :         case E_V8SFmode:
   15535              :           if (pattern1528 (x2, 
   15536              : E_V8SImode, 
   15537              : E_V8SFmode) != 0
   15538              :               || !(
   15539              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15540              : (TARGET_AVX512F) && (
   15541              : #line 14548 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15542              : (TARGET_AVX512F) && 
   15543              : #line 510 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15544              : (TARGET_AVX512VL))))
   15545              :             return -1;
   15546              :           return 7135; /* avx512vl_fixupimmv8sf_round */
   15547              : 
   15548              :         case E_V4SFmode:
   15549              :           if (pattern1528 (x2, 
   15550              : E_V4SImode, 
   15551              : E_V4SFmode) != 0
   15552              :               || !(
   15553              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15554              : (TARGET_AVX512F) && (
   15555              : #line 14548 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15556              : (TARGET_AVX512F) && 
   15557              : #line 510 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15558              : (TARGET_AVX512VL))))
   15559              :             return -1;
   15560              :           return 7139; /* avx512vl_fixupimmv4sf_round */
   15561              : 
   15562              :         case E_V8DFmode:
   15563              :           if (pattern1528 (x2, 
   15564              : E_V8DImode, 
   15565              : E_V8DFmode) != 0
   15566              :               || !
   15567              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15568              : (TARGET_AVX512F))
   15569              :             return -1;
   15570              :           return 7143; /* avx512f_fixupimmv8df_round */
   15571              : 
   15572              :         case E_V4DFmode:
   15573              :           if (pattern1528 (x2, 
   15574              : E_V4DImode, 
   15575              : E_V4DFmode) != 0
   15576              :               || !(
   15577              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15578              : (TARGET_AVX512F) && (
   15579              : #line 14548 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15580              : (TARGET_AVX512F) && 
   15581              : #line 511 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15582              : (TARGET_AVX512VL))))
   15583              :             return -1;
   15584              :           return 7147; /* avx512vl_fixupimmv4df_round */
   15585              : 
   15586              :         case E_V2DFmode:
   15587              :           if (pattern1528 (x2, 
   15588              : E_V2DImode, 
   15589              : E_V2DFmode) != 0
   15590              :               || !(
   15591              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15592              : (TARGET_AVX512F) && (
   15593              : #line 14548 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15594              : (TARGET_AVX512F) && 
   15595              : #line 511 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15596              : (TARGET_AVX512VL))))
   15597              :             return -1;
   15598              :           return 7151; /* avx512vl_fixupimmv2df_round */
   15599              : 
   15600              :         default:
   15601              :           return -1;
   15602              :         }
   15603              : 
   15604              :     default:
   15605              :       return -1;
   15606              :     }
   15607              : }
   15608              : 
   15609              :  int
   15610              : recog_256 (rtx x1 ATTRIBUTE_UNUSED,
   15611              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   15612              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   15613              : {
   15614              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   15615              :   rtx x2, x3, x4, x5, x6;
   15616              :   int res ATTRIBUTE_UNUSED;
   15617              :   x2 = XEXP (x1, 0);
   15618              :   operands[0] = x2;
   15619              :   x3 = XEXP (x1, 1);
   15620              :   x4 = XVECEXP (x3, 0, 0);
   15621              :   operands[1] = x4;
   15622              :   x5 = XVECEXP (x3, 0, 1);
   15623              :   operands[2] = x5;
   15624              :   x6 = XVECEXP (x3, 0, 2);
   15625              :   operands[3] = x6;
   15626              :   if (!const_0_to_255_operand (operands[3], E_SImode))
   15627              :     return -1;
   15628              :   switch (GET_MODE (operands[0]))
   15629              :     {
   15630              :     case E_V32HFmode:
   15631              :       if (pattern158 (x3, 
   15632              : E_V32HFmode) != 0
   15633              :           || !(
   15634              : #line 33726 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15635              : (TARGET_AVX10_2) && 
   15636              : #line 514 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15637              : (TARGET_AVX512FP16)))
   15638              :         return -1;
   15639              :       return 11008; /* avx10_2_minmaxpv32hf */
   15640              : 
   15641              :     case E_V16HFmode:
   15642              :       if (pattern158 (x3, 
   15643              : E_V16HFmode) != 0
   15644              :           || !(
   15645              : #line 33726 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15646              : (TARGET_AVX10_2) && 
   15647              : #line 515 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15648              : (TARGET_AVX512FP16 && TARGET_AVX512VL)))
   15649              :         return -1;
   15650              :       return 11012; /* avx10_2_minmaxpv16hf */
   15651              : 
   15652              :     case E_V8HFmode:
   15653              :       if (pattern158 (x3, 
   15654              : E_V8HFmode) != 0
   15655              :           || !(
   15656              : #line 33726 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15657              : (TARGET_AVX10_2) && 
   15658              : #line 516 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15659              : (TARGET_AVX512FP16 && TARGET_AVX512VL)))
   15660              :         return -1;
   15661              :       return 11016; /* avx10_2_minmaxpv8hf */
   15662              : 
   15663              :     case E_V16SFmode:
   15664              :       if (pattern158 (x3, 
   15665              : E_V16SFmode) != 0
   15666              :           || !
   15667              : #line 33726 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15668              : (TARGET_AVX10_2))
   15669              :         return -1;
   15670              :       return 11020; /* avx10_2_minmaxpv16sf */
   15671              : 
   15672              :     case E_V8SFmode:
   15673              :       if (pattern158 (x3, 
   15674              : E_V8SFmode) != 0
   15675              :           || !(
   15676              : #line 33726 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15677              : (TARGET_AVX10_2) && 
   15678              : #line 517 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15679              : (TARGET_AVX512VL)))
   15680              :         return -1;
   15681              :       return 11024; /* avx10_2_minmaxpv8sf */
   15682              : 
   15683              :     case E_V4SFmode:
   15684              :       if (pattern158 (x3, 
   15685              : E_V4SFmode) != 0
   15686              :           || !(
   15687              : #line 33726 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15688              : (TARGET_AVX10_2) && 
   15689              : #line 517 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15690              : (TARGET_AVX512VL)))
   15691              :         return -1;
   15692              :       return 11028; /* avx10_2_minmaxpv4sf */
   15693              : 
   15694              :     case E_V8DFmode:
   15695              :       if (pattern158 (x3, 
   15696              : E_V8DFmode) != 0
   15697              :           || !
   15698              : #line 33726 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15699              : (TARGET_AVX10_2))
   15700              :         return -1;
   15701              :       return 11032; /* avx10_2_minmaxpv8df */
   15702              : 
   15703              :     case E_V4DFmode:
   15704              :       if (pattern158 (x3, 
   15705              : E_V4DFmode) != 0
   15706              :           || !(
   15707              : #line 33726 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15708              : (TARGET_AVX10_2) && 
   15709              : #line 518 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15710              : (TARGET_AVX512VL)))
   15711              :         return -1;
   15712              :       return 11036; /* avx10_2_minmaxpv4df */
   15713              : 
   15714              :     case E_V2DFmode:
   15715              :       if (pattern158 (x3, 
   15716              : E_V2DFmode) != 0
   15717              :           || !(
   15718              : #line 33726 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15719              : (TARGET_AVX10_2) && 
   15720              : #line 518 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15721              : (TARGET_AVX512VL)))
   15722              :         return -1;
   15723              :       return 11040; /* avx10_2_minmaxpv2df */
   15724              : 
   15725              :     default:
   15726              :       return -1;
   15727              :     }
   15728              : }
   15729              : 
   15730              :  int
   15731              : recog_261 (rtx x1 ATTRIBUTE_UNUSED,
   15732              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   15733              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   15734              : {
   15735              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   15736              :   int res ATTRIBUTE_UNUSED;
   15737              :   switch (pattern182 (x1))
   15738              :     {
   15739              :     case 0:
   15740              :       if (!
   15741              : #line 31478 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15742              : (TARGET_AVX512VBMI2))
   15743              :         return -1;
   15744              :       return 10323; /* vpshrdv_v32hi */
   15745              : 
   15746              :     case 1:
   15747              :       if (!
   15748              : #line 31478 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15749              : (TARGET_AVX512VBMI2))
   15750              :         return -1;
   15751              :       return 10324; /* vpshrdv_v16si */
   15752              : 
   15753              :     case 2:
   15754              :       if (!
   15755              : #line 31478 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15756              : (TARGET_AVX512VBMI2))
   15757              :         return -1;
   15758              :       return 10325; /* vpshrdv_v8di */
   15759              : 
   15760              :     case 3:
   15761              :       if (!(
   15762              : #line 31478 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15763              : (TARGET_AVX512VBMI2) && 
   15764              : #line 747 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15765              : (TARGET_AVX512VL)))
   15766              :         return -1;
   15767              :       return 10326; /* vpshrdv_v16hi */
   15768              : 
   15769              :     case 4:
   15770              :       if (!(
   15771              : #line 31478 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15772              : (TARGET_AVX512VBMI2) && 
   15773              : #line 747 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15774              : (TARGET_AVX512VL)))
   15775              :         return -1;
   15776              :       return 10327; /* vpshrdv_v8si */
   15777              : 
   15778              :     case 5:
   15779              :       if (!(
   15780              : #line 31478 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15781              : (TARGET_AVX512VBMI2) && 
   15782              : #line 748 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15783              : (TARGET_AVX512VL)))
   15784              :         return -1;
   15785              :       return 10328; /* vpshrdv_v4di */
   15786              : 
   15787              :     case 6:
   15788              :       if (!(
   15789              : #line 31478 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15790              : (TARGET_AVX512VBMI2) && 
   15791              : #line 748 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15792              : (TARGET_AVX512VL)))
   15793              :         return -1;
   15794              :       return 10329; /* vpshrdv_v8hi */
   15795              : 
   15796              :     case 7:
   15797              :       if (!(
   15798              : #line 31478 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15799              : (TARGET_AVX512VBMI2) && 
   15800              : #line 749 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15801              : (TARGET_AVX512VL)))
   15802              :         return -1;
   15803              :       return 10330; /* vpshrdv_v4si */
   15804              : 
   15805              :     case 8:
   15806              :       if (!(
   15807              : #line 31478 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15808              : (TARGET_AVX512VBMI2) && 
   15809              : #line 749 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15810              : (TARGET_AVX512VL)))
   15811              :         return -1;
   15812              :       return 10331; /* vpshrdv_v2di */
   15813              : 
   15814              :     default:
   15815              :       return -1;
   15816              :     }
   15817              : }
   15818              : 
   15819              :  int
   15820              : recog_268 (rtx x1 ATTRIBUTE_UNUSED,
   15821              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   15822              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   15823              : {
   15824              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   15825              :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
   15826              :   rtx x10, x11, x12;
   15827              :   int res ATTRIBUTE_UNUSED;
   15828              :   x2 = XEXP (x1, 0);
   15829              :   operands[0] = x2;
   15830              :   x3 = XEXP (x1, 1);
   15831              :   switch (XINT (x3, 1))
   15832              :     {
   15833              :     case 165:
   15834              :       x4 = XVECEXP (x3, 0, 0);
   15835              :       operands[1] = x4;
   15836              :       x5 = XVECEXP (x3, 0, 1);
   15837              :       operands[2] = x5;
   15838              :       x6 = XVECEXP (x3, 0, 2);
   15839              :       operands[3] = x6;
   15840              :       x7 = XVECEXP (x3, 0, 3);
   15841              :       operands[4] = x7;
   15842              :       if (!const_0_to_255_operand (operands[4], E_SImode))
   15843              :         return -1;
   15844              :       switch (GET_MODE (operands[0]))
   15845              :         {
   15846              :         case E_V16SImode:
   15847              :           if (pattern1149 (x3, 
   15848              : E_V16SImode) != 0)
   15849              :             return -1;
   15850              :           if (
   15851              : #line 14052 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15852              : (TARGET_AVX512F))
   15853              :             return 5484; /* avx512f_vternlogv16si */
   15854              :           if (!(
   15855              : #line 14066 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15856              : ((64 == 64 || TARGET_AVX512VL
   15857              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   15858              : /* Disallow embedded broadcast for vector HFmode since
   15859              :    it's not real AVX512FP16 instruction.  */
   15860              :   && (GET_MODE_SIZE (GET_MODE_INNER (V16SImode)) >= 4
   15861              :      || GET_CODE (operands[3]) != VEC_DUPLICATE)) && 
   15862              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15863              : (TARGET_AVX512F)))
   15864              :             return -1;
   15865              :           return 5502; /* *avx512f_vternlogv16si_all */
   15866              : 
   15867              :         case E_V8SImode:
   15868              :           if (pattern1149 (x3, 
   15869              : E_V8SImode) != 0)
   15870              :             return -1;
   15871              :           if ((
   15872              : #line 14052 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15873              : (TARGET_AVX512F) && 
   15874              : #line 496 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15875              : (TARGET_AVX512VL)))
   15876              :             return 5486; /* avx512vl_vternlogv8si */
   15877              :           if (!(
   15878              : #line 14066 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15879              : ((32 == 64 || TARGET_AVX512VL
   15880              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   15881              : /* Disallow embedded broadcast for vector HFmode since
   15882              :    it's not real AVX512FP16 instruction.  */
   15883              :   && (GET_MODE_SIZE (GET_MODE_INNER (V8SImode)) >= 4
   15884              :      || GET_CODE (operands[3]) != VEC_DUPLICATE)) && 
   15885              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15886              : (TARGET_AVX)))
   15887              :             return -1;
   15888              :           return 5503; /* *avx512vl_vternlogv8si_all */
   15889              : 
   15890              :         case E_V4SImode:
   15891              :           if (pattern1149 (x3, 
   15892              : E_V4SImode) != 0)
   15893              :             return -1;
   15894              :           if ((
   15895              : #line 14052 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15896              : (TARGET_AVX512F) && 
   15897              : #line 496 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15898              : (TARGET_AVX512VL)))
   15899              :             return 5488; /* avx512vl_vternlogv4si */
   15900              :           if (!
   15901              : #line 14066 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15902              : ((16 == 64 || TARGET_AVX512VL
   15903              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   15904              : /* Disallow embedded broadcast for vector HFmode since
   15905              :    it's not real AVX512FP16 instruction.  */
   15906              :   && (GET_MODE_SIZE (GET_MODE_INNER (V4SImode)) >= 4
   15907              :      || GET_CODE (operands[3]) != VEC_DUPLICATE)))
   15908              :             return -1;
   15909              :           return 5504; /* *avx512vl_vternlogv4si_all */
   15910              : 
   15911              :         case E_V8DImode:
   15912              :           if (pattern1149 (x3, 
   15913              : E_V8DImode) != 0)
   15914              :             return -1;
   15915              :           if (
   15916              : #line 14052 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15917              : (TARGET_AVX512F))
   15918              :             return 5490; /* avx512f_vternlogv8di */
   15919              :           if (!(
   15920              : #line 14066 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15921              : ((64 == 64 || TARGET_AVX512VL
   15922              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   15923              : /* Disallow embedded broadcast for vector HFmode since
   15924              :    it's not real AVX512FP16 instruction.  */
   15925              :   && (GET_MODE_SIZE (GET_MODE_INNER (V8DImode)) >= 4
   15926              :      || GET_CODE (operands[3]) != VEC_DUPLICATE)) && 
   15927              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15928              : (TARGET_AVX512F)))
   15929              :             return -1;
   15930              :           return 5505; /* *avx512f_vternlogv8di_all */
   15931              : 
   15932              :         case E_V4DImode:
   15933              :           if (pattern1149 (x3, 
   15934              : E_V4DImode) != 0)
   15935              :             return -1;
   15936              :           if ((
   15937              : #line 14052 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15938              : (TARGET_AVX512F) && 
   15939              : #line 497 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15940              : (TARGET_AVX512VL)))
   15941              :             return 5492; /* avx512vl_vternlogv4di */
   15942              :           if (!(
   15943              : #line 14066 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15944              : ((32 == 64 || TARGET_AVX512VL
   15945              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   15946              : /* Disallow embedded broadcast for vector HFmode since
   15947              :    it's not real AVX512FP16 instruction.  */
   15948              :   && (GET_MODE_SIZE (GET_MODE_INNER (V4DImode)) >= 4
   15949              :      || GET_CODE (operands[3]) != VEC_DUPLICATE)) && 
   15950              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15951              : (TARGET_AVX)))
   15952              :             return -1;
   15953              :           return 5506; /* *avx512vl_vternlogv4di_all */
   15954              : 
   15955              :         case E_V2DImode:
   15956              :           if (pattern1149 (x3, 
   15957              : E_V2DImode) != 0)
   15958              :             return -1;
   15959              :           if ((
   15960              : #line 14052 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15961              : (TARGET_AVX512F) && 
   15962              : #line 497 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15963              : (TARGET_AVX512VL)))
   15964              :             return 5494; /* avx512vl_vternlogv2di */
   15965              :           if (!
   15966              : #line 14066 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15967              : ((16 == 64 || TARGET_AVX512VL
   15968              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   15969              : /* Disallow embedded broadcast for vector HFmode since
   15970              :    it's not real AVX512FP16 instruction.  */
   15971              :   && (GET_MODE_SIZE (GET_MODE_INNER (V2DImode)) >= 4
   15972              :      || GET_CODE (operands[3]) != VEC_DUPLICATE)))
   15973              :             return -1;
   15974              :           return 5507; /* *avx512vl_vternlogv2di_all */
   15975              : 
   15976              :         case E_V64QImode:
   15977              :           if (pattern1149 (x3, 
   15978              : E_V64QImode) != 0
   15979              :               || !(
   15980              : #line 14066 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15981              : ((64 == 64 || TARGET_AVX512VL
   15982              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   15983              : /* Disallow embedded broadcast for vector HFmode since
   15984              :    it's not real AVX512FP16 instruction.  */
   15985              :   && (GET_MODE_SIZE (GET_MODE_INNER (V64QImode)) >= 4
   15986              :      || GET_CODE (operands[3]) != VEC_DUPLICATE)) && 
   15987              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15988              : (TARGET_AVX512F)))
   15989              :             return -1;
   15990              :           return 5496; /* *avx512bw_vternlogv64qi_all */
   15991              : 
   15992              :         case E_V32QImode:
   15993              :           if (pattern1149 (x3, 
   15994              : E_V32QImode) != 0
   15995              :               || !(
   15996              : #line 14066 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15997              : ((32 == 64 || TARGET_AVX512VL
   15998              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   15999              : /* Disallow embedded broadcast for vector HFmode since
   16000              :    it's not real AVX512FP16 instruction.  */
   16001              :   && (GET_MODE_SIZE (GET_MODE_INNER (V32QImode)) >= 4
   16002              :      || GET_CODE (operands[3]) != VEC_DUPLICATE)) && 
   16003              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16004              : (TARGET_AVX)))
   16005              :             return -1;
   16006              :           return 5497; /* *avx512vl_vternlogv32qi_all */
   16007              : 
   16008              :         case E_V16QImode:
   16009              :           if (pattern1149 (x3, 
   16010              : E_V16QImode) != 0
   16011              :               || !
   16012              : #line 14066 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16013              : ((16 == 64 || TARGET_AVX512VL
   16014              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   16015              : /* Disallow embedded broadcast for vector HFmode since
   16016              :    it's not real AVX512FP16 instruction.  */
   16017              :   && (GET_MODE_SIZE (GET_MODE_INNER (V16QImode)) >= 4
   16018              :      || GET_CODE (operands[3]) != VEC_DUPLICATE)))
   16019              :             return -1;
   16020              :           return 5498; /* *avx512vl_vternlogv16qi_all */
   16021              : 
   16022              :         case E_V32HImode:
   16023              :           if (pattern1149 (x3, 
   16024              : E_V32HImode) != 0
   16025              :               || !(
   16026              : #line 14066 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16027              : ((64 == 64 || TARGET_AVX512VL
   16028              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   16029              : /* Disallow embedded broadcast for vector HFmode since
   16030              :    it's not real AVX512FP16 instruction.  */
   16031              :   && (GET_MODE_SIZE (GET_MODE_INNER (V32HImode)) >= 4
   16032              :      || GET_CODE (operands[3]) != VEC_DUPLICATE)) && 
   16033              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16034              : (TARGET_AVX512F)))
   16035              :             return -1;
   16036              :           return 5499; /* *avx512bw_vternlogv32hi_all */
   16037              : 
   16038              :         case E_V16HImode:
   16039              :           if (pattern1149 (x3, 
   16040              : E_V16HImode) != 0
   16041              :               || !(
   16042              : #line 14066 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16043              : ((32 == 64 || TARGET_AVX512VL
   16044              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   16045              : /* Disallow embedded broadcast for vector HFmode since
   16046              :    it's not real AVX512FP16 instruction.  */
   16047              :   && (GET_MODE_SIZE (GET_MODE_INNER (V16HImode)) >= 4
   16048              :      || GET_CODE (operands[3]) != VEC_DUPLICATE)) && 
   16049              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16050              : (TARGET_AVX)))
   16051              :             return -1;
   16052              :           return 5500; /* *avx512vl_vternlogv16hi_all */
   16053              : 
   16054              :         case E_V8HImode:
   16055              :           if (pattern1149 (x3, 
   16056              : E_V8HImode) != 0
   16057              :               || !
   16058              : #line 14066 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16059              : ((16 == 64 || TARGET_AVX512VL
   16060              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   16061              : /* Disallow embedded broadcast for vector HFmode since
   16062              :    it's not real AVX512FP16 instruction.  */
   16063              :   && (GET_MODE_SIZE (GET_MODE_INNER (V8HImode)) >= 4
   16064              :      || GET_CODE (operands[3]) != VEC_DUPLICATE)))
   16065              :             return -1;
   16066              :           return 5501; /* *avx512vl_vternlogv8hi_all */
   16067              : 
   16068              :         case E_V32HFmode:
   16069              :           if (pattern1149 (x3, 
   16070              : E_V32HFmode) != 0
   16071              :               || !(
   16072              : #line 14066 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16073              : ((64 == 64 || TARGET_AVX512VL
   16074              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   16075              : /* Disallow embedded broadcast for vector HFmode since
   16076              :    it's not real AVX512FP16 instruction.  */
   16077              :   && (GET_MODE_SIZE (GET_MODE_INNER (V32HFmode)) >= 4
   16078              :      || GET_CODE (operands[3]) != VEC_DUPLICATE)) && 
   16079              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16080              : (TARGET_AVX512F)))
   16081              :             return -1;
   16082              :           return 5508; /* *avx512bw_vternlogv32hf_all */
   16083              : 
   16084              :         case E_V16HFmode:
   16085              :           if (pattern1149 (x3, 
   16086              : E_V16HFmode) != 0
   16087              :               || !(
   16088              : #line 14066 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16089              : ((32 == 64 || TARGET_AVX512VL
   16090              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   16091              : /* Disallow embedded broadcast for vector HFmode since
   16092              :    it's not real AVX512FP16 instruction.  */
   16093              :   && (GET_MODE_SIZE (GET_MODE_INNER (V16HFmode)) >= 4
   16094              :      || GET_CODE (operands[3]) != VEC_DUPLICATE)) && 
   16095              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16096              : (TARGET_AVX)))
   16097              :             return -1;
   16098              :           return 5509; /* *avx512vl_vternlogv16hf_all */
   16099              : 
   16100              :         case E_V8HFmode:
   16101              :           if (pattern1149 (x3, 
   16102              : E_V8HFmode) != 0
   16103              :               || !
   16104              : #line 14066 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16105              : ((16 == 64 || TARGET_AVX512VL
   16106              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   16107              : /* Disallow embedded broadcast for vector HFmode since
   16108              :    it's not real AVX512FP16 instruction.  */
   16109              :   && (GET_MODE_SIZE (GET_MODE_INNER (V8HFmode)) >= 4
   16110              :      || GET_CODE (operands[3]) != VEC_DUPLICATE)))
   16111              :             return -1;
   16112              :           return 5510; /* *avx512fp16_vternlogv8hf_all */
   16113              : 
   16114              :         case E_V32BFmode:
   16115              :           if (pattern1149 (x3, 
   16116              : E_V32BFmode) != 0
   16117              :               || !(
   16118              : #line 14066 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16119              : ((64 == 64 || TARGET_AVX512VL
   16120              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   16121              : /* Disallow embedded broadcast for vector HFmode since
   16122              :    it's not real AVX512FP16 instruction.  */
   16123              :   && (GET_MODE_SIZE (GET_MODE_INNER (V32BFmode)) >= 4
   16124              :      || GET_CODE (operands[3]) != VEC_DUPLICATE)) && 
   16125              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16126              : (TARGET_AVX512F)))
   16127              :             return -1;
   16128              :           return 5511; /* *avx512bw_vternlogv32bf_all */
   16129              : 
   16130              :         case E_V16BFmode:
   16131              :           if (pattern1149 (x3, 
   16132              : E_V16BFmode) != 0
   16133              :               || !(
   16134              : #line 14066 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16135              : ((32 == 64 || TARGET_AVX512VL
   16136              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   16137              : /* Disallow embedded broadcast for vector HFmode since
   16138              :    it's not real AVX512FP16 instruction.  */
   16139              :   && (GET_MODE_SIZE (GET_MODE_INNER (V16BFmode)) >= 4
   16140              :      || GET_CODE (operands[3]) != VEC_DUPLICATE)) && 
   16141              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16142              : (TARGET_AVX)))
   16143              :             return -1;
   16144              :           return 5512; /* *avx512vl_vternlogv16bf_all */
   16145              : 
   16146              :         case E_V8BFmode:
   16147              :           if (pattern1149 (x3, 
   16148              : E_V8BFmode) != 0
   16149              :               || !
   16150              : #line 14066 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16151              : ((16 == 64 || TARGET_AVX512VL
   16152              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   16153              : /* Disallow embedded broadcast for vector HFmode since
   16154              :    it's not real AVX512FP16 instruction.  */
   16155              :   && (GET_MODE_SIZE (GET_MODE_INNER (V8BFmode)) >= 4
   16156              :      || GET_CODE (operands[3]) != VEC_DUPLICATE)))
   16157              :             return -1;
   16158              :           return 5513; /* *avx512vl_vternlogv8bf_all */
   16159              : 
   16160              :         case E_V16SFmode:
   16161              :           if (pattern1149 (x3, 
   16162              : E_V16SFmode) != 0
   16163              :               || !(
   16164              : #line 14066 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16165              : ((64 == 64 || TARGET_AVX512VL
   16166              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   16167              : /* Disallow embedded broadcast for vector HFmode since
   16168              :    it's not real AVX512FP16 instruction.  */
   16169              :   && (GET_MODE_SIZE (GET_MODE_INNER (V16SFmode)) >= 4
   16170              :      || GET_CODE (operands[3]) != VEC_DUPLICATE)) && 
   16171              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16172              : (TARGET_AVX512F)))
   16173              :             return -1;
   16174              :           return 5514; /* *avx512f_vternlogv16sf_all */
   16175              : 
   16176              :         case E_V8SFmode:
   16177              :           if (pattern1149 (x3, 
   16178              : E_V8SFmode) != 0
   16179              :               || !(
   16180              : #line 14066 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16181              : ((32 == 64 || TARGET_AVX512VL
   16182              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   16183              : /* Disallow embedded broadcast for vector HFmode since
   16184              :    it's not real AVX512FP16 instruction.  */
   16185              :   && (GET_MODE_SIZE (GET_MODE_INNER (V8SFmode)) >= 4
   16186              :      || GET_CODE (operands[3]) != VEC_DUPLICATE)) && 
   16187              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16188              : (TARGET_AVX)))
   16189              :             return -1;
   16190              :           return 5515; /* *avx512vl_vternlogv8sf_all */
   16191              : 
   16192              :         case E_V4SFmode:
   16193              :           if (pattern1149 (x3, 
   16194              : E_V4SFmode) != 0
   16195              :               || !
   16196              : #line 14066 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16197              : ((16 == 64 || TARGET_AVX512VL
   16198              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   16199              : /* Disallow embedded broadcast for vector HFmode since
   16200              :    it's not real AVX512FP16 instruction.  */
   16201              :   && (GET_MODE_SIZE (GET_MODE_INNER (V4SFmode)) >= 4
   16202              :      || GET_CODE (operands[3]) != VEC_DUPLICATE)))
   16203              :             return -1;
   16204              :           return 5516; /* *avx512vl_vternlogv4sf_all */
   16205              : 
   16206              :         case E_V8DFmode:
   16207              :           if (pattern1149 (x3, 
   16208              : E_V8DFmode) != 0
   16209              :               || !(
   16210              : #line 14066 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16211              : ((64 == 64 || TARGET_AVX512VL
   16212              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   16213              : /* Disallow embedded broadcast for vector HFmode since
   16214              :    it's not real AVX512FP16 instruction.  */
   16215              :   && (GET_MODE_SIZE (GET_MODE_INNER (V8DFmode)) >= 4
   16216              :      || GET_CODE (operands[3]) != VEC_DUPLICATE)) && 
   16217              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16218              : (TARGET_AVX512F)))
   16219              :             return -1;
   16220              :           return 5517; /* *avx512f_vternlogv8df_all */
   16221              : 
   16222              :         case E_V4DFmode:
   16223              :           if (pattern1149 (x3, 
   16224              : E_V4DFmode) != 0
   16225              :               || !(
   16226              : #line 14066 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16227              : ((32 == 64 || TARGET_AVX512VL
   16228              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   16229              : /* Disallow embedded broadcast for vector HFmode since
   16230              :    it's not real AVX512FP16 instruction.  */
   16231              :   && (GET_MODE_SIZE (GET_MODE_INNER (V4DFmode)) >= 4
   16232              :      || GET_CODE (operands[3]) != VEC_DUPLICATE)) && 
   16233              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16234              : (TARGET_AVX)))
   16235              :             return -1;
   16236              :           return 5518; /* *avx512vl_vternlogv4df_all */
   16237              : 
   16238              :         case E_V2DFmode:
   16239              :           if (pattern1149 (x3, 
   16240              : E_V2DFmode) != 0
   16241              :               || !(
   16242              : #line 14066 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16243              : ((16 == 64 || TARGET_AVX512VL
   16244              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   16245              : /* Disallow embedded broadcast for vector HFmode since
   16246              :    it's not real AVX512FP16 instruction.  */
   16247              :   && (GET_MODE_SIZE (GET_MODE_INNER (V2DFmode)) >= 4
   16248              :      || GET_CODE (operands[3]) != VEC_DUPLICATE)) && 
   16249              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16250              : (TARGET_SSE2)))
   16251              :             return -1;
   16252              :           return 5519; /* *avx512vl_vternlogv2df_all */
   16253              : 
   16254              :         default:
   16255              :           return -1;
   16256              :         }
   16257              : 
   16258              :     case 164:
   16259              :       x4 = XVECEXP (x3, 0, 0);
   16260              :       operands[1] = x4;
   16261              :       x5 = XVECEXP (x3, 0, 1);
   16262              :       operands[2] = x5;
   16263              :       x6 = XVECEXP (x3, 0, 2);
   16264              :       operands[3] = x6;
   16265              :       x7 = XVECEXP (x3, 0, 3);
   16266              :       operands[4] = x7;
   16267              :       if (!const_0_to_255_operand (operands[4], E_SImode))
   16268              :         return -1;
   16269              :       switch (GET_MODE (operands[0]))
   16270              :         {
   16271              :         case E_V16SFmode:
   16272              :           if (pattern1150 (x3, 
   16273              : E_V16SImode, 
   16274              : E_V16SFmode) != 0
   16275              :               || !
   16276              : #line 14548 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16277              : (TARGET_AVX512F))
   16278              :             return -1;
   16279              :           return 7130; /* avx512f_fixupimmv16sf */
   16280              : 
   16281              :         case E_V8SFmode:
   16282              :           if (pattern1150 (x3, 
   16283              : E_V8SImode, 
   16284              : E_V8SFmode) != 0
   16285              :               || !(
   16286              : #line 14548 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16287              : (TARGET_AVX512F) && 
   16288              : #line 510 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16289              : (TARGET_AVX512VL)))
   16290              :             return -1;
   16291              :           return 7134; /* avx512vl_fixupimmv8sf */
   16292              : 
   16293              :         case E_V4SFmode:
   16294              :           if (pattern1150 (x3, 
   16295              : E_V4SImode, 
   16296              : E_V4SFmode) != 0
   16297              :               || !(
   16298              : #line 14548 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16299              : (TARGET_AVX512F) && 
   16300              : #line 510 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16301              : (TARGET_AVX512VL)))
   16302              :             return -1;
   16303              :           return 7138; /* avx512vl_fixupimmv4sf */
   16304              : 
   16305              :         case E_V8DFmode:
   16306              :           if (pattern1150 (x3, 
   16307              : E_V8DImode, 
   16308              : E_V8DFmode) != 0
   16309              :               || !
   16310              : #line 14548 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16311              : (TARGET_AVX512F))
   16312              :             return -1;
   16313              :           return 7142; /* avx512f_fixupimmv8df */
   16314              : 
   16315              :         case E_V4DFmode:
   16316              :           if (pattern1150 (x3, 
   16317              : E_V4DImode, 
   16318              : E_V4DFmode) != 0
   16319              :               || !(
   16320              : #line 14548 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16321              : (TARGET_AVX512F) && 
   16322              : #line 511 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16323              : (TARGET_AVX512VL)))
   16324              :             return -1;
   16325              :           return 7146; /* avx512vl_fixupimmv4df */
   16326              : 
   16327              :         case E_V2DFmode:
   16328              :           if (pattern1150 (x3, 
   16329              : E_V2DImode, 
   16330              : E_V2DFmode) != 0
   16331              :               || !(
   16332              : #line 14548 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16333              : (TARGET_AVX512F) && 
   16334              : #line 511 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16335              : (TARGET_AVX512VL)))
   16336              :             return -1;
   16337              :           return 7150; /* avx512vl_fixupimmv2df */
   16338              : 
   16339              :         default:
   16340              :           return -1;
   16341              :         }
   16342              : 
   16343              :     case 125:
   16344              :       if (GET_MODE (x3) != E_V2DImode
   16345              :           || !register_operand (operands[0], E_V2DImode))
   16346              :         return -1;
   16347              :       x4 = XVECEXP (x3, 0, 0);
   16348              :       operands[1] = x4;
   16349              :       if (!register_operand (operands[1], E_V2DImode))
   16350              :         return -1;
   16351              :       x5 = XVECEXP (x3, 0, 1);
   16352              :       operands[2] = x5;
   16353              :       if (!register_operand (operands[2], E_V2DImode))
   16354              :         return -1;
   16355              :       x6 = XVECEXP (x3, 0, 2);
   16356              :       operands[3] = x6;
   16357              :       if (!const_0_to_255_operand (operands[3], E_VOIDmode))
   16358              :         return -1;
   16359              :       x7 = XVECEXP (x3, 0, 3);
   16360              :       operands[4] = x7;
   16361              :       if (!const_0_to_255_operand (operands[4], E_VOIDmode)
   16362              :           || !
   16363              : #line 24000 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16364              : (TARGET_SSE4A))
   16365              :         return -1;
   16366              :       return 8752; /* sse4a_insertqi */
   16367              : 
   16368              :     case 146:
   16369              :       x4 = XVECEXP (x3, 0, 0);
   16370              :       operands[1] = x4;
   16371              :       x5 = XVECEXP (x3, 0, 1);
   16372              :       operands[2] = x5;
   16373              :       x6 = XVECEXP (x3, 0, 2);
   16374              :       operands[3] = x6;
   16375              :       x7 = XVECEXP (x3, 0, 3);
   16376              :       operands[4] = x7;
   16377              :       if (!const_0_to_3_operand (operands[4], E_SImode))
   16378              :         return -1;
   16379              :       switch (GET_MODE (operands[0]))
   16380              :         {
   16381              :         case E_V8SFmode:
   16382              :           if (pattern1151 (x3, 
   16383              : E_V8SImode, 
   16384              : E_V8SFmode) != 0
   16385              :               || !(
   16386              : #line 28015 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16387              : (TARGET_XOP) && 
   16388              : #line 425 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16389              : (TARGET_AVX)))
   16390              :             return -1;
   16391              :           return 9162; /* xop_vpermil2v8sf3 */
   16392              : 
   16393              :         case E_V4SFmode:
   16394              :           if (pattern1151 (x3, 
   16395              : E_V4SImode, 
   16396              : E_V4SFmode) != 0
   16397              :               || !
   16398              : #line 28015 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16399              : (TARGET_XOP))
   16400              :             return -1;
   16401              :           return 9163; /* xop_vpermil2v4sf3 */
   16402              : 
   16403              :         case E_V4DFmode:
   16404              :           if (pattern1151 (x3, 
   16405              : E_V4DImode, 
   16406              : E_V4DFmode) != 0
   16407              :               || !(
   16408              : #line 28015 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16409              : (TARGET_XOP) && 
   16410              : #line 426 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16411              : (TARGET_AVX)))
   16412              :             return -1;
   16413              :           return 9164; /* xop_vpermil2v4df3 */
   16414              : 
   16415              :         case E_V2DFmode:
   16416              :           if (pattern1151 (x3, 
   16417              : E_V2DImode, 
   16418              : E_V2DFmode) != 0
   16419              :               || !(
   16420              : #line 28015 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16421              : (TARGET_XOP) && 
   16422              : #line 426 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16423              : (TARGET_SSE2)))
   16424              :             return -1;
   16425              :           return 9165; /* xop_vpermil2v2df3 */
   16426              : 
   16427              :         default:
   16428              :           return -1;
   16429              :         }
   16430              : 
   16431              :     case 154:
   16432              :       if (pnum_clobbers == NULL)
   16433              :         return -1;
   16434              :       x5 = XVECEXP (x3, 0, 1);
   16435              :       if (GET_CODE (x5) != MEM)
   16436              :         return -1;
   16437              :       x8 = XEXP (x5, 0);
   16438              :       if (GET_CODE (x8) != UNSPEC
   16439              :           || XVECLEN (x8, 0) != 3
   16440              :           || XINT (x8, 1) != 155)
   16441              :         return -1;
   16442              :       x6 = XVECEXP (x3, 0, 2);
   16443              :       if (GET_CODE (x6) != MEM
   16444              :           || GET_MODE (x6) != E_BLKmode)
   16445              :         return -1;
   16446              :       x9 = XEXP (x6, 0);
   16447              :       if (GET_CODE (x9) != SCRATCH)
   16448              :         return -1;
   16449              :       x10 = XVECEXP (x8, 0, 2);
   16450              :       if (!const1248_operand (x10, E_SImode))
   16451              :         return -1;
   16452              :       x4 = XVECEXP (x3, 0, 0);
   16453              :       switch (GET_CODE (x4))
   16454              :         {
   16455              :         case REG:
   16456              :         case SUBREG:
   16457              :           operands[2] = x4;
   16458              :           operands[7] = x5;
   16459              :           x11 = XVECEXP (x8, 0, 0);
   16460              :           operands[3] = x11;
   16461              :           x12 = XVECEXP (x8, 0, 1);
   16462              :           operands[4] = x12;
   16463              :           operands[6] = x10;
   16464              :           x7 = XVECEXP (x3, 0, 3);
   16465              :           operands[5] = x7;
   16466              :           switch (GET_MODE (operands[0]))
   16467              :             {
   16468              :             case E_V2DImode:
   16469              :               switch (pattern1764 (x3, 
   16470              : E_V2DImode, 
   16471              : E_DImode))
   16472              :                 {
   16473              :                 case 0:
   16474              :                   if (!(
   16475              : #line 30339 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16476              : (TARGET_AVX2) && 
   16477              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   16478              : (Pmode == SImode)))
   16479              :                     return -1;
   16480              :                   *pnum_clobbers = 1;
   16481              :                   return 9774; /* *avx2_gathersiv2di */
   16482              : 
   16483              :                 case 1:
   16484              :                   if (!(
   16485              : #line 30402 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16486              : (TARGET_AVX2) && 
   16487              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   16488              : (Pmode == SImode)))
   16489              :                     return -1;
   16490              :                   *pnum_clobbers = 1;
   16491              :                   return 9806; /* *avx2_gatherdiv2di */
   16492              : 
   16493              :                 case 2:
   16494              :                   if (!(
   16495              : #line 30339 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16496              : (TARGET_AVX2) && 
   16497              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   16498              : (Pmode == DImode)))
   16499              :                     return -1;
   16500              :                   *pnum_clobbers = 1;
   16501              :                   return 9782; /* *avx2_gathersiv2di */
   16502              : 
   16503              :                 case 3:
   16504              :                   if (!(
   16505              : #line 30402 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16506              : (TARGET_AVX2) && 
   16507              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   16508              : (Pmode == DImode)))
   16509              :                     return -1;
   16510              :                   *pnum_clobbers = 1;
   16511              :                   return 9814; /* *avx2_gatherdiv2di */
   16512              : 
   16513              :                 default:
   16514              :                   return -1;
   16515              :                 }
   16516              : 
   16517              :             case E_V2DFmode:
   16518              :               switch (pattern1764 (x3, 
   16519              : E_V2DFmode, 
   16520              : E_DFmode))
   16521              :                 {
   16522              :                 case 0:
   16523              :                   if (!(
   16524              : #line 30339 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16525              : (TARGET_AVX2) && 
   16526              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   16527              : (Pmode == SImode)))
   16528              :                     return -1;
   16529              :                   *pnum_clobbers = 1;
   16530              :                   return 9775; /* *avx2_gathersiv2df */
   16531              : 
   16532              :                 case 1:
   16533              :                   if (!(
   16534              : #line 30402 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16535              : (TARGET_AVX2) && 
   16536              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   16537              : (Pmode == SImode)))
   16538              :                     return -1;
   16539              :                   *pnum_clobbers = 1;
   16540              :                   return 9807; /* *avx2_gatherdiv2df */
   16541              : 
   16542              :                 case 2:
   16543              :                   if (!(
   16544              : #line 30339 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16545              : (TARGET_AVX2) && 
   16546              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   16547              : (Pmode == DImode)))
   16548              :                     return -1;
   16549              :                   *pnum_clobbers = 1;
   16550              :                   return 9783; /* *avx2_gathersiv2df */
   16551              : 
   16552              :                 case 3:
   16553              :                   if (!(
   16554              : #line 30402 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16555              : (TARGET_AVX2) && 
   16556              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   16557              : (Pmode == DImode)))
   16558              :                     return -1;
   16559              :                   *pnum_clobbers = 1;
   16560              :                   return 9815; /* *avx2_gatherdiv2df */
   16561              : 
   16562              :                 default:
   16563              :                   return -1;
   16564              :                 }
   16565              : 
   16566              :             case E_V4DImode:
   16567              :               switch (pattern1766 (x3, 
   16568              : E_V4DImode, 
   16569              : E_DImode))
   16570              :                 {
   16571              :                 case 0:
   16572              :                   if (!(
   16573              : #line 30339 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16574              : (TARGET_AVX2) && 
   16575              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   16576              : (Pmode == SImode)))
   16577              :                     return -1;
   16578              :                   *pnum_clobbers = 1;
   16579              :                   return 9776; /* *avx2_gathersiv4di */
   16580              : 
   16581              :                 case 1:
   16582              :                   if (!(
   16583              : #line 30402 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16584              : (TARGET_AVX2) && 
   16585              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   16586              : (Pmode == SImode)))
   16587              :                     return -1;
   16588              :                   *pnum_clobbers = 1;
   16589              :                   return 9808; /* *avx2_gatherdiv4di */
   16590              : 
   16591              :                 case 2:
   16592              :                   if (!(
   16593              : #line 30339 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16594              : (TARGET_AVX2) && 
   16595              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   16596              : (Pmode == DImode)))
   16597              :                     return -1;
   16598              :                   *pnum_clobbers = 1;
   16599              :                   return 9784; /* *avx2_gathersiv4di */
   16600              : 
   16601              :                 case 3:
   16602              :                   if (!(
   16603              : #line 30402 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16604              : (TARGET_AVX2) && 
   16605              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   16606              : (Pmode == DImode)))
   16607              :                     return -1;
   16608              :                   *pnum_clobbers = 1;
   16609              :                   return 9816; /* *avx2_gatherdiv4di */
   16610              : 
   16611              :                 default:
   16612              :                   return -1;
   16613              :                 }
   16614              : 
   16615              :             case E_V4DFmode:
   16616              :               switch (pattern1766 (x3, 
   16617              : E_V4DFmode, 
   16618              : E_DFmode))
   16619              :                 {
   16620              :                 case 0:
   16621              :                   if (!(
   16622              : #line 30339 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16623              : (TARGET_AVX2) && 
   16624              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   16625              : (Pmode == SImode)))
   16626              :                     return -1;
   16627              :                   *pnum_clobbers = 1;
   16628              :                   return 9777; /* *avx2_gathersiv4df */
   16629              : 
   16630              :                 case 1:
   16631              :                   if (!(
   16632              : #line 30402 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16633              : (TARGET_AVX2) && 
   16634              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   16635              : (Pmode == SImode)))
   16636              :                     return -1;
   16637              :                   *pnum_clobbers = 1;
   16638              :                   return 9809; /* *avx2_gatherdiv4df */
   16639              : 
   16640              :                 case 2:
   16641              :                   if (!(
   16642              : #line 30339 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16643              : (TARGET_AVX2) && 
   16644              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   16645              : (Pmode == DImode)))
   16646              :                     return -1;
   16647              :                   *pnum_clobbers = 1;
   16648              :                   return 9785; /* *avx2_gathersiv4df */
   16649              : 
   16650              :                 case 3:
   16651              :                   if (!(
   16652              : #line 30402 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16653              : (TARGET_AVX2) && 
   16654              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   16655              : (Pmode == DImode)))
   16656              :                     return -1;
   16657              :                   *pnum_clobbers = 1;
   16658              :                   return 9817; /* *avx2_gatherdiv4df */
   16659              : 
   16660              :                 default:
   16661              :                   return -1;
   16662              :                 }
   16663              : 
   16664              :             case E_V4SImode:
   16665              :               switch (pattern1764 (x3, 
   16666              : E_V4SImode, 
   16667              : E_SImode))
   16668              :                 {
   16669              :                 case 0:
   16670              :                   if (!(
   16671              : #line 30339 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16672              : (TARGET_AVX2) && 
   16673              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   16674              : (Pmode == SImode)))
   16675              :                     return -1;
   16676              :                   *pnum_clobbers = 1;
   16677              :                   return 9778; /* *avx2_gathersiv4si */
   16678              : 
   16679              :                 case 1:
   16680              :                   if (!(
   16681              : #line 30402 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16682              : (TARGET_AVX2) && 
   16683              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   16684              : (Pmode == SImode)))
   16685              :                     return -1;
   16686              :                   *pnum_clobbers = 1;
   16687              :                   return 9810; /* *avx2_gatherdiv4si */
   16688              : 
   16689              :                 case 2:
   16690              :                   if (!(
   16691              : #line 30339 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16692              : (TARGET_AVX2) && 
   16693              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   16694              : (Pmode == DImode)))
   16695              :                     return -1;
   16696              :                   *pnum_clobbers = 1;
   16697              :                   return 9786; /* *avx2_gathersiv4si */
   16698              : 
   16699              :                 case 3:
   16700              :                   if (!(
   16701              : #line 30402 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16702              : (TARGET_AVX2) && 
   16703              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   16704              : (Pmode == DImode)))
   16705              :                     return -1;
   16706              :                   *pnum_clobbers = 1;
   16707              :                   return 9818; /* *avx2_gatherdiv4si */
   16708              : 
   16709              :                 default:
   16710              :                   return -1;
   16711              :                 }
   16712              : 
   16713              :             case E_V4SFmode:
   16714              :               switch (pattern1764 (x3, 
   16715              : E_V4SFmode, 
   16716              : E_SFmode))
   16717              :                 {
   16718              :                 case 0:
   16719              :                   if (!(
   16720              : #line 30339 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16721              : (TARGET_AVX2) && 
   16722              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   16723              : (Pmode == SImode)))
   16724              :                     return -1;
   16725              :                   *pnum_clobbers = 1;
   16726              :                   return 9779; /* *avx2_gathersiv4sf */
   16727              : 
   16728              :                 case 1:
   16729              :                   if (!(
   16730              : #line 30402 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16731              : (TARGET_AVX2) && 
   16732              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   16733              : (Pmode == SImode)))
   16734              :                     return -1;
   16735              :                   *pnum_clobbers = 1;
   16736              :                   return 9811; /* *avx2_gatherdiv4sf */
   16737              : 
   16738              :                 case 2:
   16739              :                   if (!(
   16740              : #line 30339 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16741              : (TARGET_AVX2) && 
   16742              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   16743              : (Pmode == DImode)))
   16744              :                     return -1;
   16745              :                   *pnum_clobbers = 1;
   16746              :                   return 9787; /* *avx2_gathersiv4sf */
   16747              : 
   16748              :                 case 3:
   16749              :                   if (!(
   16750              : #line 30402 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16751              : (TARGET_AVX2) && 
   16752              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   16753              : (Pmode == DImode)))
   16754              :                     return -1;
   16755              :                   *pnum_clobbers = 1;
   16756              :                   return 9819; /* *avx2_gatherdiv4sf */
   16757              : 
   16758              :                 default:
   16759              :                   return -1;
   16760              :                 }
   16761              : 
   16762              :             case E_V8SImode:
   16763              :               if (!register_operand (operands[0], E_V8SImode)
   16764              :                   || GET_MODE (x3) != E_V8SImode
   16765              :                   || !vsib_mem_operator (operands[7], E_SImode))
   16766              :                 return -1;
   16767              :               switch (GET_MODE (operands[2]))
   16768              :                 {
   16769              :                 case E_V8SImode:
   16770              :                   if (!register_operand (operands[2], E_V8SImode)
   16771              :                       || !register_operand (operands[4], E_V8SImode))
   16772              :                     return -1;
   16773              :                   switch (pattern1843 (x8, 
   16774              : E_V8SImode))
   16775              :                     {
   16776              :                     case 0:
   16777              :                       if (!(
   16778              : #line 30339 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16779              : (TARGET_AVX2) && 
   16780              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   16781              : (Pmode == SImode)))
   16782              :                         return -1;
   16783              :                       *pnum_clobbers = 1;
   16784              :                       return 9780; /* *avx2_gathersiv8si */
   16785              : 
   16786              :                     case 1:
   16787              :                       if (!(
   16788              : #line 30339 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16789              : (TARGET_AVX2) && 
   16790              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   16791              : (Pmode == DImode)))
   16792              :                         return -1;
   16793              :                       *pnum_clobbers = 1;
   16794              :                       return 9788; /* *avx2_gathersiv8si */
   16795              : 
   16796              :                     default:
   16797              :                       return -1;
   16798              :                     }
   16799              : 
   16800              :                 case E_V4SImode:
   16801              :                   switch (pattern1844 (x8, 
   16802              : E_V4SImode, 
   16803              : E_V4DImode))
   16804              :                     {
   16805              :                     case 0:
   16806              :                       if (!(
   16807              : #line 30402 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16808              : (TARGET_AVX2) && 
   16809              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   16810              : (Pmode == SImode)))
   16811              :                         return -1;
   16812              :                       *pnum_clobbers = 1;
   16813              :                       return 9812; /* *avx2_gatherdiv8si */
   16814              : 
   16815              :                     case 1:
   16816              :                       if (!(
   16817              : #line 30402 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16818              : (TARGET_AVX2) && 
   16819              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   16820              : (Pmode == DImode)))
   16821              :                         return -1;
   16822              :                       *pnum_clobbers = 1;
   16823              :                       return 9820; /* *avx2_gatherdiv8si */
   16824              : 
   16825              :                     default:
   16826              :                       return -1;
   16827              :                     }
   16828              : 
   16829              :                 default:
   16830              :                   return -1;
   16831              :                 }
   16832              : 
   16833              :             case E_V8SFmode:
   16834              :               if (!register_operand (operands[0], E_V8SFmode)
   16835              :                   || GET_MODE (x3) != E_V8SFmode
   16836              :                   || !vsib_mem_operator (operands[7], E_SFmode))
   16837              :                 return -1;
   16838              :               switch (GET_MODE (operands[2]))
   16839              :                 {
   16840              :                 case E_V8SFmode:
   16841              :                   switch (pattern1844 (x8, 
   16842              : E_V8SFmode, 
   16843              : E_V8SImode))
   16844              :                     {
   16845              :                     case 0:
   16846              :                       if (!(
   16847              : #line 30339 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16848              : (TARGET_AVX2) && 
   16849              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   16850              : (Pmode == SImode)))
   16851              :                         return -1;
   16852              :                       *pnum_clobbers = 1;
   16853              :                       return 9781; /* *avx2_gathersiv8sf */
   16854              : 
   16855              :                     case 1:
   16856              :                       if (!(
   16857              : #line 30339 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16858              : (TARGET_AVX2) && 
   16859              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   16860              : (Pmode == DImode)))
   16861              :                         return -1;
   16862              :                       *pnum_clobbers = 1;
   16863              :                       return 9789; /* *avx2_gathersiv8sf */
   16864              : 
   16865              :                     default:
   16866              :                       return -1;
   16867              :                     }
   16868              : 
   16869              :                 case E_V4SFmode:
   16870              :                   switch (pattern1844 (x8, 
   16871              : E_V4SFmode, 
   16872              : E_V4DImode))
   16873              :                     {
   16874              :                     case 0:
   16875              :                       if (!(
   16876              : #line 30402 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16877              : (TARGET_AVX2) && 
   16878              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   16879              : (Pmode == SImode)))
   16880              :                         return -1;
   16881              :                       *pnum_clobbers = 1;
   16882              :                       return 9813; /* *avx2_gatherdiv8sf */
   16883              : 
   16884              :                     case 1:
   16885              :                       if (!(
   16886              : #line 30402 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16887              : (TARGET_AVX2) && 
   16888              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   16889              : (Pmode == DImode)))
   16890              :                         return -1;
   16891              :                       *pnum_clobbers = 1;
   16892              :                       return 9821; /* *avx2_gatherdiv8sf */
   16893              : 
   16894              :                     default:
   16895              :                       return -1;
   16896              :                     }
   16897              : 
   16898              :                 default:
   16899              :                   return -1;
   16900              :                 }
   16901              : 
   16902              :             default:
   16903              :               return -1;
   16904              :             }
   16905              : 
   16906              :         case PC:
   16907              :           operands[6] = x5;
   16908              :           x11 = XVECEXP (x8, 0, 0);
   16909              :           operands[2] = x11;
   16910              :           x12 = XVECEXP (x8, 0, 1);
   16911              :           operands[3] = x12;
   16912              :           operands[5] = x10;
   16913              :           x7 = XVECEXP (x3, 0, 3);
   16914              :           operands[4] = x7;
   16915              :           switch (GET_MODE (operands[0]))
   16916              :             {
   16917              :             case E_V2DImode:
   16918              :               switch (pattern1725 (x3, 
   16919              : E_V2DImode, 
   16920              : E_DImode))
   16921              :                 {
   16922              :                 case 0:
   16923              :                   if (!(
   16924              : #line 30360 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16925              : (TARGET_AVX2) && 
   16926              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   16927              : (Pmode == SImode)))
   16928              :                     return -1;
   16929              :                   *pnum_clobbers = 1;
   16930              :                   return 9790; /* *avx2_gathersiv2di_2 */
   16931              : 
   16932              :                 case 1:
   16933              :                   if (!(
   16934              : #line 30423 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16935              : (TARGET_AVX2) && 
   16936              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   16937              : (Pmode == SImode)))
   16938              :                     return -1;
   16939              :                   *pnum_clobbers = 1;
   16940              :                   return 9822; /* *avx2_gatherdiv2di_2 */
   16941              : 
   16942              :                 case 2:
   16943              :                   if (!(
   16944              : #line 30360 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16945              : (TARGET_AVX2) && 
   16946              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   16947              : (Pmode == DImode)))
   16948              :                     return -1;
   16949              :                   *pnum_clobbers = 1;
   16950              :                   return 9798; /* *avx2_gathersiv2di_2 */
   16951              : 
   16952              :                 case 3:
   16953              :                   if (!(
   16954              : #line 30423 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16955              : (TARGET_AVX2) && 
   16956              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   16957              : (Pmode == DImode)))
   16958              :                     return -1;
   16959              :                   *pnum_clobbers = 1;
   16960              :                   return 9830; /* *avx2_gatherdiv2di_2 */
   16961              : 
   16962              :                 default:
   16963              :                   return -1;
   16964              :                 }
   16965              : 
   16966              :             case E_V2DFmode:
   16967              :               switch (pattern1725 (x3, 
   16968              : E_V2DFmode, 
   16969              : E_DFmode))
   16970              :                 {
   16971              :                 case 0:
   16972              :                   if (!(
   16973              : #line 30360 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16974              : (TARGET_AVX2) && 
   16975              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   16976              : (Pmode == SImode)))
   16977              :                     return -1;
   16978              :                   *pnum_clobbers = 1;
   16979              :                   return 9791; /* *avx2_gathersiv2df_2 */
   16980              : 
   16981              :                 case 1:
   16982              :                   if (!(
   16983              : #line 30423 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16984              : (TARGET_AVX2) && 
   16985              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   16986              : (Pmode == SImode)))
   16987              :                     return -1;
   16988              :                   *pnum_clobbers = 1;
   16989              :                   return 9823; /* *avx2_gatherdiv2df_2 */
   16990              : 
   16991              :                 case 2:
   16992              :                   if (!(
   16993              : #line 30360 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16994              : (TARGET_AVX2) && 
   16995              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   16996              : (Pmode == DImode)))
   16997              :                     return -1;
   16998              :                   *pnum_clobbers = 1;
   16999              :                   return 9799; /* *avx2_gathersiv2df_2 */
   17000              : 
   17001              :                 case 3:
   17002              :                   if (!(
   17003              : #line 30423 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17004              : (TARGET_AVX2) && 
   17005              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   17006              : (Pmode == DImode)))
   17007              :                     return -1;
   17008              :                   *pnum_clobbers = 1;
   17009              :                   return 9831; /* *avx2_gatherdiv2df_2 */
   17010              : 
   17011              :                 default:
   17012              :                   return -1;
   17013              :                 }
   17014              : 
   17015              :             case E_V4DImode:
   17016              :               switch (pattern1727 (x3, 
   17017              : E_V4DImode, 
   17018              : E_DImode))
   17019              :                 {
   17020              :                 case 0:
   17021              :                   if (!(
   17022              : #line 30360 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17023              : (TARGET_AVX2) && 
   17024              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   17025              : (Pmode == SImode)))
   17026              :                     return -1;
   17027              :                   *pnum_clobbers = 1;
   17028              :                   return 9792; /* *avx2_gathersiv4di_2 */
   17029              : 
   17030              :                 case 1:
   17031              :                   if (!(
   17032              : #line 30423 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17033              : (TARGET_AVX2) && 
   17034              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   17035              : (Pmode == SImode)))
   17036              :                     return -1;
   17037              :                   *pnum_clobbers = 1;
   17038              :                   return 9824; /* *avx2_gatherdiv4di_2 */
   17039              : 
   17040              :                 case 2:
   17041              :                   if (!(
   17042              : #line 30360 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17043              : (TARGET_AVX2) && 
   17044              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   17045              : (Pmode == DImode)))
   17046              :                     return -1;
   17047              :                   *pnum_clobbers = 1;
   17048              :                   return 9800; /* *avx2_gathersiv4di_2 */
   17049              : 
   17050              :                 case 3:
   17051              :                   if (!(
   17052              : #line 30423 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17053              : (TARGET_AVX2) && 
   17054              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   17055              : (Pmode == DImode)))
   17056              :                     return -1;
   17057              :                   *pnum_clobbers = 1;
   17058              :                   return 9832; /* *avx2_gatherdiv4di_2 */
   17059              : 
   17060              :                 default:
   17061              :                   return -1;
   17062              :                 }
   17063              : 
   17064              :             case E_V4DFmode:
   17065              :               switch (pattern1727 (x3, 
   17066              : E_V4DFmode, 
   17067              : E_DFmode))
   17068              :                 {
   17069              :                 case 0:
   17070              :                   if (!(
   17071              : #line 30360 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17072              : (TARGET_AVX2) && 
   17073              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   17074              : (Pmode == SImode)))
   17075              :                     return -1;
   17076              :                   *pnum_clobbers = 1;
   17077              :                   return 9793; /* *avx2_gathersiv4df_2 */
   17078              : 
   17079              :                 case 1:
   17080              :                   if (!(
   17081              : #line 30423 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17082              : (TARGET_AVX2) && 
   17083              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   17084              : (Pmode == SImode)))
   17085              :                     return -1;
   17086              :                   *pnum_clobbers = 1;
   17087              :                   return 9825; /* *avx2_gatherdiv4df_2 */
   17088              : 
   17089              :                 case 2:
   17090              :                   if (!(
   17091              : #line 30360 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17092              : (TARGET_AVX2) && 
   17093              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   17094              : (Pmode == DImode)))
   17095              :                     return -1;
   17096              :                   *pnum_clobbers = 1;
   17097              :                   return 9801; /* *avx2_gathersiv4df_2 */
   17098              : 
   17099              :                 case 3:
   17100              :                   if (!(
   17101              : #line 30423 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17102              : (TARGET_AVX2) && 
   17103              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   17104              : (Pmode == DImode)))
   17105              :                     return -1;
   17106              :                   *pnum_clobbers = 1;
   17107              :                   return 9833; /* *avx2_gatherdiv4df_2 */
   17108              : 
   17109              :                 default:
   17110              :                   return -1;
   17111              :                 }
   17112              : 
   17113              :             case E_V4SImode:
   17114              :               switch (pattern1725 (x3, 
   17115              : E_V4SImode, 
   17116              : E_SImode))
   17117              :                 {
   17118              :                 case 0:
   17119              :                   if (!(
   17120              : #line 30360 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17121              : (TARGET_AVX2) && 
   17122              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   17123              : (Pmode == SImode)))
   17124              :                     return -1;
   17125              :                   *pnum_clobbers = 1;
   17126              :                   return 9794; /* *avx2_gathersiv4si_2 */
   17127              : 
   17128              :                 case 1:
   17129              :                   if (!(
   17130              : #line 30423 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17131              : (TARGET_AVX2) && 
   17132              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   17133              : (Pmode == SImode)))
   17134              :                     return -1;
   17135              :                   *pnum_clobbers = 1;
   17136              :                   return 9826; /* *avx2_gatherdiv4si_2 */
   17137              : 
   17138              :                 case 2:
   17139              :                   if (!(
   17140              : #line 30360 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17141              : (TARGET_AVX2) && 
   17142              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   17143              : (Pmode == DImode)))
   17144              :                     return -1;
   17145              :                   *pnum_clobbers = 1;
   17146              :                   return 9802; /* *avx2_gathersiv4si_2 */
   17147              : 
   17148              :                 case 3:
   17149              :                   if (!(
   17150              : #line 30423 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17151              : (TARGET_AVX2) && 
   17152              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   17153              : (Pmode == DImode)))
   17154              :                     return -1;
   17155              :                   *pnum_clobbers = 1;
   17156              :                   return 9834; /* *avx2_gatherdiv4si_2 */
   17157              : 
   17158              :                 default:
   17159              :                   return -1;
   17160              :                 }
   17161              : 
   17162              :             case E_V4SFmode:
   17163              :               switch (pattern1725 (x3, 
   17164              : E_V4SFmode, 
   17165              : E_SFmode))
   17166              :                 {
   17167              :                 case 0:
   17168              :                   if (!(
   17169              : #line 30360 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17170              : (TARGET_AVX2) && 
   17171              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   17172              : (Pmode == SImode)))
   17173              :                     return -1;
   17174              :                   *pnum_clobbers = 1;
   17175              :                   return 9795; /* *avx2_gathersiv4sf_2 */
   17176              : 
   17177              :                 case 1:
   17178              :                   if (!(
   17179              : #line 30423 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17180              : (TARGET_AVX2) && 
   17181              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   17182              : (Pmode == SImode)))
   17183              :                     return -1;
   17184              :                   *pnum_clobbers = 1;
   17185              :                   return 9827; /* *avx2_gatherdiv4sf_2 */
   17186              : 
   17187              :                 case 2:
   17188              :                   if (!(
   17189              : #line 30360 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17190              : (TARGET_AVX2) && 
   17191              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   17192              : (Pmode == DImode)))
   17193              :                     return -1;
   17194              :                   *pnum_clobbers = 1;
   17195              :                   return 9803; /* *avx2_gathersiv4sf_2 */
   17196              : 
   17197              :                 case 3:
   17198              :                   if (!(
   17199              : #line 30423 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17200              : (TARGET_AVX2) && 
   17201              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   17202              : (Pmode == DImode)))
   17203              :                     return -1;
   17204              :                   *pnum_clobbers = 1;
   17205              :                   return 9835; /* *avx2_gatherdiv4sf_2 */
   17206              : 
   17207              :                 default:
   17208              :                   return -1;
   17209              :                 }
   17210              : 
   17211              :             case E_V8SImode:
   17212              :               switch (pattern1728 (x3, 
   17213              : E_SImode, 
   17214              : E_V8SImode))
   17215              :                 {
   17216              :                 case 0:
   17217              :                   switch (pattern1812 (
   17218              : E_SImode))
   17219              :                     {
   17220              :                     case 0:
   17221              :                       if (!(
   17222              : #line 30360 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17223              : (TARGET_AVX2) && 
   17224              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   17225              : (Pmode == SImode)))
   17226              :                         return -1;
   17227              :                       *pnum_clobbers = 1;
   17228              :                       return 9796; /* *avx2_gathersiv8si_2 */
   17229              : 
   17230              :                     case 1:
   17231              :                       if (!(
   17232              : #line 30423 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17233              : (TARGET_AVX2) && 
   17234              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   17235              : (Pmode == SImode)))
   17236              :                         return -1;
   17237              :                       *pnum_clobbers = 1;
   17238              :                       return 9828; /* *avx2_gatherdiv8si_2 */
   17239              : 
   17240              :                     default:
   17241              :                       return -1;
   17242              :                     }
   17243              : 
   17244              :                 case 1:
   17245              :                   switch (pattern1812 (
   17246              : E_DImode))
   17247              :                     {
   17248              :                     case 0:
   17249              :                       if (!(
   17250              : #line 30360 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17251              : (TARGET_AVX2) && 
   17252              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   17253              : (Pmode == DImode)))
   17254              :                         return -1;
   17255              :                       *pnum_clobbers = 1;
   17256              :                       return 9804; /* *avx2_gathersiv8si_2 */
   17257              : 
   17258              :                     case 1:
   17259              :                       if (!(
   17260              : #line 30423 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17261              : (TARGET_AVX2) && 
   17262              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   17263              : (Pmode == DImode)))
   17264              :                         return -1;
   17265              :                       *pnum_clobbers = 1;
   17266              :                       return 9836; /* *avx2_gatherdiv8si_2 */
   17267              : 
   17268              :                     default:
   17269              :                       return -1;
   17270              :                     }
   17271              : 
   17272              :                 default:
   17273              :                   return -1;
   17274              :                 }
   17275              : 
   17276              :             case E_V8SFmode:
   17277              :               switch (pattern1728 (x3, 
   17278              : E_SFmode, 
   17279              : E_V8SFmode))
   17280              :                 {
   17281              :                 case 0:
   17282              :                   switch (pattern1813 (
   17283              : E_SImode))
   17284              :                     {
   17285              :                     case 0:
   17286              :                       if (!(
   17287              : #line 30360 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17288              : (TARGET_AVX2) && 
   17289              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   17290              : (Pmode == SImode)))
   17291              :                         return -1;
   17292              :                       *pnum_clobbers = 1;
   17293              :                       return 9797; /* *avx2_gathersiv8sf_2 */
   17294              : 
   17295              :                     case 1:
   17296              :                       if (!(
   17297              : #line 30423 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17298              : (TARGET_AVX2) && 
   17299              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   17300              : (Pmode == SImode)))
   17301              :                         return -1;
   17302              :                       *pnum_clobbers = 1;
   17303              :                       return 9829; /* *avx2_gatherdiv8sf_2 */
   17304              : 
   17305              :                     default:
   17306              :                       return -1;
   17307              :                     }
   17308              : 
   17309              :                 case 1:
   17310              :                   switch (pattern1813 (
   17311              : E_DImode))
   17312              :                     {
   17313              :                     case 0:
   17314              :                       if (!(
   17315              : #line 30360 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17316              : (TARGET_AVX2) && 
   17317              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   17318              : (Pmode == DImode)))
   17319              :                         return -1;
   17320              :                       *pnum_clobbers = 1;
   17321              :                       return 9805; /* *avx2_gathersiv8sf_2 */
   17322              : 
   17323              :                     case 1:
   17324              :                       if (!(
   17325              : #line 30423 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17326              : (TARGET_AVX2) && 
   17327              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   17328              : (Pmode == DImode)))
   17329              :                         return -1;
   17330              :                       *pnum_clobbers = 1;
   17331              :                       return 9837; /* *avx2_gatherdiv8sf_2 */
   17332              : 
   17333              :                     default:
   17334              :                       return -1;
   17335              :                     }
   17336              : 
   17337              :                 default:
   17338              :                   return -1;
   17339              :                 }
   17340              : 
   17341              :             default:
   17342              :               return -1;
   17343              :             }
   17344              : 
   17345              :         default:
   17346              :           return -1;
   17347              :         }
   17348              : 
   17349              :     case 227:
   17350              :       if (GET_MODE (x3) != E_V4SImode
   17351              :           || pattern176 (x3) != 0)
   17352              :         return -1;
   17353              :       x7 = XVECEXP (x3, 0, 3);
   17354              :       operands[4] = x7;
   17355              :       if (!const_0_to_255_operand (operands[4], E_SImode)
   17356              :           || !
   17357              : #line 31121 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17358              : (TARGET_SM3))
   17359              :         return -1;
   17360              :       return 10197; /* vsm3rnds2 */
   17361              : 
   17362              :     default:
   17363              :       return -1;
   17364              :     }
   17365              : }
   17366              : 
   17367              :  int
   17368              : recog_313 (rtx x1 ATTRIBUTE_UNUSED,
   17369              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   17370              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   17371              : {
   17372              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   17373              :   rtx x2, x3, x4, x5;
   17374              :   int res ATTRIBUTE_UNUSED;
   17375              :   x2 = XEXP (x1, 1);
   17376              :   x3 = XEXP (x2, 0);
   17377              :   switch (GET_CODE (x3))
   17378              :     {
   17379              :     case REG:
   17380              :     case SUBREG:
   17381              :     case MEM:
   17382              :     case VEC_DUPLICATE:
   17383              :       operands[1] = x3;
   17384              :       x4 = XEXP (x2, 1);
   17385              :       operands[2] = x4;
   17386              :       switch (GET_CODE (operands[2]))
   17387              :         {
   17388              :         case REG:
   17389              :         case SUBREG:
   17390              :         case MEM:
   17391              :         case VEC_DUPLICATE:
   17392              :           switch (GET_MODE (operands[0]))
   17393              :             {
   17394              :             case E_V16BFmode:
   17395              :               if (pattern26 (x2, 
   17396              : E_V16BFmode) != 0
   17397              :                   || !(
   17398              : #line 5769 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17399              : (TARGET_SSE && 1
   17400              :    && (!false || 16 != 16)
   17401              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))) && 
   17402              : #line 430 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17403              : (TARGET_AVX)))
   17404              :                 return -1;
   17405              :               return 3791; /* *xorv16bf3 */
   17406              : 
   17407              :             case E_V8BFmode:
   17408              :               if (pattern26 (x2, 
   17409              : E_V8BFmode) != 0
   17410              :                   || !(
   17411              : #line 5769 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17412              : (TARGET_SSE && 1
   17413              :    && (!false || 16 != 16)
   17414              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))) && 
   17415              : #line 430 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17416              : (TARGET_SSE2)))
   17417              :                 return -1;
   17418              :               return 3794; /* *xorv8bf3 */
   17419              : 
   17420              :             case E_V16HFmode:
   17421              :               if (pattern26 (x2, 
   17422              : E_V16HFmode) != 0
   17423              :                   || !(
   17424              : #line 5769 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17425              : (TARGET_SSE && 1
   17426              :    && (!false || 16 != 16)
   17427              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))) && 
   17428              : #line 431 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17429              : (TARGET_AVX)))
   17430              :                 return -1;
   17431              :               return 3797; /* *xorv16hf3 */
   17432              : 
   17433              :             case E_V8HFmode:
   17434              :               if (pattern26 (x2, 
   17435              : E_V8HFmode) != 0
   17436              :                   || !(
   17437              : #line 5769 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17438              : (TARGET_SSE && 1
   17439              :    && (!false || 16 != 16)
   17440              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))) && 
   17441              : #line 431 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17442              : (TARGET_SSE2)))
   17443              :                 return -1;
   17444              :               return 3800; /* *xorv8hf3 */
   17445              : 
   17446              :             case E_V8SFmode:
   17447              :               if (pattern26 (x2, 
   17448              : E_V8SFmode) != 0
   17449              :                   || !(
   17450              : #line 5769 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17451              : (TARGET_SSE && 1
   17452              :    && (!false || 32 != 16)
   17453              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))) && 
   17454              : #line 432 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17455              : (TARGET_AVX)))
   17456              :                 return -1;
   17457              :               return 3805; /* *xorv8sf3 */
   17458              : 
   17459              :             case E_V4SFmode:
   17460              :               if (pattern26 (x2, 
   17461              : E_V4SFmode) != 0
   17462              :                   || !
   17463              : #line 5769 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17464              : (TARGET_SSE && 1
   17465              :    && (!false || 32 != 16)
   17466              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
   17467              :                 return -1;
   17468              :               return 3811; /* *xorv4sf3 */
   17469              : 
   17470              :             case E_V4DFmode:
   17471              :               if (pattern26 (x2, 
   17472              : E_V4DFmode) != 0
   17473              :                   || !(
   17474              : #line 5769 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17475              : (TARGET_SSE && 1
   17476              :    && (!false || 64 != 16)
   17477              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))) && 
   17478              : #line 433 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17479              : (TARGET_AVX)))
   17480              :                 return -1;
   17481              :               return 3817; /* *xorv4df3 */
   17482              : 
   17483              :             case E_V2DFmode:
   17484              :               if (pattern26 (x2, 
   17485              : E_V2DFmode) != 0
   17486              :                   || !(
   17487              : #line 5769 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17488              : (TARGET_SSE && 1
   17489              :    && (!false || 64 != 16)
   17490              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))) && 
   17491              : #line 433 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17492              : (TARGET_SSE2)))
   17493              :                 return -1;
   17494              :               return 3823; /* *xorv2df3 */
   17495              : 
   17496              :             case E_V32BFmode:
   17497              :               if (pattern3 (x2, 
   17498              : E_V32BFmode) != 0
   17499              :                   || !
   17500              : #line 5840 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17501              : (TARGET_AVX512F && !(MEM_P (operands[1]) && MEM_P (operands[2]))
   17502              :    && (!false || 16 != 16)))
   17503              :                 return -1;
   17504              :               return 3827; /* *xorv32bf3 */
   17505              : 
   17506              :             case E_V32HFmode:
   17507              :               if (pattern3 (x2, 
   17508              : E_V32HFmode) != 0
   17509              :                   || !
   17510              : #line 5840 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17511              : (TARGET_AVX512F && !(MEM_P (operands[1]) && MEM_P (operands[2]))
   17512              :    && (!false || 16 != 16)))
   17513              :                 return -1;
   17514              :               return 3830; /* *xorv32hf3 */
   17515              : 
   17516              :             case E_V16SFmode:
   17517              :               if (pattern3 (x2, 
   17518              : E_V16SFmode) != 0
   17519              :                   || !
   17520              : #line 5840 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17521              : (TARGET_AVX512F && !(MEM_P (operands[1]) && MEM_P (operands[2]))
   17522              :    && (!false || 32 != 16)))
   17523              :                 return -1;
   17524              :               return 3835; /* *xorv16sf3 */
   17525              : 
   17526              :             case E_V8DFmode:
   17527              :               if (pattern3 (x2, 
   17528              : E_V8DFmode) != 0
   17529              :                   || !
   17530              : #line 5840 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17531              : (TARGET_AVX512F && !(MEM_P (operands[1]) && MEM_P (operands[2]))
   17532              :    && (!false || 64 != 16)))
   17533              :                 return -1;
   17534              :               return 3841; /* *xorv8df3 */
   17535              : 
   17536              :             case E_V16SImode:
   17537              :               if (pattern189 (x2, 
   17538              : E_V16SImode) != 0
   17539              :                   || !(
   17540              : #line 19195 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17541              : (TARGET_SSE && 1
   17542              :    && ix86_binary_operator_ok (XOR, V16SImode, operands)) && 
   17543              : #line 795 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17544              : (TARGET_AVX512F)))
   17545              :                 return -1;
   17546              :               return 8083; /* *xorv16si3 */
   17547              : 
   17548              :             case E_V8SImode:
   17549              :               if (pattern189 (x2, 
   17550              : E_V8SImode) != 0
   17551              :                   || !(
   17552              : #line 19195 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17553              : (TARGET_SSE && 1
   17554              :    && ix86_binary_operator_ok (XOR, V8SImode, operands)) && 
   17555              : #line 795 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17556              : (TARGET_AVX)))
   17557              :                 return -1;
   17558              :               return 8089; /* *xorv8si3 */
   17559              : 
   17560              :             case E_V4SImode:
   17561              :               if (pattern189 (x2, 
   17562              : E_V4SImode) != 0
   17563              :                   || !
   17564              : #line 19195 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17565              : (TARGET_SSE && 1
   17566              :    && ix86_binary_operator_ok (XOR, V4SImode, operands)))
   17567              :                 return -1;
   17568              :               return 8095; /* *xorv4si3 */
   17569              : 
   17570              :             case E_V8DImode:
   17571              :               if (pattern189 (x2, 
   17572              : E_V8DImode) != 0
   17573              :                   || !(
   17574              : #line 19195 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17575              : (TARGET_SSE && 1
   17576              :    && ix86_binary_operator_ok (XOR, V8DImode, operands)) && 
   17577              : #line 796 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17578              : (TARGET_AVX512F)))
   17579              :                 return -1;
   17580              :               return 8101; /* *xorv8di3 */
   17581              : 
   17582              :             case E_V4DImode:
   17583              :               if (pattern189 (x2, 
   17584              : E_V4DImode) != 0
   17585              :                   || !(
   17586              : #line 19195 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17587              : (TARGET_SSE && 1
   17588              :    && ix86_binary_operator_ok (XOR, V4DImode, operands)) && 
   17589              : #line 796 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17590              : (TARGET_AVX)))
   17591              :                 return -1;
   17592              :               return 8107; /* *xorv4di3 */
   17593              : 
   17594              :             case E_V2DImode:
   17595              :               if (pattern189 (x2, 
   17596              : E_V2DImode) != 0
   17597              :                   || !
   17598              : #line 19195 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17599              : (TARGET_SSE && 1
   17600              :    && ix86_binary_operator_ok (XOR, V2DImode, operands)))
   17601              :                 return -1;
   17602              :               return 8113; /* *xorv2di3 */
   17603              : 
   17604              :             case E_V64QImode:
   17605              :               if (pattern26 (x2, 
   17606              : E_V64QImode) != 0
   17607              :                   || !(
   17608              : #line 19298 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17609              : (TARGET_SSE && !(MEM_P (operands[1]) && MEM_P (operands[2]))) && 
   17610              : #line 799 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17611              : (TARGET_AVX512F)))
   17612              :                 return -1;
   17613              :               return 8117; /* *xorv64qi3 */
   17614              : 
   17615              :             case E_V32QImode:
   17616              :               if (pattern26 (x2, 
   17617              : E_V32QImode) != 0
   17618              :                   || !(
   17619              : #line 19298 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17620              : (TARGET_SSE && !(MEM_P (operands[1]) && MEM_P (operands[2]))) && 
   17621              : #line 799 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17622              : (TARGET_AVX)))
   17623              :                 return -1;
   17624              :               return 8120; /* *xorv32qi3 */
   17625              : 
   17626              :             case E_V16QImode:
   17627              :               if (pattern26 (x2, 
   17628              : E_V16QImode) != 0
   17629              :                   || !
   17630              : #line 19298 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17631              : (TARGET_SSE && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
   17632              :                 return -1;
   17633              :               return 8123; /* *xorv16qi3 */
   17634              : 
   17635              :             case E_V32HImode:
   17636              :               if (pattern26 (x2, 
   17637              : E_V32HImode) != 0
   17638              :                   || !(
   17639              : #line 19298 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17640              : (TARGET_SSE && !(MEM_P (operands[1]) && MEM_P (operands[2]))) && 
   17641              : #line 800 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17642              : (TARGET_AVX512F)))
   17643              :                 return -1;
   17644              :               return 8126; /* *xorv32hi3 */
   17645              : 
   17646              :             case E_V16HImode:
   17647              :               if (pattern26 (x2, 
   17648              : E_V16HImode) != 0
   17649              :                   || !(
   17650              : #line 19298 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17651              : (TARGET_SSE && !(MEM_P (operands[1]) && MEM_P (operands[2]))) && 
   17652              : #line 800 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17653              : (TARGET_AVX)))
   17654              :                 return -1;
   17655              :               return 8129; /* *xorv16hi3 */
   17656              : 
   17657              :             case E_V8HImode:
   17658              :               if (pattern26 (x2, 
   17659              : E_V8HImode) != 0
   17660              :                   || !
   17661              : #line 19298 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17662              : (TARGET_SSE && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
   17663              :                 return -1;
   17664              :               return 8132; /* *xorv8hi3 */
   17665              : 
   17666              :             case E_V1TImode:
   17667              :               if (pattern682 (x2, 
   17668              : E_V1TImode) != 0
   17669              :                   || !
   17670              : #line 19396 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17671              : (TARGET_SSE2))
   17672              :                 return -1;
   17673              :               return 8135; /* xorv1ti3 */
   17674              : 
   17675              :             default:
   17676              :               return -1;
   17677              :             }
   17678              : 
   17679              :         case CONST_VECTOR:
   17680              :           switch (GET_MODE (operands[0]))
   17681              :             {
   17682              :             case E_V16SImode:
   17683              :               if (pattern937 (x2, 
   17684              : E_V16SImode) != 0
   17685              :                   || !(
   17686              : #line 18822 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17687              : (TARGET_AVX512F
   17688              :    && (!false
   17689              :        || SImode == SImode
   17690              :        || SImode == DImode)) && 
   17691              : #line 556 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17692              : (TARGET_AVX512F)))
   17693              :                 return -1;
   17694              :               return 8031; /* *one_cmplv16si2 */
   17695              : 
   17696              :             case E_V8DImode:
   17697              :               if (pattern937 (x2, 
   17698              : E_V8DImode) != 0
   17699              :                   || !(
   17700              : #line 18822 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17701              : (TARGET_AVX512F
   17702              :    && (!false
   17703              :        || DImode == SImode
   17704              :        || DImode == DImode)) && 
   17705              : #line 556 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17706              : (TARGET_AVX512F)))
   17707              :                 return -1;
   17708              :               return 8033; /* *one_cmplv8di2 */
   17709              : 
   17710              :             case E_V64QImode:
   17711              :               if (pattern937 (x2, 
   17712              : E_V64QImode) != 0
   17713              :                   || !(
   17714              : #line 18822 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17715              : (TARGET_AVX512F
   17716              :    && (!false
   17717              :        || QImode == SImode
   17718              :        || QImode == DImode)) && 
   17719              : #line 557 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17720              : (TARGET_AVX512BW)))
   17721              :                 return -1;
   17722              :               return 8035; /* *one_cmplv64qi2 */
   17723              : 
   17724              :             case E_V32QImode:
   17725              :               if (pattern937 (x2, 
   17726              : E_V32QImode) != 0
   17727              :                   || !(
   17728              : #line 18822 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17729              : (TARGET_AVX512F
   17730              :    && (!false
   17731              :        || QImode == SImode
   17732              :        || QImode == DImode)) && 
   17733              : #line 557 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17734              : (TARGET_AVX)))
   17735              :                 return -1;
   17736              :               return 8036; /* *one_cmplv32qi2 */
   17737              : 
   17738              :             case E_V16QImode:
   17739              :               if (pattern937 (x2, 
   17740              : E_V16QImode) != 0
   17741              :                   || !
   17742              : #line 18822 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17743              : (TARGET_AVX512F
   17744              :    && (!false
   17745              :        || QImode == SImode
   17746              :        || QImode == DImode)))
   17747              :                 return -1;
   17748              :               return 8037; /* *one_cmplv16qi2 */
   17749              : 
   17750              :             case E_V32HImode:
   17751              :               if (pattern937 (x2, 
   17752              : E_V32HImode) != 0
   17753              :                   || !(
   17754              : #line 18822 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17755              : (TARGET_AVX512F
   17756              :    && (!false
   17757              :        || HImode == SImode
   17758              :        || HImode == DImode)) && 
   17759              : #line 558 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17760              : (TARGET_AVX512BW)))
   17761              :                 return -1;
   17762              :               return 8038; /* *one_cmplv32hi2 */
   17763              : 
   17764              :             case E_V16HImode:
   17765              :               if (pattern937 (x2, 
   17766              : E_V16HImode) != 0
   17767              :                   || !(
   17768              : #line 18822 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17769              : (TARGET_AVX512F
   17770              :    && (!false
   17771              :        || HImode == SImode
   17772              :        || HImode == DImode)) && 
   17773              : #line 558 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17774              : (TARGET_AVX)))
   17775              :                 return -1;
   17776              :               return 8039; /* *one_cmplv16hi2 */
   17777              : 
   17778              :             case E_V8HImode:
   17779              :               if (pattern937 (x2, 
   17780              : E_V8HImode) != 0
   17781              :                   || !
   17782              : #line 18822 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17783              : (TARGET_AVX512F
   17784              :    && (!false
   17785              :        || HImode == SImode
   17786              :        || HImode == DImode)))
   17787              :                 return -1;
   17788              :               return 8040; /* *one_cmplv8hi2 */
   17789              : 
   17790              :             case E_V8SImode:
   17791              :               if (pattern937 (x2, 
   17792              : E_V8SImode) != 0
   17793              :                   || !(
   17794              : #line 18822 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17795              : (TARGET_AVX512F
   17796              :    && (!false
   17797              :        || SImode == SImode
   17798              :        || SImode == DImode)) && 
   17799              : #line 559 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17800              : (TARGET_AVX)))
   17801              :                 return -1;
   17802              :               return 8041; /* *one_cmplv8si2 */
   17803              : 
   17804              :             case E_V4SImode:
   17805              :               if (pattern937 (x2, 
   17806              : E_V4SImode) != 0
   17807              :                   || !
   17808              : #line 18822 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17809              : (TARGET_AVX512F
   17810              :    && (!false
   17811              :        || SImode == SImode
   17812              :        || SImode == DImode)))
   17813              :                 return -1;
   17814              :               return 8043; /* *one_cmplv4si2 */
   17815              : 
   17816              :             case E_V4DImode:
   17817              :               if (pattern937 (x2, 
   17818              : E_V4DImode) != 0
   17819              :                   || !(
   17820              : #line 18822 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17821              : (TARGET_AVX512F
   17822              :    && (!false
   17823              :        || DImode == SImode
   17824              :        || DImode == DImode)) && 
   17825              : #line 560 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17826              : (TARGET_AVX)))
   17827              :                 return -1;
   17828              :               return 8045; /* *one_cmplv4di2 */
   17829              : 
   17830              :             case E_V2DImode:
   17831              :               if (pattern937 (x2, 
   17832              : E_V2DImode) != 0
   17833              :                   || !
   17834              : #line 18822 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17835              : (TARGET_AVX512F
   17836              :    && (!false
   17837              :        || DImode == SImode
   17838              :        || DImode == DImode)))
   17839              :                 return -1;
   17840              :               return 8047; /* *one_cmplv2di2 */
   17841              : 
   17842              :             default:
   17843              :               return -1;
   17844              :             }
   17845              : 
   17846              :         default:
   17847              :           return -1;
   17848              :         }
   17849              : 
   17850              :     case AND:
   17851              :       x5 = XEXP (x3, 0);
   17852              :       switch (GET_CODE (x5))
   17853              :         {
   17854              :         case REG:
   17855              :         case SUBREG:
   17856              :         case MEM:
   17857              :         case NOT:
   17858              :           switch (pattern537 (x2))
   17859              :             {
   17860              :             case 0:
   17861              :               if (!(
   17862              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17863              : ((64 == 64 || TARGET_AVX512VL
   17864              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17865              :    && ix86_pre_reload_split ()
   17866              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17867              :                     STRIP_UNARY (operands[4]))
   17868              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17869              :                        STRIP_UNARY (operands[4]))
   17870              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17871              :                        STRIP_UNARY (operands[3]))
   17872              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17873              :                        STRIP_UNARY (operands[3])))) && 
   17874              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17875              : (TARGET_AVX512F)))
   17876              :                 return -1;
   17877              :               return 5546; /* *avx512bw_vpternlogv64qi_1 */
   17878              : 
   17879              :             case 1:
   17880              :               if (!(
   17881              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17882              : ((32 == 64 || TARGET_AVX512VL
   17883              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17884              :    && ix86_pre_reload_split ()
   17885              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17886              :                     STRIP_UNARY (operands[4]))
   17887              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17888              :                        STRIP_UNARY (operands[4]))
   17889              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17890              :                        STRIP_UNARY (operands[3]))
   17891              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17892              :                        STRIP_UNARY (operands[3])))) && 
   17893              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17894              : (TARGET_AVX)))
   17895              :                 return -1;
   17896              :               return 5573; /* *avx512vl_vpternlogv32qi_1 */
   17897              : 
   17898              :             case 2:
   17899              :               if (!
   17900              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17901              : ((16 == 64 || TARGET_AVX512VL
   17902              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17903              :    && ix86_pre_reload_split ()
   17904              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17905              :                     STRIP_UNARY (operands[4]))
   17906              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17907              :                        STRIP_UNARY (operands[4]))
   17908              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17909              :                        STRIP_UNARY (operands[3]))
   17910              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17911              :                        STRIP_UNARY (operands[3])))))
   17912              :                 return -1;
   17913              :               return 5600; /* *avx512vl_vpternlogv16qi_1 */
   17914              : 
   17915              :             case 3:
   17916              :               if (!(
   17917              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17918              : ((64 == 64 || TARGET_AVX512VL
   17919              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17920              :    && ix86_pre_reload_split ()
   17921              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17922              :                     STRIP_UNARY (operands[4]))
   17923              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17924              :                        STRIP_UNARY (operands[4]))
   17925              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17926              :                        STRIP_UNARY (operands[3]))
   17927              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17928              :                        STRIP_UNARY (operands[3])))) && 
   17929              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17930              : (TARGET_AVX512F)))
   17931              :                 return -1;
   17932              :               return 5627; /* *avx512bw_vpternlogv32hi_1 */
   17933              : 
   17934              :             case 4:
   17935              :               if (!(
   17936              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17937              : ((32 == 64 || TARGET_AVX512VL
   17938              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17939              :    && ix86_pre_reload_split ()
   17940              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17941              :                     STRIP_UNARY (operands[4]))
   17942              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17943              :                        STRIP_UNARY (operands[4]))
   17944              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17945              :                        STRIP_UNARY (operands[3]))
   17946              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17947              :                        STRIP_UNARY (operands[3])))) && 
   17948              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17949              : (TARGET_AVX)))
   17950              :                 return -1;
   17951              :               return 5654; /* *avx512vl_vpternlogv16hi_1 */
   17952              : 
   17953              :             case 5:
   17954              :               if (!
   17955              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17956              : ((16 == 64 || TARGET_AVX512VL
   17957              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17958              :    && ix86_pre_reload_split ()
   17959              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17960              :                     STRIP_UNARY (operands[4]))
   17961              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17962              :                        STRIP_UNARY (operands[4]))
   17963              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17964              :                        STRIP_UNARY (operands[3]))
   17965              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17966              :                        STRIP_UNARY (operands[3])))))
   17967              :                 return -1;
   17968              :               return 5681; /* *avx512vl_vpternlogv8hi_1 */
   17969              : 
   17970              :             case 6:
   17971              :               if (!(
   17972              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17973              : ((64 == 64 || TARGET_AVX512VL
   17974              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17975              :    && ix86_pre_reload_split ()
   17976              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17977              :                     STRIP_UNARY (operands[4]))
   17978              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17979              :                        STRIP_UNARY (operands[4]))
   17980              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17981              :                        STRIP_UNARY (operands[3]))
   17982              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17983              :                        STRIP_UNARY (operands[3])))) && 
   17984              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17985              : (TARGET_AVX512F)))
   17986              :                 return -1;
   17987              :               return 5708; /* *avx512f_vpternlogv16si_1 */
   17988              : 
   17989              :             case 7:
   17990              :               if (!(
   17991              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17992              : ((32 == 64 || TARGET_AVX512VL
   17993              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17994              :    && ix86_pre_reload_split ()
   17995              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17996              :                     STRIP_UNARY (operands[4]))
   17997              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17998              :                        STRIP_UNARY (operands[4]))
   17999              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18000              :                        STRIP_UNARY (operands[3]))
   18001              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18002              :                        STRIP_UNARY (operands[3])))) && 
   18003              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18004              : (TARGET_AVX)))
   18005              :                 return -1;
   18006              :               return 5735; /* *avx512vl_vpternlogv8si_1 */
   18007              : 
   18008              :             case 8:
   18009              :               if (!
   18010              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18011              : ((16 == 64 || TARGET_AVX512VL
   18012              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18013              :    && ix86_pre_reload_split ()
   18014              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18015              :                     STRIP_UNARY (operands[4]))
   18016              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18017              :                        STRIP_UNARY (operands[4]))
   18018              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18019              :                        STRIP_UNARY (operands[3]))
   18020              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18021              :                        STRIP_UNARY (operands[3])))))
   18022              :                 return -1;
   18023              :               return 5762; /* *avx512vl_vpternlogv4si_1 */
   18024              : 
   18025              :             case 9:
   18026              :               if (!(
   18027              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18028              : ((64 == 64 || TARGET_AVX512VL
   18029              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18030              :    && ix86_pre_reload_split ()
   18031              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18032              :                     STRIP_UNARY (operands[4]))
   18033              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18034              :                        STRIP_UNARY (operands[4]))
   18035              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18036              :                        STRIP_UNARY (operands[3]))
   18037              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18038              :                        STRIP_UNARY (operands[3])))) && 
   18039              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18040              : (TARGET_AVX512F)))
   18041              :                 return -1;
   18042              :               return 5789; /* *avx512f_vpternlogv8di_1 */
   18043              : 
   18044              :             case 10:
   18045              :               if (!(
   18046              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18047              : ((32 == 64 || TARGET_AVX512VL
   18048              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18049              :    && ix86_pre_reload_split ()
   18050              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18051              :                     STRIP_UNARY (operands[4]))
   18052              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18053              :                        STRIP_UNARY (operands[4]))
   18054              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18055              :                        STRIP_UNARY (operands[3]))
   18056              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18057              :                        STRIP_UNARY (operands[3])))) && 
   18058              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18059              : (TARGET_AVX)))
   18060              :                 return -1;
   18061              :               return 5816; /* *avx512vl_vpternlogv4di_1 */
   18062              : 
   18063              :             case 11:
   18064              :               if (!
   18065              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18066              : ((16 == 64 || TARGET_AVX512VL
   18067              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18068              :    && ix86_pre_reload_split ()
   18069              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18070              :                     STRIP_UNARY (operands[4]))
   18071              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18072              :                        STRIP_UNARY (operands[4]))
   18073              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18074              :                        STRIP_UNARY (operands[3]))
   18075              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18076              :                        STRIP_UNARY (operands[3])))))
   18077              :                 return -1;
   18078              :               return 5843; /* *avx512vl_vpternlogv2di_1 */
   18079              : 
   18080              :             case 12:
   18081              :               if (!(
   18082              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18083              : ((64 == 64 || TARGET_AVX512VL
   18084              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18085              :    && ix86_pre_reload_split ()
   18086              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18087              :                     STRIP_UNARY (operands[4]))
   18088              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18089              :                        STRIP_UNARY (operands[4]))
   18090              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18091              :                        STRIP_UNARY (operands[3]))
   18092              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18093              :                        STRIP_UNARY (operands[3])))) && 
   18094              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18095              : (TARGET_AVX512F)))
   18096              :                 return -1;
   18097              :               return 5549; /* *avx512bw_vpternlogv64qi_1 */
   18098              : 
   18099              :             case 13:
   18100              :               if (!(
   18101              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18102              : ((32 == 64 || TARGET_AVX512VL
   18103              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18104              :    && ix86_pre_reload_split ()
   18105              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18106              :                     STRIP_UNARY (operands[4]))
   18107              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18108              :                        STRIP_UNARY (operands[4]))
   18109              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18110              :                        STRIP_UNARY (operands[3]))
   18111              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18112              :                        STRIP_UNARY (operands[3])))) && 
   18113              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18114              : (TARGET_AVX)))
   18115              :                 return -1;
   18116              :               return 5576; /* *avx512vl_vpternlogv32qi_1 */
   18117              : 
   18118              :             case 14:
   18119              :               if (!
   18120              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18121              : ((16 == 64 || TARGET_AVX512VL
   18122              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18123              :    && ix86_pre_reload_split ()
   18124              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18125              :                     STRIP_UNARY (operands[4]))
   18126              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18127              :                        STRIP_UNARY (operands[4]))
   18128              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18129              :                        STRIP_UNARY (operands[3]))
   18130              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18131              :                        STRIP_UNARY (operands[3])))))
   18132              :                 return -1;
   18133              :               return 5603; /* *avx512vl_vpternlogv16qi_1 */
   18134              : 
   18135              :             case 15:
   18136              :               if (!(
   18137              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18138              : ((64 == 64 || TARGET_AVX512VL
   18139              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18140              :    && ix86_pre_reload_split ()
   18141              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18142              :                     STRIP_UNARY (operands[4]))
   18143              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18144              :                        STRIP_UNARY (operands[4]))
   18145              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18146              :                        STRIP_UNARY (operands[3]))
   18147              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18148              :                        STRIP_UNARY (operands[3])))) && 
   18149              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18150              : (TARGET_AVX512F)))
   18151              :                 return -1;
   18152              :               return 5630; /* *avx512bw_vpternlogv32hi_1 */
   18153              : 
   18154              :             case 16:
   18155              :               if (!(
   18156              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18157              : ((32 == 64 || TARGET_AVX512VL
   18158              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18159              :    && ix86_pre_reload_split ()
   18160              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18161              :                     STRIP_UNARY (operands[4]))
   18162              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18163              :                        STRIP_UNARY (operands[4]))
   18164              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18165              :                        STRIP_UNARY (operands[3]))
   18166              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18167              :                        STRIP_UNARY (operands[3])))) && 
   18168              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18169              : (TARGET_AVX)))
   18170              :                 return -1;
   18171              :               return 5657; /* *avx512vl_vpternlogv16hi_1 */
   18172              : 
   18173              :             case 17:
   18174              :               if (!
   18175              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18176              : ((16 == 64 || TARGET_AVX512VL
   18177              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18178              :    && ix86_pre_reload_split ()
   18179              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18180              :                     STRIP_UNARY (operands[4]))
   18181              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18182              :                        STRIP_UNARY (operands[4]))
   18183              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18184              :                        STRIP_UNARY (operands[3]))
   18185              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18186              :                        STRIP_UNARY (operands[3])))))
   18187              :                 return -1;
   18188              :               return 5684; /* *avx512vl_vpternlogv8hi_1 */
   18189              : 
   18190              :             case 18:
   18191              :               if (!(
   18192              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18193              : ((64 == 64 || TARGET_AVX512VL
   18194              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18195              :    && ix86_pre_reload_split ()
   18196              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18197              :                     STRIP_UNARY (operands[4]))
   18198              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18199              :                        STRIP_UNARY (operands[4]))
   18200              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18201              :                        STRIP_UNARY (operands[3]))
   18202              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18203              :                        STRIP_UNARY (operands[3])))) && 
   18204              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18205              : (TARGET_AVX512F)))
   18206              :                 return -1;
   18207              :               return 5711; /* *avx512f_vpternlogv16si_1 */
   18208              : 
   18209              :             case 19:
   18210              :               if (!(
   18211              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18212              : ((32 == 64 || TARGET_AVX512VL
   18213              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18214              :    && ix86_pre_reload_split ()
   18215              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18216              :                     STRIP_UNARY (operands[4]))
   18217              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18218              :                        STRIP_UNARY (operands[4]))
   18219              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18220              :                        STRIP_UNARY (operands[3]))
   18221              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18222              :                        STRIP_UNARY (operands[3])))) && 
   18223              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18224              : (TARGET_AVX)))
   18225              :                 return -1;
   18226              :               return 5738; /* *avx512vl_vpternlogv8si_1 */
   18227              : 
   18228              :             case 20:
   18229              :               if (!
   18230              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18231              : ((16 == 64 || TARGET_AVX512VL
   18232              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18233              :    && ix86_pre_reload_split ()
   18234              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18235              :                     STRIP_UNARY (operands[4]))
   18236              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18237              :                        STRIP_UNARY (operands[4]))
   18238              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18239              :                        STRIP_UNARY (operands[3]))
   18240              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18241              :                        STRIP_UNARY (operands[3])))))
   18242              :                 return -1;
   18243              :               return 5765; /* *avx512vl_vpternlogv4si_1 */
   18244              : 
   18245              :             case 21:
   18246              :               if (!(
   18247              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18248              : ((64 == 64 || TARGET_AVX512VL
   18249              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18250              :    && ix86_pre_reload_split ()
   18251              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18252              :                     STRIP_UNARY (operands[4]))
   18253              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18254              :                        STRIP_UNARY (operands[4]))
   18255              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18256              :                        STRIP_UNARY (operands[3]))
   18257              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18258              :                        STRIP_UNARY (operands[3])))) && 
   18259              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18260              : (TARGET_AVX512F)))
   18261              :                 return -1;
   18262              :               return 5792; /* *avx512f_vpternlogv8di_1 */
   18263              : 
   18264              :             case 22:
   18265              :               if (!(
   18266              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18267              : ((32 == 64 || TARGET_AVX512VL
   18268              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18269              :    && ix86_pre_reload_split ()
   18270              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18271              :                     STRIP_UNARY (operands[4]))
   18272              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18273              :                        STRIP_UNARY (operands[4]))
   18274              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18275              :                        STRIP_UNARY (operands[3]))
   18276              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18277              :                        STRIP_UNARY (operands[3])))) && 
   18278              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18279              : (TARGET_AVX)))
   18280              :                 return -1;
   18281              :               return 5819; /* *avx512vl_vpternlogv4di_1 */
   18282              : 
   18283              :             case 23:
   18284              :               if (!
   18285              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18286              : ((16 == 64 || TARGET_AVX512VL
   18287              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18288              :    && ix86_pre_reload_split ()
   18289              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18290              :                     STRIP_UNARY (operands[4]))
   18291              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18292              :                        STRIP_UNARY (operands[4]))
   18293              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18294              :                        STRIP_UNARY (operands[3]))
   18295              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18296              :                        STRIP_UNARY (operands[3])))))
   18297              :                 return -1;
   18298              :               return 5846; /* *avx512vl_vpternlogv2di_1 */
   18299              : 
   18300              :             case 24:
   18301              :               if (!(
   18302              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18303              : ((64 == 64 || TARGET_AVX512VL
   18304              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18305              :    && ix86_pre_reload_split ()
   18306              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18307              :                     STRIP_UNARY (operands[4]))
   18308              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18309              :                        STRIP_UNARY (operands[4]))
   18310              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18311              :                        STRIP_UNARY (operands[3]))
   18312              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18313              :                        STRIP_UNARY (operands[3])))) && 
   18314              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18315              : (TARGET_AVX512F)))
   18316              :                 return -1;
   18317              :               return 5552; /* *avx512bw_vpternlogv64qi_1 */
   18318              : 
   18319              :             case 25:
   18320              :               if (!(
   18321              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18322              : ((32 == 64 || TARGET_AVX512VL
   18323              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18324              :    && ix86_pre_reload_split ()
   18325              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18326              :                     STRIP_UNARY (operands[4]))
   18327              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18328              :                        STRIP_UNARY (operands[4]))
   18329              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18330              :                        STRIP_UNARY (operands[3]))
   18331              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18332              :                        STRIP_UNARY (operands[3])))) && 
   18333              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18334              : (TARGET_AVX)))
   18335              :                 return -1;
   18336              :               return 5579; /* *avx512vl_vpternlogv32qi_1 */
   18337              : 
   18338              :             case 26:
   18339              :               if (!
   18340              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18341              : ((16 == 64 || TARGET_AVX512VL
   18342              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18343              :    && ix86_pre_reload_split ()
   18344              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18345              :                     STRIP_UNARY (operands[4]))
   18346              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18347              :                        STRIP_UNARY (operands[4]))
   18348              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18349              :                        STRIP_UNARY (operands[3]))
   18350              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18351              :                        STRIP_UNARY (operands[3])))))
   18352              :                 return -1;
   18353              :               return 5606; /* *avx512vl_vpternlogv16qi_1 */
   18354              : 
   18355              :             case 27:
   18356              :               if (!(
   18357              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18358              : ((64 == 64 || TARGET_AVX512VL
   18359              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18360              :    && ix86_pre_reload_split ()
   18361              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18362              :                     STRIP_UNARY (operands[4]))
   18363              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18364              :                        STRIP_UNARY (operands[4]))
   18365              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18366              :                        STRIP_UNARY (operands[3]))
   18367              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18368              :                        STRIP_UNARY (operands[3])))) && 
   18369              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18370              : (TARGET_AVX512F)))
   18371              :                 return -1;
   18372              :               return 5633; /* *avx512bw_vpternlogv32hi_1 */
   18373              : 
   18374              :             case 28:
   18375              :               if (!(
   18376              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18377              : ((32 == 64 || TARGET_AVX512VL
   18378              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18379              :    && ix86_pre_reload_split ()
   18380              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18381              :                     STRIP_UNARY (operands[4]))
   18382              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18383              :                        STRIP_UNARY (operands[4]))
   18384              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18385              :                        STRIP_UNARY (operands[3]))
   18386              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18387              :                        STRIP_UNARY (operands[3])))) && 
   18388              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18389              : (TARGET_AVX)))
   18390              :                 return -1;
   18391              :               return 5660; /* *avx512vl_vpternlogv16hi_1 */
   18392              : 
   18393              :             case 29:
   18394              :               if (!
   18395              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18396              : ((16 == 64 || TARGET_AVX512VL
   18397              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18398              :    && ix86_pre_reload_split ()
   18399              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18400              :                     STRIP_UNARY (operands[4]))
   18401              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18402              :                        STRIP_UNARY (operands[4]))
   18403              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18404              :                        STRIP_UNARY (operands[3]))
   18405              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18406              :                        STRIP_UNARY (operands[3])))))
   18407              :                 return -1;
   18408              :               return 5687; /* *avx512vl_vpternlogv8hi_1 */
   18409              : 
   18410              :             case 30:
   18411              :               if (!(
   18412              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18413              : ((64 == 64 || TARGET_AVX512VL
   18414              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18415              :    && ix86_pre_reload_split ()
   18416              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18417              :                     STRIP_UNARY (operands[4]))
   18418              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18419              :                        STRIP_UNARY (operands[4]))
   18420              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18421              :                        STRIP_UNARY (operands[3]))
   18422              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18423              :                        STRIP_UNARY (operands[3])))) && 
   18424              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18425              : (TARGET_AVX512F)))
   18426              :                 return -1;
   18427              :               return 5714; /* *avx512f_vpternlogv16si_1 */
   18428              : 
   18429              :             case 31:
   18430              :               if (!(
   18431              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18432              : ((32 == 64 || TARGET_AVX512VL
   18433              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18434              :    && ix86_pre_reload_split ()
   18435              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18436              :                     STRIP_UNARY (operands[4]))
   18437              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18438              :                        STRIP_UNARY (operands[4]))
   18439              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18440              :                        STRIP_UNARY (operands[3]))
   18441              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18442              :                        STRIP_UNARY (operands[3])))) && 
   18443              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18444              : (TARGET_AVX)))
   18445              :                 return -1;
   18446              :               return 5741; /* *avx512vl_vpternlogv8si_1 */
   18447              : 
   18448              :             case 32:
   18449              :               if (!
   18450              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18451              : ((16 == 64 || TARGET_AVX512VL
   18452              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18453              :    && ix86_pre_reload_split ()
   18454              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18455              :                     STRIP_UNARY (operands[4]))
   18456              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18457              :                        STRIP_UNARY (operands[4]))
   18458              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18459              :                        STRIP_UNARY (operands[3]))
   18460              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18461              :                        STRIP_UNARY (operands[3])))))
   18462              :                 return -1;
   18463              :               return 5768; /* *avx512vl_vpternlogv4si_1 */
   18464              : 
   18465              :             case 33:
   18466              :               if (!(
   18467              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18468              : ((64 == 64 || TARGET_AVX512VL
   18469              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18470              :    && ix86_pre_reload_split ()
   18471              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18472              :                     STRIP_UNARY (operands[4]))
   18473              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18474              :                        STRIP_UNARY (operands[4]))
   18475              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18476              :                        STRIP_UNARY (operands[3]))
   18477              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18478              :                        STRIP_UNARY (operands[3])))) && 
   18479              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18480              : (TARGET_AVX512F)))
   18481              :                 return -1;
   18482              :               return 5795; /* *avx512f_vpternlogv8di_1 */
   18483              : 
   18484              :             case 34:
   18485              :               if (!(
   18486              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18487              : ((32 == 64 || TARGET_AVX512VL
   18488              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18489              :    && ix86_pre_reload_split ()
   18490              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18491              :                     STRIP_UNARY (operands[4]))
   18492              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18493              :                        STRIP_UNARY (operands[4]))
   18494              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18495              :                        STRIP_UNARY (operands[3]))
   18496              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18497              :                        STRIP_UNARY (operands[3])))) && 
   18498              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18499              : (TARGET_AVX)))
   18500              :                 return -1;
   18501              :               return 5822; /* *avx512vl_vpternlogv4di_1 */
   18502              : 
   18503              :             case 35:
   18504              :               if (!
   18505              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18506              : ((16 == 64 || TARGET_AVX512VL
   18507              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18508              :    && ix86_pre_reload_split ()
   18509              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18510              :                     STRIP_UNARY (operands[4]))
   18511              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18512              :                        STRIP_UNARY (operands[4]))
   18513              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18514              :                        STRIP_UNARY (operands[3]))
   18515              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18516              :                        STRIP_UNARY (operands[3])))))
   18517              :                 return -1;
   18518              :               return 5849; /* *avx512vl_vpternlogv2di_1 */
   18519              : 
   18520              :             case 36:
   18521              :               if (!(
   18522              : #line 14347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18523              : ((64 == 64 || TARGET_AVX512VL
   18524              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18525              :    && ix86_pre_reload_split ()) && 
   18526              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18527              : (TARGET_AVX512F)))
   18528              :                 return -1;
   18529              :               return 6842; /* *avx512bw_vpternlogv64qi_3 */
   18530              : 
   18531              :             case 37:
   18532              :               if (!(
   18533              : #line 14347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18534              : ((32 == 64 || TARGET_AVX512VL
   18535              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18536              :    && ix86_pre_reload_split ()) && 
   18537              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18538              : (TARGET_AVX)))
   18539              :                 return -1;
   18540              :               return 6851; /* *avx512vl_vpternlogv32qi_3 */
   18541              : 
   18542              :             case 38:
   18543              :               if (!
   18544              : #line 14347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18545              : ((16 == 64 || TARGET_AVX512VL
   18546              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18547              :    && ix86_pre_reload_split ()))
   18548              :                 return -1;
   18549              :               return 6860; /* *avx512vl_vpternlogv16qi_3 */
   18550              : 
   18551              :             case 39:
   18552              :               if (!(
   18553              : #line 14347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18554              : ((64 == 64 || TARGET_AVX512VL
   18555              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18556              :    && ix86_pre_reload_split ()) && 
   18557              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18558              : (TARGET_AVX512F)))
   18559              :                 return -1;
   18560              :               return 6869; /* *avx512bw_vpternlogv32hi_3 */
   18561              : 
   18562              :             case 40:
   18563              :               if (!(
   18564              : #line 14347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18565              : ((32 == 64 || TARGET_AVX512VL
   18566              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18567              :    && ix86_pre_reload_split ()) && 
   18568              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18569              : (TARGET_AVX)))
   18570              :                 return -1;
   18571              :               return 6878; /* *avx512vl_vpternlogv16hi_3 */
   18572              : 
   18573              :             case 41:
   18574              :               if (!
   18575              : #line 14347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18576              : ((16 == 64 || TARGET_AVX512VL
   18577              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18578              :    && ix86_pre_reload_split ()))
   18579              :                 return -1;
   18580              :               return 6887; /* *avx512vl_vpternlogv8hi_3 */
   18581              : 
   18582              :             case 42:
   18583              :               if (!(
   18584              : #line 14347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18585              : ((64 == 64 || TARGET_AVX512VL
   18586              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18587              :    && ix86_pre_reload_split ()) && 
   18588              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18589              : (TARGET_AVX512F)))
   18590              :                 return -1;
   18591              :               return 6896; /* *avx512f_vpternlogv16si_3 */
   18592              : 
   18593              :             case 43:
   18594              :               if (!(
   18595              : #line 14347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18596              : ((32 == 64 || TARGET_AVX512VL
   18597              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18598              :    && ix86_pre_reload_split ()) && 
   18599              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18600              : (TARGET_AVX)))
   18601              :                 return -1;
   18602              :               return 6905; /* *avx512vl_vpternlogv8si_3 */
   18603              : 
   18604              :             case 44:
   18605              :               if (!
   18606              : #line 14347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18607              : ((16 == 64 || TARGET_AVX512VL
   18608              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18609              :    && ix86_pre_reload_split ()))
   18610              :                 return -1;
   18611              :               return 6914; /* *avx512vl_vpternlogv4si_3 */
   18612              : 
   18613              :             case 45:
   18614              :               if (!(
   18615              : #line 14347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18616              : ((64 == 64 || TARGET_AVX512VL
   18617              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18618              :    && ix86_pre_reload_split ()) && 
   18619              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18620              : (TARGET_AVX512F)))
   18621              :                 return -1;
   18622              :               return 6923; /* *avx512f_vpternlogv8di_3 */
   18623              : 
   18624              :             case 46:
   18625              :               if (!(
   18626              : #line 14347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18627              : ((32 == 64 || TARGET_AVX512VL
   18628              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18629              :    && ix86_pre_reload_split ()) && 
   18630              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18631              : (TARGET_AVX)))
   18632              :                 return -1;
   18633              :               return 6932; /* *avx512vl_vpternlogv4di_3 */
   18634              : 
   18635              :             case 47:
   18636              :               if (!
   18637              : #line 14347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18638              : ((16 == 64 || TARGET_AVX512VL
   18639              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18640              :    && ix86_pre_reload_split ()))
   18641              :                 return -1;
   18642              :               return 6941; /* *avx512vl_vpternlogv2di_3 */
   18643              : 
   18644              :             default:
   18645              :               return -1;
   18646              :             }
   18647              : 
   18648              :         case AND:
   18649              :           switch (pattern539 (x2))
   18650              :             {
   18651              :             case 0:
   18652              :               if (!(
   18653              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18654              : ((64 == 64 || TARGET_AVX512VL
   18655              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18656              :    && ix86_pre_reload_split ()
   18657              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18658              :                     STRIP_UNARY (operands[4]))
   18659              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18660              :                        STRIP_UNARY (operands[4]))
   18661              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18662              :                        STRIP_UNARY (operands[3]))
   18663              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18664              :                        STRIP_UNARY (operands[3])))) && 
   18665              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18666              : (TARGET_AVX512F)))
   18667              :                 return -1;
   18668              :               return 6194; /* *avx512bw_vpternlogv64qi_2 */
   18669              : 
   18670              :             case 1:
   18671              :               if (!(
   18672              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18673              : ((32 == 64 || TARGET_AVX512VL
   18674              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18675              :    && ix86_pre_reload_split ()
   18676              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18677              :                     STRIP_UNARY (operands[4]))
   18678              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18679              :                        STRIP_UNARY (operands[4]))
   18680              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18681              :                        STRIP_UNARY (operands[3]))
   18682              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18683              :                        STRIP_UNARY (operands[3])))) && 
   18684              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18685              : (TARGET_AVX)))
   18686              :                 return -1;
   18687              :               return 6221; /* *avx512vl_vpternlogv32qi_2 */
   18688              : 
   18689              :             case 2:
   18690              :               if (!
   18691              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18692              : ((16 == 64 || TARGET_AVX512VL
   18693              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18694              :    && ix86_pre_reload_split ()
   18695              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18696              :                     STRIP_UNARY (operands[4]))
   18697              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18698              :                        STRIP_UNARY (operands[4]))
   18699              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18700              :                        STRIP_UNARY (operands[3]))
   18701              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18702              :                        STRIP_UNARY (operands[3])))))
   18703              :                 return -1;
   18704              :               return 6248; /* *avx512vl_vpternlogv16qi_2 */
   18705              : 
   18706              :             case 3:
   18707              :               if (!(
   18708              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18709              : ((64 == 64 || TARGET_AVX512VL
   18710              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18711              :    && ix86_pre_reload_split ()
   18712              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18713              :                     STRIP_UNARY (operands[4]))
   18714              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18715              :                        STRIP_UNARY (operands[4]))
   18716              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18717              :                        STRIP_UNARY (operands[3]))
   18718              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18719              :                        STRIP_UNARY (operands[3])))) && 
   18720              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18721              : (TARGET_AVX512F)))
   18722              :                 return -1;
   18723              :               return 6275; /* *avx512bw_vpternlogv32hi_2 */
   18724              : 
   18725              :             case 4:
   18726              :               if (!(
   18727              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18728              : ((32 == 64 || TARGET_AVX512VL
   18729              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18730              :    && ix86_pre_reload_split ()
   18731              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18732              :                     STRIP_UNARY (operands[4]))
   18733              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18734              :                        STRIP_UNARY (operands[4]))
   18735              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18736              :                        STRIP_UNARY (operands[3]))
   18737              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18738              :                        STRIP_UNARY (operands[3])))) && 
   18739              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18740              : (TARGET_AVX)))
   18741              :                 return -1;
   18742              :               return 6302; /* *avx512vl_vpternlogv16hi_2 */
   18743              : 
   18744              :             case 5:
   18745              :               if (!
   18746              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18747              : ((16 == 64 || TARGET_AVX512VL
   18748              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18749              :    && ix86_pre_reload_split ()
   18750              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18751              :                     STRIP_UNARY (operands[4]))
   18752              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18753              :                        STRIP_UNARY (operands[4]))
   18754              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18755              :                        STRIP_UNARY (operands[3]))
   18756              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18757              :                        STRIP_UNARY (operands[3])))))
   18758              :                 return -1;
   18759              :               return 6329; /* *avx512vl_vpternlogv8hi_2 */
   18760              : 
   18761              :             case 6:
   18762              :               if (!(
   18763              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18764              : ((64 == 64 || TARGET_AVX512VL
   18765              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18766              :    && ix86_pre_reload_split ()
   18767              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18768              :                     STRIP_UNARY (operands[4]))
   18769              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18770              :                        STRIP_UNARY (operands[4]))
   18771              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18772              :                        STRIP_UNARY (operands[3]))
   18773              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18774              :                        STRIP_UNARY (operands[3])))) && 
   18775              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18776              : (TARGET_AVX512F)))
   18777              :                 return -1;
   18778              :               return 6356; /* *avx512f_vpternlogv16si_2 */
   18779              : 
   18780              :             case 7:
   18781              :               if (!(
   18782              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18783              : ((32 == 64 || TARGET_AVX512VL
   18784              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18785              :    && ix86_pre_reload_split ()
   18786              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18787              :                     STRIP_UNARY (operands[4]))
   18788              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18789              :                        STRIP_UNARY (operands[4]))
   18790              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18791              :                        STRIP_UNARY (operands[3]))
   18792              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18793              :                        STRIP_UNARY (operands[3])))) && 
   18794              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18795              : (TARGET_AVX)))
   18796              :                 return -1;
   18797              :               return 6383; /* *avx512vl_vpternlogv8si_2 */
   18798              : 
   18799              :             case 8:
   18800              :               if (!
   18801              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18802              : ((16 == 64 || TARGET_AVX512VL
   18803              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18804              :    && ix86_pre_reload_split ()
   18805              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18806              :                     STRIP_UNARY (operands[4]))
   18807              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18808              :                        STRIP_UNARY (operands[4]))
   18809              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18810              :                        STRIP_UNARY (operands[3]))
   18811              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18812              :                        STRIP_UNARY (operands[3])))))
   18813              :                 return -1;
   18814              :               return 6410; /* *avx512vl_vpternlogv4si_2 */
   18815              : 
   18816              :             case 9:
   18817              :               if (!(
   18818              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18819              : ((64 == 64 || TARGET_AVX512VL
   18820              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18821              :    && ix86_pre_reload_split ()
   18822              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18823              :                     STRIP_UNARY (operands[4]))
   18824              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18825              :                        STRIP_UNARY (operands[4]))
   18826              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18827              :                        STRIP_UNARY (operands[3]))
   18828              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18829              :                        STRIP_UNARY (operands[3])))) && 
   18830              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18831              : (TARGET_AVX512F)))
   18832              :                 return -1;
   18833              :               return 6437; /* *avx512f_vpternlogv8di_2 */
   18834              : 
   18835              :             case 10:
   18836              :               if (!(
   18837              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18838              : ((32 == 64 || TARGET_AVX512VL
   18839              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18840              :    && ix86_pre_reload_split ()
   18841              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18842              :                     STRIP_UNARY (operands[4]))
   18843              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18844              :                        STRIP_UNARY (operands[4]))
   18845              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18846              :                        STRIP_UNARY (operands[3]))
   18847              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18848              :                        STRIP_UNARY (operands[3])))) && 
   18849              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18850              : (TARGET_AVX)))
   18851              :                 return -1;
   18852              :               return 6464; /* *avx512vl_vpternlogv4di_2 */
   18853              : 
   18854              :             case 11:
   18855              :               if (!
   18856              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18857              : ((16 == 64 || TARGET_AVX512VL
   18858              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18859              :    && ix86_pre_reload_split ()
   18860              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18861              :                     STRIP_UNARY (operands[4]))
   18862              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18863              :                        STRIP_UNARY (operands[4]))
   18864              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18865              :                        STRIP_UNARY (operands[3]))
   18866              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18867              :                        STRIP_UNARY (operands[3])))))
   18868              :                 return -1;
   18869              :               return 6491; /* *avx512vl_vpternlogv2di_2 */
   18870              : 
   18871              :             default:
   18872              :               return -1;
   18873              :             }
   18874              : 
   18875              :         case IOR:
   18876              :           switch (pattern539 (x2))
   18877              :             {
   18878              :             case 0:
   18879              :               if (!(
   18880              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18881              : ((64 == 64 || TARGET_AVX512VL
   18882              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18883              :    && ix86_pre_reload_split ()
   18884              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18885              :                     STRIP_UNARY (operands[4]))
   18886              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18887              :                        STRIP_UNARY (operands[4]))
   18888              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18889              :                        STRIP_UNARY (operands[3]))
   18890              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18891              :                        STRIP_UNARY (operands[3])))) && 
   18892              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18893              : (TARGET_AVX512F)))
   18894              :                 return -1;
   18895              :               return 6197; /* *avx512bw_vpternlogv64qi_2 */
   18896              : 
   18897              :             case 1:
   18898              :               if (!(
   18899              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18900              : ((32 == 64 || TARGET_AVX512VL
   18901              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18902              :    && ix86_pre_reload_split ()
   18903              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18904              :                     STRIP_UNARY (operands[4]))
   18905              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18906              :                        STRIP_UNARY (operands[4]))
   18907              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18908              :                        STRIP_UNARY (operands[3]))
   18909              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18910              :                        STRIP_UNARY (operands[3])))) && 
   18911              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18912              : (TARGET_AVX)))
   18913              :                 return -1;
   18914              :               return 6224; /* *avx512vl_vpternlogv32qi_2 */
   18915              : 
   18916              :             case 2:
   18917              :               if (!
   18918              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18919              : ((16 == 64 || TARGET_AVX512VL
   18920              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18921              :    && ix86_pre_reload_split ()
   18922              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18923              :                     STRIP_UNARY (operands[4]))
   18924              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18925              :                        STRIP_UNARY (operands[4]))
   18926              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18927              :                        STRIP_UNARY (operands[3]))
   18928              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18929              :                        STRIP_UNARY (operands[3])))))
   18930              :                 return -1;
   18931              :               return 6251; /* *avx512vl_vpternlogv16qi_2 */
   18932              : 
   18933              :             case 3:
   18934              :               if (!(
   18935              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18936              : ((64 == 64 || TARGET_AVX512VL
   18937              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18938              :    && ix86_pre_reload_split ()
   18939              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18940              :                     STRIP_UNARY (operands[4]))
   18941              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18942              :                        STRIP_UNARY (operands[4]))
   18943              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18944              :                        STRIP_UNARY (operands[3]))
   18945              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18946              :                        STRIP_UNARY (operands[3])))) && 
   18947              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18948              : (TARGET_AVX512F)))
   18949              :                 return -1;
   18950              :               return 6278; /* *avx512bw_vpternlogv32hi_2 */
   18951              : 
   18952              :             case 4:
   18953              :               if (!(
   18954              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18955              : ((32 == 64 || TARGET_AVX512VL
   18956              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18957              :    && ix86_pre_reload_split ()
   18958              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18959              :                     STRIP_UNARY (operands[4]))
   18960              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18961              :                        STRIP_UNARY (operands[4]))
   18962              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18963              :                        STRIP_UNARY (operands[3]))
   18964              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18965              :                        STRIP_UNARY (operands[3])))) && 
   18966              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18967              : (TARGET_AVX)))
   18968              :                 return -1;
   18969              :               return 6305; /* *avx512vl_vpternlogv16hi_2 */
   18970              : 
   18971              :             case 5:
   18972              :               if (!
   18973              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18974              : ((16 == 64 || TARGET_AVX512VL
   18975              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18976              :    && ix86_pre_reload_split ()
   18977              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18978              :                     STRIP_UNARY (operands[4]))
   18979              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18980              :                        STRIP_UNARY (operands[4]))
   18981              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18982              :                        STRIP_UNARY (operands[3]))
   18983              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18984              :                        STRIP_UNARY (operands[3])))))
   18985              :                 return -1;
   18986              :               return 6332; /* *avx512vl_vpternlogv8hi_2 */
   18987              : 
   18988              :             case 6:
   18989              :               if (!(
   18990              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18991              : ((64 == 64 || TARGET_AVX512VL
   18992              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18993              :    && ix86_pre_reload_split ()
   18994              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18995              :                     STRIP_UNARY (operands[4]))
   18996              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18997              :                        STRIP_UNARY (operands[4]))
   18998              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18999              :                        STRIP_UNARY (operands[3]))
   19000              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19001              :                        STRIP_UNARY (operands[3])))) && 
   19002              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19003              : (TARGET_AVX512F)))
   19004              :                 return -1;
   19005              :               return 6359; /* *avx512f_vpternlogv16si_2 */
   19006              : 
   19007              :             case 7:
   19008              :               if (!(
   19009              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19010              : ((32 == 64 || TARGET_AVX512VL
   19011              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19012              :    && ix86_pre_reload_split ()
   19013              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19014              :                     STRIP_UNARY (operands[4]))
   19015              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19016              :                        STRIP_UNARY (operands[4]))
   19017              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19018              :                        STRIP_UNARY (operands[3]))
   19019              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19020              :                        STRIP_UNARY (operands[3])))) && 
   19021              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19022              : (TARGET_AVX)))
   19023              :                 return -1;
   19024              :               return 6386; /* *avx512vl_vpternlogv8si_2 */
   19025              : 
   19026              :             case 8:
   19027              :               if (!
   19028              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19029              : ((16 == 64 || TARGET_AVX512VL
   19030              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19031              :    && ix86_pre_reload_split ()
   19032              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19033              :                     STRIP_UNARY (operands[4]))
   19034              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19035              :                        STRIP_UNARY (operands[4]))
   19036              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19037              :                        STRIP_UNARY (operands[3]))
   19038              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19039              :                        STRIP_UNARY (operands[3])))))
   19040              :                 return -1;
   19041              :               return 6413; /* *avx512vl_vpternlogv4si_2 */
   19042              : 
   19043              :             case 9:
   19044              :               if (!(
   19045              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19046              : ((64 == 64 || TARGET_AVX512VL
   19047              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19048              :    && ix86_pre_reload_split ()
   19049              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19050              :                     STRIP_UNARY (operands[4]))
   19051              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19052              :                        STRIP_UNARY (operands[4]))
   19053              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19054              :                        STRIP_UNARY (operands[3]))
   19055              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19056              :                        STRIP_UNARY (operands[3])))) && 
   19057              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19058              : (TARGET_AVX512F)))
   19059              :                 return -1;
   19060              :               return 6440; /* *avx512f_vpternlogv8di_2 */
   19061              : 
   19062              :             case 10:
   19063              :               if (!(
   19064              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19065              : ((32 == 64 || TARGET_AVX512VL
   19066              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19067              :    && ix86_pre_reload_split ()
   19068              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19069              :                     STRIP_UNARY (operands[4]))
   19070              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19071              :                        STRIP_UNARY (operands[4]))
   19072              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19073              :                        STRIP_UNARY (operands[3]))
   19074              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19075              :                        STRIP_UNARY (operands[3])))) && 
   19076              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19077              : (TARGET_AVX)))
   19078              :                 return -1;
   19079              :               return 6467; /* *avx512vl_vpternlogv4di_2 */
   19080              : 
   19081              :             case 11:
   19082              :               if (!
   19083              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19084              : ((16 == 64 || TARGET_AVX512VL
   19085              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19086              :    && ix86_pre_reload_split ()
   19087              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19088              :                     STRIP_UNARY (operands[4]))
   19089              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19090              :                        STRIP_UNARY (operands[4]))
   19091              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19092              :                        STRIP_UNARY (operands[3]))
   19093              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19094              :                        STRIP_UNARY (operands[3])))))
   19095              :                 return -1;
   19096              :               return 6494; /* *avx512vl_vpternlogv2di_2 */
   19097              : 
   19098              :             default:
   19099              :               return -1;
   19100              :             }
   19101              : 
   19102              :         case XOR:
   19103              :           switch (pattern539 (x2))
   19104              :             {
   19105              :             case 0:
   19106              :               if (!(
   19107              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19108              : ((64 == 64 || TARGET_AVX512VL
   19109              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19110              :    && ix86_pre_reload_split ()
   19111              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19112              :                     STRIP_UNARY (operands[4]))
   19113              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19114              :                        STRIP_UNARY (operands[4]))
   19115              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19116              :                        STRIP_UNARY (operands[3]))
   19117              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19118              :                        STRIP_UNARY (operands[3])))) && 
   19119              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19120              : (TARGET_AVX512F)))
   19121              :                 return -1;
   19122              :               return 6200; /* *avx512bw_vpternlogv64qi_2 */
   19123              : 
   19124              :             case 1:
   19125              :               if (!(
   19126              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19127              : ((32 == 64 || TARGET_AVX512VL
   19128              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19129              :    && ix86_pre_reload_split ()
   19130              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19131              :                     STRIP_UNARY (operands[4]))
   19132              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19133              :                        STRIP_UNARY (operands[4]))
   19134              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19135              :                        STRIP_UNARY (operands[3]))
   19136              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19137              :                        STRIP_UNARY (operands[3])))) && 
   19138              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19139              : (TARGET_AVX)))
   19140              :                 return -1;
   19141              :               return 6227; /* *avx512vl_vpternlogv32qi_2 */
   19142              : 
   19143              :             case 2:
   19144              :               if (!
   19145              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19146              : ((16 == 64 || TARGET_AVX512VL
   19147              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19148              :    && ix86_pre_reload_split ()
   19149              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19150              :                     STRIP_UNARY (operands[4]))
   19151              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19152              :                        STRIP_UNARY (operands[4]))
   19153              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19154              :                        STRIP_UNARY (operands[3]))
   19155              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19156              :                        STRIP_UNARY (operands[3])))))
   19157              :                 return -1;
   19158              :               return 6254; /* *avx512vl_vpternlogv16qi_2 */
   19159              : 
   19160              :             case 3:
   19161              :               if (!(
   19162              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19163              : ((64 == 64 || TARGET_AVX512VL
   19164              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19165              :    && ix86_pre_reload_split ()
   19166              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19167              :                     STRIP_UNARY (operands[4]))
   19168              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19169              :                        STRIP_UNARY (operands[4]))
   19170              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19171              :                        STRIP_UNARY (operands[3]))
   19172              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19173              :                        STRIP_UNARY (operands[3])))) && 
   19174              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19175              : (TARGET_AVX512F)))
   19176              :                 return -1;
   19177              :               return 6281; /* *avx512bw_vpternlogv32hi_2 */
   19178              : 
   19179              :             case 4:
   19180              :               if (!(
   19181              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19182              : ((32 == 64 || TARGET_AVX512VL
   19183              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19184              :    && ix86_pre_reload_split ()
   19185              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19186              :                     STRIP_UNARY (operands[4]))
   19187              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19188              :                        STRIP_UNARY (operands[4]))
   19189              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19190              :                        STRIP_UNARY (operands[3]))
   19191              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19192              :                        STRIP_UNARY (operands[3])))) && 
   19193              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19194              : (TARGET_AVX)))
   19195              :                 return -1;
   19196              :               return 6308; /* *avx512vl_vpternlogv16hi_2 */
   19197              : 
   19198              :             case 5:
   19199              :               if (!
   19200              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19201              : ((16 == 64 || TARGET_AVX512VL
   19202              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19203              :    && ix86_pre_reload_split ()
   19204              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19205              :                     STRIP_UNARY (operands[4]))
   19206              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19207              :                        STRIP_UNARY (operands[4]))
   19208              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19209              :                        STRIP_UNARY (operands[3]))
   19210              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19211              :                        STRIP_UNARY (operands[3])))))
   19212              :                 return -1;
   19213              :               return 6335; /* *avx512vl_vpternlogv8hi_2 */
   19214              : 
   19215              :             case 6:
   19216              :               if (!(
   19217              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19218              : ((64 == 64 || TARGET_AVX512VL
   19219              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19220              :    && ix86_pre_reload_split ()
   19221              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19222              :                     STRIP_UNARY (operands[4]))
   19223              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19224              :                        STRIP_UNARY (operands[4]))
   19225              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19226              :                        STRIP_UNARY (operands[3]))
   19227              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19228              :                        STRIP_UNARY (operands[3])))) && 
   19229              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19230              : (TARGET_AVX512F)))
   19231              :                 return -1;
   19232              :               return 6362; /* *avx512f_vpternlogv16si_2 */
   19233              : 
   19234              :             case 7:
   19235              :               if (!(
   19236              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19237              : ((32 == 64 || TARGET_AVX512VL
   19238              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19239              :    && ix86_pre_reload_split ()
   19240              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19241              :                     STRIP_UNARY (operands[4]))
   19242              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19243              :                        STRIP_UNARY (operands[4]))
   19244              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19245              :                        STRIP_UNARY (operands[3]))
   19246              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19247              :                        STRIP_UNARY (operands[3])))) && 
   19248              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19249              : (TARGET_AVX)))
   19250              :                 return -1;
   19251              :               return 6389; /* *avx512vl_vpternlogv8si_2 */
   19252              : 
   19253              :             case 8:
   19254              :               if (!
   19255              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19256              : ((16 == 64 || TARGET_AVX512VL
   19257              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19258              :    && ix86_pre_reload_split ()
   19259              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19260              :                     STRIP_UNARY (operands[4]))
   19261              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19262              :                        STRIP_UNARY (operands[4]))
   19263              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19264              :                        STRIP_UNARY (operands[3]))
   19265              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19266              :                        STRIP_UNARY (operands[3])))))
   19267              :                 return -1;
   19268              :               return 6416; /* *avx512vl_vpternlogv4si_2 */
   19269              : 
   19270              :             case 9:
   19271              :               if (!(
   19272              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19273              : ((64 == 64 || TARGET_AVX512VL
   19274              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19275              :    && ix86_pre_reload_split ()
   19276              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19277              :                     STRIP_UNARY (operands[4]))
   19278              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19279              :                        STRIP_UNARY (operands[4]))
   19280              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19281              :                        STRIP_UNARY (operands[3]))
   19282              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19283              :                        STRIP_UNARY (operands[3])))) && 
   19284              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19285              : (TARGET_AVX512F)))
   19286              :                 return -1;
   19287              :               return 6443; /* *avx512f_vpternlogv8di_2 */
   19288              : 
   19289              :             case 10:
   19290              :               if (!(
   19291              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19292              : ((32 == 64 || TARGET_AVX512VL
   19293              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19294              :    && ix86_pre_reload_split ()
   19295              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19296              :                     STRIP_UNARY (operands[4]))
   19297              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19298              :                        STRIP_UNARY (operands[4]))
   19299              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19300              :                        STRIP_UNARY (operands[3]))
   19301              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19302              :                        STRIP_UNARY (operands[3])))) && 
   19303              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19304              : (TARGET_AVX)))
   19305              :                 return -1;
   19306              :               return 6470; /* *avx512vl_vpternlogv4di_2 */
   19307              : 
   19308              :             case 11:
   19309              :               if (!
   19310              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19311              : ((16 == 64 || TARGET_AVX512VL
   19312              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19313              :    && ix86_pre_reload_split ()
   19314              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19315              :                     STRIP_UNARY (operands[4]))
   19316              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19317              :                        STRIP_UNARY (operands[4]))
   19318              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19319              :                        STRIP_UNARY (operands[3]))
   19320              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19321              :                        STRIP_UNARY (operands[3])))))
   19322              :                 return -1;
   19323              :               return 6497; /* *avx512vl_vpternlogv2di_2 */
   19324              : 
   19325              :             default:
   19326              :               return -1;
   19327              :             }
   19328              : 
   19329              :         default:
   19330              :           return -1;
   19331              :         }
   19332              : 
   19333              :     case IOR:
   19334              :       return recog_312 (x1, insn, pnum_clobbers);
   19335              : 
   19336              :     case XOR:
   19337              :       return recog_311 (x1, insn, pnum_clobbers);
   19338              : 
   19339              :     default:
   19340              :       return -1;
   19341              :     }
   19342              : }
   19343              : 
   19344              :  int
   19345              : recog_326 (rtx x1 ATTRIBUTE_UNUSED,
   19346              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   19347              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   19348              : {
   19349              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   19350              :   rtx x2, x3, x4, x5, x6, x7, x8;
   19351              :   int res ATTRIBUTE_UNUSED;
   19352              :   x2 = XEXP (x1, 0);
   19353              :   operands[0] = x2;
   19354              :   x3 = XEXP (x1, 1);
   19355              :   x4 = XEXP (x3, 0);
   19356              :   switch (GET_CODE (x4))
   19357              :     {
   19358              :     case UNSPEC:
   19359              :       return recog_188 (x1, insn, pnum_clobbers);
   19360              : 
   19361              :     case VEC_MERGE:
   19362              :       return recog_185 (x1, insn, pnum_clobbers);
   19363              : 
   19364              :     case PLUS:
   19365              :       return recog_208 (x1, insn, pnum_clobbers);
   19366              : 
   19367              :     case MINUS:
   19368              :       return recog_198 (x1, insn, pnum_clobbers);
   19369              : 
   19370              :     case VEC_DUPLICATE:
   19371              :       return recog_183 (x1, insn, pnum_clobbers);
   19372              : 
   19373              :     case MULT:
   19374              :       return recog_190 (x1, insn, pnum_clobbers);
   19375              : 
   19376              :     case DIV:
   19377              :       return recog_207 (x1, insn, pnum_clobbers);
   19378              : 
   19379              :     case SQRT:
   19380              :       return recog_202 (x1, insn, pnum_clobbers);
   19381              : 
   19382              :     case SMAX:
   19383              :       return recog_200 (x1, insn, pnum_clobbers);
   19384              : 
   19385              :     case SMIN:
   19386              :       return recog_201 (x1, insn, pnum_clobbers);
   19387              : 
   19388              :     case CONST_INT:
   19389              :     case CONST_DOUBLE:
   19390              :     case CONST_VECTOR:
   19391              :     case REG:
   19392              :     case SUBREG:
   19393              :     case MEM:
   19394              :       return recog_182 (x1, insn, pnum_clobbers);
   19395              : 
   19396              :     case NE:
   19397              :     case EQ:
   19398              :     case GE:
   19399              :     case GT:
   19400              :     case LE:
   19401              :     case LT:
   19402              :     case LTGT:
   19403              :     case UNORDERED:
   19404              :     case ORDERED:
   19405              :     case UNEQ:
   19406              :     case UNGE:
   19407              :     case UNGT:
   19408              :     case UNLE:
   19409              :     case UNLT:
   19410              :       operands[3] = x4;
   19411              :       x5 = XEXP (x3, 2);
   19412              :       if (x5 != const_int_rtx[MAX_SAVED_CONST_INT + 1])
   19413              :         return -1;
   19414              :       x6 = XEXP (x4, 0);
   19415              :       operands[1] = x6;
   19416              :       x7 = XEXP (x4, 1);
   19417              :       operands[2] = x7;
   19418              :       x8 = XEXP (x3, 1);
   19419              :       if (!rtx_equal_p (x8, operands[1]))
   19420              :         return -1;
   19421              :       switch (GET_MODE (operands[0]))
   19422              :         {
   19423              :         case E_V4SFmode:
   19424              :           if (pattern1021 (x3, 
   19425              : E_V4SFmode) != 0
   19426              :               || !
   19427              : #line 4651 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19428              : (TARGET_SSE))
   19429              :             return -1;
   19430              :           return 3330; /* sse_vmmaskcmpv4sf3 */
   19431              : 
   19432              :         case E_V2DFmode:
   19433              :           if (pattern1021 (x3, 
   19434              : E_V2DFmode) != 0
   19435              :               || !(
   19436              : #line 4651 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19437              : (TARGET_SSE) && 
   19438              : #line 473 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19439              : (TARGET_SSE2)))
   19440              :             return -1;
   19441              :           return 3331; /* sse2_vmmaskcmpv2df3 */
   19442              : 
   19443              :         default:
   19444              :           return -1;
   19445              :         }
   19446              : 
   19447              :     case AND:
   19448              :       return recog_195 (x1, insn, pnum_clobbers);
   19449              : 
   19450              :     case IOR:
   19451              :       return recog_209 (x1, insn, pnum_clobbers);
   19452              : 
   19453              :     case XOR:
   19454              :       return recog_199 (x1, insn, pnum_clobbers);
   19455              : 
   19456              :     case FMA:
   19457              :       return recog_186 (x1, insn, pnum_clobbers);
   19458              : 
   19459              :     case FLOAT:
   19460              :       return recog_204 (x1, insn, pnum_clobbers);
   19461              : 
   19462              :     case UNSIGNED_FLOAT:
   19463              :       return recog_203 (x1, insn, pnum_clobbers);
   19464              : 
   19465              :     case FIX:
   19466              :       return recog_206 (x1, insn, pnum_clobbers);
   19467              : 
   19468              :     case UNSIGNED_FIX:
   19469              :       return recog_205 (x1, insn, pnum_clobbers);
   19470              : 
   19471              :     case FLOAT_EXTEND:
   19472              :       return recog_193 (x1, insn, pnum_clobbers);
   19473              : 
   19474              :     case FLOAT_TRUNCATE:
   19475              :       x6 = XEXP (x4, 0);
   19476              :       operands[1] = x6;
   19477              :       x8 = XEXP (x3, 1);
   19478              :       operands[2] = x8;
   19479              :       x5 = XEXP (x3, 2);
   19480              :       operands[3] = x5;
   19481              :       switch (GET_MODE (operands[0]))
   19482              :         {
   19483              :         case E_V8HFmode:
   19484              :           if (pattern142 (x3, 
   19485              : E_V8HFmode, 
   19486              : E_QImode) != 0)
   19487              :             return -1;
   19488              :           switch (GET_MODE (operands[1]))
   19489              :             {
   19490              :             case E_V8DFmode:
   19491              :               if (!vector_operand (operands[1], E_V8DFmode)
   19492              :                   || !(
   19493              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   19494              : (TARGET_AVX512F) && 
   19495              : #line 8516 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19496              : (TARGET_AVX512FP16)))
   19497              :                 return -1;
   19498              :               return 4788; /* avx512fp16_vcvtpd2ph_v8df_mask */
   19499              : 
   19500              :             case E_V8SFmode:
   19501              :               if (!vector_operand (operands[1], E_V8SFmode)
   19502              :                   || !(
   19503              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   19504              : (TARGET_AVX512F) && (
   19505              : #line 8516 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19506              : (TARGET_AVX512FP16) && 
   19507              : #line 982 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19508              : (TARGET_AVX512VL))))
   19509              :                 return -1;
   19510              :               return 4796; /* avx512fp16_vcvtps2ph_v8sf_mask */
   19511              : 
   19512              :             default:
   19513              :               return -1;
   19514              :             }
   19515              : 
   19516              :         case E_V16HFmode:
   19517              :           if (pattern141 (x3, 
   19518              : E_V16HFmode, 
   19519              : E_HImode, 
   19520              : E_V16SFmode) != 0
   19521              :               || !(
   19522              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   19523              : (TARGET_AVX512F) && 
   19524              : #line 8516 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19525              : (TARGET_AVX512FP16)))
   19526              :             return -1;
   19527              :           return 4792; /* avx512fp16_vcvtps2ph_v16sf_mask */
   19528              : 
   19529              :         case E_V8SFmode:
   19530              :           if (pattern141 (x3, 
   19531              : E_V8SFmode, 
   19532              : E_QImode, 
   19533              : E_V8DFmode) != 0
   19534              :               || !
   19535              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   19536              : (TARGET_AVX512F))
   19537              :             return -1;
   19538              :           return 5199; /* avx512f_cvtpd2ps512_mask */
   19539              : 
   19540              :         case E_V4SFmode:
   19541              :           if (pattern155 (x3, 
   19542              : E_V4SFmode, 
   19543              : E_V4DFmode, 
   19544              : E_QImode) != 0
   19545              :               || !(
   19546              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   19547              : (TARGET_AVX512F) && 
   19548              : #line 10485 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19549              : (TARGET_AVX && TARGET_AVX512VL)))
   19550              :             return -1;
   19551              :           return 5202; /* avx_cvtpd2ps256_mask */
   19552              : 
   19553              :         case E_V16BFmode:
   19554              :           if (pattern155 (x3, 
   19555              : E_V16BFmode, 
   19556              : E_V16SFmode, 
   19557              : E_HImode) != 0
   19558              :               || !(
   19559              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   19560              : (TARGET_AVX512F) && 
   19561              : #line 32246 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19562              : (TARGET_AVX512BF16)))
   19563              :             return -1;
   19564              :           return 10452; /* avx512f_cvtneps2bf16_v16sf_mask */
   19565              : 
   19566              :         case E_V8BFmode:
   19567              :           if (pattern155 (x3, 
   19568              : E_V8BFmode, 
   19569              : E_V8SFmode, 
   19570              : E_QImode) != 0
   19571              :               || !(
   19572              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   19573              : (TARGET_AVX512F) && (
   19574              : #line 32246 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19575              : (TARGET_AVX512BF16) && 
   19576              : #line 32174 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19577              : (TARGET_AVX512VL))))
   19578              :             return -1;
   19579              :           return 10454; /* avx512f_cvtneps2bf16_v8sf_mask */
   19580              : 
   19581              :         default:
   19582              :           return -1;
   19583              :         }
   19584              : 
   19585              :     case VEC_SELECT:
   19586              :       return recog_184 (x1, insn, pnum_clobbers);
   19587              : 
   19588              :     case SS_TRUNCATE:
   19589              :       switch (pattern146 (x3))
   19590              :         {
   19591              :         case 0:
   19592              :           if (!
   19593              : #line 15537 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19594              : (TARGET_AVX512F))
   19595              :             return -1;
   19596              :           return 7283; /* avx512f_ss_truncatev16siv16qi2_mask */
   19597              : 
   19598              :         case 1:
   19599              :           if (!(
   19600              : #line 15709 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19601              : (TARGET_AVX512VL) && 
   19602              : #line 15626 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19603              : (TARGET_AVX512BW)))
   19604              :             return -1;
   19605              :           return 7319; /* avx512vl_ss_truncatev16hiv16qi2_mask */
   19606              : 
   19607              :         case 2:
   19608              :           if (!
   19609              : #line 15537 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19610              : (TARGET_AVX512F))
   19611              :             return -1;
   19612              :           return 7286; /* avx512f_ss_truncatev16siv16hi2_mask */
   19613              : 
   19614              :         case 3:
   19615              :           if (!
   19616              : #line 15537 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19617              : (TARGET_AVX512F))
   19618              :             return -1;
   19619              :           return 7289; /* avx512f_ss_truncatev8div8si2_mask */
   19620              : 
   19621              :         case 4:
   19622              :           if (!
   19623              : #line 15537 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19624              : (TARGET_AVX512F))
   19625              :             return -1;
   19626              :           return 7292; /* avx512f_ss_truncatev8div8hi2_mask */
   19627              : 
   19628              :         case 5:
   19629              :           if (!
   19630              : #line 15709 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19631              : (TARGET_AVX512VL))
   19632              :             return -1;
   19633              :           return 7316; /* avx512vl_ss_truncatev8siv8hi2_mask */
   19634              : 
   19635              :         case 6:
   19636              :           if (!
   19637              : #line 15609 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19638              : (TARGET_AVX512BW))
   19639              :             return -1;
   19640              :           return 7299; /* avx512bw_ss_truncatev32hiv32qi2_mask */
   19641              : 
   19642              :         case 7:
   19643              :           if (!
   19644              : #line 15709 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19645              : (TARGET_AVX512VL))
   19646              :             return -1;
   19647              :           return 7313; /* avx512vl_ss_truncatev4div4si2_mask */
   19648              : 
   19649              :         default:
   19650              :           return -1;
   19651              :         }
   19652              : 
   19653              :     case TRUNCATE:
   19654              :       return recog_194 (x1, insn, pnum_clobbers);
   19655              : 
   19656              :     case US_TRUNCATE:
   19657              :       switch (pattern146 (x3))
   19658              :         {
   19659              :         case 0:
   19660              :           if (!
   19661              : #line 15537 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19662              : (TARGET_AVX512F))
   19663              :             return -1;
   19664              :           return 7285; /* avx512f_us_truncatev16siv16qi2_mask */
   19665              : 
   19666              :         case 1:
   19667              :           if (!(
   19668              : #line 15709 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19669              : (TARGET_AVX512VL) && 
   19670              : #line 15626 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19671              : (TARGET_AVX512BW)))
   19672              :             return -1;
   19673              :           return 7321; /* avx512vl_us_truncatev16hiv16qi2_mask */
   19674              : 
   19675              :         case 2:
   19676              :           if (!
   19677              : #line 15537 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19678              : (TARGET_AVX512F))
   19679              :             return -1;
   19680              :           return 7288; /* avx512f_us_truncatev16siv16hi2_mask */
   19681              : 
   19682              :         case 3:
   19683              :           if (!
   19684              : #line 15537 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19685              : (TARGET_AVX512F))
   19686              :             return -1;
   19687              :           return 7291; /* avx512f_us_truncatev8div8si2_mask */
   19688              : 
   19689              :         case 4:
   19690              :           if (!
   19691              : #line 15537 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19692              : (TARGET_AVX512F))
   19693              :             return -1;
   19694              :           return 7294; /* avx512f_us_truncatev8div8hi2_mask */
   19695              : 
   19696              :         case 5:
   19697              :           if (!
   19698              : #line 15709 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19699              : (TARGET_AVX512VL))
   19700              :             return -1;
   19701              :           return 7318; /* avx512vl_us_truncatev8siv8hi2_mask */
   19702              : 
   19703              :         case 6:
   19704              :           if (!
   19705              : #line 15609 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19706              : (TARGET_AVX512BW))
   19707              :             return -1;
   19708              :           return 7301; /* avx512bw_us_truncatev32hiv32qi2_mask */
   19709              : 
   19710              :         case 7:
   19711              :           if (!
   19712              : #line 15709 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19713              : (TARGET_AVX512VL))
   19714              :             return -1;
   19715              :           return 7315; /* avx512vl_us_truncatev4div4si2_mask */
   19716              : 
   19717              :         default:
   19718              :           return -1;
   19719              :         }
   19720              : 
   19721              :     case SS_PLUS:
   19722              :       switch (pattern147 (x3))
   19723              :         {
   19724              :         case 0:
   19725              :           if (!(
   19726              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   19727              : (TARGET_AVX512F) && (
   19728              : #line 16757 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19729              : (TARGET_SSE2 && (64 == 64 || TARGET_AVX512VL) && TARGET_AVX512BW
   19730              :    && ix86_binary_operator_ok (SS_PLUS, V64QImode, operands)) && 
   19731              : #line 728 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19732              : (TARGET_AVX512BW))))
   19733              :             return -1;
   19734              :           return 7578; /* *avx512bw_ssaddv64qi3_mask */
   19735              : 
   19736              :         case 1:
   19737              :           if (!(
   19738              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   19739              : (TARGET_AVX512F) && (
   19740              : #line 16757 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19741              : (TARGET_SSE2 && (32 == 64 || TARGET_AVX512VL) && TARGET_AVX512BW
   19742              :    && ix86_binary_operator_ok (SS_PLUS, V32QImode, operands)) && 
   19743              : #line 728 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19744              : (TARGET_AVX2))))
   19745              :             return -1;
   19746              :           return 7586; /* *avx2_ssaddv32qi3_mask */
   19747              : 
   19748              :         case 2:
   19749              :           if (!(
   19750              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   19751              : (TARGET_AVX512F) && 
   19752              : #line 16757 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19753              : (TARGET_SSE2 && (16 == 64 || TARGET_AVX512VL) && TARGET_AVX512BW
   19754              :    && ix86_binary_operator_ok (SS_PLUS, V16QImode, operands))))
   19755              :             return -1;
   19756              :           return 7594; /* *sse2_ssaddv16qi3_mask */
   19757              : 
   19758              :         case 3:
   19759              :           if (!(
   19760              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   19761              : (TARGET_AVX512F) && (
   19762              : #line 16757 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19763              : (TARGET_SSE2 && (64 == 64 || TARGET_AVX512VL) && TARGET_AVX512BW
   19764              :    && ix86_binary_operator_ok (SS_PLUS, V32HImode, operands)) && 
   19765              : #line 729 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19766              : (TARGET_AVX512BW))))
   19767              :             return -1;
   19768              :           return 7602; /* *avx512bw_ssaddv32hi3_mask */
   19769              : 
   19770              :         case 4:
   19771              :           if (!(
   19772              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   19773              : (TARGET_AVX512F) && (
   19774              : #line 16757 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19775              : (TARGET_SSE2 && (32 == 64 || TARGET_AVX512VL) && TARGET_AVX512BW
   19776              :    && ix86_binary_operator_ok (SS_PLUS, V16HImode, operands)) && 
   19777              : #line 729 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19778              : (TARGET_AVX2))))
   19779              :             return -1;
   19780              :           return 7610; /* *avx2_ssaddv16hi3_mask */
   19781              : 
   19782              :         case 5:
   19783              :           if (!(
   19784              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   19785              : (TARGET_AVX512F) && 
   19786              : #line 16757 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19787              : (TARGET_SSE2 && (16 == 64 || TARGET_AVX512VL) && TARGET_AVX512BW
   19788              :    && ix86_binary_operator_ok (SS_PLUS, V8HImode, operands))))
   19789              :             return -1;
   19790              :           return 7618; /* *sse2_ssaddv8hi3_mask */
   19791              : 
   19792              :         default:
   19793              :           return -1;
   19794              :         }
   19795              : 
   19796              :     case US_PLUS:
   19797              :       switch (pattern147 (x3))
   19798              :         {
   19799              :         case 0:
   19800              :           if (!(
   19801              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   19802              : (TARGET_AVX512F) && (
   19803              : #line 16757 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19804              : (TARGET_SSE2 && (64 == 64 || TARGET_AVX512VL) && TARGET_AVX512BW
   19805              :    && ix86_binary_operator_ok (US_PLUS, V64QImode, operands)) && 
   19806              : #line 728 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19807              : (TARGET_AVX512BW))))
   19808              :             return -1;
   19809              :           return 7580; /* *avx512bw_usaddv64qi3_mask */
   19810              : 
   19811              :         case 1:
   19812              :           if (!(
   19813              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   19814              : (TARGET_AVX512F) && (
   19815              : #line 16757 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19816              : (TARGET_SSE2 && (32 == 64 || TARGET_AVX512VL) && TARGET_AVX512BW
   19817              :    && ix86_binary_operator_ok (US_PLUS, V32QImode, operands)) && 
   19818              : #line 728 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19819              : (TARGET_AVX2))))
   19820              :             return -1;
   19821              :           return 7588; /* *avx2_usaddv32qi3_mask */
   19822              : 
   19823              :         case 2:
   19824              :           if (!(
   19825              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   19826              : (TARGET_AVX512F) && 
   19827              : #line 16757 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19828              : (TARGET_SSE2 && (16 == 64 || TARGET_AVX512VL) && TARGET_AVX512BW
   19829              :    && ix86_binary_operator_ok (US_PLUS, V16QImode, operands))))
   19830              :             return -1;
   19831              :           return 7596; /* *sse2_usaddv16qi3_mask */
   19832              : 
   19833              :         case 3:
   19834              :           if (!(
   19835              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   19836              : (TARGET_AVX512F) && (
   19837              : #line 16757 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19838              : (TARGET_SSE2 && (64 == 64 || TARGET_AVX512VL) && TARGET_AVX512BW
   19839              :    && ix86_binary_operator_ok (US_PLUS, V32HImode, operands)) && 
   19840              : #line 729 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19841              : (TARGET_AVX512BW))))
   19842              :             return -1;
   19843              :           return 7604; /* *avx512bw_usaddv32hi3_mask */
   19844              : 
   19845              :         case 4:
   19846              :           if (!(
   19847              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   19848              : (TARGET_AVX512F) && (
   19849              : #line 16757 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19850              : (TARGET_SSE2 && (32 == 64 || TARGET_AVX512VL) && TARGET_AVX512BW
   19851              :    && ix86_binary_operator_ok (US_PLUS, V16HImode, operands)) && 
   19852              : #line 729 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19853              : (TARGET_AVX2))))
   19854              :             return -1;
   19855              :           return 7612; /* *avx2_usaddv16hi3_mask */
   19856              : 
   19857              :         case 5:
   19858              :           if (!(
   19859              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   19860              : (TARGET_AVX512F) && 
   19861              : #line 16757 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19862              : (TARGET_SSE2 && (16 == 64 || TARGET_AVX512VL) && TARGET_AVX512BW
   19863              :    && ix86_binary_operator_ok (US_PLUS, V8HImode, operands))))
   19864              :             return -1;
   19865              :           return 7620; /* *sse2_usaddv8hi3_mask */
   19866              : 
   19867              :         default:
   19868              :           return -1;
   19869              :         }
   19870              : 
   19871              :     case SS_MINUS:
   19872              :       switch (pattern147 (x3))
   19873              :         {
   19874              :         case 0:
   19875              :           if (!(
   19876              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   19877              : (TARGET_AVX512F) && (
   19878              : #line 16757 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19879              : (TARGET_SSE2 && (64 == 64 || TARGET_AVX512VL) && TARGET_AVX512BW
   19880              :    && ix86_binary_operator_ok (SS_MINUS, V64QImode, operands)) && 
   19881              : #line 728 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19882              : (TARGET_AVX512BW))))
   19883              :             return -1;
   19884              :           return 7582; /* *avx512bw_sssubv64qi3_mask */
   19885              : 
   19886              :         case 1:
   19887              :           if (!(
   19888              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   19889              : (TARGET_AVX512F) && (
   19890              : #line 16757 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19891              : (TARGET_SSE2 && (32 == 64 || TARGET_AVX512VL) && TARGET_AVX512BW
   19892              :    && ix86_binary_operator_ok (SS_MINUS, V32QImode, operands)) && 
   19893              : #line 728 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19894              : (TARGET_AVX2))))
   19895              :             return -1;
   19896              :           return 7590; /* *avx2_sssubv32qi3_mask */
   19897              : 
   19898              :         case 2:
   19899              :           if (!(
   19900              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   19901              : (TARGET_AVX512F) && 
   19902              : #line 16757 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19903              : (TARGET_SSE2 && (16 == 64 || TARGET_AVX512VL) && TARGET_AVX512BW
   19904              :    && ix86_binary_operator_ok (SS_MINUS, V16QImode, operands))))
   19905              :             return -1;
   19906              :           return 7598; /* *sse2_sssubv16qi3_mask */
   19907              : 
   19908              :         case 3:
   19909              :           if (!(
   19910              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   19911              : (TARGET_AVX512F) && (
   19912              : #line 16757 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19913              : (TARGET_SSE2 && (64 == 64 || TARGET_AVX512VL) && TARGET_AVX512BW
   19914              :    && ix86_binary_operator_ok (SS_MINUS, V32HImode, operands)) && 
   19915              : #line 729 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19916              : (TARGET_AVX512BW))))
   19917              :             return -1;
   19918              :           return 7606; /* *avx512bw_sssubv32hi3_mask */
   19919              : 
   19920              :         case 4:
   19921              :           if (!(
   19922              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   19923              : (TARGET_AVX512F) && (
   19924              : #line 16757 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19925              : (TARGET_SSE2 && (32 == 64 || TARGET_AVX512VL) && TARGET_AVX512BW
   19926              :    && ix86_binary_operator_ok (SS_MINUS, V16HImode, operands)) && 
   19927              : #line 729 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19928              : (TARGET_AVX2))))
   19929              :             return -1;
   19930              :           return 7614; /* *avx2_sssubv16hi3_mask */
   19931              : 
   19932              :         case 5:
   19933              :           if (!(
   19934              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   19935              : (TARGET_AVX512F) && 
   19936              : #line 16757 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19937              : (TARGET_SSE2 && (16 == 64 || TARGET_AVX512VL) && TARGET_AVX512BW
   19938              :    && ix86_binary_operator_ok (SS_MINUS, V8HImode, operands))))
   19939              :             return -1;
   19940              :           return 7622; /* *sse2_sssubv8hi3_mask */
   19941              : 
   19942              :         default:
   19943              :           return -1;
   19944              :         }
   19945              : 
   19946              :     case US_MINUS:
   19947              :       switch (pattern147 (x3))
   19948              :         {
   19949              :         case 0:
   19950              :           if (!(
   19951              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   19952              : (TARGET_AVX512F) && (
   19953              : #line 16757 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19954              : (TARGET_SSE2 && (64 == 64 || TARGET_AVX512VL) && TARGET_AVX512BW
   19955              :    && ix86_binary_operator_ok (US_MINUS, V64QImode, operands)) && 
   19956              : #line 728 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19957              : (TARGET_AVX512BW))))
   19958              :             return -1;
   19959              :           return 7584; /* *avx512bw_ussubv64qi3_mask */
   19960              : 
   19961              :         case 1:
   19962              :           if (!(
   19963              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   19964              : (TARGET_AVX512F) && (
   19965              : #line 16757 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19966              : (TARGET_SSE2 && (32 == 64 || TARGET_AVX512VL) && TARGET_AVX512BW
   19967              :    && ix86_binary_operator_ok (US_MINUS, V32QImode, operands)) && 
   19968              : #line 728 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19969              : (TARGET_AVX2))))
   19970              :             return -1;
   19971              :           return 7592; /* *avx2_ussubv32qi3_mask */
   19972              : 
   19973              :         case 2:
   19974              :           if (!(
   19975              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   19976              : (TARGET_AVX512F) && 
   19977              : #line 16757 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19978              : (TARGET_SSE2 && (16 == 64 || TARGET_AVX512VL) && TARGET_AVX512BW
   19979              :    && ix86_binary_operator_ok (US_MINUS, V16QImode, operands))))
   19980              :             return -1;
   19981              :           return 7600; /* *sse2_ussubv16qi3_mask */
   19982              : 
   19983              :         case 3:
   19984              :           if (!(
   19985              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   19986              : (TARGET_AVX512F) && (
   19987              : #line 16757 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19988              : (TARGET_SSE2 && (64 == 64 || TARGET_AVX512VL) && TARGET_AVX512BW
   19989              :    && ix86_binary_operator_ok (US_MINUS, V32HImode, operands)) && 
   19990              : #line 729 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19991              : (TARGET_AVX512BW))))
   19992              :             return -1;
   19993              :           return 7608; /* *avx512bw_ussubv32hi3_mask */
   19994              : 
   19995              :         case 4:
   19996              :           if (!(
   19997              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   19998              : (TARGET_AVX512F) && (
   19999              : #line 16757 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20000              : (TARGET_SSE2 && (32 == 64 || TARGET_AVX512VL) && TARGET_AVX512BW
   20001              :    && ix86_binary_operator_ok (US_MINUS, V16HImode, operands)) && 
   20002              : #line 729 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20003              : (TARGET_AVX2))))
   20004              :             return -1;
   20005              :           return 7616; /* *avx2_ussubv16hi3_mask */
   20006              : 
   20007              :         case 5:
   20008              :           if (!(
   20009              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   20010              : (TARGET_AVX512F) && 
   20011              : #line 16757 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20012              : (TARGET_SSE2 && (16 == 64 || TARGET_AVX512VL) && TARGET_AVX512BW
   20013              :    && ix86_binary_operator_ok (US_MINUS, V8HImode, operands))))
   20014              :             return -1;
   20015              :           return 7624; /* *sse2_ussubv8hi3_mask */
   20016              : 
   20017              :         default:
   20018              :           return -1;
   20019              :         }
   20020              : 
   20021              :     case ASHIFTRT:
   20022              :       return recog_189 (x1, insn, pnum_clobbers);
   20023              : 
   20024              :     case ASHIFT:
   20025              :       return recog_192 (x1, insn, pnum_clobbers);
   20026              : 
   20027              :     case LSHIFTRT:
   20028              :       return recog_191 (x1, insn, pnum_clobbers);
   20029              : 
   20030              :     case ROTATE:
   20031              :       switch (pattern150 (x3))
   20032              :         {
   20033              :         case 0:
   20034              :           if (!
   20035              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   20036              : (TARGET_AVX512F))
   20037              :             return -1;
   20038              :           return 7778; /* avx512f_rolvv16si_mask */
   20039              : 
   20040              :         case 1:
   20041              :           if (!(
   20042              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   20043              : (TARGET_AVX512F) && (
   20044              : #line 18081 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20045              : (TARGET_AVX512F) && 
   20046              : #line 496 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20047              : (TARGET_AVX512VL))))
   20048              :             return -1;
   20049              :           return 7782; /* avx512vl_rolvv8si_mask */
   20050              : 
   20051              :         case 2:
   20052              :           if (!(
   20053              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   20054              : (TARGET_AVX512F) && (
   20055              : #line 18081 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20056              : (TARGET_AVX512F) && 
   20057              : #line 496 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20058              : (TARGET_AVX512VL))))
   20059              :             return -1;
   20060              :           return 7786; /* avx512vl_rolvv4si_mask */
   20061              : 
   20062              :         case 3:
   20063              :           if (!
   20064              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   20065              : (TARGET_AVX512F))
   20066              :             return -1;
   20067              :           return 7790; /* avx512f_rolvv8di_mask */
   20068              : 
   20069              :         case 4:
   20070              :           if (!(
   20071              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   20072              : (TARGET_AVX512F) && (
   20073              : #line 18081 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20074              : (TARGET_AVX512F) && 
   20075              : #line 497 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20076              : (TARGET_AVX512VL))))
   20077              :             return -1;
   20078              :           return 7794; /* avx512vl_rolvv4di_mask */
   20079              : 
   20080              :         case 5:
   20081              :           if (!(
   20082              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   20083              : (TARGET_AVX512F) && (
   20084              : #line 18081 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20085              : (TARGET_AVX512F) && 
   20086              : #line 497 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20087              : (TARGET_AVX512VL))))
   20088              :             return -1;
   20089              :           return 7798; /* avx512vl_rolvv2di_mask */
   20090              : 
   20091              :         case 6:
   20092              :           if (!
   20093              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   20094              : (TARGET_AVX512F))
   20095              :             return -1;
   20096              :           return 7802; /* avx512f_rolv16si_mask */
   20097              : 
   20098              :         case 7:
   20099              :           if (!(
   20100              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   20101              : (TARGET_AVX512F) && (
   20102              : #line 18091 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20103              : (TARGET_AVX512F) && 
   20104              : #line 496 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20105              : (TARGET_AVX512VL))))
   20106              :             return -1;
   20107              :           return 7806; /* avx512vl_rolv8si_mask */
   20108              : 
   20109              :         case 8:
   20110              :           if (!(
   20111              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   20112              : (TARGET_AVX512F) && (
   20113              : #line 18091 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20114              : (TARGET_AVX512F) && 
   20115              : #line 496 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20116              : (TARGET_AVX512VL))))
   20117              :             return -1;
   20118              :           return 7810; /* avx512vl_rolv4si_mask */
   20119              : 
   20120              :         case 9:
   20121              :           if (!
   20122              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   20123              : (TARGET_AVX512F))
   20124              :             return -1;
   20125              :           return 7814; /* avx512f_rolv8di_mask */
   20126              : 
   20127              :         case 10:
   20128              :           if (!(
   20129              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   20130              : (TARGET_AVX512F) && (
   20131              : #line 18091 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20132              : (TARGET_AVX512F) && 
   20133              : #line 497 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20134              : (TARGET_AVX512VL))))
   20135              :             return -1;
   20136              :           return 7818; /* avx512vl_rolv4di_mask */
   20137              : 
   20138              :         case 11:
   20139              :           if (!(
   20140              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   20141              : (TARGET_AVX512F) && (
   20142              : #line 18091 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20143              : (TARGET_AVX512F) && 
   20144              : #line 497 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20145              : (TARGET_AVX512VL))))
   20146              :             return -1;
   20147              :           return 7822; /* avx512vl_rolv2di_mask */
   20148              : 
   20149              :         default:
   20150              :           return -1;
   20151              :         }
   20152              : 
   20153              :     case ROTATERT:
   20154              :       switch (pattern150 (x3))
   20155              :         {
   20156              :         case 0:
   20157              :           if (!
   20158              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   20159              : (TARGET_AVX512F))
   20160              :             return -1;
   20161              :           return 7780; /* avx512f_rorvv16si_mask */
   20162              : 
   20163              :         case 1:
   20164              :           if (!(
   20165              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   20166              : (TARGET_AVX512F) && (
   20167              : #line 18081 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20168              : (TARGET_AVX512F) && 
   20169              : #line 496 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20170              : (TARGET_AVX512VL))))
   20171              :             return -1;
   20172              :           return 7784; /* avx512vl_rorvv8si_mask */
   20173              : 
   20174              :         case 2:
   20175              :           if (!(
   20176              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   20177              : (TARGET_AVX512F) && (
   20178              : #line 18081 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20179              : (TARGET_AVX512F) && 
   20180              : #line 496 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20181              : (TARGET_AVX512VL))))
   20182              :             return -1;
   20183              :           return 7788; /* avx512vl_rorvv4si_mask */
   20184              : 
   20185              :         case 3:
   20186              :           if (!
   20187              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   20188              : (TARGET_AVX512F))
   20189              :             return -1;
   20190              :           return 7792; /* avx512f_rorvv8di_mask */
   20191              : 
   20192              :         case 4:
   20193              :           if (!(
   20194              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   20195              : (TARGET_AVX512F) && (
   20196              : #line 18081 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20197              : (TARGET_AVX512F) && 
   20198              : #line 497 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20199              : (TARGET_AVX512VL))))
   20200              :             return -1;
   20201              :           return 7796; /* avx512vl_rorvv4di_mask */
   20202              : 
   20203              :         case 5:
   20204              :           if (!(
   20205              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   20206              : (TARGET_AVX512F) && (
   20207              : #line 18081 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20208              : (TARGET_AVX512F) && 
   20209              : #line 497 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20210              : (TARGET_AVX512VL))))
   20211              :             return -1;
   20212              :           return 7800; /* avx512vl_rorvv2di_mask */
   20213              : 
   20214              :         case 6:
   20215              :           if (!
   20216              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   20217              : (TARGET_AVX512F))
   20218              :             return -1;
   20219              :           return 7804; /* avx512f_rorv16si_mask */
   20220              : 
   20221              :         case 7:
   20222              :           if (!(
   20223              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   20224              : (TARGET_AVX512F) && (
   20225              : #line 18091 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20226              : (TARGET_AVX512F) && 
   20227              : #line 496 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20228              : (TARGET_AVX512VL))))
   20229              :             return -1;
   20230              :           return 7808; /* avx512vl_rorv8si_mask */
   20231              : 
   20232              :         case 8:
   20233              :           if (!(
   20234              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   20235              : (TARGET_AVX512F) && (
   20236              : #line 18091 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20237              : (TARGET_AVX512F) && 
   20238              : #line 496 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20239              : (TARGET_AVX512VL))))
   20240              :             return -1;
   20241              :           return 7812; /* avx512vl_rorv4si_mask */
   20242              : 
   20243              :         case 9:
   20244              :           if (!
   20245              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   20246              : (TARGET_AVX512F))
   20247              :             return -1;
   20248              :           return 7816; /* avx512f_rorv8di_mask */
   20249              : 
   20250              :         case 10:
   20251              :           if (!(
   20252              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   20253              : (TARGET_AVX512F) && (
   20254              : #line 18091 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20255              : (TARGET_AVX512F) && 
   20256              : #line 497 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20257              : (TARGET_AVX512VL))))
   20258              :             return -1;
   20259              :           return 7820; /* avx512vl_rorv4di_mask */
   20260              : 
   20261              :         case 11:
   20262              :           if (!(
   20263              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   20264              : (TARGET_AVX512F) && (
   20265              : #line 18091 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20266              : (TARGET_AVX512F) && 
   20267              : #line 497 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20268              : (TARGET_AVX512VL))))
   20269              :             return -1;
   20270              :           return 7824; /* avx512vl_rorv2di_mask */
   20271              : 
   20272              :         default:
   20273              :           return -1;
   20274              :         }
   20275              : 
   20276              :     case UMAX:
   20277              :       switch (pattern151 (x3))
   20278              :         {
   20279              :         case 0:
   20280              :           if (!(
   20281              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   20282              : (TARGET_AVX512F) && 
   20283              : #line 18151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20284              : (TARGET_AVX512F && !(MEM_P (operands[1]) && MEM_P (operands[2])))))
   20285              :             return -1;
   20286              :           return 7842; /* *avx512f_umaxv16si3_mask */
   20287              : 
   20288              :         case 1:
   20289              :           if (!(
   20290              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   20291              : (TARGET_AVX512F) && (
   20292              : #line 18151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20293              : (TARGET_AVX512F && !(MEM_P (operands[1]) && MEM_P (operands[2]))) && 
   20294              : #line 496 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20295              : (TARGET_AVX512VL))))
   20296              :             return -1;
   20297              :           return 7850; /* *avx512f_umaxv8si3_mask */
   20298              : 
   20299              :         case 2:
   20300              :           if (nonimmediate_operand (operands[1], E_V4SImode)
   20301              :               && nonimmediate_operand (operands[2], E_V4SImode)
   20302              :               && (
   20303              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   20304              : (TARGET_AVX512F) && (
   20305              : #line 18151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20306              : (TARGET_AVX512F && !(MEM_P (operands[1]) && MEM_P (operands[2]))) && 
   20307              : #line 496 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20308              : (TARGET_AVX512VL))))
   20309              :             return 7858; /* *avx512f_umaxv4si3_mask */
   20310              :           if (!vector_operand (operands[1], E_V4SImode)
   20311              :               || !vector_operand (operands[2], E_V4SImode)
   20312              :               || !(
   20313              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   20314              : (TARGET_AVX512F) && 
   20315              : #line 18342 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20316              : (TARGET_SSE4_1
   20317              :    && (16 == 64 || TARGET_AVX512VL)
   20318              :    && !(MEM_P (operands[1]) && MEM_P (operands[2])))))
   20319              :             return -1;
   20320              :           return 7948; /* *sse4_1_umaxv4si3_mask */
   20321              : 
   20322              :         case 3:
   20323              :           if (!(
   20324              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   20325              : (TARGET_AVX512F) && 
   20326              : #line 18151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20327              : (TARGET_AVX512F && !(MEM_P (operands[1]) && MEM_P (operands[2])))))
   20328              :             return -1;
   20329              :           return 7866; /* *avx512f_umaxv8di3_mask */
   20330              : 
   20331              :         case 4:
   20332              :           if (!(
   20333              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   20334              : (TARGET_AVX512F) && (
   20335              : #line 18151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20336              : (TARGET_AVX512F && !(MEM_P (operands[1]) && MEM_P (operands[2]))) && 
   20337              : #line 497 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20338              : (TARGET_AVX512VL))))
   20339              :             return -1;
   20340              :           return 7874; /* *avx512f_umaxv4di3_mask */
   20341              : 
   20342              :         case 5:
   20343              :           if (!(
   20344              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   20345              : (TARGET_AVX512F) && (
   20346              : #line 18151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20347              : (TARGET_AVX512F && !(MEM_P (operands[1]) && MEM_P (operands[2]))) && 
   20348              : #line 497 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20349              : (TARGET_AVX512VL))))
   20350              :             return -1;
   20351              :           return 7882; /* *avx512f_umaxv2di3_mask */
   20352              : 
   20353              :         case 6:
   20354              :           if (!(
   20355              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   20356              : (TARGET_AVX512F) && 
   20357              : #line 18163 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20358              : (TARGET_AVX512BW && !(MEM_P (operands[1]) && MEM_P (operands[2])))))
   20359              :             return -1;
   20360              :           return 7890; /* *avx512bw_umaxv64qi3_mask */
   20361              : 
   20362              :         case 7:
   20363              :           if (!(
   20364              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   20365              : (TARGET_AVX512F) && (
   20366              : #line 18163 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20367              : (TARGET_AVX512BW && !(MEM_P (operands[1]) && MEM_P (operands[2]))) && 
   20368              : #line 328 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20369              : (TARGET_AVX512VL))))
   20370              :             return -1;
   20371              :           return 7898; /* *avx512bw_umaxv16qi3_mask */
   20372              : 
   20373              :         case 8:
   20374              :           if (!(
   20375              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   20376              : (TARGET_AVX512F) && (
   20377              : #line 18163 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20378              : (TARGET_AVX512BW && !(MEM_P (operands[1]) && MEM_P (operands[2]))) && 
   20379              : #line 328 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20380              : (TARGET_AVX512VL))))
   20381              :             return -1;
   20382              :           return 7906; /* *avx512bw_umaxv32qi3_mask */
   20383              : 
   20384              :         case 9:
   20385              :           if (!(
   20386              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   20387              : (TARGET_AVX512F) && 
   20388              : #line 18163 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20389              : (TARGET_AVX512BW && !(MEM_P (operands[1]) && MEM_P (operands[2])))))
   20390              :             return -1;
   20391              :           return 7914; /* *avx512bw_umaxv32hi3_mask */
   20392              : 
   20393              :         case 10:
   20394              :           if (!(
   20395              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   20396              : (TARGET_AVX512F) && (
   20397              : #line 18163 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20398              : (TARGET_AVX512BW && !(MEM_P (operands[1]) && MEM_P (operands[2]))) && 
   20399              : #line 329 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20400              : (TARGET_AVX512VL))))
   20401              :             return -1;
   20402              :           return 7922; /* *avx512bw_umaxv16hi3_mask */
   20403              : 
   20404              :         case 11:
   20405              :           if (nonimmediate_operand (operands[1], E_V8HImode)
   20406              :               && nonimmediate_operand (operands[2], E_V8HImode)
   20407              :               && (
   20408              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   20409              : (TARGET_AVX512F) && (
   20410              : #line 18163 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20411              : (TARGET_AVX512BW && !(MEM_P (operands[1]) && MEM_P (operands[2]))) && 
   20412              : #line 329 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20413              : (TARGET_AVX512VL))))
   20414              :             return 7930; /* *avx512bw_umaxv8hi3_mask */
   20415              :           if (!vector_operand (operands[1], E_V8HImode)
   20416              :               || !vector_operand (operands[2], E_V8HImode)
   20417              :               || !(
   20418              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   20419              : (TARGET_AVX512F) && 
   20420              : #line 18342 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20421              : (TARGET_SSE4_1
   20422              :    && (16 == 64 || TARGET_AVX512VL)
   20423              :    && !(MEM_P (operands[1]) && MEM_P (operands[2])))))
   20424              :             return -1;
   20425              :           return 7944; /* *sse4_1_umaxv8hi3_mask */
   20426              : 
   20427              :         default:
   20428              :           return -1;
   20429              :         }
   20430              : 
   20431              :     case UMIN:
   20432              :       switch (pattern151 (x3))
   20433              :         {
   20434              :         case 0:
   20435              :           if (!(
   20436              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   20437              : (TARGET_AVX512F) && 
   20438              : #line 18151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20439              : (TARGET_AVX512F && !(MEM_P (operands[1]) && MEM_P (operands[2])))))
   20440              :             return -1;
   20441              :           return 7844; /* *avx512f_uminv16si3_mask */
   20442              : 
   20443              :         case 1:
   20444              :           if (!(
   20445              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   20446              : (TARGET_AVX512F) && (
   20447              : #line 18151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20448              : (TARGET_AVX512F && !(MEM_P (operands[1]) && MEM_P (operands[2]))) && 
   20449              : #line 496 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20450              : (TARGET_AVX512VL))))
   20451              :             return -1;
   20452              :           return 7852; /* *avx512f_uminv8si3_mask */
   20453              : 
   20454              :         case 2:
   20455              :           if (nonimmediate_operand (operands[1], E_V4SImode)
   20456              :               && nonimmediate_operand (operands[2], E_V4SImode)
   20457              :               && (
   20458              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   20459              : (TARGET_AVX512F) && (
   20460              : #line 18151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20461              : (TARGET_AVX512F && !(MEM_P (operands[1]) && MEM_P (operands[2]))) && 
   20462              : #line 496 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20463              : (TARGET_AVX512VL))))
   20464              :             return 7860; /* *avx512f_uminv4si3_mask */
   20465              :           if (!vector_operand (operands[1], E_V4SImode)
   20466              :               || !vector_operand (operands[2], E_V4SImode)
   20467              :               || !(
   20468              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   20469              : (TARGET_AVX512F) && 
   20470              : #line 18342 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20471              : (TARGET_SSE4_1
   20472              :    && (16 == 64 || TARGET_AVX512VL)
   20473              :    && !(MEM_P (operands[1]) && MEM_P (operands[2])))))
   20474              :             return -1;
   20475              :           return 7950; /* *sse4_1_uminv4si3_mask */
   20476              : 
   20477              :         case 3:
   20478              :           if (!(
   20479              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   20480              : (TARGET_AVX512F) && 
   20481              : #line 18151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20482              : (TARGET_AVX512F && !(MEM_P (operands[1]) && MEM_P (operands[2])))))
   20483              :             return -1;
   20484              :           return 7868; /* *avx512f_uminv8di3_mask */
   20485              : 
   20486              :         case 4:
   20487              :           if (!(
   20488              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   20489              : (TARGET_AVX512F) && (
   20490              : #line 18151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20491              : (TARGET_AVX512F && !(MEM_P (operands[1]) && MEM_P (operands[2]))) && 
   20492              : #line 497 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20493              : (TARGET_AVX512VL))))
   20494              :             return -1;
   20495              :           return 7876; /* *avx512f_uminv4di3_mask */
   20496              : 
   20497              :         case 5:
   20498              :           if (!(
   20499              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   20500              : (TARGET_AVX512F) && (
   20501              : #line 18151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20502              : (TARGET_AVX512F && !(MEM_P (operands[1]) && MEM_P (operands[2]))) && 
   20503              : #line 497 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20504              : (TARGET_AVX512VL))))
   20505              :             return -1;
   20506              :           return 7884; /* *avx512f_uminv2di3_mask */
   20507              : 
   20508              :         case 6:
   20509              :           if (!(
   20510              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   20511              : (TARGET_AVX512F) && 
   20512              : #line 18163 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20513              : (TARGET_AVX512BW && !(MEM_P (operands[1]) && MEM_P (operands[2])))))
   20514              :             return -1;
   20515              :           return 7892; /* *avx512bw_uminv64qi3_mask */
   20516              : 
   20517              :         case 7:
   20518              :           if (!(
   20519              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   20520              : (TARGET_AVX512F) && (
   20521              : #line 18163 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20522              : (TARGET_AVX512BW && !(MEM_P (operands[1]) && MEM_P (operands[2]))) && 
   20523              : #line 328 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20524              : (TARGET_AVX512VL))))
   20525              :             return -1;
   20526              :           return 7900; /* *avx512bw_uminv16qi3_mask */
   20527              : 
   20528              :         case 8:
   20529              :           if (!(
   20530              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   20531              : (TARGET_AVX512F) && (
   20532              : #line 18163 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20533              : (TARGET_AVX512BW && !(MEM_P (operands[1]) && MEM_P (operands[2]))) && 
   20534              : #line 328 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20535              : (TARGET_AVX512VL))))
   20536              :             return -1;
   20537              :           return 7908; /* *avx512bw_uminv32qi3_mask */
   20538              : 
   20539              :         case 9:
   20540              :           if (!(
   20541              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   20542              : (TARGET_AVX512F) && 
   20543              : #line 18163 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20544              : (TARGET_AVX512BW && !(MEM_P (operands[1]) && MEM_P (operands[2])))))
   20545              :             return -1;
   20546              :           return 7916; /* *avx512bw_uminv32hi3_mask */
   20547              : 
   20548              :         case 10:
   20549              :           if (!(
   20550              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   20551              : (TARGET_AVX512F) && (
   20552              : #line 18163 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20553              : (TARGET_AVX512BW && !(MEM_P (operands[1]) && MEM_P (operands[2]))) && 
   20554              : #line 329 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20555              : (TARGET_AVX512VL))))
   20556              :             return -1;
   20557              :           return 7924; /* *avx512bw_uminv16hi3_mask */
   20558              : 
   20559              :         case 11:
   20560              :           if (nonimmediate_operand (operands[1], E_V8HImode)
   20561              :               && nonimmediate_operand (operands[2], E_V8HImode)
   20562              :               && (
   20563              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   20564              : (TARGET_AVX512F) && (
   20565              : #line 18163 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20566              : (TARGET_AVX512BW && !(MEM_P (operands[1]) && MEM_P (operands[2]))) && 
   20567              : #line 329 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20568              : (TARGET_AVX512VL))))
   20569              :             return 7932; /* *avx512bw_uminv8hi3_mask */
   20570              :           if (!vector_operand (operands[1], E_V8HImode)
   20571              :               || !vector_operand (operands[2], E_V8HImode)
   20572              :               || !(
   20573              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   20574              : (TARGET_AVX512F) && 
   20575              : #line 18342 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20576              : (TARGET_SSE4_1
   20577              :    && (16 == 64 || TARGET_AVX512VL)
   20578              :    && !(MEM_P (operands[1]) && MEM_P (operands[2])))))
   20579              :             return -1;
   20580              :           return 7946; /* *sse4_1_uminv8hi3_mask */
   20581              : 
   20582              :         default:
   20583              :           return -1;
   20584              :         }
   20585              : 
   20586              :     case VEC_CONCAT:
   20587              :       return recog_187 (x1, insn, pnum_clobbers);
   20588              : 
   20589              :     case ABS:
   20590              :       switch (pattern154 (x3))
   20591              :         {
   20592              :         case 0:
   20593              :           if (!
   20594              : #line 23903 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20595              : (TARGET_AVX512F))
   20596              :             return -1;
   20597              :           return 8734; /* absv16si2_mask */
   20598              : 
   20599              :         case 1:
   20600              :           if (!(
   20601              : #line 23903 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20602              : (TARGET_AVX512F) && 
   20603              : #line 496 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20604              : (TARGET_AVX512VL)))
   20605              :             return -1;
   20606              :           return 8735; /* absv8si2_mask */
   20607              : 
   20608              :         case 2:
   20609              :           if (!(
   20610              : #line 23903 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20611              : (TARGET_AVX512F) && 
   20612              : #line 496 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20613              : (TARGET_AVX512VL)))
   20614              :             return -1;
   20615              :           return 8736; /* absv4si2_mask */
   20616              : 
   20617              :         case 3:
   20618              :           if (!
   20619              : #line 23903 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20620              : (TARGET_AVX512F))
   20621              :             return -1;
   20622              :           return 8737; /* absv8di2_mask */
   20623              : 
   20624              :         case 4:
   20625              :           if (!(
   20626              : #line 23903 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20627              : (TARGET_AVX512F) && 
   20628              : #line 497 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20629              : (TARGET_AVX512VL)))
   20630              :             return -1;
   20631              :           return 8738; /* absv4di2_mask */
   20632              : 
   20633              :         case 5:
   20634              :           if (!(
   20635              : #line 23903 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20636              : (TARGET_AVX512F) && 
   20637              : #line 497 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20638              : (TARGET_AVX512VL)))
   20639              :             return -1;
   20640              :           return 8739; /* absv2di2_mask */
   20641              : 
   20642              :         case 6:
   20643              :           if (!
   20644              : #line 23917 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20645              : (TARGET_AVX512BW))
   20646              :             return -1;
   20647              :           return 8740; /* absv64qi2_mask */
   20648              : 
   20649              :         case 7:
   20650              :           if (!(
   20651              : #line 23917 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20652              : (TARGET_AVX512BW) && 
   20653              : #line 328 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20654              : (TARGET_AVX512VL)))
   20655              :             return -1;
   20656              :           return 8741; /* absv16qi2_mask */
   20657              : 
   20658              :         case 8:
   20659              :           if (!(
   20660              : #line 23917 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20661              : (TARGET_AVX512BW) && 
   20662              : #line 328 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20663              : (TARGET_AVX512VL)))
   20664              :             return -1;
   20665              :           return 8742; /* absv32qi2_mask */
   20666              : 
   20667              :         case 9:
   20668              :           if (!
   20669              : #line 23917 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20670              : (TARGET_AVX512BW))
   20671              :             return -1;
   20672              :           return 8743; /* absv32hi2_mask */
   20673              : 
   20674              :         case 10:
   20675              :           if (!(
   20676              : #line 23917 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20677              : (TARGET_AVX512BW) && 
   20678              : #line 329 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20679              : (TARGET_AVX512VL)))
   20680              :             return -1;
   20681              :           return 8744; /* absv16hi2_mask */
   20682              : 
   20683              :         case 11:
   20684              :           if (!(
   20685              : #line 23917 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20686              : (TARGET_AVX512BW) && 
   20687              : #line 329 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20688              : (TARGET_AVX512VL)))
   20689              :             return -1;
   20690              :           return 8745; /* absv8hi2_mask */
   20691              : 
   20692              :         default:
   20693              :           return -1;
   20694              :         }
   20695              : 
   20696              :     case SIGN_EXTEND:
   20697              :       return recog_197 (x1, insn, pnum_clobbers);
   20698              : 
   20699              :     case ZERO_EXTEND:
   20700              :       return recog_196 (x1, insn, pnum_clobbers);
   20701              : 
   20702              :     case CLZ:
   20703              :       x6 = XEXP (x4, 0);
   20704              :       operands[1] = x6;
   20705              :       x8 = XEXP (x3, 1);
   20706              :       operands[2] = x8;
   20707              :       x5 = XEXP (x3, 2);
   20708              :       operands[3] = x5;
   20709              :       switch (GET_MODE (operands[0]))
   20710              :         {
   20711              :         case E_V16SImode:
   20712              :           if (pattern152 (x3, 
   20713              : E_V16SImode, 
   20714              : E_HImode) != 0
   20715              :               || !(
   20716              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   20717              : (TARGET_AVX512F) && 
   20718              : #line 30989 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20719              : (TARGET_AVX512CD)))
   20720              :             return -1;
   20721              :           return 10165; /* clzv16si2_mask */
   20722              : 
   20723              :         case E_V8SImode:
   20724              :           if (pattern152 (x3, 
   20725              : E_V8SImode, 
   20726              : E_QImode) != 0
   20727              :               || !(
   20728              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   20729              : (TARGET_AVX512F) && (
   20730              : #line 30989 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20731              : (TARGET_AVX512CD) && 
   20732              : #line 496 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20733              : (TARGET_AVX512VL))))
   20734              :             return -1;
   20735              :           return 10167; /* clzv8si2_mask */
   20736              : 
   20737              :         case E_V4SImode:
   20738              :           if (pattern152 (x3, 
   20739              : E_V4SImode, 
   20740              : E_QImode) != 0
   20741              :               || !(
   20742              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   20743              : (TARGET_AVX512F) && (
   20744              : #line 30989 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20745              : (TARGET_AVX512CD) && 
   20746              : #line 496 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20747              : (TARGET_AVX512VL))))
   20748              :             return -1;
   20749              :           return 10169; /* clzv4si2_mask */
   20750              : 
   20751              :         case E_V8DImode:
   20752              :           if (pattern152 (x3, 
   20753              : E_V8DImode, 
   20754              : E_QImode) != 0
   20755              :               || !(
   20756              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   20757              : (TARGET_AVX512F) && 
   20758              : #line 30989 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20759              : (TARGET_AVX512CD)))
   20760              :             return -1;
   20761              :           return 10171; /* clzv8di2_mask */
   20762              : 
   20763              :         case E_V4DImode:
   20764              :           if (pattern152 (x3, 
   20765              : E_V4DImode, 
   20766              : E_QImode) != 0
   20767              :               || !(
   20768              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   20769              : (TARGET_AVX512F) && (
   20770              : #line 30989 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20771              : (TARGET_AVX512CD) && 
   20772              : #line 497 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20773              : (TARGET_AVX512VL))))
   20774              :             return -1;
   20775              :           return 10173; /* clzv4di2_mask */
   20776              : 
   20777              :         case E_V2DImode:
   20778              :           if (pattern152 (x3, 
   20779              : E_V2DImode, 
   20780              : E_QImode) != 0
   20781              :               || !(
   20782              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   20783              : (TARGET_AVX512F) && (
   20784              : #line 30989 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20785              : (TARGET_AVX512CD) && 
   20786              : #line 497 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20787              : (TARGET_AVX512VL))))
   20788              :             return -1;
   20789              :           return 10175; /* clzv2di2_mask */
   20790              : 
   20791              :         default:
   20792              :           return -1;
   20793              :         }
   20794              : 
   20795              :     case POPCOUNT:
   20796              :       switch (pattern154 (x3))
   20797              :         {
   20798              :         case 0:
   20799              :           if (!(
   20800              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   20801              : (TARGET_AVX512F) && 
   20802              : #line 31346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20803              : (TARGET_AVX512VPOPCNTDQ)))
   20804              :             return -1;
   20805              :           return 10238; /* vpopcountv16si_mask */
   20806              : 
   20807              :         case 1:
   20808              :           if (!(
   20809              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   20810              : (TARGET_AVX512F) && (
   20811              : #line 31346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20812              : (TARGET_AVX512VPOPCNTDQ) && 
   20813              : #line 496 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20814              : (TARGET_AVX512VL))))
   20815              :             return -1;
   20816              :           return 10240; /* vpopcountv8si_mask */
   20817              : 
   20818              :         case 2:
   20819              :           if (!(
   20820              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   20821              : (TARGET_AVX512F) && (
   20822              : #line 31346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20823              : (TARGET_AVX512VPOPCNTDQ) && 
   20824              : #line 496 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20825              : (TARGET_AVX512VL))))
   20826              :             return -1;
   20827              :           return 10242; /* vpopcountv4si_mask */
   20828              : 
   20829              :         case 3:
   20830              :           if (!(
   20831              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   20832              : (TARGET_AVX512F) && 
   20833              : #line 31346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20834              : (TARGET_AVX512VPOPCNTDQ)))
   20835              :             return -1;
   20836              :           return 10244; /* vpopcountv8di_mask */
   20837              : 
   20838              :         case 4:
   20839              :           if (!(
   20840              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   20841              : (TARGET_AVX512F) && (
   20842              : #line 31346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20843              : (TARGET_AVX512VPOPCNTDQ) && 
   20844              : #line 497 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20845              : (TARGET_AVX512VL))))
   20846              :             return -1;
   20847              :           return 10246; /* vpopcountv4di_mask */
   20848              : 
   20849              :         case 5:
   20850              :           if (!(
   20851              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   20852              : (TARGET_AVX512F) && (
   20853              : #line 31346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20854              : (TARGET_AVX512VPOPCNTDQ) && 
   20855              : #line 497 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20856              : (TARGET_AVX512VL))))
   20857              :             return -1;
   20858              :           return 10248; /* vpopcountv2di_mask */
   20859              : 
   20860              :         case 6:
   20861              :           if (!(
   20862              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   20863              : (TARGET_AVX512F) && 
   20864              : #line 31396 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20865              : (TARGET_AVX512BITALG)))
   20866              :             return -1;
   20867              :           return 10258; /* vpopcountv64qi_mask */
   20868              : 
   20869              :         case 7:
   20870              :           if (!(
   20871              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   20872              : (TARGET_AVX512F) && (
   20873              : #line 31396 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20874              : (TARGET_AVX512BITALG) && 
   20875              : #line 328 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20876              : (TARGET_AVX512VL))))
   20877              :             return -1;
   20878              :           return 10260; /* vpopcountv16qi_mask */
   20879              : 
   20880              :         case 8:
   20881              :           if (!(
   20882              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   20883              : (TARGET_AVX512F) && (
   20884              : #line 31396 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20885              : (TARGET_AVX512BITALG) && 
   20886              : #line 328 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20887              : (TARGET_AVX512VL))))
   20888              :             return -1;
   20889              :           return 10262; /* vpopcountv32qi_mask */
   20890              : 
   20891              :         case 9:
   20892              :           if (!(
   20893              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   20894              : (TARGET_AVX512F) && 
   20895              : #line 31396 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20896              : (TARGET_AVX512BITALG)))
   20897              :             return -1;
   20898              :           return 10264; /* vpopcountv32hi_mask */
   20899              : 
   20900              :         case 10:
   20901              :           if (!(
   20902              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   20903              : (TARGET_AVX512F) && (
   20904              : #line 31396 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20905              : (TARGET_AVX512BITALG) && 
   20906              : #line 329 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20907              : (TARGET_AVX512VL))))
   20908              :             return -1;
   20909              :           return 10266; /* vpopcountv16hi_mask */
   20910              : 
   20911              :         case 11:
   20912              :           if (!(
   20913              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   20914              : (TARGET_AVX512F) && (
   20915              : #line 31396 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20916              : (TARGET_AVX512BITALG) && 
   20917              : #line 329 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20918              : (TARGET_AVX512VL))))
   20919              :             return -1;
   20920              :           return 10268; /* vpopcountv8hi_mask */
   20921              : 
   20922              :         default:
   20923              :           return -1;
   20924              :         }
   20925              : 
   20926              :     default:
   20927              :       return -1;
   20928              :     }
   20929              : }
   20930              : 
   20931              :  int
   20932              : recog_344 (rtx x1 ATTRIBUTE_UNUSED,
   20933              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   20934              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   20935              : {
   20936              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   20937              :   rtx x2, x3, x4;
   20938              :   int res ATTRIBUTE_UNUSED;
   20939              :   x2 = XEXP (x1, 0);
   20940              :   operands[0] = x2;
   20941              :   x3 = XEXP (x1, 1);
   20942              :   x4 = XEXP (x3, 0);
   20943              :   switch (GET_CODE (x4))
   20944              :     {
   20945              :     case REG:
   20946              :     case SUBREG:
   20947              :     case MEM:
   20948              :     case VEC_DUPLICATE:
   20949              :       switch (pattern191 (x3))
   20950              :         {
   20951              :         case 0:
   20952              :           if (!(
   20953              : #line 2701 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20954              : (TARGET_SSE && ix86_binary_operator_ok (MINUS, V32HFmode, operands)
   20955              :    && 1 && 1) && 
   20956              : #line 393 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20957              : (TARGET_AVX512FP16)))
   20958              :             return -1;
   20959              :           return 2756; /* *subv32hf3 */
   20960              : 
   20961              :         case 1:
   20962              :           if (!(
   20963              : #line 2701 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20964              : (TARGET_SSE && ix86_binary_operator_ok (MINUS, V16HFmode, operands)
   20965              :    && 1 && 1) && 
   20966              : #line 394 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20967              : (TARGET_AVX512FP16 && TARGET_AVX512VL)))
   20968              :             return -1;
   20969              :           return 2764; /* *subv16hf3 */
   20970              : 
   20971              :         case 2:
   20972              :           if (!(
   20973              : #line 2701 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20974              : (TARGET_SSE && ix86_binary_operator_ok (MINUS, V8HFmode, operands)
   20975              :    && 1 && 1) && 
   20976              : #line 395 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20977              : (TARGET_AVX512FP16 && TARGET_AVX512VL)))
   20978              :             return -1;
   20979              :           return 2772; /* *subv8hf3 */
   20980              : 
   20981              :         case 3:
   20982              :           if (!(
   20983              : #line 2701 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20984              : (TARGET_SSE && ix86_binary_operator_ok (MINUS, V16SFmode, operands)
   20985              :    && 1 && 1) && 
   20986              : #line 396 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20987              : (TARGET_AVX512F)))
   20988              :             return -1;
   20989              :           return 2780; /* *subv16sf3 */
   20990              : 
   20991              :         case 4:
   20992              :           if (!(
   20993              : #line 2701 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20994              : (TARGET_SSE && ix86_binary_operator_ok (MINUS, V8SFmode, operands)
   20995              :    && 1 && 1) && 
   20996              : #line 396 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20997              : (TARGET_AVX)))
   20998              :             return -1;
   20999              :           return 2788; /* *subv8sf3 */
   21000              : 
   21001              :         case 5:
   21002              :           if (!
   21003              : #line 2701 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21004              : (TARGET_SSE && ix86_binary_operator_ok (MINUS, V4SFmode, operands)
   21005              :    && 1 && 1))
   21006              :             return -1;
   21007              :           return 2796; /* *subv4sf3 */
   21008              : 
   21009              :         case 6:
   21010              :           if (!(
   21011              : #line 2701 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21012              : (TARGET_SSE && ix86_binary_operator_ok (MINUS, V8DFmode, operands)
   21013              :    && 1 && 1) && 
   21014              : #line 397 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21015              : (TARGET_AVX512F)))
   21016              :             return -1;
   21017              :           return 2804; /* *subv8df3 */
   21018              : 
   21019              :         case 7:
   21020              :           if (!(
   21021              : #line 2701 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21022              : (TARGET_SSE && ix86_binary_operator_ok (MINUS, V4DFmode, operands)
   21023              :    && 1 && 1) && 
   21024              : #line 397 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21025              : (TARGET_AVX)))
   21026              :             return -1;
   21027              :           return 2812; /* *subv4df3 */
   21028              : 
   21029              :         case 8:
   21030              :           if (!(
   21031              : #line 2701 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21032              : (TARGET_SSE && ix86_binary_operator_ok (MINUS, V2DFmode, operands)
   21033              :    && 1 && 1) && 
   21034              : #line 398 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21035              : (TARGET_SSE2)))
   21036              :             return -1;
   21037              :           return 2820; /* *subv2df3 */
   21038              : 
   21039              :         case 9:
   21040              :           if (!(
   21041              : #line 16679 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21042              : (TARGET_SSE2 && ix86_binary_operator_ok (MINUS, V64QImode, operands)) && 
   21043              : #line 572 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21044              : (TARGET_AVX512BW)))
   21045              :             return -1;
   21046              :           return 7506; /* *subv64qi3 */
   21047              : 
   21048              :         case 10:
   21049              :           if (!(
   21050              : #line 16679 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21051              : (TARGET_SSE2 && ix86_binary_operator_ok (MINUS, V32QImode, operands)) && 
   21052              : #line 572 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21053              : (TARGET_AVX2)))
   21054              :             return -1;
   21055              :           return 7508; /* *subv32qi3 */
   21056              : 
   21057              :         case 11:
   21058              :           if (!
   21059              : #line 16679 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21060              : (TARGET_SSE2 && ix86_binary_operator_ok (MINUS, V16QImode, operands)))
   21061              :             return -1;
   21062              :           return 7510; /* *subv16qi3 */
   21063              : 
   21064              :         case 12:
   21065              :           if (!(
   21066              : #line 16679 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21067              : (TARGET_SSE2 && ix86_binary_operator_ok (MINUS, V32HImode, operands)) && 
   21068              : #line 573 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21069              : (TARGET_AVX512BW)))
   21070              :             return -1;
   21071              :           return 7512; /* *subv32hi3 */
   21072              : 
   21073              :         case 13:
   21074              :           if (!(
   21075              : #line 16679 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21076              : (TARGET_SSE2 && ix86_binary_operator_ok (MINUS, V16HImode, operands)) && 
   21077              : #line 573 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21078              : (TARGET_AVX2)))
   21079              :             return -1;
   21080              :           return 7514; /* *subv16hi3 */
   21081              : 
   21082              :         case 14:
   21083              :           if (!
   21084              : #line 16679 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21085              : (TARGET_SSE2 && ix86_binary_operator_ok (MINUS, V8HImode, operands)))
   21086              :             return -1;
   21087              :           return 7516; /* *subv8hi3 */
   21088              : 
   21089              :         case 15:
   21090              :           if (!(
   21091              : #line 16679 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21092              : (TARGET_SSE2 && ix86_binary_operator_ok (MINUS, V16SImode, operands)) && 
   21093              : #line 574 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21094              : (TARGET_AVX512F)))
   21095              :             return -1;
   21096              :           return 7518; /* *subv16si3 */
   21097              : 
   21098              :         case 16:
   21099              :           if (!(
   21100              : #line 16679 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21101              : (TARGET_SSE2 && ix86_binary_operator_ok (MINUS, V8SImode, operands)) && 
   21102              : #line 574 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21103              : (TARGET_AVX2)))
   21104              :             return -1;
   21105              :           return 7520; /* *subv8si3 */
   21106              : 
   21107              :         case 17:
   21108              :           if (!
   21109              : #line 16679 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21110              : (TARGET_SSE2 && ix86_binary_operator_ok (MINUS, V4SImode, operands)))
   21111              :             return -1;
   21112              :           return 7522; /* *subv4si3 */
   21113              : 
   21114              :         case 18:
   21115              :           if (!(
   21116              : #line 16679 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21117              : (TARGET_SSE2 && ix86_binary_operator_ok (MINUS, V8DImode, operands)) && 
   21118              : #line 575 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21119              : (TARGET_AVX512F)))
   21120              :             return -1;
   21121              :           return 7524; /* *subv8di3 */
   21122              : 
   21123              :         case 19:
   21124              :           if (!(
   21125              : #line 16679 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21126              : (TARGET_SSE2 && ix86_binary_operator_ok (MINUS, V4DImode, operands)) && 
   21127              : #line 575 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21128              : (TARGET_AVX2)))
   21129              :             return -1;
   21130              :           return 7526; /* *subv4di3 */
   21131              : 
   21132              :         case 20:
   21133              :           if (!
   21134              : #line 16679 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21135              : (TARGET_SSE2 && ix86_binary_operator_ok (MINUS, V2DImode, operands)))
   21136              :             return -1;
   21137              :           return 7528; /* *subv2di3 */
   21138              : 
   21139              :         case 21:
   21140              :           if (!
   21141              : #line 33196 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21142              : (TARGET_AVX10_2))
   21143              :             return -1;
   21144              :           return 10710; /* avx10_2_subbf16_v32bf */
   21145              : 
   21146              :         case 22:
   21147              :           if (!
   21148              : #line 33196 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21149              : (TARGET_AVX10_2))
   21150              :             return -1;
   21151              :           return 10718; /* avx10_2_subbf16_v16bf */
   21152              : 
   21153              :         case 23:
   21154              :           if (!
   21155              : #line 33196 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21156              : (TARGET_AVX10_2))
   21157              :             return -1;
   21158              :           return 10726; /* avx10_2_subbf16_v8bf */
   21159              : 
   21160              :         case 24:
   21161              :           if (!(
   21162              : #line 16738 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21163              : (TARGET_SSE2 && ix86_pre_reload_split ()) && 
   21164              : #line 572 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21165              : (TARGET_AVX512BW)))
   21166              :             return -1;
   21167              :           return 7565; /* *subv64qi3_one */
   21168              : 
   21169              :         case 25:
   21170              :           if (!(
   21171              : #line 16738 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21172              : (TARGET_SSE2 && ix86_pre_reload_split ()) && 
   21173              : #line 572 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21174              : (TARGET_AVX2)))
   21175              :             return -1;
   21176              :           return 7566; /* *subv32qi3_one */
   21177              : 
   21178              :         case 26:
   21179              :           if (!
   21180              : #line 16738 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21181              : (TARGET_SSE2 && ix86_pre_reload_split ()))
   21182              :             return -1;
   21183              :           return 7567; /* *subv16qi3_one */
   21184              : 
   21185              :         case 27:
   21186              :           if (!(
   21187              : #line 16738 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21188              : (TARGET_SSE2 && ix86_pre_reload_split ()) && 
   21189              : #line 573 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21190              : (TARGET_AVX512BW)))
   21191              :             return -1;
   21192              :           return 7568; /* *subv32hi3_one */
   21193              : 
   21194              :         case 28:
   21195              :           if (!(
   21196              : #line 16738 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21197              : (TARGET_SSE2 && ix86_pre_reload_split ()) && 
   21198              : #line 573 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21199              : (TARGET_AVX2)))
   21200              :             return -1;
   21201              :           return 7569; /* *subv16hi3_one */
   21202              : 
   21203              :         case 29:
   21204              :           if (!
   21205              : #line 16738 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21206              : (TARGET_SSE2 && ix86_pre_reload_split ()))
   21207              :             return -1;
   21208              :           return 7570; /* *subv8hi3_one */
   21209              : 
   21210              :         case 30:
   21211              :           if (!(
   21212              : #line 16738 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21213              : (TARGET_SSE2 && ix86_pre_reload_split ()) && 
   21214              : #line 574 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21215              : (TARGET_AVX512F)))
   21216              :             return -1;
   21217              :           return 7571; /* *subv16si3_one */
   21218              : 
   21219              :         case 31:
   21220              :           if (!(
   21221              : #line 16738 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21222              : (TARGET_SSE2 && ix86_pre_reload_split ()) && 
   21223              : #line 574 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21224              : (TARGET_AVX2)))
   21225              :             return -1;
   21226              :           return 7572; /* *subv8si3_one */
   21227              : 
   21228              :         case 32:
   21229              :           if (!
   21230              : #line 16738 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21231              : (TARGET_SSE2 && ix86_pre_reload_split ()))
   21232              :             return -1;
   21233              :           return 7573; /* *subv4si3_one */
   21234              : 
   21235              :         case 33:
   21236              :           if (!(
   21237              : #line 16738 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21238              : (TARGET_SSE2 && ix86_pre_reload_split ()) && 
   21239              : #line 575 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21240              : (TARGET_AVX512F)))
   21241              :             return -1;
   21242              :           return 7574; /* *subv8di3_one */
   21243              : 
   21244              :         case 34:
   21245              :           if (!(
   21246              : #line 16738 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21247              : (TARGET_SSE2 && ix86_pre_reload_split ()) && 
   21248              : #line 575 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21249              : (TARGET_AVX2)))
   21250              :             return -1;
   21251              :           return 7575; /* *subv4di3_one */
   21252              : 
   21253              :         case 35:
   21254              :           if (!
   21255              : #line 16738 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21256              : (TARGET_SSE2 && ix86_pre_reload_split ()))
   21257              :             return -1;
   21258              :           return 7576; /* *subv2di3_one */
   21259              : 
   21260              :         default:
   21261              :           return -1;
   21262              :         }
   21263              : 
   21264              :     case VEC_SELECT:
   21265              :       switch (pattern198 (x3))
   21266              :         {
   21267              :         case 0:
   21268              :           if (!
   21269              : #line 23090 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21270              : (TARGET_AVX2))
   21271              :             return -1;
   21272              :           return 8664; /* avx2_phsubwv16hi3 */
   21273              : 
   21274              :         case 1:
   21275              :           if (!
   21276              : #line 23114 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21277              : (TARGET_SSSE3))
   21278              :             return -1;
   21279              :           return 8668; /* ssse3_phsubwv8hi3 */
   21280              : 
   21281              :         case 2:
   21282              :           if (!
   21283              : #line 23183 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21284              : (TARGET_AVX2))
   21285              :             return -1;
   21286              :           return 8675; /* avx2_phsubdv8si3 */
   21287              : 
   21288              :         case 3:
   21289              :           if (!
   21290              : #line 23205 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21291              : (TARGET_SSSE3))
   21292              :             return -1;
   21293              :           return 8677; /* ssse3_phsubdv4si3 */
   21294              : 
   21295              :         default:
   21296              :           return -1;
   21297              :         }
   21298              : 
   21299              :     case SIGN_EXTEND:
   21300              :       switch (pattern200 (x3, 
   21301              : SIGN_EXTEND))
   21302              :         {
   21303              :         case 0:
   21304              :           if (!
   21305              : #line 27284 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21306              : (TARGET_XOP))
   21307              :             return -1;
   21308              :           return 9110; /* xop_phsubbw */
   21309              : 
   21310              :         case 1:
   21311              :           if (!
   21312              : #line 27305 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21313              : (TARGET_XOP))
   21314              :             return -1;
   21315              :           return 9111; /* xop_phsubwd */
   21316              : 
   21317              :         case 2:
   21318              :           if (!
   21319              : #line 27324 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21320              : (TARGET_XOP))
   21321              :             return -1;
   21322              :           return 9112; /* xop_phsubdq */
   21323              : 
   21324              :         default:
   21325              :           return -1;
   21326              :         }
   21327              : 
   21328              :     default:
   21329              :       return -1;
   21330              :     }
   21331              : }
   21332              : 
   21333              :  int
   21334              : recog_356 (rtx x1 ATTRIBUTE_UNUSED,
   21335              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   21336              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   21337              : {
   21338              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   21339              :   rtx x2, x3, x4, x5;
   21340              :   int res ATTRIBUTE_UNUSED;
   21341              :   x2 = XEXP (x1, 0);
   21342              :   operands[0] = x2;
   21343              :   x3 = XEXP (x1, 1);
   21344              :   x4 = XEXP (x3, 0);
   21345              :   operands[1] = x4;
   21346              :   x5 = XEXP (x3, 1);
   21347              :   operands[2] = x5;
   21348              :   switch (GET_MODE (operands[0]))
   21349              :     {
   21350              :     case E_V32HFmode:
   21351              :       if (pattern518 (x3, 
   21352              : E_V32HFmode) != 0
   21353              :           || !(
   21354              : #line 2939 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21355              : (TARGET_SSE && 1 && 1) && 
   21356              : #line 393 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21357              : (TARGET_AVX512FP16)))
   21358              :         return -1;
   21359              :       return 2920; /* avx512fp16_divv32hf3 */
   21360              : 
   21361              :     case E_V16HFmode:
   21362              :       if (pattern518 (x3, 
   21363              : E_V16HFmode) != 0
   21364              :           || !(
   21365              : #line 2939 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21366              : (TARGET_SSE && 1 && 1) && 
   21367              : #line 394 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21368              : (TARGET_AVX512FP16 && TARGET_AVX512VL)))
   21369              :         return -1;
   21370              :       return 2924; /* avx512fp16_divv16hf3 */
   21371              : 
   21372              :     case E_V8HFmode:
   21373              :       if (pattern518 (x3, 
   21374              : E_V8HFmode) != 0
   21375              :           || !(
   21376              : #line 2939 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21377              : (TARGET_SSE && 1 && 1) && 
   21378              : #line 395 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21379              : (TARGET_AVX512FP16 && TARGET_AVX512VL)))
   21380              :         return -1;
   21381              :       return 2926; /* avx512fp16_divv8hf3 */
   21382              : 
   21383              :     case E_V16SFmode:
   21384              :       if (pattern518 (x3, 
   21385              : E_V16SFmode) != 0
   21386              :           || !(
   21387              : #line 2939 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21388              : (TARGET_SSE && 1 && 1) && 
   21389              : #line 396 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21390              : (TARGET_AVX512F)))
   21391              :         return -1;
   21392              :       return 2928; /* avx512f_divv16sf3 */
   21393              : 
   21394              :     case E_V8SFmode:
   21395              :       if (pattern518 (x3, 
   21396              : E_V8SFmode) != 0
   21397              :           || !(
   21398              : #line 2939 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21399              : (TARGET_SSE && 1 && 1) && 
   21400              : #line 396 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21401              : (TARGET_AVX)))
   21402              :         return -1;
   21403              :       return 2932; /* avx_divv8sf3 */
   21404              : 
   21405              :     case E_V4SFmode:
   21406              :       if (pattern518 (x3, 
   21407              : E_V4SFmode) != 0
   21408              :           || !
   21409              : #line 2939 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21410              : (TARGET_SSE && 1 && 1))
   21411              :         return -1;
   21412              :       return 2934; /* sse_divv4sf3 */
   21413              : 
   21414              :     case E_V8DFmode:
   21415              :       if (pattern518 (x3, 
   21416              : E_V8DFmode) != 0
   21417              :           || !(
   21418              : #line 2939 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21419              : (TARGET_SSE && 1 && 1) && 
   21420              : #line 397 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21421              : (TARGET_AVX512F)))
   21422              :         return -1;
   21423              :       return 2936; /* avx512f_divv8df3 */
   21424              : 
   21425              :     case E_V4DFmode:
   21426              :       if (pattern518 (x3, 
   21427              : E_V4DFmode) != 0
   21428              :           || !(
   21429              : #line 2939 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21430              : (TARGET_SSE && 1 && 1) && 
   21431              : #line 397 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21432              : (TARGET_AVX)))
   21433              :         return -1;
   21434              :       return 2940; /* avx_divv4df3 */
   21435              : 
   21436              :     case E_V2DFmode:
   21437              :       if (pattern518 (x3, 
   21438              : E_V2DFmode) != 0
   21439              :           || !(
   21440              : #line 2939 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21441              : (TARGET_SSE && 1 && 1) && 
   21442              : #line 398 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21443              : (TARGET_SSE2)))
   21444              :         return -1;
   21445              :       return 2942; /* sse2_divv2df3 */
   21446              : 
   21447              :     case E_V32BFmode:
   21448              :       if (pattern12 (x3, 
   21449              : E_V32BFmode) != 0
   21450              :           || !
   21451              : #line 33196 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21452              : (TARGET_AVX10_2))
   21453              :         return -1;
   21454              :       return 10714; /* avx10_2_divbf16_v32bf */
   21455              : 
   21456              :     case E_V16BFmode:
   21457              :       if (pattern12 (x3, 
   21458              : E_V16BFmode) != 0
   21459              :           || !
   21460              : #line 33196 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21461              : (TARGET_AVX10_2))
   21462              :         return -1;
   21463              :       return 10722; /* avx10_2_divbf16_v16bf */
   21464              : 
   21465              :     case E_V8BFmode:
   21466              :       if (pattern12 (x3, 
   21467              : E_V8BFmode) != 0
   21468              :           || !
   21469              : #line 33196 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21470              : (TARGET_AVX10_2))
   21471              :         return -1;
   21472              :       return 10730; /* avx10_2_divbf16_v8bf */
   21473              : 
   21474              :     default:
   21475              :       return -1;
   21476              :     }
   21477              : }
   21478              : 
   21479              :  int
   21480              : recog_362 (rtx x1 ATTRIBUTE_UNUSED,
   21481              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   21482              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   21483              : {
   21484              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   21485              :   rtx x2, x3;
   21486              :   int res ATTRIBUTE_UNUSED;
   21487              :   switch (pattern8 (x1, pnum_clobbers))
   21488              :     {
   21489              :     case 0:
   21490              :       if (!(
   21491              : #line 28056 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21492              : (TARGET_CMOVE
   21493              :    && ix86_pre_reload_split ()) && 
   21494              : #line 1267 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21495              : (TARGET_64BIT)))
   21496              :         return -1;
   21497              :       *pnum_clobbers = 1;
   21498              :       return 1869; /* *umaxti3_doubleword */
   21499              : 
   21500              :     case 1:
   21501              :       if (!
   21502              : #line 28114 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21503              : (TARGET_CMOVE
   21504              :    && (QImode != QImode || !TARGET_PARTIAL_REG_STALL)
   21505              :    && ix86_pre_reload_split ()))
   21506              :         return -1;
   21507              :       *pnum_clobbers = 1;
   21508              :       return 1873; /* *umaxqi3_1 */
   21509              : 
   21510              :     case 2:
   21511              :       if (!
   21512              : #line 28114 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21513              : (TARGET_CMOVE
   21514              :    && (HImode != QImode || !TARGET_PARTIAL_REG_STALL)
   21515              :    && ix86_pre_reload_split ()))
   21516              :         return -1;
   21517              :       *pnum_clobbers = 1;
   21518              :       return 1877; /* *umaxhi3_1 */
   21519              : 
   21520              :     case 3:
   21521              :       if (!
   21522              : #line 3769 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   21523              : (TARGET_SSE4_1 && TARGET_MMX_WITH_SSE))
   21524              :         return -1;
   21525              :       return 2234; /* umaxv4hi3 */
   21526              : 
   21527              :     case 4:
   21528              :       if (!
   21529              : #line 3769 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   21530              : (TARGET_SSE4_1 && TARGET_MMX_WITH_SSE))
   21531              :         return -1;
   21532              :       return 2236; /* umaxv2si3 */
   21533              : 
   21534              :     case 5:
   21535              :       if (!
   21536              : #line 3794 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   21537              : ((TARGET_MMX || TARGET_MMX_WITH_SSE)
   21538              :    && (TARGET_SSE || TARGET_3DNOW_A)
   21539              :    && ix86_binary_operator_ok (UMAX, V8QImode, operands)))
   21540              :         return -1;
   21541              :       return 2238; /* *mmx_umaxv8qi3 */
   21542              : 
   21543              :     case 6:
   21544              :       if (!
   21545              : #line 3818 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   21546              : (TARGET_SSE2))
   21547              :         return -1;
   21548              :       return 2240; /* umaxv4qi3 */
   21549              : 
   21550              :     case 7:
   21551              :       if (!
   21552              : #line 3818 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   21553              : (TARGET_SSE2))
   21554              :         return -1;
   21555              :       return 2242; /* umaxv2qi3 */
   21556              : 
   21557              :     case 8:
   21558              :       if (!
   21559              : #line 3831 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   21560              : (TARGET_SSE4_1))
   21561              :         return -1;
   21562              :       return 2244; /* umaxv2hi3 */
   21563              : 
   21564              :     case 9:
   21565              :       x2 = XEXP (x1, 1);
   21566              :       x3 = XEXP (x2, 1);
   21567              :       if (rtx_equal_p (x3, operands[1])
   21568              :           && 
   21569              : #line 28295 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21570              : (TARGET_CMOVE
   21571              :    && ix86_pre_reload_split ()))
   21572              :         {
   21573              :           *pnum_clobbers = 1;
   21574              :           return 1887; /* *plus_within_umaxhi3_1 */
   21575              :         }
   21576              :       if (!rtx_equal_p (x3, operands[2])
   21577              :           || !
   21578              : #line 28295 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21579              : (TARGET_CMOVE
   21580              :    && ix86_pre_reload_split ()))
   21581              :         return -1;
   21582              :       *pnum_clobbers = 1;
   21583              :       return 1888; /* *plus_within_umaxhi3_2 */
   21584              : 
   21585              :     case 10:
   21586              :       if (!
   21587              : #line 28328 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21588              : (TARGET_CMOVE
   21589              :    && ix86_pre_reload_split ()))
   21590              :         return -1;
   21591              :       *pnum_clobbers = 1;
   21592              :       return 1899; /* *minus_within_umaxhi3 */
   21593              : 
   21594              :     default:
   21595              :       return -1;
   21596              :     }
   21597              : }
   21598              : 
   21599              :  int
   21600              : recog_370 (rtx x1 ATTRIBUTE_UNUSED,
   21601              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   21602              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   21603              : {
   21604              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   21605              :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
   21606              :   int res ATTRIBUTE_UNUSED;
   21607              :   x2 = XVECEXP (x1, 0, 0);
   21608              :   x3 = XEXP (x2, 1);
   21609              :   x4 = XEXP (x3, 1);
   21610              :   if (GET_CODE (x4) != CONST_INT)
   21611              :     return -1;
   21612              :   x5 = XVECEXP (x1, 0, 1);
   21613              :   if (GET_CODE (x5) != CLOBBER)
   21614              :     return -1;
   21615              :   x6 = XEXP (x5, 0);
   21616              :   if (GET_CODE (x6) != REG
   21617              :       || REGNO (x6) != 17
   21618              :       || GET_MODE (x6) != E_CCmode)
   21619              :     return -1;
   21620              :   x7 = XEXP (x3, 0);
   21621              :   operands[1] = x7;
   21622              :   if (XWINT (x4, 0) == 1L)
   21623              :     {
   21624              :       x8 = XEXP (x2, 0);
   21625              :       if (GET_CODE (x8) == SUBREG)
   21626              :         {
   21627              :           switch (pattern1326 (x2))
   21628              :             {
   21629              :             case 0:
   21630              :               if (
   21631              : #line 20322 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21632              : (TARGET_USE_BT && ix86_pre_reload_split ()))
   21633              :                 return 1464; /* *btsi_setcqi */
   21634              :               break;
   21635              : 
   21636              :             case 1:
   21637              :               if ((
   21638              : #line 20322 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21639              : (TARGET_USE_BT && ix86_pre_reload_split ()) && 
   21640              : #line 1198 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21641              : (TARGET_64BIT)))
   21642              :                 return 1465; /* *btdi_setcqi */
   21643              :               break;
   21644              : 
   21645              :             default:
   21646              :               break;
   21647              :             }
   21648              :         }
   21649              :       x9 = XEXP (x3, 2);
   21650              :       if (GET_CODE (x9) == SUBREG)
   21651              :         {
   21652              :           switch (pattern1327 (x2))
   21653              :             {
   21654              :             case 0:
   21655              :               if (
   21656              : #line 20403 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21657              : (TARGET_USE_BT
   21658              :    && (INTVAL (operands[3]) & (GET_MODE_BITSIZE (SImode)-1))
   21659              :       == GET_MODE_BITSIZE (SImode)-1
   21660              :    && ix86_pre_reload_split ()))
   21661              :                 return 1472; /* *btsi_setcsi_mask */
   21662              :               break;
   21663              : 
   21664              :             case 1:
   21665              :               if ((
   21666              : #line 20403 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21667              : (TARGET_USE_BT
   21668              :    && (INTVAL (operands[3]) & (GET_MODE_BITSIZE (DImode)-1))
   21669              :       == GET_MODE_BITSIZE (DImode)-1
   21670              :    && ix86_pre_reload_split ()) && 
   21671              : #line 1198 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21672              : (TARGET_64BIT)))
   21673              :                 return 1473; /* *btdi_setcdi_mask */
   21674              :               break;
   21675              : 
   21676              :             default:
   21677              :               break;
   21678              :             }
   21679              :         }
   21680              :     }
   21681              :   x8 = XEXP (x2, 0);
   21682              :   operands[0] = x8;
   21683              :   operands[2] = x4;
   21684              :   if (!const_0_to_255_operand (operands[2], E_QImode))
   21685              :     return -1;
   21686              :   x9 = XEXP (x3, 2);
   21687              :   operands[3] = x9;
   21688              :   if (!const_0_to_255_operand (operands[3], E_QImode))
   21689              :     return -1;
   21690              :   switch (pattern410 (x3))
   21691              :     {
   21692              :     case 0:
   21693              :       if (!
   21694              : #line 23178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21695              : (TARGET_TBM))
   21696              :         return -1;
   21697              :       return 1636; /* tbm_bextri_si */
   21698              : 
   21699              :     case 1:
   21700              :       if (!(
   21701              : #line 23178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21702              : (TARGET_TBM) && 
   21703              : #line 1198 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21704              : (TARGET_64BIT)))
   21705              :         return -1;
   21706              :       return 1637; /* tbm_bextri_di */
   21707              : 
   21708              :     default:
   21709              :       return -1;
   21710              :     }
   21711              : }
   21712              : 
   21713              :  int
   21714              : recog_372 (rtx x1 ATTRIBUTE_UNUSED,
   21715              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   21716              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   21717              : {
   21718              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   21719              :   rtx x2, x3, x4, x5, x6, x7;
   21720              :   int res ATTRIBUTE_UNUSED;
   21721              :   x2 = XVECEXP (x1, 0, 1);
   21722              :   x3 = XEXP (x2, 1);
   21723              :   if (x3 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
   21724              :     return -1;
   21725              :   x4 = XVECEXP (x1, 0, 0);
   21726              :   x5 = XEXP (x4, 0);
   21727              :   operands[0] = x5;
   21728              :   x6 = XEXP (x4, 1);
   21729              :   x7 = XVECEXP (x6, 0, 0);
   21730              :   operands[1] = x7;
   21731              :   switch (pattern1161 (x1))
   21732              :     {
   21733              :     case 0:
   21734              :       if (!(
   21735              : #line 1439 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21736              : (ptr_mode == SImode) && 
   21737              : #line 1434 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21738              : (word_mode == SImode)))
   21739              :         return -1;
   21740              :       *pnum_clobbers = 1;
   21741              :       return 1918; /* stack_protect_set_1_si_si */
   21742              : 
   21743              :     case 1:
   21744              :       if (!(
   21745              : #line 1439 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21746              : (ptr_mode == SImode) && 
   21747              : #line 1434 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21748              : (word_mode == DImode)))
   21749              :         return -1;
   21750              :       *pnum_clobbers = 1;
   21751              :       return 1920; /* stack_protect_set_1_si_di */
   21752              : 
   21753              :     case 2:
   21754              :       if (!(
   21755              : #line 1439 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21756              : (ptr_mode == DImode) && 
   21757              : #line 1434 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21758              : (word_mode == SImode)))
   21759              :         return -1;
   21760              :       *pnum_clobbers = 1;
   21761              :       return 1919; /* stack_protect_set_1_di_si */
   21762              : 
   21763              :     case 3:
   21764              :       if (!(
   21765              : #line 1439 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21766              : (ptr_mode == DImode) && 
   21767              : #line 1434 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21768              : (word_mode == DImode)))
   21769              :         return -1;
   21770              :       *pnum_clobbers = 1;
   21771              :       return 1921; /* stack_protect_set_1_di_di */
   21772              : 
   21773              :     default:
   21774              :       return -1;
   21775              :     }
   21776              : }
   21777              : 
   21778              :  int
   21779              : recog_375 (rtx x1 ATTRIBUTE_UNUSED,
   21780              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   21781              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   21782              : {
   21783              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   21784              :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
   21785              :   rtx x10, x11, x12, x13, x14, x15, x16, x17;
   21786              :   rtx x18;
   21787              :   int res ATTRIBUTE_UNUSED;
   21788              :   x2 = XVECEXP (x1, 0, 0);
   21789              :   x3 = XEXP (x2, 1);
   21790              :   switch (XINT (x3, 1))
   21791              :     {
   21792              :     case 106:
   21793              :       if (GET_MODE (x3) != E_TImode)
   21794              :         return -1;
   21795              :       x4 = XVECEXP (x1, 0, 1);
   21796              :       if (GET_CODE (x4) != UNSPEC
   21797              :           || XVECLEN (x4, 0) != 1
   21798              :           || XINT (x4, 1) != 109
   21799              :           || GET_MODE (x4) != E_DImode)
   21800              :         return -1;
   21801              :       x5 = XVECEXP (x4, 0, 0);
   21802              :       if (x5 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
   21803              :         return -1;
   21804              :       x6 = XEXP (x2, 0);
   21805              :       operands[0] = x6;
   21806              :       if (!push_operand (operands[0], E_TImode))
   21807              :         return -1;
   21808              :       x7 = XVECEXP (x3, 0, 0);
   21809              :       operands[1] = x7;
   21810              :       if (!register_operand (operands[1], E_DImode))
   21811              :         return -1;
   21812              :       x8 = XVECEXP (x3, 0, 1);
   21813              :       operands[2] = x8;
   21814              :       if (!register_operand (operands[2], E_DImode)
   21815              :           || !
   21816              : #line 3993 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21817              : (TARGET_APX_PUSH2POP2 && TARGET_APX_PPX))
   21818              :         return -1;
   21819              :       return 167; /* push2p_di */
   21820              : 
   21821              :     case 41:
   21822              :       x8 = XVECEXP (x3, 0, 1);
   21823              :       if (GET_CODE (x8) != CONST_INT)
   21824              :         return -1;
   21825              :       x6 = XEXP (x2, 0);
   21826              :       if (GET_CODE (x6) != REG
   21827              :           || REGNO (x6) != 17)
   21828              :         return -1;
   21829              :       x7 = XVECEXP (x3, 0, 0);
   21830              :       switch (GET_CODE (x7))
   21831              :         {
   21832              :         case REG:
   21833              :         case SUBREG:
   21834              :         case MEM:
   21835              :           operands[1] = x7;
   21836              :           if (XWINT (x8, 0) == 0L)
   21837              :             {
   21838              :               res = recog_373 (x1, insn, pnum_clobbers);
   21839              :               if (res >= 0)
   21840              :                 return res;
   21841              :             }
   21842              :           x4 = XVECEXP (x1, 0, 1);
   21843              :           if (GET_CODE (x4) != SET)
   21844              :             return -1;
   21845              :           x9 = XEXP (x4, 1);
   21846              :           if (GET_CODE (x9) != NEG
   21847              :               || GET_MODE (x6) != E_CCOmode
   21848              :               || GET_MODE (x3) != E_CCOmode)
   21849              :             return -1;
   21850              :           operands[2] = x8;
   21851              :           x10 = XEXP (x4, 0);
   21852              :           operands[0] = x10;
   21853              :           x11 = XEXP (x9, 0);
   21854              :           if (!rtx_equal_p (x11, operands[1]))
   21855              :             return -1;
   21856              :           switch (GET_MODE (operands[1]))
   21857              :             {
   21858              :             case E_QImode:
   21859              :               if (pattern1683 (x9, 
   21860              : E_QImode) != 0
   21861              :                   || !
   21862              : #line 15467 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21863              : (ix86_unary_operator_ok (NEG, QImode, operands)
   21864              :    && mode_signbit_p (QImode, operands[2])))
   21865              :                 return -1;
   21866              :               return 1023; /* *negvqi3 */
   21867              : 
   21868              :             case E_HImode:
   21869              :               if (pattern1683 (x9, 
   21870              : E_HImode) != 0
   21871              :                   || !
   21872              : #line 15467 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21873              : (ix86_unary_operator_ok (NEG, HImode, operands)
   21874              :    && mode_signbit_p (HImode, operands[2])))
   21875              :                 return -1;
   21876              :               return 1024; /* *negvhi3 */
   21877              : 
   21878              :             case E_SImode:
   21879              :               if (pattern1683 (x9, 
   21880              : E_SImode) != 0
   21881              :                   || !
   21882              : #line 15467 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21883              : (ix86_unary_operator_ok (NEG, SImode, operands)
   21884              :    && mode_signbit_p (SImode, operands[2])))
   21885              :                 return -1;
   21886              :               return 1025; /* *negvsi3 */
   21887              : 
   21888              :             case E_DImode:
   21889              :               if (pattern1683 (x9, 
   21890              : E_DImode) != 0
   21891              :                   || !(
   21892              : #line 15467 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21893              : (ix86_unary_operator_ok (NEG, DImode, operands)
   21894              :    && mode_signbit_p (DImode, operands[2])) && 
   21895              : #line 1192 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21896              : (TARGET_64BIT)))
   21897              :                 return -1;
   21898              :               return 1026; /* *negvdi3 */
   21899              : 
   21900              :             default:
   21901              :               return -1;
   21902              :             }
   21903              : 
   21904              :         case AND:
   21905              :           x12 = XEXP (x7, 1);
   21906              :           if (x12 != const_int_rtx[MAX_SAVED_CONST_INT + 1]
   21907              :               || XWINT (x8, 0) != 0L)
   21908              :             return -1;
   21909              :           x4 = XVECEXP (x1, 0, 1);
   21910              :           if (GET_CODE (x4) != SET
   21911              :               || GET_MODE (x6) != E_CCCmode
   21912              :               || GET_MODE (x3) != E_CCCmode)
   21913              :             return -1;
   21914              :           x13 = XEXP (x7, 0);
   21915              :           operands[1] = x13;
   21916              :           x10 = XEXP (x4, 0);
   21917              :           operands[0] = x10;
   21918              :           x9 = XEXP (x4, 1);
   21919              :           switch (GET_CODE (x9))
   21920              :             {
   21921              :             case LSHIFTRT:
   21922              :               switch (pattern1639 (x1))
   21923              :                 {
   21924              :                 case 0:
   21925              :                   return 1419; /* lshrsi3_carry */
   21926              : 
   21927              :                 case 1:
   21928              :                   if (!
   21929              : #line 1198 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21930              : (TARGET_64BIT))
   21931              :                     return -1;
   21932              :                   return 1421; /* lshrdi3_carry */
   21933              : 
   21934              :                 default:
   21935              :                   return -1;
   21936              :                 }
   21937              : 
   21938              :             case ASHIFTRT:
   21939              :               switch (pattern1639 (x1))
   21940              :                 {
   21941              :                 case 0:
   21942              :                   return 1420; /* ashrsi3_carry */
   21943              : 
   21944              :                 case 1:
   21945              :                   if (!
   21946              : #line 1198 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21947              : (TARGET_64BIT))
   21948              :                     return -1;
   21949              :                   return 1422; /* ashrdi3_carry */
   21950              : 
   21951              :                 default:
   21952              :                   return -1;
   21953              :                 }
   21954              : 
   21955              :             default:
   21956              :               return -1;
   21957              :             }
   21958              : 
   21959              :         default:
   21960              :           return -1;
   21961              :         }
   21962              : 
   21963              :     case 99:
   21964              :       if (pattern350 (x1) != 0)
   21965              :         return -1;
   21966              :       x7 = XVECEXP (x3, 0, 0);
   21967              :       operands[1] = x7;
   21968              :       x8 = XVECEXP (x3, 0, 1);
   21969              :       operands[2] = x8;
   21970              :       switch (GET_MODE (operands[0]))
   21971              :         {
   21972              :         case E_SImode:
   21973              :           if (pattern1429 (x3, 
   21974              : E_SImode) != 0
   21975              :               || !
   21976              : #line 22760 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21977              : (TARGET_BMI))
   21978              :             return -1;
   21979              :           return 1598; /* bmi_bextr_si */
   21980              : 
   21981              :         case E_DImode:
   21982              :           if (pattern1429 (x3, 
   21983              : E_DImode) != 0
   21984              :               || !(
   21985              : #line 22760 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21986              : (TARGET_BMI) && 
   21987              : #line 1198 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21988              : (TARGET_64BIT)))
   21989              :             return -1;
   21990              :           return 1599; /* bmi_bextr_di */
   21991              : 
   21992              :         default:
   21993              :           return -1;
   21994              :         }
   21995              : 
   21996              :     case 67:
   21997              :       if (GET_MODE (x3) != E_XFmode)
   21998              :         return -1;
   21999              :       x4 = XVECEXP (x1, 0, 1);
   22000              :       if (GET_CODE (x4) != CLOBBER)
   22001              :         return -1;
   22002              :       x6 = XEXP (x2, 0);
   22003              :       operands[0] = x6;
   22004              :       if (!register_operand (operands[0], E_XFmode))
   22005              :         return -1;
   22006              :       x7 = XVECEXP (x3, 0, 0);
   22007              :       operands[2] = x7;
   22008              :       if (!register_operand (operands[2], E_XFmode))
   22009              :         return -1;
   22010              :       x8 = XVECEXP (x3, 0, 1);
   22011              :       operands[1] = x8;
   22012              :       if (!register_operand (operands[1], E_XFmode))
   22013              :         return -1;
   22014              :       x10 = XEXP (x4, 0);
   22015              :       operands[3] = x10;
   22016              :       if (!scratch_operand (operands[3], E_XFmode)
   22017              :           || !
   22018              : #line 25185 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22019              : (TARGET_USE_FANCY_MATH_387
   22020              :    && flag_unsafe_math_optimizations))
   22021              :         return -1;
   22022              :       return 1753; /* atan2xf3 */
   22023              : 
   22024              :     case 68:
   22025              :       if (pattern556 (x1) != 0
   22026              :           || !
   22027              : #line 25489 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22028              : (TARGET_USE_FANCY_MATH_387
   22029              :    && flag_unsafe_math_optimizations))
   22030              :         return -1;
   22031              :       return 1754; /* fyl2xxf3_i387 */
   22032              : 
   22033              :     case 69:
   22034              :       if (pattern556 (x1) != 0
   22035              :           || !
   22036              : #line 25587 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22037              : (TARGET_USE_FANCY_MATH_387
   22038              :    && flag_unsafe_math_optimizations))
   22039              :         return -1;
   22040              :       return 1755; /* fyl2xp1xf3_i387 */
   22041              : 
   22042              :     case 85:
   22043              :       if (GET_MODE (x3) != E_XFmode)
   22044              :         return -1;
   22045              :       x4 = XVECEXP (x1, 0, 1);
   22046              :       if (GET_CODE (x4) != SET)
   22047              :         return -1;
   22048              :       x9 = XEXP (x4, 1);
   22049              :       if (pattern827 (x9, 
   22050              : E_XFmode, 
   22051              : 86, 
   22052              : 2, 
   22053              : UNSPEC) != 0)
   22054              :         return -1;
   22055              :       x6 = XEXP (x2, 0);
   22056              :       operands[0] = x6;
   22057              :       if (!register_operand (operands[0], E_XFmode)
   22058              :           || pattern1430 (x1) != 0
   22059              :           || !
   22060              : #line 25725 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22061              : (TARGET_USE_FANCY_MATH_387
   22062              :    && flag_unsafe_math_optimizations))
   22063              :         return -1;
   22064              :       return 1758; /* fscalexf4_i387 */
   22065              : 
   22066              :     case 94:
   22067              :       if (GET_MODE (x3) != E_CCZmode)
   22068              :         return -1;
   22069              :       x4 = XVECEXP (x1, 0, 1);
   22070              :       if (GET_CODE (x4) != CLOBBER)
   22071              :         return -1;
   22072              :       x6 = XEXP (x2, 0);
   22073              :       operands[0] = x6;
   22074              :       if (!flags_reg_operand (operands[0], E_CCZmode))
   22075              :         return -1;
   22076              :       x7 = XVECEXP (x3, 0, 0);
   22077              :       operands[1] = x7;
   22078              :       x8 = XVECEXP (x3, 0, 1);
   22079              :       operands[2] = x8;
   22080              :       x10 = XEXP (x4, 0);
   22081              :       operands[3] = x10;
   22082              :       switch (GET_MODE (operands[1]))
   22083              :         {
   22084              :         case E_SImode:
   22085              :           if (!memory_operand (operands[1], E_SImode)
   22086              :               || !memory_operand (operands[2], E_SImode)
   22087              :               || !scratch_operand (operands[3], E_SImode)
   22088              :               || !
   22089              : #line 1439 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22090              : (ptr_mode == SImode))
   22091              :             return -1;
   22092              :           return 1934; /* stack_protect_test_1_si */
   22093              : 
   22094              :         case E_DImode:
   22095              :           if (!memory_operand (operands[1], E_DImode)
   22096              :               || !memory_operand (operands[2], E_DImode)
   22097              :               || !scratch_operand (operands[3], E_DImode)
   22098              :               || !
   22099              : #line 1439 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22100              : (ptr_mode == DImode))
   22101              :             return -1;
   22102              :           return 1935; /* stack_protect_test_1_di */
   22103              : 
   22104              :         default:
   22105              :           return -1;
   22106              :         }
   22107              : 
   22108              :     case 64:
   22109              :       if (pattern557 (x1) != 0
   22110              :           || !
   22111              : #line 914 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   22112              : (TARGET_3DNOW))
   22113              :         return -1;
   22114              :       return 2111; /* mmx_ieee_maxv2sf3 */
   22115              : 
   22116              :     case 63:
   22117              :       if (pattern557 (x1) != 0
   22118              :           || !
   22119              : #line 914 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   22120              : (TARGET_3DNOW))
   22121              :         return -1;
   22122              :       return 2112; /* mmx_ieee_minv2sf3 */
   22123              : 
   22124              :     case 161:
   22125              :       x6 = XEXP (x2, 0);
   22126              :       if (GET_CODE (x6) != MEM)
   22127              :         return -1;
   22128              :       operands[5] = x6;
   22129              :       x14 = XEXP (x6, 0);
   22130              :       if (GET_CODE (x14) != UNSPEC
   22131              :           || XVECLEN (x14, 0) != 4
   22132              :           || XINT (x14, 1) != 155)
   22133              :         return -1;
   22134              :       x4 = XVECEXP (x1, 0, 1);
   22135              :       if (GET_CODE (x4) != CLOBBER)
   22136              :         return -1;
   22137              :       x15 = XVECEXP (x14, 0, 0);
   22138              :       operands[0] = x15;
   22139              :       x16 = XVECEXP (x14, 0, 1);
   22140              :       operands[2] = x16;
   22141              :       x17 = XVECEXP (x14, 0, 2);
   22142              :       operands[4] = x17;
   22143              :       if (!const1248_operand (operands[4], E_SImode))
   22144              :         return -1;
   22145              :       x18 = XVECEXP (x14, 0, 3);
   22146              :       operands[6] = x18;
   22147              :       x8 = XVECEXP (x3, 0, 1);
   22148              :       operands[3] = x8;
   22149              :       x10 = XEXP (x4, 0);
   22150              :       operands[1] = x10;
   22151              :       x7 = XVECEXP (x3, 0, 0);
   22152              :       if (!rtx_equal_p (x7, operands[6]))
   22153              :         return -1;
   22154              :       switch (GET_MODE (operands[5]))
   22155              :         {
   22156              :         case E_V16SImode:
   22157              :           if (!vsib_mem_operator (operands[5], E_V16SImode)
   22158              :               || GET_MODE (x3) != E_V16SImode)
   22159              :             return -1;
   22160              :           switch (GET_MODE (x14))
   22161              :             {
   22162              :             case E_SImode:
   22163              :               switch (pattern1795 (
   22164              : E_SImode))
   22165              :                 {
   22166              :                 case 0:
   22167              :                   if (!(
   22168              : #line 30646 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22169              : (TARGET_AVX512F) && 
   22170              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22171              : (Pmode == SImode)))
   22172              :                     return -1;
   22173              :                   return 9942; /* *avx512f_scattersiv16si */
   22174              : 
   22175              :                 case 1:
   22176              :                   if (!(
   22177              : #line 30686 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22178              : (TARGET_AVX512F) && 
   22179              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22180              : (Pmode == SImode)))
   22181              :                     return -1;
   22182              :                   return 9966; /* *avx512f_scatterdiv16si */
   22183              : 
   22184              :                 default:
   22185              :                   return -1;
   22186              :                 }
   22187              : 
   22188              :             case E_DImode:
   22189              :               switch (pattern1795 (
   22190              : E_DImode))
   22191              :                 {
   22192              :                 case 0:
   22193              :                   if (!(
   22194              : #line 30646 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22195              : (TARGET_AVX512F) && 
   22196              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22197              : (Pmode == DImode)))
   22198              :                     return -1;
   22199              :                   return 9954; /* *avx512f_scattersiv16si */
   22200              : 
   22201              :                 case 1:
   22202              :                   if (!(
   22203              : #line 30686 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22204              : (TARGET_AVX512F) && 
   22205              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22206              : (Pmode == DImode)))
   22207              :                     return -1;
   22208              :                   return 9978; /* *avx512f_scatterdiv16si */
   22209              : 
   22210              :                 default:
   22211              :                   return -1;
   22212              :                 }
   22213              : 
   22214              :             default:
   22215              :               return -1;
   22216              :             }
   22217              : 
   22218              :         case E_V16SFmode:
   22219              :           if (!vsib_mem_operator (operands[5], E_V16SFmode)
   22220              :               || GET_MODE (x3) != E_V16SFmode)
   22221              :             return -1;
   22222              :           switch (GET_MODE (x14))
   22223              :             {
   22224              :             case E_SImode:
   22225              :               switch (pattern1796 (
   22226              : E_SImode))
   22227              :                 {
   22228              :                 case 0:
   22229              :                   if (!(
   22230              : #line 30646 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22231              : (TARGET_AVX512F) && 
   22232              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22233              : (Pmode == SImode)))
   22234              :                     return -1;
   22235              :                   return 9943; /* *avx512f_scattersiv16sf */
   22236              : 
   22237              :                 case 1:
   22238              :                   if (!(
   22239              : #line 30686 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22240              : (TARGET_AVX512F) && 
   22241              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22242              : (Pmode == SImode)))
   22243              :                     return -1;
   22244              :                   return 9967; /* *avx512f_scatterdiv16sf */
   22245              : 
   22246              :                 default:
   22247              :                   return -1;
   22248              :                 }
   22249              : 
   22250              :             case E_DImode:
   22251              :               switch (pattern1796 (
   22252              : E_DImode))
   22253              :                 {
   22254              :                 case 0:
   22255              :                   if (!(
   22256              : #line 30646 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22257              : (TARGET_AVX512F) && 
   22258              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22259              : (Pmode == DImode)))
   22260              :                     return -1;
   22261              :                   return 9955; /* *avx512f_scattersiv16sf */
   22262              : 
   22263              :                 case 1:
   22264              :                   if (!(
   22265              : #line 30686 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22266              : (TARGET_AVX512F) && 
   22267              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22268              : (Pmode == DImode)))
   22269              :                     return -1;
   22270              :                   return 9979; /* *avx512f_scatterdiv16sf */
   22271              : 
   22272              :                 default:
   22273              :                   return -1;
   22274              :                 }
   22275              : 
   22276              :             default:
   22277              :               return -1;
   22278              :             }
   22279              : 
   22280              :         case E_V8DImode:
   22281              :           switch (pattern1732 (x2, 
   22282              : E_V8DImode))
   22283              :             {
   22284              :             case 0:
   22285              :               if (!(
   22286              : #line 30646 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22287              : (TARGET_AVX512F) && 
   22288              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22289              : (Pmode == SImode)))
   22290              :                 return -1;
   22291              :               return 9944; /* *avx512f_scattersiv8di */
   22292              : 
   22293              :             case 1:
   22294              :               if (!(
   22295              : #line 30686 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22296              : (TARGET_AVX512F) && 
   22297              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22298              : (Pmode == SImode)))
   22299              :                 return -1;
   22300              :               return 9968; /* *avx512f_scatterdiv8di */
   22301              : 
   22302              :             case 2:
   22303              :               if (!(
   22304              : #line 30646 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22305              : (TARGET_AVX512F) && 
   22306              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22307              : (Pmode == DImode)))
   22308              :                 return -1;
   22309              :               return 9956; /* *avx512f_scattersiv8di */
   22310              : 
   22311              :             case 3:
   22312              :               if (!(
   22313              : #line 30686 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22314              : (TARGET_AVX512F) && 
   22315              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22316              : (Pmode == DImode)))
   22317              :                 return -1;
   22318              :               return 9980; /* *avx512f_scatterdiv8di */
   22319              : 
   22320              :             default:
   22321              :               return -1;
   22322              :             }
   22323              : 
   22324              :         case E_V8DFmode:
   22325              :           switch (pattern1732 (x2, 
   22326              : E_V8DFmode))
   22327              :             {
   22328              :             case 0:
   22329              :               if (!(
   22330              : #line 30646 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22331              : (TARGET_AVX512F) && 
   22332              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22333              : (Pmode == SImode)))
   22334              :                 return -1;
   22335              :               return 9945; /* *avx512f_scattersiv8df */
   22336              : 
   22337              :             case 1:
   22338              :               if (!(
   22339              : #line 30686 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22340              : (TARGET_AVX512F) && 
   22341              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22342              : (Pmode == SImode)))
   22343              :                 return -1;
   22344              :               return 9969; /* *avx512f_scatterdiv8df */
   22345              : 
   22346              :             case 2:
   22347              :               if (!(
   22348              : #line 30646 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22349              : (TARGET_AVX512F) && 
   22350              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22351              : (Pmode == DImode)))
   22352              :                 return -1;
   22353              :               return 9957; /* *avx512f_scattersiv8df */
   22354              : 
   22355              :             case 3:
   22356              :               if (!(
   22357              : #line 30686 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22358              : (TARGET_AVX512F) && 
   22359              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22360              : (Pmode == DImode)))
   22361              :                 return -1;
   22362              :               return 9981; /* *avx512f_scatterdiv8df */
   22363              : 
   22364              :             default:
   22365              :               return -1;
   22366              :             }
   22367              : 
   22368              :         case E_V8SImode:
   22369              :           switch (pattern1733 (x2, 
   22370              : E_V8SImode))
   22371              :             {
   22372              :             case 0:
   22373              :               switch (pattern1848 (
   22374              : E_SImode))
   22375              :                 {
   22376              :                 case 0:
   22377              :                   if (!(
   22378              : #line 30646 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22379              : (TARGET_AVX512F) && ((((
   22380              : #line 989 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22381              : (TARGET_AVX512VL) && 
   22382              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22383              : (Pmode == SImode)) && 
   22384              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22385              : (Pmode == SImode)) && 
   22386              : #line 989 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22387              : (TARGET_AVX512VL)) && 
   22388              : #line 989 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22389              : (TARGET_AVX512VL))))
   22390              :                     return -1;
   22391              :                   return 9946; /* *avx512f_scattersiv8si */
   22392              : 
   22393              :                 case 1:
   22394              :                   if (!(
   22395              : #line 30686 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22396              : (TARGET_AVX512F) && (((
   22397              : #line 989 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22398              : (TARGET_AVX512VL) && 
   22399              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22400              : (Pmode == SImode)) && 
   22401              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22402              : (Pmode == SImode)) && 
   22403              : #line 989 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22404              : (TARGET_AVX512VL))))
   22405              :                     return -1;
   22406              :                   return 9970; /* *avx512f_scatterdiv8si */
   22407              : 
   22408              :                 default:
   22409              :                   return -1;
   22410              :                 }
   22411              : 
   22412              :             case 1:
   22413              :               switch (pattern1848 (
   22414              : E_DImode))
   22415              :                 {
   22416              :                 case 0:
   22417              :                   if (!(
   22418              : #line 30646 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22419              : (TARGET_AVX512F) && ((((
   22420              : #line 989 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22421              : (TARGET_AVX512VL) && 
   22422              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22423              : (Pmode == DImode)) && 
   22424              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22425              : (Pmode == DImode)) && 
   22426              : #line 989 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22427              : (TARGET_AVX512VL)) && 
   22428              : #line 989 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22429              : (TARGET_AVX512VL))))
   22430              :                     return -1;
   22431              :                   return 9958; /* *avx512f_scattersiv8si */
   22432              : 
   22433              :                 case 1:
   22434              :                   if (!(
   22435              : #line 30686 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22436              : (TARGET_AVX512F) && (((
   22437              : #line 989 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22438              : (TARGET_AVX512VL) && 
   22439              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22440              : (Pmode == DImode)) && 
   22441              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22442              : (Pmode == DImode)) && 
   22443              : #line 989 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22444              : (TARGET_AVX512VL))))
   22445              :                     return -1;
   22446              :                   return 9982; /* *avx512f_scatterdiv8si */
   22447              : 
   22448              :                 default:
   22449              :                   return -1;
   22450              :                 }
   22451              : 
   22452              :             default:
   22453              :               return -1;
   22454              :             }
   22455              : 
   22456              :         case E_V8SFmode:
   22457              :           switch (pattern1733 (x2, 
   22458              : E_V8SFmode))
   22459              :             {
   22460              :             case 0:
   22461              :               switch (pattern1849 (
   22462              : E_SImode))
   22463              :                 {
   22464              :                 case 0:
   22465              :                   if (!(
   22466              : #line 30646 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22467              : (TARGET_AVX512F) && ((((
   22468              : #line 989 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22469              : (TARGET_AVX512VL) && 
   22470              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22471              : (Pmode == SImode)) && 
   22472              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22473              : (Pmode == SImode)) && 
   22474              : #line 989 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22475              : (TARGET_AVX512VL)) && 
   22476              : #line 989 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22477              : (TARGET_AVX512VL))))
   22478              :                     return -1;
   22479              :                   return 9947; /* *avx512f_scattersiv8sf */
   22480              : 
   22481              :                 case 1:
   22482              :                   if (!(
   22483              : #line 30686 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22484              : (TARGET_AVX512F) && (((
   22485              : #line 989 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22486              : (TARGET_AVX512VL) && 
   22487              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22488              : (Pmode == SImode)) && 
   22489              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22490              : (Pmode == SImode)) && 
   22491              : #line 989 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22492              : (TARGET_AVX512VL))))
   22493              :                     return -1;
   22494              :                   return 9971; /* *avx512f_scatterdiv8sf */
   22495              : 
   22496              :                 default:
   22497              :                   return -1;
   22498              :                 }
   22499              : 
   22500              :             case 1:
   22501              :               switch (pattern1849 (
   22502              : E_DImode))
   22503              :                 {
   22504              :                 case 0:
   22505              :                   if (!(
   22506              : #line 30646 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22507              : (TARGET_AVX512F) && ((((
   22508              : #line 989 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22509              : (TARGET_AVX512VL) && 
   22510              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22511              : (Pmode == DImode)) && 
   22512              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22513              : (Pmode == DImode)) && 
   22514              : #line 989 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22515              : (TARGET_AVX512VL)) && 
   22516              : #line 989 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22517              : (TARGET_AVX512VL))))
   22518              :                     return -1;
   22519              :                   return 9959; /* *avx512f_scattersiv8sf */
   22520              : 
   22521              :                 case 1:
   22522              :                   if (!(
   22523              : #line 30686 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22524              : (TARGET_AVX512F) && (((
   22525              : #line 989 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22526              : (TARGET_AVX512VL) && 
   22527              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22528              : (Pmode == DImode)) && 
   22529              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22530              : (Pmode == DImode)) && 
   22531              : #line 989 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22532              : (TARGET_AVX512VL))))
   22533              :                     return -1;
   22534              :                   return 9983; /* *avx512f_scatterdiv8sf */
   22535              : 
   22536              :                 default:
   22537              :                   return -1;
   22538              :                 }
   22539              : 
   22540              :             default:
   22541              :               return -1;
   22542              :             }
   22543              : 
   22544              :         case E_V4DImode:
   22545              :           switch (pattern1735 (x2, 
   22546              : E_V4DImode))
   22547              :             {
   22548              :             case 0:
   22549              :               if (!(
   22550              : #line 30646 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22551              : (TARGET_AVX512F) && ((((
   22552              : #line 990 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22553              : (TARGET_AVX512VL) && 
   22554              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22555              : (Pmode == SImode)) && 
   22556              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22557              : (Pmode == SImode)) && 
   22558              : #line 990 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22559              : (TARGET_AVX512VL)) && 
   22560              : #line 990 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22561              : (TARGET_AVX512VL))))
   22562              :                 return -1;
   22563              :               return 9948; /* *avx512f_scattersiv4di */
   22564              : 
   22565              :             case 1:
   22566              :               if (!(
   22567              : #line 30686 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22568              : (TARGET_AVX512F) && (((
   22569              : #line 990 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22570              : (TARGET_AVX512VL) && 
   22571              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22572              : (Pmode == SImode)) && 
   22573              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22574              : (Pmode == SImode)) && 
   22575              : #line 990 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22576              : (TARGET_AVX512VL))))
   22577              :                 return -1;
   22578              :               return 9972; /* *avx512f_scatterdiv4di */
   22579              : 
   22580              :             case 2:
   22581              :               if (!(
   22582              : #line 30646 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22583              : (TARGET_AVX512F) && ((((
   22584              : #line 990 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22585              : (TARGET_AVX512VL) && 
   22586              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22587              : (Pmode == DImode)) && 
   22588              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22589              : (Pmode == DImode)) && 
   22590              : #line 990 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22591              : (TARGET_AVX512VL)) && 
   22592              : #line 990 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22593              : (TARGET_AVX512VL))))
   22594              :                 return -1;
   22595              :               return 9960; /* *avx512f_scattersiv4di */
   22596              : 
   22597              :             case 3:
   22598              :               if (!(
   22599              : #line 30686 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22600              : (TARGET_AVX512F) && (((
   22601              : #line 990 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22602              : (TARGET_AVX512VL) && 
   22603              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22604              : (Pmode == DImode)) && 
   22605              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22606              : (Pmode == DImode)) && 
   22607              : #line 990 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22608              : (TARGET_AVX512VL))))
   22609              :                 return -1;
   22610              :               return 9984; /* *avx512f_scatterdiv4di */
   22611              : 
   22612              :             default:
   22613              :               return -1;
   22614              :             }
   22615              : 
   22616              :         case E_V4DFmode:
   22617              :           switch (pattern1735 (x2, 
   22618              : E_V4DFmode))
   22619              :             {
   22620              :             case 0:
   22621              :               if (!(
   22622              : #line 30646 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22623              : (TARGET_AVX512F) && ((((
   22624              : #line 990 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22625              : (TARGET_AVX512VL) && 
   22626              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22627              : (Pmode == SImode)) && 
   22628              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22629              : (Pmode == SImode)) && 
   22630              : #line 990 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22631              : (TARGET_AVX512VL)) && 
   22632              : #line 990 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22633              : (TARGET_AVX512VL))))
   22634              :                 return -1;
   22635              :               return 9949; /* *avx512f_scattersiv4df */
   22636              : 
   22637              :             case 1:
   22638              :               if (!(
   22639              : #line 30686 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22640              : (TARGET_AVX512F) && (((
   22641              : #line 990 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22642              : (TARGET_AVX512VL) && 
   22643              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22644              : (Pmode == SImode)) && 
   22645              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22646              : (Pmode == SImode)) && 
   22647              : #line 990 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22648              : (TARGET_AVX512VL))))
   22649              :                 return -1;
   22650              :               return 9973; /* *avx512f_scatterdiv4df */
   22651              : 
   22652              :             case 2:
   22653              :               if (!(
   22654              : #line 30646 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22655              : (TARGET_AVX512F) && ((((
   22656              : #line 990 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22657              : (TARGET_AVX512VL) && 
   22658              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22659              : (Pmode == DImode)) && 
   22660              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22661              : (Pmode == DImode)) && 
   22662              : #line 990 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22663              : (TARGET_AVX512VL)) && 
   22664              : #line 990 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22665              : (TARGET_AVX512VL))))
   22666              :                 return -1;
   22667              :               return 9961; /* *avx512f_scattersiv4df */
   22668              : 
   22669              :             case 3:
   22670              :               if (!(
   22671              : #line 30686 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22672              : (TARGET_AVX512F) && (((
   22673              : #line 990 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22674              : (TARGET_AVX512VL) && 
   22675              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22676              : (Pmode == DImode)) && 
   22677              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22678              : (Pmode == DImode)) && 
   22679              : #line 990 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22680              : (TARGET_AVX512VL))))
   22681              :                 return -1;
   22682              :               return 9985; /* *avx512f_scatterdiv4df */
   22683              : 
   22684              :             default:
   22685              :               return -1;
   22686              :             }
   22687              : 
   22688              :         case E_V4SImode:
   22689              :           switch (pattern1737 (x2, 
   22690              : E_V4SImode))
   22691              :             {
   22692              :             case 0:
   22693              :               if (!(
   22694              : #line 30646 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22695              : (TARGET_AVX512F) && ((((
   22696              : #line 991 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22697              : (TARGET_AVX512VL) && 
   22698              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22699              : (Pmode == SImode)) && 
   22700              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22701              : (Pmode == SImode)) && 
   22702              : #line 991 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22703              : (TARGET_AVX512VL)) && 
   22704              : #line 991 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22705              : (TARGET_AVX512VL))))
   22706              :                 return -1;
   22707              :               return 9950; /* *avx512f_scattersiv4si */
   22708              : 
   22709              :             case 1:
   22710              :               if (!(
   22711              : #line 30686 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22712              : (TARGET_AVX512F) && (((
   22713              : #line 991 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22714              : (TARGET_AVX512VL) && 
   22715              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22716              : (Pmode == SImode)) && 
   22717              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22718              : (Pmode == SImode)) && 
   22719              : #line 991 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22720              : (TARGET_AVX512VL))))
   22721              :                 return -1;
   22722              :               return 9974; /* *avx512f_scatterdiv4si */
   22723              : 
   22724              :             case 2:
   22725              :               if (!(
   22726              : #line 30646 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22727              : (TARGET_AVX512F) && ((((
   22728              : #line 991 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22729              : (TARGET_AVX512VL) && 
   22730              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22731              : (Pmode == DImode)) && 
   22732              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22733              : (Pmode == DImode)) && 
   22734              : #line 991 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22735              : (TARGET_AVX512VL)) && 
   22736              : #line 991 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22737              : (TARGET_AVX512VL))))
   22738              :                 return -1;
   22739              :               return 9962; /* *avx512f_scattersiv4si */
   22740              : 
   22741              :             case 3:
   22742              :               if (!(
   22743              : #line 30686 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22744              : (TARGET_AVX512F) && (((
   22745              : #line 991 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22746              : (TARGET_AVX512VL) && 
   22747              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22748              : (Pmode == DImode)) && 
   22749              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22750              : (Pmode == DImode)) && 
   22751              : #line 991 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22752              : (TARGET_AVX512VL))))
   22753              :                 return -1;
   22754              :               return 9986; /* *avx512f_scatterdiv4si */
   22755              : 
   22756              :             default:
   22757              :               return -1;
   22758              :             }
   22759              : 
   22760              :         case E_V4SFmode:
   22761              :           switch (pattern1737 (x2, 
   22762              : E_V4SFmode))
   22763              :             {
   22764              :             case 0:
   22765              :               if (!(
   22766              : #line 30646 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22767              : (TARGET_AVX512F) && ((((
   22768              : #line 991 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22769              : (TARGET_AVX512VL) && 
   22770              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22771              : (Pmode == SImode)) && 
   22772              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22773              : (Pmode == SImode)) && 
   22774              : #line 991 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22775              : (TARGET_AVX512VL)) && 
   22776              : #line 991 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22777              : (TARGET_AVX512VL))))
   22778              :                 return -1;
   22779              :               return 9951; /* *avx512f_scattersiv4sf */
   22780              : 
   22781              :             case 1:
   22782              :               if (!(
   22783              : #line 30686 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22784              : (TARGET_AVX512F) && (((
   22785              : #line 991 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22786              : (TARGET_AVX512VL) && 
   22787              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22788              : (Pmode == SImode)) && 
   22789              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22790              : (Pmode == SImode)) && 
   22791              : #line 991 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22792              : (TARGET_AVX512VL))))
   22793              :                 return -1;
   22794              :               return 9975; /* *avx512f_scatterdiv4sf */
   22795              : 
   22796              :             case 2:
   22797              :               if (!(
   22798              : #line 30646 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22799              : (TARGET_AVX512F) && ((((
   22800              : #line 991 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22801              : (TARGET_AVX512VL) && 
   22802              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22803              : (Pmode == DImode)) && 
   22804              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22805              : (Pmode == DImode)) && 
   22806              : #line 991 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22807              : (TARGET_AVX512VL)) && 
   22808              : #line 991 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22809              : (TARGET_AVX512VL))))
   22810              :                 return -1;
   22811              :               return 9963; /* *avx512f_scattersiv4sf */
   22812              : 
   22813              :             case 3:
   22814              :               if (!(
   22815              : #line 30686 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22816              : (TARGET_AVX512F) && (((
   22817              : #line 991 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22818              : (TARGET_AVX512VL) && 
   22819              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22820              : (Pmode == DImode)) && 
   22821              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22822              : (Pmode == DImode)) && 
   22823              : #line 991 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22824              : (TARGET_AVX512VL))))
   22825              :                 return -1;
   22826              :               return 9987; /* *avx512f_scatterdiv4sf */
   22827              : 
   22828              :             default:
   22829              :               return -1;
   22830              :             }
   22831              : 
   22832              :         case E_V2DImode:
   22833              :           switch (pattern1737 (x2, 
   22834              : E_V2DImode))
   22835              :             {
   22836              :             case 0:
   22837              :               if (!(
   22838              : #line 30646 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22839              : (TARGET_AVX512F) && ((((
   22840              : #line 992 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22841              : (TARGET_AVX512VL) && 
   22842              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22843              : (Pmode == SImode)) && 
   22844              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22845              : (Pmode == SImode)) && 
   22846              : #line 992 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22847              : (TARGET_AVX512VL)) && 
   22848              : #line 992 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22849              : (TARGET_AVX512VL))))
   22850              :                 return -1;
   22851              :               return 9952; /* *avx512f_scattersiv2di */
   22852              : 
   22853              :             case 1:
   22854              :               if (!(
   22855              : #line 30686 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22856              : (TARGET_AVX512F) && (((
   22857              : #line 992 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22858              : (TARGET_AVX512VL) && 
   22859              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22860              : (Pmode == SImode)) && 
   22861              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22862              : (Pmode == SImode)) && 
   22863              : #line 992 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22864              : (TARGET_AVX512VL))))
   22865              :                 return -1;
   22866              :               return 9976; /* *avx512f_scatterdiv2di */
   22867              : 
   22868              :             case 2:
   22869              :               if (!(
   22870              : #line 30646 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22871              : (TARGET_AVX512F) && ((((
   22872              : #line 992 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22873              : (TARGET_AVX512VL) && 
   22874              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22875              : (Pmode == DImode)) && 
   22876              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22877              : (Pmode == DImode)) && 
   22878              : #line 992 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22879              : (TARGET_AVX512VL)) && 
   22880              : #line 992 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22881              : (TARGET_AVX512VL))))
   22882              :                 return -1;
   22883              :               return 9964; /* *avx512f_scattersiv2di */
   22884              : 
   22885              :             case 3:
   22886              :               if (!(
   22887              : #line 30686 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22888              : (TARGET_AVX512F) && (((
   22889              : #line 992 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22890              : (TARGET_AVX512VL) && 
   22891              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22892              : (Pmode == DImode)) && 
   22893              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22894              : (Pmode == DImode)) && 
   22895              : #line 992 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22896              : (TARGET_AVX512VL))))
   22897              :                 return -1;
   22898              :               return 9988; /* *avx512f_scatterdiv2di */
   22899              : 
   22900              :             default:
   22901              :               return -1;
   22902              :             }
   22903              : 
   22904              :         case E_V2DFmode:
   22905              :           switch (pattern1737 (x2, 
   22906              : E_V2DFmode))
   22907              :             {
   22908              :             case 0:
   22909              :               if (!(
   22910              : #line 30646 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22911              : (TARGET_AVX512F) && ((((
   22912              : #line 992 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22913              : (TARGET_AVX512VL) && 
   22914              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22915              : (Pmode == SImode)) && 
   22916              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22917              : (Pmode == SImode)) && 
   22918              : #line 992 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22919              : (TARGET_AVX512VL)) && 
   22920              : #line 992 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22921              : (TARGET_AVX512VL))))
   22922              :                 return -1;
   22923              :               return 9953; /* *avx512f_scattersiv2df */
   22924              : 
   22925              :             case 1:
   22926              :               if (!(
   22927              : #line 30686 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22928              : (TARGET_AVX512F) && (((
   22929              : #line 992 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22930              : (TARGET_AVX512VL) && 
   22931              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22932              : (Pmode == SImode)) && 
   22933              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22934              : (Pmode == SImode)) && 
   22935              : #line 992 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22936              : (TARGET_AVX512VL))))
   22937              :                 return -1;
   22938              :               return 9977; /* *avx512f_scatterdiv2df */
   22939              : 
   22940              :             case 2:
   22941              :               if (!(
   22942              : #line 30646 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22943              : (TARGET_AVX512F) && ((((
   22944              : #line 992 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22945              : (TARGET_AVX512VL) && 
   22946              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22947              : (Pmode == DImode)) && 
   22948              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22949              : (Pmode == DImode)) && 
   22950              : #line 992 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22951              : (TARGET_AVX512VL)) && 
   22952              : #line 992 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22953              : (TARGET_AVX512VL))))
   22954              :                 return -1;
   22955              :               return 9965; /* *avx512f_scattersiv2df */
   22956              : 
   22957              :             case 3:
   22958              :               if (!(
   22959              : #line 30686 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22960              : (TARGET_AVX512F) && (((
   22961              : #line 992 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22962              : (TARGET_AVX512VL) && 
   22963              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22964              : (Pmode == DImode)) && 
   22965              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22966              : (Pmode == DImode)) && 
   22967              : #line 992 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22968              : (TARGET_AVX512VL))))
   22969              :                 return -1;
   22970              :               return 9989; /* *avx512f_scatterdiv2df */
   22971              : 
   22972              :             default:
   22973              :               return -1;
   22974              :             }
   22975              : 
   22976              :         default:
   22977              :           return -1;
   22978              :         }
   22979              : 
   22980              :     default:
   22981              :       return -1;
   22982              :     }
   22983              : }
   22984              : 
   22985              :  int
   22986              : recog_406 (rtx x1 ATTRIBUTE_UNUSED,
   22987              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   22988              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   22989              : {
   22990              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   22991              :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
   22992              :   rtx x10;
   22993              :   int res ATTRIBUTE_UNUSED;
   22994              :   x2 = XVECEXP (x1, 0, 0);
   22995              :   x3 = XEXP (x2, 0);
   22996              :   operands[0] = x3;
   22997              :   x4 = XEXP (x2, 1);
   22998              :   x5 = XEXP (x4, 0);
   22999              :   switch (GET_CODE (x5))
   23000              :     {
   23001              :     case REG:
   23002              :     case SUBREG:
   23003              :     case MEM:
   23004              :       x6 = XVECEXP (x1, 0, 1);
   23005              :       switch (GET_CODE (x6))
   23006              :         {
   23007              :         case CLOBBER:
   23008              :           x7 = XEXP (x6, 0);
   23009              :           if (GET_CODE (x7) != REG
   23010              :               || REGNO (x7) != 17
   23011              :               || GET_MODE (x7) != E_CCmode)
   23012              :             return -1;
   23013              :           operands[1] = x5;
   23014              :           x8 = XEXP (x4, 1);
   23015              :           operands[2] = x8;
   23016              :           switch (GET_MODE (operands[0]))
   23017              :             {
   23018              :             case E_HImode:
   23019              :               if (!register_operand (operands[0], E_HImode)
   23020              :                   || GET_MODE (x4) != E_HImode
   23021              :                   || !nonimmediate_operand (operands[1], E_HImode)
   23022              :                   || !general_operand (operands[2], E_HImode)
   23023              :                   || !(
   23024              : #line 11360 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23025              : (!(MEM_P (operands[1]) && MEM_P (operands[2]))
   23026              :    && true) && 
   23027              : #line 1222 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23028              : (TARGET_HIMODE_MATH)))
   23029              :                 return -1;
   23030              :               return 619; /* *mulhi3_1 */
   23031              : 
   23032              :             case E_SImode:
   23033              :               if (pattern1336 (x4, 
   23034              : E_SImode) != 0
   23035              :                   || !
   23036              : #line 11360 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23037              : (!(MEM_P (operands[1]) && MEM_P (operands[2]))
   23038              :    && true))
   23039              :                 return -1;
   23040              :               return 621; /* *mulsi3_1 */
   23041              : 
   23042              :             case E_DImode:
   23043              :               if (pattern1336 (x4, 
   23044              : E_DImode) != 0
   23045              :                   || !(
   23046              : #line 11360 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23047              : (!(MEM_P (operands[1]) && MEM_P (operands[2]))
   23048              :    && true) && 
   23049              : #line 1223 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23050              : (TARGET_64BIT)))
   23051              :                 return -1;
   23052              :               return 623; /* *muldi3_1 */
   23053              : 
   23054              :             case E_QImode:
   23055              :               if (pattern214 (x4, 
   23056              : E_QImode) != 0
   23057              :                   || !
   23058              : #line 11457 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23059              : (TARGET_QIMODE_MATH
   23060              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))
   23061              :    && true))
   23062              :                 return -1;
   23063              :               return 631; /* *mulqi3_1 */
   23064              : 
   23065              :             default:
   23066              :               return -1;
   23067              :             }
   23068              : 
   23069              :         case SET:
   23070              :           x9 = XEXP (x6, 1);
   23071              :           if (GET_CODE (x9) != UMUL_HIGHPART)
   23072              :             return -1;
   23073              :           switch (pattern596 (x1))
   23074              :             {
   23075              :             case 0:
   23076              :               if (!(
   23077              : #line 11731 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23078              : (TARGET_BMI2) && 
   23079              : #line 1266 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23080              : (!TARGET_64BIT)))
   23081              :                 return -1;
   23082              :               return 643; /* *bmi2_umulsidi3_1 */
   23083              : 
   23084              :             case 1:
   23085              :               if (!(
   23086              : #line 11731 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23087              : (TARGET_BMI2) && 
   23088              : #line 1267 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23089              : (TARGET_64BIT)))
   23090              :                 return -1;
   23091              :               return 644; /* *bmi2_umulditi3_1 */
   23092              : 
   23093              :             default:
   23094              :               return -1;
   23095              :             }
   23096              : 
   23097              :         case UNSPEC:
   23098              :           if (XVECLEN (x6, 0) != 1
   23099              :               || XINT (x6, 1) != 111)
   23100              :             return -1;
   23101              :           x10 = XVECEXP (x6, 0, 0);
   23102              :           if (x10 != const_int_rtx[MAX_SAVED_CONST_INT + 0]
   23103              :               || !register_operand (operands[0], E_V2SFmode)
   23104              :               || GET_MODE (x4) != E_V2SFmode)
   23105              :             return -1;
   23106              :           operands[1] = x5;
   23107              :           if (!nonimmediate_operand (operands[1], E_V2SFmode))
   23108              :             return -1;
   23109              :           x8 = XEXP (x4, 1);
   23110              :           operands[2] = x8;
   23111              :           if (!nonimmediate_operand (operands[2], E_V2SFmode)
   23112              :               || !
   23113              : #line 819 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   23114              : (TARGET_3DNOW && ix86_binary_operator_ok (MULT, V2SFmode, operands)))
   23115              :             return -1;
   23116              :           return 2108; /* *mmx_mulv2sf3 */
   23117              : 
   23118              :         default:
   23119              :           return -1;
   23120              :         }
   23121              : 
   23122              :     case ZERO_EXTEND:
   23123              :       switch (pattern567 (x1, 
   23124              : ZERO_EXTEND))
   23125              :         {
   23126              :         case 0:
   23127              :           if (!(
   23128              : #line 11770 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23129              : (!(MEM_P (operands[1]) && MEM_P (operands[2]))) && 
   23130              : #line 1266 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23131              : (!TARGET_64BIT)))
   23132              :             return -1;
   23133              :           return 645; /* *umulsidi3_1 */
   23134              : 
   23135              :         case 1:
   23136              :           if (!(
   23137              : #line 11770 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23138              : (!(MEM_P (operands[1]) && MEM_P (operands[2]))) && 
   23139              : #line 1267 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23140              : (TARGET_64BIT)))
   23141              :             return -1;
   23142              :           return 646; /* *umulditi3_1 */
   23143              : 
   23144              :         case 2:
   23145              :           if (!
   23146              : #line 11836 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23147              : (TARGET_QIMODE_MATH
   23148              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))
   23149              :    && true))
   23150              :             return -1;
   23151              :           return 654; /* *umulqihi3_1 */
   23152              : 
   23153              :         default:
   23154              :           return -1;
   23155              :         }
   23156              : 
   23157              :     case SIGN_EXTEND:
   23158              :       switch (pattern567 (x1, 
   23159              : SIGN_EXTEND))
   23160              :         {
   23161              :         case 0:
   23162              :           if (!(
   23163              : #line 11816 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23164              : (!(MEM_P (operands[1]) && MEM_P (operands[2]))
   23165              :    && true) && 
   23166              : #line 1266 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23167              : (!TARGET_64BIT)))
   23168              :             return -1;
   23169              :           return 648; /* *mulsidi3_1 */
   23170              : 
   23171              :         case 1:
   23172              :           if (!(
   23173              : #line 1230 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23174              : (TARGET_64BIT) && (
   23175              : #line 11816 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23176              : (!(MEM_P (operands[1]) && MEM_P (operands[2]))
   23177              :    && true) && 
   23178              : #line 1267 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23179              : (TARGET_64BIT))))
   23180              :             return -1;
   23181              :           return 650; /* *mulditi3_1 */
   23182              : 
   23183              :         case 2:
   23184              :           if (!
   23185              : #line 11836 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23186              : (TARGET_QIMODE_MATH
   23187              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))
   23188              :    && true))
   23189              :             return -1;
   23190              :           return 652; /* *mulqihi3_1 */
   23191              : 
   23192              :         default:
   23193              :           return -1;
   23194              :         }
   23195              : 
   23196              :     default:
   23197              :       return -1;
   23198              :     }
   23199              : }
   23200              : 
   23201              :  int
   23202              : recog_413 (rtx x1 ATTRIBUTE_UNUSED,
   23203              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   23204              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   23205              : {
   23206              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   23207              :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
   23208              :   rtx x10, x11, x12, x13;
   23209              :   int res ATTRIBUTE_UNUSED;
   23210              :   x2 = XVECEXP (x1, 0, 0);
   23211              :   x3 = XEXP (x2, 1);
   23212              :   x4 = XEXP (x3, 0);
   23213              :   switch (GET_CODE (x4))
   23214              :     {
   23215              :     case REG:
   23216              :     case SUBREG:
   23217              :     case MEM:
   23218              :       operands[1] = x4;
   23219              :       switch (pattern574 (x1))
   23220              :         {
   23221              :         case 0:
   23222              :           if (
   23223              : #line 13553 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23224              : (!TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun)))
   23225              :             return 755; /* *xorqi_1_slp */
   23226              :           break;
   23227              : 
   23228              :         case 1:
   23229              :           if (
   23230              : #line 13553 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23231              : (!TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun)))
   23232              :             return 758; /* *xorhi_1_slp */
   23233              :           break;
   23234              : 
   23235              :         case 2:
   23236              :           if (x86_64_hilo_general_operand (operands[2], E_DImode)
   23237              :               && (
   23238              : #line 14336 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23239              : (ix86_binary_operator_ok (XOR, DImode, operands, TARGET_APX_NDD)) && 
   23240              : #line 1266 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23241              : (!TARGET_64BIT)))
   23242              :             return 848; /* *xordi3_doubleword */
   23243              :           if (x86_64_general_operand (operands[2], E_DImode)
   23244              :               && (
   23245              : #line 14398 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23246              : (ix86_binary_operator_ok (XOR, DImode, operands, TARGET_APX_NDD)
   23247              :    && true) && 
   23248              : #line 1195 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23249              : (TARGET_64BIT)))
   23250              :             return 862; /* *xordi_1 */
   23251              :           if (const_int_operand (operands[2], E_DImode)
   23252              :               && 
   23253              : #line 14478 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23254              : (TARGET_64BIT && TARGET_USE_BT
   23255              :    && ix86_binary_operator_ok (XOR, DImode, operands)
   23256              :    && IN_RANGE (exact_log2 (INTVAL (operands[2])), 31, 63)))
   23257              :             return 867; /* *xordi_1_btc */
   23258              :           break;
   23259              : 
   23260              :         case 3:
   23261              :           if ((
   23262              : #line 14336 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23263              : (ix86_binary_operator_ok (XOR, TImode, operands, TARGET_APX_NDD)) && 
   23264              : #line 1267 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23265              : (TARGET_64BIT)))
   23266              :             return 850; /* *xorti3_doubleword */
   23267              :           break;
   23268              : 
   23269              :         case 4:
   23270              :           if (
   23271              : #line 14398 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23272              : (ix86_binary_operator_ok (XOR, HImode, operands, TARGET_APX_NDD)
   23273              :    && true))
   23274              :             return 854; /* *xorhi_1 */
   23275              :           break;
   23276              : 
   23277              :         case 5:
   23278              :           if (
   23279              : #line 14398 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23280              : (ix86_binary_operator_ok (XOR, SImode, operands, TARGET_APX_NDD)
   23281              :    && true))
   23282              :             return 858; /* *xorsi_1 */
   23283              :           break;
   23284              : 
   23285              :         case 6:
   23286              :           if (
   23287              : #line 4747 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   23288              : (ix86_binary_operator_ok (XOR, V4QImode, operands)))
   23289              :             return 2339; /* *xorv4qi3 */
   23290              :           break;
   23291              : 
   23292              :         case 7:
   23293              :           if (
   23294              : #line 4747 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   23295              : (ix86_binary_operator_ok (XOR, V2QImode, operands)))
   23296              :             return 2342; /* *xorv2qi3 */
   23297              :           break;
   23298              : 
   23299              :         case 8:
   23300              :           if (
   23301              : #line 4747 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   23302              : (ix86_binary_operator_ok (XOR, V2HImode, operands)))
   23303              :             return 2345; /* *xorv2hi3 */
   23304              :           break;
   23305              : 
   23306              :         case 9:
   23307              :           if (
   23308              : #line 2128 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   23309              : (TARGET_AVX512F))
   23310              :             return 2643; /* kxorqi */
   23311              :           break;
   23312              : 
   23313              :         case 10:
   23314              :           if (
   23315              : #line 2128 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   23316              : (TARGET_AVX512F))
   23317              :             return 2646; /* kxorhi */
   23318              :           break;
   23319              : 
   23320              :         case 11:
   23321              :           if ((
   23322              : #line 2128 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   23323              : (TARGET_AVX512F) && 
   23324              : #line 2109 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   23325              : (TARGET_AVX512BW)))
   23326              :             return 2649; /* kxorsi */
   23327              :           break;
   23328              : 
   23329              :         case 12:
   23330              :           if ((
   23331              : #line 2128 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   23332              : (TARGET_AVX512F) && 
   23333              : #line 2109 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   23334              : (TARGET_AVX512BW)))
   23335              :             return 2652; /* kxordi */
   23336              :           break;
   23337              : 
   23338              :         default:
   23339              :           break;
   23340              :         }
   23341              :       x5 = XVECEXP (x1, 0, 1);
   23342              :       if (GET_CODE (x5) != CLOBBER
   23343              :           || pattern575 (x1) != 0)
   23344              :         return -1;
   23345              :       if (GET_CODE (x4) == SUBREG
   23346              :           && known_eq (SUBREG_BYTE (x4), 0)
   23347              :           && GET_MODE (x4) == E_QImode)
   23348              :         {
   23349              :           res = recog_412 (x1, insn, pnum_clobbers);
   23350              :           if (res >= 0)
   23351              :             return res;
   23352              :         }
   23353              :       x6 = XEXP (x2, 0);
   23354              :       operands[0] = x6;
   23355              :       if (!nonimmediate_operand (operands[0], E_QImode))
   23356              :         return -1;
   23357              :       operands[1] = x4;
   23358              :       if (!nonimmediate_operand (operands[1], E_QImode))
   23359              :         return -1;
   23360              :       x7 = XEXP (x3, 1);
   23361              :       operands[2] = x7;
   23362              :       if (!general_operand (operands[2], E_QImode)
   23363              :           || !
   23364              : #line 14619 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23365              : (ix86_binary_operator_ok (XOR, QImode, operands, TARGET_APX_NDD)
   23366              :    && true))
   23367              :         return -1;
   23368              :       return 898; /* *xorqi_1 */
   23369              : 
   23370              :     case AND:
   23371              :       x8 = XEXP (x4, 0);
   23372              :       if (GET_CODE (x8) != XOR)
   23373              :         return -1;
   23374              :       x5 = XVECEXP (x1, 0, 1);
   23375              :       if (pattern357 (x5) != 0)
   23376              :         return -1;
   23377              :       switch (pattern1063 (x2))
   23378              :         {
   23379              :         case 0:
   23380              :           if (!
   23381              : #line 14508 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23382              : (TARGET_BMI && ix86_pre_reload_split ()))
   23383              :             return -1;
   23384              :           return 868; /* *xor2andn */
   23385              : 
   23386              :         case 1:
   23387              :           if (!
   23388              : #line 14508 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23389              : (TARGET_BMI && ix86_pre_reload_split ()))
   23390              :             return -1;
   23391              :           return 869; /* *xor2andn */
   23392              : 
   23393              :         case 2:
   23394              :           if (!(
   23395              : #line 14508 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23396              : (TARGET_BMI && ix86_pre_reload_split ()) && 
   23397              : #line 1195 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23398              : (TARGET_64BIT)))
   23399              :             return -1;
   23400              :           return 870; /* *xor2andn */
   23401              : 
   23402              :         default:
   23403              :           return -1;
   23404              :         }
   23405              : 
   23406              :     case ZERO_EXTEND:
   23407              :       if (GET_MODE (x4) != E_DImode
   23408              :           || pattern576 (x1) != 0)
   23409              :         return -1;
   23410              :       x8 = XEXP (x4, 0);
   23411              :       switch (GET_CODE (x8))
   23412              :         {
   23413              :         case REG:
   23414              :         case SUBREG:
   23415              :         case MEM:
   23416              :           operands[1] = x8;
   23417              :           if (!nonimmediate_operand (operands[1], E_SImode))
   23418              :             return -1;
   23419              :           x7 = XEXP (x3, 1);
   23420              :           operands[2] = x7;
   23421              :           if (!x86_64_zext_immediate_operand (operands[2], E_DImode)
   23422              :               || !
   23423              : #line 14601 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23424              : (TARGET_64BIT
   23425              :    && ix86_binary_operator_ok (XOR, SImode, operands, TARGET_APX_NDD)))
   23426              :             return -1;
   23427              :           return 894; /* *xorsi_1_zext_imm */
   23428              : 
   23429              :         case MINUS:
   23430              :           if (GET_MODE (x8) != E_SImode)
   23431              :             return -1;
   23432              :           x9 = XEXP (x8, 0);
   23433              :           if (x9 != const_int_rtx[MAX_SAVED_CONST_INT + 63])
   23434              :             return -1;
   23435              :           x10 = XEXP (x8, 1);
   23436              :           if (GET_CODE (x10) != SUBREG
   23437              :               || maybe_ne (SUBREG_BYTE (x10), 0)
   23438              :               || GET_MODE (x10) != E_SImode)
   23439              :             return -1;
   23440              :           x11 = XEXP (x10, 0);
   23441              :           if (GET_CODE (x11) != CLZ
   23442              :               || GET_MODE (x11) != E_DImode)
   23443              :             return -1;
   23444              :           x7 = XEXP (x3, 1);
   23445              :           if (x7 != const_int_rtx[MAX_SAVED_CONST_INT + 63])
   23446              :             return -1;
   23447              :           x12 = XEXP (x11, 0);
   23448              :           operands[1] = x12;
   23449              :           if (!nonimmediate_operand (operands[1], E_DImode)
   23450              :               || !
   23451              : #line 22333 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23452              : (!TARGET_LZCNT && TARGET_64BIT && ix86_pre_reload_split ()))
   23453              :             return -1;
   23454              :           return 1561; /* *bsr_rex64u_2 */
   23455              : 
   23456              :         default:
   23457              :           return -1;
   23458              :         }
   23459              : 
   23460              :     case ASHIFT:
   23461              :       switch (pattern376 (x1, 
   23462              : 1))
   23463              :         {
   23464              :         case 0:
   23465              :           x13 = XEXP (x4, 1);
   23466              :           operands[2] = x13;
   23467              :           if (register_operand (operands[2], E_QImode))
   23468              :             {
   23469              :               switch (pattern951 (x3))
   23470              :                 {
   23471              :                 case 0:
   23472              :                   if (
   23473              : #line 19763 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23474              : (TARGET_USE_BT))
   23475              :                     return 1424; /* *btcsi */
   23476              :                   break;
   23477              : 
   23478              :                 case 1:
   23479              :                   if ((
   23480              : #line 19763 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23481              : (TARGET_USE_BT) && 
   23482              : #line 1198 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23483              : (TARGET_64BIT)))
   23484              :                     return 1426; /* *btcdi */
   23485              :                   break;
   23486              : 
   23487              :                 default:
   23488              :                   break;
   23489              :                 }
   23490              :             }
   23491              :           if (GET_CODE (x13) != SUBREG)
   23492              :             return -1;
   23493              :           switch (pattern1339 (x3))
   23494              :             {
   23495              :             case 0:
   23496              :               if (!
   23497              : #line 19783 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23498              : (TARGET_USE_BT
   23499              :    && (INTVAL (operands[2]) & (GET_MODE_BITSIZE (SImode)-1))
   23500              :       == GET_MODE_BITSIZE (SImode)-1
   23501              :    && ix86_pre_reload_split ()))
   23502              :                 return -1;
   23503              :               return 1428; /* *btcsi_mask */
   23504              : 
   23505              :             case 1:
   23506              :               if (!(
   23507              : #line 19783 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23508              : (TARGET_USE_BT
   23509              :    && (INTVAL (operands[2]) & (GET_MODE_BITSIZE (DImode)-1))
   23510              :       == GET_MODE_BITSIZE (DImode)-1
   23511              :    && ix86_pre_reload_split ()) && 
   23512              : #line 1198 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23513              : (TARGET_64BIT)))
   23514              :                 return -1;
   23515              :               return 1430; /* *btcdi_mask */
   23516              : 
   23517              :             default:
   23518              :               return -1;
   23519              :             }
   23520              : 
   23521              :         case 1:
   23522              :           if (!
   23523              : #line 19811 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23524              : (TARGET_USE_BT
   23525              :    && (INTVAL (operands[2]) & (GET_MODE_BITSIZE (SImode)-1))
   23526              :       == GET_MODE_BITSIZE (SImode)-1
   23527              :    && ix86_pre_reload_split ()))
   23528              :             return -1;
   23529              :           return 1432; /* *btcsi_mask_1 */
   23530              : 
   23531              :         case 2:
   23532              :           if (!(
   23533              : #line 19811 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23534              : (TARGET_USE_BT
   23535              :    && (INTVAL (operands[2]) & (GET_MODE_BITSIZE (DImode)-1))
   23536              :       == GET_MODE_BITSIZE (DImode)-1
   23537              :    && ix86_pre_reload_split ()) && 
   23538              : #line 1198 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23539              : (TARGET_64BIT)))
   23540              :             return -1;
   23541              :           return 1434; /* *btcdi_mask_1 */
   23542              : 
   23543              :         default:
   23544              :           return -1;
   23545              :         }
   23546              : 
   23547              :     case SIGN_EXTEND:
   23548              :       if (GET_MODE (x4) != E_DImode)
   23549              :         return -1;
   23550              :       x8 = XEXP (x4, 0);
   23551              :       if (GET_CODE (x8) != MINUS
   23552              :           || GET_MODE (x8) != E_SImode)
   23553              :         return -1;
   23554              :       x9 = XEXP (x8, 0);
   23555              :       if (x9 != const_int_rtx[MAX_SAVED_CONST_INT + 63])
   23556              :         return -1;
   23557              :       x10 = XEXP (x8, 1);
   23558              :       if (GET_CODE (x10) != SUBREG
   23559              :           || maybe_ne (SUBREG_BYTE (x10), 0)
   23560              :           || GET_MODE (x10) != E_SImode)
   23561              :         return -1;
   23562              :       x11 = XEXP (x10, 0);
   23563              :       if (GET_CODE (x11) != CLZ
   23564              :           || GET_MODE (x11) != E_DImode)
   23565              :         return -1;
   23566              :       x7 = XEXP (x3, 1);
   23567              :       if (x7 != const_int_rtx[MAX_SAVED_CONST_INT + 63])
   23568              :         return -1;
   23569              :       x5 = XVECEXP (x1, 0, 1);
   23570              :       if (pattern237 (x5, 
   23571              : E_CCmode, 
   23572              : 17) != 0)
   23573              :         return -1;
   23574              :       x6 = XEXP (x2, 0);
   23575              :       operands[0] = x6;
   23576              :       if (!register_operand (operands[0], E_DImode)
   23577              :           || GET_MODE (x3) != E_DImode)
   23578              :         return -1;
   23579              :       x12 = XEXP (x11, 0);
   23580              :       operands[1] = x12;
   23581              :       if (!nonimmediate_operand (operands[1], E_DImode)
   23582              :           || !
   23583              : #line 22333 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23584              : (!TARGET_LZCNT && TARGET_64BIT && ix86_pre_reload_split ()))
   23585              :         return -1;
   23586              :       return 1560; /* *bsr_rex64_2 */
   23587              : 
   23588              :     case PLUS:
   23589              :       x13 = XEXP (x4, 1);
   23590              :       if (GET_CODE (x13) != CONST_INT
   23591              :           || pattern351 (x1) != 0)
   23592              :         return -1;
   23593              :       x7 = XEXP (x3, 1);
   23594              :       if (!rtx_equal_p (x7, operands[1]))
   23595              :         return -1;
   23596              :       switch (XWINT (x13, 0))
   23597              :         {
   23598              :         case -1L:
   23599              :           switch (GET_MODE (operands[0]))
   23600              :             {
   23601              :             case E_SImode:
   23602              :               if (pattern939 (x3, 
   23603              : E_SImode) != 0
   23604              :                   || !
   23605              : #line 22889 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23606              : (TARGET_BMI))
   23607              :                 return -1;
   23608              :               return 1610; /* *bmi_blsmsk_si */
   23609              : 
   23610              :             case E_DImode:
   23611              :               if (pattern939 (x3, 
   23612              : E_DImode) != 0
   23613              :                   || !(
   23614              : #line 22889 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23615              : (TARGET_BMI) && 
   23616              : #line 1198 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23617              : (TARGET_64BIT)))
   23618              :                 return -1;
   23619              :               return 1611; /* *bmi_blsmsk_di */
   23620              : 
   23621              :             default:
   23622              :               return -1;
   23623              :             }
   23624              : 
   23625              :         case 1L:
   23626              :           switch (GET_MODE (operands[0]))
   23627              :             {
   23628              :             case E_SImode:
   23629              :               if (pattern939 (x3, 
   23630              : E_SImode) != 0
   23631              :                   || !
   23632              : #line 23235 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23633              : (TARGET_TBM))
   23634              :                 return -1;
   23635              :               return 1644; /* *tbm_blcmsk_si */
   23636              : 
   23637              :             case E_DImode:
   23638              :               if (pattern939 (x3, 
   23639              : E_DImode) != 0
   23640              :                   || !(
   23641              : #line 23235 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23642              : (TARGET_TBM) && 
   23643              : #line 1198 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23644              : (TARGET_64BIT)))
   23645              :                 return -1;
   23646              :               return 1645; /* *tbm_blcmsk_di */
   23647              : 
   23648              :             default:
   23649              :               return -1;
   23650              :             }
   23651              : 
   23652              :         default:
   23653              :           return -1;
   23654              :         }
   23655              : 
   23656              :     default:
   23657              :       return -1;
   23658              :     }
   23659              : }
   23660              : 
   23661              :  int
   23662              : recog_425 (rtx x1 ATTRIBUTE_UNUSED,
   23663              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   23664              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   23665              : {
   23666              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   23667              :   rtx x2, x3, x4, x5, x6, x7;
   23668              :   int res ATTRIBUTE_UNUSED;
   23669              :   x2 = XVECEXP (x1, 0, 0);
   23670              :   x3 = XEXP (x2, 1);
   23671              :   x4 = XEXP (x3, 0);
   23672              :   if (GET_CODE (x4) != ZERO_EXTEND)
   23673              :     return -1;
   23674              :   x5 = XVECEXP (x1, 0, 1);
   23675              :   if (pattern386 (x5, 
   23676              : 175, 
   23677              : 0) != 0)
   23678              :     return -1;
   23679              :   x6 = XEXP (x2, 0);
   23680              :   operands[0] = x6;
   23681              :   x7 = XEXP (x4, 0);
   23682              :   operands[1] = x7;
   23683              :   switch (GET_MODE (operands[0]))
   23684              :     {
   23685              :     case E_V8DImode:
   23686              :       if (pattern1260 (x3, 
   23687              : E_V8DImode, 
   23688              : E_QImode, 
   23689              : E_DImode) != 0
   23690              :           || !
   23691              : #line 29059 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   23692              : (TARGET_AVX512CD))
   23693              :         return -1;
   23694              :       return 9450; /* avx512cd_maskb_vec_dupv8di */
   23695              : 
   23696              :     case E_V4DImode:
   23697              :       if (pattern1260 (x3, 
   23698              : E_V4DImode, 
   23699              : E_QImode, 
   23700              : E_DImode) != 0
   23701              :           || !(
   23702              : #line 29059 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   23703              : (TARGET_AVX512CD) && 
   23704              : #line 617 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   23705              : (TARGET_AVX512VL)))
   23706              :         return -1;
   23707              :       return 9451; /* avx512cd_maskb_vec_dupv4di */
   23708              : 
   23709              :     case E_V2DImode:
   23710              :       if (pattern1260 (x3, 
   23711              : E_V2DImode, 
   23712              : E_QImode, 
   23713              : E_DImode) != 0
   23714              :           || !(
   23715              : #line 29059 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   23716              : (TARGET_AVX512CD) && 
   23717              : #line 617 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   23718              : (TARGET_AVX512VL)))
   23719              :         return -1;
   23720              :       return 9452; /* avx512cd_maskb_vec_dupv2di */
   23721              : 
   23722              :     case E_V16SImode:
   23723              :       if (pattern1260 (x3, 
   23724              : E_V16SImode, 
   23725              : E_HImode, 
   23726              : E_SImode) != 0
   23727              :           || !
   23728              : #line 29071 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   23729              : (TARGET_AVX512CD))
   23730              :         return -1;
   23731              :       return 9453; /* avx512cd_maskw_vec_dupv16si */
   23732              : 
   23733              :     case E_V8SImode:
   23734              :       if (pattern1260 (x3, 
   23735              : E_V8SImode, 
   23736              : E_HImode, 
   23737              : E_SImode) != 0
   23738              :           || !(
   23739              : #line 29071 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   23740              : (TARGET_AVX512CD) && 
   23741              : #line 664 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   23742              : (TARGET_AVX512VL)))
   23743              :         return -1;
   23744              :       return 9454; /* avx512cd_maskw_vec_dupv8si */
   23745              : 
   23746              :     case E_V4SImode:
   23747              :       if (pattern1260 (x3, 
   23748              : E_V4SImode, 
   23749              : E_HImode, 
   23750              : E_SImode) != 0
   23751              :           || !(
   23752              : #line 29071 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   23753              : (TARGET_AVX512CD) && 
   23754              : #line 664 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   23755              : (TARGET_AVX512VL)))
   23756              :         return -1;
   23757              :       return 9455; /* avx512cd_maskw_vec_dupv4si */
   23758              : 
   23759              :     default:
   23760              :       return -1;
   23761              :     }
   23762              : }
   23763              : 
   23764              :  int
   23765              : recog_427 (rtx x1 ATTRIBUTE_UNUSED,
   23766              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   23767              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   23768              : {
   23769              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   23770              :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
   23771              :   int res ATTRIBUTE_UNUSED;
   23772              :   x2 = XVECEXP (x1, 0, 0);
   23773              :   x3 = XEXP (x2, 0);
   23774              :   operands[0] = x3;
   23775              :   x4 = XEXP (x2, 1);
   23776              :   operands[1] = x4;
   23777              :   x5 = XVECEXP (x1, 0, 1);
   23778              :   x6 = XVECEXP (x5, 0, 0);
   23779              :   operands[2] = x6;
   23780              :   switch (GET_MODE (operands[0]))
   23781              :     {
   23782              :     case E_V64QImode:
   23783              :       if (register_operand (operands[0], E_V64QImode)
   23784              :           && int_float_vector_all_ones_operand (operands[1], E_V64QImode)
   23785              :           && register_operand (operands[2], E_V64QImode)
   23786              :           && (
   23787              : #line 1553 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   23788              : (TARGET_AVX512VL || 64 == 64) && 
   23789              : #line 287 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   23790              : (TARGET_AVX512F)))
   23791              :         return 2476; /* *vmovv64qi_constm1_pternlog_false_dep */
   23792              :       break;
   23793              : 
   23794              :     case E_V32QImode:
   23795              :       if (register_operand (operands[0], E_V32QImode)
   23796              :           && int_float_vector_all_ones_operand (operands[1], E_V32QImode)
   23797              :           && register_operand (operands[2], E_V32QImode)
   23798              :           && (
   23799              : #line 1553 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   23800              : (TARGET_AVX512VL || 32 == 64) && 
   23801              : #line 287 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   23802              : (TARGET_AVX)))
   23803              :         return 2477; /* *vmovv32qi_constm1_pternlog_false_dep */
   23804              :       break;
   23805              : 
   23806              :     case E_V16QImode:
   23807              :       if (register_operand (operands[0], E_V16QImode)
   23808              :           && int_float_vector_all_ones_operand (operands[1], E_V16QImode)
   23809              :           && register_operand (operands[2], E_V16QImode)
   23810              :           && 
   23811              : #line 1553 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   23812              : (TARGET_AVX512VL || 16 == 64))
   23813              :         return 2478; /* *vmovv16qi_constm1_pternlog_false_dep */
   23814              :       break;
   23815              : 
   23816              :     case E_V32HImode:
   23817              :       if (register_operand (operands[0], E_V32HImode)
   23818              :           && int_float_vector_all_ones_operand (operands[1], E_V32HImode)
   23819              :           && register_operand (operands[2], E_V32HImode)
   23820              :           && (
   23821              : #line 1553 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   23822              : (TARGET_AVX512VL || 64 == 64) && 
   23823              : #line 288 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   23824              : (TARGET_AVX512F)))
   23825              :         return 2479; /* *vmovv32hi_constm1_pternlog_false_dep */
   23826              :       break;
   23827              : 
   23828              :     case E_V16HImode:
   23829              :       if (register_operand (operands[0], E_V16HImode)
   23830              :           && int_float_vector_all_ones_operand (operands[1], E_V16HImode)
   23831              :           && register_operand (operands[2], E_V16HImode)
   23832              :           && (
   23833              : #line 1553 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   23834              : (TARGET_AVX512VL || 32 == 64) && 
   23835              : #line 288 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   23836              : (TARGET_AVX)))
   23837              :         return 2480; /* *vmovv16hi_constm1_pternlog_false_dep */
   23838              :       break;
   23839              : 
   23840              :     case E_V8HImode:
   23841              :       if (register_operand (operands[0], E_V8HImode)
   23842              :           && int_float_vector_all_ones_operand (operands[1], E_V8HImode)
   23843              :           && register_operand (operands[2], E_V8HImode)
   23844              :           && 
   23845              : #line 1553 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   23846              : (TARGET_AVX512VL || 16 == 64))
   23847              :         return 2481; /* *vmovv8hi_constm1_pternlog_false_dep */
   23848              :       break;
   23849              : 
   23850              :     case E_V16SImode:
   23851              :       if (register_operand (operands[0], E_V16SImode)
   23852              :           && int_float_vector_all_ones_operand (operands[1], E_V16SImode)
   23853              :           && register_operand (operands[2], E_V16SImode)
   23854              :           && (
   23855              : #line 1553 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   23856              : (TARGET_AVX512VL || 64 == 64) && 
   23857              : #line 289 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   23858              : (TARGET_AVX512F)))
   23859              :         return 2482; /* *vmovv16si_constm1_pternlog_false_dep */
   23860              :       break;
   23861              : 
   23862              :     case E_V8SImode:
   23863              :       if (register_operand (operands[0], E_V8SImode)
   23864              :           && int_float_vector_all_ones_operand (operands[1], E_V8SImode)
   23865              :           && register_operand (operands[2], E_V8SImode)
   23866              :           && (
   23867              : #line 1553 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   23868              : (TARGET_AVX512VL || 32 == 64) && 
   23869              : #line 289 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   23870              : (TARGET_AVX)))
   23871              :         return 2483; /* *vmovv8si_constm1_pternlog_false_dep */
   23872              :       break;
   23873              : 
   23874              :     case E_V4SImode:
   23875              :       if (register_operand (operands[0], E_V4SImode)
   23876              :           && int_float_vector_all_ones_operand (operands[1], E_V4SImode)
   23877              :           && register_operand (operands[2], E_V4SImode)
   23878              :           && 
   23879              : #line 1553 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   23880              : (TARGET_AVX512VL || 16 == 64))
   23881              :         return 2484; /* *vmovv4si_constm1_pternlog_false_dep */
   23882              :       break;
   23883              : 
   23884              :     case E_V8DImode:
   23885              :       if (register_operand (operands[0], E_V8DImode)
   23886              :           && int_float_vector_all_ones_operand (operands[1], E_V8DImode)
   23887              :           && register_operand (operands[2], E_V8DImode)
   23888              :           && (
   23889              : #line 1553 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   23890              : (TARGET_AVX512VL || 64 == 64) && 
   23891              : #line 290 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   23892              : (TARGET_AVX512F)))
   23893              :         return 2485; /* *vmovv8di_constm1_pternlog_false_dep */
   23894              :       break;
   23895              : 
   23896              :     case E_V4DImode:
   23897              :       if (register_operand (operands[0], E_V4DImode)
   23898              :           && int_float_vector_all_ones_operand (operands[1], E_V4DImode)
   23899              :           && register_operand (operands[2], E_V4DImode)
   23900              :           && (
   23901              : #line 1553 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   23902              : (TARGET_AVX512VL || 32 == 64) && 
   23903              : #line 290 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   23904              : (TARGET_AVX)))
   23905              :         return 2486; /* *vmovv4di_constm1_pternlog_false_dep */
   23906              :       break;
   23907              : 
   23908              :     case E_V2DImode:
   23909              :       if (register_operand (operands[0], E_V2DImode)
   23910              :           && int_float_vector_all_ones_operand (operands[1], E_V2DImode)
   23911              :           && register_operand (operands[2], E_V2DImode)
   23912              :           && 
   23913              : #line 1553 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   23914              : (TARGET_AVX512VL || 16 == 64))
   23915              :         return 2487; /* *vmovv2di_constm1_pternlog_false_dep */
   23916              :       break;
   23917              : 
   23918              :     case E_V4TImode:
   23919              :       if (register_operand (operands[0], E_V4TImode)
   23920              :           && int_float_vector_all_ones_operand (operands[1], E_V4TImode)
   23921              :           && register_operand (operands[2], E_V4TImode)
   23922              :           && (
   23923              : #line 1553 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   23924              : (TARGET_AVX512VL || 64 == 64) && 
   23925              : #line 291 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   23926              : (TARGET_AVX512F)))
   23927              :         return 2488; /* *vmovv4ti_constm1_pternlog_false_dep */
   23928              :       break;
   23929              : 
   23930              :     case E_V2TImode:
   23931              :       if (register_operand (operands[0], E_V2TImode)
   23932              :           && int_float_vector_all_ones_operand (operands[1], E_V2TImode)
   23933              :           && register_operand (operands[2], E_V2TImode)
   23934              :           && (
   23935              : #line 1553 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   23936              : (TARGET_AVX512VL || 32 == 64) && 
   23937              : #line 291 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   23938              : (TARGET_AVX)))
   23939              :         return 2489; /* *vmovv2ti_constm1_pternlog_false_dep */
   23940              :       break;
   23941              : 
   23942              :     case E_V1TImode:
   23943              :       if (register_operand (operands[0], E_V1TImode)
   23944              :           && int_float_vector_all_ones_operand (operands[1], E_V1TImode)
   23945              :           && register_operand (operands[2], E_V1TImode)
   23946              :           && 
   23947              : #line 1553 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   23948              : (TARGET_AVX512VL || 16 == 64))
   23949              :         return 2490; /* *vmovv1ti_constm1_pternlog_false_dep */
   23950              :       break;
   23951              : 
   23952              :     case E_V32HFmode:
   23953              :       if (register_operand (operands[0], E_V32HFmode)
   23954              :           && int_float_vector_all_ones_operand (operands[1], E_V32HFmode)
   23955              :           && register_operand (operands[2], E_V32HFmode)
   23956              :           && (
   23957              : #line 1553 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   23958              : (TARGET_AVX512VL || 64 == 64) && 
   23959              : #line 292 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   23960              : (TARGET_AVX512F)))
   23961              :         return 2491; /* *vmovv32hf_constm1_pternlog_false_dep */
   23962              :       break;
   23963              : 
   23964              :     case E_V16HFmode:
   23965              :       if (register_operand (operands[0], E_V16HFmode)
   23966              :           && int_float_vector_all_ones_operand (operands[1], E_V16HFmode)
   23967              :           && register_operand (operands[2], E_V16HFmode)
   23968              :           && (
   23969              : #line 1553 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   23970              : (TARGET_AVX512VL || 32 == 64) && 
   23971              : #line 292 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   23972              : (TARGET_AVX)))
   23973              :         return 2492; /* *vmovv16hf_constm1_pternlog_false_dep */
   23974              :       break;
   23975              : 
   23976              :     case E_V8HFmode:
   23977              :       if (register_operand (operands[0], E_V8HFmode)
   23978              :           && int_float_vector_all_ones_operand (operands[1], E_V8HFmode)
   23979              :           && register_operand (operands[2], E_V8HFmode)
   23980              :           && 
   23981              : #line 1553 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   23982              : (TARGET_AVX512VL || 16 == 64))
   23983              :         return 2493; /* *vmovv8hf_constm1_pternlog_false_dep */
   23984              :       break;
   23985              : 
   23986              :     case E_V32BFmode:
   23987              :       if (register_operand (operands[0], E_V32BFmode)
   23988              :           && int_float_vector_all_ones_operand (operands[1], E_V32BFmode)
   23989              :           && register_operand (operands[2], E_V32BFmode)
   23990              :           && (
   23991              : #line 1553 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   23992              : (TARGET_AVX512VL || 64 == 64) && 
   23993              : #line 293 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   23994              : (TARGET_AVX512F)))
   23995              :         return 2494; /* *vmovv32bf_constm1_pternlog_false_dep */
   23996              :       break;
   23997              : 
   23998              :     case E_V16BFmode:
   23999              :       if (register_operand (operands[0], E_V16BFmode)
   24000              :           && int_float_vector_all_ones_operand (operands[1], E_V16BFmode)
   24001              :           && register_operand (operands[2], E_V16BFmode)
   24002              :           && (
   24003              : #line 1553 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   24004              : (TARGET_AVX512VL || 32 == 64) && 
   24005              : #line 293 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   24006              : (TARGET_AVX)))
   24007              :         return 2495; /* *vmovv16bf_constm1_pternlog_false_dep */
   24008              :       break;
   24009              : 
   24010              :     case E_V8BFmode:
   24011              :       if (register_operand (operands[0], E_V8BFmode)
   24012              :           && int_float_vector_all_ones_operand (operands[1], E_V8BFmode)
   24013              :           && register_operand (operands[2], E_V8BFmode)
   24014              :           && 
   24015              : #line 1553 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   24016              : (TARGET_AVX512VL || 16 == 64))
   24017              :         return 2496; /* *vmovv8bf_constm1_pternlog_false_dep */
   24018              :       break;
   24019              : 
   24020              :     case E_V16SFmode:
   24021              :       if (register_operand (operands[0], E_V16SFmode)
   24022              :           && int_float_vector_all_ones_operand (operands[1], E_V16SFmode)
   24023              :           && register_operand (operands[2], E_V16SFmode)
   24024              :           && (
   24025              : #line 1553 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   24026              : (TARGET_AVX512VL || 64 == 64) && 
   24027              : #line 294 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   24028              : (TARGET_AVX512F)))
   24029              :         return 2497; /* *vmovv16sf_constm1_pternlog_false_dep */
   24030              :       break;
   24031              : 
   24032              :     case E_V8SFmode:
   24033              :       if (register_operand (operands[0], E_V8SFmode)
   24034              :           && int_float_vector_all_ones_operand (operands[1], E_V8SFmode)
   24035              :           && register_operand (operands[2], E_V8SFmode)
   24036              :           && (
   24037              : #line 1553 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   24038              : (TARGET_AVX512VL || 32 == 64) && 
   24039              : #line 294 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   24040              : (TARGET_AVX)))
   24041              :         return 2498; /* *vmovv8sf_constm1_pternlog_false_dep */
   24042              :       break;
   24043              : 
   24044              :     case E_V4SFmode:
   24045              :       if (register_operand (operands[0], E_V4SFmode)
   24046              :           && int_float_vector_all_ones_operand (operands[1], E_V4SFmode)
   24047              :           && register_operand (operands[2], E_V4SFmode)
   24048              :           && 
   24049              : #line 1553 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   24050              : (TARGET_AVX512VL || 16 == 64))
   24051              :         return 2499; /* *vmovv4sf_constm1_pternlog_false_dep */
   24052              :       break;
   24053              : 
   24054              :     case E_V8DFmode:
   24055              :       if (register_operand (operands[0], E_V8DFmode)
   24056              :           && int_float_vector_all_ones_operand (operands[1], E_V8DFmode)
   24057              :           && register_operand (operands[2], E_V8DFmode)
   24058              :           && (
   24059              : #line 1553 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   24060              : (TARGET_AVX512VL || 64 == 64) && 
   24061              : #line 295 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   24062              : (TARGET_AVX512F)))
   24063              :         return 2500; /* *vmovv8df_constm1_pternlog_false_dep */
   24064              :       break;
   24065              : 
   24066              :     case E_V4DFmode:
   24067              :       if (register_operand (operands[0], E_V4DFmode)
   24068              :           && int_float_vector_all_ones_operand (operands[1], E_V4DFmode)
   24069              :           && register_operand (operands[2], E_V4DFmode)
   24070              :           && (
   24071              : #line 1553 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   24072              : (TARGET_AVX512VL || 32 == 64) && 
   24073              : #line 295 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   24074              : (TARGET_AVX)))
   24075              :         return 2501; /* *vmovv4df_constm1_pternlog_false_dep */
   24076              :       break;
   24077              : 
   24078              :     case E_V2DFmode:
   24079              :       if (register_operand (operands[0], E_V2DFmode)
   24080              :           && int_float_vector_all_ones_operand (operands[1], E_V2DFmode)
   24081              :           && register_operand (operands[2], E_V2DFmode)
   24082              :           && 
   24083              : #line 1553 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   24084              : (TARGET_AVX512VL || 16 == 64))
   24085              :         return 2502; /* *vmovv2df_constm1_pternlog_false_dep */
   24086              :       break;
   24087              : 
   24088              :     default:
   24089              :       break;
   24090              :     }
   24091              :   switch (GET_CODE (x4))
   24092              :     {
   24093              :     case VEC_MERGE:
   24094              :       x7 = XEXP (x4, 0);
   24095              :       operands[2] = x7;
   24096              :       x8 = XEXP (x4, 1);
   24097              :       operands[3] = x8;
   24098              :       x9 = XEXP (x4, 2);
   24099              :       operands[1] = x9;
   24100              :       operands[4] = x6;
   24101              :       switch (GET_MODE (operands[0]))
   24102              :         {
   24103              :         case E_V16SImode:
   24104              :           if (pattern1342 (x4, 
   24105              : E_V16SImode, 
   24106              : E_HImode) != 0
   24107              :               || !
   24108              : #line 10749 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   24109              : (TARGET_AVX512F && !TARGET_AVX512DQ))
   24110              :             return -1;
   24111              :           return 5251; /* *avx512f_cvtmask2dv16si_pternlog_false_dep */
   24112              : 
   24113              :         case E_V8SImode:
   24114              :           if (pattern1342 (x4, 
   24115              : E_V8SImode, 
   24116              : E_QImode) != 0
   24117              :               || !(
   24118              : #line 10749 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   24119              : (TARGET_AVX512F && !TARGET_AVX512DQ) && 
   24120              : #line 496 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   24121              : (TARGET_AVX512VL)))
   24122              :             return -1;
   24123              :           return 5252; /* *avx512vl_cvtmask2dv8si_pternlog_false_dep */
   24124              : 
   24125              :         case E_V4SImode:
   24126              :           if (pattern1342 (x4, 
   24127              : E_V4SImode, 
   24128              : E_QImode) != 0
   24129              :               || !(
   24130              : #line 10749 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   24131              : (TARGET_AVX512F && !TARGET_AVX512DQ) && 
   24132              : #line 496 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   24133              : (TARGET_AVX512VL)))
   24134              :             return -1;
   24135              :           return 5253; /* *avx512vl_cvtmask2dv4si_pternlog_false_dep */
   24136              : 
   24137              :         case E_V8DImode:
   24138              :           if (pattern1342 (x4, 
   24139              : E_V8DImode, 
   24140              : E_QImode) != 0
   24141              :               || !
   24142              : #line 10749 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   24143              : (TARGET_AVX512F && !TARGET_AVX512DQ))
   24144              :             return -1;
   24145              :           return 5254; /* *avx512f_cvtmask2qv8di_pternlog_false_dep */
   24146              : 
   24147              :         case E_V4DImode:
   24148              :           if (pattern1342 (x4, 
   24149              : E_V4DImode, 
   24150              : E_QImode) != 0
   24151              :               || !(
   24152              : #line 10749 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   24153              : (TARGET_AVX512F && !TARGET_AVX512DQ) && 
   24154              : #line 497 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   24155              : (TARGET_AVX512VL)))
   24156              :             return -1;
   24157              :           return 5255; /* *avx512vl_cvtmask2qv4di_pternlog_false_dep */
   24158              : 
   24159              :         case E_V2DImode:
   24160              :           if (pattern1342 (x4, 
   24161              : E_V2DImode, 
   24162              : E_QImode) != 0
   24163              :               || !(
   24164              : #line 10749 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   24165              : (TARGET_AVX512F && !TARGET_AVX512DQ) && 
   24166              : #line 497 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   24167              : (TARGET_AVX512VL)))
   24168              :             return -1;
   24169              :           return 5256; /* *avx512vl_cvtmask2qv2di_pternlog_false_dep */
   24170              : 
   24171              :         default:
   24172              :           return -1;
   24173              :         }
   24174              : 
   24175              :     case XOR:
   24176              :       x7 = XEXP (x4, 0);
   24177              :       operands[1] = x7;
   24178              :       x8 = XEXP (x4, 1);
   24179              :       operands[2] = x8;
   24180              :       operands[3] = x6;
   24181              :       switch (GET_MODE (operands[0]))
   24182              :         {
   24183              :         case E_V16SImode:
   24184              :           if (pattern1261 (x4, 
   24185              : E_V16SImode) != 0
   24186              :               || !
   24187              : #line 18889 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   24188              : (TARGET_AVX512F))
   24189              :             return -1;
   24190              :           return 8049; /* *one_cmplv16si2_pternlog_false_dep */
   24191              : 
   24192              :         case E_V8DImode:
   24193              :           if (pattern1261 (x4, 
   24194              : E_V8DImode) != 0
   24195              :               || !
   24196              : #line 18889 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   24197              : (TARGET_AVX512F))
   24198              :             return -1;
   24199              :           return 8050; /* *one_cmplv8di2_pternlog_false_dep */
   24200              : 
   24201              :         case E_V64QImode:
   24202              :           if (pattern1261 (x4, 
   24203              : E_V64QImode) != 0
   24204              :               || !(
   24205              : #line 18889 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   24206              : (TARGET_AVX512F) && 
   24207              : #line 557 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   24208              : (TARGET_AVX512BW)))
   24209              :             return -1;
   24210              :           return 8051; /* *one_cmplv64qi2_pternlog_false_dep */
   24211              : 
   24212              :         case E_V32QImode:
   24213              :           if (pattern1261 (x4, 
   24214              : E_V32QImode) != 0
   24215              :               || !(
   24216              : #line 18889 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   24217              : (TARGET_AVX512F) && 
   24218              : #line 557 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   24219              : (TARGET_AVX)))
   24220              :             return -1;
   24221              :           return 8052; /* *one_cmplv32qi2_pternlog_false_dep */
   24222              : 
   24223              :         case E_V16QImode:
   24224              :           if (pattern1261 (x4, 
   24225              : E_V16QImode) != 0
   24226              :               || !
   24227              : #line 18889 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   24228              : (TARGET_AVX512F))
   24229              :             return -1;
   24230              :           return 8053; /* *one_cmplv16qi2_pternlog_false_dep */
   24231              : 
   24232              :         case E_V32HImode:
   24233              :           if (pattern1261 (x4, 
   24234              : E_V32HImode) != 0
   24235              :               || !(
   24236              : #line 18889 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   24237              : (TARGET_AVX512F) && 
   24238              : #line 558 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   24239              : (TARGET_AVX512BW)))
   24240              :             return -1;
   24241              :           return 8054; /* *one_cmplv32hi2_pternlog_false_dep */
   24242              : 
   24243              :         case E_V16HImode:
   24244              :           if (pattern1261 (x4, 
   24245              : E_V16HImode) != 0
   24246              :               || !(
   24247              : #line 18889 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   24248              : (TARGET_AVX512F) && 
   24249              : #line 558 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   24250              : (TARGET_AVX)))
   24251              :             return -1;
   24252              :           return 8055; /* *one_cmplv16hi2_pternlog_false_dep */
   24253              : 
   24254              :         case E_V8HImode:
   24255              :           if (pattern1261 (x4, 
   24256              : E_V8HImode) != 0
   24257              :               || !
   24258              : #line 18889 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   24259              : (TARGET_AVX512F))
   24260              :             return -1;
   24261              :           return 8056; /* *one_cmplv8hi2_pternlog_false_dep */
   24262              : 
   24263              :         case E_V8SImode:
   24264              :           if (pattern1261 (x4, 
   24265              : E_V8SImode) != 0
   24266              :               || !(
   24267              : #line 18889 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   24268              : (TARGET_AVX512F) && 
   24269              : #line 559 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   24270              : (TARGET_AVX)))
   24271              :             return -1;
   24272              :           return 8057; /* *one_cmplv8si2_pternlog_false_dep */
   24273              : 
   24274              :         case E_V4SImode:
   24275              :           if (pattern1261 (x4, 
   24276              : E_V4SImode) != 0
   24277              :               || !
   24278              : #line 18889 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   24279              : (TARGET_AVX512F))
   24280              :             return -1;
   24281              :           return 8058; /* *one_cmplv4si2_pternlog_false_dep */
   24282              : 
   24283              :         case E_V4DImode:
   24284              :           if (pattern1261 (x4, 
   24285              : E_V4DImode) != 0
   24286              :               || !(
   24287              : #line 18889 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   24288              : (TARGET_AVX512F) && 
   24289              : #line 560 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   24290              : (TARGET_AVX)))
   24291              :             return -1;
   24292              :           return 8059; /* *one_cmplv4di2_pternlog_false_dep */
   24293              : 
   24294              :         case E_V2DImode:
   24295              :           if (pattern1261 (x4, 
   24296              : E_V2DImode) != 0
   24297              :               || !
   24298              : #line 18889 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   24299              : (TARGET_AVX512F))
   24300              :             return -1;
   24301              :           return 8060; /* *one_cmplv2di2_pternlog_false_dep */
   24302              : 
   24303              :         default:
   24304              :           return -1;
   24305              :         }
   24306              : 
   24307              :     default:
   24308              :       return -1;
   24309              :     }
   24310              : }
   24311              : 
   24312              :  rtx_insn *
   24313              : split_2 (rtx x1 ATTRIBUTE_UNUSED, rtx_insn *insn ATTRIBUTE_UNUSED)
   24314              : {
   24315              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   24316              :   rtx x2;
   24317              :   rtx_insn *res ATTRIBUTE_UNUSED;
   24318              :   switch (GET_MODE (operands[0]))
   24319              :     {
   24320              :     case E_DFmode:
   24321              :       if (!push_operand (operands[0], E_DFmode))
   24322              :         return NULL;
   24323              :       x2 = XEXP (x1, 1);
   24324              :       if (GET_MODE (x2) != E_DFmode
   24325              :           || !fp_register_operand (operands[1], E_SFmode))
   24326              :         return NULL;
   24327              :       if ((
   24328              : #line 5369 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24329              : (reload_completed) && 
   24330              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24331              : (Pmode == SImode)))
   24332              :         return gen_split_70 (insn, operands);
   24333              :       if (!(
   24334              : #line 5369 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24335              : (reload_completed) && 
   24336              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24337              : (Pmode == DImode)))
   24338              :         return NULL;
   24339              :       return gen_split_71 (insn, operands);
   24340              : 
   24341              :     case E_XFmode:
   24342              :       if (!push_operand (operands[0], E_XFmode))
   24343              :         return NULL;
   24344              :       x2 = XEXP (x1, 1);
   24345              :       if (GET_MODE (x2) != E_XFmode)
   24346              :         return NULL;
   24347              :       switch (GET_MODE (operands[1]))
   24348              :         {
   24349              :         case E_SFmode:
   24350              :           if (!fp_register_operand (operands[1], E_SFmode))
   24351              :             return NULL;
   24352              :           if ((
   24353              : #line 5376 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24354              : (reload_completed) && 
   24355              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24356              : (Pmode == SImode)))
   24357              :             return gen_split_72 (insn, operands);
   24358              :           if (!(
   24359              : #line 5376 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24360              : (reload_completed) && 
   24361              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24362              : (Pmode == DImode)))
   24363              :             return NULL;
   24364              :           return gen_split_73 (insn, operands);
   24365              : 
   24366              :         case E_DFmode:
   24367              :           if (!fp_register_operand (operands[1], E_DFmode))
   24368              :             return NULL;
   24369              :           if ((
   24370              : #line 5376 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24371              : (reload_completed) && 
   24372              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24373              : (Pmode == SImode)))
   24374              :             return gen_split_74 (insn, operands);
   24375              :           if (!(
   24376              : #line 5376 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24377              : (reload_completed) && 
   24378              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24379              : (Pmode == DImode)))
   24380              :             return NULL;
   24381              :           return gen_split_75 (insn, operands);
   24382              : 
   24383              :         default:
   24384              :           return NULL;
   24385              :         }
   24386              : 
   24387              :     default:
   24388              :       return NULL;
   24389              :     }
   24390              : }
   24391              : 
   24392              :  rtx_insn *
   24393              : split_4 (rtx x1 ATTRIBUTE_UNUSED, rtx_insn *insn ATTRIBUTE_UNUSED)
   24394              : {
   24395              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   24396              :   rtx x2, x3, x4, x5, x6;
   24397              :   rtx_insn *res ATTRIBUTE_UNUSED;
   24398              :   x2 = XEXP (x1, 1);
   24399              :   if (GET_CODE (x2) == LTU)
   24400              :     {
   24401              :       switch (pattern45 (x1))
   24402              :         {
   24403              :         case 0:
   24404              :           if ((
   24405              : #line 10613 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24406              : (ix86_pre_reload_split ()) && 
   24407              : #line 10615 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24408              : ( 1)))
   24409              :             return gen_split_202 (insn, operands);
   24410              :           break;
   24411              : 
   24412              :         case 1:
   24413              :           if ((
   24414              : #line 10613 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24415              : (ix86_pre_reload_split ()) && 
   24416              : #line 10615 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24417              : ( 1)))
   24418              :             return gen_split_203 (insn, operands);
   24419              :           break;
   24420              : 
   24421              :         default:
   24422              :           break;
   24423              :         }
   24424              :     }
   24425              :   operands[1] = x2;
   24426              :   if (!add_comparison_operator (operands[1], E_QImode))
   24427              :     return NULL;
   24428              :   x3 = XEXP (x2, 0);
   24429              :   if (GET_CODE (x3) != NOT)
   24430              :     return NULL;
   24431              :   x4 = XEXP (x1, 0);
   24432              :   operands[0] = x4;
   24433              :   if (!nonimmediate_operand (operands[0], E_QImode))
   24434              :     return NULL;
   24435              :   x5 = XEXP (x3, 0);
   24436              :   operands[2] = x5;
   24437              :   x6 = XEXP (x2, 1);
   24438              :   operands[3] = x6;
   24439              :   switch (GET_MODE (x3))
   24440              :     {
   24441              :     case E_QImode:
   24442              :       if (!register_operand (operands[2], E_QImode)
   24443              :           || !nonimmediate_operand (operands[3], E_QImode))
   24444              :         return NULL;
   24445              :       return gen_split_850 (insn, operands);
   24446              : 
   24447              :     case E_HImode:
   24448              :       if (!register_operand (operands[2], E_HImode)
   24449              :           || !nonimmediate_operand (operands[3], E_HImode))
   24450              :         return NULL;
   24451              :       return gen_split_851 (insn, operands);
   24452              : 
   24453              :     case E_SImode:
   24454              :       if (!register_operand (operands[2], E_SImode)
   24455              :           || !nonimmediate_operand (operands[3], E_SImode))
   24456              :         return NULL;
   24457              :       return gen_split_852 (insn, operands);
   24458              : 
   24459              :     case E_DImode:
   24460              :       if (!register_operand (operands[2], E_DImode)
   24461              :           || !nonimmediate_operand (operands[3], E_DImode)
   24462              :           || !
   24463              : #line 1192 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24464              : (TARGET_64BIT))
   24465              :         return NULL;
   24466              :       return gen_split_853 (insn, operands);
   24467              : 
   24468              :     default:
   24469              :       return NULL;
   24470              :     }
   24471              : }
   24472              : 
   24473              :  rtx_insn *
   24474              : split_7 (rtx x1 ATTRIBUTE_UNUSED, rtx_insn *insn ATTRIBUTE_UNUSED)
   24475              : {
   24476              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   24477              :   rtx x2, x3, x4, x5, x6, x7;
   24478              :   rtx_insn *res ATTRIBUTE_UNUSED;
   24479              :   x2 = XEXP (x1, 0);
   24480              :   operands[0] = x2;
   24481              :   x3 = XEXP (x1, 1);
   24482              :   x4 = XEXP (x3, 0);
   24483              :   switch (GET_CODE (x4))
   24484              :     {
   24485              :     case AND:
   24486              :       switch (pattern76 (x3))
   24487              :         {
   24488              :         case 0:
   24489              :           if (!(
   24490              : #line 3769 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24491              : (TARGET_64BIT
   24492              :    && CONST_WIDE_INT_P (operands[3])
   24493              :    && CONST_WIDE_INT_NUNITS (operands[3]) == 2
   24494              :    && CONST_WIDE_INT_ELT (operands[3], 0) == -1
   24495              :    && CONST_WIDE_INT_ELT (operands[3], 1) == 0) && 
   24496              : #line 3775 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24497              : ( reload_completed)))
   24498              :             return NULL;
   24499              :           return gen_split_29 (insn, operands);
   24500              : 
   24501              :         case 1:
   24502              :           if (!(
   24503              : #line 3791 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24504              : (TARGET_64BIT
   24505              :    && CONST_WIDE_INT_P (operands[3])
   24506              :    && CONST_WIDE_INT_NUNITS (operands[3]) == 2
   24507              :    && CONST_WIDE_INT_ELT (operands[3], 0) == 0
   24508              :    && CONST_WIDE_INT_ELT (operands[3], 1) == -1) && 
   24509              : #line 3797 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24510              : ( reload_completed)))
   24511              :             return NULL;
   24512              :           return gen_split_32 (insn, operands);
   24513              : 
   24514              :         case 2:
   24515              :           if (!(
   24516              : #line 3813 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24517              : (!TARGET_64BIT
   24518              :    && CONST_INT_P (operands[3])
   24519              :    && UINTVAL (operands[3]) == 0xffffffff00000000ll) && 
   24520              : #line 3817 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24521              : ( reload_completed)))
   24522              :             return NULL;
   24523              :           return gen_split_35 (insn, operands);
   24524              : 
   24525              :         default:
   24526              :           return NULL;
   24527              :         }
   24528              : 
   24529              :     case ASHIFT:
   24530              :       x5 = XEXP (x4, 1);
   24531              :       operands[2] = x5;
   24532              :       x6 = XEXP (x4, 0);
   24533              :       switch (GET_CODE (x6))
   24534              :         {
   24535              :         case REG:
   24536              :         case SUBREG:
   24537              :         case MEM:
   24538              :           x7 = XEXP (x3, 1);
   24539              :           switch (GET_CODE (x7))
   24540              :             {
   24541              :             case CONST_INT:
   24542              :             case CONST_WIDE_INT:
   24543              :               operands[3] = x7;
   24544              :               operands[1] = x6;
   24545              :               switch (GET_MODE (operands[0]))
   24546              :                 {
   24547              :                 case E_QImode:
   24548              :                   if (pattern616 (x3, 
   24549              : E_QImode) != 0
   24550              :                       || !(
   24551              : #line 8239 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24552              : ((!TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun))
   24553              :    && ((unsigned HOST_WIDE_INT) INTVAL (operands[3])
   24554              :        < (HOST_WIDE_INT_1U << INTVAL (operands[2])))) && 
   24555              : #line 8243 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24556              : ( reload_completed)))
   24557              :                     return NULL;
   24558              :                   return gen_split_166 (insn, operands);
   24559              : 
   24560              :                 case E_HImode:
   24561              :                   if (pattern616 (x3, 
   24562              : E_HImode) != 0
   24563              :                       || !(
   24564              : #line 8239 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24565              : ((!TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun))
   24566              :    && ((unsigned HOST_WIDE_INT) INTVAL (operands[3])
   24567              :        < (HOST_WIDE_INT_1U << INTVAL (operands[2])))) && 
   24568              : #line 8243 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24569              : ( reload_completed)))
   24570              :                     return NULL;
   24571              :                   return gen_split_168 (insn, operands);
   24572              : 
   24573              :                 case E_SImode:
   24574              :                   if (pattern616 (x3, 
   24575              : E_SImode) != 0
   24576              :                       || !(
   24577              : #line 8263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24578              : ((unsigned HOST_WIDE_INT) INTVAL (operands[3])
   24579              :    < (HOST_WIDE_INT_1U << INTVAL (operands[2]))) && 
   24580              : #line 8266 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24581              : ( reload_completed)))
   24582              :                     return NULL;
   24583              :                   return gen_split_170 (insn, operands);
   24584              : 
   24585              :                 case E_DImode:
   24586              :                   if (GET_MODE (x3) != E_DImode
   24587              :                       || GET_MODE (x4) != E_DImode)
   24588              :                     return NULL;
   24589              :                   if (register_operand (operands[0], E_DImode)
   24590              :                       && register_no_SP_operand (operands[1], E_DImode)
   24591              :                       && const_0_to_3_operand (operands[2], E_VOIDmode)
   24592              :                       && const_int_operand (operands[3], E_VOIDmode)
   24593              :                       && ((
   24594              : #line 8263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24595              : ((unsigned HOST_WIDE_INT) INTVAL (operands[3])
   24596              :    < (HOST_WIDE_INT_1U << INTVAL (operands[2]))) && 
   24597              : #line 1198 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24598              : (TARGET_64BIT)) && 
   24599              : #line 8266 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24600              : ( reload_completed)))
   24601              :                     return gen_split_172 (insn, operands);
   24602              :                   if (!nonimmediate_operand (operands[0], E_DImode)
   24603              :                       || !register_operand (operands[1], E_DImode)
   24604              :                       || !const_int_operand (operands[2], E_QImode)
   24605              :                       || !const_scalar_int_operand (operands[3], E_DImode)
   24606              :                       || !((
   24607              : #line 15021 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24608              : (INTVAL (operands[2]) == 8 * BITS_PER_UNIT / 2
   24609              :    && (DImode == DImode
   24610              :        ? CONST_INT_P (operands[3])
   24611              :          && (UINTVAL (operands[3]) & ~GET_MODE_MASK (SImode)) == 0
   24612              :        : CONST_INT_P (operands[3])
   24613              :        ? INTVAL (operands[3]) >= 0
   24614              :        : CONST_WIDE_INT_NUNITS (operands[3]) == 2
   24615              :          && CONST_WIDE_INT_ELT (operands[3], 1) == 0)
   24616              :    && !(CONST_INT_P (operands[3])
   24617              :         ? ix86_endbr_immediate_operand (operands[3], VOIDmode)
   24618              :         : ix86_endbr_immediate_operand (GEN_INT (CONST_WIDE_INT_ELT (operands[3],
   24619              :                                                                      0)),
   24620              :                                         VOIDmode))) && 
   24621              : #line 1226 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24622              : (!TARGET_64BIT)) && 
   24623              : #line 15035 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24624              : ( reload_completed)))
   24625              :                     return NULL;
   24626              :                   return gen_split_473 (insn, operands);
   24627              : 
   24628              :                 case E_TImode:
   24629              :                   if (pattern617 (x3, 
   24630              : E_TImode) != 0
   24631              :                       || !((
   24632              : #line 15021 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24633              : (INTVAL (operands[2]) == 16 * BITS_PER_UNIT / 2
   24634              :    && (TImode == DImode
   24635              :        ? CONST_INT_P (operands[3])
   24636              :          && (UINTVAL (operands[3]) & ~GET_MODE_MASK (SImode)) == 0
   24637              :        : CONST_INT_P (operands[3])
   24638              :        ? INTVAL (operands[3]) >= 0
   24639              :        : CONST_WIDE_INT_NUNITS (operands[3]) == 2
   24640              :          && CONST_WIDE_INT_ELT (operands[3], 1) == 0)
   24641              :    && !(CONST_INT_P (operands[3])
   24642              :         ? ix86_endbr_immediate_operand (operands[3], VOIDmode)
   24643              :         : ix86_endbr_immediate_operand (GEN_INT (CONST_WIDE_INT_ELT (operands[3],
   24644              :                                                                      0)),
   24645              :                                         VOIDmode))) && 
   24646              : #line 1227 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24647              : (TARGET_64BIT)) && 
   24648              : #line 15035 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24649              : ( reload_completed)))
   24650              :                     return NULL;
   24651              :                   return gen_split_476 (insn, operands);
   24652              : 
   24653              :                 default:
   24654              :                   return NULL;
   24655              :                 }
   24656              : 
   24657              :             case ZERO_EXTEND:
   24658              :               operands[1] = x6;
   24659              :               switch (pattern958 (x3))
   24660              :                 {
   24661              :                 case 0:
   24662              :                   if (!((
   24663              : #line 14944 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24664              : (INTVAL (operands[2]) == 4 * BITS_PER_UNIT) && 
   24665              : #line 1266 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24666              : (!TARGET_64BIT)) && 
   24667              : #line 14946 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24668              : ( reload_completed)))
   24669              :                     return NULL;
   24670              :                   return gen_split_437 (insn, operands);
   24671              : 
   24672              :                 case 1:
   24673              :                   if (!((
   24674              : #line 14944 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24675              : (INTVAL (operands[2]) == 8 * BITS_PER_UNIT) && 
   24676              : #line 1267 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24677              : (TARGET_64BIT)) && 
   24678              : #line 14946 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24679              : ( reload_completed)))
   24680              :                     return NULL;
   24681              :                   return gen_split_440 (insn, operands);
   24682              : 
   24683              :                 default:
   24684              :                   return NULL;
   24685              :                 }
   24686              : 
   24687              :             case LSHIFTRT:
   24688              :               operands[4] = x6;
   24689              :               switch (pattern844 (x3))
   24690              :                 {
   24691              :                 case 0:
   24692              :                   if (!(
   24693              : #line 16451 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24694              : (TARGET_64BIT && TARGET_APX_NF
   24695              :    && INTVAL (operands[3]) == 64 - INTVAL (operands[2])
   24696              :    && ix86_pre_reload_split ()) && 
   24697              : #line 16455 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24698              : ( 1)))
   24699              :                     return NULL;
   24700              :                   return gen_split_568 (insn, operands);
   24701              : 
   24702              :                 case 1:
   24703              :                   if (!(
   24704              : #line 16691 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24705              : (TARGET_APX_NF
   24706              :    && INTVAL (operands[3]) == 32 - INTVAL (operands[2])
   24707              :    && ix86_pre_reload_split ()) && 
   24708              : #line 16695 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24709              : ( 1)))
   24710              :                     return NULL;
   24711              :                   return gen_split_572 (insn, operands);
   24712              : 
   24713              :                 default:
   24714              :                   return NULL;
   24715              :                 }
   24716              : 
   24717              :             default:
   24718              :               return NULL;
   24719              :             }
   24720              : 
   24721              :         case SIGN_EXTEND:
   24722              :           switch (pattern725 (x3))
   24723              :             {
   24724              :             case 0:
   24725              :               if (!((
   24726              : #line 14980 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24727              : (INTVAL (operands[2]) == 4 * BITS_PER_UNIT) && 
   24728              : #line 1266 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24729              : (!TARGET_64BIT)) && 
   24730              : #line 14982 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24731              : ( reload_completed)))
   24732              :                 return NULL;
   24733              :               return gen_split_449 (insn, operands);
   24734              : 
   24735              :             case 1:
   24736              :               if (!((
   24737              : #line 14980 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24738              : (INTVAL (operands[2]) == 8 * BITS_PER_UNIT) && 
   24739              : #line 1267 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24740              : (TARGET_64BIT)) && 
   24741              : #line 14982 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24742              : ( reload_completed)))
   24743              :                 return NULL;
   24744              :               return gen_split_455 (insn, operands);
   24745              : 
   24746              :             case 2:
   24747              :               if (!((
   24748              : #line 15053 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24749              : (INTVAL (operands[2]) == 4 * BITS_PER_UNIT
   24750              :    && (DImode == DImode
   24751              :        ? CONST_INT_P (operands[3])
   24752              :          && (UINTVAL (operands[3]) & ~GET_MODE_MASK (SImode)) == 0
   24753              :        : CONST_INT_P (operands[3])
   24754              :        ? INTVAL (operands[3]) >= 0
   24755              :        : CONST_WIDE_INT_NUNITS (operands[3]) == 2
   24756              :          && CONST_WIDE_INT_ELT (operands[3], 1) == 0)
   24757              :    && !(CONST_INT_P (operands[3])
   24758              :         ? ix86_endbr_immediate_operand (operands[3], VOIDmode)
   24759              :         : ix86_endbr_immediate_operand (GEN_INT (CONST_WIDE_INT_ELT (operands[3],
   24760              :                                                                      0)),
   24761              :                                         VOIDmode))) && 
   24762              : #line 1266 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24763              : (!TARGET_64BIT)) && 
   24764              : #line 15067 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24765              : ( reload_completed)))
   24766              :                 return NULL;
   24767              :               return gen_split_479 (insn, operands);
   24768              : 
   24769              :             case 3:
   24770              :               if (!((
   24771              : #line 15053 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24772              : (INTVAL (operands[2]) == 8 * BITS_PER_UNIT
   24773              :    && (TImode == DImode
   24774              :        ? CONST_INT_P (operands[3])
   24775              :          && (UINTVAL (operands[3]) & ~GET_MODE_MASK (SImode)) == 0
   24776              :        : CONST_INT_P (operands[3])
   24777              :        ? INTVAL (operands[3]) >= 0
   24778              :        : CONST_WIDE_INT_NUNITS (operands[3]) == 2
   24779              :          && CONST_WIDE_INT_ELT (operands[3], 1) == 0)
   24780              :    && !(CONST_INT_P (operands[3])
   24781              :         ? ix86_endbr_immediate_operand (operands[3], VOIDmode)
   24782              :         : ix86_endbr_immediate_operand (GEN_INT (CONST_WIDE_INT_ELT (operands[3],
   24783              :                                                                      0)),
   24784              :                                         VOIDmode))) && 
   24785              : #line 1267 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24786              : (TARGET_64BIT)) && 
   24787              : #line 15067 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24788              : ( reload_completed)))
   24789              :                 return NULL;
   24790              :               return gen_split_485 (insn, operands);
   24791              : 
   24792              :             default:
   24793              :               return NULL;
   24794              :             }
   24795              : 
   24796              :         case ZERO_EXTEND:
   24797              :           switch (pattern725 (x3))
   24798              :             {
   24799              :             case 0:
   24800              :               if (!((
   24801              : #line 14980 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24802              : (INTVAL (operands[2]) == 4 * BITS_PER_UNIT) && 
   24803              : #line 1266 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24804              : (!TARGET_64BIT)) && 
   24805              : #line 14982 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24806              : ( reload_completed)))
   24807              :                 return NULL;
   24808              :               return gen_split_452 (insn, operands);
   24809              : 
   24810              :             case 1:
   24811              :               if (!((
   24812              : #line 14980 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24813              : (INTVAL (operands[2]) == 8 * BITS_PER_UNIT) && 
   24814              : #line 1267 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24815              : (TARGET_64BIT)) && 
   24816              : #line 14982 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24817              : ( reload_completed)))
   24818              :                 return NULL;
   24819              :               return gen_split_458 (insn, operands);
   24820              : 
   24821              :             case 2:
   24822              :               if (!((
   24823              : #line 15053 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24824              : (INTVAL (operands[2]) == 4 * BITS_PER_UNIT
   24825              :    && (DImode == DImode
   24826              :        ? CONST_INT_P (operands[3])
   24827              :          && (UINTVAL (operands[3]) & ~GET_MODE_MASK (SImode)) == 0
   24828              :        : CONST_INT_P (operands[3])
   24829              :        ? INTVAL (operands[3]) >= 0
   24830              :        : CONST_WIDE_INT_NUNITS (operands[3]) == 2
   24831              :          && CONST_WIDE_INT_ELT (operands[3], 1) == 0)
   24832              :    && !(CONST_INT_P (operands[3])
   24833              :         ? ix86_endbr_immediate_operand (operands[3], VOIDmode)
   24834              :         : ix86_endbr_immediate_operand (GEN_INT (CONST_WIDE_INT_ELT (operands[3],
   24835              :                                                                      0)),
   24836              :                                         VOIDmode))) && 
   24837              : #line 1266 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24838              : (!TARGET_64BIT)) && 
   24839              : #line 15067 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24840              : ( reload_completed)))
   24841              :                 return NULL;
   24842              :               return gen_split_482 (insn, operands);
   24843              : 
   24844              :             case 3:
   24845              :               if (!((
   24846              : #line 15053 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24847              : (INTVAL (operands[2]) == 8 * BITS_PER_UNIT
   24848              :    && (TImode == DImode
   24849              :        ? CONST_INT_P (operands[3])
   24850              :          && (UINTVAL (operands[3]) & ~GET_MODE_MASK (SImode)) == 0
   24851              :        : CONST_INT_P (operands[3])
   24852              :        ? INTVAL (operands[3]) >= 0
   24853              :        : CONST_WIDE_INT_NUNITS (operands[3]) == 2
   24854              :          && CONST_WIDE_INT_ELT (operands[3], 1) == 0)
   24855              :    && !(CONST_INT_P (operands[3])
   24856              :         ? ix86_endbr_immediate_operand (operands[3], VOIDmode)
   24857              :         : ix86_endbr_immediate_operand (GEN_INT (CONST_WIDE_INT_ELT (operands[3],
   24858              :                                                                      0)),
   24859              :                                         VOIDmode))) && 
   24860              : #line 1267 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24861              : (TARGET_64BIT)) && 
   24862              : #line 15067 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24863              : ( reload_completed)))
   24864              :                 return NULL;
   24865              :               return gen_split_488 (insn, operands);
   24866              : 
   24867              :             default:
   24868              :               return NULL;
   24869              :             }
   24870              : 
   24871              :         default:
   24872              :           return NULL;
   24873              :         }
   24874              : 
   24875              :     case ZERO_EXTEND:
   24876              :       switch (pattern407 (x3))
   24877              :         {
   24878              :         case 0:
   24879              :           if (!((
   24880              : #line 14961 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24881              : (INTVAL (operands[3]) == 4 * BITS_PER_UNIT) && 
   24882              : #line 1266 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24883              : (!TARGET_64BIT)) && 
   24884              : #line 14963 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24885              : ( reload_completed)))
   24886              :             return NULL;
   24887              :           return gen_split_443 (insn, operands);
   24888              : 
   24889              :         case 1:
   24890              :           if (!((
   24891              : #line 14961 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24892              : (INTVAL (operands[3]) == 8 * BITS_PER_UNIT) && 
   24893              : #line 1267 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24894              : (TARGET_64BIT)) && 
   24895              : #line 14963 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24896              : ( reload_completed)))
   24897              :             return NULL;
   24898              :           return gen_split_446 (insn, operands);
   24899              : 
   24900              :         case 2:
   24901              :           if (!((
   24902              : #line 15005 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24903              : (INTVAL (operands[3]) == 4 * BITS_PER_UNIT) && 
   24904              : #line 1266 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24905              : (!TARGET_64BIT)) && 
   24906              : #line 15007 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24907              : ( reload_completed)))
   24908              :             return NULL;
   24909              :           return gen_split_461 (insn, operands);
   24910              : 
   24911              :         case 3:
   24912              :           if (!((
   24913              : #line 15005 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24914              : (INTVAL (operands[3]) == 8 * BITS_PER_UNIT) && 
   24915              : #line 1267 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24916              : (TARGET_64BIT)) && 
   24917              : #line 15007 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24918              : ( reload_completed)))
   24919              :             return NULL;
   24920              :           return gen_split_467 (insn, operands);
   24921              : 
   24922              :         case 4:
   24923              :           if (!((
   24924              : #line 15005 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24925              : (INTVAL (operands[3]) == 4 * BITS_PER_UNIT) && 
   24926              : #line 1266 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24927              : (!TARGET_64BIT)) && 
   24928              : #line 15007 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24929              : ( reload_completed)))
   24930              :             return NULL;
   24931              :           return gen_split_464 (insn, operands);
   24932              : 
   24933              :         case 5:
   24934              :           if (!((
   24935              : #line 15005 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24936              : (INTVAL (operands[3]) == 8 * BITS_PER_UNIT) && 
   24937              : #line 1267 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24938              : (TARGET_64BIT)) && 
   24939              : #line 15007 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24940              : ( reload_completed)))
   24941              :             return NULL;
   24942              :           return gen_split_470 (insn, operands);
   24943              : 
   24944              :         case 6:
   24945              :           if (!((
   24946              : #line 15082 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24947              : (DImode == DImode
   24948              :    ? CONST_INT_P (operands[2])
   24949              :      && (UINTVAL (operands[2]) & GET_MODE_MASK (SImode)) == 0
   24950              :      && !ix86_endbr_immediate_operand (operands[2], VOIDmode)
   24951              :    : CONST_WIDE_INT_P (operands[2])
   24952              :      && CONST_WIDE_INT_NUNITS (operands[2]) == 2
   24953              :      && CONST_WIDE_INT_ELT (operands[2], 0) == 0
   24954              :      && !ix86_endbr_immediate_operand (GEN_INT (CONST_WIDE_INT_ELT (operands[2],
   24955              :                                                                     1)),
   24956              :                                        VOIDmode)) && 
   24957              : #line 1266 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24958              : (!TARGET_64BIT)) && 
   24959              : #line 15093 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24960              : ( reload_completed)))
   24961              :             return NULL;
   24962              :           return gen_split_491 (insn, operands);
   24963              : 
   24964              :         case 7:
   24965              :           if (!((
   24966              : #line 15082 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24967              : (TImode == DImode
   24968              :    ? CONST_INT_P (operands[2])
   24969              :      && (UINTVAL (operands[2]) & GET_MODE_MASK (SImode)) == 0
   24970              :      && !ix86_endbr_immediate_operand (operands[2], VOIDmode)
   24971              :    : CONST_WIDE_INT_P (operands[2])
   24972              :      && CONST_WIDE_INT_NUNITS (operands[2]) == 2
   24973              :      && CONST_WIDE_INT_ELT (operands[2], 0) == 0
   24974              :      && !ix86_endbr_immediate_operand (GEN_INT (CONST_WIDE_INT_ELT (operands[2],
   24975              :                                                                     1)),
   24976              :                                        VOIDmode)) && 
   24977              : #line 1267 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24978              : (TARGET_64BIT)) && 
   24979              : #line 15093 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24980              : ( reload_completed)))
   24981              :             return NULL;
   24982              :           return gen_split_494 (insn, operands);
   24983              : 
   24984              :         default:
   24985              :           return NULL;
   24986              :         }
   24987              : 
   24988              :     case LSHIFTRT:
   24989              :       x7 = XEXP (x3, 1);
   24990              :       if (GET_CODE (x7) != ASHIFT)
   24991              :         return NULL;
   24992              :       x6 = XEXP (x4, 0);
   24993              :       operands[4] = x6;
   24994              :       x5 = XEXP (x4, 1);
   24995              :       operands[2] = x5;
   24996              :       switch (pattern844 (x3))
   24997              :         {
   24998              :         case 0:
   24999              :           if (!(
   25000              : #line 17809 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25001              : (TARGET_64BIT && TARGET_APX_NF
   25002              :    && INTVAL (operands[3]) == 64 - INTVAL (operands[2])
   25003              :    && ix86_pre_reload_split ()) && 
   25004              : #line 17813 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25005              : ( 1)))
   25006              :             return NULL;
   25007              :           return gen_split_615 (insn, operands);
   25008              : 
   25009              :         case 1:
   25010              :           if (!(
   25011              : #line 18048 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25012              : (TARGET_APX_NF
   25013              :    && INTVAL (operands[3]) == 32 - INTVAL (operands[2])
   25014              :    && ix86_pre_reload_split ()) && 
   25015              : #line 18052 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25016              : ( 1)))
   25017              :             return NULL;
   25018              :           return gen_split_619 (insn, operands);
   25019              : 
   25020              :         default:
   25021              :           return NULL;
   25022              :         }
   25023              : 
   25024              :     default:
   25025              :       return NULL;
   25026              :     }
   25027              : }
   25028              : 
   25029              :  rtx_insn *
   25030              : split_19 (rtx x1 ATTRIBUTE_UNUSED, rtx_insn *insn ATTRIBUTE_UNUSED)
   25031              : {
   25032              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   25033              :   rtx x2, x3;
   25034              :   rtx_insn *res ATTRIBUTE_UNUSED;
   25035              :   x2 = XVECEXP (x1, 0, 0);
   25036              :   switch (pattern1188 (x2))
   25037              :     {
   25038              :     case 0:
   25039              :       switch (GET_MODE (operands[0]))
   25040              :         {
   25041              :         case E_DImode:
   25042              :           x3 = XEXP (x2, 1);
   25043              :           if (GET_MODE (x3) != E_DImode)
   25044              :             return NULL;
   25045              :           if (nonimmediate_operand (operands[0], E_DImode)
   25046              :               && nonimmediate_operand (operands[1], E_DImode)
   25047              :               && x86_64_hilo_general_operand (operands[2], E_DImode)
   25048              :               && ((
   25049              : #line 6622 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25050              : (ix86_binary_operator_ok (PLUS, DImode, operands, TARGET_APX_NDD)) && 
   25051              : #line 1266 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25052              : (!TARGET_64BIT)) && 
   25053              : #line 6624 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25054              : ( reload_completed)))
   25055              :             return gen_split_104 (insn, operands);
   25056              :           if (!register_operand (operands[0], E_DImode)
   25057              :               || !register_operand (operands[1], E_DImode)
   25058              :               || !x86_64_nonmemory_operand (operands[2], E_DImode))
   25059              :             return NULL;
   25060              :           if ((
   25061              : #line 7236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25062              : (reload_completed && ix86_avoid_lea_for_add (insn, operands)) && 
   25063              : #line 1198 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25064              : (TARGET_64BIT)))
   25065              :             return gen_split_129 (insn, operands);
   25066              :           if (!(
   25067              : #line 7262 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25068              : (reload_completed && ix86_lea_for_add_ok (insn, operands)) && 
   25069              : #line 1192 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25070              : (TARGET_64BIT)))
   25071              :             return NULL;
   25072              :           return gen_split_134 (insn, operands);
   25073              : 
   25074              :         case E_TImode:
   25075              :           x3 = XEXP (x2, 1);
   25076              :           if (pattern568 (x3, 
   25077              : E_TImode) != 0
   25078              :               || !((
   25079              : #line 6622 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25080              : (ix86_binary_operator_ok (PLUS, TImode, operands, TARGET_APX_NDD)) && 
   25081              : #line 1267 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25082              : (TARGET_64BIT)) && 
   25083              : #line 6624 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25084              : ( reload_completed)))
   25085              :             return NULL;
   25086              :           return gen_split_105 (insn, operands);
   25087              : 
   25088              :         case E_SImode:
   25089              :           x3 = XEXP (x2, 1);
   25090              :           if (pattern1433 (x3, 
   25091              : E_SImode) != 0)
   25092              :             return NULL;
   25093              :           if (
   25094              : #line 7236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25095              : (reload_completed && ix86_avoid_lea_for_add (insn, operands)))
   25096              :             return gen_split_128 (insn, operands);
   25097              :           if (!
   25098              : #line 7262 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25099              : (reload_completed && ix86_lea_for_add_ok (insn, operands)))
   25100              :             return NULL;
   25101              :           return gen_split_133 (insn, operands);
   25102              : 
   25103              :         case E_QImode:
   25104              :           x3 = XEXP (x2, 1);
   25105              :           if (pattern1344 (x3, 
   25106              : E_QImode) != 0
   25107              :               || !
   25108              : #line 7262 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25109              : (reload_completed && ix86_lea_for_add_ok (insn, operands)))
   25110              :             return NULL;
   25111              :           return gen_split_131 (insn, operands);
   25112              : 
   25113              :         case E_HImode:
   25114              :           if (!register_operand (operands[0], E_HImode))
   25115              :             return NULL;
   25116              :           x3 = XEXP (x2, 1);
   25117              :           if (GET_MODE (x3) != E_HImode
   25118              :               || !register_operand (operands[1], E_HImode)
   25119              :               || !nonmemory_operand (operands[2], E_HImode)
   25120              :               || !
   25121              : #line 7262 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25122              : (reload_completed && ix86_lea_for_add_ok (insn, operands)))
   25123              :             return NULL;
   25124              :           return gen_split_132 (insn, operands);
   25125              : 
   25126              :         default:
   25127              :           return NULL;
   25128              :         }
   25129              : 
   25130              :     case 1:
   25131              :       if (!(
   25132              : #line 7135 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25133              : (!TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun)) && 
   25134              : #line 7158 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25135              : ( reload_completed
   25136              :    && !(rtx_equal_p (operands[0], operands[1])
   25137              :         || rtx_equal_p (operands[0], operands[2])))))
   25138              :         return NULL;
   25139              :       return gen_split_120 (insn, operands);
   25140              : 
   25141              :     case 2:
   25142              :       if (!(
   25143              : #line 7135 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25144              : (!TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun)) && 
   25145              : #line 7158 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25146              : ( reload_completed
   25147              :    && !(rtx_equal_p (operands[0], operands[1])
   25148              :         || rtx_equal_p (operands[0], operands[2])))))
   25149              :         return NULL;
   25150              :       return gen_split_121 (insn, operands);
   25151              : 
   25152              :     default:
   25153              :       return NULL;
   25154              :     }
   25155              : }
   25156              : 
   25157              :  rtx_insn *
   25158              : split_25 (rtx x1 ATTRIBUTE_UNUSED, rtx_insn *insn ATTRIBUTE_UNUSED)
   25159              : {
   25160              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   25161              :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
   25162              :   rtx x10;
   25163              :   rtx_insn *res ATTRIBUTE_UNUSED;
   25164              :   x2 = XVECEXP (x1, 0, 1);
   25165              :   if (pattern237 (x2, 
   25166              : E_CCmode, 
   25167              : 17) != 0)
   25168              :     return NULL;
   25169              :   x3 = XVECEXP (x1, 0, 0);
   25170              :   x4 = XEXP (x3, 1);
   25171              :   x5 = XEXP (x4, 0);
   25172              :   switch (GET_CODE (x5))
   25173              :     {
   25174              :     case CONST_INT:
   25175              :     case CONST_WIDE_INT:
   25176              :     case CONST_POLY_INT:
   25177              :     case CONST_FIXED:
   25178              :     case CONST_DOUBLE:
   25179              :     case CONST_VECTOR:
   25180              :     case CONST:
   25181              :     case REG:
   25182              :     case SUBREG:
   25183              :     case MEM:
   25184              :     case LABEL_REF:
   25185              :     case SYMBOL_REF:
   25186              :     case HIGH:
   25187              :       operands[1] = x5;
   25188              :       switch (pattern1188 (x3))
   25189              :         {
   25190              :         case 0:
   25191              :           switch (GET_MODE (operands[0]))
   25192              :             {
   25193              :             case E_DImode:
   25194              :               if (nonimmediate_operand (operands[0], E_DImode)
   25195              :                   && GET_MODE (x4) == E_DImode
   25196              :                   && nonimmediate_operand (operands[1], E_DImode))
   25197              :                 {
   25198              :                   if (x86_64_hilo_general_operand (operands[2], E_DImode)
   25199              :                       && ((
   25200              : #line 13277 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25201              : (ix86_binary_operator_ok (AND, DImode, operands, TARGET_APX_NDD)) && 
   25202              : #line 1266 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25203              : (!TARGET_64BIT)) && 
   25204              : #line 13279 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25205              : ( reload_completed)))
   25206              :                     return gen_split_289 (insn, operands);
   25207              :                   if (const_int_operand (operands[2], E_DImode)
   25208              :                       && (
   25209              : #line 13361 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25210              : (TARGET_64BIT && TARGET_USE_BT
   25211              :    && ix86_binary_operator_ok (AND, DImode, operands)
   25212              :    && IN_RANGE (exact_log2 (~INTVAL (operands[2])), 31, 63)) && 
   25213              : #line 13365 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25214              : ( reload_completed)))
   25215              :                     return gen_split_291 (insn, operands);
   25216              :                 }
   25217              :               break;
   25218              : 
   25219              :             case E_TImode:
   25220              :               if (pattern568 (x4, 
   25221              : E_TImode) == 0
   25222              :                   && ((
   25223              : #line 13277 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25224              : (ix86_binary_operator_ok (AND, TImode, operands, TARGET_APX_NDD)) && 
   25225              : #line 1267 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25226              : (TARGET_64BIT)) && 
   25227              : #line 13279 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25228              : ( reload_completed)))
   25229              :                 return gen_split_290 (insn, operands);
   25230              :               break;
   25231              : 
   25232              :             case E_HImode:
   25233              :               if (pattern1366 (x4, 
   25234              : E_HImode) == 0
   25235              :                   && 
   25236              : #line 13631 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25237              : (reload_completed
   25238              :    && (!REG_P (operands[1])
   25239              :        || REGNO (operands[0]) != REGNO (operands[1]))
   25240              :    && (UINTVAL (operands[2]) == GET_MODE_MASK (SImode)
   25241              :        || UINTVAL (operands[2]) == GET_MODE_MASK (HImode)
   25242              :        || UINTVAL (operands[2]) == GET_MODE_MASK (QImode))))
   25243              :                 return gen_split_317 (insn, operands);
   25244              :               break;
   25245              : 
   25246              :             case E_SImode:
   25247              :               if (pattern1366 (x4, 
   25248              : E_SImode) == 0
   25249              :                   && 
   25250              : #line 13631 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25251              : (reload_completed
   25252              :    && (!REG_P (operands[1])
   25253              :        || REGNO (operands[0]) != REGNO (operands[1]))
   25254              :    && (UINTVAL (operands[2]) == GET_MODE_MASK (SImode)
   25255              :        || UINTVAL (operands[2]) == GET_MODE_MASK (HImode)
   25256              :        || UINTVAL (operands[2]) == GET_MODE_MASK (QImode))))
   25257              :                 return gen_split_318 (insn, operands);
   25258              :               break;
   25259              : 
   25260              :             default:
   25261              :               break;
   25262              :             }
   25263              :           break;
   25264              : 
   25265              :         case 1:
   25266              :           if ((
   25267              : #line 13553 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25268              : (!TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun)) && 
   25269              : #line 13557 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25270              : ( reload_completed
   25271              :    && !(rtx_equal_p (operands[0], operands[1])
   25272              :         || rtx_equal_p (operands[0], operands[2])))))
   25273              :             return gen_split_293 (insn, operands);
   25274              :           break;
   25275              : 
   25276              :         case 2:
   25277              :           if ((
   25278              : #line 13553 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25279              : (!TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun)) && 
   25280              : #line 13557 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25281              : ( reload_completed
   25282              :    && !(rtx_equal_p (operands[0], operands[1])
   25283              :         || rtx_equal_p (operands[0], operands[2])))))
   25284              :             return gen_split_296 (insn, operands);
   25285              :           break;
   25286              : 
   25287              :         default:
   25288              :           break;
   25289              :         }
   25290              :       x6 = XEXP (x4, 1);
   25291              :       if (GET_CODE (x6) == CONST_INT)
   25292              :         {
   25293              :           res = split_21 (x1, insn);
   25294              :           if (res != NULL_RTX)
   25295              :             return res;
   25296              :         }
   25297              :       if (GET_CODE (x5) == SUBREG
   25298              :           && known_eq (SUBREG_BYTE (x5), 0))
   25299              :         {
   25300              :           res = split_22 (x1, insn);
   25301              :           if (res != NULL_RTX)
   25302              :             return res;
   25303              :         }
   25304              :       if (GET_CODE (x6) != CONST_INT)
   25305              :         return NULL;
   25306              :       operands[2] = x6;
   25307              :       if (const_int_operand (operands[2], E_DImode))
   25308              :         {
   25309              :           x7 = XEXP (x3, 0);
   25310              :           operands[0] = x7;
   25311              :           if (register_operand (operands[0], E_DImode)
   25312              :               && GET_MODE (x4) == E_DImode)
   25313              :             {
   25314              :               operands[1] = x5;
   25315              :               if (nonimmediate_operand (operands[1], E_DImode)
   25316              :                   && (
   25317              : #line 13631 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25318              : (reload_completed
   25319              :    && (!REG_P (operands[1])
   25320              :        || REGNO (operands[0]) != REGNO (operands[1]))
   25321              :    && (UINTVAL (operands[2]) == GET_MODE_MASK (SImode)
   25322              :        || UINTVAL (operands[2]) == GET_MODE_MASK (HImode)
   25323              :        || UINTVAL (operands[2]) == GET_MODE_MASK (QImode))) && 
   25324              : #line 1195 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25325              : (TARGET_64BIT)))
   25326              :                 return gen_split_319 (insn, operands);
   25327              :             }
   25328              :         }
   25329              :       x7 = XEXP (x3, 0);
   25330              :       operands[0] = x7;
   25331              :       if (GET_MODE (x4) != E_DImode)
   25332              :         return NULL;
   25333              :       if (rtx_equal_p (x5, operands[0]))
   25334              :         {
   25335              :           switch (XWINT (x6, 0))
   25336              :             {
   25337              :             case -65536L:
   25338              :               if (register_operand (operands[0], E_DImode)
   25339              :                   && (
   25340              : #line 13666 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25341              : ((TARGET_FAST_PREFIX && !TARGET_PARTIAL_REG_STALL)
   25342              :     || optimize_function_for_size_p (cfun)) && 
   25343              : #line 1198 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25344              : (TARGET_64BIT)))
   25345              :                 return gen_split_321 (insn, operands);
   25346              :               break;
   25347              : 
   25348              :             case -256L:
   25349              :               if (any_QIreg_operand (operands[0], E_DImode)
   25350              :                   && (
   25351              : #line 13676 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25352              : ((!TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun))
   25353              :    && reload_completed) && 
   25354              : #line 1195 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25355              : (TARGET_64BIT)))
   25356              :                 return gen_split_324 (insn, operands);
   25357              :               break;
   25358              : 
   25359              :             case -65281L:
   25360              :               if (QIreg_operand (operands[0], E_DImode)
   25361              :                   && (
   25362              : #line 13686 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25363              : ((!TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun))
   25364              :    && reload_completed) && 
   25365              : #line 1195 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25366              : (TARGET_64BIT)))
   25367              :                 return gen_split_327 (insn, operands);
   25368              :               break;
   25369              : 
   25370              :             default:
   25371              :               break;
   25372              :             }
   25373              :         }
   25374              :       operands[1] = x5;
   25375              :       if (register_operand (operands[1], E_DImode)
   25376              :           && QIreg_operand (operands[0], E_DImode))
   25377              :         {
   25378              :           operands[2] = x6;
   25379              :           if (const_int_operand (operands[2], E_DImode)
   25380              :               && (
   25381              : #line 14070 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25382              : (reload_completed
   25383              :     && (!TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun))
   25384              :     && !(~INTVAL (operands[2]) & ~(255 << 8))
   25385              :     && !(TARGET_APX_NDD && REGNO (operands[0]) != REGNO (operands[1]))) && 
   25386              : #line 1195 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25387              : (TARGET_64BIT)))
   25388              :             return gen_split_375 (insn, operands);
   25389              :         }
   25390              :       if (general_operand (operands[1], E_DImode)
   25391              :           && any_QIreg_operand (operands[0], E_DImode))
   25392              :         {
   25393              :           operands[2] = x6;
   25394              :           if (const_int_operand (operands[2], E_DImode)
   25395              :               && (
   25396              : #line 14099 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25397              : (reload_completed
   25398              :     && (!TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun))
   25399              :     && !(~INTVAL (operands[2]) & ~255)
   25400              :     && !(INTVAL (operands[2]) & 128)
   25401              :     && !(TARGET_APX_NDD
   25402              :          && !rtx_equal_p (operands[0], operands[1]))) && 
   25403              : #line 1195 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25404              : (TARGET_64BIT)))
   25405              :             return gen_split_378 (insn, operands);
   25406              :         }
   25407              :       if (GET_CODE (x5) != SUBREG
   25408              :           || maybe_ne (SUBREG_BYTE (x5), 0)
   25409              :           || GET_MODE (x5) != E_DImode
   25410              :           || XWINT (x6, 0) != 63L
   25411              :           || !register_operand (operands[0], E_DImode))
   25412              :         return NULL;
   25413              :       x8 = XEXP (x5, 0);
   25414              :       if (GET_MODE (x8) != E_SImode)
   25415              :         return NULL;
   25416              :       switch (GET_CODE (x8))
   25417              :         {
   25418              :         case CTZ:
   25419              :           x9 = XEXP (x8, 0);
   25420              :           operands[1] = x9;
   25421              :           if (!nonimmediate_operand (operands[1], E_SImode)
   25422              :               || !(
   25423              : #line 22133 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25424              : (TARGET_BMI && TARGET_64BIT) && 
   25425              : #line 22135 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25426              : ( (TARGET_AVOID_FALSE_DEP_FOR_BMI || TARGET_AVOID_FALSE_DEP_FOR_TZCNT)
   25427              :    && epilogue_completed
   25428              :    && optimize_function_for_speed_p (cfun)
   25429              :    && !reg_mentioned_p (operands[0], operands[1]))))
   25430              :             return NULL;
   25431              :           return gen_split_879 (insn, operands);
   25432              : 
   25433              :         case CLZ:
   25434              :           x9 = XEXP (x8, 0);
   25435              :           operands[1] = x9;
   25436              :           if (!nonimmediate_operand (operands[1], E_SImode)
   25437              :               || !(
   25438              : #line 22582 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25439              : (TARGET_LZCNT && TARGET_64BIT) && 
   25440              : #line 22584 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25441              : ( TARGET_AVOID_FALSE_DEP_FOR_BMI && epilogue_completed
   25442              :    && optimize_function_for_speed_p (cfun)
   25443              :    && !reg_mentioned_p (operands[0], operands[1]))))
   25444              :             return NULL;
   25445              :           return gen_split_896 (insn, operands);
   25446              : 
   25447              :         case POPCOUNT:
   25448              :           x9 = XEXP (x8, 0);
   25449              :           operands[1] = x9;
   25450              :           if (!nonimmediate_operand (operands[1], E_SImode)
   25451              :               || !(
   25452              : #line 23409 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25453              : (TARGET_POPCNT && TARGET_64BIT) && 
   25454              : #line 23417 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25455              : ( TARGET_AVOID_FALSE_DEP_FOR_BMI && epilogue_completed
   25456              :    && optimize_function_for_speed_p (cfun)
   25457              :    && !reg_mentioned_p (operands[0], operands[1]))))
   25458              :             return NULL;
   25459              :           return gen_split_920 (insn, operands);
   25460              : 
   25461              :         default:
   25462              :           return NULL;
   25463              :         }
   25464              : 
   25465              :     case NOT:
   25466              :       x7 = XEXP (x3, 0);
   25467              :       operands[0] = x7;
   25468              :       x8 = XEXP (x5, 0);
   25469              :       switch (GET_CODE (x8))
   25470              :         {
   25471              :         case REG:
   25472              :         case SUBREG:
   25473              :           operands[1] = x8;
   25474              :           x6 = XEXP (x4, 1);
   25475              :           operands[2] = x6;
   25476              :           switch (GET_MODE (operands[0]))
   25477              :             {
   25478              :             case E_DImode:
   25479              :               if (pattern1443 (x4, 
   25480              : E_DImode) == 0)
   25481              :                 {
   25482              :                   if (((
   25483              : #line 14121 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25484              : (TARGET_BMI) && 
   25485              : #line 1266 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25486              : (!TARGET_64BIT)) && 
   25487              : #line 14123 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25488              : ( reload_completed)))
   25489              :                     return gen_split_379 (insn, operands);
   25490              :                   if (((
   25491              : #line 14139 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25492              : (!TARGET_BMI
   25493              :    && ix86_pre_reload_split ()) && 
   25494              : #line 1226 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25495              : (!TARGET_64BIT)) && 
   25496              : #line 14142 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25497              : ( 1)))
   25498              :                     return gen_split_381 (insn, operands);
   25499              :                 }
   25500              :               break;
   25501              : 
   25502              :             case E_TImode:
   25503              :               if (pattern1443 (x4, 
   25504              : E_TImode) == 0)
   25505              :                 {
   25506              :                   if (((
   25507              : #line 14121 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25508              : (TARGET_BMI) && 
   25509              : #line 1267 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25510              : (TARGET_64BIT)) && 
   25511              : #line 14123 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25512              : ( reload_completed)))
   25513              :                     return gen_split_380 (insn, operands);
   25514              :                   if (((
   25515              : #line 14139 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25516              : (!TARGET_BMI
   25517              :    && ix86_pre_reload_split ()) && 
   25518              : #line 1227 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25519              : (TARGET_64BIT)) && 
   25520              : #line 14142 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25521              : ( 1)))
   25522              :                     return gen_split_382 (insn, operands);
   25523              :                 }
   25524              :               break;
   25525              : 
   25526              :             case E_SImode:
   25527              :               if (pattern1443 (x4, 
   25528              : E_SImode) == 0
   25529              :                   && 
   25530              : #line 14207 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25531              : (reload_completed
   25532              :    && optimize_insn_for_size_p () && optimize_size > 1
   25533              :    && REGNO (operands[0]) == REGNO (operands[1])
   25534              :    && LEGACY_INT_REG_P (operands[0])
   25535              :    && !REX_INT_REG_P (operands[2])
   25536              :    && !reg_overlap_mentioned_p (operands[0], operands[2])))
   25537              :                 return gen_split_383 (insn, operands);
   25538              :               break;
   25539              : 
   25540              :             default:
   25541              :               break;
   25542              :             }
   25543              :           if (GET_CODE (x8) != SUBREG
   25544              :               || maybe_ne (SUBREG_BYTE (x8), 0)
   25545              :               || GET_MODE (x8) != E_QImode)
   25546              :             return NULL;
   25547              :           x9 = XEXP (x8, 0);
   25548              :           if (GET_CODE (x9) != LSHIFTRT
   25549              :               || x6 != const_int_rtx[MAX_SAVED_CONST_INT + 1])
   25550              :             return NULL;
   25551              :           switch (pattern1538 (x4))
   25552              :             {
   25553              :             case 0:
   25554              :               if (!(
   25555              : #line 20342 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25556              : (TARGET_USE_BT && ix86_pre_reload_split ()) && 
   25557              : #line 20344 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25558              : ( 1)))
   25559              :                 return NULL;
   25560              :               return gen_split_842 (insn, operands);
   25561              : 
   25562              :             case 1:
   25563              :               if (!((
   25564              : #line 20342 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25565              : (TARGET_USE_BT && ix86_pre_reload_split ()) && 
   25566              : #line 1198 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25567              : (TARGET_64BIT)) && 
   25568              : #line 20344 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25569              : ( 1)))
   25570              :                 return NULL;
   25571              :               return gen_split_843 (insn, operands);
   25572              : 
   25573              :             default:
   25574              :               return NULL;
   25575              :             }
   25576              : 
   25577              :         case LSHIFTRT:
   25578              :           x6 = XEXP (x4, 1);
   25579              :           if (x6 != const_int_rtx[MAX_SAVED_CONST_INT + 1])
   25580              :             return NULL;
   25581              :           switch (pattern1257 (x4))
   25582              :             {
   25583              :             case 0:
   25584              :               if (!(
   25585              : #line 20360 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25586              : (TARGET_USE_BT && ix86_pre_reload_split ()) && 
   25587              : #line 20362 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25588              : ( 1)))
   25589              :                 return NULL;
   25590              :               return gen_split_844 (insn, operands);
   25591              : 
   25592              :             case 1:
   25593              :               if (!((
   25594              : #line 20360 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25595              : (TARGET_USE_BT && ix86_pre_reload_split ()) && 
   25596              : #line 1198 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25597              : (TARGET_64BIT)) && 
   25598              : #line 20362 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25599              : ( 1)))
   25600              :                 return NULL;
   25601              :               return gen_split_845 (insn, operands);
   25602              : 
   25603              :             default:
   25604              :               return NULL;
   25605              :             }
   25606              : 
   25607              :         default:
   25608              :           return NULL;
   25609              :         }
   25610              : 
   25611              :     case ROTATE:
   25612              :       switch (pattern1071 (x3, 
   25613              : -2))
   25614              :         {
   25615              :         case 0:
   25616              :           if (!(
   25617              : #line 19852 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25618              : (TARGET_USE_BT
   25619              :    && (INTVAL (operands[2]) & (GET_MODE_BITSIZE (SImode)-1))
   25620              :       == GET_MODE_BITSIZE (SImode)-1
   25621              :    && ix86_pre_reload_split ()) && 
   25622              : #line 19857 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25623              : ( 1)))
   25624              :             return NULL;
   25625              :           return gen_split_810 (insn, operands);
   25626              : 
   25627              :         case 1:
   25628              :           if (!((
   25629              : #line 19852 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25630              : (TARGET_USE_BT
   25631              :    && (INTVAL (operands[2]) & (GET_MODE_BITSIZE (DImode)-1))
   25632              :       == GET_MODE_BITSIZE (DImode)-1
   25633              :    && ix86_pre_reload_split ()) && 
   25634              : #line 1198 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25635              : (TARGET_64BIT)) && 
   25636              : #line 19857 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25637              : ( 1)))
   25638              :             return NULL;
   25639              :           return gen_split_811 (insn, operands);
   25640              : 
   25641              :         case 2:
   25642              :           if (!(
   25643              : #line 19880 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25644              : (TARGET_USE_BT
   25645              :    && (INTVAL (operands[2]) & (GET_MODE_BITSIZE (SImode)-1))
   25646              :       == GET_MODE_BITSIZE (SImode)-1
   25647              :    && ix86_pre_reload_split ()) && 
   25648              : #line 19885 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25649              : ( 1)))
   25650              :             return NULL;
   25651              :           return gen_split_812 (insn, operands);
   25652              : 
   25653              :         case 3:
   25654              :           if (!((
   25655              : #line 19880 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25656              : (TARGET_USE_BT
   25657              :    && (INTVAL (operands[2]) & (GET_MODE_BITSIZE (DImode)-1))
   25658              :       == GET_MODE_BITSIZE (DImode)-1
   25659              :    && ix86_pre_reload_split ()) && 
   25660              : #line 1198 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25661              : (TARGET_64BIT)) && 
   25662              : #line 19885 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25663              : ( 1)))
   25664              :             return NULL;
   25665              :           return gen_split_813 (insn, operands);
   25666              : 
   25667              :         default:
   25668              :           return NULL;
   25669              :         }
   25670              : 
   25671              :     case NEG:
   25672              :       switch (pattern955 (x3))
   25673              :         {
   25674              :         case 0:
   25675              :           if (!(
   25676              : #line 22787 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25677              : (TARGET_BMI) && 
   25678              : #line 22789 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25679              : ( TARGET_AVOID_FALSE_DEP_FOR_BLS
   25680              :    && epilogue_completed
   25681              :    && optimize_function_for_speed_p (cfun)
   25682              :    && !reg_mentioned_p (operands[0], operands[1]))))
   25683              :             return NULL;
   25684              :           return gen_split_906 (insn, operands);
   25685              : 
   25686              :         case 1:
   25687              :           if (!((
   25688              : #line 22787 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25689              : (TARGET_BMI) && 
   25690              : #line 1198 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25691              : (TARGET_64BIT)) && 
   25692              : #line 22789 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25693              : ( TARGET_AVOID_FALSE_DEP_FOR_BLS
   25694              :    && epilogue_completed
   25695              :    && optimize_function_for_speed_p (cfun)
   25696              :    && !reg_mentioned_p (operands[0], operands[1]))))
   25697              :             return NULL;
   25698              :           return gen_split_907 (insn, operands);
   25699              : 
   25700              :         default:
   25701              :           return NULL;
   25702              :         }
   25703              : 
   25704              :     case PLUS:
   25705              :       x10 = XEXP (x5, 1);
   25706              :       if (x10 != const_int_rtx[MAX_SAVED_CONST_INT + -1])
   25707              :         return NULL;
   25708              :       switch (pattern955 (x3))
   25709              :         {
   25710              :         case 0:
   25711              :           if (!(
   25712              : #line 22932 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25713              : (TARGET_BMI) && 
   25714              : #line 22934 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25715              : ( TARGET_AVOID_FALSE_DEP_FOR_BLS
   25716              :    && epilogue_completed
   25717              :    && optimize_function_for_speed_p (cfun)
   25718              :    && !reg_mentioned_p (operands[0], operands[1]))))
   25719              :             return NULL;
   25720              :           return gen_split_912 (insn, operands);
   25721              : 
   25722              :         case 1:
   25723              :           if (!((
   25724              : #line 22932 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25725              : (TARGET_BMI) && 
   25726              : #line 1198 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25727              : (TARGET_64BIT)) && 
   25728              : #line 22934 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25729              : ( TARGET_AVOID_FALSE_DEP_FOR_BLS
   25730              :    && epilogue_completed
   25731              :    && optimize_function_for_speed_p (cfun)
   25732              :    && !reg_mentioned_p (operands[0], operands[1]))))
   25733              :             return NULL;
   25734              :           return gen_split_913 (insn, operands);
   25735              : 
   25736              :         default:
   25737              :           return NULL;
   25738              :         }
   25739              : 
   25740              :     default:
   25741              :       return NULL;
   25742              :     }
   25743              : }
   25744              : 
   25745              :  rtx_insn *
   25746              : split_36 (rtx x1 ATTRIBUTE_UNUSED, rtx_insn *insn ATTRIBUTE_UNUSED)
   25747              : {
   25748              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   25749              :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
   25750              :   rtx x10, x11, x12, x13, x14, x15, x16, x17;
   25751              :   rtx x18, x19, x20, x21;
   25752              :   rtx_insn *res ATTRIBUTE_UNUSED;
   25753              :   x2 = XVECEXP (x1, 0, 0);
   25754              :   switch (GET_CODE (x2))
   25755              :     {
   25756              :     case SET:
   25757              :       x3 = XEXP (x2, 1);
   25758              :       switch (GET_CODE (x3))
   25759              :         {
   25760              :         case CONST_INT:
   25761              :         case CONST_DOUBLE:
   25762              :         case CONST_VECTOR:
   25763              :           operands[1] = x3;
   25764              :           if (pattern346 (x1) == 0)
   25765              :             {
   25766              :               switch (GET_MODE (operands[0]))
   25767              :                 {
   25768              :                 case E_HImode:
   25769              :                   if (memory_operand (operands[0], E_HImode)
   25770              :                       && const0_operand (operands[1], E_HImode)
   25771              :                       && (
   25772              : #line 2475 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25773              : (reload_completed) && 
   25774              : #line 2477 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25775              : ( !(optimize_insn_for_size_p () && optimize_size > 1))))
   25776              :                     return gen_split_14 (insn, operands);
   25777              :                   if (nonimmediate_operand (operands[0], E_HImode)
   25778              :                       && constm1_operand (operands[1], E_HImode)
   25779              :                       && (
   25780              : #line 2490 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25781              : (reload_completed) && 
   25782              : #line 2492 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25783              : ( !(optimize_insn_for_size_p () && optimize_size > 1))))
   25784              :                     return gen_split_17 (insn, operands);
   25785              :                   break;
   25786              : 
   25787              :                 case E_SImode:
   25788              :                   if (memory_operand (operands[0], E_SImode)
   25789              :                       && const0_operand (operands[1], E_SImode)
   25790              :                       && (
   25791              : #line 2475 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25792              : (reload_completed) && 
   25793              : #line 2477 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25794              : ( !(optimize_insn_for_size_p () && optimize_size > 1))))
   25795              :                     return gen_split_15 (insn, operands);
   25796              :                   if (nonimmediate_operand (operands[0], E_SImode)
   25797              :                       && constm1_operand (operands[1], E_SImode)
   25798              :                       && (
   25799              : #line 2490 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25800              : (reload_completed) && 
   25801              : #line 2492 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25802              : ( !(optimize_insn_for_size_p () && optimize_size > 1))))
   25803              :                     return gen_split_18 (insn, operands);
   25804              :                   break;
   25805              : 
   25806              :                 case E_DImode:
   25807              :                   if (memory_operand (operands[0], E_DImode)
   25808              :                       && const0_operand (operands[1], E_DImode)
   25809              :                       && ((
   25810              : #line 2475 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25811              : (reload_completed) && 
   25812              : #line 1195 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25813              : (TARGET_64BIT)) && 
   25814              : #line 2477 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25815              : ( !(optimize_insn_for_size_p () && optimize_size > 1))))
   25816              :                     return gen_split_16 (insn, operands);
   25817              :                   if (nonimmediate_operand (operands[0], E_DImode)
   25818              :                       && constm1_operand (operands[1], E_DImode)
   25819              :                       && ((
   25820              : #line 2490 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25821              : (reload_completed) && 
   25822              : #line 1195 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25823              : (TARGET_64BIT)) && 
   25824              : #line 2492 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25825              : ( !(optimize_insn_for_size_p () && optimize_size > 1))))
   25826              :                     return gen_split_19 (insn, operands);
   25827              :                   break;
   25828              : 
   25829              :                 default:
   25830              :                   break;
   25831              :                 }
   25832              :             }
   25833              :           if (x3 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
   25834              :             return NULL;
   25835              :           x4 = XEXP (x2, 0);
   25836              :           if (GET_CODE (x4) != ZERO_EXTRACT
   25837              :               || GET_MODE (x4) != E_HImode)
   25838              :             return NULL;
   25839              :           x5 = XEXP (x4, 1);
   25840              :           if (x5 != const_int_rtx[MAX_SAVED_CONST_INT + 1])
   25841              :             return NULL;
   25842              :           x6 = XVECEXP (x1, 0, 1);
   25843              :           if (pattern237 (x6, 
   25844              : E_CCmode, 
   25845              : 17) != 0)
   25846              :             return NULL;
   25847              :           x7 = XEXP (x4, 0);
   25848              :           operands[0] = x7;
   25849              :           x8 = XEXP (x4, 2);
   25850              :           operands[1] = x8;
   25851              :           if (!register_operand (operands[1], E_QImode))
   25852              :             return NULL;
   25853              :           switch (GET_MODE (operands[0]))
   25854              :             {
   25855              :             case E_QImode:
   25856              :               if (nonimmediate_operand (operands[0], E_QImode)
   25857              :                   && (
   25858              : #line 19923 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25859              : (TARGET_USE_BT && ix86_pre_reload_split ()) && 
   25860              : #line 19925 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25861              : ( MEM_P (operands[0]))))
   25862              :                 return gen_split_816 (insn, operands);
   25863              :               if (!register_operand (operands[0], E_QImode)
   25864              :                   || !
   25865              : #line 19947 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25866              : (TARGET_USE_BT && ix86_pre_reload_split ()))
   25867              :                 return NULL;
   25868              :               return gen_split_818 (insn, operands);
   25869              : 
   25870              :             case E_HImode:
   25871              :               if (nonimmediate_operand (operands[0], E_HImode)
   25872              :                   && (
   25873              : #line 19923 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25874              : (TARGET_USE_BT && ix86_pre_reload_split ()) && 
   25875              : #line 19925 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25876              : ( MEM_P (operands[0]))))
   25877              :                 return gen_split_817 (insn, operands);
   25878              :               if (!register_operand (operands[0], E_HImode)
   25879              :                   || !
   25880              : #line 19947 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25881              : (TARGET_USE_BT && ix86_pre_reload_split ()))
   25882              :                 return NULL;
   25883              :               return gen_split_819 (insn, operands);
   25884              : 
   25885              :             default:
   25886              :               return NULL;
   25887              :             }
   25888              : 
   25889              :         case ASHIFTRT:
   25890              :         case LSHIFTRT:
   25891              :         case SIGN_EXTRACT:
   25892              :         case ZERO_EXTRACT:
   25893              :           x6 = XVECEXP (x1, 0, 1);
   25894              :           if (pattern237 (x6, 
   25895              : E_CCmode, 
   25896              : 17) != 0)
   25897              :             return NULL;
   25898              :           switch (GET_CODE (x3))
   25899              :             {
   25900              :             case SIGN_EXTRACT:
   25901              :               res = split_15 (x1, insn);
   25902              :               if (res != NULL_RTX)
   25903              :                 return res;
   25904              :               break;
   25905              : 
   25906              :             case LSHIFTRT:
   25907              :               res = split_16 (x1, insn);
   25908              :               if (res != NULL_RTX)
   25909              :                 return res;
   25910              :               break;
   25911              : 
   25912              :             case ASHIFTRT:
   25913              :               res = split_17 (x1, insn);
   25914              :               if (res != NULL_RTX)
   25915              :                 return res;
   25916              :               break;
   25917              : 
   25918              :             case ZERO_EXTRACT:
   25919              :               res = split_18 (x1, insn);
   25920              :               if (res != NULL_RTX)
   25921              :                 return res;
   25922              :               break;
   25923              : 
   25924              :             default:
   25925              :               break;
   25926              :             }
   25927              :           x4 = XEXP (x2, 0);
   25928              :           if (GET_CODE (x4) != ZERO_EXTRACT)
   25929              :             return NULL;
   25930              :           x5 = XEXP (x4, 1);
   25931              :           if (x5 != const_int_rtx[MAX_SAVED_CONST_INT + 8])
   25932              :             return NULL;
   25933              :           x8 = XEXP (x4, 2);
   25934              :           if (x8 != const_int_rtx[MAX_SAVED_CONST_INT + 8])
   25935              :             return NULL;
   25936              :           x7 = XEXP (x4, 0);
   25937              :           operands[0] = x7;
   25938              :           if (!int248_register_operand (operands[0], E_VOIDmode))
   25939              :             return NULL;
   25940              :           operands[3] = x3;
   25941              :           x9 = XEXP (x3, 0);
   25942              :           switch (GET_CODE (x9))
   25943              :             {
   25944              :             case AND:
   25945              :               switch (pattern1496 (x2))
   25946              :                 {
   25947              :                 case 0:
   25948              :                   if (!(
   25949              : #line 14037 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25950              : (GET_MODE (operands[1]) == GET_MODE (operands[2])) && 
   25951              : #line 14041 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25952              : ( reload_completed
   25953              :    && !(rtx_equal_p (operands[0], operands[1])
   25954              :         || rtx_equal_p (operands[0], operands[2])))))
   25955              :                     return NULL;
   25956              :                   return gen_split_364 (insn, operands);
   25957              : 
   25958              :                 case 1:
   25959              :                   if (!(
   25960              : #line 14037 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25961              : (GET_MODE (operands[1]) == GET_MODE (operands[2])) && 
   25962              : #line 14041 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25963              : ( reload_completed
   25964              :    && !(rtx_equal_p (operands[0], operands[1])
   25965              :         || rtx_equal_p (operands[0], operands[2])))))
   25966              :                     return NULL;
   25967              :                   return gen_split_367 (insn, operands);
   25968              : 
   25969              :                 case 2:
   25970              :                   if (!((
   25971              : #line 14037 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25972              : (GET_MODE (operands[1]) == GET_MODE (operands[2])) && 
   25973              : #line 1195 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25974              : (TARGET_64BIT)) && 
   25975              : #line 14041 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25976              : ( reload_completed
   25977              :    && !(rtx_equal_p (operands[0], operands[1])
   25978              :         || rtx_equal_p (operands[0], operands[2])))))
   25979              :                     return NULL;
   25980              :                   return gen_split_370 (insn, operands);
   25981              : 
   25982              :                 default:
   25983              :                   return NULL;
   25984              :                 }
   25985              : 
   25986              :             case IOR:
   25987              :               switch (pattern1496 (x2))
   25988              :                 {
   25989              :                 case 0:
   25990              :                   if (!(
   25991              : #line 14037 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25992              : (GET_MODE (operands[1]) == GET_MODE (operands[2])) && 
   25993              : #line 14041 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25994              : ( reload_completed
   25995              :    && !(rtx_equal_p (operands[0], operands[1])
   25996              :         || rtx_equal_p (operands[0], operands[2])))))
   25997              :                     return NULL;
   25998              :                   return gen_split_365 (insn, operands);
   25999              : 
   26000              :                 case 1:
   26001              :                   if (!(
   26002              : #line 14037 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26003              : (GET_MODE (operands[1]) == GET_MODE (operands[2])) && 
   26004              : #line 14041 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26005              : ( reload_completed
   26006              :    && !(rtx_equal_p (operands[0], operands[1])
   26007              :         || rtx_equal_p (operands[0], operands[2])))))
   26008              :                     return NULL;
   26009              :                   return gen_split_368 (insn, operands);
   26010              : 
   26011              :                 case 2:
   26012              :                   if (!((
   26013              : #line 14037 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26014              : (GET_MODE (operands[1]) == GET_MODE (operands[2])) && 
   26015              : #line 1195 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26016              : (TARGET_64BIT)) && 
   26017              : #line 14041 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26018              : ( reload_completed
   26019              :    && !(rtx_equal_p (operands[0], operands[1])
   26020              :         || rtx_equal_p (operands[0], operands[2])))))
   26021              :                     return NULL;
   26022              :                   return gen_split_371 (insn, operands);
   26023              : 
   26024              :                 default:
   26025              :                   return NULL;
   26026              :                 }
   26027              : 
   26028              :             case XOR:
   26029              :               switch (pattern1496 (x2))
   26030              :                 {
   26031              :                 case 0:
   26032              :                   if (!(
   26033              : #line 14037 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26034              : (GET_MODE (operands[1]) == GET_MODE (operands[2])) && 
   26035              : #line 14041 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26036              : ( reload_completed
   26037              :    && !(rtx_equal_p (operands[0], operands[1])
   26038              :         || rtx_equal_p (operands[0], operands[2])))))
   26039              :                     return NULL;
   26040              :                   return gen_split_366 (insn, operands);
   26041              : 
   26042              :                 case 1:
   26043              :                   if (!(
   26044              : #line 14037 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26045              : (GET_MODE (operands[1]) == GET_MODE (operands[2])) && 
   26046              : #line 14041 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26047              : ( reload_completed
   26048              :    && !(rtx_equal_p (operands[0], operands[1])
   26049              :         || rtx_equal_p (operands[0], operands[2])))))
   26050              :                     return NULL;
   26051              :                   return gen_split_369 (insn, operands);
   26052              : 
   26053              :                 case 2:
   26054              :                   if (!((
   26055              : #line 14037 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26056              : (GET_MODE (operands[1]) == GET_MODE (operands[2])) && 
   26057              : #line 1195 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26058              : (TARGET_64BIT)) && 
   26059              : #line 14041 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26060              : ( reload_completed
   26061              :    && !(rtx_equal_p (operands[0], operands[1])
   26062              :         || rtx_equal_p (operands[0], operands[2])))))
   26063              :                     return NULL;
   26064              :                   return gen_split_372 (insn, operands);
   26065              : 
   26066              :                 default:
   26067              :                   return NULL;
   26068              :                 }
   26069              : 
   26070              :             default:
   26071              :               return NULL;
   26072              :             }
   26073              : 
   26074              :         case ZERO_EXTEND:
   26075              :           return split_32 (x1, insn);
   26076              : 
   26077              :         case FIX:
   26078              :           x6 = XVECEXP (x1, 0, 1);
   26079              :           if (pattern357 (x6) != 0)
   26080              :             return NULL;
   26081              :           x4 = XEXP (x2, 0);
   26082              :           operands[0] = x4;
   26083              :           x9 = XEXP (x3, 0);
   26084              :           operands[1] = x9;
   26085              :           if (!register_operand (operands[1], E_VOIDmode))
   26086              :             return NULL;
   26087              :           switch (pattern554 (x3))
   26088              :             {
   26089              :             case 0:
   26090              :               if (!(
   26091              : #line 6104 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26092              : (X87_FLOAT_MODE_P (GET_MODE (operands[1]))
   26093              :    && !TARGET_FISTTP
   26094              :    && !(SSE_FLOAT_MODE_P (GET_MODE (operands[1]))
   26095              :          && (TARGET_64BIT || HImode != DImode))
   26096              :    && ix86_pre_reload_split ()) && 
   26097              : #line 6110 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26098              : ( 1)))
   26099              :                 return NULL;
   26100              :               return gen_split_82 (insn, operands);
   26101              : 
   26102              :             case 1:
   26103              :               if (!(
   26104              : #line 6104 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26105              : (X87_FLOAT_MODE_P (GET_MODE (operands[1]))
   26106              :    && !TARGET_FISTTP
   26107              :    && !(SSE_FLOAT_MODE_P (GET_MODE (operands[1]))
   26108              :          && (TARGET_64BIT || SImode != DImode))
   26109              :    && ix86_pre_reload_split ()) && 
   26110              : #line 6110 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26111              : ( 1)))
   26112              :                 return NULL;
   26113              :               return gen_split_83 (insn, operands);
   26114              : 
   26115              :             case 2:
   26116              :               if (!(
   26117              : #line 6104 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26118              : (X87_FLOAT_MODE_P (GET_MODE (operands[1]))
   26119              :    && !TARGET_FISTTP
   26120              :    && !(SSE_FLOAT_MODE_P (GET_MODE (operands[1]))
   26121              :          && (TARGET_64BIT || DImode != DImode))
   26122              :    && ix86_pre_reload_split ()) && 
   26123              : #line 6110 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26124              : ( 1)))
   26125              :                 return NULL;
   26126              :               return gen_split_84 (insn, operands);
   26127              : 
   26128              :             default:
   26129              :               return NULL;
   26130              :             }
   26131              : 
   26132              :         case MULT:
   26133              :           if (pattern346 (x1) != 0)
   26134              :             return NULL;
   26135              :           x9 = XEXP (x3, 0);
   26136              :           switch (GET_CODE (x9))
   26137              :             {
   26138              :             case REG:
   26139              :               if (!rtx_equal_p (x9, operands[0]))
   26140              :                 return NULL;
   26141              :               x10 = XEXP (x3, 1);
   26142              :               operands[1] = x10;
   26143              :               switch (GET_MODE (operands[0]))
   26144              :                 {
   26145              :                 case E_SImode:
   26146              :                   if (!general_reg_operand (operands[0], E_SImode)
   26147              :                       || GET_MODE (x3) != E_SImode
   26148              :                       || !const1248_operand (operands[1], E_SImode)
   26149              :                       || !
   26150              : #line 6535 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26151              : (reload_completed))
   26152              :                     return NULL;
   26153              :                   return gen_split_100 (insn, operands);
   26154              : 
   26155              :                 case E_DImode:
   26156              :                   if (!general_reg_operand (operands[0], E_DImode)
   26157              :                       || GET_MODE (x3) != E_DImode
   26158              :                       || !const1248_operand (operands[1], E_DImode)
   26159              :                       || !(
   26160              : #line 6535 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26161              : (reload_completed) && 
   26162              : #line 1198 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26163              : (TARGET_64BIT)))
   26164              :                     return NULL;
   26165              :                   return gen_split_101 (insn, operands);
   26166              : 
   26167              :                 default:
   26168              :                   return NULL;
   26169              :                 }
   26170              : 
   26171              :             case ZERO_EXTEND:
   26172              :               x10 = XEXP (x3, 1);
   26173              :               if (GET_CODE (x10) != ZERO_EXTEND)
   26174              :                 return NULL;
   26175              :               x11 = XEXP (x9, 0);
   26176              :               operands[1] = x11;
   26177              :               x12 = XEXP (x10, 0);
   26178              :               operands[2] = x12;
   26179              :               switch (GET_MODE (operands[0]))
   26180              :                 {
   26181              :                 case E_DImode:
   26182              :                   if (pattern566 (x3, 
   26183              : E_SImode, 
   26184              : E_DImode) != 0
   26185              :                       || !(
   26186              : #line 11797 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26187              : (TARGET_BMI2 && reload_completed
   26188              :   && REGNO (operands[1]) == DX_REG) && 
   26189              : #line 1266 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26190              : (!TARGET_64BIT)))
   26191              :                     return NULL;
   26192              :                   return gen_split_244 (insn, operands);
   26193              : 
   26194              :                 case E_TImode:
   26195              :                   if (pattern566 (x3, 
   26196              : E_DImode, 
   26197              : E_TImode) != 0
   26198              :                       || !(
   26199              : #line 11797 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26200              : (TARGET_BMI2 && reload_completed
   26201              :   && REGNO (operands[1]) == DX_REG) && 
   26202              : #line 1267 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26203              : (TARGET_64BIT)))
   26204              :                     return NULL;
   26205              :                   return gen_split_245 (insn, operands);
   26206              : 
   26207              :                 default:
   26208              :                   return NULL;
   26209              :                 }
   26210              : 
   26211              :             default:
   26212              :               return NULL;
   26213              :             }
   26214              : 
   26215              :         case PLUS:
   26216              :           return split_29 (x1, insn);
   26217              : 
   26218              :         case SUBREG:
   26219              :           return split_28 (x1, insn);
   26220              : 
   26221              :         case NE:
   26222              :         case EQ:
   26223              :         case GE:
   26224              :         case GT:
   26225              :         case LE:
   26226              :         case LT:
   26227              :         case LTGT:
   26228              :         case GEU:
   26229              :         case GTU:
   26230              :         case LEU:
   26231              :         case LTU:
   26232              :         case UNORDERED:
   26233              :         case ORDERED:
   26234              :         case UNEQ:
   26235              :         case UNGE:
   26236              :         case UNGT:
   26237              :         case UNLE:
   26238              :         case UNLT:
   26239              :           if (GET_CODE (x3) == EQ)
   26240              :             {
   26241              :               x9 = XEXP (x3, 0);
   26242              :               switch (GET_CODE (x9))
   26243              :                 {
   26244              :                 case PLUS:
   26245              :                   switch (pattern730 (x1, 
   26246              : PLUS))
   26247              :                     {
   26248              :                     case 0:
   26249              :                       if (((
   26250              : #line 7919 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26251              : (ix86_binary_operator_ok (PLUS, DImode, operands, TARGET_APX_NDD)) && 
   26252              : #line 1266 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26253              : (!TARGET_64BIT)) && 
   26254              : #line 7921 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26255              : ( reload_completed)))
   26256              :                         return gen_split_152 (insn, operands);
   26257              :                       break;
   26258              : 
   26259              :                     case 1:
   26260              :                       if (((
   26261              : #line 7919 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26262              : (ix86_binary_operator_ok (PLUS, TImode, operands, TARGET_APX_NDD)) && 
   26263              : #line 1267 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26264              : (TARGET_64BIT)) && 
   26265              : #line 7921 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26266              : ( reload_completed)))
   26267              :                         return gen_split_153 (insn, operands);
   26268              :                       break;
   26269              : 
   26270              :                     case 2:
   26271              :                       if (((
   26272              : #line 7969 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26273              : (ix86_binary_operator_ok (PLUS, DImode, operands, TARGET_APX_NDD)
   26274              :    && CONST_SCALAR_INT_P (operands[2])
   26275              :    && rtx_equal_p (operands[2], operands[3])) && 
   26276              : #line 1266 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26277              : (!TARGET_64BIT)) && 
   26278              : #line 7973 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26279              : ( reload_completed)))
   26280              :                         return gen_split_154 (insn, operands);
   26281              :                       break;
   26282              : 
   26283              :                     case 3:
   26284              :                       if (((
   26285              : #line 7969 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26286              : (ix86_binary_operator_ok (PLUS, TImode, operands, TARGET_APX_NDD)
   26287              :    && CONST_SCALAR_INT_P (operands[2])
   26288              :    && rtx_equal_p (operands[2], operands[3])) && 
   26289              : #line 1267 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26290              : (TARGET_64BIT)) && 
   26291              : #line 7973 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26292              : ( reload_completed)))
   26293              :                         return gen_split_155 (insn, operands);
   26294              :                       break;
   26295              : 
   26296              :                     default:
   26297              :                       break;
   26298              :                     }
   26299              :                   break;
   26300              : 
   26301              :                 case MINUS:
   26302              :                   switch (pattern730 (x1, 
   26303              : MINUS))
   26304              :                     {
   26305              :                     case 0:
   26306              :                       if (((
   26307              : #line 8743 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26308              : (ix86_binary_operator_ok (MINUS, SImode, operands, TARGET_APX_NDD)) && 
   26309              : #line 1266 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26310              : (!TARGET_64BIT)) && 
   26311              : #line 8745 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26312              : ( reload_completed)))
   26313              :                         return gen_split_192 (insn, operands);
   26314              :                       break;
   26315              : 
   26316              :                     case 1:
   26317              :                       if (((
   26318              : #line 8743 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26319              : (ix86_binary_operator_ok (MINUS, DImode, operands, TARGET_APX_NDD)) && 
   26320              : #line 1267 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26321              : (TARGET_64BIT)) && 
   26322              : #line 8745 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26323              : ( reload_completed)))
   26324              :                         return gen_split_193 (insn, operands);
   26325              :                       break;
   26326              : 
   26327              :                     case 2:
   26328              :                       if (((
   26329              : #line 8791 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26330              : (ix86_binary_operator_ok (MINUS, SImode, operands, TARGET_APX_NDD)
   26331              :    && CONST_SCALAR_INT_P (operands[2])
   26332              :    && rtx_equal_p (operands[2], operands[3])) && 
   26333              : #line 1266 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26334              : (!TARGET_64BIT)) && 
   26335              : #line 8795 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26336              : ( reload_completed)))
   26337              :                         return gen_split_194 (insn, operands);
   26338              :                       break;
   26339              : 
   26340              :                     case 3:
   26341              :                       if (((
   26342              : #line 8791 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26343              : (ix86_binary_operator_ok (MINUS, DImode, operands, TARGET_APX_NDD)
   26344              :    && CONST_SCALAR_INT_P (operands[2])
   26345              :    && rtx_equal_p (operands[2], operands[3])) && 
   26346              : #line 1267 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26347              : (TARGET_64BIT)) && 
   26348              : #line 8795 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26349              : ( reload_completed)))
   26350              :                         return gen_split_195 (insn, operands);
   26351              :                       break;
   26352              : 
   26353              :                     default:
   26354              :                       break;
   26355              :                     }
   26356              :                   break;
   26357              : 
   26358              :                 case ZERO_EXTRACT:
   26359              :                   switch (pattern699 (x1))
   26360              :                     {
   26361              :                     case 0:
   26362              :                       if ((
   26363              : #line 20382 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26364              : (TARGET_USE_BT && ix86_pre_reload_split ()) && 
   26365              : #line 20384 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26366              : ( 1)))
   26367              :                         return gen_split_846 (insn, operands);
   26368              :                       break;
   26369              : 
   26370              :                     case 1:
   26371              :                       if (((
   26372              : #line 20382 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26373              : (TARGET_USE_BT && ix86_pre_reload_split ()) && 
   26374              : #line 1198 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26375              : (TARGET_64BIT)) && 
   26376              : #line 20384 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26377              : ( 1)))
   26378              :                         return gen_split_847 (insn, operands);
   26379              :                       break;
   26380              : 
   26381              :                     default:
   26382              :                       break;
   26383              :                     }
   26384              :                   break;
   26385              : 
   26386              :                 default:
   26387              :                   break;
   26388              :                 }
   26389              :             }
   26390              :           operands[1] = x3;
   26391              :           switch (pattern373 (x1))
   26392              :             {
   26393              :             case 0:
   26394              :               if (!(
   26395              : #line 20496 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26396              : (!TARGET_PARTIAL_REG_STALL
   26397              :    && TARGET_ZERO_EXTEND_WITH_AND && optimize_function_for_speed_p (cfun)) && 
   26398              : #line 20499 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26399              : ( reload_completed)))
   26400              :                 return NULL;
   26401              :               return gen_split_856 (insn, operands);
   26402              : 
   26403              :             case 1:
   26404              :               if (!(
   26405              : #line 20496 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26406              : (!TARGET_PARTIAL_REG_STALL
   26407              :    && TARGET_ZERO_EXTEND_WITH_AND && optimize_function_for_speed_p (cfun)) && 
   26408              : #line 20499 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26409              : ( reload_completed)))
   26410              :                 return NULL;
   26411              :               return gen_split_857 (insn, operands);
   26412              : 
   26413              :             default:
   26414              :               return NULL;
   26415              :             }
   26416              : 
   26417              :         case MINUS:
   26418              :           x6 = XVECEXP (x1, 0, 1);
   26419              :           if (pattern237 (x6, 
   26420              : E_CCmode, 
   26421              : 17) != 0)
   26422              :             return NULL;
   26423              :           x9 = XEXP (x3, 0);
   26424              :           switch (GET_CODE (x9))
   26425              :             {
   26426              :             case CONST_INT:
   26427              :             case CONST_WIDE_INT:
   26428              :             case CONST_POLY_INT:
   26429              :             case CONST_FIXED:
   26430              :             case CONST_DOUBLE:
   26431              :             case CONST_VECTOR:
   26432              :             case CONST:
   26433              :             case REG:
   26434              :             case SUBREG:
   26435              :             case MEM:
   26436              :             case LABEL_REF:
   26437              :             case SYMBOL_REF:
   26438              :             case HIGH:
   26439              :               operands[1] = x9;
   26440              :               res = split_20 (x1, insn);
   26441              :               if (res != NULL_RTX)
   26442              :                 return res;
   26443              :               if (GET_CODE (x9) != SUBREG)
   26444              :                 return NULL;
   26445              :               switch (pattern1059 (x2))
   26446              :                 {
   26447              :                 case 0:
   26448              :                   if (!(
   26449              : #line 8494 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26450              : (!TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun)) && 
   26451              : #line 8496 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26452              : ( reload_completed)))
   26453              :                     return NULL;
   26454              :                   return gen_split_183 (insn, operands);
   26455              : 
   26456              :                 case 1:
   26457              :                   if (!(
   26458              : #line 8494 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26459              : (!TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun)) && 
   26460              : #line 8496 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26461              : ( reload_completed)))
   26462              :                     return NULL;
   26463              :                   return gen_split_184 (insn, operands);
   26464              : 
   26465              :                 case 2:
   26466              :                   if (!((
   26467              : #line 8494 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26468              : (!TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun)) && 
   26469              : #line 1195 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26470              : (TARGET_64BIT)) && 
   26471              : #line 8496 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26472              : ( reload_completed)))
   26473              :                     return NULL;
   26474              :                   return gen_split_185 (insn, operands);
   26475              : 
   26476              :                 case 3:
   26477              :                   if (!
   26478              : #line 8589 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26479              : ( reload_completed))
   26480              :                     return NULL;
   26481              :                   return gen_split_186 (insn, operands);
   26482              : 
   26483              :                 case 4:
   26484              :                   if (!
   26485              : #line 8589 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26486              : ( reload_completed))
   26487              :                     return NULL;
   26488              :                   return gen_split_187 (insn, operands);
   26489              : 
   26490              :                 case 5:
   26491              :                   if (!(
   26492              : #line 1195 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26493              : (TARGET_64BIT) && 
   26494              : #line 8589 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26495              : ( reload_completed)))
   26496              :                     return NULL;
   26497              :                   return gen_split_188 (insn, operands);
   26498              : 
   26499              :                 default:
   26500              :                   return NULL;
   26501              :                 }
   26502              : 
   26503              :             case MINUS:
   26504              :               x13 = XEXP (x9, 1);
   26505              :               if (GET_CODE (x13) != EQ)
   26506              :                 return NULL;
   26507              :               x14 = XEXP (x13, 1);
   26508              :               if (x14 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
   26509              :                 return NULL;
   26510              :               x4 = XEXP (x2, 0);
   26511              :               operands[0] = x4;
   26512              :               x11 = XEXP (x9, 0);
   26513              :               operands[1] = x11;
   26514              :               x15 = XEXP (x13, 0);
   26515              :               operands[3] = x15;
   26516              :               if (!int_nonimmediate_operand (operands[3], E_VOIDmode))
   26517              :                 return NULL;
   26518              :               x10 = XEXP (x3, 1);
   26519              :               operands[2] = x10;
   26520              :               switch (GET_MODE (operands[0]))
   26521              :                 {
   26522              :                 case E_QImode:
   26523              :                   if (pattern1579 (x3, 
   26524              : E_QImode) != 0
   26525              :                       || !(
   26526              : #line 10986 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26527              : (ix86_binary_operator_ok (MINUS, QImode, operands, TARGET_APX_NDD)
   26528              :    && ix86_pre_reload_split ()) && 
   26529              : #line 10989 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26530              : ( 1)))
   26531              :                     return NULL;
   26532              :                   return gen_split_224 (insn, operands);
   26533              : 
   26534              :                 case E_HImode:
   26535              :                   if (pattern1579 (x3, 
   26536              : E_HImode) != 0
   26537              :                       || !(
   26538              : #line 10986 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26539              : (ix86_binary_operator_ok (MINUS, HImode, operands, TARGET_APX_NDD)
   26540              :    && ix86_pre_reload_split ()) && 
   26541              : #line 10989 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26542              : ( 1)))
   26543              :                     return NULL;
   26544              :                   return gen_split_225 (insn, operands);
   26545              : 
   26546              :                 case E_SImode:
   26547              :                   if (pattern1580 (x3, 
   26548              : E_SImode) != 0
   26549              :                       || !(
   26550              : #line 10986 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26551              : (ix86_binary_operator_ok (MINUS, SImode, operands, TARGET_APX_NDD)
   26552              :    && ix86_pre_reload_split ()) && 
   26553              : #line 10989 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26554              : ( 1)))
   26555              :                     return NULL;
   26556              :                   return gen_split_226 (insn, operands);
   26557              : 
   26558              :                 case E_DImode:
   26559              :                   if (pattern1580 (x3, 
   26560              : E_DImode) != 0
   26561              :                       || !((
   26562              : #line 10986 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26563              : (ix86_binary_operator_ok (MINUS, DImode, operands, TARGET_APX_NDD)
   26564              :    && ix86_pre_reload_split ()) && 
   26565              : #line 1192 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26566              : (TARGET_64BIT)) && 
   26567              : #line 10989 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26568              : ( 1)))
   26569              :                     return NULL;
   26570              :                   return gen_split_227 (insn, operands);
   26571              : 
   26572              :                 default:
   26573              :                   return NULL;
   26574              :                 }
   26575              : 
   26576              :             default:
   26577              :               return NULL;
   26578              :             }
   26579              : 
   26580              :         case IF_THEN_ELSE:
   26581              :           x9 = XEXP (x3, 0);
   26582              :           if (!bt_comparison_operator (x9, E_VOIDmode))
   26583              :             return NULL;
   26584              :           x13 = XEXP (x9, 1);
   26585              :           if (x13 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
   26586              :             return NULL;
   26587              :           switch (pattern705 (x1))
   26588              :             {
   26589              :             case 0:
   26590              :               x11 = XEXP (x9, 0);
   26591              :               operands[2] = x11;
   26592              :               x10 = XEXP (x3, 1);
   26593              :               if (GET_CODE (x10) != PLUS)
   26594              :                 return NULL;
   26595              :               x16 = XEXP (x10, 1);
   26596              :               if (x16 != const_int_rtx[MAX_SAVED_CONST_INT + -1])
   26597              :                 return NULL;
   26598              :               x4 = XEXP (x2, 0);
   26599              :               operands[0] = x4;
   26600              :               operands[1] = x9;
   26601              :               switch (pattern1590 (x3))
   26602              :                 {
   26603              :                 case 0:
   26604              :                   if (!(
   26605              : #line 9059 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26606              : (TARGET_CMOVE) && 
   26607              : #line 9061 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26608              : ( reload_completed)))
   26609              :                     return NULL;
   26610              :                   return gen_split_196 (insn, operands);
   26611              : 
   26612              :                 case 1:
   26613              :                   if (!(
   26614              : #line 9059 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26615              : (TARGET_CMOVE) && 
   26616              : #line 9061 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26617              : ( reload_completed)))
   26618              :                     return NULL;
   26619              :                   return gen_split_197 (insn, operands);
   26620              : 
   26621              :                 case 2:
   26622              :                   if (!((
   26623              : #line 9059 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26624              : (TARGET_CMOVE) && 
   26625              : #line 1195 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26626              : (TARGET_64BIT)) && 
   26627              : #line 9061 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26628              : ( reload_completed)))
   26629              :                     return NULL;
   26630              :                   return gen_split_198 (insn, operands);
   26631              : 
   26632              :                 default:
   26633              :                   return NULL;
   26634              :                 }
   26635              : 
   26636              :             case 1:
   26637              :               x11 = XEXP (x9, 0);
   26638              :               x17 = XEXP (x11, 1);
   26639              :               if (x17 != const_int_rtx[MAX_SAVED_CONST_INT + 1])
   26640              :                 return NULL;
   26641              :               switch (pattern1347 (x2))
   26642              :                 {
   26643              :                 case 0:
   26644              :                   x18 = XEXP (x11, 2);
   26645              :                   operands[2] = x18;
   26646              :                   switch (pattern1542 (x2))
   26647              :                     {
   26648              :                     case 0:
   26649              :                       if ((
   26650              : #line 20152 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26651              : ((TARGET_USE_BT || optimize_function_for_size_p (cfun))
   26652              :    && (CONST_INT_P (operands[2])
   26653              :        ? (INTVAL (operands[2]) < GET_MODE_BITSIZE (SImode)
   26654              :           && INTVAL (operands[2])
   26655              :                >= (optimize_function_for_size_p (cfun) ? 8 : 32))
   26656              :        : !memory_operand (operands[1], SImode))
   26657              :    && ix86_pre_reload_split ()) && 
   26658              : #line 20160 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26659              : ( 1)))
   26660              :                         return gen_split_822 (insn, operands);
   26661              :                       break;
   26662              : 
   26663              :                     case 1:
   26664              :                       if (((
   26665              : #line 20152 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26666              : ((TARGET_USE_BT || optimize_function_for_size_p (cfun))
   26667              :    && (CONST_INT_P (operands[2])
   26668              :        ? (INTVAL (operands[2]) < GET_MODE_BITSIZE (DImode)
   26669              :           && INTVAL (operands[2])
   26670              :                >= (optimize_function_for_size_p (cfun) ? 8 : 32))
   26671              :        : !memory_operand (operands[1], DImode))
   26672              :    && ix86_pre_reload_split ()) && 
   26673              : #line 1198 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26674              : (TARGET_64BIT)) && 
   26675              : #line 20160 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26676              : ( 1)))
   26677              :                         return gen_split_823 (insn, operands);
   26678              :                       break;
   26679              : 
   26680              :                     case 2:
   26681              :                       if ((
   26682              : #line 20295 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26683              : (TARGET_USE_BT && TARGET_CMOVE
   26684              :    && ix86_pre_reload_split ()) && 
   26685              : #line 20298 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26686              : ( 1)))
   26687              :                         return gen_split_834 (insn, operands);
   26688              :                       break;
   26689              : 
   26690              :                     case 3:
   26691              :                       if (((
   26692              : #line 20295 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26693              : (TARGET_USE_BT && TARGET_CMOVE
   26694              :    && ix86_pre_reload_split ()) && 
   26695              : #line 1198 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26696              : (TARGET_64BIT)) && 
   26697              : #line 20298 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26698              : ( 1)))
   26699              :                         return gen_split_835 (insn, operands);
   26700              :                       break;
   26701              : 
   26702              :                     case 4:
   26703              :                       if ((
   26704              : #line 20295 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26705              : (TARGET_USE_BT && TARGET_CMOVE
   26706              :    && ix86_pre_reload_split ()) && 
   26707              : #line 20298 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26708              : ( 1)))
   26709              :                         return gen_split_836 (insn, operands);
   26710              :                       break;
   26711              : 
   26712              :                     case 5:
   26713              :                       if (((
   26714              : #line 20295 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26715              : (TARGET_USE_BT && TARGET_CMOVE
   26716              :    && ix86_pre_reload_split ()) && 
   26717              : #line 1198 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26718              : (TARGET_64BIT)) && 
   26719              : #line 20298 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26720              : ( 1)))
   26721              :                         return gen_split_837 (insn, operands);
   26722              :                       break;
   26723              : 
   26724              :                     case 6:
   26725              :                       if (((
   26726              : #line 20295 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26727              : (TARGET_USE_BT && TARGET_CMOVE
   26728              :    && ix86_pre_reload_split ()) && 
   26729              : #line 1195 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26730              : (TARGET_64BIT)) && 
   26731              : #line 20298 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26732              : ( 1)))
   26733              :                         return gen_split_838 (insn, operands);
   26734              :                       break;
   26735              : 
   26736              :                     case 7:
   26737              :                       if (((
   26738              : #line 20295 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26739              : (TARGET_USE_BT && TARGET_CMOVE
   26740              :    && ix86_pre_reload_split ()) && 
   26741              : #line 1195 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26742              : (TARGET_64BIT)) && 
   26743              : #line 20298 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26744              : ( 1)))
   26745              :                         return gen_split_839 (insn, operands);
   26746              :                       break;
   26747              : 
   26748              :                     default:
   26749              :                       break;
   26750              :                     }
   26751              :                   if (GET_CODE (x18) != SUBREG)
   26752              :                     return NULL;
   26753              :                   switch (pattern1543 (x2))
   26754              :                     {
   26755              :                     case 0:
   26756              :                       if (!(
   26757              : #line 20228 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26758              : ((TARGET_USE_BT || optimize_function_for_size_p (cfun))
   26759              :    && (INTVAL (operands[3]) & (GET_MODE_BITSIZE (SImode)-1))
   26760              :       == GET_MODE_BITSIZE (SImode)-1
   26761              :    && ix86_pre_reload_split ()) && 
   26762              : #line 20233 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26763              : ( 1)))
   26764              :                         return NULL;
   26765              :                       return gen_split_826 (insn, operands);
   26766              : 
   26767              :                     case 1:
   26768              :                       if (!((
   26769              : #line 20228 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26770              : ((TARGET_USE_BT || optimize_function_for_size_p (cfun))
   26771              :    && (INTVAL (operands[3]) & (GET_MODE_BITSIZE (DImode)-1))
   26772              :       == GET_MODE_BITSIZE (DImode)-1
   26773              :    && ix86_pre_reload_split ()) && 
   26774              : #line 1198 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26775              : (TARGET_64BIT)) && 
   26776              : #line 20233 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26777              : ( 1)))
   26778              :                         return NULL;
   26779              :                       return gen_split_827 (insn, operands);
   26780              : 
   26781              :                     default:
   26782              :                       return NULL;
   26783              :                     }
   26784              : 
   26785              :                 case 1:
   26786              :                   if (!(
   26787              : #line 20191 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26788              : ((TARGET_USE_BT || optimize_function_for_size_p (cfun))
   26789              :    && (INTVAL (operands[3]) & (GET_MODE_BITSIZE (SImode)-1))
   26790              :       == GET_MODE_BITSIZE (SImode)-1
   26791              :    && ix86_pre_reload_split ()) && 
   26792              : #line 20196 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26793              : ( 1)))
   26794              :                     return NULL;
   26795              :                   return gen_split_824 (insn, operands);
   26796              : 
   26797              :                 case 2:
   26798              :                   if (!((
   26799              : #line 20191 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26800              : ((TARGET_USE_BT || optimize_function_for_size_p (cfun))
   26801              :    && (INTVAL (operands[3]) & (GET_MODE_BITSIZE (DImode)-1))
   26802              :       == GET_MODE_BITSIZE (DImode)-1
   26803              :    && ix86_pre_reload_split ()) && 
   26804              : #line 1198 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26805              : (TARGET_64BIT)) && 
   26806              : #line 20196 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26807              : ( 1)))
   26808              :                     return NULL;
   26809              :                   return gen_split_825 (insn, operands);
   26810              : 
   26811              :                 default:
   26812              :                   return NULL;
   26813              :                 }
   26814              : 
   26815              :             default:
   26816              :               return NULL;
   26817              :             }
   26818              : 
   26819              :         case COMPARE:
   26820              :           return split_27 (x1, insn);
   26821              : 
   26822              :         case AND:
   26823              :           return split_25 (x1, insn);
   26824              : 
   26825              :         case IOR:
   26826              :           return split_26 (x1, insn);
   26827              : 
   26828              :         case XOR:
   26829              :           return split_24 (x1, insn);
   26830              : 
   26831              :         case NOT:
   26832              :           x9 = XEXP (x3, 0);
   26833              :           if (GET_CODE (x9) != XOR
   26834              :               || pattern347 (x1) != 0)
   26835              :             return NULL;
   26836              :           switch (GET_MODE (operands[0]))
   26837              :             {
   26838              :             case E_HImode:
   26839              :               if (!nonimmediate_operand (operands[0], E_HImode)
   26840              :                   || pattern218 (x3, 
   26841              : E_HImode) != 0
   26842              :                   || !(
   26843              : #line 14425 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26844              : (ix86_binary_operator_ok (XOR, HImode, operands, TARGET_APX_NDD)) && 
   26845              : #line 14427 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26846              : ( reload_completed)))
   26847              :                 return NULL;
   26848              :               return gen_split_397 (insn, operands);
   26849              : 
   26850              :             case E_SImode:
   26851              :               if (!nonimmediate_operand (operands[0], E_SImode)
   26852              :                   || pattern219 (x3, 
   26853              : E_SImode) != 0
   26854              :                   || !(
   26855              : #line 14425 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26856              : (ix86_binary_operator_ok (XOR, SImode, operands, TARGET_APX_NDD)) && 
   26857              : #line 14427 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26858              : ( reload_completed)))
   26859              :                 return NULL;
   26860              :               return gen_split_398 (insn, operands);
   26861              : 
   26862              :             case E_DImode:
   26863              :               if (!nonimmediate_operand (operands[0], E_DImode)
   26864              :                   || pattern219 (x3, 
   26865              : E_DImode) != 0
   26866              :                   || !((
   26867              : #line 14425 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26868              : (ix86_binary_operator_ok (XOR, DImode, operands, TARGET_APX_NDD)) && 
   26869              : #line 1195 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26870              : (TARGET_64BIT)) && 
   26871              : #line 14427 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26872              : ( reload_completed)))
   26873              :                 return NULL;
   26874              :               return gen_split_399 (insn, operands);
   26875              : 
   26876              :             case E_QImode:
   26877              :               if (!nonimmediate_operand (operands[0], E_QImode)
   26878              :                   || pattern218 (x3, 
   26879              : E_QImode) != 0
   26880              :                   || !(
   26881              : #line 14656 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26882              : (ix86_binary_operator_ok (XOR, QImode, operands, TARGET_APX_NDD)) && 
   26883              : #line 14658 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26884              : ( reload_completed)))
   26885              :                 return NULL;
   26886              :               return gen_split_405 (insn, operands);
   26887              : 
   26888              :             default:
   26889              :               return NULL;
   26890              :             }
   26891              : 
   26892              :         case NEG:
   26893              :           return split_31 (x1, insn);
   26894              : 
   26895              :         case ABS:
   26896              :           return split_33 (x1, insn);
   26897              : 
   26898              :         case ASHIFT:
   26899              :           return split_30 (x1, insn);
   26900              : 
   26901              :         case ROTATE:
   26902              :           return split_35 (x1, insn);
   26903              : 
   26904              :         case ROTATERT:
   26905              :           return split_34 (x1, insn);
   26906              : 
   26907              :         case CTZ:
   26908              :           switch (pattern411 (x1))
   26909              :             {
   26910              :             case 0:
   26911              :               if (!
   26912              : #line 22077 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26913              : ((TARGET_BMI || TARGET_CPU_P (GENERIC))
   26914              :    && (TARGET_AVOID_FALSE_DEP_FOR_BMI || TARGET_AVOID_FALSE_DEP_FOR_TZCNT)
   26915              :    && epilogue_completed
   26916              :    && optimize_function_for_speed_p (cfun)
   26917              :    && !reg_mentioned_p (operands[0], operands[1])))
   26918              :                 return NULL;
   26919              :               return gen_split_877 (insn, operands);
   26920              : 
   26921              :             case 1:
   26922              :               if (!(
   26923              : #line 22077 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26924              : ((TARGET_BMI || TARGET_CPU_P (GENERIC))
   26925              :    && (TARGET_AVOID_FALSE_DEP_FOR_BMI || TARGET_AVOID_FALSE_DEP_FOR_TZCNT)
   26926              :    && epilogue_completed
   26927              :    && optimize_function_for_speed_p (cfun)
   26928              :    && !reg_mentioned_p (operands[0], operands[1])) && 
   26929              : #line 1198 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26930              : (TARGET_64BIT)))
   26931              :                 return NULL;
   26932              :               return gen_split_878 (insn, operands);
   26933              : 
   26934              :             default:
   26935              :               return NULL;
   26936              :             }
   26937              : 
   26938              :         case SIGN_EXTEND:
   26939              :           if (GET_MODE (x3) != E_DImode)
   26940              :             return NULL;
   26941              :           x6 = XVECEXP (x1, 0, 1);
   26942              :           if (pattern357 (x6) != 0)
   26943              :             return NULL;
   26944              :           x4 = XEXP (x2, 0);
   26945              :           operands[0] = x4;
   26946              :           if (!register_operand (operands[0], E_DImode))
   26947              :             return NULL;
   26948              :           x9 = XEXP (x3, 0);
   26949              :           if (GET_MODE (x9) != E_SImode)
   26950              :             return NULL;
   26951              :           switch (GET_CODE (x9))
   26952              :             {
   26953              :             case CTZ:
   26954              :               x11 = XEXP (x9, 0);
   26955              :               operands[1] = x11;
   26956              :               if (!nonimmediate_operand (operands[1], E_SImode)
   26957              :                   || !
   26958              : #line 22188 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26959              : ((TARGET_BMI || TARGET_CPU_P (GENERIC))
   26960              :    && (TARGET_AVOID_FALSE_DEP_FOR_BMI || TARGET_AVOID_FALSE_DEP_FOR_TZCNT)
   26961              :    && epilogue_completed
   26962              :    && optimize_function_for_speed_p (cfun)
   26963              :    && !reg_mentioned_p (operands[0], operands[1])))
   26964              :                 return NULL;
   26965              :               return gen_split_880 (insn, operands);
   26966              : 
   26967              :             case XOR:
   26968              :               x11 = XEXP (x9, 0);
   26969              :               if (GET_CODE (x11) != MINUS
   26970              :                   || pattern1168 (x9) != 0)
   26971              :                 return NULL;
   26972              :               x17 = XEXP (x11, 1);
   26973              :               x19 = XEXP (x17, 0);
   26974              :               operands[1] = x19;
   26975              :               if (!nonimmediate_operand (operands[1], E_SImode)
   26976              :                   || !(
   26977              : #line 22357 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26978              : (!TARGET_LZCNT && TARGET_64BIT && ix86_pre_reload_split ()) && 
   26979              : #line 22359 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26980              : ( 1)))
   26981              :                 return NULL;
   26982              :               return gen_split_884 (insn, operands);
   26983              : 
   26984              :             default:
   26985              :               return NULL;
   26986              :             }
   26987              : 
   26988              :         case CLZ:
   26989              :           switch (pattern411 (x1))
   26990              :             {
   26991              :             case 0:
   26992              :               if (!(
   26993              : #line 22529 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26994              : (TARGET_LZCNT) && 
   26995              : #line 22531 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26996              : ( TARGET_AVOID_FALSE_DEP_FOR_BMI && epilogue_completed
   26997              :    && optimize_function_for_speed_p (cfun)
   26998              :    && !reg_mentioned_p (operands[0], operands[1]))))
   26999              :                 return NULL;
   27000              :               return gen_split_894 (insn, operands);
   27001              : 
   27002              :             case 1:
   27003              :               if (!((
   27004              : #line 22529 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   27005              : (TARGET_LZCNT) && 
   27006              : #line 1198 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   27007              : (TARGET_64BIT)) && 
   27008              : #line 22531 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   27009              : ( TARGET_AVOID_FALSE_DEP_FOR_BMI && epilogue_completed
   27010              :    && optimize_function_for_speed_p (cfun)
   27011              :    && !reg_mentioned_p (operands[0], operands[1]))))
   27012              :                 return NULL;
   27013              :               return gen_split_895 (insn, operands);
   27014              : 
   27015              :             default:
   27016              :               return NULL;
   27017              :             }
   27018              : 
   27019              :         case UNSPEC:
   27020              :           if (XVECLEN (x3, 0) != 1)
   27021              :             return NULL;
   27022              :           x6 = XVECEXP (x1, 0, 1);
   27023              :           if (pattern237 (x6, 
   27024              : E_CCmode, 
   27025              : 17) != 0)
   27026              :             return NULL;
   27027              :           x4 = XEXP (x2, 0);
   27028              :           operands[0] = x4;
   27029              :           x20 = XVECEXP (x3, 0, 0);
   27030              :           operands[1] = x20;
   27031              :           switch (XINT (x3, 1))
   27032              :             {
   27033              :             case 98:
   27034              :               switch (pattern1349 (x3))
   27035              :                 {
   27036              :                 case 0:
   27037              :                   if (!(
   27038              : #line 22653 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   27039              : (TARGET_BMI) && 
   27040              : #line 22694 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   27041              : ( TARGET_AVOID_FALSE_DEP_FOR_BMI && epilogue_completed
   27042              :    && optimize_function_for_speed_p (cfun)
   27043              :    && !reg_mentioned_p (operands[0], operands[1]))))
   27044              :                     return NULL;
   27045              :                   return gen_split_902 (insn, operands);
   27046              : 
   27047              :                 case 1:
   27048              :                   if (!((((
   27049              : #line 1198 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   27050              : (TARGET_64BIT) && 
   27051              : #line 22653 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   27052              : (TARGET_BMI)) && 
   27053              : #line 1198 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   27054              : (TARGET_64BIT)) && 
   27055              : #line 22653 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   27056              : (TARGET_BMI)) && 
   27057              : #line 22694 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   27058              : ( TARGET_AVOID_FALSE_DEP_FOR_BMI && epilogue_completed
   27059              :    && optimize_function_for_speed_p (cfun)
   27060              :    && !reg_mentioned_p (operands[0], operands[1]))))
   27061              :                     return NULL;
   27062              :                   return gen_split_904 (insn, operands);
   27063              : 
   27064              :                 default:
   27065              :                   return NULL;
   27066              :                 }
   27067              : 
   27068              :             case 97:
   27069              :               switch (pattern1349 (x3))
   27070              :                 {
   27071              :                 case 0:
   27072              :                   if (!(
   27073              : #line 22654 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   27074              : (TARGET_LZCNT) && 
   27075              : #line 22694 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   27076              : ( TARGET_AVOID_FALSE_DEP_FOR_BMI && epilogue_completed
   27077              :    && optimize_function_for_speed_p (cfun)
   27078              :    && !reg_mentioned_p (operands[0], operands[1]))))
   27079              :                     return NULL;
   27080              :                   return gen_split_903 (insn, operands);
   27081              : 
   27082              :                 case 1:
   27083              :                   if (!((((
   27084              : #line 1198 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   27085              : (TARGET_64BIT) && 
   27086              : #line 22654 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   27087              : (TARGET_LZCNT)) && 
   27088              : #line 1198 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   27089              : (TARGET_64BIT)) && 
   27090              : #line 22654 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   27091              : (TARGET_LZCNT)) && 
   27092              : #line 22694 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   27093              : ( TARGET_AVOID_FALSE_DEP_FOR_BMI && epilogue_completed
   27094              :    && optimize_function_for_speed_p (cfun)
   27095              :    && !reg_mentioned_p (operands[0], operands[1]))))
   27096              :                     return NULL;
   27097              :                   return gen_split_905 (insn, operands);
   27098              : 
   27099              :                 default:
   27100              :                   return NULL;
   27101              :                 }
   27102              : 
   27103              :             default:
   27104              :               return NULL;
   27105              :             }
   27106              : 
   27107              :         case POPCOUNT:
   27108              :           x6 = XVECEXP (x1, 0, 1);
   27109              :           if (pattern357 (x6) != 0)
   27110              :             return NULL;
   27111              :           x4 = XEXP (x2, 0);
   27112              :           operands[0] = x4;
   27113              :           x9 = XEXP (x3, 0);
   27114              :           switch (GET_CODE (x9))
   27115              :             {
   27116              :             case REG:
   27117              :             case SUBREG:
   27118              :             case MEM:
   27119              :               operands[1] = x9;
   27120              :               switch (pattern410 (x3))
   27121              :                 {
   27122              :                 case 0:
   27123              :                   if (!(
   27124              : #line 23338 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   27125              : (TARGET_POPCNT) && 
   27126              : #line 23346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   27127              : ( TARGET_AVOID_FALSE_DEP_FOR_BMI && epilogue_completed
   27128              :    && optimize_function_for_speed_p (cfun)
   27129              :    && !reg_mentioned_p (operands[0], operands[1]))))
   27130              :                     return NULL;
   27131              :                   return gen_split_918 (insn, operands);
   27132              : 
   27133              :                 case 1:
   27134              :                   if (!((
   27135              : #line 23338 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   27136              : (TARGET_POPCNT) && 
   27137              : #line 1198 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   27138              : (TARGET_64BIT)) && 
   27139              : #line 23346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   27140              : ( TARGET_AVOID_FALSE_DEP_FOR_BMI && epilogue_completed
   27141              :    && optimize_function_for_speed_p (cfun)
   27142              :    && !reg_mentioned_p (operands[0], operands[1]))))
   27143              :                     return NULL;
   27144              :                   return gen_split_919 (insn, operands);
   27145              : 
   27146              :                 default:
   27147              :                   return NULL;
   27148              :                 }
   27149              : 
   27150              :             case ZERO_EXTEND:
   27151              :               if (pattern1187 (x3, 
   27152              : E_HImode, 
   27153              : E_SImode) != 0
   27154              :                   || !(
   27155              : #line 23508 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   27156              : (TARGET_POPCNT
   27157              :    && ix86_pre_reload_split ()) && 
   27158              : #line 23511 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   27159              : ( 1)))
   27160              :                 return NULL;
   27161              :               return gen_split_922 (insn, operands);
   27162              : 
   27163              :             default:
   27164              :               return NULL;
   27165              :             }
   27166              : 
   27167              :         default:
   27168              :           return NULL;
   27169              :         }
   27170              : 
   27171              :     case SIMPLE_RETURN:
   27172              :       x6 = XVECEXP (x1, 0, 1);
   27173              :       if (GET_CODE (x6) != USE)
   27174              :         return NULL;
   27175              :       x21 = XEXP (x6, 0);
   27176              :       operands[0] = x21;
   27177              :       if (!const_int_operand (operands[0], E_SImode)
   27178              :           || !(
   27179              : #line 21668 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   27180              : (reload_completed) && 
   27181              : #line 21670 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   27182              : ( cfun->machine->function_return_type != indirect_branch_keep)))
   27183              :         return NULL;
   27184              :       return gen_split_872 (insn, operands);
   27185              : 
   27186              :     default:
   27187              :       return NULL;
   27188              :     }
   27189              : }
   27190              : 
   27191              :  rtx_insn *
   27192              : split_67 (rtx x1 ATTRIBUTE_UNUSED, rtx_insn *insn ATTRIBUTE_UNUSED)
   27193              : {
   27194              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   27195              :   rtx x2, x3, x4;
   27196              :   rtx_insn *res ATTRIBUTE_UNUSED;
   27197              :   x2 = XEXP (x1, 1);
   27198              :   x3 = XEXP (x2, 0);
   27199              :   x4 = XEXP (x3, 0);
   27200              :   switch (GET_CODE (x4))
   27201              :     {
   27202              :     case REG:
   27203              :     case SUBREG:
   27204              :     case MEM:
   27205              :     case NOT:
   27206              :       switch (pattern537 (x2))
   27207              :         {
   27208              :         case 0:
   27209              :           if (!((
   27210              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27211              : ((64 == 64 || TARGET_AVX512VL
   27212              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27213              :    && ix86_pre_reload_split ()
   27214              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27215              :                     STRIP_UNARY (operands[4]))
   27216              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27217              :                        STRIP_UNARY (operands[4]))
   27218              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27219              :                        STRIP_UNARY (operands[3]))
   27220              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27221              :                        STRIP_UNARY (operands[3])))) && 
   27222              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27223              : (TARGET_AVX512F)) && 
   27224              : #line 14190 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27225              : ( 1)))
   27226              :             return NULL;
   27227              :           return gen_split_1750 (insn, operands);
   27228              : 
   27229              :         case 1:
   27230              :           if (!((
   27231              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27232              : ((32 == 64 || TARGET_AVX512VL
   27233              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27234              :    && ix86_pre_reload_split ()
   27235              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27236              :                     STRIP_UNARY (operands[4]))
   27237              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27238              :                        STRIP_UNARY (operands[4]))
   27239              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27240              :                        STRIP_UNARY (operands[3]))
   27241              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27242              :                        STRIP_UNARY (operands[3])))) && 
   27243              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27244              : (TARGET_AVX)) && 
   27245              : #line 14190 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27246              : ( 1)))
   27247              :             return NULL;
   27248              :           return gen_split_1777 (insn, operands);
   27249              : 
   27250              :         case 2:
   27251              :           if (!(
   27252              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27253              : ((16 == 64 || TARGET_AVX512VL
   27254              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27255              :    && ix86_pre_reload_split ()
   27256              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27257              :                     STRIP_UNARY (operands[4]))
   27258              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27259              :                        STRIP_UNARY (operands[4]))
   27260              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27261              :                        STRIP_UNARY (operands[3]))
   27262              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27263              :                        STRIP_UNARY (operands[3])))) && 
   27264              : #line 14190 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27265              : ( 1)))
   27266              :             return NULL;
   27267              :           return gen_split_1804 (insn, operands);
   27268              : 
   27269              :         case 3:
   27270              :           if (!((
   27271              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27272              : ((64 == 64 || TARGET_AVX512VL
   27273              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27274              :    && ix86_pre_reload_split ()
   27275              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27276              :                     STRIP_UNARY (operands[4]))
   27277              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27278              :                        STRIP_UNARY (operands[4]))
   27279              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27280              :                        STRIP_UNARY (operands[3]))
   27281              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27282              :                        STRIP_UNARY (operands[3])))) && 
   27283              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27284              : (TARGET_AVX512F)) && 
   27285              : #line 14190 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27286              : ( 1)))
   27287              :             return NULL;
   27288              :           return gen_split_1831 (insn, operands);
   27289              : 
   27290              :         case 4:
   27291              :           if (!((
   27292              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27293              : ((32 == 64 || TARGET_AVX512VL
   27294              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27295              :    && ix86_pre_reload_split ()
   27296              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27297              :                     STRIP_UNARY (operands[4]))
   27298              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27299              :                        STRIP_UNARY (operands[4]))
   27300              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27301              :                        STRIP_UNARY (operands[3]))
   27302              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27303              :                        STRIP_UNARY (operands[3])))) && 
   27304              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27305              : (TARGET_AVX)) && 
   27306              : #line 14190 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27307              : ( 1)))
   27308              :             return NULL;
   27309              :           return gen_split_1858 (insn, operands);
   27310              : 
   27311              :         case 5:
   27312              :           if (!(
   27313              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27314              : ((16 == 64 || TARGET_AVX512VL
   27315              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27316              :    && ix86_pre_reload_split ()
   27317              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27318              :                     STRIP_UNARY (operands[4]))
   27319              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27320              :                        STRIP_UNARY (operands[4]))
   27321              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27322              :                        STRIP_UNARY (operands[3]))
   27323              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27324              :                        STRIP_UNARY (operands[3])))) && 
   27325              : #line 14190 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27326              : ( 1)))
   27327              :             return NULL;
   27328              :           return gen_split_1885 (insn, operands);
   27329              : 
   27330              :         case 6:
   27331              :           if (!((
   27332              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27333              : ((64 == 64 || TARGET_AVX512VL
   27334              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27335              :    && ix86_pre_reload_split ()
   27336              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27337              :                     STRIP_UNARY (operands[4]))
   27338              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27339              :                        STRIP_UNARY (operands[4]))
   27340              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27341              :                        STRIP_UNARY (operands[3]))
   27342              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27343              :                        STRIP_UNARY (operands[3])))) && 
   27344              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27345              : (TARGET_AVX512F)) && 
   27346              : #line 14190 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27347              : ( 1)))
   27348              :             return NULL;
   27349              :           return gen_split_1912 (insn, operands);
   27350              : 
   27351              :         case 7:
   27352              :           if (!((
   27353              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27354              : ((32 == 64 || TARGET_AVX512VL
   27355              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27356              :    && ix86_pre_reload_split ()
   27357              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27358              :                     STRIP_UNARY (operands[4]))
   27359              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27360              :                        STRIP_UNARY (operands[4]))
   27361              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27362              :                        STRIP_UNARY (operands[3]))
   27363              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27364              :                        STRIP_UNARY (operands[3])))) && 
   27365              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27366              : (TARGET_AVX)) && 
   27367              : #line 14190 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27368              : ( 1)))
   27369              :             return NULL;
   27370              :           return gen_split_1939 (insn, operands);
   27371              : 
   27372              :         case 8:
   27373              :           if (!(
   27374              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27375              : ((16 == 64 || TARGET_AVX512VL
   27376              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27377              :    && ix86_pre_reload_split ()
   27378              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27379              :                     STRIP_UNARY (operands[4]))
   27380              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27381              :                        STRIP_UNARY (operands[4]))
   27382              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27383              :                        STRIP_UNARY (operands[3]))
   27384              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27385              :                        STRIP_UNARY (operands[3])))) && 
   27386              : #line 14190 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27387              : ( 1)))
   27388              :             return NULL;
   27389              :           return gen_split_1966 (insn, operands);
   27390              : 
   27391              :         case 9:
   27392              :           if (!((
   27393              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27394              : ((64 == 64 || TARGET_AVX512VL
   27395              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27396              :    && ix86_pre_reload_split ()
   27397              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27398              :                     STRIP_UNARY (operands[4]))
   27399              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27400              :                        STRIP_UNARY (operands[4]))
   27401              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27402              :                        STRIP_UNARY (operands[3]))
   27403              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27404              :                        STRIP_UNARY (operands[3])))) && 
   27405              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27406              : (TARGET_AVX512F)) && 
   27407              : #line 14190 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27408              : ( 1)))
   27409              :             return NULL;
   27410              :           return gen_split_1993 (insn, operands);
   27411              : 
   27412              :         case 10:
   27413              :           if (!((
   27414              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27415              : ((32 == 64 || TARGET_AVX512VL
   27416              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27417              :    && ix86_pre_reload_split ()
   27418              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27419              :                     STRIP_UNARY (operands[4]))
   27420              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27421              :                        STRIP_UNARY (operands[4]))
   27422              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27423              :                        STRIP_UNARY (operands[3]))
   27424              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27425              :                        STRIP_UNARY (operands[3])))) && 
   27426              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27427              : (TARGET_AVX)) && 
   27428              : #line 14190 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27429              : ( 1)))
   27430              :             return NULL;
   27431              :           return gen_split_2020 (insn, operands);
   27432              : 
   27433              :         case 11:
   27434              :           if (!(
   27435              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27436              : ((16 == 64 || TARGET_AVX512VL
   27437              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27438              :    && ix86_pre_reload_split ()
   27439              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27440              :                     STRIP_UNARY (operands[4]))
   27441              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27442              :                        STRIP_UNARY (operands[4]))
   27443              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27444              :                        STRIP_UNARY (operands[3]))
   27445              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27446              :                        STRIP_UNARY (operands[3])))) && 
   27447              : #line 14190 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27448              : ( 1)))
   27449              :             return NULL;
   27450              :           return gen_split_2047 (insn, operands);
   27451              : 
   27452              :         case 12:
   27453              :           if (!((
   27454              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27455              : ((64 == 64 || TARGET_AVX512VL
   27456              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27457              :    && ix86_pre_reload_split ()
   27458              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27459              :                     STRIP_UNARY (operands[4]))
   27460              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27461              :                        STRIP_UNARY (operands[4]))
   27462              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27463              :                        STRIP_UNARY (operands[3]))
   27464              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27465              :                        STRIP_UNARY (operands[3])))) && 
   27466              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27467              : (TARGET_AVX512F)) && 
   27468              : #line 14190 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27469              : ( 1)))
   27470              :             return NULL;
   27471              :           return gen_split_1753 (insn, operands);
   27472              : 
   27473              :         case 13:
   27474              :           if (!((
   27475              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27476              : ((32 == 64 || TARGET_AVX512VL
   27477              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27478              :    && ix86_pre_reload_split ()
   27479              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27480              :                     STRIP_UNARY (operands[4]))
   27481              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27482              :                        STRIP_UNARY (operands[4]))
   27483              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27484              :                        STRIP_UNARY (operands[3]))
   27485              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27486              :                        STRIP_UNARY (operands[3])))) && 
   27487              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27488              : (TARGET_AVX)) && 
   27489              : #line 14190 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27490              : ( 1)))
   27491              :             return NULL;
   27492              :           return gen_split_1780 (insn, operands);
   27493              : 
   27494              :         case 14:
   27495              :           if (!(
   27496              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27497              : ((16 == 64 || TARGET_AVX512VL
   27498              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27499              :    && ix86_pre_reload_split ()
   27500              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27501              :                     STRIP_UNARY (operands[4]))
   27502              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27503              :                        STRIP_UNARY (operands[4]))
   27504              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27505              :                        STRIP_UNARY (operands[3]))
   27506              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27507              :                        STRIP_UNARY (operands[3])))) && 
   27508              : #line 14190 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27509              : ( 1)))
   27510              :             return NULL;
   27511              :           return gen_split_1807 (insn, operands);
   27512              : 
   27513              :         case 15:
   27514              :           if (!((
   27515              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27516              : ((64 == 64 || TARGET_AVX512VL
   27517              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27518              :    && ix86_pre_reload_split ()
   27519              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27520              :                     STRIP_UNARY (operands[4]))
   27521              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27522              :                        STRIP_UNARY (operands[4]))
   27523              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27524              :                        STRIP_UNARY (operands[3]))
   27525              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27526              :                        STRIP_UNARY (operands[3])))) && 
   27527              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27528              : (TARGET_AVX512F)) && 
   27529              : #line 14190 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27530              : ( 1)))
   27531              :             return NULL;
   27532              :           return gen_split_1834 (insn, operands);
   27533              : 
   27534              :         case 16:
   27535              :           if (!((
   27536              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27537              : ((32 == 64 || TARGET_AVX512VL
   27538              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27539              :    && ix86_pre_reload_split ()
   27540              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27541              :                     STRIP_UNARY (operands[4]))
   27542              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27543              :                        STRIP_UNARY (operands[4]))
   27544              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27545              :                        STRIP_UNARY (operands[3]))
   27546              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27547              :                        STRIP_UNARY (operands[3])))) && 
   27548              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27549              : (TARGET_AVX)) && 
   27550              : #line 14190 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27551              : ( 1)))
   27552              :             return NULL;
   27553              :           return gen_split_1861 (insn, operands);
   27554              : 
   27555              :         case 17:
   27556              :           if (!(
   27557              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27558              : ((16 == 64 || TARGET_AVX512VL
   27559              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27560              :    && ix86_pre_reload_split ()
   27561              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27562              :                     STRIP_UNARY (operands[4]))
   27563              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27564              :                        STRIP_UNARY (operands[4]))
   27565              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27566              :                        STRIP_UNARY (operands[3]))
   27567              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27568              :                        STRIP_UNARY (operands[3])))) && 
   27569              : #line 14190 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27570              : ( 1)))
   27571              :             return NULL;
   27572              :           return gen_split_1888 (insn, operands);
   27573              : 
   27574              :         case 18:
   27575              :           if (!((
   27576              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27577              : ((64 == 64 || TARGET_AVX512VL
   27578              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27579              :    && ix86_pre_reload_split ()
   27580              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27581              :                     STRIP_UNARY (operands[4]))
   27582              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27583              :                        STRIP_UNARY (operands[4]))
   27584              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27585              :                        STRIP_UNARY (operands[3]))
   27586              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27587              :                        STRIP_UNARY (operands[3])))) && 
   27588              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27589              : (TARGET_AVX512F)) && 
   27590              : #line 14190 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27591              : ( 1)))
   27592              :             return NULL;
   27593              :           return gen_split_1915 (insn, operands);
   27594              : 
   27595              :         case 19:
   27596              :           if (!((
   27597              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27598              : ((32 == 64 || TARGET_AVX512VL
   27599              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27600              :    && ix86_pre_reload_split ()
   27601              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27602              :                     STRIP_UNARY (operands[4]))
   27603              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27604              :                        STRIP_UNARY (operands[4]))
   27605              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27606              :                        STRIP_UNARY (operands[3]))
   27607              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27608              :                        STRIP_UNARY (operands[3])))) && 
   27609              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27610              : (TARGET_AVX)) && 
   27611              : #line 14190 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27612              : ( 1)))
   27613              :             return NULL;
   27614              :           return gen_split_1942 (insn, operands);
   27615              : 
   27616              :         case 20:
   27617              :           if (!(
   27618              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27619              : ((16 == 64 || TARGET_AVX512VL
   27620              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27621              :    && ix86_pre_reload_split ()
   27622              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27623              :                     STRIP_UNARY (operands[4]))
   27624              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27625              :                        STRIP_UNARY (operands[4]))
   27626              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27627              :                        STRIP_UNARY (operands[3]))
   27628              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27629              :                        STRIP_UNARY (operands[3])))) && 
   27630              : #line 14190 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27631              : ( 1)))
   27632              :             return NULL;
   27633              :           return gen_split_1969 (insn, operands);
   27634              : 
   27635              :         case 21:
   27636              :           if (!((
   27637              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27638              : ((64 == 64 || TARGET_AVX512VL
   27639              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27640              :    && ix86_pre_reload_split ()
   27641              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27642              :                     STRIP_UNARY (operands[4]))
   27643              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27644              :                        STRIP_UNARY (operands[4]))
   27645              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27646              :                        STRIP_UNARY (operands[3]))
   27647              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27648              :                        STRIP_UNARY (operands[3])))) && 
   27649              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27650              : (TARGET_AVX512F)) && 
   27651              : #line 14190 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27652              : ( 1)))
   27653              :             return NULL;
   27654              :           return gen_split_1996 (insn, operands);
   27655              : 
   27656              :         case 22:
   27657              :           if (!((
   27658              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27659              : ((32 == 64 || TARGET_AVX512VL
   27660              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27661              :    && ix86_pre_reload_split ()
   27662              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27663              :                     STRIP_UNARY (operands[4]))
   27664              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27665              :                        STRIP_UNARY (operands[4]))
   27666              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27667              :                        STRIP_UNARY (operands[3]))
   27668              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27669              :                        STRIP_UNARY (operands[3])))) && 
   27670              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27671              : (TARGET_AVX)) && 
   27672              : #line 14190 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27673              : ( 1)))
   27674              :             return NULL;
   27675              :           return gen_split_2023 (insn, operands);
   27676              : 
   27677              :         case 23:
   27678              :           if (!(
   27679              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27680              : ((16 == 64 || TARGET_AVX512VL
   27681              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27682              :    && ix86_pre_reload_split ()
   27683              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27684              :                     STRIP_UNARY (operands[4]))
   27685              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27686              :                        STRIP_UNARY (operands[4]))
   27687              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27688              :                        STRIP_UNARY (operands[3]))
   27689              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27690              :                        STRIP_UNARY (operands[3])))) && 
   27691              : #line 14190 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27692              : ( 1)))
   27693              :             return NULL;
   27694              :           return gen_split_2050 (insn, operands);
   27695              : 
   27696              :         case 24:
   27697              :           if (!((
   27698              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27699              : ((64 == 64 || TARGET_AVX512VL
   27700              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27701              :    && ix86_pre_reload_split ()
   27702              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27703              :                     STRIP_UNARY (operands[4]))
   27704              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27705              :                        STRIP_UNARY (operands[4]))
   27706              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27707              :                        STRIP_UNARY (operands[3]))
   27708              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27709              :                        STRIP_UNARY (operands[3])))) && 
   27710              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27711              : (TARGET_AVX512F)) && 
   27712              : #line 14190 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27713              : ( 1)))
   27714              :             return NULL;
   27715              :           return gen_split_1756 (insn, operands);
   27716              : 
   27717              :         case 25:
   27718              :           if (!((
   27719              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27720              : ((32 == 64 || TARGET_AVX512VL
   27721              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27722              :    && ix86_pre_reload_split ()
   27723              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27724              :                     STRIP_UNARY (operands[4]))
   27725              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27726              :                        STRIP_UNARY (operands[4]))
   27727              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27728              :                        STRIP_UNARY (operands[3]))
   27729              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27730              :                        STRIP_UNARY (operands[3])))) && 
   27731              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27732              : (TARGET_AVX)) && 
   27733              : #line 14190 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27734              : ( 1)))
   27735              :             return NULL;
   27736              :           return gen_split_1783 (insn, operands);
   27737              : 
   27738              :         case 26:
   27739              :           if (!(
   27740              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27741              : ((16 == 64 || TARGET_AVX512VL
   27742              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27743              :    && ix86_pre_reload_split ()
   27744              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27745              :                     STRIP_UNARY (operands[4]))
   27746              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27747              :                        STRIP_UNARY (operands[4]))
   27748              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27749              :                        STRIP_UNARY (operands[3]))
   27750              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27751              :                        STRIP_UNARY (operands[3])))) && 
   27752              : #line 14190 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27753              : ( 1)))
   27754              :             return NULL;
   27755              :           return gen_split_1810 (insn, operands);
   27756              : 
   27757              :         case 27:
   27758              :           if (!((
   27759              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27760              : ((64 == 64 || TARGET_AVX512VL
   27761              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27762              :    && ix86_pre_reload_split ()
   27763              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27764              :                     STRIP_UNARY (operands[4]))
   27765              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27766              :                        STRIP_UNARY (operands[4]))
   27767              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27768              :                        STRIP_UNARY (operands[3]))
   27769              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27770              :                        STRIP_UNARY (operands[3])))) && 
   27771              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27772              : (TARGET_AVX512F)) && 
   27773              : #line 14190 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27774              : ( 1)))
   27775              :             return NULL;
   27776              :           return gen_split_1837 (insn, operands);
   27777              : 
   27778              :         case 28:
   27779              :           if (!((
   27780              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27781              : ((32 == 64 || TARGET_AVX512VL
   27782              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27783              :    && ix86_pre_reload_split ()
   27784              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27785              :                     STRIP_UNARY (operands[4]))
   27786              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27787              :                        STRIP_UNARY (operands[4]))
   27788              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27789              :                        STRIP_UNARY (operands[3]))
   27790              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27791              :                        STRIP_UNARY (operands[3])))) && 
   27792              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27793              : (TARGET_AVX)) && 
   27794              : #line 14190 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27795              : ( 1)))
   27796              :             return NULL;
   27797              :           return gen_split_1864 (insn, operands);
   27798              : 
   27799              :         case 29:
   27800              :           if (!(
   27801              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27802              : ((16 == 64 || TARGET_AVX512VL
   27803              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27804              :    && ix86_pre_reload_split ()
   27805              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27806              :                     STRIP_UNARY (operands[4]))
   27807              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27808              :                        STRIP_UNARY (operands[4]))
   27809              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27810              :                        STRIP_UNARY (operands[3]))
   27811              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27812              :                        STRIP_UNARY (operands[3])))) && 
   27813              : #line 14190 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27814              : ( 1)))
   27815              :             return NULL;
   27816              :           return gen_split_1891 (insn, operands);
   27817              : 
   27818              :         case 30:
   27819              :           if (!((
   27820              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27821              : ((64 == 64 || TARGET_AVX512VL
   27822              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27823              :    && ix86_pre_reload_split ()
   27824              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27825              :                     STRIP_UNARY (operands[4]))
   27826              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27827              :                        STRIP_UNARY (operands[4]))
   27828              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27829              :                        STRIP_UNARY (operands[3]))
   27830              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27831              :                        STRIP_UNARY (operands[3])))) && 
   27832              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27833              : (TARGET_AVX512F)) && 
   27834              : #line 14190 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27835              : ( 1)))
   27836              :             return NULL;
   27837              :           return gen_split_1918 (insn, operands);
   27838              : 
   27839              :         case 31:
   27840              :           if (!((
   27841              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27842              : ((32 == 64 || TARGET_AVX512VL
   27843              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27844              :    && ix86_pre_reload_split ()
   27845              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27846              :                     STRIP_UNARY (operands[4]))
   27847              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27848              :                        STRIP_UNARY (operands[4]))
   27849              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27850              :                        STRIP_UNARY (operands[3]))
   27851              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27852              :                        STRIP_UNARY (operands[3])))) && 
   27853              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27854              : (TARGET_AVX)) && 
   27855              : #line 14190 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27856              : ( 1)))
   27857              :             return NULL;
   27858              :           return gen_split_1945 (insn, operands);
   27859              : 
   27860              :         case 32:
   27861              :           if (!(
   27862              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27863              : ((16 == 64 || TARGET_AVX512VL
   27864              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27865              :    && ix86_pre_reload_split ()
   27866              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27867              :                     STRIP_UNARY (operands[4]))
   27868              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27869              :                        STRIP_UNARY (operands[4]))
   27870              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27871              :                        STRIP_UNARY (operands[3]))
   27872              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27873              :                        STRIP_UNARY (operands[3])))) && 
   27874              : #line 14190 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27875              : ( 1)))
   27876              :             return NULL;
   27877              :           return gen_split_1972 (insn, operands);
   27878              : 
   27879              :         case 33:
   27880              :           if (!((
   27881              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27882              : ((64 == 64 || TARGET_AVX512VL
   27883              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27884              :    && ix86_pre_reload_split ()
   27885              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27886              :                     STRIP_UNARY (operands[4]))
   27887              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27888              :                        STRIP_UNARY (operands[4]))
   27889              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27890              :                        STRIP_UNARY (operands[3]))
   27891              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27892              :                        STRIP_UNARY (operands[3])))) && 
   27893              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27894              : (TARGET_AVX512F)) && 
   27895              : #line 14190 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27896              : ( 1)))
   27897              :             return NULL;
   27898              :           return gen_split_1999 (insn, operands);
   27899              : 
   27900              :         case 34:
   27901              :           if (!((
   27902              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27903              : ((32 == 64 || TARGET_AVX512VL
   27904              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27905              :    && ix86_pre_reload_split ()
   27906              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27907              :                     STRIP_UNARY (operands[4]))
   27908              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27909              :                        STRIP_UNARY (operands[4]))
   27910              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27911              :                        STRIP_UNARY (operands[3]))
   27912              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27913              :                        STRIP_UNARY (operands[3])))) && 
   27914              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27915              : (TARGET_AVX)) && 
   27916              : #line 14190 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27917              : ( 1)))
   27918              :             return NULL;
   27919              :           return gen_split_2026 (insn, operands);
   27920              : 
   27921              :         case 35:
   27922              :           if (!(
   27923              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27924              : ((16 == 64 || TARGET_AVX512VL
   27925              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27926              :    && ix86_pre_reload_split ()
   27927              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27928              :                     STRIP_UNARY (operands[4]))
   27929              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27930              :                        STRIP_UNARY (operands[4]))
   27931              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27932              :                        STRIP_UNARY (operands[3]))
   27933              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27934              :                        STRIP_UNARY (operands[3])))) && 
   27935              : #line 14190 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27936              : ( 1)))
   27937              :             return NULL;
   27938              :           return gen_split_2053 (insn, operands);
   27939              : 
   27940              :         case 36:
   27941              :           if (!((
   27942              : #line 14347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27943              : ((64 == 64 || TARGET_AVX512VL
   27944              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27945              :    && ix86_pre_reload_split ()) && 
   27946              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27947              : (TARGET_AVX512F)) && 
   27948              : #line 14351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27949              : ( 1)))
   27950              :             return NULL;
   27951              :           return gen_split_3040 (insn, operands);
   27952              : 
   27953              :         case 37:
   27954              :           if (!((
   27955              : #line 14347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27956              : ((32 == 64 || TARGET_AVX512VL
   27957              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27958              :    && ix86_pre_reload_split ()) && 
   27959              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27960              : (TARGET_AVX)) && 
   27961              : #line 14351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27962              : ( 1)))
   27963              :             return NULL;
   27964              :           return gen_split_3049 (insn, operands);
   27965              : 
   27966              :         case 38:
   27967              :           if (!(
   27968              : #line 14347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27969              : ((16 == 64 || TARGET_AVX512VL
   27970              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27971              :    && ix86_pre_reload_split ()) && 
   27972              : #line 14351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27973              : ( 1)))
   27974              :             return NULL;
   27975              :           return gen_split_3058 (insn, operands);
   27976              : 
   27977              :         case 39:
   27978              :           if (!((
   27979              : #line 14347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27980              : ((64 == 64 || TARGET_AVX512VL
   27981              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27982              :    && ix86_pre_reload_split ()) && 
   27983              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27984              : (TARGET_AVX512F)) && 
   27985              : #line 14351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27986              : ( 1)))
   27987              :             return NULL;
   27988              :           return gen_split_3067 (insn, operands);
   27989              : 
   27990              :         case 40:
   27991              :           if (!((
   27992              : #line 14347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27993              : ((32 == 64 || TARGET_AVX512VL
   27994              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27995              :    && ix86_pre_reload_split ()) && 
   27996              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27997              : (TARGET_AVX)) && 
   27998              : #line 14351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27999              : ( 1)))
   28000              :             return NULL;
   28001              :           return gen_split_3076 (insn, operands);
   28002              : 
   28003              :         case 41:
   28004              :           if (!(
   28005              : #line 14347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28006              : ((16 == 64 || TARGET_AVX512VL
   28007              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28008              :    && ix86_pre_reload_split ()) && 
   28009              : #line 14351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28010              : ( 1)))
   28011              :             return NULL;
   28012              :           return gen_split_3085 (insn, operands);
   28013              : 
   28014              :         case 42:
   28015              :           if (!((
   28016              : #line 14347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28017              : ((64 == 64 || TARGET_AVX512VL
   28018              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28019              :    && ix86_pre_reload_split ()) && 
   28020              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28021              : (TARGET_AVX512F)) && 
   28022              : #line 14351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28023              : ( 1)))
   28024              :             return NULL;
   28025              :           return gen_split_3094 (insn, operands);
   28026              : 
   28027              :         case 43:
   28028              :           if (!((
   28029              : #line 14347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28030              : ((32 == 64 || TARGET_AVX512VL
   28031              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28032              :    && ix86_pre_reload_split ()) && 
   28033              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28034              : (TARGET_AVX)) && 
   28035              : #line 14351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28036              : ( 1)))
   28037              :             return NULL;
   28038              :           return gen_split_3103 (insn, operands);
   28039              : 
   28040              :         case 44:
   28041              :           if (!(
   28042              : #line 14347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28043              : ((16 == 64 || TARGET_AVX512VL
   28044              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28045              :    && ix86_pre_reload_split ()) && 
   28046              : #line 14351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28047              : ( 1)))
   28048              :             return NULL;
   28049              :           return gen_split_3112 (insn, operands);
   28050              : 
   28051              :         case 45:
   28052              :           if (!((
   28053              : #line 14347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28054              : ((64 == 64 || TARGET_AVX512VL
   28055              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28056              :    && ix86_pre_reload_split ()) && 
   28057              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28058              : (TARGET_AVX512F)) && 
   28059              : #line 14351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28060              : ( 1)))
   28061              :             return NULL;
   28062              :           return gen_split_3121 (insn, operands);
   28063              : 
   28064              :         case 46:
   28065              :           if (!((
   28066              : #line 14347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28067              : ((32 == 64 || TARGET_AVX512VL
   28068              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28069              :    && ix86_pre_reload_split ()) && 
   28070              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28071              : (TARGET_AVX)) && 
   28072              : #line 14351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28073              : ( 1)))
   28074              :             return NULL;
   28075              :           return gen_split_3130 (insn, operands);
   28076              : 
   28077              :         case 47:
   28078              :           if (!(
   28079              : #line 14347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28080              : ((16 == 64 || TARGET_AVX512VL
   28081              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28082              :    && ix86_pre_reload_split ()) && 
   28083              : #line 14351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28084              : ( 1)))
   28085              :             return NULL;
   28086              :           return gen_split_3139 (insn, operands);
   28087              : 
   28088              :         default:
   28089              :           return NULL;
   28090              :         }
   28091              : 
   28092              :     case AND:
   28093              :       switch (pattern539 (x2))
   28094              :         {
   28095              :         case 0:
   28096              :           if (!((
   28097              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28098              : ((64 == 64 || TARGET_AVX512VL
   28099              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28100              :    && ix86_pre_reload_split ()
   28101              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28102              :                     STRIP_UNARY (operands[4]))
   28103              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28104              :                        STRIP_UNARY (operands[4]))
   28105              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28106              :                        STRIP_UNARY (operands[3]))
   28107              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28108              :                        STRIP_UNARY (operands[3])))) && 
   28109              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28110              : (TARGET_AVX512F)) && 
   28111              : #line 14275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28112              : ( 1)))
   28113              :             return NULL;
   28114              :           return gen_split_2398 (insn, operands);
   28115              : 
   28116              :         case 1:
   28117              :           if (!((
   28118              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28119              : ((32 == 64 || TARGET_AVX512VL
   28120              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28121              :    && ix86_pre_reload_split ()
   28122              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28123              :                     STRIP_UNARY (operands[4]))
   28124              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28125              :                        STRIP_UNARY (operands[4]))
   28126              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28127              :                        STRIP_UNARY (operands[3]))
   28128              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28129              :                        STRIP_UNARY (operands[3])))) && 
   28130              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28131              : (TARGET_AVX)) && 
   28132              : #line 14275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28133              : ( 1)))
   28134              :             return NULL;
   28135              :           return gen_split_2425 (insn, operands);
   28136              : 
   28137              :         case 2:
   28138              :           if (!(
   28139              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28140              : ((16 == 64 || TARGET_AVX512VL
   28141              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28142              :    && ix86_pre_reload_split ()
   28143              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28144              :                     STRIP_UNARY (operands[4]))
   28145              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28146              :                        STRIP_UNARY (operands[4]))
   28147              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28148              :                        STRIP_UNARY (operands[3]))
   28149              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28150              :                        STRIP_UNARY (operands[3])))) && 
   28151              : #line 14275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28152              : ( 1)))
   28153              :             return NULL;
   28154              :           return gen_split_2452 (insn, operands);
   28155              : 
   28156              :         case 3:
   28157              :           if (!((
   28158              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28159              : ((64 == 64 || TARGET_AVX512VL
   28160              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28161              :    && ix86_pre_reload_split ()
   28162              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28163              :                     STRIP_UNARY (operands[4]))
   28164              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28165              :                        STRIP_UNARY (operands[4]))
   28166              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28167              :                        STRIP_UNARY (operands[3]))
   28168              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28169              :                        STRIP_UNARY (operands[3])))) && 
   28170              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28171              : (TARGET_AVX512F)) && 
   28172              : #line 14275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28173              : ( 1)))
   28174              :             return NULL;
   28175              :           return gen_split_2479 (insn, operands);
   28176              : 
   28177              :         case 4:
   28178              :           if (!((
   28179              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28180              : ((32 == 64 || TARGET_AVX512VL
   28181              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28182              :    && ix86_pre_reload_split ()
   28183              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28184              :                     STRIP_UNARY (operands[4]))
   28185              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28186              :                        STRIP_UNARY (operands[4]))
   28187              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28188              :                        STRIP_UNARY (operands[3]))
   28189              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28190              :                        STRIP_UNARY (operands[3])))) && 
   28191              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28192              : (TARGET_AVX)) && 
   28193              : #line 14275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28194              : ( 1)))
   28195              :             return NULL;
   28196              :           return gen_split_2506 (insn, operands);
   28197              : 
   28198              :         case 5:
   28199              :           if (!(
   28200              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28201              : ((16 == 64 || TARGET_AVX512VL
   28202              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28203              :    && ix86_pre_reload_split ()
   28204              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28205              :                     STRIP_UNARY (operands[4]))
   28206              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28207              :                        STRIP_UNARY (operands[4]))
   28208              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28209              :                        STRIP_UNARY (operands[3]))
   28210              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28211              :                        STRIP_UNARY (operands[3])))) && 
   28212              : #line 14275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28213              : ( 1)))
   28214              :             return NULL;
   28215              :           return gen_split_2533 (insn, operands);
   28216              : 
   28217              :         case 6:
   28218              :           if (!((
   28219              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28220              : ((64 == 64 || TARGET_AVX512VL
   28221              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28222              :    && ix86_pre_reload_split ()
   28223              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28224              :                     STRIP_UNARY (operands[4]))
   28225              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28226              :                        STRIP_UNARY (operands[4]))
   28227              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28228              :                        STRIP_UNARY (operands[3]))
   28229              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28230              :                        STRIP_UNARY (operands[3])))) && 
   28231              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28232              : (TARGET_AVX512F)) && 
   28233              : #line 14275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28234              : ( 1)))
   28235              :             return NULL;
   28236              :           return gen_split_2560 (insn, operands);
   28237              : 
   28238              :         case 7:
   28239              :           if (!((
   28240              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28241              : ((32 == 64 || TARGET_AVX512VL
   28242              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28243              :    && ix86_pre_reload_split ()
   28244              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28245              :                     STRIP_UNARY (operands[4]))
   28246              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28247              :                        STRIP_UNARY (operands[4]))
   28248              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28249              :                        STRIP_UNARY (operands[3]))
   28250              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28251              :                        STRIP_UNARY (operands[3])))) && 
   28252              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28253              : (TARGET_AVX)) && 
   28254              : #line 14275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28255              : ( 1)))
   28256              :             return NULL;
   28257              :           return gen_split_2587 (insn, operands);
   28258              : 
   28259              :         case 8:
   28260              :           if (!(
   28261              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28262              : ((16 == 64 || TARGET_AVX512VL
   28263              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28264              :    && ix86_pre_reload_split ()
   28265              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28266              :                     STRIP_UNARY (operands[4]))
   28267              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28268              :                        STRIP_UNARY (operands[4]))
   28269              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28270              :                        STRIP_UNARY (operands[3]))
   28271              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28272              :                        STRIP_UNARY (operands[3])))) && 
   28273              : #line 14275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28274              : ( 1)))
   28275              :             return NULL;
   28276              :           return gen_split_2614 (insn, operands);
   28277              : 
   28278              :         case 9:
   28279              :           if (!((
   28280              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28281              : ((64 == 64 || TARGET_AVX512VL
   28282              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28283              :    && ix86_pre_reload_split ()
   28284              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28285              :                     STRIP_UNARY (operands[4]))
   28286              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28287              :                        STRIP_UNARY (operands[4]))
   28288              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28289              :                        STRIP_UNARY (operands[3]))
   28290              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28291              :                        STRIP_UNARY (operands[3])))) && 
   28292              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28293              : (TARGET_AVX512F)) && 
   28294              : #line 14275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28295              : ( 1)))
   28296              :             return NULL;
   28297              :           return gen_split_2641 (insn, operands);
   28298              : 
   28299              :         case 10:
   28300              :           if (!((
   28301              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28302              : ((32 == 64 || TARGET_AVX512VL
   28303              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28304              :    && ix86_pre_reload_split ()
   28305              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28306              :                     STRIP_UNARY (operands[4]))
   28307              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28308              :                        STRIP_UNARY (operands[4]))
   28309              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28310              :                        STRIP_UNARY (operands[3]))
   28311              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28312              :                        STRIP_UNARY (operands[3])))) && 
   28313              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28314              : (TARGET_AVX)) && 
   28315              : #line 14275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28316              : ( 1)))
   28317              :             return NULL;
   28318              :           return gen_split_2668 (insn, operands);
   28319              : 
   28320              :         case 11:
   28321              :           if (!(
   28322              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28323              : ((16 == 64 || TARGET_AVX512VL
   28324              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28325              :    && ix86_pre_reload_split ()
   28326              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28327              :                     STRIP_UNARY (operands[4]))
   28328              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28329              :                        STRIP_UNARY (operands[4]))
   28330              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28331              :                        STRIP_UNARY (operands[3]))
   28332              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28333              :                        STRIP_UNARY (operands[3])))) && 
   28334              : #line 14275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28335              : ( 1)))
   28336              :             return NULL;
   28337              :           return gen_split_2695 (insn, operands);
   28338              : 
   28339              :         default:
   28340              :           return NULL;
   28341              :         }
   28342              : 
   28343              :     case IOR:
   28344              :       switch (pattern539 (x2))
   28345              :         {
   28346              :         case 0:
   28347              :           if (!((
   28348              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28349              : ((64 == 64 || TARGET_AVX512VL
   28350              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28351              :    && ix86_pre_reload_split ()
   28352              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28353              :                     STRIP_UNARY (operands[4]))
   28354              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28355              :                        STRIP_UNARY (operands[4]))
   28356              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28357              :                        STRIP_UNARY (operands[3]))
   28358              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28359              :                        STRIP_UNARY (operands[3])))) && 
   28360              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28361              : (TARGET_AVX512F)) && 
   28362              : #line 14275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28363              : ( 1)))
   28364              :             return NULL;
   28365              :           return gen_split_2401 (insn, operands);
   28366              : 
   28367              :         case 1:
   28368              :           if (!((
   28369              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28370              : ((32 == 64 || TARGET_AVX512VL
   28371              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28372              :    && ix86_pre_reload_split ()
   28373              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28374              :                     STRIP_UNARY (operands[4]))
   28375              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28376              :                        STRIP_UNARY (operands[4]))
   28377              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28378              :                        STRIP_UNARY (operands[3]))
   28379              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28380              :                        STRIP_UNARY (operands[3])))) && 
   28381              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28382              : (TARGET_AVX)) && 
   28383              : #line 14275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28384              : ( 1)))
   28385              :             return NULL;
   28386              :           return gen_split_2428 (insn, operands);
   28387              : 
   28388              :         case 2:
   28389              :           if (!(
   28390              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28391              : ((16 == 64 || TARGET_AVX512VL
   28392              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28393              :    && ix86_pre_reload_split ()
   28394              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28395              :                     STRIP_UNARY (operands[4]))
   28396              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28397              :                        STRIP_UNARY (operands[4]))
   28398              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28399              :                        STRIP_UNARY (operands[3]))
   28400              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28401              :                        STRIP_UNARY (operands[3])))) && 
   28402              : #line 14275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28403              : ( 1)))
   28404              :             return NULL;
   28405              :           return gen_split_2455 (insn, operands);
   28406              : 
   28407              :         case 3:
   28408              :           if (!((
   28409              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28410              : ((64 == 64 || TARGET_AVX512VL
   28411              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28412              :    && ix86_pre_reload_split ()
   28413              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28414              :                     STRIP_UNARY (operands[4]))
   28415              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28416              :                        STRIP_UNARY (operands[4]))
   28417              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28418              :                        STRIP_UNARY (operands[3]))
   28419              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28420              :                        STRIP_UNARY (operands[3])))) && 
   28421              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28422              : (TARGET_AVX512F)) && 
   28423              : #line 14275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28424              : ( 1)))
   28425              :             return NULL;
   28426              :           return gen_split_2482 (insn, operands);
   28427              : 
   28428              :         case 4:
   28429              :           if (!((
   28430              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28431              : ((32 == 64 || TARGET_AVX512VL
   28432              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28433              :    && ix86_pre_reload_split ()
   28434              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28435              :                     STRIP_UNARY (operands[4]))
   28436              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28437              :                        STRIP_UNARY (operands[4]))
   28438              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28439              :                        STRIP_UNARY (operands[3]))
   28440              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28441              :                        STRIP_UNARY (operands[3])))) && 
   28442              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28443              : (TARGET_AVX)) && 
   28444              : #line 14275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28445              : ( 1)))
   28446              :             return NULL;
   28447              :           return gen_split_2509 (insn, operands);
   28448              : 
   28449              :         case 5:
   28450              :           if (!(
   28451              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28452              : ((16 == 64 || TARGET_AVX512VL
   28453              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28454              :    && ix86_pre_reload_split ()
   28455              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28456              :                     STRIP_UNARY (operands[4]))
   28457              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28458              :                        STRIP_UNARY (operands[4]))
   28459              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28460              :                        STRIP_UNARY (operands[3]))
   28461              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28462              :                        STRIP_UNARY (operands[3])))) && 
   28463              : #line 14275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28464              : ( 1)))
   28465              :             return NULL;
   28466              :           return gen_split_2536 (insn, operands);
   28467              : 
   28468              :         case 6:
   28469              :           if (!((
   28470              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28471              : ((64 == 64 || TARGET_AVX512VL
   28472              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28473              :    && ix86_pre_reload_split ()
   28474              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28475              :                     STRIP_UNARY (operands[4]))
   28476              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28477              :                        STRIP_UNARY (operands[4]))
   28478              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28479              :                        STRIP_UNARY (operands[3]))
   28480              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28481              :                        STRIP_UNARY (operands[3])))) && 
   28482              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28483              : (TARGET_AVX512F)) && 
   28484              : #line 14275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28485              : ( 1)))
   28486              :             return NULL;
   28487              :           return gen_split_2563 (insn, operands);
   28488              : 
   28489              :         case 7:
   28490              :           if (!((
   28491              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28492              : ((32 == 64 || TARGET_AVX512VL
   28493              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28494              :    && ix86_pre_reload_split ()
   28495              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28496              :                     STRIP_UNARY (operands[4]))
   28497              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28498              :                        STRIP_UNARY (operands[4]))
   28499              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28500              :                        STRIP_UNARY (operands[3]))
   28501              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28502              :                        STRIP_UNARY (operands[3])))) && 
   28503              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28504              : (TARGET_AVX)) && 
   28505              : #line 14275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28506              : ( 1)))
   28507              :             return NULL;
   28508              :           return gen_split_2590 (insn, operands);
   28509              : 
   28510              :         case 8:
   28511              :           if (!(
   28512              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28513              : ((16 == 64 || TARGET_AVX512VL
   28514              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28515              :    && ix86_pre_reload_split ()
   28516              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28517              :                     STRIP_UNARY (operands[4]))
   28518              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28519              :                        STRIP_UNARY (operands[4]))
   28520              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28521              :                        STRIP_UNARY (operands[3]))
   28522              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28523              :                        STRIP_UNARY (operands[3])))) && 
   28524              : #line 14275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28525              : ( 1)))
   28526              :             return NULL;
   28527              :           return gen_split_2617 (insn, operands);
   28528              : 
   28529              :         case 9:
   28530              :           if (!((
   28531              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28532              : ((64 == 64 || TARGET_AVX512VL
   28533              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28534              :    && ix86_pre_reload_split ()
   28535              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28536              :                     STRIP_UNARY (operands[4]))
   28537              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28538              :                        STRIP_UNARY (operands[4]))
   28539              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28540              :                        STRIP_UNARY (operands[3]))
   28541              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28542              :                        STRIP_UNARY (operands[3])))) && 
   28543              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28544              : (TARGET_AVX512F)) && 
   28545              : #line 14275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28546              : ( 1)))
   28547              :             return NULL;
   28548              :           return gen_split_2644 (insn, operands);
   28549              : 
   28550              :         case 10:
   28551              :           if (!((
   28552              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28553              : ((32 == 64 || TARGET_AVX512VL
   28554              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28555              :    && ix86_pre_reload_split ()
   28556              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28557              :                     STRIP_UNARY (operands[4]))
   28558              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28559              :                        STRIP_UNARY (operands[4]))
   28560              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28561              :                        STRIP_UNARY (operands[3]))
   28562              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28563              :                        STRIP_UNARY (operands[3])))) && 
   28564              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28565              : (TARGET_AVX)) && 
   28566              : #line 14275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28567              : ( 1)))
   28568              :             return NULL;
   28569              :           return gen_split_2671 (insn, operands);
   28570              : 
   28571              :         case 11:
   28572              :           if (!(
   28573              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28574              : ((16 == 64 || TARGET_AVX512VL
   28575              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28576              :    && ix86_pre_reload_split ()
   28577              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28578              :                     STRIP_UNARY (operands[4]))
   28579              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28580              :                        STRIP_UNARY (operands[4]))
   28581              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28582              :                        STRIP_UNARY (operands[3]))
   28583              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28584              :                        STRIP_UNARY (operands[3])))) && 
   28585              : #line 14275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28586              : ( 1)))
   28587              :             return NULL;
   28588              :           return gen_split_2698 (insn, operands);
   28589              : 
   28590              :         default:
   28591              :           return NULL;
   28592              :         }
   28593              : 
   28594              :     case XOR:
   28595              :       switch (pattern539 (x2))
   28596              :         {
   28597              :         case 0:
   28598              :           if (!((
   28599              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28600              : ((64 == 64 || TARGET_AVX512VL
   28601              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28602              :    && ix86_pre_reload_split ()
   28603              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28604              :                     STRIP_UNARY (operands[4]))
   28605              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28606              :                        STRIP_UNARY (operands[4]))
   28607              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28608              :                        STRIP_UNARY (operands[3]))
   28609              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28610              :                        STRIP_UNARY (operands[3])))) && 
   28611              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28612              : (TARGET_AVX512F)) && 
   28613              : #line 14275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28614              : ( 1)))
   28615              :             return NULL;
   28616              :           return gen_split_2404 (insn, operands);
   28617              : 
   28618              :         case 1:
   28619              :           if (!((
   28620              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28621              : ((32 == 64 || TARGET_AVX512VL
   28622              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28623              :    && ix86_pre_reload_split ()
   28624              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28625              :                     STRIP_UNARY (operands[4]))
   28626              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28627              :                        STRIP_UNARY (operands[4]))
   28628              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28629              :                        STRIP_UNARY (operands[3]))
   28630              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28631              :                        STRIP_UNARY (operands[3])))) && 
   28632              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28633              : (TARGET_AVX)) && 
   28634              : #line 14275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28635              : ( 1)))
   28636              :             return NULL;
   28637              :           return gen_split_2431 (insn, operands);
   28638              : 
   28639              :         case 2:
   28640              :           if (!(
   28641              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28642              : ((16 == 64 || TARGET_AVX512VL
   28643              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28644              :    && ix86_pre_reload_split ()
   28645              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28646              :                     STRIP_UNARY (operands[4]))
   28647              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28648              :                        STRIP_UNARY (operands[4]))
   28649              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28650              :                        STRIP_UNARY (operands[3]))
   28651              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28652              :                        STRIP_UNARY (operands[3])))) && 
   28653              : #line 14275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28654              : ( 1)))
   28655              :             return NULL;
   28656              :           return gen_split_2458 (insn, operands);
   28657              : 
   28658              :         case 3:
   28659              :           if (!((
   28660              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28661              : ((64 == 64 || TARGET_AVX512VL
   28662              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28663              :    && ix86_pre_reload_split ()
   28664              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28665              :                     STRIP_UNARY (operands[4]))
   28666              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28667              :                        STRIP_UNARY (operands[4]))
   28668              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28669              :                        STRIP_UNARY (operands[3]))
   28670              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28671              :                        STRIP_UNARY (operands[3])))) && 
   28672              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28673              : (TARGET_AVX512F)) && 
   28674              : #line 14275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28675              : ( 1)))
   28676              :             return NULL;
   28677              :           return gen_split_2485 (insn, operands);
   28678              : 
   28679              :         case 4:
   28680              :           if (!((
   28681              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28682              : ((32 == 64 || TARGET_AVX512VL
   28683              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28684              :    && ix86_pre_reload_split ()
   28685              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28686              :                     STRIP_UNARY (operands[4]))
   28687              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28688              :                        STRIP_UNARY (operands[4]))
   28689              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28690              :                        STRIP_UNARY (operands[3]))
   28691              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28692              :                        STRIP_UNARY (operands[3])))) && 
   28693              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28694              : (TARGET_AVX)) && 
   28695              : #line 14275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28696              : ( 1)))
   28697              :             return NULL;
   28698              :           return gen_split_2512 (insn, operands);
   28699              : 
   28700              :         case 5:
   28701              :           if (!(
   28702              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28703              : ((16 == 64 || TARGET_AVX512VL
   28704              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28705              :    && ix86_pre_reload_split ()
   28706              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28707              :                     STRIP_UNARY (operands[4]))
   28708              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28709              :                        STRIP_UNARY (operands[4]))
   28710              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28711              :                        STRIP_UNARY (operands[3]))
   28712              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28713              :                        STRIP_UNARY (operands[3])))) && 
   28714              : #line 14275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28715              : ( 1)))
   28716              :             return NULL;
   28717              :           return gen_split_2539 (insn, operands);
   28718              : 
   28719              :         case 6:
   28720              :           if (!((
   28721              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28722              : ((64 == 64 || TARGET_AVX512VL
   28723              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28724              :    && ix86_pre_reload_split ()
   28725              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28726              :                     STRIP_UNARY (operands[4]))
   28727              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28728              :                        STRIP_UNARY (operands[4]))
   28729              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28730              :                        STRIP_UNARY (operands[3]))
   28731              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28732              :                        STRIP_UNARY (operands[3])))) && 
   28733              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28734              : (TARGET_AVX512F)) && 
   28735              : #line 14275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28736              : ( 1)))
   28737              :             return NULL;
   28738              :           return gen_split_2566 (insn, operands);
   28739              : 
   28740              :         case 7:
   28741              :           if (!((
   28742              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28743              : ((32 == 64 || TARGET_AVX512VL
   28744              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28745              :    && ix86_pre_reload_split ()
   28746              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28747              :                     STRIP_UNARY (operands[4]))
   28748              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28749              :                        STRIP_UNARY (operands[4]))
   28750              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28751              :                        STRIP_UNARY (operands[3]))
   28752              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28753              :                        STRIP_UNARY (operands[3])))) && 
   28754              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28755              : (TARGET_AVX)) && 
   28756              : #line 14275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28757              : ( 1)))
   28758              :             return NULL;
   28759              :           return gen_split_2593 (insn, operands);
   28760              : 
   28761              :         case 8:
   28762              :           if (!(
   28763              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28764              : ((16 == 64 || TARGET_AVX512VL
   28765              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28766              :    && ix86_pre_reload_split ()
   28767              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28768              :                     STRIP_UNARY (operands[4]))
   28769              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28770              :                        STRIP_UNARY (operands[4]))
   28771              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28772              :                        STRIP_UNARY (operands[3]))
   28773              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28774              :                        STRIP_UNARY (operands[3])))) && 
   28775              : #line 14275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28776              : ( 1)))
   28777              :             return NULL;
   28778              :           return gen_split_2620 (insn, operands);
   28779              : 
   28780              :         case 9:
   28781              :           if (!((
   28782              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28783              : ((64 == 64 || TARGET_AVX512VL
   28784              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28785              :    && ix86_pre_reload_split ()
   28786              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28787              :                     STRIP_UNARY (operands[4]))
   28788              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28789              :                        STRIP_UNARY (operands[4]))
   28790              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28791              :                        STRIP_UNARY (operands[3]))
   28792              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28793              :                        STRIP_UNARY (operands[3])))) && 
   28794              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28795              : (TARGET_AVX512F)) && 
   28796              : #line 14275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28797              : ( 1)))
   28798              :             return NULL;
   28799              :           return gen_split_2647 (insn, operands);
   28800              : 
   28801              :         case 10:
   28802              :           if (!((
   28803              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28804              : ((32 == 64 || TARGET_AVX512VL
   28805              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28806              :    && ix86_pre_reload_split ()
   28807              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28808              :                     STRIP_UNARY (operands[4]))
   28809              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28810              :                        STRIP_UNARY (operands[4]))
   28811              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28812              :                        STRIP_UNARY (operands[3]))
   28813              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28814              :                        STRIP_UNARY (operands[3])))) && 
   28815              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28816              : (TARGET_AVX)) && 
   28817              : #line 14275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28818              : ( 1)))
   28819              :             return NULL;
   28820              :           return gen_split_2674 (insn, operands);
   28821              : 
   28822              :         case 11:
   28823              :           if (!(
   28824              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28825              : ((16 == 64 || TARGET_AVX512VL
   28826              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28827              :    && ix86_pre_reload_split ()
   28828              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28829              :                     STRIP_UNARY (operands[4]))
   28830              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28831              :                        STRIP_UNARY (operands[4]))
   28832              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28833              :                        STRIP_UNARY (operands[3]))
   28834              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28835              :                        STRIP_UNARY (operands[3])))) && 
   28836              : #line 14275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28837              : ( 1)))
   28838              :             return NULL;
   28839              :           return gen_split_2701 (insn, operands);
   28840              : 
   28841              :         default:
   28842              :           return NULL;
   28843              :         }
   28844              : 
   28845              :     default:
   28846              :       return NULL;
   28847              :     }
   28848              : }
   28849              : 
   28850              :  rtx_insn *
   28851              : split_75 (rtx x1 ATTRIBUTE_UNUSED, rtx_insn *insn ATTRIBUTE_UNUSED)
   28852              : {
   28853              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   28854              :   rtx x2, x3, x4, x5, x6, x7;
   28855              :   rtx_insn *res ATTRIBUTE_UNUSED;
   28856              :   x2 = XEXP (x1, 1);
   28857              :   x3 = XEXP (x2, 0);
   28858              :   x4 = XEXP (x3, 1);
   28859              :   if (!rtx_equal_p (x4, operands[1]))
   28860              :     return NULL;
   28861              :   x5 = XEXP (x2, 1);
   28862              :   if (XVECLEN (x5, 0) != 2)
   28863              :     return NULL;
   28864              :   x6 = XVECEXP (x5, 0, 0);
   28865              :   if (GET_CODE (x6) != CONST_INT
   28866              :       || GET_MODE (x2) != E_V2DFmode
   28867              :       || GET_MODE (x3) != E_V4DFmode)
   28868              :     return NULL;
   28869              :   if (XWINT (x6, 0) == 0L)
   28870              :     {
   28871              :       x7 = XVECEXP (x5, 0, 1);
   28872              :       if (x7 == const_int_rtx[MAX_SAVED_CONST_INT + 2]
   28873              :           && memory_operand (operands[0], E_V2DFmode)
   28874              :           && register_operand (operands[1], E_V2DFmode)
   28875              :           && 
   28876              : #line 13980 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28877              : (TARGET_SSE3 && reload_completed))
   28878              :         return gen_split_1665 (insn, operands);
   28879              :     }
   28880              :   if (!register_operand (operands[0], E_V2DFmode)
   28881              :       || !memory_operand (operands[1], E_V2DFmode))
   28882              :     return NULL;
   28883              :   operands[2] = x6;
   28884              :   if (!const_0_to_1_operand (operands[2], E_SImode))
   28885              :     return NULL;
   28886              :   x7 = XVECEXP (x5, 0, 1);
   28887              :   operands[3] = x7;
   28888              :   if (!const_int_operand (operands[3], E_SImode)
   28889              :       || !
   28890              : #line 13998 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28891              : (TARGET_SSE3 && INTVAL (operands[2]) + 2 == INTVAL (operands[3])))
   28892              :     return NULL;
   28893              :   return gen_split_1666 (insn, operands);
   28894              : }
   28895              : 
   28896              :  rtx_insn *
   28897              : split_76 (rtx x1 ATTRIBUTE_UNUSED, rtx_insn *insn ATTRIBUTE_UNUSED)
   28898              : {
   28899              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   28900              :   rtx x2, x3, x4, x5;
   28901              :   rtx_insn *res ATTRIBUTE_UNUSED;
   28902              :   x2 = XEXP (x1, 1);
   28903              :   x3 = XEXP (x2, 1);
   28904              :   x4 = XVECEXP (x3, 0, 0);
   28905              :   if (x4 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
   28906              :     return NULL;
   28907              :   x5 = XVECEXP (x3, 0, 1);
   28908              :   if (x5 != const_int_rtx[MAX_SAVED_CONST_INT + 1])
   28909              :     return NULL;
   28910              :   switch (GET_MODE (operands[0]))
   28911              :     {
   28912              :     case E_V2DFmode:
   28913              :       if (!nonimmediate_operand (operands[0], E_V2DFmode)
   28914              :           || GET_MODE (x2) != E_V2DFmode)
   28915              :         return NULL;
   28916              :       switch (GET_MODE (operands[1]))
   28917              :         {
   28918              :         case E_V8DFmode:
   28919              :           if (!register_operand (operands[1], E_V8DFmode)
   28920              :               || !
   28921              : #line 12869 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28922              : (TARGET_AVX512DQ
   28923              :    && reload_completed
   28924              :    && (TARGET_AVX512VL
   28925              :        || REG_P (operands[0])
   28926              :        || !EXT_REX_SSE_REG_P (operands[1]))))
   28927              :             return NULL;
   28928              :           return gen_split_1639 (insn, operands);
   28929              : 
   28930              :         case E_V4DFmode:
   28931              :           if (!nonimmediate_operand (operands[1], E_V4DFmode)
   28932              :               || !
   28933              : #line 13285 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28934              : (TARGET_AVX && !(MEM_P (operands[0]) && MEM_P (operands[1]))
   28935              :    && reload_completed))
   28936              :             return NULL;
   28937              :           return gen_split_1648 (insn, operands);
   28938              : 
   28939              :         default:
   28940              :           return NULL;
   28941              :         }
   28942              : 
   28943              :     case E_V2DImode:
   28944              :       if (!nonimmediate_operand (operands[0], E_V2DImode)
   28945              :           || GET_MODE (x2) != E_V2DImode)
   28946              :         return NULL;
   28947              :       switch (GET_MODE (operands[1]))
   28948              :         {
   28949              :         case E_V8DImode:
   28950              :           if (!register_operand (operands[1], E_V8DImode)
   28951              :               || !
   28952              : #line 12869 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28953              : (TARGET_AVX512DQ
   28954              :    && reload_completed
   28955              :    && (TARGET_AVX512VL
   28956              :        || REG_P (operands[0])
   28957              :        || !EXT_REX_SSE_REG_P (operands[1]))))
   28958              :             return NULL;
   28959              :           return gen_split_1640 (insn, operands);
   28960              : 
   28961              :         case E_V4DImode:
   28962              :           if (!nonimmediate_operand (operands[1], E_V4DImode)
   28963              :               || !
   28964              : #line 13285 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28965              : (TARGET_AVX && !(MEM_P (operands[0]) && MEM_P (operands[1]))
   28966              :    && reload_completed))
   28967              :             return NULL;
   28968              :           return gen_split_1647 (insn, operands);
   28969              : 
   28970              :         default:
   28971              :           return NULL;
   28972              :         }
   28973              : 
   28974              :     default:
   28975              :       return NULL;
   28976              :     }
   28977              : }
   28978              : 
   28979              :  rtx_insn *
   28980              : split_78 (rtx x1 ATTRIBUTE_UNUSED, rtx_insn *insn ATTRIBUTE_UNUSED)
   28981              : {
   28982              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   28983              :   rtx x2, x3, x4, x5, x6, x7;
   28984              :   rtx_insn *res ATTRIBUTE_UNUSED;
   28985              :   x2 = XEXP (x1, 1);
   28986              :   x3 = XEXP (x2, 1);
   28987              :   if (pattern848 (x3) != 0)
   28988              :     return NULL;
   28989              :   x4 = XVECEXP (x3, 0, 4);
   28990              :   if (x4 != const_int_rtx[MAX_SAVED_CONST_INT + 4])
   28991              :     return NULL;
   28992              :   x5 = XVECEXP (x3, 0, 5);
   28993              :   if (x5 != const_int_rtx[MAX_SAVED_CONST_INT + 5])
   28994              :     return NULL;
   28995              :   x6 = XVECEXP (x3, 0, 6);
   28996              :   if (x6 != const_int_rtx[MAX_SAVED_CONST_INT + 6])
   28997              :     return NULL;
   28998              :   x7 = XVECEXP (x3, 0, 7);
   28999              :   if (x7 != const_int_rtx[MAX_SAVED_CONST_INT + 7])
   29000              :     return NULL;
   29001              :   switch (pattern1547 (x2))
   29002              :     {
   29003              :     case 0:
   29004              :       if (!
   29005              : #line 13237 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29006              : (TARGET_AVX512F && !(MEM_P (operands[0]) && MEM_P (operands[1]))
   29007              :    && reload_completed
   29008              :    && (TARGET_AVX512VL
   29009              :        || REG_P (operands[0])
   29010              :        || !EXT_REX_SSE_REG_P (operands[1]))))
   29011              :         return NULL;
   29012              :       return gen_split_1645 (insn, operands);
   29013              : 
   29014              :     case 1:
   29015              :       if (!
   29016              : #line 13237 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29017              : (TARGET_AVX512F && !(MEM_P (operands[0]) && MEM_P (operands[1]))
   29018              :    && reload_completed
   29019              :    && (TARGET_AVX512VL
   29020              :        || REG_P (operands[0])
   29021              :        || !EXT_REX_SSE_REG_P (operands[1]))))
   29022              :         return NULL;
   29023              :       return gen_split_1646 (insn, operands);
   29024              : 
   29025              :     case 2:
   29026              :       if (!(
   29027              : #line 13477 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29028              : (TARGET_AVX && !(MEM_P (operands[0]) && MEM_P (operands[1]))) && 
   29029              : #line 13479 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29030              : ( reload_completed)))
   29031              :         return NULL;
   29032              :       return gen_split_1654 (insn, operands);
   29033              : 
   29034              :     case 3:
   29035              :       if (!(
   29036              : #line 13477 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29037              : (TARGET_AVX && !(MEM_P (operands[0]) && MEM_P (operands[1]))) && 
   29038              : #line 13479 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29039              : ( reload_completed)))
   29040              :         return NULL;
   29041              :       return gen_split_1655 (insn, operands);
   29042              : 
   29043              :     case 4:
   29044              :       if (!(
   29045              : #line 13477 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29046              : (TARGET_AVX && !(MEM_P (operands[0]) && MEM_P (operands[1]))) && 
   29047              : #line 13479 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29048              : ( reload_completed)))
   29049              :         return NULL;
   29050              :       return gen_split_1656 (insn, operands);
   29051              : 
   29052              :     default:
   29053              :       return NULL;
   29054              :     }
   29055              : }
   29056              : 
   29057              :  rtx_insn *
   29058              : split_80 (rtx x1 ATTRIBUTE_UNUSED, rtx_insn *insn ATTRIBUTE_UNUSED)
   29059              : {
   29060              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   29061              :   rtx x2, x3, x4, x5, x6, x7;
   29062              :   rtx_insn *res ATTRIBUTE_UNUSED;
   29063              :   x2 = XEXP (x1, 1);
   29064              :   x3 = XEXP (x2, 1);
   29065              :   switch (GET_CODE (x3))
   29066              :     {
   29067              :     case VEC_SELECT:
   29068              :       if (GET_MODE (x3) != E_DFmode)
   29069              :         return NULL;
   29070              :       x4 = XEXP (x3, 1);
   29071              :       if (GET_CODE (x4) != PARALLEL
   29072              :           || XVECLEN (x4, 0) != 1)
   29073              :         return NULL;
   29074              :       x5 = XVECEXP (x4, 0, 0);
   29075              :       if (x5 != const_int_rtx[MAX_SAVED_CONST_INT + 1]
   29076              :           || !memory_operand (operands[0], E_V2DFmode)
   29077              :           || GET_MODE (x2) != E_V2DFmode
   29078              :           || !register_operand (operands[1], E_DFmode))
   29079              :         return NULL;
   29080              :       x6 = XEXP (x3, 0);
   29081              :       if (!rtx_equal_p (x6, operands[0])
   29082              :           || !
   29083              : #line 15238 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29084              : (TARGET_SSE2 && reload_completed))
   29085              :         return NULL;
   29086              :       return gen_split_3256 (insn, operands);
   29087              : 
   29088              :     case UNSPEC:
   29089              :       if (XVECLEN (x3, 0) != 1
   29090              :           || XINT (x3, 1) != 148)
   29091              :         return NULL;
   29092              :       x7 = XVECEXP (x3, 0, 0);
   29093              :       if (x7 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
   29094              :         return NULL;
   29095              :       switch (GET_MODE (operands[0]))
   29096              :         {
   29097              :         case E_V8SImode:
   29098              :           if (pattern1044 (x2, 
   29099              : E_V4SImode, 
   29100              : E_V8SImode) != 0
   29101              :               || !(
   29102              : #line 29859 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29103              : (TARGET_AVX && !(MEM_P (operands[0]) && MEM_P (operands[1]))) && 
   29104              : #line 29861 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29105              : ( reload_completed)))
   29106              :             return NULL;
   29107              :           return gen_split_3897 (insn, operands);
   29108              : 
   29109              :         case E_V8SFmode:
   29110              :           if (pattern1044 (x2, 
   29111              : E_V4SFmode, 
   29112              : E_V8SFmode) != 0
   29113              :               || !(
   29114              : #line 29859 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29115              : (TARGET_AVX && !(MEM_P (operands[0]) && MEM_P (operands[1]))) && 
   29116              : #line 29861 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29117              : ( reload_completed)))
   29118              :             return NULL;
   29119              :           return gen_split_3898 (insn, operands);
   29120              : 
   29121              :         case E_V4DFmode:
   29122              :           if (pattern1044 (x2, 
   29123              : E_V2DFmode, 
   29124              : E_V4DFmode) != 0
   29125              :               || !(
   29126              : #line 29859 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29127              : (TARGET_AVX && !(MEM_P (operands[0]) && MEM_P (operands[1]))) && 
   29128              : #line 29861 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29129              : ( reload_completed)))
   29130              :             return NULL;
   29131              :           return gen_split_3899 (insn, operands);
   29132              : 
   29133              :         case E_V16SImode:
   29134              :           if (pattern1044 (x2, 
   29135              : E_V8SImode, 
   29136              : E_V16SImode) != 0
   29137              :               || !(
   29138              : #line 31211 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29139              : (TARGET_AVX512F && !(MEM_P (operands[0]) && MEM_P (operands[1]))) && 
   29140              : #line 31213 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29141              : ( reload_completed)))
   29142              :             return NULL;
   29143              :           return gen_split_3945 (insn, operands);
   29144              : 
   29145              :         case E_V16SFmode:
   29146              :           if (pattern1044 (x2, 
   29147              : E_V8SFmode, 
   29148              : E_V16SFmode) != 0
   29149              :               || !(
   29150              : #line 31211 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29151              : (TARGET_AVX512F && !(MEM_P (operands[0]) && MEM_P (operands[1]))) && 
   29152              : #line 31213 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29153              : ( reload_completed)))
   29154              :             return NULL;
   29155              :           return gen_split_3946 (insn, operands);
   29156              : 
   29157              :         case E_V8DFmode:
   29158              :           if (pattern1044 (x2, 
   29159              : E_V4DFmode, 
   29160              : E_V8DFmode) != 0
   29161              :               || !(
   29162              : #line 31211 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29163              : (TARGET_AVX512F && !(MEM_P (operands[0]) && MEM_P (operands[1]))) && 
   29164              : #line 31213 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29165              : ( reload_completed)))
   29166              :             return NULL;
   29167              :           return gen_split_3947 (insn, operands);
   29168              : 
   29169              :         default:
   29170              :           return NULL;
   29171              :         }
   29172              : 
   29173              :     default:
   29174              :       return NULL;
   29175              :     }
   29176              : }
   29177              : 
   29178              :  rtx_insn *
   29179              : split_82 (rtx x1 ATTRIBUTE_UNUSED, rtx_insn *insn ATTRIBUTE_UNUSED)
   29180              : {
   29181              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   29182              :   rtx x2, x3, x4, x5;
   29183              :   rtx_insn *res ATTRIBUTE_UNUSED;
   29184              :   x2 = XEXP (x1, 1);
   29185              :   switch (GET_CODE (x2))
   29186              :     {
   29187              :     case AND:
   29188              :       res = split_64 (x1, insn);
   29189              :       if (res != NULL_RTX)
   29190              :         return res;
   29191              :       break;
   29192              : 
   29193              :     case IOR:
   29194              :       res = split_71 (x1, insn);
   29195              :       if (res != NULL_RTX)
   29196              :         return res;
   29197              :       break;
   29198              : 
   29199              :     case XOR:
   29200              :       x3 = XEXP (x2, 0);
   29201              :       switch (GET_CODE (x3))
   29202              :         {
   29203              :         case AND:
   29204              :           res = split_66 (x1, insn);
   29205              :           if (res != NULL_RTX)
   29206              :             return res;
   29207              :           break;
   29208              : 
   29209              :         case IOR:
   29210              :           res = split_67 (x1, insn);
   29211              :           if (res != NULL_RTX)
   29212              :             return res;
   29213              :           break;
   29214              : 
   29215              :         case XOR:
   29216              :           x4 = XEXP (x3, 0);
   29217              :           switch (GET_CODE (x4))
   29218              :             {
   29219              :             case REG:
   29220              :             case SUBREG:
   29221              :             case MEM:
   29222              :             case NOT:
   29223              :               switch (pattern537 (x2))
   29224              :                 {
   29225              :                 case 0:
   29226              :                   if (((
   29227              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29228              : ((64 == 64 || TARGET_AVX512VL
   29229              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   29230              :    && ix86_pre_reload_split ()
   29231              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   29232              :                     STRIP_UNARY (operands[4]))
   29233              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29234              :                        STRIP_UNARY (operands[4]))
   29235              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   29236              :                        STRIP_UNARY (operands[3]))
   29237              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29238              :                        STRIP_UNARY (operands[3])))) && 
   29239              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29240              : (TARGET_AVX512F)) && 
   29241              : #line 14190 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29242              : ( 1)))
   29243              :                     return gen_split_1759 (insn, operands);
   29244              :                   break;
   29245              : 
   29246              :                 case 1:
   29247              :                   if (((
   29248              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29249              : ((32 == 64 || TARGET_AVX512VL
   29250              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   29251              :    && ix86_pre_reload_split ()
   29252              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   29253              :                     STRIP_UNARY (operands[4]))
   29254              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29255              :                        STRIP_UNARY (operands[4]))
   29256              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   29257              :                        STRIP_UNARY (operands[3]))
   29258              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29259              :                        STRIP_UNARY (operands[3])))) && 
   29260              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29261              : (TARGET_AVX)) && 
   29262              : #line 14190 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29263              : ( 1)))
   29264              :                     return gen_split_1786 (insn, operands);
   29265              :                   break;
   29266              : 
   29267              :                 case 2:
   29268              :                   if ((
   29269              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29270              : ((16 == 64 || TARGET_AVX512VL
   29271              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   29272              :    && ix86_pre_reload_split ()
   29273              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   29274              :                     STRIP_UNARY (operands[4]))
   29275              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29276              :                        STRIP_UNARY (operands[4]))
   29277              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   29278              :                        STRIP_UNARY (operands[3]))
   29279              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29280              :                        STRIP_UNARY (operands[3])))) && 
   29281              : #line 14190 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29282              : ( 1)))
   29283              :                     return gen_split_1813 (insn, operands);
   29284              :                   break;
   29285              : 
   29286              :                 case 3:
   29287              :                   if (((
   29288              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29289              : ((64 == 64 || TARGET_AVX512VL
   29290              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   29291              :    && ix86_pre_reload_split ()
   29292              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   29293              :                     STRIP_UNARY (operands[4]))
   29294              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29295              :                        STRIP_UNARY (operands[4]))
   29296              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   29297              :                        STRIP_UNARY (operands[3]))
   29298              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29299              :                        STRIP_UNARY (operands[3])))) && 
   29300              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29301              : (TARGET_AVX512F)) && 
   29302              : #line 14190 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29303              : ( 1)))
   29304              :                     return gen_split_1840 (insn, operands);
   29305              :                   break;
   29306              : 
   29307              :                 case 4:
   29308              :                   if (((
   29309              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29310              : ((32 == 64 || TARGET_AVX512VL
   29311              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   29312              :    && ix86_pre_reload_split ()
   29313              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   29314              :                     STRIP_UNARY (operands[4]))
   29315              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29316              :                        STRIP_UNARY (operands[4]))
   29317              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   29318              :                        STRIP_UNARY (operands[3]))
   29319              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29320              :                        STRIP_UNARY (operands[3])))) && 
   29321              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29322              : (TARGET_AVX)) && 
   29323              : #line 14190 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29324              : ( 1)))
   29325              :                     return gen_split_1867 (insn, operands);
   29326              :                   break;
   29327              : 
   29328              :                 case 5:
   29329              :                   if ((
   29330              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29331              : ((16 == 64 || TARGET_AVX512VL
   29332              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   29333              :    && ix86_pre_reload_split ()
   29334              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   29335              :                     STRIP_UNARY (operands[4]))
   29336              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29337              :                        STRIP_UNARY (operands[4]))
   29338              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   29339              :                        STRIP_UNARY (operands[3]))
   29340              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29341              :                        STRIP_UNARY (operands[3])))) && 
   29342              : #line 14190 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29343              : ( 1)))
   29344              :                     return gen_split_1894 (insn, operands);
   29345              :                   break;
   29346              : 
   29347              :                 case 6:
   29348              :                   if (((
   29349              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29350              : ((64 == 64 || TARGET_AVX512VL
   29351              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   29352              :    && ix86_pre_reload_split ()
   29353              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   29354              :                     STRIP_UNARY (operands[4]))
   29355              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29356              :                        STRIP_UNARY (operands[4]))
   29357              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   29358              :                        STRIP_UNARY (operands[3]))
   29359              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29360              :                        STRIP_UNARY (operands[3])))) && 
   29361              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29362              : (TARGET_AVX512F)) && 
   29363              : #line 14190 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29364              : ( 1)))
   29365              :                     return gen_split_1921 (insn, operands);
   29366              :                   break;
   29367              : 
   29368              :                 case 7:
   29369              :                   if (((
   29370              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29371              : ((32 == 64 || TARGET_AVX512VL
   29372              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   29373              :    && ix86_pre_reload_split ()
   29374              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   29375              :                     STRIP_UNARY (operands[4]))
   29376              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29377              :                        STRIP_UNARY (operands[4]))
   29378              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   29379              :                        STRIP_UNARY (operands[3]))
   29380              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29381              :                        STRIP_UNARY (operands[3])))) && 
   29382              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29383              : (TARGET_AVX)) && 
   29384              : #line 14190 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29385              : ( 1)))
   29386              :                     return gen_split_1948 (insn, operands);
   29387              :                   break;
   29388              : 
   29389              :                 case 8:
   29390              :                   if ((
   29391              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29392              : ((16 == 64 || TARGET_AVX512VL
   29393              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   29394              :    && ix86_pre_reload_split ()
   29395              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   29396              :                     STRIP_UNARY (operands[4]))
   29397              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29398              :                        STRIP_UNARY (operands[4]))
   29399              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   29400              :                        STRIP_UNARY (operands[3]))
   29401              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29402              :                        STRIP_UNARY (operands[3])))) && 
   29403              : #line 14190 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29404              : ( 1)))
   29405              :                     return gen_split_1975 (insn, operands);
   29406              :                   break;
   29407              : 
   29408              :                 case 9:
   29409              :                   if (((
   29410              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29411              : ((64 == 64 || TARGET_AVX512VL
   29412              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   29413              :    && ix86_pre_reload_split ()
   29414              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   29415              :                     STRIP_UNARY (operands[4]))
   29416              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29417              :                        STRIP_UNARY (operands[4]))
   29418              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   29419              :                        STRIP_UNARY (operands[3]))
   29420              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29421              :                        STRIP_UNARY (operands[3])))) && 
   29422              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29423              : (TARGET_AVX512F)) && 
   29424              : #line 14190 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29425              : ( 1)))
   29426              :                     return gen_split_2002 (insn, operands);
   29427              :                   break;
   29428              : 
   29429              :                 case 10:
   29430              :                   if (((
   29431              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29432              : ((32 == 64 || TARGET_AVX512VL
   29433              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   29434              :    && ix86_pre_reload_split ()
   29435              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   29436              :                     STRIP_UNARY (operands[4]))
   29437              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29438              :                        STRIP_UNARY (operands[4]))
   29439              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   29440              :                        STRIP_UNARY (operands[3]))
   29441              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29442              :                        STRIP_UNARY (operands[3])))) && 
   29443              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29444              : (TARGET_AVX)) && 
   29445              : #line 14190 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29446              : ( 1)))
   29447              :                     return gen_split_2029 (insn, operands);
   29448              :                   break;
   29449              : 
   29450              :                 case 11:
   29451              :                   if ((
   29452              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29453              : ((16 == 64 || TARGET_AVX512VL
   29454              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   29455              :    && ix86_pre_reload_split ()
   29456              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   29457              :                     STRIP_UNARY (operands[4]))
   29458              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29459              :                        STRIP_UNARY (operands[4]))
   29460              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   29461              :                        STRIP_UNARY (operands[3]))
   29462              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29463              :                        STRIP_UNARY (operands[3])))) && 
   29464              : #line 14190 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29465              : ( 1)))
   29466              :                     return gen_split_2056 (insn, operands);
   29467              :                   break;
   29468              : 
   29469              :                 case 12:
   29470              :                   if (((
   29471              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29472              : ((64 == 64 || TARGET_AVX512VL
   29473              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   29474              :    && ix86_pre_reload_split ()
   29475              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   29476              :                     STRIP_UNARY (operands[4]))
   29477              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29478              :                        STRIP_UNARY (operands[4]))
   29479              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   29480              :                        STRIP_UNARY (operands[3]))
   29481              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29482              :                        STRIP_UNARY (operands[3])))) && 
   29483              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29484              : (TARGET_AVX512F)) && 
   29485              : #line 14190 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29486              : ( 1)))
   29487              :                     return gen_split_1762 (insn, operands);
   29488              :                   break;
   29489              : 
   29490              :                 case 13:
   29491              :                   if (((
   29492              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29493              : ((32 == 64 || TARGET_AVX512VL
   29494              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   29495              :    && ix86_pre_reload_split ()
   29496              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   29497              :                     STRIP_UNARY (operands[4]))
   29498              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29499              :                        STRIP_UNARY (operands[4]))
   29500              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   29501              :                        STRIP_UNARY (operands[3]))
   29502              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29503              :                        STRIP_UNARY (operands[3])))) && 
   29504              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29505              : (TARGET_AVX)) && 
   29506              : #line 14190 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29507              : ( 1)))
   29508              :                     return gen_split_1789 (insn, operands);
   29509              :                   break;
   29510              : 
   29511              :                 case 14:
   29512              :                   if ((
   29513              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29514              : ((16 == 64 || TARGET_AVX512VL
   29515              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   29516              :    && ix86_pre_reload_split ()
   29517              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   29518              :                     STRIP_UNARY (operands[4]))
   29519              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29520              :                        STRIP_UNARY (operands[4]))
   29521              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   29522              :                        STRIP_UNARY (operands[3]))
   29523              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29524              :                        STRIP_UNARY (operands[3])))) && 
   29525              : #line 14190 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29526              : ( 1)))
   29527              :                     return gen_split_1816 (insn, operands);
   29528              :                   break;
   29529              : 
   29530              :                 case 15:
   29531              :                   if (((
   29532              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29533              : ((64 == 64 || TARGET_AVX512VL
   29534              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   29535              :    && ix86_pre_reload_split ()
   29536              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   29537              :                     STRIP_UNARY (operands[4]))
   29538              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29539              :                        STRIP_UNARY (operands[4]))
   29540              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   29541              :                        STRIP_UNARY (operands[3]))
   29542              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29543              :                        STRIP_UNARY (operands[3])))) && 
   29544              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29545              : (TARGET_AVX512F)) && 
   29546              : #line 14190 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29547              : ( 1)))
   29548              :                     return gen_split_1843 (insn, operands);
   29549              :                   break;
   29550              : 
   29551              :                 case 16:
   29552              :                   if (((
   29553              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29554              : ((32 == 64 || TARGET_AVX512VL
   29555              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   29556              :    && ix86_pre_reload_split ()
   29557              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   29558              :                     STRIP_UNARY (operands[4]))
   29559              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29560              :                        STRIP_UNARY (operands[4]))
   29561              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   29562              :                        STRIP_UNARY (operands[3]))
   29563              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29564              :                        STRIP_UNARY (operands[3])))) && 
   29565              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29566              : (TARGET_AVX)) && 
   29567              : #line 14190 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29568              : ( 1)))
   29569              :                     return gen_split_1870 (insn, operands);
   29570              :                   break;
   29571              : 
   29572              :                 case 17:
   29573              :                   if ((
   29574              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29575              : ((16 == 64 || TARGET_AVX512VL
   29576              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   29577              :    && ix86_pre_reload_split ()
   29578              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   29579              :                     STRIP_UNARY (operands[4]))
   29580              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29581              :                        STRIP_UNARY (operands[4]))
   29582              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   29583              :                        STRIP_UNARY (operands[3]))
   29584              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29585              :                        STRIP_UNARY (operands[3])))) && 
   29586              : #line 14190 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29587              : ( 1)))
   29588              :                     return gen_split_1897 (insn, operands);
   29589              :                   break;
   29590              : 
   29591              :                 case 18:
   29592              :                   if (((
   29593              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29594              : ((64 == 64 || TARGET_AVX512VL
   29595              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   29596              :    && ix86_pre_reload_split ()
   29597              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   29598              :                     STRIP_UNARY (operands[4]))
   29599              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29600              :                        STRIP_UNARY (operands[4]))
   29601              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   29602              :                        STRIP_UNARY (operands[3]))
   29603              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29604              :                        STRIP_UNARY (operands[3])))) && 
   29605              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29606              : (TARGET_AVX512F)) && 
   29607              : #line 14190 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29608              : ( 1)))
   29609              :                     return gen_split_1924 (insn, operands);
   29610              :                   break;
   29611              : 
   29612              :                 case 19:
   29613              :                   if (((
   29614              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29615              : ((32 == 64 || TARGET_AVX512VL
   29616              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   29617              :    && ix86_pre_reload_split ()
   29618              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   29619              :                     STRIP_UNARY (operands[4]))
   29620              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29621              :                        STRIP_UNARY (operands[4]))
   29622              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   29623              :                        STRIP_UNARY (operands[3]))
   29624              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29625              :                        STRIP_UNARY (operands[3])))) && 
   29626              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29627              : (TARGET_AVX)) && 
   29628              : #line 14190 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29629              : ( 1)))
   29630              :                     return gen_split_1951 (insn, operands);
   29631              :                   break;
   29632              : 
   29633              :                 case 20:
   29634              :                   if ((
   29635              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29636              : ((16 == 64 || TARGET_AVX512VL
   29637              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   29638              :    && ix86_pre_reload_split ()
   29639              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   29640              :                     STRIP_UNARY (operands[4]))
   29641              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29642              :                        STRIP_UNARY (operands[4]))
   29643              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   29644              :                        STRIP_UNARY (operands[3]))
   29645              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29646              :                        STRIP_UNARY (operands[3])))) && 
   29647              : #line 14190 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29648              : ( 1)))
   29649              :                     return gen_split_1978 (insn, operands);
   29650              :                   break;
   29651              : 
   29652              :                 case 21:
   29653              :                   if (((
   29654              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29655              : ((64 == 64 || TARGET_AVX512VL
   29656              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   29657              :    && ix86_pre_reload_split ()
   29658              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   29659              :                     STRIP_UNARY (operands[4]))
   29660              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29661              :                        STRIP_UNARY (operands[4]))
   29662              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   29663              :                        STRIP_UNARY (operands[3]))
   29664              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29665              :                        STRIP_UNARY (operands[3])))) && 
   29666              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29667              : (TARGET_AVX512F)) && 
   29668              : #line 14190 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29669              : ( 1)))
   29670              :                     return gen_split_2005 (insn, operands);
   29671              :                   break;
   29672              : 
   29673              :                 case 22:
   29674              :                   if (((
   29675              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29676              : ((32 == 64 || TARGET_AVX512VL
   29677              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   29678              :    && ix86_pre_reload_split ()
   29679              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   29680              :                     STRIP_UNARY (operands[4]))
   29681              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29682              :                        STRIP_UNARY (operands[4]))
   29683              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   29684              :                        STRIP_UNARY (operands[3]))
   29685              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29686              :                        STRIP_UNARY (operands[3])))) && 
   29687              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29688              : (TARGET_AVX)) && 
   29689              : #line 14190 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29690              : ( 1)))
   29691              :                     return gen_split_2032 (insn, operands);
   29692              :                   break;
   29693              : 
   29694              :                 case 23:
   29695              :                   if ((
   29696              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29697              : ((16 == 64 || TARGET_AVX512VL
   29698              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   29699              :    && ix86_pre_reload_split ()
   29700              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   29701              :                     STRIP_UNARY (operands[4]))
   29702              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29703              :                        STRIP_UNARY (operands[4]))
   29704              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   29705              :                        STRIP_UNARY (operands[3]))
   29706              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29707              :                        STRIP_UNARY (operands[3])))) && 
   29708              : #line 14190 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29709              : ( 1)))
   29710              :                     return gen_split_2059 (insn, operands);
   29711              :                   break;
   29712              : 
   29713              :                 case 24:
   29714              :                   if (((
   29715              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29716              : ((64 == 64 || TARGET_AVX512VL
   29717              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   29718              :    && ix86_pre_reload_split ()
   29719              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   29720              :                     STRIP_UNARY (operands[4]))
   29721              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29722              :                        STRIP_UNARY (operands[4]))
   29723              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   29724              :                        STRIP_UNARY (operands[3]))
   29725              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29726              :                        STRIP_UNARY (operands[3])))) && 
   29727              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29728              : (TARGET_AVX512F)) && 
   29729              : #line 14190 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29730              : ( 1)))
   29731              :                     return gen_split_1765 (insn, operands);
   29732              :                   break;
   29733              : 
   29734              :                 case 25:
   29735              :                   if (((
   29736              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29737              : ((32 == 64 || TARGET_AVX512VL
   29738              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   29739              :    && ix86_pre_reload_split ()
   29740              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   29741              :                     STRIP_UNARY (operands[4]))
   29742              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29743              :                        STRIP_UNARY (operands[4]))
   29744              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   29745              :                        STRIP_UNARY (operands[3]))
   29746              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29747              :                        STRIP_UNARY (operands[3])))) && 
   29748              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29749              : (TARGET_AVX)) && 
   29750              : #line 14190 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29751              : ( 1)))
   29752              :                     return gen_split_1792 (insn, operands);
   29753              :                   break;
   29754              : 
   29755              :                 case 26:
   29756              :                   if ((
   29757              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29758              : ((16 == 64 || TARGET_AVX512VL
   29759              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   29760              :    && ix86_pre_reload_split ()
   29761              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   29762              :                     STRIP_UNARY (operands[4]))
   29763              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29764              :                        STRIP_UNARY (operands[4]))
   29765              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   29766              :                        STRIP_UNARY (operands[3]))
   29767              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29768              :                        STRIP_UNARY (operands[3])))) && 
   29769              : #line 14190 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29770              : ( 1)))
   29771              :                     return gen_split_1819 (insn, operands);
   29772              :                   break;
   29773              : 
   29774              :                 case 27:
   29775              :                   if (((
   29776              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29777              : ((64 == 64 || TARGET_AVX512VL
   29778              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   29779              :    && ix86_pre_reload_split ()
   29780              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   29781              :                     STRIP_UNARY (operands[4]))
   29782              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29783              :                        STRIP_UNARY (operands[4]))
   29784              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   29785              :                        STRIP_UNARY (operands[3]))
   29786              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29787              :                        STRIP_UNARY (operands[3])))) && 
   29788              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29789              : (TARGET_AVX512F)) && 
   29790              : #line 14190 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29791              : ( 1)))
   29792              :                     return gen_split_1846 (insn, operands);
   29793              :                   break;
   29794              : 
   29795              :                 case 28:
   29796              :                   if (((
   29797              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29798              : ((32 == 64 || TARGET_AVX512VL
   29799              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   29800              :    && ix86_pre_reload_split ()
   29801              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   29802              :                     STRIP_UNARY (operands[4]))
   29803              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29804              :                        STRIP_UNARY (operands[4]))
   29805              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   29806              :                        STRIP_UNARY (operands[3]))
   29807              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29808              :                        STRIP_UNARY (operands[3])))) && 
   29809              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29810              : (TARGET_AVX)) && 
   29811              : #line 14190 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29812              : ( 1)))
   29813              :                     return gen_split_1873 (insn, operands);
   29814              :                   break;
   29815              : 
   29816              :                 case 29:
   29817              :                   if ((
   29818              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29819              : ((16 == 64 || TARGET_AVX512VL
   29820              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   29821              :    && ix86_pre_reload_split ()
   29822              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   29823              :                     STRIP_UNARY (operands[4]))
   29824              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29825              :                        STRIP_UNARY (operands[4]))
   29826              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   29827              :                        STRIP_UNARY (operands[3]))
   29828              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29829              :                        STRIP_UNARY (operands[3])))) && 
   29830              : #line 14190 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29831              : ( 1)))
   29832              :                     return gen_split_1900 (insn, operands);
   29833              :                   break;
   29834              : 
   29835              :                 case 30:
   29836              :                   if (((
   29837              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29838              : ((64 == 64 || TARGET_AVX512VL
   29839              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   29840              :    && ix86_pre_reload_split ()
   29841              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   29842              :                     STRIP_UNARY (operands[4]))
   29843              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29844              :                        STRIP_UNARY (operands[4]))
   29845              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   29846              :                        STRIP_UNARY (operands[3]))
   29847              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29848              :                        STRIP_UNARY (operands[3])))) && 
   29849              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29850              : (TARGET_AVX512F)) && 
   29851              : #line 14190 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29852              : ( 1)))
   29853              :                     return gen_split_1927 (insn, operands);
   29854              :                   break;
   29855              : 
   29856              :                 case 31:
   29857              :                   if (((
   29858              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29859              : ((32 == 64 || TARGET_AVX512VL
   29860              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   29861              :    && ix86_pre_reload_split ()
   29862              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   29863              :                     STRIP_UNARY (operands[4]))
   29864              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29865              :                        STRIP_UNARY (operands[4]))
   29866              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   29867              :                        STRIP_UNARY (operands[3]))
   29868              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29869              :                        STRIP_UNARY (operands[3])))) && 
   29870              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29871              : (TARGET_AVX)) && 
   29872              : #line 14190 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29873              : ( 1)))
   29874              :                     return gen_split_1954 (insn, operands);
   29875              :                   break;
   29876              : 
   29877              :                 case 32:
   29878              :                   if ((
   29879              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29880              : ((16 == 64 || TARGET_AVX512VL
   29881              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   29882              :    && ix86_pre_reload_split ()
   29883              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   29884              :                     STRIP_UNARY (operands[4]))
   29885              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29886              :                        STRIP_UNARY (operands[4]))
   29887              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   29888              :                        STRIP_UNARY (operands[3]))
   29889              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29890              :                        STRIP_UNARY (operands[3])))) && 
   29891              : #line 14190 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29892              : ( 1)))
   29893              :                     return gen_split_1981 (insn, operands);
   29894              :                   break;
   29895              : 
   29896              :                 case 33:
   29897              :                   if (((
   29898              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29899              : ((64 == 64 || TARGET_AVX512VL
   29900              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   29901              :    && ix86_pre_reload_split ()
   29902              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   29903              :                     STRIP_UNARY (operands[4]))
   29904              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29905              :                        STRIP_UNARY (operands[4]))
   29906              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   29907              :                        STRIP_UNARY (operands[3]))
   29908              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29909              :                        STRIP_UNARY (operands[3])))) && 
   29910              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29911              : (TARGET_AVX512F)) && 
   29912              : #line 14190 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29913              : ( 1)))
   29914              :                     return gen_split_2008 (insn, operands);
   29915              :                   break;
   29916              : 
   29917              :                 case 34:
   29918              :                   if (((
   29919              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29920              : ((32 == 64 || TARGET_AVX512VL
   29921              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   29922              :    && ix86_pre_reload_split ()
   29923              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   29924              :                     STRIP_UNARY (operands[4]))
   29925              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29926              :                        STRIP_UNARY (operands[4]))
   29927              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   29928              :                        STRIP_UNARY (operands[3]))
   29929              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29930              :                        STRIP_UNARY (operands[3])))) && 
   29931              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29932              : (TARGET_AVX)) && 
   29933              : #line 14190 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29934              : ( 1)))
   29935              :                     return gen_split_2035 (insn, operands);
   29936              :                   break;
   29937              : 
   29938              :                 case 35:
   29939              :                   if ((
   29940              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29941              : ((16 == 64 || TARGET_AVX512VL
   29942              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   29943              :    && ix86_pre_reload_split ()
   29944              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   29945              :                     STRIP_UNARY (operands[4]))
   29946              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29947              :                        STRIP_UNARY (operands[4]))
   29948              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   29949              :                        STRIP_UNARY (operands[3]))
   29950              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29951              :                        STRIP_UNARY (operands[3])))) && 
   29952              : #line 14190 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29953              : ( 1)))
   29954              :                     return gen_split_2062 (insn, operands);
   29955              :                   break;
   29956              : 
   29957              :                 case 36:
   29958              :                   if (((
   29959              : #line 14347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29960              : ((64 == 64 || TARGET_AVX512VL
   29961              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   29962              :    && ix86_pre_reload_split ()) && 
   29963              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29964              : (TARGET_AVX512F)) && 
   29965              : #line 14351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29966              : ( 1)))
   29967              :                     return gen_split_3043 (insn, operands);
   29968              :                   break;
   29969              : 
   29970              :                 case 37:
   29971              :                   if (((
   29972              : #line 14347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29973              : ((32 == 64 || TARGET_AVX512VL
   29974              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   29975              :    && ix86_pre_reload_split ()) && 
   29976              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29977              : (TARGET_AVX)) && 
   29978              : #line 14351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29979              : ( 1)))
   29980              :                     return gen_split_3052 (insn, operands);
   29981              :                   break;
   29982              : 
   29983              :                 case 38:
   29984              :                   if ((
   29985              : #line 14347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29986              : ((16 == 64 || TARGET_AVX512VL
   29987              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   29988              :    && ix86_pre_reload_split ()) && 
   29989              : #line 14351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29990              : ( 1)))
   29991              :                     return gen_split_3061 (insn, operands);
   29992              :                   break;
   29993              : 
   29994              :                 case 39:
   29995              :                   if (((
   29996              : #line 14347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29997              : ((64 == 64 || TARGET_AVX512VL
   29998              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   29999              :    && ix86_pre_reload_split ()) && 
   30000              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30001              : (TARGET_AVX512F)) && 
   30002              : #line 14351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30003              : ( 1)))
   30004              :                     return gen_split_3070 (insn, operands);
   30005              :                   break;
   30006              : 
   30007              :                 case 40:
   30008              :                   if (((
   30009              : #line 14347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30010              : ((32 == 64 || TARGET_AVX512VL
   30011              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   30012              :    && ix86_pre_reload_split ()) && 
   30013              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30014              : (TARGET_AVX)) && 
   30015              : #line 14351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30016              : ( 1)))
   30017              :                     return gen_split_3079 (insn, operands);
   30018              :                   break;
   30019              : 
   30020              :                 case 41:
   30021              :                   if ((
   30022              : #line 14347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30023              : ((16 == 64 || TARGET_AVX512VL
   30024              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   30025              :    && ix86_pre_reload_split ()) && 
   30026              : #line 14351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30027              : ( 1)))
   30028              :                     return gen_split_3088 (insn, operands);
   30029              :                   break;
   30030              : 
   30031              :                 case 42:
   30032              :                   if (((
   30033              : #line 14347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30034              : ((64 == 64 || TARGET_AVX512VL
   30035              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   30036              :    && ix86_pre_reload_split ()) && 
   30037              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30038              : (TARGET_AVX512F)) && 
   30039              : #line 14351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30040              : ( 1)))
   30041              :                     return gen_split_3097 (insn, operands);
   30042              :                   break;
   30043              : 
   30044              :                 case 43:
   30045              :                   if (((
   30046              : #line 14347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30047              : ((32 == 64 || TARGET_AVX512VL
   30048              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   30049              :    && ix86_pre_reload_split ()) && 
   30050              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30051              : (TARGET_AVX)) && 
   30052              : #line 14351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30053              : ( 1)))
   30054              :                     return gen_split_3106 (insn, operands);
   30055              :                   break;
   30056              : 
   30057              :                 case 44:
   30058              :                   if ((
   30059              : #line 14347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30060              : ((16 == 64 || TARGET_AVX512VL
   30061              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   30062              :    && ix86_pre_reload_split ()) && 
   30063              : #line 14351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30064              : ( 1)))
   30065              :                     return gen_split_3115 (insn, operands);
   30066              :                   break;
   30067              : 
   30068              :                 case 45:
   30069              :                   if (((
   30070              : #line 14347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30071              : ((64 == 64 || TARGET_AVX512VL
   30072              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   30073              :    && ix86_pre_reload_split ()) && 
   30074              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30075              : (TARGET_AVX512F)) && 
   30076              : #line 14351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30077              : ( 1)))
   30078              :                     return gen_split_3124 (insn, operands);
   30079              :                   break;
   30080              : 
   30081              :                 case 46:
   30082              :                   if (((
   30083              : #line 14347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30084              : ((32 == 64 || TARGET_AVX512VL
   30085              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   30086              :    && ix86_pre_reload_split ()) && 
   30087              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30088              : (TARGET_AVX)) && 
   30089              : #line 14351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30090              : ( 1)))
   30091              :                     return gen_split_3133 (insn, operands);
   30092              :                   break;
   30093              : 
   30094              :                 case 47:
   30095              :                   if ((
   30096              : #line 14347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30097              : ((16 == 64 || TARGET_AVX512VL
   30098              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   30099              :    && ix86_pre_reload_split ()) && 
   30100              : #line 14351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30101              : ( 1)))
   30102              :                     return gen_split_3142 (insn, operands);
   30103              :                   break;
   30104              : 
   30105              :                 default:
   30106              :                   break;
   30107              :                 }
   30108              :               break;
   30109              : 
   30110              :             case AND:
   30111              :               switch (pattern539 (x2))
   30112              :                 {
   30113              :                 case 0:
   30114              :                   if (((
   30115              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30116              : ((64 == 64 || TARGET_AVX512VL
   30117              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   30118              :    && ix86_pre_reload_split ()
   30119              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   30120              :                     STRIP_UNARY (operands[4]))
   30121              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30122              :                        STRIP_UNARY (operands[4]))
   30123              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   30124              :                        STRIP_UNARY (operands[3]))
   30125              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30126              :                        STRIP_UNARY (operands[3])))) && 
   30127              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30128              : (TARGET_AVX512F)) && 
   30129              : #line 14275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30130              : ( 1)))
   30131              :                     return gen_split_2407 (insn, operands);
   30132              :                   break;
   30133              : 
   30134              :                 case 1:
   30135              :                   if (((
   30136              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30137              : ((32 == 64 || TARGET_AVX512VL
   30138              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   30139              :    && ix86_pre_reload_split ()
   30140              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   30141              :                     STRIP_UNARY (operands[4]))
   30142              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30143              :                        STRIP_UNARY (operands[4]))
   30144              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   30145              :                        STRIP_UNARY (operands[3]))
   30146              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30147              :                        STRIP_UNARY (operands[3])))) && 
   30148              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30149              : (TARGET_AVX)) && 
   30150              : #line 14275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30151              : ( 1)))
   30152              :                     return gen_split_2434 (insn, operands);
   30153              :                   break;
   30154              : 
   30155              :                 case 2:
   30156              :                   if ((
   30157              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30158              : ((16 == 64 || TARGET_AVX512VL
   30159              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   30160              :    && ix86_pre_reload_split ()
   30161              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   30162              :                     STRIP_UNARY (operands[4]))
   30163              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30164              :                        STRIP_UNARY (operands[4]))
   30165              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   30166              :                        STRIP_UNARY (operands[3]))
   30167              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30168              :                        STRIP_UNARY (operands[3])))) && 
   30169              : #line 14275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30170              : ( 1)))
   30171              :                     return gen_split_2461 (insn, operands);
   30172              :                   break;
   30173              : 
   30174              :                 case 3:
   30175              :                   if (((
   30176              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30177              : ((64 == 64 || TARGET_AVX512VL
   30178              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   30179              :    && ix86_pre_reload_split ()
   30180              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   30181              :                     STRIP_UNARY (operands[4]))
   30182              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30183              :                        STRIP_UNARY (operands[4]))
   30184              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   30185              :                        STRIP_UNARY (operands[3]))
   30186              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30187              :                        STRIP_UNARY (operands[3])))) && 
   30188              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30189              : (TARGET_AVX512F)) && 
   30190              : #line 14275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30191              : ( 1)))
   30192              :                     return gen_split_2488 (insn, operands);
   30193              :                   break;
   30194              : 
   30195              :                 case 4:
   30196              :                   if (((
   30197              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30198              : ((32 == 64 || TARGET_AVX512VL
   30199              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   30200              :    && ix86_pre_reload_split ()
   30201              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   30202              :                     STRIP_UNARY (operands[4]))
   30203              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30204              :                        STRIP_UNARY (operands[4]))
   30205              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   30206              :                        STRIP_UNARY (operands[3]))
   30207              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30208              :                        STRIP_UNARY (operands[3])))) && 
   30209              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30210              : (TARGET_AVX)) && 
   30211              : #line 14275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30212              : ( 1)))
   30213              :                     return gen_split_2515 (insn, operands);
   30214              :                   break;
   30215              : 
   30216              :                 case 5:
   30217              :                   if ((
   30218              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30219              : ((16 == 64 || TARGET_AVX512VL
   30220              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   30221              :    && ix86_pre_reload_split ()
   30222              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   30223              :                     STRIP_UNARY (operands[4]))
   30224              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30225              :                        STRIP_UNARY (operands[4]))
   30226              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   30227              :                        STRIP_UNARY (operands[3]))
   30228              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30229              :                        STRIP_UNARY (operands[3])))) && 
   30230              : #line 14275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30231              : ( 1)))
   30232              :                     return gen_split_2542 (insn, operands);
   30233              :                   break;
   30234              : 
   30235              :                 case 6:
   30236              :                   if (((
   30237              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30238              : ((64 == 64 || TARGET_AVX512VL
   30239              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   30240              :    && ix86_pre_reload_split ()
   30241              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   30242              :                     STRIP_UNARY (operands[4]))
   30243              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30244              :                        STRIP_UNARY (operands[4]))
   30245              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   30246              :                        STRIP_UNARY (operands[3]))
   30247              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30248              :                        STRIP_UNARY (operands[3])))) && 
   30249              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30250              : (TARGET_AVX512F)) && 
   30251              : #line 14275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30252              : ( 1)))
   30253              :                     return gen_split_2569 (insn, operands);
   30254              :                   break;
   30255              : 
   30256              :                 case 7:
   30257              :                   if (((
   30258              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30259              : ((32 == 64 || TARGET_AVX512VL
   30260              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   30261              :    && ix86_pre_reload_split ()
   30262              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   30263              :                     STRIP_UNARY (operands[4]))
   30264              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30265              :                        STRIP_UNARY (operands[4]))
   30266              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   30267              :                        STRIP_UNARY (operands[3]))
   30268              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30269              :                        STRIP_UNARY (operands[3])))) && 
   30270              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30271              : (TARGET_AVX)) && 
   30272              : #line 14275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30273              : ( 1)))
   30274              :                     return gen_split_2596 (insn, operands);
   30275              :                   break;
   30276              : 
   30277              :                 case 8:
   30278              :                   if ((
   30279              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30280              : ((16 == 64 || TARGET_AVX512VL
   30281              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   30282              :    && ix86_pre_reload_split ()
   30283              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   30284              :                     STRIP_UNARY (operands[4]))
   30285              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30286              :                        STRIP_UNARY (operands[4]))
   30287              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   30288              :                        STRIP_UNARY (operands[3]))
   30289              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30290              :                        STRIP_UNARY (operands[3])))) && 
   30291              : #line 14275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30292              : ( 1)))
   30293              :                     return gen_split_2623 (insn, operands);
   30294              :                   break;
   30295              : 
   30296              :                 case 9:
   30297              :                   if (((
   30298              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30299              : ((64 == 64 || TARGET_AVX512VL
   30300              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   30301              :    && ix86_pre_reload_split ()
   30302              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   30303              :                     STRIP_UNARY (operands[4]))
   30304              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30305              :                        STRIP_UNARY (operands[4]))
   30306              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   30307              :                        STRIP_UNARY (operands[3]))
   30308              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30309              :                        STRIP_UNARY (operands[3])))) && 
   30310              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30311              : (TARGET_AVX512F)) && 
   30312              : #line 14275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30313              : ( 1)))
   30314              :                     return gen_split_2650 (insn, operands);
   30315              :                   break;
   30316              : 
   30317              :                 case 10:
   30318              :                   if (((
   30319              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30320              : ((32 == 64 || TARGET_AVX512VL
   30321              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   30322              :    && ix86_pre_reload_split ()
   30323              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   30324              :                     STRIP_UNARY (operands[4]))
   30325              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30326              :                        STRIP_UNARY (operands[4]))
   30327              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   30328              :                        STRIP_UNARY (operands[3]))
   30329              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30330              :                        STRIP_UNARY (operands[3])))) && 
   30331              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30332              : (TARGET_AVX)) && 
   30333              : #line 14275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30334              : ( 1)))
   30335              :                     return gen_split_2677 (insn, operands);
   30336              :                   break;
   30337              : 
   30338              :                 case 11:
   30339              :                   if ((
   30340              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30341              : ((16 == 64 || TARGET_AVX512VL
   30342              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   30343              :    && ix86_pre_reload_split ()
   30344              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   30345              :                     STRIP_UNARY (operands[4]))
   30346              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30347              :                        STRIP_UNARY (operands[4]))
   30348              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   30349              :                        STRIP_UNARY (operands[3]))
   30350              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30351              :                        STRIP_UNARY (operands[3])))) && 
   30352              : #line 14275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30353              : ( 1)))
   30354              :                     return gen_split_2704 (insn, operands);
   30355              :                   break;
   30356              : 
   30357              :                 default:
   30358              :                   break;
   30359              :                 }
   30360              :               break;
   30361              : 
   30362              :             case IOR:
   30363              :               switch (pattern539 (x2))
   30364              :                 {
   30365              :                 case 0:
   30366              :                   if (((
   30367              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30368              : ((64 == 64 || TARGET_AVX512VL
   30369              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   30370              :    && ix86_pre_reload_split ()
   30371              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   30372              :                     STRIP_UNARY (operands[4]))
   30373              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30374              :                        STRIP_UNARY (operands[4]))
   30375              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   30376              :                        STRIP_UNARY (operands[3]))
   30377              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30378              :                        STRIP_UNARY (operands[3])))) && 
   30379              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30380              : (TARGET_AVX512F)) && 
   30381              : #line 14275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30382              : ( 1)))
   30383              :                     return gen_split_2410 (insn, operands);
   30384              :                   break;
   30385              : 
   30386              :                 case 1:
   30387              :                   if (((
   30388              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30389              : ((32 == 64 || TARGET_AVX512VL
   30390              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   30391              :    && ix86_pre_reload_split ()
   30392              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   30393              :                     STRIP_UNARY (operands[4]))
   30394              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30395              :                        STRIP_UNARY (operands[4]))
   30396              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   30397              :                        STRIP_UNARY (operands[3]))
   30398              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30399              :                        STRIP_UNARY (operands[3])))) && 
   30400              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30401              : (TARGET_AVX)) && 
   30402              : #line 14275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30403              : ( 1)))
   30404              :                     return gen_split_2437 (insn, operands);
   30405              :                   break;
   30406              : 
   30407              :                 case 2:
   30408              :                   if ((
   30409              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30410              : ((16 == 64 || TARGET_AVX512VL
   30411              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   30412              :    && ix86_pre_reload_split ()
   30413              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   30414              :                     STRIP_UNARY (operands[4]))
   30415              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30416              :                        STRIP_UNARY (operands[4]))
   30417              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   30418              :                        STRIP_UNARY (operands[3]))
   30419              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30420              :                        STRIP_UNARY (operands[3])))) && 
   30421              : #line 14275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30422              : ( 1)))
   30423              :                     return gen_split_2464 (insn, operands);
   30424              :                   break;
   30425              : 
   30426              :                 case 3:
   30427              :                   if (((
   30428              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30429              : ((64 == 64 || TARGET_AVX512VL
   30430              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   30431              :    && ix86_pre_reload_split ()
   30432              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   30433              :                     STRIP_UNARY (operands[4]))
   30434              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30435              :                        STRIP_UNARY (operands[4]))
   30436              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   30437              :                        STRIP_UNARY (operands[3]))
   30438              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30439              :                        STRIP_UNARY (operands[3])))) && 
   30440              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30441              : (TARGET_AVX512F)) && 
   30442              : #line 14275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30443              : ( 1)))
   30444              :                     return gen_split_2491 (insn, operands);
   30445              :                   break;
   30446              : 
   30447              :                 case 4:
   30448              :                   if (((
   30449              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30450              : ((32 == 64 || TARGET_AVX512VL
   30451              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   30452              :    && ix86_pre_reload_split ()
   30453              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   30454              :                     STRIP_UNARY (operands[4]))
   30455              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30456              :                        STRIP_UNARY (operands[4]))
   30457              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   30458              :                        STRIP_UNARY (operands[3]))
   30459              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30460              :                        STRIP_UNARY (operands[3])))) && 
   30461              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30462              : (TARGET_AVX)) && 
   30463              : #line 14275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30464              : ( 1)))
   30465              :                     return gen_split_2518 (insn, operands);
   30466              :                   break;
   30467              : 
   30468              :                 case 5:
   30469              :                   if ((
   30470              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30471              : ((16 == 64 || TARGET_AVX512VL
   30472              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   30473              :    && ix86_pre_reload_split ()
   30474              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   30475              :                     STRIP_UNARY (operands[4]))
   30476              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30477              :                        STRIP_UNARY (operands[4]))
   30478              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   30479              :                        STRIP_UNARY (operands[3]))
   30480              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30481              :                        STRIP_UNARY (operands[3])))) && 
   30482              : #line 14275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30483              : ( 1)))
   30484              :                     return gen_split_2545 (insn, operands);
   30485              :                   break;
   30486              : 
   30487              :                 case 6:
   30488              :                   if (((
   30489              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30490              : ((64 == 64 || TARGET_AVX512VL
   30491              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   30492              :    && ix86_pre_reload_split ()
   30493              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   30494              :                     STRIP_UNARY (operands[4]))
   30495              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30496              :                        STRIP_UNARY (operands[4]))
   30497              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   30498              :                        STRIP_UNARY (operands[3]))
   30499              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30500              :                        STRIP_UNARY (operands[3])))) && 
   30501              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30502              : (TARGET_AVX512F)) && 
   30503              : #line 14275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30504              : ( 1)))
   30505              :                     return gen_split_2572 (insn, operands);
   30506              :                   break;
   30507              : 
   30508              :                 case 7:
   30509              :                   if (((
   30510              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30511              : ((32 == 64 || TARGET_AVX512VL
   30512              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   30513              :    && ix86_pre_reload_split ()
   30514              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   30515              :                     STRIP_UNARY (operands[4]))
   30516              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30517              :                        STRIP_UNARY (operands[4]))
   30518              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   30519              :                        STRIP_UNARY (operands[3]))
   30520              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30521              :                        STRIP_UNARY (operands[3])))) && 
   30522              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30523              : (TARGET_AVX)) && 
   30524              : #line 14275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30525              : ( 1)))
   30526              :                     return gen_split_2599 (insn, operands);
   30527              :                   break;
   30528              : 
   30529              :                 case 8:
   30530              :                   if ((
   30531              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30532              : ((16 == 64 || TARGET_AVX512VL
   30533              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   30534              :    && ix86_pre_reload_split ()
   30535              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   30536              :                     STRIP_UNARY (operands[4]))
   30537              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30538              :                        STRIP_UNARY (operands[4]))
   30539              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   30540              :                        STRIP_UNARY (operands[3]))
   30541              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30542              :                        STRIP_UNARY (operands[3])))) && 
   30543              : #line 14275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30544              : ( 1)))
   30545              :                     return gen_split_2626 (insn, operands);
   30546              :                   break;
   30547              : 
   30548              :                 case 9:
   30549              :                   if (((
   30550              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30551              : ((64 == 64 || TARGET_AVX512VL
   30552              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   30553              :    && ix86_pre_reload_split ()
   30554              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   30555              :                     STRIP_UNARY (operands[4]))
   30556              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30557              :                        STRIP_UNARY (operands[4]))
   30558              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   30559              :                        STRIP_UNARY (operands[3]))
   30560              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30561              :                        STRIP_UNARY (operands[3])))) && 
   30562              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30563              : (TARGET_AVX512F)) && 
   30564              : #line 14275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30565              : ( 1)))
   30566              :                     return gen_split_2653 (insn, operands);
   30567              :                   break;
   30568              : 
   30569              :                 case 10:
   30570              :                   if (((
   30571              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30572              : ((32 == 64 || TARGET_AVX512VL
   30573              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   30574              :    && ix86_pre_reload_split ()
   30575              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   30576              :                     STRIP_UNARY (operands[4]))
   30577              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30578              :                        STRIP_UNARY (operands[4]))
   30579              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   30580              :                        STRIP_UNARY (operands[3]))
   30581              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30582              :                        STRIP_UNARY (operands[3])))) && 
   30583              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30584              : (TARGET_AVX)) && 
   30585              : #line 14275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30586              : ( 1)))
   30587              :                     return gen_split_2680 (insn, operands);
   30588              :                   break;
   30589              : 
   30590              :                 case 11:
   30591              :                   if ((
   30592              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30593              : ((16 == 64 || TARGET_AVX512VL
   30594              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   30595              :    && ix86_pre_reload_split ()
   30596              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   30597              :                     STRIP_UNARY (operands[4]))
   30598              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30599              :                        STRIP_UNARY (operands[4]))
   30600              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   30601              :                        STRIP_UNARY (operands[3]))
   30602              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30603              :                        STRIP_UNARY (operands[3])))) && 
   30604              : #line 14275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30605              : ( 1)))
   30606              :                     return gen_split_2707 (insn, operands);
   30607              :                   break;
   30608              : 
   30609              :                 default:
   30610              :                   break;
   30611              :                 }
   30612              :               break;
   30613              : 
   30614              :             case XOR:
   30615              :               switch (pattern539 (x2))
   30616              :                 {
   30617              :                 case 0:
   30618              :                   if (((
   30619              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30620              : ((64 == 64 || TARGET_AVX512VL
   30621              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   30622              :    && ix86_pre_reload_split ()
   30623              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   30624              :                     STRIP_UNARY (operands[4]))
   30625              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30626              :                        STRIP_UNARY (operands[4]))
   30627              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   30628              :                        STRIP_UNARY (operands[3]))
   30629              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30630              :                        STRIP_UNARY (operands[3])))) && 
   30631              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30632              : (TARGET_AVX512F)) && 
   30633              : #line 14275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30634              : ( 1)))
   30635              :                     return gen_split_2413 (insn, operands);
   30636              :                   break;
   30637              : 
   30638              :                 case 1:
   30639              :                   if (((
   30640              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30641              : ((32 == 64 || TARGET_AVX512VL
   30642              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   30643              :    && ix86_pre_reload_split ()
   30644              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   30645              :                     STRIP_UNARY (operands[4]))
   30646              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30647              :                        STRIP_UNARY (operands[4]))
   30648              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   30649              :                        STRIP_UNARY (operands[3]))
   30650              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30651              :                        STRIP_UNARY (operands[3])))) && 
   30652              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30653              : (TARGET_AVX)) && 
   30654              : #line 14275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30655              : ( 1)))
   30656              :                     return gen_split_2440 (insn, operands);
   30657              :                   break;
   30658              : 
   30659              :                 case 2:
   30660              :                   if ((
   30661              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30662              : ((16 == 64 || TARGET_AVX512VL
   30663              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   30664              :    && ix86_pre_reload_split ()
   30665              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   30666              :                     STRIP_UNARY (operands[4]))
   30667              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30668              :                        STRIP_UNARY (operands[4]))
   30669              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   30670              :                        STRIP_UNARY (operands[3]))
   30671              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30672              :                        STRIP_UNARY (operands[3])))) && 
   30673              : #line 14275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30674              : ( 1)))
   30675              :                     return gen_split_2467 (insn, operands);
   30676              :                   break;
   30677              : 
   30678              :                 case 3:
   30679              :                   if (((
   30680              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30681              : ((64 == 64 || TARGET_AVX512VL
   30682              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   30683              :    && ix86_pre_reload_split ()
   30684              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   30685              :                     STRIP_UNARY (operands[4]))
   30686              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30687              :                        STRIP_UNARY (operands[4]))
   30688              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   30689              :                        STRIP_UNARY (operands[3]))
   30690              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30691              :                        STRIP_UNARY (operands[3])))) && 
   30692              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30693              : (TARGET_AVX512F)) && 
   30694              : #line 14275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30695              : ( 1)))
   30696              :                     return gen_split_2494 (insn, operands);
   30697              :                   break;
   30698              : 
   30699              :                 case 4:
   30700              :                   if (((
   30701              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30702              : ((32 == 64 || TARGET_AVX512VL
   30703              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   30704              :    && ix86_pre_reload_split ()
   30705              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   30706              :                     STRIP_UNARY (operands[4]))
   30707              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30708              :                        STRIP_UNARY (operands[4]))
   30709              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   30710              :                        STRIP_UNARY (operands[3]))
   30711              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30712              :                        STRIP_UNARY (operands[3])))) && 
   30713              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30714              : (TARGET_AVX)) && 
   30715              : #line 14275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30716              : ( 1)))
   30717              :                     return gen_split_2521 (insn, operands);
   30718              :                   break;
   30719              : 
   30720              :                 case 5:
   30721              :                   if ((
   30722              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30723              : ((16 == 64 || TARGET_AVX512VL
   30724              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   30725              :    && ix86_pre_reload_split ()
   30726              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   30727              :                     STRIP_UNARY (operands[4]))
   30728              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30729              :                        STRIP_UNARY (operands[4]))
   30730              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   30731              :                        STRIP_UNARY (operands[3]))
   30732              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30733              :                        STRIP_UNARY (operands[3])))) && 
   30734              : #line 14275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30735              : ( 1)))
   30736              :                     return gen_split_2548 (insn, operands);
   30737              :                   break;
   30738              : 
   30739              :                 case 6:
   30740              :                   if (((
   30741              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30742              : ((64 == 64 || TARGET_AVX512VL
   30743              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   30744              :    && ix86_pre_reload_split ()
   30745              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   30746              :                     STRIP_UNARY (operands[4]))
   30747              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30748              :                        STRIP_UNARY (operands[4]))
   30749              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   30750              :                        STRIP_UNARY (operands[3]))
   30751              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30752              :                        STRIP_UNARY (operands[3])))) && 
   30753              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30754              : (TARGET_AVX512F)) && 
   30755              : #line 14275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30756              : ( 1)))
   30757              :                     return gen_split_2575 (insn, operands);
   30758              :                   break;
   30759              : 
   30760              :                 case 7:
   30761              :                   if (((
   30762              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30763              : ((32 == 64 || TARGET_AVX512VL
   30764              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   30765              :    && ix86_pre_reload_split ()
   30766              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   30767              :                     STRIP_UNARY (operands[4]))
   30768              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30769              :                        STRIP_UNARY (operands[4]))
   30770              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   30771              :                        STRIP_UNARY (operands[3]))
   30772              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30773              :                        STRIP_UNARY (operands[3])))) && 
   30774              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30775              : (TARGET_AVX)) && 
   30776              : #line 14275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30777              : ( 1)))
   30778              :                     return gen_split_2602 (insn, operands);
   30779              :                   break;
   30780              : 
   30781              :                 case 8:
   30782              :                   if ((
   30783              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30784              : ((16 == 64 || TARGET_AVX512VL
   30785              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   30786              :    && ix86_pre_reload_split ()
   30787              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   30788              :                     STRIP_UNARY (operands[4]))
   30789              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30790              :                        STRIP_UNARY (operands[4]))
   30791              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   30792              :                        STRIP_UNARY (operands[3]))
   30793              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30794              :                        STRIP_UNARY (operands[3])))) && 
   30795              : #line 14275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30796              : ( 1)))
   30797              :                     return gen_split_2629 (insn, operands);
   30798              :                   break;
   30799              : 
   30800              :                 case 9:
   30801              :                   if (((
   30802              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30803              : ((64 == 64 || TARGET_AVX512VL
   30804              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   30805              :    && ix86_pre_reload_split ()
   30806              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   30807              :                     STRIP_UNARY (operands[4]))
   30808              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30809              :                        STRIP_UNARY (operands[4]))
   30810              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   30811              :                        STRIP_UNARY (operands[3]))
   30812              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30813              :                        STRIP_UNARY (operands[3])))) && 
   30814              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30815              : (TARGET_AVX512F)) && 
   30816              : #line 14275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30817              : ( 1)))
   30818              :                     return gen_split_2656 (insn, operands);
   30819              :                   break;
   30820              : 
   30821              :                 case 10:
   30822              :                   if (((
   30823              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30824              : ((32 == 64 || TARGET_AVX512VL
   30825              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   30826              :    && ix86_pre_reload_split ()
   30827              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   30828              :                     STRIP_UNARY (operands[4]))
   30829              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30830              :                        STRIP_UNARY (operands[4]))
   30831              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   30832              :                        STRIP_UNARY (operands[3]))
   30833              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30834              :                        STRIP_UNARY (operands[3])))) && 
   30835              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30836              : (TARGET_AVX)) && 
   30837              : #line 14275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30838              : ( 1)))
   30839              :                     return gen_split_2683 (insn, operands);
   30840              :                   break;
   30841              : 
   30842              :                 case 11:
   30843              :                   if ((
   30844              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30845              : ((16 == 64 || TARGET_AVX512VL
   30846              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   30847              :    && ix86_pre_reload_split ()
   30848              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   30849              :                     STRIP_UNARY (operands[4]))
   30850              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30851              :                        STRIP_UNARY (operands[4]))
   30852              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   30853              :                        STRIP_UNARY (operands[3]))
   30854              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30855              :                        STRIP_UNARY (operands[3])))) && 
   30856              : #line 14275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30857              : ( 1)))
   30858              :                     return gen_split_2710 (insn, operands);
   30859              :                   break;
   30860              : 
   30861              :                 default:
   30862              :                   break;
   30863              :                 }
   30864              :               break;
   30865              : 
   30866              :             default:
   30867              :               break;
   30868              :             }
   30869              :           break;
   30870              : 
   30871              :         case REG:
   30872              :         case SUBREG:
   30873              :         case MEM:
   30874              :         case VEC_DUPLICATE:
   30875              :           operands[1] = x3;
   30876              :           x5 = XEXP (x2, 1);
   30877              :           operands[2] = x5;
   30878              :           switch (GET_MODE (operands[0]))
   30879              :             {
   30880              :             case E_V16SImode:
   30881              :               if (pattern937 (x2, 
   30882              : E_V16SImode) == 0
   30883              :                   && ((
   30884              : #line 18822 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30885              : (TARGET_AVX512F
   30886              :    && (!false
   30887              :        || SImode == SImode
   30888              :        || SImode == DImode)) && 
   30889              : #line 556 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30890              : (TARGET_AVX512F)) && 
   30891              : #line 18832 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30892              : ( reload_completed && !REG_P (operands[1]) && !false
   30893              :    && optimize_insn_for_speed_p ())))
   30894              :                 return gen_split_3440 (insn, operands);
   30895              :               break;
   30896              : 
   30897              :             case E_V8DImode:
   30898              :               if (pattern937 (x2, 
   30899              : E_V8DImode) == 0
   30900              :                   && ((
   30901              : #line 18822 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30902              : (TARGET_AVX512F
   30903              :    && (!false
   30904              :        || DImode == SImode
   30905              :        || DImode == DImode)) && 
   30906              : #line 556 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30907              : (TARGET_AVX512F)) && 
   30908              : #line 18832 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30909              : ( reload_completed && !REG_P (operands[1]) && !false
   30910              :    && optimize_insn_for_speed_p ())))
   30911              :                 return gen_split_3441 (insn, operands);
   30912              :               break;
   30913              : 
   30914              :             case E_V64QImode:
   30915              :               if (pattern937 (x2, 
   30916              : E_V64QImode) == 0
   30917              :                   && ((
   30918              : #line 18822 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30919              : (TARGET_AVX512F
   30920              :    && (!false
   30921              :        || QImode == SImode
   30922              :        || QImode == DImode)) && 
   30923              : #line 557 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30924              : (TARGET_AVX512BW)) && 
   30925              : #line 18832 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30926              : ( reload_completed && !REG_P (operands[1]) && !false
   30927              :    && optimize_insn_for_speed_p ())))
   30928              :                 return gen_split_3442 (insn, operands);
   30929              :               break;
   30930              : 
   30931              :             case E_V32QImode:
   30932              :               if (pattern937 (x2, 
   30933              : E_V32QImode) == 0
   30934              :                   && ((
   30935              : #line 18822 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30936              : (TARGET_AVX512F
   30937              :    && (!false
   30938              :        || QImode == SImode
   30939              :        || QImode == DImode)) && 
   30940              : #line 557 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30941              : (TARGET_AVX)) && 
   30942              : #line 18832 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30943              : ( reload_completed && !REG_P (operands[1]) && !false
   30944              :    && optimize_insn_for_speed_p ())))
   30945              :                 return gen_split_3443 (insn, operands);
   30946              :               break;
   30947              : 
   30948              :             case E_V16QImode:
   30949              :               if (pattern937 (x2, 
   30950              : E_V16QImode) == 0
   30951              :                   && (
   30952              : #line 18822 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30953              : (TARGET_AVX512F
   30954              :    && (!false
   30955              :        || QImode == SImode
   30956              :        || QImode == DImode)) && 
   30957              : #line 18832 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30958              : ( reload_completed && !REG_P (operands[1]) && !false
   30959              :    && optimize_insn_for_speed_p ())))
   30960              :                 return gen_split_3444 (insn, operands);
   30961              :               break;
   30962              : 
   30963              :             case E_V32HImode:
   30964              :               if (pattern937 (x2, 
   30965              : E_V32HImode) == 0
   30966              :                   && ((
   30967              : #line 18822 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30968              : (TARGET_AVX512F
   30969              :    && (!false
   30970              :        || HImode == SImode
   30971              :        || HImode == DImode)) && 
   30972              : #line 558 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30973              : (TARGET_AVX512BW)) && 
   30974              : #line 18832 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30975              : ( reload_completed && !REG_P (operands[1]) && !false
   30976              :    && optimize_insn_for_speed_p ())))
   30977              :                 return gen_split_3445 (insn, operands);
   30978              :               break;
   30979              : 
   30980              :             case E_V16HImode:
   30981              :               if (pattern937 (x2, 
   30982              : E_V16HImode) == 0
   30983              :                   && ((
   30984              : #line 18822 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30985              : (TARGET_AVX512F
   30986              :    && (!false
   30987              :        || HImode == SImode
   30988              :        || HImode == DImode)) && 
   30989              : #line 558 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30990              : (TARGET_AVX)) && 
   30991              : #line 18832 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30992              : ( reload_completed && !REG_P (operands[1]) && !false
   30993              :    && optimize_insn_for_speed_p ())))
   30994              :                 return gen_split_3446 (insn, operands);
   30995              :               break;
   30996              : 
   30997              :             case E_V8HImode:
   30998              :               if (pattern937 (x2, 
   30999              : E_V8HImode) == 0
   31000              :                   && (
   31001              : #line 18822 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31002              : (TARGET_AVX512F
   31003              :    && (!false
   31004              :        || HImode == SImode
   31005              :        || HImode == DImode)) && 
   31006              : #line 18832 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31007              : ( reload_completed && !REG_P (operands[1]) && !false
   31008              :    && optimize_insn_for_speed_p ())))
   31009              :                 return gen_split_3447 (insn, operands);
   31010              :               break;
   31011              : 
   31012              :             case E_V8SImode:
   31013              :               if (pattern937 (x2, 
   31014              : E_V8SImode) == 0
   31015              :                   && ((
   31016              : #line 18822 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31017              : (TARGET_AVX512F
   31018              :    && (!false
   31019              :        || SImode == SImode
   31020              :        || SImode == DImode)) && 
   31021              : #line 559 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31022              : (TARGET_AVX)) && 
   31023              : #line 18832 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31024              : ( reload_completed && !REG_P (operands[1]) && !false
   31025              :    && optimize_insn_for_speed_p ())))
   31026              :                 return gen_split_3448 (insn, operands);
   31027              :               break;
   31028              : 
   31029              :             case E_V4SImode:
   31030              :               if (pattern937 (x2, 
   31031              : E_V4SImode) == 0
   31032              :                   && (
   31033              : #line 18822 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31034              : (TARGET_AVX512F
   31035              :    && (!false
   31036              :        || SImode == SImode
   31037              :        || SImode == DImode)) && 
   31038              : #line 18832 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31039              : ( reload_completed && !REG_P (operands[1]) && !false
   31040              :    && optimize_insn_for_speed_p ())))
   31041              :                 return gen_split_3449 (insn, operands);
   31042              :               break;
   31043              : 
   31044              :             case E_V4DImode:
   31045              :               if (pattern937 (x2, 
   31046              : E_V4DImode) == 0
   31047              :                   && ((
   31048              : #line 18822 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31049              : (TARGET_AVX512F
   31050              :    && (!false
   31051              :        || DImode == SImode
   31052              :        || DImode == DImode)) && 
   31053              : #line 560 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31054              : (TARGET_AVX)) && 
   31055              : #line 18832 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31056              : ( reload_completed && !REG_P (operands[1]) && !false
   31057              :    && optimize_insn_for_speed_p ())))
   31058              :                 return gen_split_3450 (insn, operands);
   31059              :               break;
   31060              : 
   31061              :             case E_V2DImode:
   31062              :               if (pattern937 (x2, 
   31063              : E_V2DImode) == 0
   31064              :                   && (
   31065              : #line 18822 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31066              : (TARGET_AVX512F
   31067              :    && (!false
   31068              :        || DImode == SImode
   31069              :        || DImode == DImode)) && 
   31070              : #line 18832 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31071              : ( reload_completed && !REG_P (operands[1]) && !false
   31072              :    && optimize_insn_for_speed_p ())))
   31073              :                 return gen_split_3451 (insn, operands);
   31074              :               break;
   31075              : 
   31076              :             default:
   31077              :               break;
   31078              :             }
   31079              :           if (GET_CODE (x3) == VEC_DUPLICATE)
   31080              :             {
   31081              :               switch (pattern607 (x2))
   31082              :                 {
   31083              :                 case 0:
   31084              :                   if ((
   31085              : #line 19126 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31086              : (64 == 64 || TARGET_AVX512VL
   31087              :    || (TARGET_AVX512F && !TARGET_PREFER_AVX256)) && 
   31088              : #line 556 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31089              : (TARGET_AVX512F)))
   31090              :                     return gen_split_3484 (insn, operands);
   31091              :                   break;
   31092              : 
   31093              :                 case 1:
   31094              :                   if ((
   31095              : #line 19126 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31096              : (64 == 64 || TARGET_AVX512VL
   31097              :    || (TARGET_AVX512F && !TARGET_PREFER_AVX256)) && 
   31098              : #line 556 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31099              : (TARGET_AVX512F)))
   31100              :                     return gen_split_3485 (insn, operands);
   31101              :                   break;
   31102              : 
   31103              :                 case 2:
   31104              :                   if ((
   31105              : #line 19126 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31106              : (64 == 64 || TARGET_AVX512VL
   31107              :    || (TARGET_AVX512F && !TARGET_PREFER_AVX256)) && 
   31108              : #line 557 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31109              : (TARGET_AVX512BW)))
   31110              :                     return gen_split_3486 (insn, operands);
   31111              :                   break;
   31112              : 
   31113              :                 case 3:
   31114              :                   if ((
   31115              : #line 19126 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31116              : (32 == 64 || TARGET_AVX512VL
   31117              :    || (TARGET_AVX512F && !TARGET_PREFER_AVX256)) && 
   31118              : #line 557 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31119              : (TARGET_AVX)))
   31120              :                     return gen_split_3487 (insn, operands);
   31121              :                   break;
   31122              : 
   31123              :                 case 4:
   31124              :                   if (
   31125              : #line 19126 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31126              : (16 == 64 || TARGET_AVX512VL
   31127              :    || (TARGET_AVX512F && !TARGET_PREFER_AVX256)))
   31128              :                     return gen_split_3488 (insn, operands);
   31129              :                   break;
   31130              : 
   31131              :                 case 5:
   31132              :                   if ((
   31133              : #line 19126 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31134              : (64 == 64 || TARGET_AVX512VL
   31135              :    || (TARGET_AVX512F && !TARGET_PREFER_AVX256)) && 
   31136              : #line 558 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31137              : (TARGET_AVX512BW)))
   31138              :                     return gen_split_3489 (insn, operands);
   31139              :                   break;
   31140              : 
   31141              :                 case 6:
   31142              :                   if ((
   31143              : #line 19126 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31144              : (32 == 64 || TARGET_AVX512VL
   31145              :    || (TARGET_AVX512F && !TARGET_PREFER_AVX256)) && 
   31146              : #line 558 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31147              : (TARGET_AVX)))
   31148              :                     return gen_split_3490 (insn, operands);
   31149              :                   break;
   31150              : 
   31151              :                 case 7:
   31152              :                   if (
   31153              : #line 19126 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31154              : (16 == 64 || TARGET_AVX512VL
   31155              :    || (TARGET_AVX512F && !TARGET_PREFER_AVX256)))
   31156              :                     return gen_split_3491 (insn, operands);
   31157              :                   break;
   31158              : 
   31159              :                 case 8:
   31160              :                   if ((
   31161              : #line 19126 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31162              : (32 == 64 || TARGET_AVX512VL
   31163              :    || (TARGET_AVX512F && !TARGET_PREFER_AVX256)) && 
   31164              : #line 559 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31165              : (TARGET_AVX)))
   31166              :                     return gen_split_3492 (insn, operands);
   31167              :                   break;
   31168              : 
   31169              :                 case 9:
   31170              :                   if (
   31171              : #line 19126 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31172              : (16 == 64 || TARGET_AVX512VL
   31173              :    || (TARGET_AVX512F && !TARGET_PREFER_AVX256)))
   31174              :                     return gen_split_3493 (insn, operands);
   31175              :                   break;
   31176              : 
   31177              :                 case 10:
   31178              :                   if ((
   31179              : #line 19126 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31180              : (32 == 64 || TARGET_AVX512VL
   31181              :    || (TARGET_AVX512F && !TARGET_PREFER_AVX256)) && 
   31182              : #line 560 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31183              : (TARGET_AVX)))
   31184              :                     return gen_split_3494 (insn, operands);
   31185              :                   break;
   31186              : 
   31187              :                 case 11:
   31188              :                   if (
   31189              : #line 19126 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31190              : (16 == 64 || TARGET_AVX512VL
   31191              :    || (TARGET_AVX512F && !TARGET_PREFER_AVX256)))
   31192              :                     return gen_split_3495 (insn, operands);
   31193              :                   break;
   31194              : 
   31195              :                 default:
   31196              :                   break;
   31197              :                 }
   31198              :             }
   31199              :           break;
   31200              : 
   31201              :         default:
   31202              :           break;
   31203              :         }
   31204              :       break;
   31205              : 
   31206              :     default:
   31207              :       break;
   31208              :     }
   31209              :   operands[1] = x2;
   31210              :   switch (pattern205 ())
   31211              :     {
   31212              :     case 0:
   31213              :       if (((
   31214              : #line 14148 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31215              : ((64 == 64 || TARGET_AVX512VL
   31216              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   31217              :    && ix86_pre_reload_split ()) && 
   31218              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31219              : (TARGET_AVX512F)) && 
   31220              : #line 14152 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31221              : ( 1)))
   31222              :         return gen_split_1727 (insn, operands);
   31223              :       break;
   31224              : 
   31225              :     case 1:
   31226              :       if (((
   31227              : #line 14148 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31228              : ((32 == 64 || TARGET_AVX512VL
   31229              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   31230              :    && ix86_pre_reload_split ()) && 
   31231              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31232              : (TARGET_AVX)) && 
   31233              : #line 14152 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31234              : ( 1)))
   31235              :         return gen_split_1728 (insn, operands);
   31236              :       break;
   31237              : 
   31238              :     case 2:
   31239              :       if ((
   31240              : #line 14148 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31241              : ((16 == 64 || TARGET_AVX512VL
   31242              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   31243              :    && ix86_pre_reload_split ()) && 
   31244              : #line 14152 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31245              : ( 1)))
   31246              :         return gen_split_1729 (insn, operands);
   31247              :       break;
   31248              : 
   31249              :     case 3:
   31250              :       if (((
   31251              : #line 14148 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31252              : ((64 == 64 || TARGET_AVX512VL
   31253              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   31254              :    && ix86_pre_reload_split ()) && 
   31255              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31256              : (TARGET_AVX512F)) && 
   31257              : #line 14152 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31258              : ( 1)))
   31259              :         return gen_split_1730 (insn, operands);
   31260              :       break;
   31261              : 
   31262              :     case 4:
   31263              :       if (((
   31264              : #line 14148 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31265              : ((32 == 64 || TARGET_AVX512VL
   31266              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   31267              :    && ix86_pre_reload_split ()) && 
   31268              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31269              : (TARGET_AVX)) && 
   31270              : #line 14152 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31271              : ( 1)))
   31272              :         return gen_split_1731 (insn, operands);
   31273              :       break;
   31274              : 
   31275              :     case 5:
   31276              :       if ((
   31277              : #line 14148 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31278              : ((16 == 64 || TARGET_AVX512VL
   31279              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   31280              :    && ix86_pre_reload_split ()) && 
   31281              : #line 14152 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31282              : ( 1)))
   31283              :         return gen_split_1732 (insn, operands);
   31284              :       break;
   31285              : 
   31286              :     case 6:
   31287              :       if (((
   31288              : #line 14148 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31289              : ((64 == 64 || TARGET_AVX512VL
   31290              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   31291              :    && ix86_pre_reload_split ()) && 
   31292              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31293              : (TARGET_AVX512F)) && 
   31294              : #line 14152 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31295              : ( 1)))
   31296              :         return gen_split_1733 (insn, operands);
   31297              :       break;
   31298              : 
   31299              :     case 7:
   31300              :       if (((
   31301              : #line 14148 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31302              : ((32 == 64 || TARGET_AVX512VL
   31303              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   31304              :    && ix86_pre_reload_split ()) && 
   31305              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31306              : (TARGET_AVX)) && 
   31307              : #line 14152 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31308              : ( 1)))
   31309              :         return gen_split_1734 (insn, operands);
   31310              :       break;
   31311              : 
   31312              :     case 8:
   31313              :       if ((
   31314              : #line 14148 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31315              : ((16 == 64 || TARGET_AVX512VL
   31316              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   31317              :    && ix86_pre_reload_split ()) && 
   31318              : #line 14152 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31319              : ( 1)))
   31320              :         return gen_split_1735 (insn, operands);
   31321              :       break;
   31322              : 
   31323              :     case 9:
   31324              :       if (((
   31325              : #line 14148 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31326              : ((64 == 64 || TARGET_AVX512VL
   31327              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   31328              :    && ix86_pre_reload_split ()) && 
   31329              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31330              : (TARGET_AVX512F)) && 
   31331              : #line 14152 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31332              : ( 1)))
   31333              :         return gen_split_1736 (insn, operands);
   31334              :       break;
   31335              : 
   31336              :     case 10:
   31337              :       if (((
   31338              : #line 14148 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31339              : ((32 == 64 || TARGET_AVX512VL
   31340              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   31341              :    && ix86_pre_reload_split ()) && 
   31342              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31343              : (TARGET_AVX)) && 
   31344              : #line 14152 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31345              : ( 1)))
   31346              :         return gen_split_1737 (insn, operands);
   31347              :       break;
   31348              : 
   31349              :     case 11:
   31350              :       if (((
   31351              : #line 14148 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31352              : ((16 == 64 || TARGET_AVX512VL
   31353              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   31354              :    && ix86_pre_reload_split ()) && 
   31355              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31356              : (TARGET_SSE2)) && 
   31357              : #line 14152 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31358              : ( 1)))
   31359              :         return gen_split_1738 (insn, operands);
   31360              :       break;
   31361              : 
   31362              :     default:
   31363              :       break;
   31364              :     }
   31365              :   switch (GET_CODE (x2))
   31366              :     {
   31367              :     case AND:
   31368              :       return split_74 (x1, insn);
   31369              : 
   31370              :     case IOR:
   31371              :       return split_73 (x1, insn);
   31372              : 
   31373              :     case XOR:
   31374              :       return split_72 (x1, insn);
   31375              : 
   31376              :     default:
   31377              :       return NULL;
   31378              :     }
   31379              : }
   31380              : 
   31381              :  rtx_insn *
   31382              : peephole2_30 (rtx x1 ATTRIBUTE_UNUSED,
   31383              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   31384              :         int *pmatch_len_ ATTRIBUTE_UNUSED)
   31385              : {
   31386              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   31387              :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
   31388              :   rtx x10, x11, x12, x13, x14, x15, x16, x17;
   31389              :   rtx x18, x19, x20, x21;
   31390              :   rtx_insn *res ATTRIBUTE_UNUSED;
   31391              :   if (peep2_current_count < 2)
   31392              :     return NULL;
   31393              :   x2 = XEXP (x1, 0);
   31394              :   operands[0] = x2;
   31395              :   x3 = XEXP (x1, 1);
   31396              :   x4 = XEXP (x3, 0);
   31397              :   operands[1] = x4;
   31398              :   if (!general_reg_operand (operands[1], E_QImode))
   31399              :     return NULL;
   31400              :   x5 = PATTERN (peep2_next_insn (1));
   31401              :   if (GET_CODE (x5) != PARALLEL
   31402              :       || XVECLEN (x5, 0) != 2)
   31403              :     return NULL;
   31404              :   x6 = XVECEXP (x5, 0, 0);
   31405              :   if (GET_CODE (x6) != SET)
   31406              :     return NULL;
   31407              :   x7 = XVECEXP (x5, 0, 1);
   31408              :   if (GET_CODE (x7) != CLOBBER)
   31409              :     return NULL;
   31410              :   switch (GET_MODE (operands[0]))
   31411              :     {
   31412              :     case E_HImode:
   31413              :       if (!register_operand (operands[0], E_HImode)
   31414              :           || GET_MODE (x3) != E_HImode)
   31415              :         return NULL;
   31416              :       x8 = XEXP (x6, 1);
   31417              :       if (GET_CODE (x8) != UNSPEC
   31418              :           || XVECLEN (x8, 0) != 1
   31419              :           || XINT (x8, 1) != 28
   31420              :           || GET_MODE (x8) != E_CCmode)
   31421              :         return NULL;
   31422              :       x9 = XEXP (x6, 0);
   31423              :       if (GET_CODE (x9) != REG
   31424              :           || REGNO (x9) != 17
   31425              :           || GET_MODE (x9) != E_CCmode)
   31426              :         return NULL;
   31427              :       x10 = XVECEXP (x8, 0, 0);
   31428              :       if (!rtx_equal_p (x10, operands[0]))
   31429              :         return NULL;
   31430              :       x11 = XEXP (x7, 0);
   31431              :       if (!rtx_equal_p (x11, operands[0]))
   31432              :         return NULL;
   31433              :       *pmatch_len_ = 1;
   31434              :       return gen_peephole2_217 (insn, operands);
   31435              : 
   31436              :     case E_SImode:
   31437              :       if (peep2_current_count < 3
   31438              :           || peep2_current_count < 4
   31439              :           || !register_operand (operands[0], E_SImode)
   31440              :           || GET_MODE (x3) != E_SImode)
   31441              :         return NULL;
   31442              :       x8 = XEXP (x6, 1);
   31443              :       if (GET_CODE (x8) != POPCOUNT
   31444              :           || GET_MODE (x8) != E_SImode)
   31445              :         return NULL;
   31446              :       x11 = XEXP (x7, 0);
   31447              :       if (GET_CODE (x11) != REG
   31448              :           || REGNO (x11) != 17
   31449              :           || GET_MODE (x11) != E_CCmode)
   31450              :         return NULL;
   31451              :       x9 = XEXP (x6, 0);
   31452              :       operands[2] = x9;
   31453              :       if (!register_operand (operands[2], E_SImode))
   31454              :         return NULL;
   31455              :       x12 = XEXP (x8, 0);
   31456              :       if (!rtx_equal_p (x12, operands[0]))
   31457              :         return NULL;
   31458              :       x13 = PATTERN (peep2_next_insn (2));
   31459              :       if (GET_CODE (x13) != SET
   31460              :           || pattern1779 (x13) != 0)
   31461              :         return NULL;
   31462              :       x14 = XEXP (x13, 1);
   31463              :       x15 = XEXP (x14, 0);
   31464              :       x16 = XEXP (x15, 0);
   31465              :       operands[3] = x16;
   31466              :       if (!register_operand (operands[3], E_QImode))
   31467              :         return NULL;
   31468              :       x17 = PATTERN (peep2_next_insn (3));
   31469              :       if (GET_CODE (x17) != SET)
   31470              :         return NULL;
   31471              :       x18 = XEXP (x17, 1);
   31472              :       if (GET_CODE (x18) != IF_THEN_ELSE)
   31473              :         return NULL;
   31474              :       x19 = XEXP (x18, 0);
   31475              :       if (!bt_comparison_operator (x19, E_VOIDmode))
   31476              :         return NULL;
   31477              :       operands[4] = x19;
   31478              :       if (pattern1899 (x17) != 0)
   31479              :         return NULL;
   31480              :       x20 = XEXP (x18, 1);
   31481              :       x21 = XEXP (x20, 0);
   31482              :       operands[5] = x21;
   31483              :       if (!
   31484              : #line 23872 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   31485              : (REGNO (operands[2]) == REGNO (operands[3])
   31486              :    && peep2_reg_dead_p (3, operands[0])
   31487              :    && peep2_reg_dead_p (3, operands[2])
   31488              :    && peep2_regno_dead_p (4, FLAGS_REG)))
   31489              :         return NULL;
   31490              :       *pmatch_len_ = 3;
   31491              :       return gen_peephole2_218 (insn, operands);
   31492              : 
   31493              :     default:
   31494              :       return NULL;
   31495              :     }
   31496              : }
   31497              : 
   31498              :  rtx_insn *
   31499              : peephole2_35 (rtx x1 ATTRIBUTE_UNUSED,
   31500              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   31501              :         int *pmatch_len_ ATTRIBUTE_UNUSED)
   31502              : {
   31503              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   31504              :   rtx x2, x3, x4, x5, x6, x7, x8;
   31505              :   rtx_insn *res ATTRIBUTE_UNUSED;
   31506              :   if (peep2_current_count >= 2)
   31507              :     {
   31508              :       res = peephole2_34 (x1, insn, pmatch_len_);
   31509              :       if (res != NULL_RTX)
   31510              :         return res;
   31511              :     }
   31512              :   x2 = XEXP (x1, 0);
   31513              :   operands[0] = x2;
   31514              :   x3 = XEXP (x1, 1);
   31515              :   operands[1] = x3;
   31516              :   if (const0_operand (operands[1], E_VOIDmode)
   31517              :       && general_reg_operand (operands[0], E_VOIDmode)
   31518              :       && 
   31519              : #line 29878 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   31520              : (GET_MODE_SIZE (GET_MODE (operands[0])) <= UNITS_PER_WORD
   31521              :    && (! TARGET_USE_MOV0 || optimize_insn_for_size_p ())
   31522              :    && peep2_regno_dead_p (0, FLAGS_REG)))
   31523              :     {
   31524              :       *pmatch_len_ = 0;
   31525              :       res = gen_peephole2_368 (insn, operands);
   31526              :       if (res != NULL_RTX)
   31527              :         return res;
   31528              :     }
   31529              :   if (peep2_current_count < 2
   31530              :       || !memory_operand (operands[1], E_DFmode)
   31531              :       || !sse_reg_operand (operands[0], E_DFmode))
   31532              :     return NULL;
   31533              :   x4 = PATTERN (peep2_next_insn (1));
   31534              :   if (GET_CODE (x4) != SET)
   31535              :     return NULL;
   31536              :   x5 = XEXP (x4, 1);
   31537              :   if (GET_CODE (x5) != VEC_CONCAT
   31538              :       || GET_MODE (x5) != E_V2DFmode)
   31539              :     return NULL;
   31540              :   x6 = XEXP (x4, 0);
   31541              :   operands[2] = x6;
   31542              :   if (!sse_reg_operand (operands[2], E_V2DFmode))
   31543              :     return NULL;
   31544              :   x7 = XEXP (x5, 0);
   31545              :   operands[4] = x7;
   31546              :   if (!sse_reg_operand (operands[4], E_DFmode))
   31547              :     return NULL;
   31548              :   x8 = XEXP (x5, 1);
   31549              :   operands[3] = x8;
   31550              :   if (!memory_operand (operands[3], E_DFmode)
   31551              :       || !
   31552              : #line 1992 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31553              : (TARGET_SSE2 && TARGET_SSE_UNALIGNED_LOAD_OPTIMAL
   31554              :    && REGNO (operands[4]) == REGNO (operands[2])
   31555              :    && ix86_operands_ok_for_move_multiple (operands, true, DFmode)))
   31556              :     return NULL;
   31557              :   *pmatch_len_ = 1;
   31558              :   return gen_peephole2_437 (insn, operands);
   31559              : }
   31560              : 
   31561              :  rtx_insn *
   31562              : peephole2_39 (rtx x1 ATTRIBUTE_UNUSED,
   31563              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   31564              :         int *pmatch_len_ ATTRIBUTE_UNUSED)
   31565              : {
   31566              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   31567              :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
   31568              :   rtx x10, x11, x12, x13, x14, x15, x16, x17;
   31569              :   rtx x18, x19, x20, x21, x22, x23, x24, x25;
   31570              :   rtx x26, x27, x28, x29, x30, x31;
   31571              :   rtx_insn *res ATTRIBUTE_UNUSED;
   31572              :   x2 = XEXP (x1, 1);
   31573              :   switch (GET_CODE (x2))
   31574              :     {
   31575              :     case COMPARE:
   31576              :       operands[1] = x2;
   31577              :       if (!compare_operator (operands[1], E_VOIDmode))
   31578              :         return NULL;
   31579              :       x3 = XEXP (x2, 1);
   31580              :       if (GET_CODE (x3) != CONST_INT
   31581              :           || !flags_reg_operand (operands[0], E_VOIDmode))
   31582              :         return NULL;
   31583              :       x4 = XEXP (x2, 0);
   31584              :       switch (GET_CODE (x4))
   31585              :         {
   31586              :         case REG:
   31587              :         case SUBREG:
   31588              :         case MEM:
   31589              :           operands[2] = x4;
   31590              :           if (memory_operand (operands[2], E_SImode)
   31591              :               && XWINT (x3, 0) == 0L
   31592              :               && 
   31593              : #line 29099 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   31594              : (optimize_insn_for_speed_p () && ix86_match_ccmode (insn, CCNOmode)))
   31595              :             {
   31596              :               *pmatch_len_ = 0;
   31597              :               res = gen_peephole2_288 (insn, operands);
   31598              :               if (res != NULL_RTX)
   31599              :                 return res;
   31600              :             }
   31601              :           if (!register_operand (operands[2], E_VOIDmode))
   31602              :             return NULL;
   31603              :           operands[3] = x3;
   31604              :           if (!const_int_operand (operands[3], E_VOIDmode)
   31605              :               || !
   31606              : #line 30135 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   31607              : ((((!TARGET_FUSE_CMP_AND_BRANCH || optimize_insn_for_size_p ())
   31608              :      && incdec_operand (operands[3], GET_MODE (operands[3])))
   31609              :     || (!TARGET_FUSE_CMP_AND_BRANCH
   31610              :         && INTVAL (operands[3]) == 128))
   31611              :    && ix86_match_ccmode (insn, CCGCmode)
   31612              :    && peep2_reg_dead_p (1, operands[2])))
   31613              :             return NULL;
   31614              :           *pmatch_len_ = 0;
   31615              :           return gen_peephole2_423 (insn, operands);
   31616              : 
   31617              :         case AND:
   31618              :           if (XWINT (x3, 0) != 0L)
   31619              :             return NULL;
   31620              :           x5 = XEXP (x4, 0);
   31621              :           operands[2] = x5;
   31622              :           x6 = XEXP (x4, 1);
   31623              :           operands[3] = x6;
   31624              :           switch (GET_MODE (x4))
   31625              :             {
   31626              :             case E_SImode:
   31627              :               if (register_operand (operands[2], E_SImode)
   31628              :                   && immediate_operand (operands[3], E_SImode)
   31629              :                   && 
   31630              : #line 29141 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   31631              : (ix86_match_ccmode (insn, CCNOmode)
   31632              :    && (REGNO (operands[2]) != AX_REG
   31633              :        || satisfies_constraint_K (operands[3]))
   31634              :    && peep2_reg_dead_p (1, operands[2])))
   31635              :                 {
   31636              :                   *pmatch_len_ = 0;
   31637              :                   res = gen_peephole2_292 (insn, operands);
   31638              :                   if (res != NULL_RTX)
   31639              :                     return res;
   31640              :                 }
   31641              :               break;
   31642              : 
   31643              :             case E_QImode:
   31644              :               if (register_operand (operands[2], E_QImode)
   31645              :                   && immediate_operand (operands[3], E_QImode)
   31646              :                   && 
   31647              : #line 29161 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   31648              : (! TARGET_PARTIAL_REG_STALL
   31649              :    && ix86_match_ccmode (insn, CCNOmode)
   31650              :    && REGNO (operands[2]) != AX_REG
   31651              :    && peep2_reg_dead_p (1, operands[2])))
   31652              :                 {
   31653              :                   *pmatch_len_ = 0;
   31654              :                   res = gen_peephole2_293 (insn, operands);
   31655              :                   if (res != NULL_RTX)
   31656              :                     return res;
   31657              :                 }
   31658              :               break;
   31659              : 
   31660              :             default:
   31661              :               break;
   31662              :             }
   31663              :           if (GET_CODE (x5) != SUBREG
   31664              :               || maybe_ne (SUBREG_BYTE (x5), 0)
   31665              :               || GET_MODE (x5) != E_QImode)
   31666              :             return NULL;
   31667              :           x7 = XEXP (x5, 0);
   31668              :           switch (GET_CODE (x7))
   31669              :             {
   31670              :             case ASHIFTRT:
   31671              :             case LSHIFTRT:
   31672              :             case SIGN_EXTRACT:
   31673              :             case ZERO_EXTRACT:
   31674              :               operands[4] = x7;
   31675              :               if (GET_MODE (x4) != E_QImode)
   31676              :                 return NULL;
   31677              :               x8 = XEXP (x7, 0);
   31678              :               operands[2] = x8;
   31679              :               if (!int248_register_operand (operands[2], E_VOIDmode))
   31680              :                 return NULL;
   31681              :               operands[3] = x6;
   31682              :               if (!const_int_operand (operands[3], E_VOIDmode))
   31683              :                 return NULL;
   31684              :               switch (GET_MODE (operands[4]))
   31685              :                 {
   31686              :                 case E_HImode:
   31687              :                   if (!extract_high_operator (operands[4], E_HImode)
   31688              :                       || !
   31689              : #line 29181 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   31690              : (! TARGET_PARTIAL_REG_STALL
   31691              :    && ix86_match_ccmode (insn, CCNOmode)
   31692              :    && REGNO (operands[2]) != AX_REG
   31693              :    && peep2_reg_dead_p (1, operands[2])))
   31694              :                     return NULL;
   31695              :                   *pmatch_len_ = 0;
   31696              :                   return gen_peephole2_294 (insn, operands);
   31697              : 
   31698              :                 case E_SImode:
   31699              :                   if (!extract_high_operator (operands[4], E_SImode)
   31700              :                       || !
   31701              : #line 29181 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   31702              : (! TARGET_PARTIAL_REG_STALL
   31703              :    && ix86_match_ccmode (insn, CCNOmode)
   31704              :    && REGNO (operands[2]) != AX_REG
   31705              :    && peep2_reg_dead_p (1, operands[2])))
   31706              :                     return NULL;
   31707              :                   *pmatch_len_ = 0;
   31708              :                   return gen_peephole2_295 (insn, operands);
   31709              : 
   31710              :                 case E_DImode:
   31711              :                   if (!extract_high_operator (operands[4], E_DImode)
   31712              :                       || !(
   31713              : #line 29181 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   31714              : (! TARGET_PARTIAL_REG_STALL
   31715              :    && ix86_match_ccmode (insn, CCNOmode)
   31716              :    && REGNO (operands[2]) != AX_REG
   31717              :    && peep2_reg_dead_p (1, operands[2])) && 
   31718              : #line 1195 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   31719              : (TARGET_64BIT)))
   31720              :                     return NULL;
   31721              :                   *pmatch_len_ = 0;
   31722              :                   return gen_peephole2_296 (insn, operands);
   31723              : 
   31724              :                 default:
   31725              :                   return NULL;
   31726              :                 }
   31727              : 
   31728              :             default:
   31729              :               return NULL;
   31730              :             }
   31731              : 
   31732              :         default:
   31733              :           return NULL;
   31734              :         }
   31735              : 
   31736              :     case NOT:
   31737              :       x4 = XEXP (x2, 0);
   31738              :       operands[1] = x4;
   31739              :       switch (GET_MODE (operands[0]))
   31740              :         {
   31741              :         case E_QImode:
   31742              :           if (!nonimmediate_gr_operand (operands[0], E_QImode)
   31743              :               || GET_MODE (x2) != E_QImode
   31744              :               || !nonimmediate_gr_operand (operands[1], E_QImode)
   31745              :               || !
   31746              : #line 29117 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   31747              : (optimize_insn_for_speed_p ()
   31748              :    && ((TARGET_NOT_UNPAIRABLE
   31749              :         && (!MEM_P (operands[0])
   31750              :             || !memory_displacement_operand (operands[0], QImode)))
   31751              :        || (TARGET_NOT_VECTORMODE
   31752              :            && long_memory_operand (operands[0], QImode)))
   31753              :    && peep2_regno_dead_p (0, FLAGS_REG)))
   31754              :             return NULL;
   31755              :           *pmatch_len_ = 0;
   31756              :           return gen_peephole2_289 (insn, operands);
   31757              : 
   31758              :         case E_HImode:
   31759              :           if (!nonimmediate_gr_operand (operands[0], E_HImode)
   31760              :               || GET_MODE (x2) != E_HImode
   31761              :               || !nonimmediate_gr_operand (operands[1], E_HImode)
   31762              :               || !
   31763              : #line 29117 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   31764              : (optimize_insn_for_speed_p ()
   31765              :    && ((TARGET_NOT_UNPAIRABLE
   31766              :         && (!MEM_P (operands[0])
   31767              :             || !memory_displacement_operand (operands[0], HImode)))
   31768              :        || (TARGET_NOT_VECTORMODE
   31769              :            && long_memory_operand (operands[0], HImode)))
   31770              :    && peep2_regno_dead_p (0, FLAGS_REG)))
   31771              :             return NULL;
   31772              :           *pmatch_len_ = 0;
   31773              :           return gen_peephole2_290 (insn, operands);
   31774              : 
   31775              :         case E_SImode:
   31776              :           if (!nonimmediate_gr_operand (operands[0], E_SImode)
   31777              :               || GET_MODE (x2) != E_SImode
   31778              :               || !nonimmediate_gr_operand (operands[1], E_SImode)
   31779              :               || !
   31780              : #line 29117 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   31781              : (optimize_insn_for_speed_p ()
   31782              :    && ((TARGET_NOT_UNPAIRABLE
   31783              :         && (!MEM_P (operands[0])
   31784              :             || !memory_displacement_operand (operands[0], SImode)))
   31785              :        || (TARGET_NOT_VECTORMODE
   31786              :            && long_memory_operand (operands[0], SImode)))
   31787              :    && peep2_regno_dead_p (0, FLAGS_REG)))
   31788              :             return NULL;
   31789              :           *pmatch_len_ = 0;
   31790              :           return gen_peephole2_291 (insn, operands);
   31791              : 
   31792              :         default:
   31793              :           return NULL;
   31794              :         }
   31795              : 
   31796              :     case CONST_INT:
   31797              :     case CONST_WIDE_INT:
   31798              :     case CONST_POLY_INT:
   31799              :     case CONST_FIXED:
   31800              :     case CONST_DOUBLE:
   31801              :     case CONST_VECTOR:
   31802              :     case CONST:
   31803              :     case REG:
   31804              :     case SUBREG:
   31805              :     case MEM:
   31806              :     case LABEL_REF:
   31807              :     case SYMBOL_REF:
   31808              :     case HIGH:
   31809              :       if (GET_CODE (x2) == CONST_INT)
   31810              :         {
   31811              :           res = peephole2_38 (x1, insn, pmatch_len_);
   31812              :           if (res != NULL_RTX)
   31813              :             return res;
   31814              :         }
   31815              :       if (peep2_current_count < 2
   31816              :           || peep2_current_count < 3)
   31817              :         return NULL;
   31818              :       operands[1] = x2;
   31819              :       x9 = PATTERN (peep2_next_insn (1));
   31820              :       if (pattern610 (x9, 
   31821              : 4) != 0)
   31822              :         return NULL;
   31823              :       x10 = XVECEXP (x9, 0, 1);
   31824              :       if (GET_CODE (x10) != SET)
   31825              :         return NULL;
   31826              :       x11 = XEXP (x10, 1);
   31827              :       if (GET_CODE (x11) != UNSPEC_VOLATILE
   31828              :           || XVECLEN (x11, 0) != 1)
   31829              :         return NULL;
   31830              :       x12 = XVECEXP (x11, 0, 0);
   31831              :       if (x12 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
   31832              :         return NULL;
   31833              :       x13 = XVECEXP (x9, 0, 2);
   31834              :       if (GET_CODE (x13) != SET)
   31835              :         return NULL;
   31836              :       x14 = XEXP (x13, 0);
   31837              :       if (GET_CODE (x14) != REG
   31838              :           || REGNO (x14) != 17)
   31839              :         return NULL;
   31840              :       x15 = XVECEXP (x9, 0, 0);
   31841              :       x16 = XEXP (x15, 1);
   31842              :       x17 = XVECEXP (x16, 0, 0);
   31843              :       operands[2] = x17;
   31844              :       x18 = XVECEXP (x16, 0, 2);
   31845              :       operands[3] = x18;
   31846              :       if (pattern1715 (x9) != 0)
   31847              :         return NULL;
   31848              :       x19 = PATTERN (peep2_next_insn (2));
   31849              :       if (GET_CODE (x19) != SET)
   31850              :         return NULL;
   31851              :       x20 = XEXP (x19, 1);
   31852              :       if (GET_CODE (x20) != COMPARE)
   31853              :         return NULL;
   31854              :       x21 = XEXP (x19, 0);
   31855              :       if (GET_CODE (x21) != REG
   31856              :           || REGNO (x21) != 17)
   31857              :         return NULL;
   31858              :       x22 = XEXP (x20, 0);
   31859              :       operands[5] = x22;
   31860              :       x23 = XEXP (x20, 1);
   31861              :       operands[6] = x23;
   31862              :       switch (GET_MODE (operands[0]))
   31863              :         {
   31864              :         case E_HImode:
   31865              :           if (!register_operand (operands[0], E_HImode)
   31866              :               || !general_operand (operands[1], E_HImode)
   31867              :               || XINT (x16, 1) != 109
   31868              :               || GET_MODE (x16) != E_HImode
   31869              :               || pattern1893 (x9, 
   31870              : E_HImode) != 0
   31871              :               || !
   31872              : #line 521 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md"
   31873              : ((rtx_equal_p (operands[0], operands[5])
   31874              :     && rtx_equal_p (operands[1], operands[6]))
   31875              :    || (rtx_equal_p (operands[0], operands[6])
   31876              :        && rtx_equal_p (operands[1], operands[5]))))
   31877              :             return NULL;
   31878              :           *pmatch_len_ = 2;
   31879              :           return gen_peephole2_440 (insn, operands);
   31880              : 
   31881              :         case E_SImode:
   31882              :           if (!register_operand (operands[0], E_SImode)
   31883              :               || GET_MODE (x16) != E_SImode)
   31884              :             return NULL;
   31885              :           if (XINT (x16, 1) == 109
   31886              :               && general_operand (operands[1], E_SImode)
   31887              :               && pattern1893 (x9, 
   31888              : E_SImode) == 0
   31889              :               && 
   31890              : #line 521 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md"
   31891              : ((rtx_equal_p (operands[0], operands[5])
   31892              :     && rtx_equal_p (operands[1], operands[6]))
   31893              :    || (rtx_equal_p (operands[0], operands[6])
   31894              :        && rtx_equal_p (operands[1], operands[5]))))
   31895              :             {
   31896              :               *pmatch_len_ = 2;
   31897              :               res = gen_peephole2_441 (insn, operands);
   31898              :               if (res != NULL_RTX)
   31899              :                 return res;
   31900              :             }
   31901              :           if (XINT (x16, 1) != 112
   31902              :               || pattern1891 (x9, 
   31903              : E_SImode) != 0)
   31904              :             return NULL;
   31905              :           if (
   31906              : #line 1149 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md"
   31907              : (TARGET_CMPCCXADD && TARGET_64BIT
   31908              :    && rtx_equal_p (operands[0], operands[5])
   31909              :    && rtx_equal_p (operands[1], operands[6])))
   31910              :             {
   31911              :               *pmatch_len_ = 2;
   31912              :               res = gen_peephole2_459 (insn, operands);
   31913              :               if (res != NULL_RTX)
   31914              :                 return res;
   31915              :             }
   31916              :           if (peep2_current_count < 4)
   31917              :             return NULL;
   31918              :           x24 = PATTERN (peep2_next_insn (3));
   31919              :           switch (pattern1913 (x24))
   31920              :             {
   31921              :             case 0:
   31922              :               if (!
   31923              : #line 1191 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md"
   31924              : (TARGET_CMPCCXADD && TARGET_64BIT
   31925              :    && rtx_equal_p (operands[0], operands[6])
   31926              :    && rtx_equal_p (operands[1], operands[5])
   31927              :    && peep2_regno_dead_p (4, FLAGS_REG)))
   31928              :                 return NULL;
   31929              :               *pmatch_len_ = 3;
   31930              :               return gen_peephole2_461 (insn, operands);
   31931              : 
   31932              :             case 1:
   31933              :               if (!
   31934              : #line 1249 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md"
   31935              : (TARGET_CMPCCXADD && TARGET_64BIT
   31936              :    && rtx_equal_p (operands[0], operands[6])
   31937              :    && rtx_equal_p (operands[1], operands[5])
   31938              :    && peep2_regno_dead_p (4, FLAGS_REG)))
   31939              :                 return NULL;
   31940              :               *pmatch_len_ = 3;
   31941              :               return gen_peephole2_463 (insn, operands);
   31942              : 
   31943              :             default:
   31944              :               return NULL;
   31945              :             }
   31946              : 
   31947              :         case E_DImode:
   31948              :           if (!register_operand (operands[0], E_DImode)
   31949              :               || GET_MODE (x16) != E_DImode)
   31950              :             return NULL;
   31951              :           if (XINT (x16, 1) == 109
   31952              :               && general_operand (operands[1], E_DImode)
   31953              :               && pattern1893 (x9, 
   31954              : E_DImode) == 0
   31955              :               && (
   31956              : #line 521 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md"
   31957              : ((rtx_equal_p (operands[0], operands[5])
   31958              :     && rtx_equal_p (operands[1], operands[6]))
   31959              :    || (rtx_equal_p (operands[0], operands[6])
   31960              :        && rtx_equal_p (operands[1], operands[5]))) && 
   31961              : #line 1192 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   31962              : (TARGET_64BIT)))
   31963              :             {
   31964              :               *pmatch_len_ = 2;
   31965              :               res = gen_peephole2_442 (insn, operands);
   31966              :               if (res != NULL_RTX)
   31967              :                 return res;
   31968              :             }
   31969              :           if (XINT (x16, 1) != 112
   31970              :               || pattern1891 (x9, 
   31971              : E_DImode) != 0)
   31972              :             return NULL;
   31973              :           if (
   31974              : #line 1149 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md"
   31975              : (TARGET_CMPCCXADD && TARGET_64BIT
   31976              :    && rtx_equal_p (operands[0], operands[5])
   31977              :    && rtx_equal_p (operands[1], operands[6])))
   31978              :             {
   31979              :               *pmatch_len_ = 2;
   31980              :               res = gen_peephole2_460 (insn, operands);
   31981              :               if (res != NULL_RTX)
   31982              :                 return res;
   31983              :             }
   31984              :           if (peep2_current_count < 4)
   31985              :             return NULL;
   31986              :           x24 = PATTERN (peep2_next_insn (3));
   31987              :           switch (pattern1913 (x24))
   31988              :             {
   31989              :             case 0:
   31990              :               if (!
   31991              : #line 1191 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md"
   31992              : (TARGET_CMPCCXADD && TARGET_64BIT
   31993              :    && rtx_equal_p (operands[0], operands[6])
   31994              :    && rtx_equal_p (operands[1], operands[5])
   31995              :    && peep2_regno_dead_p (4, FLAGS_REG)))
   31996              :                 return NULL;
   31997              :               *pmatch_len_ = 3;
   31998              :               return gen_peephole2_462 (insn, operands);
   31999              : 
   32000              :             case 1:
   32001              :               if (!
   32002              : #line 1249 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md"
   32003              : (TARGET_CMPCCXADD && TARGET_64BIT
   32004              :    && rtx_equal_p (operands[0], operands[6])
   32005              :    && rtx_equal_p (operands[1], operands[5])
   32006              :    && peep2_regno_dead_p (4, FLAGS_REG)))
   32007              :                 return NULL;
   32008              :               *pmatch_len_ = 3;
   32009              :               return gen_peephole2_464 (insn, operands);
   32010              : 
   32011              :             default:
   32012              :               return NULL;
   32013              :             }
   32014              : 
   32015              :         default:
   32016              :           return NULL;
   32017              :         }
   32018              : 
   32019              :     case PLUS:
   32020              :       switch (pattern24 (x2))
   32021              :         {
   32022              :         case 0:
   32023              :           x3 = XEXP (x2, 1);
   32024              :           operands[1] = x3;
   32025              :           if (x86_64_nonmemory_operand (operands[1], E_SImode))
   32026              :             {
   32027              :               x4 = XEXP (x2, 0);
   32028              :               if (rtx_equal_p (x4, operands[0])
   32029              :                   && 
   32030              : #line 29915 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32031              : (!TARGET_OPT_AGU
   32032              :    && peep2_regno_dead_p (0, FLAGS_REG)))
   32033              :                 {
   32034              :                   *pmatch_len_ = 0;
   32035              :                   res = gen_peephole2_374 (insn, operands);
   32036              :                   if (res != NULL_RTX)
   32037              :                     return res;
   32038              :                 }
   32039              :             }
   32040              :           x4 = XEXP (x2, 0);
   32041              :           operands[1] = x4;
   32042              :           if (!x86_64_nonmemory_operand (operands[1], E_SImode)
   32043              :               || !rtx_equal_p (x3, operands[0])
   32044              :               || !
   32045              : #line 29924 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32046              : (!TARGET_OPT_AGU
   32047              :    && peep2_regno_dead_p (0, FLAGS_REG)))
   32048              :             return NULL;
   32049              :           *pmatch_len_ = 0;
   32050              :           return gen_peephole2_376 (insn, operands);
   32051              : 
   32052              :         case 1:
   32053              :           x3 = XEXP (x2, 1);
   32054              :           operands[1] = x3;
   32055              :           if (x86_64_nonmemory_operand (operands[1], E_DImode))
   32056              :             {
   32057              :               x4 = XEXP (x2, 0);
   32058              :               if (rtx_equal_p (x4, operands[0])
   32059              :                   && (
   32060              : #line 29915 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32061              : (!TARGET_OPT_AGU
   32062              :    && peep2_regno_dead_p (0, FLAGS_REG)) && 
   32063              : #line 1198 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32064              : (TARGET_64BIT)))
   32065              :                 {
   32066              :                   *pmatch_len_ = 0;
   32067              :                   res = gen_peephole2_375 (insn, operands);
   32068              :                   if (res != NULL_RTX)
   32069              :                     return res;
   32070              :                 }
   32071              :             }
   32072              :           x4 = XEXP (x2, 0);
   32073              :           operands[1] = x4;
   32074              :           if (!x86_64_nonmemory_operand (operands[1], E_DImode)
   32075              :               || !rtx_equal_p (x3, operands[0])
   32076              :               || !(
   32077              : #line 29924 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32078              : (!TARGET_OPT_AGU
   32079              :    && peep2_regno_dead_p (0, FLAGS_REG)) && 
   32080              : #line 1198 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32081              : (TARGET_64BIT)))
   32082              :             return NULL;
   32083              :           *pmatch_len_ = 0;
   32084              :           return gen_peephole2_377 (insn, operands);
   32085              : 
   32086              :         default:
   32087              :           return NULL;
   32088              :         }
   32089              : 
   32090              :     case ZERO_EXTEND:
   32091              :       if (GET_MODE (x2) != E_DImode
   32092              :           || !register_operand (operands[0], E_DImode))
   32093              :         return NULL;
   32094              :       x4 = XEXP (x2, 0);
   32095              :       if (GET_MODE (x4) != E_SImode)
   32096              :         return NULL;
   32097              :       switch (GET_CODE (x4))
   32098              :         {
   32099              :         case PLUS:
   32100              :           x5 = XEXP (x4, 0);
   32101              :           operands[1] = x5;
   32102              :           x6 = XEXP (x4, 1);
   32103              :           operands[2] = x6;
   32104              :           if (nonmemory_operand (operands[2], E_SImode)
   32105              :               && register_operand (operands[1], E_SImode)
   32106              :               && 
   32107              : #line 29934 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32108              : (TARGET_64BIT && !TARGET_OPT_AGU
   32109              :    && REGNO (operands[0]) == REGNO (operands[1])
   32110              :    && peep2_regno_dead_p (0, FLAGS_REG)))
   32111              :             {
   32112              :               *pmatch_len_ = 0;
   32113              :               res = gen_peephole2_378 (insn, operands);
   32114              :               if (res != NULL_RTX)
   32115              :                 return res;
   32116              :             }
   32117              :           if (!register_operand (operands[2], E_SImode)
   32118              :               || !nonmemory_operand (operands[1], E_SImode)
   32119              :               || !
   32120              : #line 29946 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32121              : (TARGET_64BIT && !TARGET_OPT_AGU
   32122              :    && REGNO (operands[0]) == REGNO (operands[2])
   32123              :    && peep2_regno_dead_p (0, FLAGS_REG)))
   32124              :             return NULL;
   32125              :           *pmatch_len_ = 0;
   32126              :           return gen_peephole2_379 (insn, operands);
   32127              : 
   32128              :         case MULT:
   32129              :           x5 = XEXP (x4, 0);
   32130              :           operands[1] = x5;
   32131              :           if (!register_operand (operands[1], E_SImode))
   32132              :             return NULL;
   32133              :           x6 = XEXP (x4, 1);
   32134              :           operands[2] = x6;
   32135              :           if (!const_int_operand (operands[2], E_SImode)
   32136              :               || !
   32137              : #line 29968 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32138              : (TARGET_64BIT
   32139              :    && pow2p_hwi (INTVAL (operands[2]))
   32140              :    && REGNO (operands[0]) == REGNO (operands[1])
   32141              :    && peep2_regno_dead_p (0, FLAGS_REG)))
   32142              :             return NULL;
   32143              :           *pmatch_len_ = 0;
   32144              :           return gen_peephole2_382 (insn, operands);
   32145              : 
   32146              :         default:
   32147              :           return NULL;
   32148              :         }
   32149              : 
   32150              :     case MULT:
   32151              :       x3 = XEXP (x2, 1);
   32152              :       operands[1] = x3;
   32153              :       x4 = XEXP (x2, 0);
   32154              :       if (!rtx_equal_p (x4, operands[0]))
   32155              :         return NULL;
   32156              :       switch (GET_MODE (operands[0]))
   32157              :         {
   32158              :         case E_SImode:
   32159              :           if (!register_operand (operands[0], E_SImode)
   32160              :               || GET_MODE (x2) != E_SImode
   32161              :               || !const_int_operand (operands[1], E_SImode)
   32162              :               || !
   32163              : #line 29957 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32164              : (pow2p_hwi (INTVAL (operands[1]))
   32165              :    && peep2_regno_dead_p (0, FLAGS_REG)))
   32166              :             return NULL;
   32167              :           *pmatch_len_ = 0;
   32168              :           return gen_peephole2_380 (insn, operands);
   32169              : 
   32170              :         case E_DImode:
   32171              :           if (!register_operand (operands[0], E_DImode)
   32172              :               || GET_MODE (x2) != E_DImode
   32173              :               || !const_int_operand (operands[1], E_DImode)
   32174              :               || !(
   32175              : #line 29957 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32176              : (pow2p_hwi (INTVAL (operands[1]))
   32177              :    && peep2_regno_dead_p (0, FLAGS_REG)) && 
   32178              : #line 1198 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32179              : (TARGET_64BIT)))
   32180              :             return NULL;
   32181              :           *pmatch_len_ = 0;
   32182              :           return gen_peephole2_381 (insn, operands);
   32183              : 
   32184              :         default:
   32185              :           return NULL;
   32186              :         }
   32187              : 
   32188              :     case VEC_CONCAT:
   32189              :       if (peep2_current_count < 2
   32190              :           || GET_MODE (x2) != E_V2DFmode
   32191              :           || !sse_reg_operand (operands[0], E_V2DFmode))
   32192              :         return NULL;
   32193              :       x4 = XEXP (x2, 0);
   32194              :       operands[1] = x4;
   32195              :       if (!memory_operand (operands[1], E_DFmode))
   32196              :         return NULL;
   32197              :       x3 = XEXP (x2, 1);
   32198              :       operands[4] = x3;
   32199              :       if (!const0_operand (operands[4], E_DFmode))
   32200              :         return NULL;
   32201              :       x9 = PATTERN (peep2_next_insn (1));
   32202              :       if (GET_CODE (x9) != SET)
   32203              :         return NULL;
   32204              :       x25 = XEXP (x9, 1);
   32205              :       if (GET_CODE (x25) != VEC_CONCAT
   32206              :           || GET_MODE (x25) != E_V2DFmode)
   32207              :         return NULL;
   32208              :       x26 = XEXP (x25, 0);
   32209              :       if (GET_CODE (x26) != VEC_SELECT
   32210              :           || GET_MODE (x26) != E_DFmode)
   32211              :         return NULL;
   32212              :       x27 = XEXP (x26, 1);
   32213              :       if (GET_CODE (x27) != PARALLEL
   32214              :           || XVECLEN (x27, 0) != 1)
   32215              :         return NULL;
   32216              :       x28 = XVECEXP (x27, 0, 0);
   32217              :       if (x28 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
   32218              :         return NULL;
   32219              :       x29 = XEXP (x9, 0);
   32220              :       operands[2] = x29;
   32221              :       if (!sse_reg_operand (operands[2], E_V2DFmode))
   32222              :         return NULL;
   32223              :       x30 = XEXP (x25, 1);
   32224              :       operands[3] = x30;
   32225              :       if (!memory_operand (operands[3], E_DFmode))
   32226              :         return NULL;
   32227              :       x31 = XEXP (x26, 0);
   32228              :       if (!rtx_equal_p (x31, operands[2])
   32229              :           || !
   32230              : #line 1981 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   32231              : (TARGET_SSE2 && TARGET_SSE_UNALIGNED_LOAD_OPTIMAL
   32232              :    && ix86_operands_ok_for_move_multiple (operands, true, DFmode)))
   32233              :         return NULL;
   32234              :       *pmatch_len_ = 1;
   32235              :       return gen_peephole2_436 (insn, operands);
   32236              : 
   32237              :     default:
   32238              :       return NULL;
   32239              :     }
   32240              : }
        

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.